diff --git a/aconversions/src/re2fa/Brzozowski.cpp b/aconversions/src/re2fa/Brzozowski.cpp
index 4097e9b86dcba383ff3909b5f2065b2e8ac64326..1f941f750f7c526faa58df01ebd0eb28be8320db 100644
--- a/aconversions/src/re2fa/Brzozowski.cpp
+++ b/aconversions/src/re2fa/Brzozowski.cpp
@@ -41,7 +41,7 @@ FSM Brzozowski::convert( void )
 
             for( const auto & symbol : alphabet )
             {
-                RegExpElement* dSymbol = new RegExpSymbol( symbol.getSymbol( ). getSymbol( ) );
+                RegExpElement* dSymbol = new RegExpSymbol( symbol.getSymbol( ) );
                 RegExp derived = deriv.derivation( vector<RegExpElement*>( 1, dSymbol ) );
                 derived = opt.optimize( derived );
 
diff --git a/aconvert.regexp/src/RegExpPrinter.cpp b/aconvert.regexp/src/RegExpPrinter.cpp
index 8535be899785c0cffbc2c7205c8d11d25b552702..2b1e7d33354033770f5292c298fd6d17c1e5af64 100644
--- a/aconvert.regexp/src/RegExpPrinter.cpp
+++ b/aconvert.regexp/src/RegExpPrinter.cpp
@@ -69,7 +69,7 @@ void RegExpPrinter::printIteration(regexp::Iteration* iteration) {
 }
 
 void RegExpPrinter::printSymbol(regexp::RegExpSymbol* symbol) {
-  m_Out << symbol->getSymbol().getSymbol();
+  m_Out << symbol->getSymbol();
 }
 
 void RegExpPrinter::printEpsilon(regexp::RegExpEpsilon* symbol) {
diff --git a/alib/src/regexp/RegExpPrinter.cpp b/alib/src/regexp/RegExpPrinter.cpp
index e49db76e0300f74ab7c214b088761394642cd78a..f3757b302588ddd87ce45dbb45ed6fa7eafdb3b6 100644
--- a/alib/src/regexp/RegExpPrinter.cpp
+++ b/alib/src/regexp/RegExpPrinter.cpp
@@ -83,7 +83,7 @@ void RegExpPrinter::printIteration(Iteration* iteration, ostream& out, string pr
 
 void RegExpPrinter::printSymbol(RegExpSymbol* symbol, ostream& out, string prefix) {
 	out << prefix << "<symbol>";
-	out << symbol->getSymbol().getSymbol();
+	out << symbol->getSymbol();
 	out << "</symbol>\n";
 }
 
diff --git a/alib/src/regexp/RegExpSymbol.cpp b/alib/src/regexp/RegExpSymbol.cpp
index 2283563829e9c134f673d8da07db4a8360f3d138..66b85aed26ddaea6d1ef5f231ecce58150e1c989 100644
--- a/alib/src/regexp/RegExpSymbol.cpp
+++ b/alib/src/regexp/RegExpSymbol.cpp
@@ -18,7 +18,7 @@ RegExpSymbol::RegExpSymbol(const string& symbol) :
 }
 
 RegExpElement* RegExpSymbol::clone() const {
-	return new RegExpSymbol(this->symbol.getSymbol());
+	return new RegExpSymbol(this->symbol);
 }
 
 bool RegExpSymbol::operator<(const RegExpElement& other) const {
@@ -58,7 +58,7 @@ bool RegExpSymbol::containsEmptyString() const {
 	return false;
 }
 
-const Symbol& RegExpSymbol::getSymbol() const {
+const string& RegExpSymbol::getSymbol() const {
 	return this->symbol;
 }
 
diff --git a/alib/src/regexp/RegExpSymbol.h b/alib/src/regexp/RegExpSymbol.h
index 1c337bc1157e3bcf6939be851da0e6f5eb6381a1..77d24348e9a0c17946f14fccbffe96484e6a5329 100644
--- a/alib/src/regexp/RegExpSymbol.h
+++ b/alib/src/regexp/RegExpSymbol.h
@@ -21,7 +21,7 @@ using namespace alphabet;
  * Represents symbol in the regular expression. Contains name of the symbol.
  */
 class RegExpSymbol: public RegExpElement {
-	Symbol symbol;
+	string symbol;
 public:
 	RegExpSymbol();
 	RegExpSymbol(const string& symbol);
@@ -47,7 +47,7 @@ public:
 	 */
 	bool containsEmptyString() const;
 	
-	const Symbol& getSymbol() const;
+	const string& getSymbol() const;
 };
 
 } /* namespace regexp */
diff --git a/libaderivation/src/RegExpDerivation.cpp b/libaderivation/src/RegExpDerivation.cpp
index 9c08db095396c42222b0aa2578105cfedb46bf34..2e3aca7c21b99b5441ade90ca260def3f66603ef 100644
--- a/libaderivation/src/RegExpDerivation.cpp
+++ b/libaderivation/src/RegExpDerivation.cpp
@@ -109,7 +109,7 @@ RegExpElement * RegExpDerivation::derivation( const Iteration * element, const R
 
 RegExpElement * RegExpDerivation::derivation( const RegExpSymbol * element, const RegExpSymbol & dSymbol ) const
 {
-    if( dSymbol == element->getSymbol( ).getSymbol( ) )
+    if( dSymbol == element->getSymbol( ) )
         return new RegExpEpsilon( );
     else
         return new RegExpEmpty( );
diff --git a/libaregexptree/src/RegExpAlphabet.cpp b/libaregexptree/src/RegExpAlphabet.cpp
index e2e7c44dc54750a2dc828628ec95093869ffeb46..d39a7183fa6682d5c21a19f82b1acff33c21b5ce 100644
--- a/libaregexptree/src/RegExpAlphabet.cpp
+++ b/libaregexptree/src/RegExpAlphabet.cpp
@@ -10,7 +10,7 @@ set<RegExpSymbol> RegExpAlphabet::getSymbols( const RegExp & re )
     set<RegExpSymbol> alphabet;
 
     for( const auto & symbol : getSymbolsListInOrder( re ) )
-        alphabet.insert( RegExpSymbol( symbol->getSymbol( ).getSymbol( ) ) );
+        alphabet.insert( RegExpSymbol( symbol->getSymbol( ) ) );
 
     return alphabet;
 }