diff --git a/src/main/java/org/sablecc/sablecc/GenerateAlternativeCodeForParser.java b/src/main/java/org/sablecc/sablecc/GenerateAlternativeCodeForParser.java
index a061b73b7e4dacc4bff771f23ebc8db88c677fc2..e43380f7875a817f9f3d9e4727eb91ba3abd5177 100644
--- a/src/main/java/org/sablecc/sablecc/GenerateAlternativeCodeForParser.java
+++ b/src/main/java/org/sablecc/sablecc/GenerateAlternativeCodeForParser.java
@@ -92,7 +92,7 @@ public class GenerateAlternativeCodeForParser extends DepthFirstAdapter
     }
     else
     {
-      return typeName.toLowerCase() + "Node" + position;
+      return typeName.substring(0, 1).toLowerCase() + typeName.substring(1) + "Node" + position;
     }
   }
 
diff --git a/src/main/java/org/sablecc/sablecc/parser/Parser.java b/src/main/java/org/sablecc/sablecc/parser/Parser.java
index acaa05a07e327ba331d37b57f2deabcdbcdad696..e6306940ca57a943d17301dd53bddc2d9bd7f0dc 100644
--- a/src/main/java/org/sablecc/sablecc/parser/Parser.java
+++ b/src/main/java/org/sablecc/sablecc/parser/Parser.java
@@ -1854,9 +1854,9 @@ public class Parser implements IParser
 
     private List<?> new0() /* reduce AAgrammar1Grammar */
     {
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, null, null, null, null, null);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, null, null, null, null, null);
 
