diff --git a/alib2algo/src/stringology/matching/LevenshteinMatchingAutomaton.h b/alib2algo/src/stringology/matching/LevenshteinMatchingAutomaton.h
index 301e253f19a3a0aa5b0d7b864de082992b61b361..05a8f059d68236dd0c27beef44a4b376e859eafe 100644
--- a/alib2algo/src/stringology/matching/LevenshteinMatchingAutomaton.h
+++ b/alib2algo/src/stringology/matching/LevenshteinMatchingAutomaton.h
@@ -60,10 +60,8 @@ automaton::EpsilonNFA < SymbolType, void, ext::pair<unsigned int, unsigned int>
 			to = ext::make_pair(i, j + 1);
 
 			for (const SymbolType& symbol : pattern.getAlphabet()) {
-				if (symbol != pattern.getContent()[i]) {
-					// add horizontal transition representing insertion
-					result.addTransition(from, symbol, to);
-				}
+				// add horizontal transition representing insertion
+				result.addTransition(from, symbol, to);
 			}
 		}
 	}
diff --git a/alib2algo/test-src/stringology/matching/GeneralizedLevenshteinMatchingAutomatonTest.cpp b/alib2algo/test-src/stringology/matching/GeneralizedLevenshteinMatchingAutomatonTest.cpp
index c41b2c2f2cd744e001064979ad54d849a7a4edf0..d7d3f42196a73050f634a7458b3d03da07a05825 100644
--- a/alib2algo/test-src/stringology/matching/GeneralizedLevenshteinMatchingAutomatonTest.cpp
+++ b/alib2algo/test-src/stringology/matching/GeneralizedLevenshteinMatchingAutomatonTest.cpp
@@ -78,15 +78,18 @@ void GeneralizedLevenshteinMatchingAutomatonTest::testSimpleConstruction() {
     res.addTransition(q5, q8);
 
     res.addTransition(q1, 'a', q4); // insertions
+    res.addTransition(q1, 'b', q4);
     res.addTransition(q1, 'c', q4);
     res.addTransition(q1, 'd', q4);
 
     res.addTransition(q2, 'a', q5);
     res.addTransition(q2, 'b', q5);
+    res.addTransition(q2, 'c', q5);
     res.addTransition(q2, 'd', q5);
 
     res.addTransition(q5, 'a', q7);
     res.addTransition(q5, 'b', q7);
+    res.addTransition(q5, 'c', q7);
     res.addTransition(q5, 'd', q7);
 
     res.addTransition(q0, 'b', r1); // transposition
diff --git a/alib2algo/test-src/stringology/matching/GeneralizedLevenshteinSequenceMatchingAutomatonTest.cpp b/alib2algo/test-src/stringology/matching/GeneralizedLevenshteinSequenceMatchingAutomatonTest.cpp
index 27104a1fc3ebbb41980754657ade555bf8c08cb0..01e2aa26ae7ad7e440d48d29c100436c0b4acfac 100644
--- a/alib2algo/test-src/stringology/matching/GeneralizedLevenshteinSequenceMatchingAutomatonTest.cpp
+++ b/alib2algo/test-src/stringology/matching/GeneralizedLevenshteinSequenceMatchingAutomatonTest.cpp
@@ -77,15 +77,18 @@ void GeneralizedLevenshteinSequenceMatchingAutomatonTest::testSimpleConstruction
   test.addTransition(q5, q8);
 
   test.addTransition(q1, 'a', q4); // insertions
+  test.addTransition(q1, 'b', q4);
   test.addTransition(q1, 'c', q4);
   test.addTransition(q1, 'd', q4);
 
   test.addTransition(q2, 'a', q5);
   test.addTransition(q2, 'b', q5);
+  test.addTransition(q2, 'c', q5);
   test.addTransition(q2, 'd', q5);
 
   test.addTransition(q5, 'a', q7);
   test.addTransition(q5, 'b', q7);
+  test.addTransition(q5, 'c', q7);
   test.addTransition(q5, 'd', q7);
 
   test.addTransition(q1, 'a', q1); // loops for sequence matching
diff --git a/alib2algo/test-src/stringology/matching/LevenshteinMatchingAutomatonTest.cpp b/alib2algo/test-src/stringology/matching/LevenshteinMatchingAutomatonTest.cpp
index b5a5a2105738477177c01f2fb6bf3cf287c98cf6..4b5726e0d32259a12537577cb24b73cbfe66221e 100644
--- a/alib2algo/test-src/stringology/matching/LevenshteinMatchingAutomatonTest.cpp
+++ b/alib2algo/test-src/stringology/matching/LevenshteinMatchingAutomatonTest.cpp
@@ -74,15 +74,18 @@ void LevenshteinMatchingAutomatonTest::testSimpleConstruction() {
     res.addTransition(q5, q8);
 
     res.addTransition(q1, 'a', q4); // insertions
+    res.addTransition(q1, 'b', q4);
     res.addTransition(q1, 'c', q4);
     res.addTransition(q1, 'd', q4);
 
     res.addTransition(q2, 'a', q5);
     res.addTransition(q2, 'b', q5);
+    res.addTransition(q2, 'c', q5);
     res.addTransition(q2, 'd', q5);
 
     res.addTransition(q5, 'a', q7);
     res.addTransition(q5, 'b', q7);
+    res.addTransition(q5, 'c', q7);
     res.addTransition(q5, 'd', q7);
 
     CPPUNIT_ASSERT(res == automaton::simplify::UnreachableStatesRemover::remove(resulting_automata));
diff --git a/alib2algo/test-src/stringology/matching/LevenshteinSequenceMatchingAutomatonTest.cpp b/alib2algo/test-src/stringology/matching/LevenshteinSequenceMatchingAutomatonTest.cpp
index 7bb6061bf1cdc54b751a3aea9174ca7026dc65ea..88bdb69167ce20d22d734bb2b24a435f2196e3ca 100644
--- a/alib2algo/test-src/stringology/matching/LevenshteinSequenceMatchingAutomatonTest.cpp
+++ b/alib2algo/test-src/stringology/matching/LevenshteinSequenceMatchingAutomatonTest.cpp
@@ -73,14 +73,17 @@ void LevenshteinSequenceMatchingAutomatonTest::testSimpleConstruction() {
   test.addTransition(q5, q8);
 
   test.addTransition(q1, 'a', q4); // insertions
+  test.addTransition(q1, 'b', q4);
   test.addTransition(q1, 'c', q4);
   test.addTransition(q1, 'd', q4);
 
   test.addTransition(q2, 'a', q5);
   test.addTransition(q2, 'b', q5);
+  test.addTransition(q2, 'c', q5);
   test.addTransition(q2, 'd', q5);
 
   test.addTransition(q5, 'a', q7);
+  test.addTransition(q5, 'c', q7);
   test.addTransition(q5, 'b', q7);
   test.addTransition(q5, 'd', q7);