-        return Collections.singletonList(pgrammarNode1);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new1() /* reduce AAgrammar2Grammar */
@@ -1864,20 +1864,20 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, null, null, null, null, null);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, null, null, null, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new2() /* reduce AAgrammar3Grammar */
     {
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, null, null, null, null, null);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, null, null, null, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new3() /* reduce AAgrammar4Grammar */
@@ -1886,21 +1886,21 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, null, null, null, null, null);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, null, null, null, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new4() /* reduce AAgrammar5Grammar */
     {
         List<?> nodeArrayList1 = pop();
-        PStates pstatesNode4 = (PStates)nodeArrayList1.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, pstatesNode4, null, null, null, null);
+        PStates pStatesNode4 = (PStates)nodeArrayList1.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, pStatesNode4, null, null, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new5() /* reduce AAgrammar6Grammar */
@@ -1909,23 +1909,23 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PStates pstatesNode5 = (PStates)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5, null, null, null, null);
+        PStates pStatesNode5 = (PStates)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, pStatesNode5, null, null, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new6() /* reduce AAgrammar7Grammar */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PStates pstatesNode4 = (PStates)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, pstatesNode4, null, null, null, null);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PStates pStatesNode4 = (PStates)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, pStatesNode4, null, null, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new7() /* reduce AAgrammar8Grammar */
@@ -1935,22 +1935,22 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PStates pstatesNode5 = (PStates)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, pstatesNode5, null, null, null, null);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PStates pStatesNode5 = (PStates)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, pStatesNode5, null, null, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new8() /* reduce AAgrammar9Grammar */
     {
         List<?> nodeArrayList1 = pop();
-        PTokens ptokensNode5 = (PTokens)nodeArrayList1.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, null, ptokensNode5, null, null, null);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList1.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, null, pTokensNode5, null, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new9() /* reduce AAgrammar10Grammar */
@@ -1959,23 +1959,23 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PTokens ptokensNode6 = (PTokens)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, null, ptokensNode6, null, null, null);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, null, pTokensNode6, null, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new10() /* reduce AAgrammar11Grammar */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, null, ptokensNode5, null, null, null);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, null, pTokensNode5, null, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new11() /* reduce AAgrammar12Grammar */
@@ -1985,24 +1985,24 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, null, ptokensNode6, null, null, null);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, null, pTokensNode6, null, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new12() /* reduce AAgrammar13Grammar */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PStates pstatesNode4 = (PStates)nodeArrayList1.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, pstatesNode4, ptokensNode5, null, null, null);
+        PStates pStatesNode4 = (PStates)nodeArrayList1.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, pStatesNode4, pTokensNode5, null, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new13() /* reduce AAgrammar14Grammar */
@@ -2012,12 +2012,12 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PStates pstatesNode5 = (PStates)nodeArrayList2.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5, ptokensNode6, null, null, null);
+        PStates pStatesNode5 = (PStates)nodeArrayList2.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, pStatesNode5, pTokensNode6, null, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new14() /* reduce AAgrammar15Grammar */
@@ -2025,13 +2025,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PStates pstatesNode4 = (PStates)nodeArrayList2.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, pstatesNode4, ptokensNode5, null, null, null);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PStates pStatesNode4 = (PStates)nodeArrayList2.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, pStatesNode4, pTokensNode5, null, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new15() /* reduce AAgrammar16Grammar */
@@ -2042,23 +2042,23 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PStates pstatesNode5 = (PStates)nodeArrayList3.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, pstatesNode5, ptokensNode6, null, null, null);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PStates pStatesNode5 = (PStates)nodeArrayList3.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, pStatesNode5, pTokensNode6, null, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new16() /* reduce AAgrammar17Grammar */
     {
         List<?> nodeArrayList1 = pop();
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList1.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, null, null, pigntokensNode6, null, null);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList1.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, null, null, pIgnTokensNode6, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new17() /* reduce AAgrammar18Grammar */
@@ -2067,23 +2067,23 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, null, null, pigntokensNode7, null, null);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, null, null, pIgnTokensNode7, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new18() /* reduce AAgrammar19Grammar */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, null, null, pigntokensNode6, null, null);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, null, null, pIgnTokensNode6, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new19() /* reduce AAgrammar20Grammar */
@@ -2093,24 +2093,24 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, null, null, pigntokensNode7, null, null);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, null, null, pIgnTokensNode7, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new20() /* reduce AAgrammar21Grammar */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PStates pstatesNode4 = (PStates)nodeArrayList1.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, pstatesNode4, null, pigntokensNode6, null, null);
+        PStates pStatesNode4 = (PStates)nodeArrayList1.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, pStatesNode4, null, pIgnTokensNode6, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new21() /* reduce AAgrammar22Grammar */
@@ -2120,12 +2120,12 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PStates pstatesNode5 = (PStates)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5, null, pigntokensNode7, null, null);
+        PStates pStatesNode5 = (PStates)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, pStatesNode5, null, pIgnTokensNode7, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new22() /* reduce AAgrammar23Grammar */
@@ -2133,13 +2133,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PStates pstatesNode4 = (PStates)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, pstatesNode4, null, pigntokensNode6, null, null);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PStates pStatesNode4 = (PStates)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, pStatesNode4, null, pIgnTokensNode6, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new23() /* reduce AAgrammar24Grammar */
@@ -2150,25 +2150,25 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PStates pstatesNode5 = (PStates)nodeArrayList3.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, pstatesNode5, null, pigntokensNode7, null, null);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PStates pStatesNode5 = (PStates)nodeArrayList3.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, pStatesNode5, null, pIgnTokensNode7, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new24() /* reduce AAgrammar25Grammar */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PTokens ptokensNode5 = (PTokens)nodeArrayList1.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, null, ptokensNode5, pigntokensNode6, null, null);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList1.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, null, pTokensNode5, pIgnTokensNode6, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new25() /* reduce AAgrammar26Grammar */
@@ -2178,12 +2178,12 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PTokens ptokensNode6 = (PTokens)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, null, ptokensNode6, pigntokensNode7, null, null);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, null, pTokensNode6, pIgnTokensNode7, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new26() /* reduce AAgrammar27Grammar */
@@ -2191,13 +2191,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, null, ptokensNode5, pigntokensNode6, null, null);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, null, pTokensNode5, pIgnTokensNode6, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new27() /* reduce AAgrammar28Grammar */
@@ -2208,13 +2208,13 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList3.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, null, ptokensNode6, pigntokensNode7, null, null);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList3.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, null, pTokensNode6, pIgnTokensNode7, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new28() /* reduce AAgrammar29Grammar */
@@ -2222,13 +2222,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PStates pstatesNode4 = (PStates)nodeArrayList1.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, pstatesNode4, ptokensNode5, pigntokensNode6, null, null);
+        PStates pStatesNode4 = (PStates)nodeArrayList1.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, pStatesNode4, pTokensNode5, pIgnTokensNode6, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new29() /* reduce AAgrammar30Grammar */
@@ -2239,13 +2239,13 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PStates pstatesNode5 = (PStates)nodeArrayList2.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList3.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5, ptokensNode6, pigntokensNode7, null, null);
+        PStates pStatesNode5 = (PStates)nodeArrayList2.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList3.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, pStatesNode5, pTokensNode6, pIgnTokensNode7, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new30() /* reduce AAgrammar31Grammar */
@@ -2254,14 +2254,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PStates pstatesNode4 = (PStates)nodeArrayList2.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList3.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, pstatesNode4, ptokensNode5, pigntokensNode6, null, null);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PStates pStatesNode4 = (PStates)nodeArrayList2.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList3.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, pStatesNode4, pTokensNode5, pIgnTokensNode6, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new31() /* reduce AAgrammar32Grammar */
@@ -2273,24 +2273,24 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PStates pstatesNode5 = (PStates)nodeArrayList3.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList4.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, pstatesNode5, ptokensNode6, pigntokensNode7, null, null);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PStates pStatesNode5 = (PStates)nodeArrayList3.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList4.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, pStatesNode5, pTokensNode6, pIgnTokensNode7, null, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new32() /* reduce AAgrammar33Grammar */
     {
         List<?> nodeArrayList1 = pop();
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList1.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, null, null, null, pproductionsNode7, null);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList1.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, null, null, null, pProductionsNode7, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new33() /* reduce AAgrammar34Grammar */
@@ -2299,23 +2299,23 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, null, null, null, pproductionsNode8, null);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, null, null, null, pProductionsNode8, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new34() /* reduce AAgrammar35Grammar */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, null, null, null, pproductionsNode7, null);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, null, null, null, pProductionsNode7, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new35() /* reduce AAgrammar36Grammar */
@@ -2325,24 +2325,24 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, null, null, null, pproductionsNode8, null);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, null, null, null, pProductionsNode8, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new36() /* reduce AAgrammar37Grammar */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PStates pstatesNode4 = (PStates)nodeArrayList1.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, pstatesNode4, null, null, pproductionsNode7, null);
+        PStates pStatesNode4 = (PStates)nodeArrayList1.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, pStatesNode4, null, null, pProductionsNode7, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new37() /* reduce AAgrammar38Grammar */
@@ -2352,12 +2352,12 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PStates pstatesNode5 = (PStates)nodeArrayList2.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5, null, null, pproductionsNode8, null);
+        PStates pStatesNode5 = (PStates)nodeArrayList2.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, pStatesNode5, null, null, pProductionsNode8, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new38() /* reduce AAgrammar39Grammar */
@@ -2365,13 +2365,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PStates pstatesNode4 = (PStates)nodeArrayList2.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, pstatesNode4, null, null, pproductionsNode7, null);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PStates pStatesNode4 = (PStates)nodeArrayList2.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, pStatesNode4, null, null, pProductionsNode7, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new39() /* reduce AAgrammar40Grammar */
@@ -2382,25 +2382,25 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PStates pstatesNode5 = (PStates)nodeArrayList3.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, pstatesNode5, null, null, pproductionsNode8, null);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PStates pStatesNode5 = (PStates)nodeArrayList3.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, pStatesNode5, null, null, pProductionsNode8, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new40() /* reduce AAgrammar41Grammar */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PTokens ptokensNode5 = (PTokens)nodeArrayList1.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, null, ptokensNode5, null, pproductionsNode7, null);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList1.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, null, pTokensNode5, null, pProductionsNode7, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new41() /* reduce AAgrammar42Grammar */
@@ -2410,12 +2410,12 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PTokens ptokensNode6 = (PTokens)nodeArrayList2.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, null, ptokensNode6, null, pproductionsNode8, null);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList2.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, null, pTokensNode6, null, pProductionsNode8, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new42() /* reduce AAgrammar43Grammar */
@@ -2423,13 +2423,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList2.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, null, ptokensNode5, null, pproductionsNode7, null);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList2.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, null, pTokensNode5, null, pProductionsNode7, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new43() /* reduce AAgrammar44Grammar */
@@ -2440,13 +2440,13 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, null, ptokensNode6, null, pproductionsNode8, null);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, null, pTokensNode6, null, pProductionsNode8, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new44() /* reduce AAgrammar45Grammar */
@@ -2454,13 +2454,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PStates pstatesNode4 = (PStates)nodeArrayList1.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList2.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, pstatesNode4, ptokensNode5, null, pproductionsNode7, null);
+        PStates pStatesNode4 = (PStates)nodeArrayList1.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList2.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, pStatesNode4, pTokensNode5, null, pProductionsNode7, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new45() /* reduce AAgrammar46Grammar */
@@ -2471,13 +2471,13 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PStates pstatesNode5 = (PStates)nodeArrayList2.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5, ptokensNode6, null, pproductionsNode8, null);
+        PStates pStatesNode5 = (PStates)nodeArrayList2.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, pStatesNode5, pTokensNode6, null, pProductionsNode8, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new46() /* reduce AAgrammar47Grammar */
@@ -2486,14 +2486,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PStates pstatesNode4 = (PStates)nodeArrayList2.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, pstatesNode4, ptokensNode5, null, pproductionsNode7, null);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PStates pStatesNode4 = (PStates)nodeArrayList2.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, pStatesNode4, pTokensNode5, null, pProductionsNode7, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new47() /* reduce AAgrammar48Grammar */
@@ -2505,26 +2505,26 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PStates pstatesNode5 = (PStates)nodeArrayList3.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList4.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, pstatesNode5, ptokensNode6, null, pproductionsNode8, null);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PStates pStatesNode5 = (PStates)nodeArrayList3.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList4.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, pStatesNode5, pTokensNode6, null, pProductionsNode8, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new48() /* reduce AAgrammar49Grammar */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList1.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, null, null, pigntokensNode6, pproductionsNode7, null);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList1.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, null, null, pIgnTokensNode6, pProductionsNode7, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new49() /* reduce AAgrammar50Grammar */
@@ -2534,12 +2534,12 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList2.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, null, null, pigntokensNode7, pproductionsNode8, null);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList2.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, null, null, pIgnTokensNode7, pProductionsNode8, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new50() /* reduce AAgrammar51Grammar */
@@ -2547,13 +2547,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, null, null, pigntokensNode6, pproductionsNode7, null);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, null, null, pIgnTokensNode6, pProductionsNode7, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new51() /* reduce AAgrammar52Grammar */
@@ -2564,13 +2564,13 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, null, null, pigntokensNode7, pproductionsNode8, null);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, null, null, pIgnTokensNode7, pProductionsNode8, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new52() /* reduce AAgrammar53Grammar */
@@ -2578,13 +2578,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PStates pstatesNode4 = (PStates)nodeArrayList1.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, pstatesNode4, null, pigntokensNode6, pproductionsNode7, null);
+        PStates pStatesNode4 = (PStates)nodeArrayList1.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, pStatesNode4, null, pIgnTokensNode6, pProductionsNode7, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new53() /* reduce AAgrammar54Grammar */
@@ -2595,13 +2595,13 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PStates pstatesNode5 = (PStates)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5, null, pigntokensNode7, pproductionsNode8, null);
+        PStates pStatesNode5 = (PStates)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, pStatesNode5, null, pIgnTokensNode7, pProductionsNode8, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new54() /* reduce AAgrammar55Grammar */
@@ -2610,14 +2610,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PStates pstatesNode4 = (PStates)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, pstatesNode4, null, pigntokensNode6, pproductionsNode7, null);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PStates pStatesNode4 = (PStates)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, pStatesNode4, null, pIgnTokensNode6, pProductionsNode7, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new55() /* reduce AAgrammar56Grammar */
@@ -2629,14 +2629,14 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PStates pstatesNode5 = (PStates)nodeArrayList3.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, pstatesNode5, null, pigntokensNode7, pproductionsNode8, null);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PStates pStatesNode5 = (PStates)nodeArrayList3.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, pStatesNode5, null, pIgnTokensNode7, pProductionsNode8, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new56() /* reduce AAgrammar57Grammar */
@@ -2644,13 +2644,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PTokens ptokensNode5 = (PTokens)nodeArrayList1.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, null, ptokensNode5, pigntokensNode6, pproductionsNode7, null);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList1.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, null, pTokensNode5, pIgnTokensNode6, pProductionsNode7, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new57() /* reduce AAgrammar58Grammar */
@@ -2661,13 +2661,13 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PTokens ptokensNode6 = (PTokens)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, null, ptokensNode6, pigntokensNode7, pproductionsNode8, null);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, null, pTokensNode6, pIgnTokensNode7, pProductionsNode8, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new58() /* reduce AAgrammar59Grammar */
@@ -2676,14 +2676,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, null, ptokensNode5, pigntokensNode6, pproductionsNode7, null);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, null, pTokensNode5, pIgnTokensNode6, pProductionsNode7, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new59() /* reduce AAgrammar60Grammar */
@@ -2695,14 +2695,14 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList3.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, null, ptokensNode6, pigntokensNode7, pproductionsNode8, null);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList3.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, null, pTokensNode6, pIgnTokensNode7, pProductionsNode8, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new60() /* reduce AAgrammar61Grammar */
@@ -2711,14 +2711,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PStates pstatesNode4 = (PStates)nodeArrayList1.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, pstatesNode4, ptokensNode5, pigntokensNode6, pproductionsNode7, null);
+        PStates pStatesNode4 = (PStates)nodeArrayList1.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, pStatesNode4, pTokensNode5, pIgnTokensNode6, pProductionsNode7, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new61() /* reduce AAgrammar62Grammar */
@@ -2730,14 +2730,14 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PStates pstatesNode5 = (PStates)nodeArrayList2.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList3.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5, ptokensNode6, pigntokensNode7, pproductionsNode8, null);
+        PStates pStatesNode5 = (PStates)nodeArrayList2.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList3.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, pStatesNode5, pTokensNode6, pIgnTokensNode7, pProductionsNode8, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new62() /* reduce AAgrammar63Grammar */
@@ -2747,15 +2747,15 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PStates pstatesNode4 = (PStates)nodeArrayList2.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList3.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList4.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, pstatesNode4, ptokensNode5, pigntokensNode6, pproductionsNode7, null);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PStates pStatesNode4 = (PStates)nodeArrayList2.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList3.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList4.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, pStatesNode4, pTokensNode5, pIgnTokensNode6, pProductionsNode7, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new63() /* reduce AAgrammar64Grammar */
@@ -2768,25 +2768,25 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PStates pstatesNode5 = (PStates)nodeArrayList3.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList4.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList5.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList6.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, pstatesNode5, ptokensNode6, pigntokensNode7, pproductionsNode8, null);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PStates pStatesNode5 = (PStates)nodeArrayList3.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList4.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList5.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList6.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, pStatesNode5, pTokensNode6, pIgnTokensNode7, pProductionsNode8, null);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList6);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList6);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new64() /* reduce AAgrammar65Grammar */
     {
         List<?> nodeArrayList1 = pop();
-        PAst pastNode8 = (PAst)nodeArrayList1.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, null, null, null, null, pastNode8);
+        PAst pAstNode8 = (PAst)nodeArrayList1.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, null, null, null, null, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new65() /* reduce AAgrammar66Grammar */
@@ -2795,23 +2795,23 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PAst pastNode9 = (PAst)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, null, null, null, null, pastNode9);
+        PAst pAstNode9 = (PAst)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, null, null, null, null, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new66() /* reduce AAgrammar67Grammar */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, null, null, null, null, pastNode8);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, null, null, null, null, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new67() /* reduce AAgrammar68Grammar */
@@ -2821,24 +2821,24 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, null, null, null, null, pastNode9);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, null, null, null, null, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new68() /* reduce AAgrammar69Grammar */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PStates pstatesNode4 = (PStates)nodeArrayList1.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, pstatesNode4, null, null, null, pastNode8);
+        PStates pStatesNode4 = (PStates)nodeArrayList1.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, pStatesNode4, null, null, null, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new69() /* reduce AAgrammar70Grammar */
@@ -2848,12 +2848,12 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PStates pstatesNode5 = (PStates)nodeArrayList2.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5, null, null, null, pastNode9);
+        PStates pStatesNode5 = (PStates)nodeArrayList2.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, pStatesNode5, null, null, null, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new70() /* reduce AAgrammar71Grammar */
@@ -2861,13 +2861,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PStates pstatesNode4 = (PStates)nodeArrayList2.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, pstatesNode4, null, null, null, pastNode8);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PStates pStatesNode4 = (PStates)nodeArrayList2.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, pStatesNode4, null, null, null, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new71() /* reduce AAgrammar72Grammar */
@@ -2878,25 +2878,25 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PStates pstatesNode5 = (PStates)nodeArrayList3.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, pstatesNode5, null, null, null, pastNode9);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PStates pStatesNode5 = (PStates)nodeArrayList3.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, pStatesNode5, null, null, null, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new72() /* reduce AAgrammar73Grammar */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PTokens ptokensNode5 = (PTokens)nodeArrayList1.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, null, ptokensNode5, null, null, pastNode8);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList1.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, null, pTokensNode5, null, null, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new73() /* reduce AAgrammar74Grammar */
@@ -2906,12 +2906,12 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PTokens ptokensNode6 = (PTokens)nodeArrayList2.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, null, ptokensNode6, null, null, pastNode9);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList2.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, null, pTokensNode6, null, null, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new74() /* reduce AAgrammar75Grammar */
@@ -2919,13 +2919,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList2.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, null, ptokensNode5, null, null, pastNode8);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList2.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, null, pTokensNode5, null, null, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new75() /* reduce AAgrammar76Grammar */
@@ -2936,13 +2936,13 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList3.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, null, ptokensNode6, null, null, pastNode9);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList3.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, null, pTokensNode6, null, null, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new76() /* reduce AAgrammar77Grammar */
@@ -2950,13 +2950,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PStates pstatesNode4 = (PStates)nodeArrayList1.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList2.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, pstatesNode4, ptokensNode5, null, null, pastNode8);
+        PStates pStatesNode4 = (PStates)nodeArrayList1.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList2.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, pStatesNode4, pTokensNode5, null, null, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new77() /* reduce AAgrammar78Grammar */
@@ -2967,13 +2967,13 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PStates pstatesNode5 = (PStates)nodeArrayList2.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList3.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5, ptokensNode6, null, null, pastNode9);
+        PStates pStatesNode5 = (PStates)nodeArrayList2.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList3.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, pStatesNode5, pTokensNode6, null, null, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new78() /* reduce AAgrammar79Grammar */
@@ -2982,14 +2982,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PStates pstatesNode4 = (PStates)nodeArrayList2.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList3.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, pstatesNode4, ptokensNode5, null, null, pastNode8);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PStates pStatesNode4 = (PStates)nodeArrayList2.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList3.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, pStatesNode4, pTokensNode5, null, null, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new79() /* reduce AAgrammar80Grammar */
@@ -3001,26 +3001,26 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PStates pstatesNode5 = (PStates)nodeArrayList3.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList4.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, pstatesNode5, ptokensNode6, null, null, pastNode9);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PStates pStatesNode5 = (PStates)nodeArrayList3.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList4.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, pStatesNode5, pTokensNode6, null, null, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new80() /* reduce AAgrammar81Grammar */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList1.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, null, null, pigntokensNode6, null, pastNode8);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList1.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, null, null, pIgnTokensNode6, null, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new81() /* reduce AAgrammar82Grammar */
@@ -3030,12 +3030,12 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList2.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, null, null, pigntokensNode7, null, pastNode9);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList2.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, null, null, pIgnTokensNode7, null, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new82() /* reduce AAgrammar83Grammar */
@@ -3043,13 +3043,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, null, null, pigntokensNode6, null, pastNode8);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, null, null, pIgnTokensNode6, null, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new83() /* reduce AAgrammar84Grammar */
@@ -3060,13 +3060,13 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, null, null, pigntokensNode7, null, pastNode9);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, null, null, pIgnTokensNode7, null, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new84() /* reduce AAgrammar85Grammar */
@@ -3074,13 +3074,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PStates pstatesNode4 = (PStates)nodeArrayList1.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, pstatesNode4, null, pigntokensNode6, null, pastNode8);
+        PStates pStatesNode4 = (PStates)nodeArrayList1.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, pStatesNode4, null, pIgnTokensNode6, null, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new85() /* reduce AAgrammar86Grammar */
@@ -3091,13 +3091,13 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PStates pstatesNode5 = (PStates)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5, null, pigntokensNode7, null, pastNode9);
+        PStates pStatesNode5 = (PStates)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, pStatesNode5, null, pIgnTokensNode7, null, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new86() /* reduce AAgrammar87Grammar */
@@ -3106,14 +3106,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PStates pstatesNode4 = (PStates)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, pstatesNode4, null, pigntokensNode6, null, pastNode8);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PStates pStatesNode4 = (PStates)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, pStatesNode4, null, pIgnTokensNode6, null, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new87() /* reduce AAgrammar88Grammar */
@@ -3125,14 +3125,14 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PStates pstatesNode5 = (PStates)nodeArrayList3.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, pstatesNode5, null, pigntokensNode7, null, pastNode9);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PStates pStatesNode5 = (PStates)nodeArrayList3.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, pStatesNode5, null, pIgnTokensNode7, null, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new88() /* reduce AAgrammar89Grammar */
@@ -3140,13 +3140,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PTokens ptokensNode5 = (PTokens)nodeArrayList1.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, null, ptokensNode5, pigntokensNode6, null, pastNode8);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList1.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, null, pTokensNode5, pIgnTokensNode6, null, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new89() /* reduce AAgrammar90Grammar */
@@ -3157,13 +3157,13 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PTokens ptokensNode6 = (PTokens)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, null, ptokensNode6, pigntokensNode7, null, pastNode9);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, null, pTokensNode6, pIgnTokensNode7, null, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new90() /* reduce AAgrammar91Grammar */
@@ -3172,14 +3172,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, null, ptokensNode5, pigntokensNode6, null, pastNode8);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, null, pTokensNode5, pIgnTokensNode6, null, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new91() /* reduce AAgrammar92Grammar */
@@ -3191,14 +3191,14 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList3.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, null, ptokensNode6, pigntokensNode7, null, pastNode9);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList3.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, null, pTokensNode6, pIgnTokensNode7, null, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new92() /* reduce AAgrammar93Grammar */
@@ -3207,14 +3207,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PStates pstatesNode4 = (PStates)nodeArrayList1.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, pstatesNode4, ptokensNode5, pigntokensNode6, null, pastNode8);
+        PStates pStatesNode4 = (PStates)nodeArrayList1.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, pStatesNode4, pTokensNode5, pIgnTokensNode6, null, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new93() /* reduce AAgrammar94Grammar */
@@ -3226,14 +3226,14 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PStates pstatesNode5 = (PStates)nodeArrayList2.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList3.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5, ptokensNode6, pigntokensNode7, null, pastNode9);
+        PStates pStatesNode5 = (PStates)nodeArrayList2.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList3.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, pStatesNode5, pTokensNode6, pIgnTokensNode7, null, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new94() /* reduce AAgrammar95Grammar */
@@ -3243,15 +3243,15 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PStates pstatesNode4 = (PStates)nodeArrayList2.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList3.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList4.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, pstatesNode4, ptokensNode5, pigntokensNode6, null, pastNode8);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PStates pStatesNode4 = (PStates)nodeArrayList2.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList3.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList4.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, pStatesNode4, pTokensNode5, pIgnTokensNode6, null, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new95() /* reduce AAgrammar96Grammar */
@@ -3264,27 +3264,27 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PStates pstatesNode5 = (PStates)nodeArrayList3.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList4.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList5.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList6.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, pstatesNode5, ptokensNode6, pigntokensNode7, null, pastNode9);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PStates pStatesNode5 = (PStates)nodeArrayList3.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList4.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList5.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList6.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, pStatesNode5, pTokensNode6, pIgnTokensNode7, null, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList6);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList6);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new96() /* reduce AAgrammar97Grammar */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList1.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList2.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, null, null, null, pproductionsNode7, pastNode8);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList1.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList2.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, null, null, null, pProductionsNode7, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new97() /* reduce AAgrammar98Grammar */
@@ -3294,12 +3294,12 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList2.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, null, null, null, pproductionsNode8, pastNode9);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList2.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, null, null, null, pProductionsNode8, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new98() /* reduce AAgrammar99Grammar */
@@ -3307,13 +3307,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList2.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, null, null, null, pproductionsNode7, pastNode8);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList2.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, null, null, null, pProductionsNode7, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new99() /* reduce AAgrammar100Grammar */
@@ -3324,13 +3324,13 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList3.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, null, null, null, pproductionsNode8, pastNode9);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList3.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, null, null, null, pProductionsNode8, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new100() /* reduce AAgrammar101Grammar */
@@ -3338,13 +3338,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PStates pstatesNode4 = (PStates)nodeArrayList1.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList2.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, pstatesNode4, null, null, pproductionsNode7, pastNode8);
+        PStates pStatesNode4 = (PStates)nodeArrayList1.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList2.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, pStatesNode4, null, null, pProductionsNode7, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new101() /* reduce AAgrammar102Grammar */
@@ -3355,13 +3355,13 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PStates pstatesNode5 = (PStates)nodeArrayList2.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList3.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5, null, null, pproductionsNode8, pastNode9);
+        PStates pStatesNode5 = (PStates)nodeArrayList2.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList3.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, pStatesNode5, null, null, pProductionsNode8, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new102() /* reduce AAgrammar103Grammar */
@@ -3370,14 +3370,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PStates pstatesNode4 = (PStates)nodeArrayList2.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList3.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, pstatesNode4, null, null, pproductionsNode7, pastNode8);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PStates pStatesNode4 = (PStates)nodeArrayList2.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList3.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, pStatesNode4, null, null, pProductionsNode7, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new103() /* reduce AAgrammar104Grammar */
@@ -3389,14 +3389,14 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PStates pstatesNode5 = (PStates)nodeArrayList3.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList4.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, pstatesNode5, null, null, pproductionsNode8, pastNode9);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PStates pStatesNode5 = (PStates)nodeArrayList3.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList4.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, pStatesNode5, null, null, pProductionsNode8, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new104() /* reduce AAgrammar105Grammar */
@@ -3404,13 +3404,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PTokens ptokensNode5 = (PTokens)nodeArrayList1.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList2.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, null, ptokensNode5, null, pproductionsNode7, pastNode8);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList1.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList2.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, null, pTokensNode5, null, pProductionsNode7, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new105() /* reduce AAgrammar106Grammar */
@@ -3421,13 +3421,13 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PTokens ptokensNode6 = (PTokens)nodeArrayList2.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList3.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, null, ptokensNode6, null, pproductionsNode8, pastNode9);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList2.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList3.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, null, pTokensNode6, null, pProductionsNode8, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new106() /* reduce AAgrammar107Grammar */
@@ -3436,14 +3436,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList2.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList3.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, null, ptokensNode5, null, pproductionsNode7, pastNode8);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList2.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList3.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, null, pTokensNode5, null, pProductionsNode7, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new107() /* reduce AAgrammar108Grammar */
@@ -3455,14 +3455,14 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList4.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, null, ptokensNode6, null, pproductionsNode8, pastNode9);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList4.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, null, pTokensNode6, null, pProductionsNode8, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new108() /* reduce AAgrammar109Grammar */
@@ -3471,14 +3471,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PStates pstatesNode4 = (PStates)nodeArrayList1.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList2.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList3.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, pstatesNode4, ptokensNode5, null, pproductionsNode7, pastNode8);
+        PStates pStatesNode4 = (PStates)nodeArrayList1.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList2.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList3.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, pStatesNode4, pTokensNode5, null, pProductionsNode7, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new109() /* reduce AAgrammar110Grammar */
@@ -3490,14 +3490,14 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PStates pstatesNode5 = (PStates)nodeArrayList2.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList4.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5, ptokensNode6, null, pproductionsNode8, pastNode9);
+        PStates pStatesNode5 = (PStates)nodeArrayList2.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList4.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, pStatesNode5, pTokensNode6, null, pProductionsNode8, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new110() /* reduce AAgrammar111Grammar */
@@ -3507,15 +3507,15 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PStates pstatesNode4 = (PStates)nodeArrayList2.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList4.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, pstatesNode4, ptokensNode5, null, pproductionsNode7, pastNode8);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PStates pStatesNode4 = (PStates)nodeArrayList2.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList4.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, pStatesNode4, pTokensNode5, null, pProductionsNode7, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new111() /* reduce AAgrammar112Grammar */
@@ -3528,15 +3528,15 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PStates pstatesNode5 = (PStates)nodeArrayList3.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList4.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList5.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList6.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, pstatesNode5, ptokensNode6, null, pproductionsNode8, pastNode9);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PStates pStatesNode5 = (PStates)nodeArrayList3.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList4.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList5.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList6.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, pStatesNode5, pTokensNode6, null, pProductionsNode8, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList6);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList6);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new112() /* reduce AAgrammar113Grammar */
@@ -3544,13 +3544,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList1.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList2.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList3.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, null, null, pigntokensNode6, pproductionsNode7, pastNode8);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList1.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList2.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList3.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, null, null, pIgnTokensNode6, pProductionsNode7, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new113() /* reduce AAgrammar114Grammar */
@@ -3561,13 +3561,13 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList2.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList3.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, null, null, pigntokensNode7, pproductionsNode8, pastNode9);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList2.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList3.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, null, null, pIgnTokensNode7, pProductionsNode8, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new114() /* reduce AAgrammar115Grammar */
@@ -3576,14 +3576,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList3.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, null, null, pigntokensNode6, pproductionsNode7, pastNode8);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList3.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, null, null, pIgnTokensNode6, pProductionsNode7, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new115() /* reduce AAgrammar116Grammar */
@@ -3595,14 +3595,14 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList4.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, null, null, pigntokensNode7, pproductionsNode8, pastNode9);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList4.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, null, null, pIgnTokensNode7, pProductionsNode8, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new116() /* reduce AAgrammar117Grammar */
@@ -3611,14 +3611,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PStates pstatesNode4 = (PStates)nodeArrayList1.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList3.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, pstatesNode4, null, pigntokensNode6, pproductionsNode7, pastNode8);
+        PStates pStatesNode4 = (PStates)nodeArrayList1.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList3.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, pStatesNode4, null, pIgnTokensNode6, pProductionsNode7, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new117() /* reduce AAgrammar118Grammar */
@@ -3630,14 +3630,14 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PStates pstatesNode5 = (PStates)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList4.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5, null, pigntokensNode7, pproductionsNode8, pastNode9);
+        PStates pStatesNode5 = (PStates)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList4.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, pStatesNode5, null, pIgnTokensNode7, pProductionsNode8, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new118() /* reduce AAgrammar119Grammar */
@@ -3647,15 +3647,15 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PStates pstatesNode4 = (PStates)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList4.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, pstatesNode4, null, pigntokensNode6, pproductionsNode7, pastNode8);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PStates pStatesNode4 = (PStates)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList4.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, pStatesNode4, null, pIgnTokensNode6, pProductionsNode7, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new119() /* reduce AAgrammar120Grammar */
@@ -3668,15 +3668,15 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PStates pstatesNode5 = (PStates)nodeArrayList3.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList5.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList6.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, pstatesNode5, null, pigntokensNode7, pproductionsNode8, pastNode9);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PStates pStatesNode5 = (PStates)nodeArrayList3.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList5.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList6.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, pStatesNode5, null, pIgnTokensNode7, pProductionsNode8, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList6);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList6);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new120() /* reduce AAgrammar121Grammar */
@@ -3685,14 +3685,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PTokens ptokensNode5 = (PTokens)nodeArrayList1.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList3.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList4.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, null, ptokensNode5, pigntokensNode6, pproductionsNode7, pastNode8);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList1.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList2.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList3.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList4.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, null, pTokensNode5, pIgnTokensNode6, pProductionsNode7, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new121() /* reduce AAgrammar122Grammar */
@@ -3704,14 +3704,14 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PTokens ptokensNode6 = (PTokens)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList4.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, null, ptokensNode6, pigntokensNode7, pproductionsNode8, pastNode9);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList4.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, null, pTokensNode6, pIgnTokensNode7, pProductionsNode8, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new122() /* reduce AAgrammar123Grammar */
@@ -3721,15 +3721,15 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList4.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, null, ptokensNode5, pigntokensNode6, pproductionsNode7, pastNode8);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList4.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, null, pTokensNode5, pIgnTokensNode6, pProductionsNode7, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new123() /* reduce AAgrammar124Grammar */
@@ -3742,15 +3742,15 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList3.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList5.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList6.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, null, ptokensNode6, pigntokensNode7, pproductionsNode8, pastNode9);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList3.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList5.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList6.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, null, pTokensNode6, pIgnTokensNode7, pProductionsNode8, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList6);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList6);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new124() /* reduce AAgrammar125Grammar */
@@ -3760,15 +3760,15 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PStates pstatesNode4 = (PStates)nodeArrayList1.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList2.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList4.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList5.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), null, pstatesNode4, ptokensNode5, pigntokensNode6, pproductionsNode7, pastNode8);
+        PStates pStatesNode4 = (PStates)nodeArrayList1.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList2.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList3.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList4.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList5.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), null, pStatesNode4, pTokensNode5, pIgnTokensNode6, pProductionsNode7, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new125() /* reduce AAgrammar126Grammar */
@@ -3781,15 +3781,15 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PStates pstatesNode5 = (PStates)nodeArrayList2.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList3.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList5.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList6.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5, ptokensNode6, pigntokensNode7, pproductionsNode8, pastNode9);
+        PStates pStatesNode5 = (PStates)nodeArrayList2.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList3.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList4.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList5.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList6.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, null, pStatesNode5, pTokensNode6, pIgnTokensNode7, pProductionsNode8, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList6);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList6);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new126() /* reduce AAgrammar127Grammar */
@@ -3800,16 +3800,16 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PHelpers phelpersNode3 = (PHelpers)nodeArrayList1.get(0);
-        PStates pstatesNode4 = (PStates)nodeArrayList2.get(0);
-        PTokens ptokensNode5 = (PTokens)nodeArrayList3.get(0);
-        PIgnTokens pigntokensNode6 = (PIgnTokens)nodeArrayList4.get(0);
-        PProductions pproductionsNode7 = (PProductions)nodeArrayList5.get(0);
-        PAst pastNode8 = (PAst)nodeArrayList6.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(Collections.emptyList(), phelpersNode3, pstatesNode4, ptokensNode5, pigntokensNode6, pproductionsNode7, pastNode8);
+        PHelpers pHelpersNode3 = (PHelpers)nodeArrayList1.get(0);
+        PStates pStatesNode4 = (PStates)nodeArrayList2.get(0);
+        PTokens pTokensNode5 = (PTokens)nodeArrayList3.get(0);
+        PIgnTokens pIgnTokensNode6 = (PIgnTokens)nodeArrayList4.get(0);
+        PProductions pProductionsNode7 = (PProductions)nodeArrayList5.get(0);
+        PAst pAstNode8 = (PAst)nodeArrayList6.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(Collections.emptyList(), pHelpersNode3, pStatesNode4, pTokensNode5, pIgnTokensNode6, pProductionsNode7, pAstNode8);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList6);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList6);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new127() /* reduce AAgrammar128Grammar */
@@ -3823,16 +3823,16 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList1.get(0);
         List<TPkgId> listNode3 = listNode2;
-        PHelpers phelpersNode4 = (PHelpers)nodeArrayList2.get(0);
-        PStates pstatesNode5 = (PStates)nodeArrayList3.get(0);
-        PTokens ptokensNode6 = (PTokens)nodeArrayList4.get(0);
-        PIgnTokens pigntokensNode7 = (PIgnTokens)nodeArrayList5.get(0);
-        PProductions pproductionsNode8 = (PProductions)nodeArrayList6.get(0);
-        PAst pastNode9 = (PAst)nodeArrayList7.get(0);
-        AGrammar pgrammarNode1 = new AGrammar(listNode3, phelpersNode4, pstatesNode5, ptokensNode6, pigntokensNode7, pproductionsNode8, pastNode9);
+        PHelpers pHelpersNode4 = (PHelpers)nodeArrayList2.get(0);
+        PStates pStatesNode5 = (PStates)nodeArrayList3.get(0);
+        PTokens pTokensNode6 = (PTokens)nodeArrayList4.get(0);
+        PIgnTokens pIgnTokensNode7 = (PIgnTokens)nodeArrayList5.get(0);
+        PProductions pProductionsNode8 = (PProductions)nodeArrayList6.get(0);
+        PAst pAstNode9 = (PAst)nodeArrayList7.get(0);
+        AGrammar pGrammarNode1 = new AGrammar(listNode3, pHelpersNode4, pStatesNode5, pTokensNode6, pIgnTokensNode7, pProductionsNode8, pAstNode9);
 
-        checkResult(pgrammarNode1, nodeArrayList1, nodeArrayList7);
-        return Collections.singletonList(pgrammarNode1);
+        checkResult(pGrammarNode1, nodeArrayList1, nodeArrayList7);
+        return Collections.singletonList(pGrammarNode1);
     }
 
     private List<?> new128() /* reduce APackage */
@@ -3849,10 +3849,10 @@ public class Parser implements IParser
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TPkgId tpkgidNode1 = (TPkgId)nodeArrayList1.get(0);
+        TPkgId tPkgIdNode1 = (TPkgId)nodeArrayList1.get(0);
         List<TPkgId> listNode2;
-        if(tpkgidNode1 != null) {
-            listNode2 = Collections.singletonList(tpkgidNode1);
+        if(tPkgIdNode1 != null) {
+            listNode2 = Collections.singletonList(tPkgIdNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -3865,12 +3865,12 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TPkgId tpkgidNode1 = (TPkgId)nodeArrayList1.get(0);
+        TPkgId tPkgIdNode1 = (TPkgId)nodeArrayList1.get(0);
         List<TPkgId> listNode2 = (List<TPkgId>)nodeArrayList2.get(0);
         List<TPkgId> listNode3 = new LinkedList<>();
-        if(tpkgidNode1 != null)
+        if(tPkgIdNode1 != null)
         {
-            listNode3.add(tpkgidNode1);
+            listNode3.add(tPkgIdNode1);
         }
         if (listNode3.isEmpty() && listNode2 instanceof LinkedList<?>) {
             listNode3 = listNode2;
@@ -3885,9 +3885,9 @@ public class Parser implements IParser
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TPkgId tpkgidNode1 = (TPkgId)nodeArrayList2.get(0);
-        checkResult(tpkgidNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(tpkgidNode1);
+        TPkgId tPkgIdNode1 = (TPkgId)nodeArrayList2.get(0);
+        checkResult(tPkgIdNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(tPkgIdNode1);
     }
 
     private List<?> new132() /* reduce AHelpers */
@@ -3896,10 +3896,10 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<PHelperDef> listNode2 = (List<PHelperDef>)nodeArrayList2.get(0);
         List<PHelperDef> listNode3 = listNode2;
-        AHelpers phelpersNode1 = new AHelpers(listNode3);
+        AHelpers pHelpersNode1 = new AHelpers(listNode3);
 
-        checkResult(phelpersNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(phelpersNode1);
+        checkResult(pHelpersNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pHelpersNode1);
     }
 
     private List<?> new133() /* reduce AHelperDef */
@@ -3908,12 +3908,12 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList1.get(0);
-        PRegExp pregexpNode3 = (PRegExp)nodeArrayList3.get(0);
-        AHelperDef phelperdefNode1 = new AHelperDef(tidNode2, pregexpNode3);
+        TId tIdNode2 = (TId)nodeArrayList1.get(0);
+        PRegExp pRegExpNode3 = (PRegExp)nodeArrayList3.get(0);
+        AHelperDef pHelperDefNode1 = new AHelperDef(tIdNode2, pRegExpNode3);
 
-        checkResult(phelperdefNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(phelperdefNode1);
+        checkResult(pHelperDefNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pHelperDefNode1);
     }
 
     private List<?> new134() /* reduce AStates */
@@ -3923,19 +3923,19 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TId> listNode2 = (List<TId>)nodeArrayList2.get(0);
         List<TId> listNode3 = listNode2;
-        AStates pstatesNode1 = new AStates(listNode3);
+        AStates pStatesNode1 = new AStates(listNode3);
 
-        checkResult(pstatesNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pstatesNode1);
+        checkResult(pStatesNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pStatesNode1);
     }
 
     private List<?> new135() /* reduce AAidlist1IdList */
     {
         List<?> nodeArrayList1 = pop();
-        TId tidNode1 = (TId)nodeArrayList1.get(0);
+        TId tIdNode1 = (TId)nodeArrayList1.get(0);
         List<TId> listNode2;
-        if(tidNode1 != null) {
-            listNode2 = Collections.singletonList(tidNode1);
+        if(tIdNode1 != null) {
+            listNode2 = Collections.singletonList(tIdNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -3947,12 +3947,12 @@ public class Parser implements IParser
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode1 = (TId)nodeArrayList1.get(0);
+        TId tIdNode1 = (TId)nodeArrayList1.get(0);
         List<TId> listNode2 = (List<TId>)nodeArrayList2.get(0);
         List<TId> listNode3 = new LinkedList<>();
-        if(tidNode1 != null)
+        if(tIdNode1 != null)
         {
-            listNode3.add(tidNode1);
+            listNode3.add(tIdNode1);
         }
         if (listNode3.isEmpty() && listNode2 instanceof LinkedList<?>) {
             listNode3 = listNode2;
@@ -3967,9 +3967,9 @@ public class Parser implements IParser
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode1 = (TId)nodeArrayList2.get(0);
-        checkResult(tidNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(tidNode1);
+        TId tIdNode1 = (TId)nodeArrayList2.get(0);
+        checkResult(tIdNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(tIdNode1);
     }
 
     private List<?> new138() /* reduce ATokens */
@@ -3978,10 +3978,10 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<PTokenDef> listNode2 = (List<PTokenDef>)nodeArrayList2.get(0);
         List<PTokenDef> listNode3 = listNode2;
-        ATokens ptokensNode1 = new ATokens(listNode3);
+        ATokens pTokensNode1 = new ATokens(listNode3);
 
-        checkResult(ptokensNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(ptokensNode1);
+        checkResult(pTokensNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pTokensNode1);
     }
 
     private List<?> new139() /* reduce AAtokendef1TokenDef */
@@ -3990,12 +3990,12 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode3 = (TId)nodeArrayList1.get(0);
-        PRegExp pregexpNode4 = (PRegExp)nodeArrayList3.get(0);
-        ATokenDef ptokendefNode1 = new ATokenDef(null, tidNode3, pregexpNode4, null, null);
+        TId tIdNode3 = (TId)nodeArrayList1.get(0);
+        PRegExp pRegExpNode4 = (PRegExp)nodeArrayList3.get(0);
+        ATokenDef pTokenDefNode1 = new ATokenDef(null, tIdNode3, pRegExpNode4, null, null);
 
-        checkResult(ptokendefNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(ptokendefNode1);
+        checkResult(pTokenDefNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pTokenDefNode1);
     }
 
     private List<?> new140() /* reduce AAtokendef2TokenDef */
@@ -4005,13 +4005,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PStateList pstatelistNode2 = (PStateList)nodeArrayList1.get(0);
-        TId tidNode3 = (TId)nodeArrayList2.get(0);
-        PRegExp pregexpNode4 = (PRegExp)nodeArrayList4.get(0);
-        ATokenDef ptokendefNode1 = new ATokenDef(pstatelistNode2, tidNode3, pregexpNode4, null, null);
+        PStateList pStateListNode2 = (PStateList)nodeArrayList1.get(0);
+        TId tIdNode3 = (TId)nodeArrayList2.get(0);
+        PRegExp pRegExpNode4 = (PRegExp)nodeArrayList4.get(0);
+        ATokenDef pTokenDefNode1 = new ATokenDef(pStateListNode2, tIdNode3, pRegExpNode4, null, null);
 
-        checkResult(ptokendefNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(ptokendefNode1);
+        checkResult(pTokenDefNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pTokenDefNode1);
     }
 
     private List<?> new141() /* reduce AAtokendef3TokenDef */
@@ -4021,14 +4021,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode3 = (TId)nodeArrayList1.get(0);
-        PRegExp pregexpNode4 = (PRegExp)nodeArrayList3.get(0);
-        TSlash tslashNode5 = (TSlash)nodeArrayList4.get(0);
-        PRegExp pregexpNode6 = (PRegExp)nodeArrayList4.get(1);
-        ATokenDef ptokendefNode1 = new ATokenDef(null, tidNode3, pregexpNode4, tslashNode5, pregexpNode6);
+        TId tIdNode3 = (TId)nodeArrayList1.get(0);
+        PRegExp pRegExpNode4 = (PRegExp)nodeArrayList3.get(0);
+        TSlash tSlashNode5 = (TSlash)nodeArrayList4.get(0);
+        PRegExp pRegExpNode6 = (PRegExp)nodeArrayList4.get(1);
+        ATokenDef pTokenDefNode1 = new ATokenDef(null, tIdNode3, pRegExpNode4, tSlashNode5, pRegExpNode6);
 
-        checkResult(ptokendefNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(ptokendefNode1);
+        checkResult(pTokenDefNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pTokenDefNode1);
     }
 
     private List<?> new142() /* reduce AAtokendef4TokenDef */
@@ -4039,15 +4039,15 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PStateList pstatelistNode2 = (PStateList)nodeArrayList1.get(0);
-        TId tidNode3 = (TId)nodeArrayList2.get(0);
-        PRegExp pregexpNode4 = (PRegExp)nodeArrayList4.get(0);
-        TSlash tslashNode5 = (TSlash)nodeArrayList5.get(0);
-        PRegExp pregexpNode6 = (PRegExp)nodeArrayList5.get(1);
-        ATokenDef ptokendefNode1 = new ATokenDef(pstatelistNode2, tidNode3, pregexpNode4, tslashNode5, pregexpNode6);
+        PStateList pStateListNode2 = (PStateList)nodeArrayList1.get(0);
+        TId tIdNode3 = (TId)nodeArrayList2.get(0);
+        PRegExp pRegExpNode4 = (PRegExp)nodeArrayList4.get(0);
+        TSlash tSlashNode5 = (TSlash)nodeArrayList5.get(0);
+        PRegExp pRegExpNode6 = (PRegExp)nodeArrayList5.get(1);
+        ATokenDef pTokenDefNode1 = new ATokenDef(pStateListNode2, tIdNode3, pRegExpNode4, tSlashNode5, pRegExpNode6);
 
-        checkResult(ptokendefNode1, nodeArrayList1, nodeArrayList6);
-        return Collections.singletonList(ptokendefNode1);
+        checkResult(pTokenDefNode1, nodeArrayList1, nodeArrayList6);
+        return Collections.singletonList(pTokenDefNode1);
     }
 
     private List<?> new143() /* reduce AAstatelist1StateList */
@@ -4055,11 +4055,11 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList2.get(0);
-        AStateList pstatelistNode1 = new AStateList(tidNode2, null, Collections.emptyList());
+        TId tIdNode2 = (TId)nodeArrayList2.get(0);
+        AStateList pStateListNode1 = new AStateList(tIdNode2, null, Collections.emptyList());
 
-        checkResult(pstatelistNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pstatelistNode1);
+        checkResult(pStateListNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pStateListNode1);
     }
 
     private List<?> new144() /* reduce AAstatelist2StateList */
@@ -4068,12 +4068,12 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList2.get(0);
-        PTransition ptransitionNode3 = (PTransition)nodeArrayList3.get(0);
-        AStateList pstatelistNode1 = new AStateList(tidNode2, ptransitionNode3, Collections.emptyList());
+        TId tIdNode2 = (TId)nodeArrayList2.get(0);
+        PTransition pTransitionNode3 = (PTransition)nodeArrayList3.get(0);
+        AStateList pStateListNode1 = new AStateList(tIdNode2, pTransitionNode3, Collections.emptyList());
 
-        checkResult(pstatelistNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pstatelistNode1);
+        checkResult(pStateListNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pStateListNode1);
     }
 
     private List<?> new145() /* reduce AAstatelist3StateList */
@@ -4082,13 +4082,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList2.get(0);
+        TId tIdNode2 = (TId)nodeArrayList2.get(0);
         List<PStateListTail> listNode4 = (List<PStateListTail>)nodeArrayList3.get(0);
         List<PStateListTail> listNode5 = listNode4;
-        AStateList pstatelistNode1 = new AStateList(tidNode2, null, listNode5);
+        AStateList pStateListNode1 = new AStateList(tIdNode2, null, listNode5);
 
-        checkResult(pstatelistNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pstatelistNode1);
+        checkResult(pStateListNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pStateListNode1);
     }
 
     private List<?> new146() /* reduce AAstatelist4StateList */
@@ -4098,25 +4098,25 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList2.get(0);
-        PTransition ptransitionNode3 = (PTransition)nodeArrayList3.get(0);
+        TId tIdNode2 = (TId)nodeArrayList2.get(0);
+        PTransition pTransitionNode3 = (PTransition)nodeArrayList3.get(0);
         List<PStateListTail> listNode4 = (List<PStateListTail>)nodeArrayList4.get(0);
         List<PStateListTail> listNode5 = listNode4;
-        AStateList pstatelistNode1 = new AStateList(tidNode2, ptransitionNode3, listNode5);
+        AStateList pStateListNode1 = new AStateList(tIdNode2, pTransitionNode3, listNode5);
 
-        checkResult(pstatelistNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pstatelistNode1);
+        checkResult(pStateListNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pStateListNode1);
     }
 
     private List<?> new147() /* reduce AAstatelisttail1StateListTail */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList2.get(0);
-        AStateListTail pstatelisttailNode1 = new AStateListTail(tidNode2, null);
+        TId tIdNode2 = (TId)nodeArrayList2.get(0);
+        AStateListTail pStateListTailNode1 = new AStateListTail(tIdNode2, null);
 
-        checkResult(pstatelisttailNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pstatelisttailNode1);
+        checkResult(pStateListTailNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pStateListTailNode1);
     }
 
     private List<?> new148() /* reduce AAstatelisttail2StateListTail */
@@ -4124,23 +4124,23 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList2.get(0);
-        PTransition ptransitionNode3 = (PTransition)nodeArrayList3.get(0);
-        AStateListTail pstatelisttailNode1 = new AStateListTail(tidNode2, ptransitionNode3);
+        TId tIdNode2 = (TId)nodeArrayList2.get(0);
+        PTransition pTransitionNode3 = (PTransition)nodeArrayList3.get(0);
+        AStateListTail pStateListTailNode1 = new AStateListTail(tIdNode2, pTransitionNode3);
 
-        checkResult(pstatelisttailNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pstatelisttailNode1);
+        checkResult(pStateListTailNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pStateListTailNode1);
     }
 
     private List<?> new149() /* reduce ATransition */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList2.get(0);
-        ATransition ptransitionNode1 = new ATransition(tidNode2);
+        TId tIdNode2 = (TId)nodeArrayList2.get(0);
+        ATransition pTransitionNode1 = new ATransition(tIdNode2);
 
-        checkResult(ptransitionNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(ptransitionNode1);
+        checkResult(pTransitionNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pTransitionNode1);
     }
 
     private List<?> new150() /* reduce AAigntokens1IgnTokens */
@@ -4148,10 +4148,10 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        AIgnTokens pigntokensNode1 = new AIgnTokens(Collections.emptyList());
+        AIgnTokens pIgnTokensNode1 = new AIgnTokens(Collections.emptyList());
 
-        checkResult(pigntokensNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pigntokensNode1);
+        checkResult(pIgnTokensNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pIgnTokensNode1);
     }
 
     private List<?> new151() /* reduce AAigntokens2IgnTokens */
@@ -4162,77 +4162,77 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<TId> listNode2 = (List<TId>)nodeArrayList3.get(0);
         List<TId> listNode3 = listNode2;
-        AIgnTokens pigntokensNode1 = new AIgnTokens(listNode3);
+        AIgnTokens pIgnTokensNode1 = new AIgnTokens(listNode3);
 
-        checkResult(pigntokensNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pigntokensNode1);
+        checkResult(pIgnTokensNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pIgnTokensNode1);
     }
 
     private List<?> new152() /* reduce ALookAhead */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TSlash tslashNode1 = (TSlash)nodeArrayList1.get(0);
-        PRegExp pregexpNode2 = (PRegExp)nodeArrayList2.get(0);
-        checkResult(tslashNode1, nodeArrayList1, nodeArrayList2);
+        TSlash tSlashNode1 = (TSlash)nodeArrayList1.get(0);
+        PRegExp pRegExpNode2 = (PRegExp)nodeArrayList2.get(0);
+        checkResult(tSlashNode1, nodeArrayList1, nodeArrayList2);
         return Arrays.asList(new Object[] {
-            tslashNode1,
-            pregexpNode2,
+            tSlashNode1,
+            pRegExpNode2,
         });
     }
 
     private List<?> new153() /* reduce AAregexp1RegExp */
     {
         List<?> nodeArrayList1 = pop();
-        PConcat pconcatNode2 = (PConcat)nodeArrayList1.get(0);
+        PConcat pConcatNode2 = (PConcat)nodeArrayList1.get(0);
         List<PConcat> listNode3;
-        if(pconcatNode2 != null) {
-            listNode3 = Collections.singletonList(pconcatNode2);
+        if(pConcatNode2 != null) {
+            listNode3 = Collections.singletonList(pConcatNode2);
         } else {
             listNode3 = Collections.emptyList();
         }
-        ARegExp pregexpNode1 = new ARegExp(listNode3);
+        ARegExp pRegExpNode1 = new ARegExp(listNode3);
 
-        checkResult(pregexpNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pregexpNode1);
+        checkResult(pRegExpNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pRegExpNode1);
     }
 
     private List<?> new154() /* reduce AAregexp2RegExp */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PConcat pconcatNode2 = (PConcat)nodeArrayList1.get(0);
+        PConcat pConcatNode2 = (PConcat)nodeArrayList1.get(0);
         List<PConcat> listNode3 = (List<PConcat>)nodeArrayList2.get(0);
         List<PConcat> listNode4 = new LinkedList<>();
-        if(pconcatNode2 != null)
+        if(pConcatNode2 != null)
         {
-            listNode4.add(pconcatNode2);
+            listNode4.add(pConcatNode2);
         }
         if (listNode4.isEmpty() && listNode3 instanceof LinkedList<?>) {
             listNode4 = listNode3;
         } else {
             listNode4.addAll(listNode3);
         }
-        ARegExp pregexpNode1 = new ARegExp(listNode4);
+        ARegExp pRegExpNode1 = new ARegExp(listNode4);
 
-        checkResult(pregexpNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pregexpNode1);
+        checkResult(pRegExpNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pRegExpNode1);
     }
 
     private List<?> new155() /* reduce ARegExpTail */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PConcat pconcatNode1 = (PConcat)nodeArrayList2.get(0);
-        checkResult(pconcatNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pconcatNode1);
+        PConcat pConcatNode1 = (PConcat)nodeArrayList2.get(0);
+        checkResult(pConcatNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pConcatNode1);
     }
 
     private List<?> new156() /* reduce AAconcat1Concat */
     {
-        AConcat pconcatNode1 = new AConcat(Collections.emptyList());
+        AConcat pConcatNode1 = new AConcat(Collections.emptyList());
 
-        return Collections.singletonList(pconcatNode1);
+        return Collections.singletonList(pConcatNode1);
     }
 
     private List<?> new157() /* reduce AAconcat2Concat */
@@ -4240,72 +4240,72 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<PUnExp> listNode2 = (List<PUnExp>)nodeArrayList1.get(0);
         List<PUnExp> listNode3 = listNode2;
-        AConcat pconcatNode1 = new AConcat(listNode3);
+        AConcat pConcatNode1 = new AConcat(listNode3);
 
-        checkResult(pconcatNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pconcatNode1);
+        checkResult(pConcatNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pConcatNode1);
     }
 
     private List<?> new158() /* reduce AAunexp1UnExp */
     {
         List<?> nodeArrayList1 = pop();
-        PBasic pbasicNode2 = (PBasic)nodeArrayList1.get(0);
-        AUnExp punexpNode1 = new AUnExp(pbasicNode2, null);
+        PBasic pBasicNode2 = (PBasic)nodeArrayList1.get(0);
+        AUnExp pUnExpNode1 = new AUnExp(pBasicNode2, null);
 
-        checkResult(punexpNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(punexpNode1);
+        checkResult(pUnExpNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pUnExpNode1);
     }
 
     private List<?> new159() /* reduce AAunexp2UnExp */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PBasic pbasicNode2 = (PBasic)nodeArrayList1.get(0);
-        PUnOp punopNode3 = (PUnOp)nodeArrayList2.get(0);
-        AUnExp punexpNode1 = new AUnExp(pbasicNode2, punopNode3);
+        PBasic pBasicNode2 = (PBasic)nodeArrayList1.get(0);
+        PUnOp pUnOpNode3 = (PUnOp)nodeArrayList2.get(0);
+        AUnExp pUnExpNode1 = new AUnExp(pBasicNode2, pUnOpNode3);
 
-        checkResult(punexpNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(punexpNode1);
+        checkResult(pUnExpNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pUnExpNode1);
     }
 
     private List<?> new160() /* reduce ACharBasic */
     {
         List<?> nodeArrayList1 = pop();
-        PChar pcharNode2 = (PChar)nodeArrayList1.get(0);
-        ACharBasic pbasicNode1 = new ACharBasic(pcharNode2);
+        PChar pCharNode2 = (PChar)nodeArrayList1.get(0);
+        ACharBasic pBasicNode1 = new ACharBasic(pCharNode2);
 
-        checkResult(pbasicNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pbasicNode1);
+        checkResult(pBasicNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pBasicNode1);
     }
 
     private List<?> new161() /* reduce ASetBasic */
     {
         List<?> nodeArrayList1 = pop();
-        PSet psetNode2 = (PSet)nodeArrayList1.get(0);
-        ASetBasic pbasicNode1 = new ASetBasic(psetNode2);
+        PSet pSetNode2 = (PSet)nodeArrayList1.get(0);
+        ASetBasic pBasicNode1 = new ASetBasic(pSetNode2);
 
-        checkResult(pbasicNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pbasicNode1);
+        checkResult(pBasicNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pBasicNode1);
     }
 
     private List<?> new162() /* reduce AStringBasic */
     {
         List<?> nodeArrayList1 = pop();
-        TString tstringNode2 = (TString)nodeArrayList1.get(0);
-        AStringBasic pbasicNode1 = new AStringBasic(tstringNode2);
+        TString tStringNode2 = (TString)nodeArrayList1.get(0);
+        AStringBasic pBasicNode1 = new AStringBasic(tStringNode2);
 
-        checkResult(pbasicNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pbasicNode1);
+        checkResult(pBasicNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pBasicNode1);
     }
 
     private List<?> new163() /* reduce AIdBasic */
     {
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList1.get(0);
-        AIdBasic pbasicNode1 = new AIdBasic(tidNode2);
+        TId tIdNode2 = (TId)nodeArrayList1.get(0);
+        AIdBasic pBasicNode1 = new AIdBasic(tIdNode2);
 
-        checkResult(pbasicNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pbasicNode1);
+        checkResult(pBasicNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pBasicNode1);
     }
 
     private List<?> new164() /* reduce ARegExpBasic */
@@ -4313,41 +4313,41 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PRegExp pregexpNode2 = (PRegExp)nodeArrayList2.get(0);
-        ARegExpBasic pbasicNode1 = new ARegExpBasic(pregexpNode2);
+        PRegExp pRegExpNode2 = (PRegExp)nodeArrayList2.get(0);
+        ARegExpBasic pBasicNode1 = new ARegExpBasic(pRegExpNode2);
 
-        checkResult(pbasicNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pbasicNode1);
+        checkResult(pBasicNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pBasicNode1);
     }
 
     private List<?> new165() /* reduce ACharChar */
     {
         List<?> nodeArrayList1 = pop();
-        TChar tcharNode2 = (TChar)nodeArrayList1.get(0);
-        ACharChar pcharNode1 = new ACharChar(tcharNode2);
+        TChar tCharNode2 = (TChar)nodeArrayList1.get(0);
+        ACharChar pCharNode1 = new ACharChar(tCharNode2);
 
-        checkResult(pcharNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pcharNode1);
+        checkResult(pCharNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pCharNode1);
     }
 
     private List<?> new166() /* reduce ADecChar */
     {
         List<?> nodeArrayList1 = pop();
-        TDecChar tdeccharNode2 = (TDecChar)nodeArrayList1.get(0);
-        ADecChar pcharNode1 = new ADecChar(tdeccharNode2);
+        TDecChar tDecCharNode2 = (TDecChar)nodeArrayList1.get(0);
+        ADecChar pCharNode1 = new ADecChar(tDecCharNode2);
 
-        checkResult(pcharNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pcharNode1);
+        checkResult(pCharNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pCharNode1);
     }
 
     private List<?> new167() /* reduce AHexChar */
     {
         List<?> nodeArrayList1 = pop();
-        THexChar thexcharNode2 = (THexChar)nodeArrayList1.get(0);
-        AHexChar pcharNode1 = new AHexChar(thexcharNode2);
+        THexChar tHexCharNode2 = (THexChar)nodeArrayList1.get(0);
+        AHexChar pCharNode1 = new AHexChar(tHexCharNode2);
 
-        checkResult(pcharNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pcharNode1);
+        checkResult(pCharNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pCharNode1);
     }
 
     private List<?> new168() /* reduce AOperationSet */
@@ -4357,13 +4357,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PBasic pbasicNode2 = (PBasic)nodeArrayList2.get(0);
-        PBinOp pbinopNode3 = (PBinOp)nodeArrayList3.get(0);
-        PBasic pbasicNode4 = (PBasic)nodeArrayList4.get(0);
-        AOperationSet psetNode1 = new AOperationSet(pbasicNode2, pbinopNode3, pbasicNode4);
+        PBasic pBasicNode2 = (PBasic)nodeArrayList2.get(0);
+        PBinOp pBinOpNode3 = (PBinOp)nodeArrayList3.get(0);
+        PBasic pBasicNode4 = (PBasic)nodeArrayList4.get(0);
+        AOperationSet pSetNode1 = new AOperationSet(pBasicNode2, pBinOpNode3, pBasicNode4);
 
-        checkResult(psetNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(psetNode1);
+        checkResult(pSetNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pSetNode1);
     }
 
     private List<?> new169() /* reduce AIntervalSet */
@@ -4373,60 +4373,60 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PChar pcharNode2 = (PChar)nodeArrayList2.get(0);
-        PChar pcharNode3 = (PChar)nodeArrayList4.get(0);
-        AIntervalSet psetNode1 = new AIntervalSet(pcharNode2, pcharNode3);
+        PChar pCharNode2 = (PChar)nodeArrayList2.get(0);
+        PChar pCharNode3 = (PChar)nodeArrayList4.get(0);
+        AIntervalSet pSetNode1 = new AIntervalSet(pCharNode2, pCharNode3);
 
-        checkResult(psetNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(psetNode1);
+        checkResult(pSetNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pSetNode1);
     }
 
     private List<?> new170() /* reduce AStarUnOp */
     {
         List<?> nodeArrayList1 = pop();
-        TStar tstarNode2 = (TStar)nodeArrayList1.get(0);
-        AStarUnOp punopNode1 = new AStarUnOp(tstarNode2);
+        TStar tStarNode2 = (TStar)nodeArrayList1.get(0);
+        AStarUnOp pUnOpNode1 = new AStarUnOp(tStarNode2);
 
-        checkResult(punopNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(punopNode1);
+        checkResult(pUnOpNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pUnOpNode1);
     }
 
     private List<?> new171() /* reduce AQMarkUnOp */
     {
         List<?> nodeArrayList1 = pop();
-        TQMark tqmarkNode2 = (TQMark)nodeArrayList1.get(0);
-        AQMarkUnOp punopNode1 = new AQMarkUnOp(tqmarkNode2);
+        TQMark tQMarkNode2 = (TQMark)nodeArrayList1.get(0);
+        AQMarkUnOp pUnOpNode1 = new AQMarkUnOp(tQMarkNode2);
 
-        checkResult(punopNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(punopNode1);
+        checkResult(pUnOpNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pUnOpNode1);
     }
 
     private List<?> new172() /* reduce APlusUnOp */
     {
         List<?> nodeArrayList1 = pop();
-        TPlus tplusNode2 = (TPlus)nodeArrayList1.get(0);
-        APlusUnOp punopNode1 = new APlusUnOp(tplusNode2);
+        TPlus tPlusNode2 = (TPlus)nodeArrayList1.get(0);
+        APlusUnOp pUnOpNode1 = new APlusUnOp(tPlusNode2);
 
-        checkResult(punopNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(punopNode1);
+        checkResult(pUnOpNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pUnOpNode1);
     }
 
     private List<?> new173() /* reduce APlusBinOp */
     {
         List<?> nodeArrayList1 = pop();
-        APlusBinOp pbinopNode1 = new APlusBinOp();
+        APlusBinOp pBinOpNode1 = new APlusBinOp();
 
-        checkResult(pbinopNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pbinopNode1);
+        checkResult(pBinOpNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pBinOpNode1);
     }
 
     private List<?> new174() /* reduce AMinusBinOp */
     {
         List<?> nodeArrayList1 = pop();
-        AMinusBinOp pbinopNode1 = new AMinusBinOp();
+        AMinusBinOp pBinOpNode1 = new AMinusBinOp();
 
-        checkResult(pbinopNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pbinopNode1);
+        checkResult(pBinOpNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pBinOpNode1);
     }
 
     private List<?> new175() /* reduce AProductions */
@@ -4435,10 +4435,10 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<PProd> listNode2 = (List<PProd>)nodeArrayList2.get(0);
         List<PProd> listNode3 = listNode2;
-        AProductions pproductionsNode1 = new AProductions(listNode3);
+        AProductions pProductionsNode1 = new AProductions(listNode3);
 
-        checkResult(pproductionsNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pproductionsNode1);
+        checkResult(pProductionsNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pProductionsNode1);
     }
 
     private List<?> new176() /* reduce AAprod1Prod */
@@ -4447,13 +4447,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList1.get(0);
+        TId tIdNode2 = (TId)nodeArrayList1.get(0);
         List<PAlt> listNode5 = (List<PAlt>)nodeArrayList3.get(0);
         List<PAlt> listNode6 = listNode5;
-        AProd pprodNode1 = new AProd(tidNode2, null, Collections.emptyList(), listNode6);
+        AProd pProdNode1 = new AProd(tIdNode2, null, Collections.emptyList(), listNode6);
 
-        checkResult(pprodNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pprodNode1);
+        checkResult(pProdNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pProdNode1);
     }
 
     private List<?> new177() /* reduce AAprod2Prod */
@@ -4463,16 +4463,16 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList1.get(0);
-        TArrow tarrowNode3 = (TArrow)nodeArrayList2.get(0);
+        TId tIdNode2 = (TId)nodeArrayList1.get(0);
+        TArrow tArrowNode3 = (TArrow)nodeArrayList2.get(0);
         List<PElem> listNode4 = (List<PElem>)nodeArrayList2.get(1);
         List<PElem> listNode5 = listNode4;
         List<PAlt> listNode6 = (List<PAlt>)nodeArrayList4.get(0);
         List<PAlt> listNode7 = listNode6;
-        AProd pprodNode1 = new AProd(tidNode2, tarrowNode3, listNode5, listNode7);
+        AProd pProdNode1 = new AProd(tIdNode2, tArrowNode3, listNode5, listNode7);
 
-        checkResult(pprodNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(pprodNode1);
+        checkResult(pProdNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pProdNode1);
     }
 
     private List<?> new178() /* reduce AAprodtransform1ProdTransform */
@@ -4480,10 +4480,10 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TArrow tarrowNode1 = (TArrow)nodeArrayList2.get(0);
-        checkResult(tarrowNode1, nodeArrayList1, nodeArrayList3);
+        TArrow tArrowNode1 = (TArrow)nodeArrayList2.get(0);
+        checkResult(tArrowNode1, nodeArrayList1, nodeArrayList3);
         return Arrays.asList(new Object[] {
-            tarrowNode1,
+            tArrowNode1,
             Collections.emptyList(),
         });
     }
@@ -4494,12 +4494,12 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TArrow tarrowNode1 = (TArrow)nodeArrayList2.get(0);
+        TArrow tArrowNode1 = (TArrow)nodeArrayList2.get(0);
         List<PElem> listNode2 = (List<PElem>)nodeArrayList3.get(0);
         List<PElem> listNode3 = listNode2;
-        checkResult(tarrowNode1, nodeArrayList1, nodeArrayList4);
+        checkResult(tArrowNode1, nodeArrayList1, nodeArrayList4);
         return Arrays.asList(new Object[] {
-            tarrowNode1,
+            tArrowNode1,
             listNode3,
         });
     }
@@ -4507,10 +4507,10 @@ public class Parser implements IParser
     private List<?> new180() /* reduce AAalts1Alts */
     {
         List<?> nodeArrayList1 = pop();
-        PAlt paltNode1 = (PAlt)nodeArrayList1.get(0);
+        PAlt pAltNode1 = (PAlt)nodeArrayList1.get(0);
         List<PAlt> listNode2;
-        if(paltNode1 != null) {
-            listNode2 = Collections.singletonList(paltNode1);
+        if(pAltNode1 != null) {
+            listNode2 = Collections.singletonList(pAltNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -4522,12 +4522,12 @@ public class Parser implements IParser
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PAlt paltNode1 = (PAlt)nodeArrayList1.get(0);
+        PAlt pAltNode1 = (PAlt)nodeArrayList1.get(0);
         List<PAlt> listNode2 = (List<PAlt>)nodeArrayList2.get(0);
         List<PAlt> listNode3 = new LinkedList<>();
-        if(paltNode1 != null)
+        if(pAltNode1 != null)
         {
-            listNode3.add(paltNode1);
+            listNode3.add(pAltNode1);
         }
         if (listNode3.isEmpty() && listNode2 instanceof LinkedList<?>) {
             listNode3 = listNode2;
@@ -4542,26 +4542,26 @@ public class Parser implements IParser
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PAlt paltNode1 = (PAlt)nodeArrayList2.get(0);
-        checkResult(paltNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(paltNode1);
+        PAlt pAltNode1 = (PAlt)nodeArrayList2.get(0);
+        checkResult(pAltNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pAltNode1);
     }
 
     private List<?> new183() /* reduce AAalt1Alt */
     {
-        AAlt paltNode1 = new AAlt(null, Collections.emptyList(), null);
+        AAlt pAltNode1 = new AAlt(null, Collections.emptyList(), null);
 
-        return Collections.singletonList(paltNode1);
+        return Collections.singletonList(pAltNode1);
     }
 
     private List<?> new184() /* reduce AAalt2Alt */
     {
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList1.get(0);
-        AAlt paltNode1 = new AAlt(tidNode2, Collections.emptyList(), null);
+        TId tIdNode2 = (TId)nodeArrayList1.get(0);
+        AAlt pAltNode1 = new AAlt(tIdNode2, Collections.emptyList(), null);
 
-        checkResult(paltNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(paltNode1);
+        checkResult(pAltNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pAltNode1);
     }
 
     private List<?> new185() /* reduce AAalt3Alt */
@@ -4569,45 +4569,45 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<PElem> listNode3 = (List<PElem>)nodeArrayList1.get(0);
         List<PElem> listNode4 = listNode3;
-        AAlt paltNode1 = new AAlt(null, listNode4, null);
+        AAlt pAltNode1 = new AAlt(null, listNode4, null);
 
-        checkResult(paltNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(paltNode1);
+        checkResult(pAltNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pAltNode1);
     }
 
     private List<?> new186() /* reduce AAalt4Alt */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList1.get(0);
+        TId tIdNode2 = (TId)nodeArrayList1.get(0);
         List<PElem> listNode3 = (List<PElem>)nodeArrayList2.get(0);
         List<PElem> listNode4 = listNode3;
-        AAlt paltNode1 = new AAlt(tidNode2, listNode4, null);
+        AAlt pAltNode1 = new AAlt(tIdNode2, listNode4, null);
 
-        checkResult(paltNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(paltNode1);
+        checkResult(pAltNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pAltNode1);
     }
 
     private List<?> new187() /* reduce AAalt5Alt */
     {
         List<?> nodeArrayList1 = pop();
-        PAltTransform palttransformNode4 = (PAltTransform)nodeArrayList1.get(0);
-        AAlt paltNode1 = new AAlt(null, Collections.emptyList(), palttransformNode4);
+        PAltTransform pAltTransformNode4 = (PAltTransform)nodeArrayList1.get(0);
+        AAlt pAltNode1 = new AAlt(null, Collections.emptyList(), pAltTransformNode4);
 
-        checkResult(paltNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(paltNode1);
+        checkResult(pAltNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pAltNode1);
     }
 
     private List<?> new188() /* reduce AAalt6Alt */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList1.get(0);
-        PAltTransform palttransformNode4 = (PAltTransform)nodeArrayList2.get(0);
-        AAlt paltNode1 = new AAlt(tidNode2, Collections.emptyList(), palttransformNode4);
+        TId tIdNode2 = (TId)nodeArrayList1.get(0);
+        PAltTransform pAltTransformNode4 = (PAltTransform)nodeArrayList2.get(0);
+        AAlt pAltNode1 = new AAlt(tIdNode2, Collections.emptyList(), pAltTransformNode4);
 
-        checkResult(paltNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(paltNode1);
+        checkResult(pAltNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pAltNode1);
     }
 
     private List<?> new189() /* reduce AAalt7Alt */
@@ -4616,11 +4616,11 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<PElem> listNode3 = (List<PElem>)nodeArrayList1.get(0);
         List<PElem> listNode4 = listNode3;
-        PAltTransform palttransformNode5 = (PAltTransform)nodeArrayList2.get(0);
-        AAlt paltNode1 = new AAlt(null, listNode4, palttransformNode5);
+        PAltTransform pAltTransformNode5 = (PAltTransform)nodeArrayList2.get(0);
+        AAlt pAltNode1 = new AAlt(null, listNode4, pAltTransformNode5);
 
-        checkResult(paltNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(paltNode1);
+        checkResult(pAltNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pAltNode1);
     }
 
     private List<?> new190() /* reduce AAalt8Alt */
@@ -4628,14 +4628,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList1.get(0);
+        TId tIdNode2 = (TId)nodeArrayList1.get(0);
         List<PElem> listNode3 = (List<PElem>)nodeArrayList2.get(0);
         List<PElem> listNode4 = listNode3;
-        PAltTransform palttransformNode5 = (PAltTransform)nodeArrayList3.get(0);
-        AAlt paltNode1 = new AAlt(tidNode2, listNode4, palttransformNode5);
+        PAltTransform pAltTransformNode5 = (PAltTransform)nodeArrayList3.get(0);
+        AAlt pAltNode1 = new AAlt(tIdNode2, listNode4, pAltTransformNode5);
 
-        checkResult(paltNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(paltNode1);
+        checkResult(pAltNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pAltNode1);
     }
 
     private List<?> new191() /* reduce AAalttransform1AltTransform */
@@ -4643,12 +4643,12 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TLBrace tlbraceNode2 = (TLBrace)nodeArrayList1.get(0);
-        TRBrace trbraceNode4 = (TRBrace)nodeArrayList3.get(0);
-        AAltTransform palttransformNode1 = new AAltTransform(tlbraceNode2, Collections.emptyList(), trbraceNode4);
+        TLBrace tLBraceNode2 = (TLBrace)nodeArrayList1.get(0);
+        TRBrace tRBraceNode4 = (TRBrace)nodeArrayList3.get(0);
+        AAltTransform pAltTransformNode1 = new AAltTransform(tLBraceNode2, Collections.emptyList(), tRBraceNode4);
 
-        checkResult(palttransformNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(palttransformNode1);
+        checkResult(pAltTransformNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pAltTransformNode1);
     }
 
     private List<?> new192() /* reduce AAalttransform2AltTransform */
@@ -4657,14 +4657,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TLBrace tlbraceNode2 = (TLBrace)nodeArrayList1.get(0);
+        TLBrace tLBraceNode2 = (TLBrace)nodeArrayList1.get(0);
         List<PTerm> listNode3 = (List<PTerm>)nodeArrayList3.get(0);
         List<PTerm> listNode4 = listNode3;
-        TRBrace trbraceNode5 = (TRBrace)nodeArrayList4.get(0);
-        AAltTransform palttransformNode1 = new AAltTransform(tlbraceNode2, listNode4, trbraceNode5);
+        TRBrace tRBraceNode5 = (TRBrace)nodeArrayList4.get(0);
+        AAltTransform pAltTransformNode1 = new AAltTransform(tLBraceNode2, listNode4, tRBraceNode5);
 
-        checkResult(palttransformNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(palttransformNode1);
+        checkResult(pAltTransformNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pAltTransformNode1);
     }
 
     private List<?> new193() /* reduce AAnewterm1Term */
@@ -4673,12 +4673,12 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PProdName pprodnameNode2 = (PProdName)nodeArrayList2.get(0);
-        TLPar tlparNode3 = (TLPar)nodeArrayList3.get(0);
-        ANewTerm ptermNode1 = new ANewTerm(pprodnameNode2, tlparNode3, Collections.emptyList());
+        PProdName pProdNameNode2 = (PProdName)nodeArrayList2.get(0);
+        TLPar tLParNode3 = (TLPar)nodeArrayList3.get(0);
+        ANewTerm pTermNode1 = new ANewTerm(pProdNameNode2, tLParNode3, Collections.emptyList());
 
-        checkResult(ptermNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(ptermNode1);
+        checkResult(pTermNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pTermNode1);
     }
 
     private List<?> new194() /* reduce AAnewterm2Term */
@@ -4688,25 +4688,25 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PProdName pprodnameNode2 = (PProdName)nodeArrayList2.get(0);
-        TLPar tlparNode3 = (TLPar)nodeArrayList3.get(0);
+        PProdName pProdNameNode2 = (PProdName)nodeArrayList2.get(0);
+        TLPar tLParNode3 = (TLPar)nodeArrayList3.get(0);
         List<PTerm> listNode4 = (List<PTerm>)nodeArrayList4.get(0);
         List<PTerm> listNode5 = listNode4;
-        ANewTerm ptermNode1 = new ANewTerm(pprodnameNode2, tlparNode3, listNode5);
+        ANewTerm pTermNode1 = new ANewTerm(pProdNameNode2, tLParNode3, listNode5);
 
-        checkResult(ptermNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(ptermNode1);
+        checkResult(pTermNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pTermNode1);
     }
 
     private List<?> new195() /* reduce AAlistterm1Term */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TLBkt tlbktNode2 = (TLBkt)nodeArrayList1.get(0);
-        AListTerm ptermNode1 = new AListTerm(tlbktNode2, Collections.emptyList());
+        TLBkt tLBktNode2 = (TLBkt)nodeArrayList1.get(0);
+        AListTerm pTermNode1 = new AListTerm(tLBktNode2, Collections.emptyList());
 
-        checkResult(ptermNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(ptermNode1);
+        checkResult(pTermNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pTermNode1);
     }
 
     private List<?> new196() /* reduce AAlistterm2Term */
@@ -4714,47 +4714,47 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TLBkt tlbktNode2 = (TLBkt)nodeArrayList1.get(0);
+        TLBkt tLBktNode2 = (TLBkt)nodeArrayList1.get(0);
         List<PListTerm> listNode3 = (List<PListTerm>)nodeArrayList2.get(0);
         List<PListTerm> listNode4 = listNode3;
-        AListTerm ptermNode1 = new AListTerm(tlbktNode2, listNode4);
+        AListTerm pTermNode1 = new AListTerm(tLBktNode2, listNode4);
 
-        checkResult(ptermNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(ptermNode1);
+        checkResult(pTermNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pTermNode1);
     }
 
     private List<?> new197() /* reduce AAsimpleterm1Term */
     {
         List<?> nodeArrayList1 = pop();
-        TId tidNode3 = (TId)nodeArrayList1.get(0);
-        ASimpleTerm ptermNode1 = new ASimpleTerm(null, tidNode3, null);
+        TId tIdNode3 = (TId)nodeArrayList1.get(0);
+        ASimpleTerm pTermNode1 = new ASimpleTerm(null, tIdNode3, null);
 
-        checkResult(ptermNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(ptermNode1);
+        checkResult(pTermNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pTermNode1);
     }
 
     private List<?> new198() /* reduce AAsimpleterm2Term */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PSpecifier pspecifierNode2 = (PSpecifier)nodeArrayList1.get(0);
-        TId tidNode3 = (TId)nodeArrayList2.get(0);
-        ASimpleTerm ptermNode1 = new ASimpleTerm(pspecifierNode2, tidNode3, null);
+        PSpecifier pSpecifierNode2 = (PSpecifier)nodeArrayList1.get(0);
+        TId tIdNode3 = (TId)nodeArrayList2.get(0);
+        ASimpleTerm pTermNode1 = new ASimpleTerm(pSpecifierNode2, tIdNode3, null);
 
-        checkResult(ptermNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(ptermNode1);
+        checkResult(pTermNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pTermNode1);
     }
 
     private List<?> new199() /* reduce AAsimpleterm3Term */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode3 = (TId)nodeArrayList1.get(0);
-        TId tidNode4 = (TId)nodeArrayList2.get(0);
-        ASimpleTerm ptermNode1 = new ASimpleTerm(null, tidNode3, tidNode4);
+        TId tIdNode3 = (TId)nodeArrayList1.get(0);
+        TId tIdNode4 = (TId)nodeArrayList2.get(0);
+        ASimpleTerm pTermNode1 = new ASimpleTerm(null, tIdNode3, tIdNode4);
 
-        checkResult(ptermNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(ptermNode1);
+        checkResult(pTermNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pTermNode1);
     }
 
     private List<?> new200() /* reduce AAsimpleterm4Term */
@@ -4762,31 +4762,31 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PSpecifier pspecifierNode2 = (PSpecifier)nodeArrayList1.get(0);
-        TId tidNode3 = (TId)nodeArrayList2.get(0);
-        TId tidNode4 = (TId)nodeArrayList3.get(0);
-        ASimpleTerm ptermNode1 = new ASimpleTerm(pspecifierNode2, tidNode3, tidNode4);
+        PSpecifier pSpecifierNode2 = (PSpecifier)nodeArrayList1.get(0);
+        TId tIdNode3 = (TId)nodeArrayList2.get(0);
+        TId tIdNode4 = (TId)nodeArrayList3.get(0);
+        ASimpleTerm pTermNode1 = new ASimpleTerm(pSpecifierNode2, tIdNode3, tIdNode4);
 
-        checkResult(ptermNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(ptermNode1);
+        checkResult(pTermNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pTermNode1);
     }
 
     private List<?> new201() /* reduce ANullTerm */
     {
         List<?> nodeArrayList1 = pop();
-        ANullTerm ptermNode1 = new ANullTerm();
+        ANullTerm pTermNode1 = new ANullTerm();
 
-        checkResult(ptermNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(ptermNode1);
+        checkResult(pTermNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pTermNode1);
     }
 
     private List<?> new202() /* reduce AAlistoflistterm1ListOfListTerm */
     {
         List<?> nodeArrayList1 = pop();
-        PListTerm plisttermNode1 = (PListTerm)nodeArrayList1.get(0);
+        PListTerm pListTermNode1 = (PListTerm)nodeArrayList1.get(0);
         List<PListTerm> listNode2;
-        if(plisttermNode1 != null) {
-            listNode2 = Collections.singletonList(plisttermNode1);
+        if(pListTermNode1 != null) {
+            listNode2 = Collections.singletonList(pListTermNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -4798,12 +4798,12 @@ public class Parser implements IParser
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PListTerm plisttermNode1 = (PListTerm)nodeArrayList1.get(0);
+        PListTerm pListTermNode1 = (PListTerm)nodeArrayList1.get(0);
         List<PListTerm> listNode2 = (List<PListTerm>)nodeArrayList2.get(0);
         List<PListTerm> listNode3 = new LinkedList<>();
-        if(plisttermNode1 != null)
+        if(pListTermNode1 != null)
         {
-            listNode3.add(plisttermNode1);
+            listNode3.add(pListTermNode1);
         }
         if (listNode3.isEmpty() && listNode2 instanceof LinkedList<?>) {
             listNode3 = listNode2;
@@ -4820,12 +4820,12 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PProdName pprodnameNode2 = (PProdName)nodeArrayList2.get(0);
-        TLPar tlparNode3 = (TLPar)nodeArrayList3.get(0);
-        ANewListTerm plisttermNode1 = new ANewListTerm(pprodnameNode2, tlparNode3, Collections.emptyList());
+        PProdName pProdNameNode2 = (PProdName)nodeArrayList2.get(0);
+        TLPar tLParNode3 = (TLPar)nodeArrayList3.get(0);
+        ANewListTerm pListTermNode1 = new ANewListTerm(pProdNameNode2, tLParNode3, Collections.emptyList());
 
-        checkResult(plisttermNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(plisttermNode1);
+        checkResult(pListTermNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pListTermNode1);
     }
 
     private List<?> new205() /* reduce AAnewlistterm2ListTerm */
@@ -4835,48 +4835,48 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PProdName pprodnameNode2 = (PProdName)nodeArrayList2.get(0);
-        TLPar tlparNode3 = (TLPar)nodeArrayList3.get(0);
+        PProdName pProdNameNode2 = (PProdName)nodeArrayList2.get(0);
+        TLPar tLParNode3 = (TLPar)nodeArrayList3.get(0);
         List<PTerm> listNode4 = (List<PTerm>)nodeArrayList4.get(0);
         List<PTerm> listNode5 = listNode4;
-        ANewListTerm plisttermNode1 = new ANewListTerm(pprodnameNode2, tlparNode3, listNode5);
+        ANewListTerm pListTermNode1 = new ANewListTerm(pProdNameNode2, tLParNode3, listNode5);
 
-        checkResult(plisttermNode1, nodeArrayList1, nodeArrayList5);
-        return Collections.singletonList(plisttermNode1);
+        checkResult(pListTermNode1, nodeArrayList1, nodeArrayList5);
+        return Collections.singletonList(pListTermNode1);
     }
 
     private List<?> new206() /* reduce AAsimplelistterm1ListTerm */
     {
         List<?> nodeArrayList1 = pop();
-        TId tidNode3 = (TId)nodeArrayList1.get(0);
-        ASimpleListTerm plisttermNode1 = new ASimpleListTerm(null, tidNode3, null);
+        TId tIdNode3 = (TId)nodeArrayList1.get(0);
+        ASimpleListTerm pListTermNode1 = new ASimpleListTerm(null, tIdNode3, null);
 
-        checkResult(plisttermNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(plisttermNode1);
+        checkResult(pListTermNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pListTermNode1);
     }
 
     private List<?> new207() /* reduce AAsimplelistterm2ListTerm */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PSpecifier pspecifierNode2 = (PSpecifier)nodeArrayList1.get(0);
-        TId tidNode3 = (TId)nodeArrayList2.get(0);
-        ASimpleListTerm plisttermNode1 = new ASimpleListTerm(pspecifierNode2, tidNode3, null);
+        PSpecifier pSpecifierNode2 = (PSpecifier)nodeArrayList1.get(0);
+        TId tIdNode3 = (TId)nodeArrayList2.get(0);
+        ASimpleListTerm pListTermNode1 = new ASimpleListTerm(pSpecifierNode2, tIdNode3, null);
 
-        checkResult(plisttermNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(plisttermNode1);
+        checkResult(pListTermNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pListTermNode1);
     }
 
     private List<?> new208() /* reduce AAsimplelistterm3ListTerm */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode3 = (TId)nodeArrayList1.get(0);
-        TId tidNode4 = (TId)nodeArrayList2.get(0);
-        ASimpleListTerm plisttermNode1 = new ASimpleListTerm(null, tidNode3, tidNode4);
+        TId tIdNode3 = (TId)nodeArrayList1.get(0);
+        TId tIdNode4 = (TId)nodeArrayList2.get(0);
+        ASimpleListTerm pListTermNode1 = new ASimpleListTerm(null, tIdNode3, tIdNode4);
 
-        checkResult(plisttermNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(plisttermNode1);
+        checkResult(pListTermNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pListTermNode1);
     }
 
     private List<?> new209() /* reduce AAsimplelistterm4ListTerm */
@@ -4884,71 +4884,71 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PSpecifier pspecifierNode2 = (PSpecifier)nodeArrayList1.get(0);
-        TId tidNode3 = (TId)nodeArrayList2.get(0);
-        TId tidNode4 = (TId)nodeArrayList3.get(0);
-        ASimpleListTerm plisttermNode1 = new ASimpleListTerm(pspecifierNode2, tidNode3, tidNode4);
+        PSpecifier pSpecifierNode2 = (PSpecifier)nodeArrayList1.get(0);
+        TId tIdNode3 = (TId)nodeArrayList2.get(0);
+        TId tIdNode4 = (TId)nodeArrayList3.get(0);
+        ASimpleListTerm pListTermNode1 = new ASimpleListTerm(pSpecifierNode2, tIdNode3, tIdNode4);
 
-        checkResult(plisttermNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(plisttermNode1);
+        checkResult(pListTermNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pListTermNode1);
     }
 
     private List<?> new210() /* reduce AListTermTail */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PListTerm plisttermNode1 = (PListTerm)nodeArrayList2.get(0);
-        checkResult(plisttermNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(plisttermNode1);
+        PListTerm pListTermNode1 = (PListTerm)nodeArrayList2.get(0);
+        checkResult(pListTermNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pListTermNode1);
     }
 
     private List<?> new211() /* reduce ASimpleTermTail */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode1 = (TId)nodeArrayList2.get(0);
-        checkResult(tidNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(tidNode1);
+        TId tIdNode1 = (TId)nodeArrayList2.get(0);
+        checkResult(tIdNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(tIdNode1);
     }
 
     private List<?> new212() /* reduce AAprodname1ProdName */
     {
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList1.get(0);
-        AProdName pprodnameNode1 = new AProdName(tidNode2, null);
+        TId tIdNode2 = (TId)nodeArrayList1.get(0);
+        AProdName pProdNameNode1 = new AProdName(tIdNode2, null);
 
-        checkResult(pprodnameNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pprodnameNode1);
+        checkResult(pProdNameNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pProdNameNode1);
     }
 
     private List<?> new213() /* reduce AAprodname2ProdName */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList1.get(0);
-        TId tidNode3 = (TId)nodeArrayList2.get(0);
-        AProdName pprodnameNode1 = new AProdName(tidNode2, tidNode3);
+        TId tIdNode2 = (TId)nodeArrayList1.get(0);
+        TId tIdNode3 = (TId)nodeArrayList2.get(0);
+        AProdName pProdNameNode1 = new AProdName(tIdNode2, tIdNode3);
 
-        checkResult(pprodnameNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pprodnameNode1);
+        checkResult(pProdNameNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pProdNameNode1);
     }
 
     private List<?> new214() /* reduce AProdNameTail */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode1 = (TId)nodeArrayList2.get(0);
-        checkResult(tidNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(tidNode1);
+        TId tIdNode1 = (TId)nodeArrayList2.get(0);
+        checkResult(tIdNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(tIdNode1);
     }
 
     private List<?> new215() /* reduce AAparams1Params */
     {
         List<?> nodeArrayList1 = pop();
-        PTerm ptermNode1 = (PTerm)nodeArrayList1.get(0);
+        PTerm pTermNode1 = (PTerm)nodeArrayList1.get(0);
         List<PTerm> listNode2;
-        if(ptermNode1 != null) {
-            listNode2 = Collections.singletonList(ptermNode1);
+        if(pTermNode1 != null) {
+            listNode2 = Collections.singletonList(pTermNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -4960,12 +4960,12 @@ public class Parser implements IParser
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PTerm ptermNode1 = (PTerm)nodeArrayList1.get(0);
+        PTerm pTermNode1 = (PTerm)nodeArrayList1.get(0);
         List<PTerm> listNode2 = (List<PTerm>)nodeArrayList2.get(0);
         List<PTerm> listNode3 = new LinkedList<>();
-        if(ptermNode1 != null)
+        if(pTermNode1 != null)
         {
-            listNode3.add(ptermNode1);
+            listNode3.add(pTermNode1);
         }
         if (listNode3.isEmpty() && listNode2 instanceof LinkedList<?>) {
             listNode3 = listNode2;
@@ -4980,9 +4980,9 @@ public class Parser implements IParser
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PTerm ptermNode1 = (PTerm)nodeArrayList2.get(0);
-        checkResult(ptermNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(ptermNode1);
+        PTerm pTermNode1 = (PTerm)nodeArrayList2.get(0);
+        checkResult(pTermNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pTermNode1);
     }
 
     private List<?> new218() /* reduce AAltName */
@@ -4990,43 +4990,43 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode1 = (TId)nodeArrayList2.get(0);
-        checkResult(tidNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(tidNode1);
+        TId tIdNode1 = (TId)nodeArrayList2.get(0);
+        checkResult(tIdNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(tIdNode1);
     }
 
     private List<?> new219() /* reduce AAelem1Elem */
     {
         List<?> nodeArrayList1 = pop();
-        TId tidNode4 = (TId)nodeArrayList1.get(0);
-        AElem pelemNode1 = new AElem(null, null, tidNode4, null);
+        TId tIdNode4 = (TId)nodeArrayList1.get(0);
+        AElem pElemNode1 = new AElem(null, null, tIdNode4, null);
 
-        checkResult(pelemNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pelemNode1);
+        checkResult(pElemNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pElemNode1);
     }
 
     private List<?> new220() /* reduce AAelem2Elem */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList1.get(0);
-        TId tidNode4 = (TId)nodeArrayList2.get(0);
-        AElem pelemNode1 = new AElem(tidNode2, null, tidNode4, null);
+        TId tIdNode2 = (TId)nodeArrayList1.get(0);
+        TId tIdNode4 = (TId)nodeArrayList2.get(0);
+        AElem pElemNode1 = new AElem(tIdNode2, null, tIdNode4, null);
 
-        checkResult(pelemNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pelemNode1);
+        checkResult(pElemNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pElemNode1);
     }
 
     private List<?> new221() /* reduce AAelem3Elem */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PSpecifier pspecifierNode3 = (PSpecifier)nodeArrayList1.get(0);
-        TId tidNode4 = (TId)nodeArrayList2.get(0);
-        AElem pelemNode1 = new AElem(null, pspecifierNode3, tidNode4, null);
+        PSpecifier pSpecifierNode3 = (PSpecifier)nodeArrayList1.get(0);
+        TId tIdNode4 = (TId)nodeArrayList2.get(0);
+        AElem pElemNode1 = new AElem(null, pSpecifierNode3, tIdNode4, null);
 
-        checkResult(pelemNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pelemNode1);
+        checkResult(pElemNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pElemNode1);
     }
 
     private List<?> new222() /* reduce AAelem4Elem */
@@ -5034,25 +5034,25 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList1.get(0);
-        PSpecifier pspecifierNode3 = (PSpecifier)nodeArrayList2.get(0);
-        TId tidNode4 = (TId)nodeArrayList3.get(0);
-        AElem pelemNode1 = new AElem(tidNode2, pspecifierNode3, tidNode4, null);
+        TId tIdNode2 = (TId)nodeArrayList1.get(0);
+        PSpecifier pSpecifierNode3 = (PSpecifier)nodeArrayList2.get(0);
+        TId tIdNode4 = (TId)nodeArrayList3.get(0);
+        AElem pElemNode1 = new AElem(tIdNode2, pSpecifierNode3, tIdNode4, null);
 
-        checkResult(pelemNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pelemNode1);
+        checkResult(pElemNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pElemNode1);
     }
 
     private List<?> new223() /* reduce AAelem5Elem */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode4 = (TId)nodeArrayList1.get(0);
-        PUnOp punopNode5 = (PUnOp)nodeArrayList2.get(0);
-        AElem pelemNode1 = new AElem(null, null, tidNode4, punopNode5);
+        TId tIdNode4 = (TId)nodeArrayList1.get(0);
+        PUnOp pUnOpNode5 = (PUnOp)nodeArrayList2.get(0);
+        AElem pElemNode1 = new AElem(null, null, tIdNode4, pUnOpNode5);
 
-        checkResult(pelemNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pelemNode1);
+        checkResult(pElemNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pElemNode1);
     }
 
     private List<?> new224() /* reduce AAelem6Elem */
@@ -5060,13 +5060,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList1.get(0);
-        TId tidNode4 = (TId)nodeArrayList2.get(0);
-        PUnOp punopNode5 = (PUnOp)nodeArrayList3.get(0);
-        AElem pelemNode1 = new AElem(tidNode2, null, tidNode4, punopNode5);
+        TId tIdNode2 = (TId)nodeArrayList1.get(0);
+        TId tIdNode4 = (TId)nodeArrayList2.get(0);
+        PUnOp pUnOpNode5 = (PUnOp)nodeArrayList3.get(0);
+        AElem pElemNode1 = new AElem(tIdNode2, null, tIdNode4, pUnOpNode5);
 
-        checkResult(pelemNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pelemNode1);
+        checkResult(pElemNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pElemNode1);
     }
 
     private List<?> new225() /* reduce AAelem7Elem */
@@ -5074,13 +5074,13 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PSpecifier pspecifierNode3 = (PSpecifier)nodeArrayList1.get(0);
-        TId tidNode4 = (TId)nodeArrayList2.get(0);
-        PUnOp punopNode5 = (PUnOp)nodeArrayList3.get(0);
-        AElem pelemNode1 = new AElem(null, pspecifierNode3, tidNode4, punopNode5);
+        PSpecifier pSpecifierNode3 = (PSpecifier)nodeArrayList1.get(0);
+        TId tIdNode4 = (TId)nodeArrayList2.get(0);
+        PUnOp pUnOpNode5 = (PUnOp)nodeArrayList3.get(0);
+        AElem pElemNode1 = new AElem(null, pSpecifierNode3, tIdNode4, pUnOpNode5);
 
-        checkResult(pelemNode1, nodeArrayList1, nodeArrayList3);
-        return Collections.singletonList(pelemNode1);
+        checkResult(pElemNode1, nodeArrayList1, nodeArrayList3);
+        return Collections.singletonList(pElemNode1);
     }
 
     private List<?> new226() /* reduce AAelem8Elem */
@@ -5089,14 +5089,14 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList1.get(0);
-        PSpecifier pspecifierNode3 = (PSpecifier)nodeArrayList2.get(0);
-        TId tidNode4 = (TId)nodeArrayList3.get(0);
-        PUnOp punopNode5 = (PUnOp)nodeArrayList4.get(0);
-        AElem pelemNode1 = new AElem(tidNode2, pspecifierNode3, tidNode4, punopNode5);
+        TId tIdNode2 = (TId)nodeArrayList1.get(0);
+        PSpecifier pSpecifierNode3 = (PSpecifier)nodeArrayList2.get(0);
+        TId tIdNode4 = (TId)nodeArrayList3.get(0);
+        PUnOp pUnOpNode5 = (PUnOp)nodeArrayList4.get(0);
+        AElem pElemNode1 = new AElem(tIdNode2, pSpecifierNode3, tIdNode4, pUnOpNode5);
 
-        checkResult(pelemNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pelemNode1);
+        checkResult(pElemNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pElemNode1);
     }
 
     private List<?> new227() /* reduce AElemName */
@@ -5105,29 +5105,29 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode1 = (TId)nodeArrayList2.get(0);
-        checkResult(tidNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(tidNode1);
+        TId tIdNode1 = (TId)nodeArrayList2.get(0);
+        checkResult(tIdNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(tIdNode1);
     }
 
     private List<?> new228() /* reduce ATokenSpecifier */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        ATokenSpecifier pspecifierNode1 = new ATokenSpecifier();
+        ATokenSpecifier pSpecifierNode1 = new ATokenSpecifier();
 
-        checkResult(pspecifierNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pspecifierNode1);
+        checkResult(pSpecifierNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pSpecifierNode1);
     }
 
     private List<?> new229() /* reduce AProductionSpecifier */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        AProductionSpecifier pspecifierNode1 = new AProductionSpecifier();
+        AProductionSpecifier pSpecifierNode1 = new AProductionSpecifier();
 
-        checkResult(pspecifierNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pspecifierNode1);
+        checkResult(pSpecifierNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pSpecifierNode1);
     }
 
     private List<?> new230() /* reduce AAst */
@@ -5138,10 +5138,10 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<PAstProd> listNode2 = (List<PAstProd>)nodeArrayList4.get(0);
         List<PAstProd> listNode3 = listNode2;
-        AAst pastNode1 = new AAst(listNode3);
+        AAst pAstNode1 = new AAst(listNode3);
 
-        checkResult(pastNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pastNode1);
+        checkResult(pAstNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pAstNode1);
     }
 
     private List<?> new231() /* reduce AAstProd */
@@ -5150,22 +5150,22 @@ public class Parser implements IParser
         List<?> nodeArrayList3 = pop();
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList1.get(0);
+        TId tIdNode2 = (TId)nodeArrayList1.get(0);
         List<PAstAlt> listNode3 = (List<PAstAlt>)nodeArrayList3.get(0);
         List<PAstAlt> listNode4 = listNode3;
-        AAstProd pastprodNode1 = new AAstProd(tidNode2, listNode4);
+        AAstProd pAstProdNode1 = new AAstProd(tIdNode2, listNode4);
 
-        checkResult(pastprodNode1, nodeArrayList1, nodeArrayList4);
-        return Collections.singletonList(pastprodNode1);
+        checkResult(pAstProdNode1, nodeArrayList1, nodeArrayList4);
+        return Collections.singletonList(pAstProdNode1);
     }
 
     private List<?> new232() /* reduce AAastalts1AstAlts */
     {
         List<?> nodeArrayList1 = pop();
-        PAstAlt pastaltNode1 = (PAstAlt)nodeArrayList1.get(0);
+        PAstAlt pAstAltNode1 = (PAstAlt)nodeArrayList1.get(0);
         List<PAstAlt> listNode2;
-        if(pastaltNode1 != null) {
-            listNode2 = Collections.singletonList(pastaltNode1);
+        if(pAstAltNode1 != null) {
+            listNode2 = Collections.singletonList(pAstAltNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -5177,12 +5177,12 @@ public class Parser implements IParser
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PAstAlt pastaltNode1 = (PAstAlt)nodeArrayList1.get(0);
+        PAstAlt pAstAltNode1 = (PAstAlt)nodeArrayList1.get(0);
         List<PAstAlt> listNode2 = (List<PAstAlt>)nodeArrayList2.get(0);
         List<PAstAlt> listNode3 = new LinkedList<>();
-        if(pastaltNode1 != null)
+        if(pAstAltNode1 != null)
         {
-            listNode3.add(pastaltNode1);
+            listNode3.add(pAstAltNode1);
         }
         if (listNode3.isEmpty() && listNode2 instanceof LinkedList<?>) {
             listNode3 = listNode2;
@@ -5197,26 +5197,26 @@ public class Parser implements IParser
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        PAstAlt pastaltNode1 = (PAstAlt)nodeArrayList2.get(0);
-        checkResult(pastaltNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pastaltNode1);
+        PAstAlt pAstAltNode1 = (PAstAlt)nodeArrayList2.get(0);
+        checkResult(pAstAltNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pAstAltNode1);
     }
 
     private List<?> new235() /* reduce AAastalt1AstAlt */
     {
-        AAstAlt pastaltNode1 = new AAstAlt(null, Collections.emptyList());
+        AAstAlt pAstAltNode1 = new AAstAlt(null, Collections.emptyList());
 
-        return Collections.singletonList(pastaltNode1);
+        return Collections.singletonList(pAstAltNode1);
     }
 
     private List<?> new236() /* reduce AAastalt2AstAlt */
     {
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList1.get(0);
-        AAstAlt pastaltNode1 = new AAstAlt(tidNode2, Collections.emptyList());
+        TId tIdNode2 = (TId)nodeArrayList1.get(0);
+        AAstAlt pAstAltNode1 = new AAstAlt(tIdNode2, Collections.emptyList());
 
-        checkResult(pastaltNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pastaltNode1);
+        checkResult(pAstAltNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pAstAltNode1);
     }
 
     private List<?> new237() /* reduce AAastalt3AstAlt */
@@ -5224,32 +5224,32 @@ public class Parser implements IParser
         List<?> nodeArrayList1 = pop();
         List<PElem> listNode3 = (List<PElem>)nodeArrayList1.get(0);
         List<PElem> listNode4 = listNode3;
-        AAstAlt pastaltNode1 = new AAstAlt(null, listNode4);
+        AAstAlt pAstAltNode1 = new AAstAlt(null, listNode4);
 
-        checkResult(pastaltNode1, nodeArrayList1, nodeArrayList1);
-        return Collections.singletonList(pastaltNode1);
+        checkResult(pAstAltNode1, nodeArrayList1, nodeArrayList1);
+        return Collections.singletonList(pAstAltNode1);
     }
 
     private List<?> new238() /* reduce AAastalt4AstAlt */
     {
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
-        TId tidNode2 = (TId)nodeArrayList1.get(0);
+        TId tIdNode2 = (TId)nodeArrayList1.get(0);
         List<PElem> listNode3 = (List<PElem>)nodeArrayList2.get(0);
         List<PElem> listNode4 = listNode3;
-        AAstAlt pastaltNode1 = new AAstAlt(tidNode2, listNode4);
+        AAstAlt pAstAltNode1 = new AAstAlt(tIdNode2, listNode4);
 
-        checkResult(pastaltNode1, nodeArrayList1, nodeArrayList2);
-        return Collections.singletonList(pastaltNode1);
+        checkResult(pAstAltNode1, nodeArrayList1, nodeArrayList2);
+        return Collections.singletonList(pAstAltNode1);
     }
 
     private List<?> new239() /* reduce ATerminal$PkgNameTail */
     {
         List<?> nodeArrayList1 = pop();
-        TPkgId tpkgidNode1 = (TPkgId)nodeArrayList1.get(0);
+        TPkgId tPkgIdNode1 = (TPkgId)nodeArrayList1.get(0);
         List<TPkgId> listNode2;
-        if(tpkgidNode1 != null) {
-            listNode2 = Collections.singletonList(tpkgidNode1);
+        if(tPkgIdNode1 != null) {
+            listNode2 = Collections.singletonList(tPkgIdNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -5262,16 +5262,16 @@ public class Parser implements IParser
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
         List<TPkgId> listNode1 = (List<TPkgId>)nodeArrayList1.get(0);
-        TPkgId tpkgidNode2 = (TPkgId)nodeArrayList2.get(0);
+        TPkgId tPkgIdNode2 = (TPkgId)nodeArrayList2.get(0);
         List<TPkgId> listNode3;
         if (listNode1 instanceof LinkedList<?>) {
             listNode3 = listNode1;
         } else {
             listNode3 = new LinkedList<>(listNode1);
         }
-        if(tpkgidNode2 != null)
+        if(tPkgIdNode2 != null)
         {
-            listNode3.add(tpkgidNode2);
+            listNode3.add(tPkgIdNode2);
         }
         checkResult(listNode3, nodeArrayList1, nodeArrayList2);
         return Collections.singletonList(listNode3);
@@ -5280,10 +5280,10 @@ public class Parser implements IParser
     private List<?> new241() /* reduce ATerminal$HelperDef */
     {
         List<?> nodeArrayList1 = pop();
-        PHelperDef phelperdefNode1 = (PHelperDef)nodeArrayList1.get(0);
+        PHelperDef pHelperDefNode1 = (PHelperDef)nodeArrayList1.get(0);
         List<PHelperDef> listNode2;
-        if(phelperdefNode1 != null) {
-            listNode2 = Collections.singletonList(phelperdefNode1);
+        if(pHelperDefNode1 != null) {
+            listNode2 = Collections.singletonList(pHelperDefNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -5296,16 +5296,16 @@ public class Parser implements IParser
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
         List<PHelperDef> listNode1 = (List<PHelperDef>)nodeArrayList1.get(0);
-        PHelperDef phelperdefNode2 = (PHelperDef)nodeArrayList2.get(0);
+        PHelperDef pHelperDefNode2 = (PHelperDef)nodeArrayList2.get(0);
         List<PHelperDef> listNode3;
         if (listNode1 instanceof LinkedList<?>) {
             listNode3 = listNode1;
         } else {
             listNode3 = new LinkedList<>(listNode1);
         }
-        if(phelperdefNode2 != null)
+        if(pHelperDefNode2 != null)
         {
-            listNode3.add(phelperdefNode2);
+            listNode3.add(pHelperDefNode2);
         }
         checkResult(listNode3, nodeArrayList1, nodeArrayList2);
         return Collections.singletonList(listNode3);
@@ -5314,10 +5314,10 @@ public class Parser implements IParser
     private List<?> new243() /* reduce ATerminal$IdListTail */
     {
         List<?> nodeArrayList1 = pop();
-        TId tidNode1 = (TId)nodeArrayList1.get(0);
+        TId tIdNode1 = (TId)nodeArrayList1.get(0);
         List<TId> listNode2;
-        if(tidNode1 != null) {
-            listNode2 = Collections.singletonList(tidNode1);
+        if(tIdNode1 != null) {
+            listNode2 = Collections.singletonList(tIdNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -5330,16 +5330,16 @@ public class Parser implements IParser
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
         List<TId> listNode1 = (List<TId>)nodeArrayList1.get(0);
-        TId tidNode2 = (TId)nodeArrayList2.get(0);
+        TId tIdNode2 = (TId)nodeArrayList2.get(0);
         List<TId> listNode3;
         if (listNode1 instanceof LinkedList<?>) {
             listNode3 = listNode1;
         } else {
             listNode3 = new LinkedList<>(listNode1);
         }
-        if(tidNode2 != null)
+        if(tIdNode2 != null)
         {
-            listNode3.add(tidNode2);
+            listNode3.add(tIdNode2);
         }
         checkResult(listNode3, nodeArrayList1, nodeArrayList2);
         return Collections.singletonList(listNode3);
@@ -5348,10 +5348,10 @@ public class Parser implements IParser
     private List<?> new245() /* reduce ATerminal$TokenDef */
     {
         List<?> nodeArrayList1 = pop();
-        PTokenDef ptokendefNode1 = (PTokenDef)nodeArrayList1.get(0);
+        PTokenDef pTokenDefNode1 = (PTokenDef)nodeArrayList1.get(0);
         List<PTokenDef> listNode2;
-        if(ptokendefNode1 != null) {
-            listNode2 = Collections.singletonList(ptokendefNode1);
+        if(pTokenDefNode1 != null) {
+            listNode2 = Collections.singletonList(pTokenDefNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -5364,16 +5364,16 @@ public class Parser implements IParser
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
         List<PTokenDef> listNode1 = (List<PTokenDef>)nodeArrayList1.get(0);
-        PTokenDef ptokendefNode2 = (PTokenDef)nodeArrayList2.get(0);
+        PTokenDef pTokenDefNode2 = (PTokenDef)nodeArrayList2.get(0);
         List<PTokenDef> listNode3;
         if (listNode1 instanceof LinkedList<?>) {
             listNode3 = listNode1;
         } else {
             listNode3 = new LinkedList<>(listNode1);
         }
-        if(ptokendefNode2 != null)
+        if(pTokenDefNode2 != null)
         {
-            listNode3.add(ptokendefNode2);
+            listNode3.add(pTokenDefNode2);
         }
         checkResult(listNode3, nodeArrayList1, nodeArrayList2);
         return Collections.singletonList(listNode3);
@@ -5382,10 +5382,10 @@ public class Parser implements IParser
     private List<?> new247() /* reduce ATerminal$StateListTail */
     {
         List<?> nodeArrayList1 = pop();
-        PStateListTail pstatelisttailNode1 = (PStateListTail)nodeArrayList1.get(0);
+        PStateListTail pStateListTailNode1 = (PStateListTail)nodeArrayList1.get(0);
         List<PStateListTail> listNode2;
-        if(pstatelisttailNode1 != null) {
-            listNode2 = Collections.singletonList(pstatelisttailNode1);
+        if(pStateListTailNode1 != null) {
+            listNode2 = Collections.singletonList(pStateListTailNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -5398,16 +5398,16 @@ public class Parser implements IParser
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
         List<PStateListTail> listNode1 = (List<PStateListTail>)nodeArrayList1.get(0);
-        PStateListTail pstatelisttailNode2 = (PStateListTail)nodeArrayList2.get(0);
+        PStateListTail pStateListTailNode2 = (PStateListTail)nodeArrayList2.get(0);
         List<PStateListTail> listNode3;
         if (listNode1 instanceof LinkedList<?>) {
             listNode3 = listNode1;
         } else {
             listNode3 = new LinkedList<>(listNode1);
         }
-        if(pstatelisttailNode2 != null)
+        if(pStateListTailNode2 != null)
         {
-            listNode3.add(pstatelisttailNode2);
+            listNode3.add(pStateListTailNode2);
         }
         checkResult(listNode3, nodeArrayList1, nodeArrayList2);
         return Collections.singletonList(listNode3);
@@ -5416,10 +5416,10 @@ public class Parser implements IParser
     private List<?> new249() /* reduce ATerminal$RegExpTail */
     {
         List<?> nodeArrayList1 = pop();
-        PConcat pconcatNode1 = (PConcat)nodeArrayList1.get(0);
+        PConcat pConcatNode1 = (PConcat)nodeArrayList1.get(0);
         List<PConcat> listNode2;
-        if(pconcatNode1 != null) {
-            listNode2 = Collections.singletonList(pconcatNode1);
+        if(pConcatNode1 != null) {
+            listNode2 = Collections.singletonList(pConcatNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -5432,16 +5432,16 @@ public class Parser implements IParser
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
         List<PConcat> listNode1 = (List<PConcat>)nodeArrayList1.get(0);
-        PConcat pconcatNode2 = (PConcat)nodeArrayList2.get(0);
+        PConcat pConcatNode2 = (PConcat)nodeArrayList2.get(0);
         List<PConcat> listNode3;
         if (listNode1 instanceof LinkedList<?>) {
             listNode3 = listNode1;
         } else {
             listNode3 = new LinkedList<>(listNode1);
         }
-        if(pconcatNode2 != null)
+        if(pConcatNode2 != null)
         {
-            listNode3.add(pconcatNode2);
+            listNode3.add(pConcatNode2);
         }
         checkResult(listNode3, nodeArrayList1, nodeArrayList2);
         return Collections.singletonList(listNode3);
@@ -5450,10 +5450,10 @@ public class Parser implements IParser
     private List<?> new251() /* reduce ATerminal$UnExp */
     {
         List<?> nodeArrayList1 = pop();
-        PUnExp punexpNode1 = (PUnExp)nodeArrayList1.get(0);
+        PUnExp pUnExpNode1 = (PUnExp)nodeArrayList1.get(0);
         List<PUnExp> listNode2;
-        if(punexpNode1 != null) {
-            listNode2 = Collections.singletonList(punexpNode1);
+        if(pUnExpNode1 != null) {
+            listNode2 = Collections.singletonList(pUnExpNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -5466,16 +5466,16 @@ public class Parser implements IParser
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
         List<PUnExp> listNode1 = (List<PUnExp>)nodeArrayList1.get(0);
-        PUnExp punexpNode2 = (PUnExp)nodeArrayList2.get(0);
+        PUnExp pUnExpNode2 = (PUnExp)nodeArrayList2.get(0);
         List<PUnExp> listNode3;
         if (listNode1 instanceof LinkedList<?>) {
             listNode3 = listNode1;
         } else {
             listNode3 = new LinkedList<>(listNode1);
         }
-        if(punexpNode2 != null)
+        if(pUnExpNode2 != null)
         {
-            listNode3.add(punexpNode2);
+            listNode3.add(pUnExpNode2);
         }
         checkResult(listNode3, nodeArrayList1, nodeArrayList2);
         return Collections.singletonList(listNode3);
@@ -5484,10 +5484,10 @@ public class Parser implements IParser
     private List<?> new253() /* reduce ATerminal$Prod */
     {
         List<?> nodeArrayList1 = pop();
-        PProd pprodNode1 = (PProd)nodeArrayList1.get(0);
+        PProd pProdNode1 = (PProd)nodeArrayList1.get(0);
         List<PProd> listNode2;
-        if(pprodNode1 != null) {
-            listNode2 = Collections.singletonList(pprodNode1);
+        if(pProdNode1 != null) {
+            listNode2 = Collections.singletonList(pProdNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -5500,16 +5500,16 @@ public class Parser implements IParser
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
         List<PProd> listNode1 = (List<PProd>)nodeArrayList1.get(0);
-        PProd pprodNode2 = (PProd)nodeArrayList2.get(0);
+        PProd pProdNode2 = (PProd)nodeArrayList2.get(0);
         List<PProd> listNode3;
         if (listNode1 instanceof LinkedList<?>) {
             listNode3 = listNode1;
         } else {
             listNode3 = new LinkedList<>(listNode1);
         }
-        if(pprodNode2 != null)
+        if(pProdNode2 != null)
         {
-            listNode3.add(pprodNode2);
+            listNode3.add(pProdNode2);
         }
         checkResult(listNode3, nodeArrayList1, nodeArrayList2);
         return Collections.singletonList(listNode3);
@@ -5518,10 +5518,10 @@ public class Parser implements IParser
     private List<?> new255() /* reduce ATerminal$Elem */
     {
         List<?> nodeArrayList1 = pop();
-        PElem pelemNode1 = (PElem)nodeArrayList1.get(0);
+        PElem pElemNode1 = (PElem)nodeArrayList1.get(0);
         List<PElem> listNode2;
-        if(pelemNode1 != null) {
-            listNode2 = Collections.singletonList(pelemNode1);
+        if(pElemNode1 != null) {
+            listNode2 = Collections.singletonList(pElemNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -5534,16 +5534,16 @@ public class Parser implements IParser
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
         List<PElem> listNode1 = (List<PElem>)nodeArrayList1.get(0);
-        PElem pelemNode2 = (PElem)nodeArrayList2.get(0);
+        PElem pElemNode2 = (PElem)nodeArrayList2.get(0);
         List<PElem> listNode3;
         if (listNode1 instanceof LinkedList<?>) {
             listNode3 = listNode1;
         } else {
             listNode3 = new LinkedList<>(listNode1);
         }
-        if(pelemNode2 != null)
+        if(pElemNode2 != null)
         {
-            listNode3.add(pelemNode2);
+            listNode3.add(pElemNode2);
         }
         checkResult(listNode3, nodeArrayList1, nodeArrayList2);
         return Collections.singletonList(listNode3);
@@ -5552,10 +5552,10 @@ public class Parser implements IParser
     private List<?> new257() /* reduce ATerminal$AltsTail */
     {
         List<?> nodeArrayList1 = pop();
-        PAlt paltNode1 = (PAlt)nodeArrayList1.get(0);
+        PAlt pAltNode1 = (PAlt)nodeArrayList1.get(0);
         List<PAlt> listNode2;
-        if(paltNode1 != null) {
-            listNode2 = Collections.singletonList(paltNode1);
+        if(pAltNode1 != null) {
+            listNode2 = Collections.singletonList(pAltNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -5568,16 +5568,16 @@ public class Parser implements IParser
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
         List<PAlt> listNode1 = (List<PAlt>)nodeArrayList1.get(0);
-        PAlt paltNode2 = (PAlt)nodeArrayList2.get(0);
+        PAlt pAltNode2 = (PAlt)nodeArrayList2.get(0);
         List<PAlt> listNode3;
         if (listNode1 instanceof LinkedList<?>) {
             listNode3 = listNode1;
         } else {
             listNode3 = new LinkedList<>(listNode1);
         }
-        if(paltNode2 != null)
+        if(pAltNode2 != null)
         {
-            listNode3.add(paltNode2);
+            listNode3.add(pAltNode2);
         }
         checkResult(listNode3, nodeArrayList1, nodeArrayList2);
         return Collections.singletonList(listNode3);
@@ -5586,10 +5586,10 @@ public class Parser implements IParser
     private List<?> new259() /* reduce ATerminal$Term */
     {
         List<?> nodeArrayList1 = pop();
-        PTerm ptermNode1 = (PTerm)nodeArrayList1.get(0);
+        PTerm pTermNode1 = (PTerm)nodeArrayList1.get(0);
         List<PTerm> listNode2;
-        if(ptermNode1 != null) {
-            listNode2 = Collections.singletonList(ptermNode1);
+        if(pTermNode1 != null) {
+            listNode2 = Collections.singletonList(pTermNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -5602,16 +5602,16 @@ public class Parser implements IParser
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
         List<PTerm> listNode1 = (List<PTerm>)nodeArrayList1.get(0);
-        PTerm ptermNode2 = (PTerm)nodeArrayList2.get(0);
+        PTerm pTermNode2 = (PTerm)nodeArrayList2.get(0);
         List<PTerm> listNode3;
         if (listNode1 instanceof LinkedList<?>) {
             listNode3 = listNode1;
         } else {
             listNode3 = new LinkedList<>(listNode1);
         }
-        if(ptermNode2 != null)
+        if(pTermNode2 != null)
         {
-            listNode3.add(ptermNode2);
+            listNode3.add(pTermNode2);
         }
         checkResult(listNode3, nodeArrayList1, nodeArrayList2);
         return Collections.singletonList(listNode3);
@@ -5620,10 +5620,10 @@ public class Parser implements IParser
     private List<?> new261() /* reduce ATerminal$ListTermTail */
     {
         List<?> nodeArrayList1 = pop();
-        PListTerm plisttermNode1 = (PListTerm)nodeArrayList1.get(0);
+        PListTerm pListTermNode1 = (PListTerm)nodeArrayList1.get(0);
         List<PListTerm> listNode2;
-        if(plisttermNode1 != null) {
-            listNode2 = Collections.singletonList(plisttermNode1);
+        if(pListTermNode1 != null) {
+            listNode2 = Collections.singletonList(pListTermNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -5636,16 +5636,16 @@ public class Parser implements IParser
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
         List<PListTerm> listNode1 = (List<PListTerm>)nodeArrayList1.get(0);
-        PListTerm plisttermNode2 = (PListTerm)nodeArrayList2.get(0);
+        PListTerm pListTermNode2 = (PListTerm)nodeArrayList2.get(0);
         List<PListTerm> listNode3;
         if (listNode1 instanceof LinkedList<?>) {
             listNode3 = listNode1;
         } else {
             listNode3 = new LinkedList<>(listNode1);
         }
-        if(plisttermNode2 != null)
+        if(pListTermNode2 != null)
         {
-            listNode3.add(plisttermNode2);
+            listNode3.add(pListTermNode2);
         }
         checkResult(listNode3, nodeArrayList1, nodeArrayList2);
         return Collections.singletonList(listNode3);
@@ -5654,10 +5654,10 @@ public class Parser implements IParser
     private List<?> new263() /* reduce ATerminal$ParamsTail */
     {
         List<?> nodeArrayList1 = pop();
-        PTerm ptermNode1 = (PTerm)nodeArrayList1.get(0);
+        PTerm pTermNode1 = (PTerm)nodeArrayList1.get(0);
         List<PTerm> listNode2;
-        if(ptermNode1 != null) {
-            listNode2 = Collections.singletonList(ptermNode1);
+        if(pTermNode1 != null) {
+            listNode2 = Collections.singletonList(pTermNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -5670,16 +5670,16 @@ public class Parser implements IParser
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
         List<PTerm> listNode1 = (List<PTerm>)nodeArrayList1.get(0);
-        PTerm ptermNode2 = (PTerm)nodeArrayList2.get(0);
+        PTerm pTermNode2 = (PTerm)nodeArrayList2.get(0);
         List<PTerm> listNode3;
         if (listNode1 instanceof LinkedList<?>) {
             listNode3 = listNode1;
         } else {
             listNode3 = new LinkedList<>(listNode1);
         }
-        if(ptermNode2 != null)
+        if(pTermNode2 != null)
         {
-            listNode3.add(ptermNode2);
+            listNode3.add(pTermNode2);
         }
         checkResult(listNode3, nodeArrayList1, nodeArrayList2);
         return Collections.singletonList(listNode3);
@@ -5688,10 +5688,10 @@ public class Parser implements IParser
     private List<?> new265() /* reduce ATerminal$AstProd */
     {
         List<?> nodeArrayList1 = pop();
-        PAstProd pastprodNode1 = (PAstProd)nodeArrayList1.get(0);
+        PAstProd pAstProdNode1 = (PAstProd)nodeArrayList1.get(0);
         List<PAstProd> listNode2;
-        if(pastprodNode1 != null) {
-            listNode2 = Collections.singletonList(pastprodNode1);
+        if(pAstProdNode1 != null) {
+            listNode2 = Collections.singletonList(pAstProdNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -5704,16 +5704,16 @@ public class Parser implements IParser
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
         List<PAstProd> listNode1 = (List<PAstProd>)nodeArrayList1.get(0);
-        PAstProd pastprodNode2 = (PAstProd)nodeArrayList2.get(0);
+        PAstProd pAstProdNode2 = (PAstProd)nodeArrayList2.get(0);
         List<PAstProd> listNode3;
         if (listNode1 instanceof LinkedList<?>) {
             listNode3 = listNode1;
         } else {
             listNode3 = new LinkedList<>(listNode1);
         }
-        if(pastprodNode2 != null)
+        if(pAstProdNode2 != null)
         {
-            listNode3.add(pastprodNode2);
+            listNode3.add(pAstProdNode2);
         }
         checkResult(listNode3, nodeArrayList1, nodeArrayList2);
         return Collections.singletonList(listNode3);
@@ -5722,10 +5722,10 @@ public class Parser implements IParser
     private List<?> new267() /* reduce ATerminal$AstAltsTail */
     {
         List<?> nodeArrayList1 = pop();
-        PAstAlt pastaltNode1 = (PAstAlt)nodeArrayList1.get(0);
+        PAstAlt pAstAltNode1 = (PAstAlt)nodeArrayList1.get(0);
         List<PAstAlt> listNode2;
-        if(pastaltNode1 != null) {
-            listNode2 = Collections.singletonList(pastaltNode1);
+        if(pAstAltNode1 != null) {
+            listNode2 = Collections.singletonList(pAstAltNode1);
         } else {
             listNode2 = Collections.emptyList();
         }
@@ -5738,16 +5738,16 @@ public class Parser implements IParser
         List<?> nodeArrayList2 = pop();
         List<?> nodeArrayList1 = pop();
         List<PAstAlt> listNode1 = (List<PAstAlt>)nodeArrayList1.get(0);
-        PAstAlt pastaltNode2 = (PAstAlt)nodeArrayList2.get(0);
+        PAstAlt pAstAltNode2 = (PAstAlt)nodeArrayList2.get(0);
         List<PAstAlt> listNode3;
         if (listNode1 instanceof LinkedList<?>) {
             listNode3 = listNode1;
         } else {
             listNode3 = new LinkedList<>(listNode1);
         }
-        if(pastaltNode2 != null)
+        if(pAstAltNode2 != null)
         {
-            listNode3.add(pastaltNode2);
+            listNode3.add(pAstAltNode2);
         }
         checkResult(listNode3, nodeArrayList1, nodeArrayList2);
         return Collections.singletonList(listNode3);