Source Code Cross Referenced for Parser.java in  » Parser » sablecc » org » sablecc » sablecc » parser » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » Parser » sablecc » org.sablecc.sablecc.parser 
Source Cross Referenced  Class Diagram Java Document (Java Doc) 


0001:        /* This file was generated by SableCC (http://www.sablecc.org/). */
0002:
0003:        package org.sablecc.sablecc.parser;
0004:
0005:        import org.sablecc.sablecc.lexer.*;
0006:        import org.sablecc.sablecc.node.*;
0007:        import org.sablecc.sablecc.analysis.*;
0008:        import java.util.*;
0009:
0010:        import java.io.DataInputStream;
0011:        import java.io.BufferedInputStream;
0012:        import java.io.IOException;
0013:
0014:        public class Parser {
0015:            public final Analysis ignoredTokens = new AnalysisAdapter();
0016:
0017:            protected ArrayList nodeList;
0018:
0019:            private final Lexer lexer;
0020:            private final ListIterator stack = new LinkedList().listIterator();
0021:            private int last_shift;
0022:            private int last_pos;
0023:            private int last_line;
0024:            private Token last_token;
0025:            private final TokenIndex converter = new TokenIndex();
0026:            private final int[] action = new int[2];
0027:
0028:            private final static int SHIFT = 0;
0029:            private final static int REDUCE = 1;
0030:            private final static int ACCEPT = 2;
0031:            private final static int ERROR = 3;
0032:
0033:            public Parser(Lexer lexer) {
0034:                this .lexer = lexer;
0035:            }
0036:
0037:            private void push(int numstate, ArrayList listNode)
0038:                    throws ParserException, LexerException, IOException {
0039:                this .nodeList = listNode;
0040:
0041:                if (!stack.hasNext()) {
0042:                    stack.add(new State(numstate, this .nodeList));
0043:                    return;
0044:                }
0045:
0046:                State s = (State) stack.next();
0047:                s.state = numstate;
0048:                s.nodes = this .nodeList;
0049:            }
0050:
0051:            private int goTo(int index) {
0052:                int state = state();
0053:                int low = 1;
0054:                int high = gotoTable[index].length - 1;
0055:                int value = gotoTable[index][0][1];
0056:
0057:                while (low <= high) {
0058:                    int middle = (low + high) / 2;
0059:
0060:                    if (state < gotoTable[index][middle][0]) {
0061:                        high = middle - 1;
0062:                    } else if (state > gotoTable[index][middle][0]) {
0063:                        low = middle + 1;
0064:                    } else {
0065:                        value = gotoTable[index][middle][1];
0066:                        break;
0067:                    }
0068:                }
0069:
0070:                return value;
0071:            }
0072:
0073:            private int state() {
0074:                State s = (State) stack.previous();
0075:                stack.next();
0076:                return s.state;
0077:            }
0078:
0079:            private ArrayList pop() {
0080:                return (ArrayList) ((State) stack.previous()).nodes;
0081:            }
0082:
0083:            private int index(Switchable token) {
0084:                converter.index = -1;
0085:                token.apply(converter);
0086:                return converter.index;
0087:            }
0088:
0089:            public Start parse() throws ParserException, LexerException,
0090:                    IOException {
0091:                push(0, null);
0092:                List ign = null;
0093:                while (true) {
0094:                    while (index(lexer.peek()) == -1) {
0095:                        if (ign == null) {
0096:                            ign = new TypedLinkedList(NodeCast.instance);
0097:                        }
0098:
0099:                        ign.add(lexer.next());
0100:                    }
0101:
0102:                    if (ign != null) {
0103:                        ignoredTokens.setIn(lexer.peek(), ign);
0104:                        ign = null;
0105:                    }
0106:
0107:                    last_pos = lexer.peek().getPos();
0108:                    last_line = lexer.peek().getLine();
0109:                    last_token = lexer.peek();
0110:
0111:                    int index = index(lexer.peek());
0112:                    action[0] = actionTable[state()][0][1];
0113:                    action[1] = actionTable[state()][0][2];
0114:
0115:                    int low = 1;
0116:                    int high = actionTable[state()].length - 1;
0117:
0118:                    while (low <= high) {
0119:                        int middle = (low + high) / 2;
0120:
0121:                        if (index < actionTable[state()][middle][0]) {
0122:                            high = middle - 1;
0123:                        } else if (index > actionTable[state()][middle][0]) {
0124:                            low = middle + 1;
0125:                        } else {
0126:                            action[0] = actionTable[state()][middle][1];
0127:                            action[1] = actionTable[state()][middle][2];
0128:                            break;
0129:                        }
0130:                    }
0131:
0132:                    switch (action[0]) {
0133:                    case SHIFT: {
0134:                        ArrayList list = new ArrayList();
0135:                        list.add(lexer.next());
0136:                        push(action[1], list);
0137:                        last_shift = action[1];
0138:                    }
0139:                        break;
0140:                    case REDUCE:
0141:                        switch (action[1]) {
0142:                        case 0: /* reduce AAgrammar1Grammar */
0143:                        {
0144:                            ArrayList list = new0();
0145:                            push(goTo(0), list);
0146:                        }
0147:                            break;
0148:                        case 1: /* reduce AAgrammar2Grammar */
0149:                        {
0150:                            ArrayList list = new1();
0151:                            push(goTo(0), list);
0152:                        }
0153:                            break;
0154:                        case 2: /* reduce AAgrammar3Grammar */
0155:                        {
0156:                            ArrayList list = new2();
0157:                            push(goTo(0), list);
0158:                        }
0159:                            break;
0160:                        case 3: /* reduce AAgrammar4Grammar */
0161:                        {
0162:                            ArrayList list = new3();
0163:                            push(goTo(0), list);
0164:                        }
0165:                            break;
0166:                        case 4: /* reduce AAgrammar5Grammar */
0167:                        {
0168:                            ArrayList list = new4();
0169:                            push(goTo(0), list);
0170:                        }
0171:                            break;
0172:                        case 5: /* reduce AAgrammar6Grammar */
0173:                        {
0174:                            ArrayList list = new5();
0175:                            push(goTo(0), list);
0176:                        }
0177:                            break;
0178:                        case 6: /* reduce AAgrammar7Grammar */
0179:                        {
0180:                            ArrayList list = new6();
0181:                            push(goTo(0), list);
0182:                        }
0183:                            break;
0184:                        case 7: /* reduce AAgrammar8Grammar */
0185:                        {
0186:                            ArrayList list = new7();
0187:                            push(goTo(0), list);
0188:                        }
0189:                            break;
0190:                        case 8: /* reduce AAgrammar9Grammar */
0191:                        {
0192:                            ArrayList list = new8();
0193:                            push(goTo(0), list);
0194:                        }
0195:                            break;
0196:                        case 9: /* reduce AAgrammar10Grammar */
0197:                        {
0198:                            ArrayList list = new9();
0199:                            push(goTo(0), list);
0200:                        }
0201:                            break;
0202:                        case 10: /* reduce AAgrammar11Grammar */
0203:                        {
0204:                            ArrayList list = new10();
0205:                            push(goTo(0), list);
0206:                        }
0207:                            break;
0208:                        case 11: /* reduce AAgrammar12Grammar */
0209:                        {
0210:                            ArrayList list = new11();
0211:                            push(goTo(0), list);
0212:                        }
0213:                            break;
0214:                        case 12: /* reduce AAgrammar13Grammar */
0215:                        {
0216:                            ArrayList list = new12();
0217:                            push(goTo(0), list);
0218:                        }
0219:                            break;
0220:                        case 13: /* reduce AAgrammar14Grammar */
0221:                        {
0222:                            ArrayList list = new13();
0223:                            push(goTo(0), list);
0224:                        }
0225:                            break;
0226:                        case 14: /* reduce AAgrammar15Grammar */
0227:                        {
0228:                            ArrayList list = new14();
0229:                            push(goTo(0), list);
0230:                        }
0231:                            break;
0232:                        case 15: /* reduce AAgrammar16Grammar */
0233:                        {
0234:                            ArrayList list = new15();
0235:                            push(goTo(0), list);
0236:                        }
0237:                            break;
0238:                        case 16: /* reduce AAgrammar17Grammar */
0239:                        {
0240:                            ArrayList list = new16();
0241:                            push(goTo(0), list);
0242:                        }
0243:                            break;
0244:                        case 17: /* reduce AAgrammar18Grammar */
0245:                        {
0246:                            ArrayList list = new17();
0247:                            push(goTo(0), list);
0248:                        }
0249:                            break;
0250:                        case 18: /* reduce AAgrammar19Grammar */
0251:                        {
0252:                            ArrayList list = new18();
0253:                            push(goTo(0), list);
0254:                        }
0255:                            break;
0256:                        case 19: /* reduce AAgrammar20Grammar */
0257:                        {
0258:                            ArrayList list = new19();
0259:                            push(goTo(0), list);
0260:                        }
0261:                            break;
0262:                        case 20: /* reduce AAgrammar21Grammar */
0263:                        {
0264:                            ArrayList list = new20();
0265:                            push(goTo(0), list);
0266:                        }
0267:                            break;
0268:                        case 21: /* reduce AAgrammar22Grammar */
0269:                        {
0270:                            ArrayList list = new21();
0271:                            push(goTo(0), list);
0272:                        }
0273:                            break;
0274:                        case 22: /* reduce AAgrammar23Grammar */
0275:                        {
0276:                            ArrayList list = new22();
0277:                            push(goTo(0), list);
0278:                        }
0279:                            break;
0280:                        case 23: /* reduce AAgrammar24Grammar */
0281:                        {
0282:                            ArrayList list = new23();
0283:                            push(goTo(0), list);
0284:                        }
0285:                            break;
0286:                        case 24: /* reduce AAgrammar25Grammar */
0287:                        {
0288:                            ArrayList list = new24();
0289:                            push(goTo(0), list);
0290:                        }
0291:                            break;
0292:                        case 25: /* reduce AAgrammar26Grammar */
0293:                        {
0294:                            ArrayList list = new25();
0295:                            push(goTo(0), list);
0296:                        }
0297:                            break;
0298:                        case 26: /* reduce AAgrammar27Grammar */
0299:                        {
0300:                            ArrayList list = new26();
0301:                            push(goTo(0), list);
0302:                        }
0303:                            break;
0304:                        case 27: /* reduce AAgrammar28Grammar */
0305:                        {
0306:                            ArrayList list = new27();
0307:                            push(goTo(0), list);
0308:                        }
0309:                            break;
0310:                        case 28: /* reduce AAgrammar29Grammar */
0311:                        {
0312:                            ArrayList list = new28();
0313:                            push(goTo(0), list);
0314:                        }
0315:                            break;
0316:                        case 29: /* reduce AAgrammar30Grammar */
0317:                        {
0318:                            ArrayList list = new29();
0319:                            push(goTo(0), list);
0320:                        }
0321:                            break;
0322:                        case 30: /* reduce AAgrammar31Grammar */
0323:                        {
0324:                            ArrayList list = new30();
0325:                            push(goTo(0), list);
0326:                        }
0327:                            break;
0328:                        case 31: /* reduce AAgrammar32Grammar */
0329:                        {
0330:                            ArrayList list = new31();
0331:                            push(goTo(0), list);
0332:                        }
0333:                            break;
0334:                        case 32: /* reduce AAgrammar33Grammar */
0335:                        {
0336:                            ArrayList list = new32();
0337:                            push(goTo(0), list);
0338:                        }
0339:                            break;
0340:                        case 33: /* reduce AAgrammar34Grammar */
0341:                        {
0342:                            ArrayList list = new33();
0343:                            push(goTo(0), list);
0344:                        }
0345:                            break;
0346:                        case 34: /* reduce AAgrammar35Grammar */
0347:                        {
0348:                            ArrayList list = new34();
0349:                            push(goTo(0), list);
0350:                        }
0351:                            break;
0352:                        case 35: /* reduce AAgrammar36Grammar */
0353:                        {
0354:                            ArrayList list = new35();
0355:                            push(goTo(0), list);
0356:                        }
0357:                            break;
0358:                        case 36: /* reduce AAgrammar37Grammar */
0359:                        {
0360:                            ArrayList list = new36();
0361:                            push(goTo(0), list);
0362:                        }
0363:                            break;
0364:                        case 37: /* reduce AAgrammar38Grammar */
0365:                        {
0366:                            ArrayList list = new37();
0367:                            push(goTo(0), list);
0368:                        }
0369:                            break;
0370:                        case 38: /* reduce AAgrammar39Grammar */
0371:                        {
0372:                            ArrayList list = new38();
0373:                            push(goTo(0), list);
0374:                        }
0375:                            break;
0376:                        case 39: /* reduce AAgrammar40Grammar */
0377:                        {
0378:                            ArrayList list = new39();
0379:                            push(goTo(0), list);
0380:                        }
0381:                            break;
0382:                        case 40: /* reduce AAgrammar41Grammar */
0383:                        {
0384:                            ArrayList list = new40();
0385:                            push(goTo(0), list);
0386:                        }
0387:                            break;
0388:                        case 41: /* reduce AAgrammar42Grammar */
0389:                        {
0390:                            ArrayList list = new41();
0391:                            push(goTo(0), list);
0392:                        }
0393:                            break;
0394:                        case 42: /* reduce AAgrammar43Grammar */
0395:                        {
0396:                            ArrayList list = new42();
0397:                            push(goTo(0), list);
0398:                        }
0399:                            break;
0400:                        case 43: /* reduce AAgrammar44Grammar */
0401:                        {
0402:                            ArrayList list = new43();
0403:                            push(goTo(0), list);
0404:                        }
0405:                            break;
0406:                        case 44: /* reduce AAgrammar45Grammar */
0407:                        {
0408:                            ArrayList list = new44();
0409:                            push(goTo(0), list);
0410:                        }
0411:                            break;
0412:                        case 45: /* reduce AAgrammar46Grammar */
0413:                        {
0414:                            ArrayList list = new45();
0415:                            push(goTo(0), list);
0416:                        }
0417:                            break;
0418:                        case 46: /* reduce AAgrammar47Grammar */
0419:                        {
0420:                            ArrayList list = new46();
0421:                            push(goTo(0), list);
0422:                        }
0423:                            break;
0424:                        case 47: /* reduce AAgrammar48Grammar */
0425:                        {
0426:                            ArrayList list = new47();
0427:                            push(goTo(0), list);
0428:                        }
0429:                            break;
0430:                        case 48: /* reduce AAgrammar49Grammar */
0431:                        {
0432:                            ArrayList list = new48();
0433:                            push(goTo(0), list);
0434:                        }
0435:                            break;
0436:                        case 49: /* reduce AAgrammar50Grammar */
0437:                        {
0438:                            ArrayList list = new49();
0439:                            push(goTo(0), list);
0440:                        }
0441:                            break;
0442:                        case 50: /* reduce AAgrammar51Grammar */
0443:                        {
0444:                            ArrayList list = new50();
0445:                            push(goTo(0), list);
0446:                        }
0447:                            break;
0448:                        case 51: /* reduce AAgrammar52Grammar */
0449:                        {
0450:                            ArrayList list = new51();
0451:                            push(goTo(0), list);
0452:                        }
0453:                            break;
0454:                        case 52: /* reduce AAgrammar53Grammar */
0455:                        {
0456:                            ArrayList list = new52();
0457:                            push(goTo(0), list);
0458:                        }
0459:                            break;
0460:                        case 53: /* reduce AAgrammar54Grammar */
0461:                        {
0462:                            ArrayList list = new53();
0463:                            push(goTo(0), list);
0464:                        }
0465:                            break;
0466:                        case 54: /* reduce AAgrammar55Grammar */
0467:                        {
0468:                            ArrayList list = new54();
0469:                            push(goTo(0), list);
0470:                        }
0471:                            break;
0472:                        case 55: /* reduce AAgrammar56Grammar */
0473:                        {
0474:                            ArrayList list = new55();
0475:                            push(goTo(0), list);
0476:                        }
0477:                            break;
0478:                        case 56: /* reduce AAgrammar57Grammar */
0479:                        {
0480:                            ArrayList list = new56();
0481:                            push(goTo(0), list);
0482:                        }
0483:                            break;
0484:                        case 57: /* reduce AAgrammar58Grammar */
0485:                        {
0486:                            ArrayList list = new57();
0487:                            push(goTo(0), list);
0488:                        }
0489:                            break;
0490:                        case 58: /* reduce AAgrammar59Grammar */
0491:                        {
0492:                            ArrayList list = new58();
0493:                            push(goTo(0), list);
0494:                        }
0495:                            break;
0496:                        case 59: /* reduce AAgrammar60Grammar */
0497:                        {
0498:                            ArrayList list = new59();
0499:                            push(goTo(0), list);
0500:                        }
0501:                            break;
0502:                        case 60: /* reduce AAgrammar61Grammar */
0503:                        {
0504:                            ArrayList list = new60();
0505:                            push(goTo(0), list);
0506:                        }
0507:                            break;
0508:                        case 61: /* reduce AAgrammar62Grammar */
0509:                        {
0510:                            ArrayList list = new61();
0511:                            push(goTo(0), list);
0512:                        }
0513:                            break;
0514:                        case 62: /* reduce AAgrammar63Grammar */
0515:                        {
0516:                            ArrayList list = new62();
0517:                            push(goTo(0), list);
0518:                        }
0519:                            break;
0520:                        case 63: /* reduce AAgrammar64Grammar */
0521:                        {
0522:                            ArrayList list = new63();
0523:                            push(goTo(0), list);
0524:                        }
0525:                            break;
0526:                        case 64: /* reduce AAgrammar65Grammar */
0527:                        {
0528:                            ArrayList list = new64();
0529:                            push(goTo(0), list);
0530:                        }
0531:                            break;
0532:                        case 65: /* reduce AAgrammar66Grammar */
0533:                        {
0534:                            ArrayList list = new65();
0535:                            push(goTo(0), list);
0536:                        }
0537:                            break;
0538:                        case 66: /* reduce AAgrammar67Grammar */
0539:                        {
0540:                            ArrayList list = new66();
0541:                            push(goTo(0), list);
0542:                        }
0543:                            break;
0544:                        case 67: /* reduce AAgrammar68Grammar */
0545:                        {
0546:                            ArrayList list = new67();
0547:                            push(goTo(0), list);
0548:                        }
0549:                            break;
0550:                        case 68: /* reduce AAgrammar69Grammar */
0551:                        {
0552:                            ArrayList list = new68();
0553:                            push(goTo(0), list);
0554:                        }
0555:                            break;
0556:                        case 69: /* reduce AAgrammar70Grammar */
0557:                        {
0558:                            ArrayList list = new69();
0559:                            push(goTo(0), list);
0560:                        }
0561:                            break;
0562:                        case 70: /* reduce AAgrammar71Grammar */
0563:                        {
0564:                            ArrayList list = new70();
0565:                            push(goTo(0), list);
0566:                        }
0567:                            break;
0568:                        case 71: /* reduce AAgrammar72Grammar */
0569:                        {
0570:                            ArrayList list = new71();
0571:                            push(goTo(0), list);
0572:                        }
0573:                            break;
0574:                        case 72: /* reduce AAgrammar73Grammar */
0575:                        {
0576:                            ArrayList list = new72();
0577:                            push(goTo(0), list);
0578:                        }
0579:                            break;
0580:                        case 73: /* reduce AAgrammar74Grammar */
0581:                        {
0582:                            ArrayList list = new73();
0583:                            push(goTo(0), list);
0584:                        }
0585:                            break;
0586:                        case 74: /* reduce AAgrammar75Grammar */
0587:                        {
0588:                            ArrayList list = new74();
0589:                            push(goTo(0), list);
0590:                        }
0591:                            break;
0592:                        case 75: /* reduce AAgrammar76Grammar */
0593:                        {
0594:                            ArrayList list = new75();
0595:                            push(goTo(0), list);
0596:                        }
0597:                            break;
0598:                        case 76: /* reduce AAgrammar77Grammar */
0599:                        {
0600:                            ArrayList list = new76();
0601:                            push(goTo(0), list);
0602:                        }
0603:                            break;
0604:                        case 77: /* reduce AAgrammar78Grammar */
0605:                        {
0606:                            ArrayList list = new77();
0607:                            push(goTo(0), list);
0608:                        }
0609:                            break;
0610:                        case 78: /* reduce AAgrammar79Grammar */
0611:                        {
0612:                            ArrayList list = new78();
0613:                            push(goTo(0), list);
0614:                        }
0615:                            break;
0616:                        case 79: /* reduce AAgrammar80Grammar */
0617:                        {
0618:                            ArrayList list = new79();
0619:                            push(goTo(0), list);
0620:                        }
0621:                            break;
0622:                        case 80: /* reduce AAgrammar81Grammar */
0623:                        {
0624:                            ArrayList list = new80();
0625:                            push(goTo(0), list);
0626:                        }
0627:                            break;
0628:                        case 81: /* reduce AAgrammar82Grammar */
0629:                        {
0630:                            ArrayList list = new81();
0631:                            push(goTo(0), list);
0632:                        }
0633:                            break;
0634:                        case 82: /* reduce AAgrammar83Grammar */
0635:                        {
0636:                            ArrayList list = new82();
0637:                            push(goTo(0), list);
0638:                        }
0639:                            break;
0640:                        case 83: /* reduce AAgrammar84Grammar */
0641:                        {
0642:                            ArrayList list = new83();
0643:                            push(goTo(0), list);
0644:                        }
0645:                            break;
0646:                        case 84: /* reduce AAgrammar85Grammar */
0647:                        {
0648:                            ArrayList list = new84();
0649:                            push(goTo(0), list);
0650:                        }
0651:                            break;
0652:                        case 85: /* reduce AAgrammar86Grammar */
0653:                        {
0654:                            ArrayList list = new85();
0655:                            push(goTo(0), list);
0656:                        }
0657:                            break;
0658:                        case 86: /* reduce AAgrammar87Grammar */
0659:                        {
0660:                            ArrayList list = new86();
0661:                            push(goTo(0), list);
0662:                        }
0663:                            break;
0664:                        case 87: /* reduce AAgrammar88Grammar */
0665:                        {
0666:                            ArrayList list = new87();
0667:                            push(goTo(0), list);
0668:                        }
0669:                            break;
0670:                        case 88: /* reduce AAgrammar89Grammar */
0671:                        {
0672:                            ArrayList list = new88();
0673:                            push(goTo(0), list);
0674:                        }
0675:                            break;
0676:                        case 89: /* reduce AAgrammar90Grammar */
0677:                        {
0678:                            ArrayList list = new89();
0679:                            push(goTo(0), list);
0680:                        }
0681:                            break;
0682:                        case 90: /* reduce AAgrammar91Grammar */
0683:                        {
0684:                            ArrayList list = new90();
0685:                            push(goTo(0), list);
0686:                        }
0687:                            break;
0688:                        case 91: /* reduce AAgrammar92Grammar */
0689:                        {
0690:                            ArrayList list = new91();
0691:                            push(goTo(0), list);
0692:                        }
0693:                            break;
0694:                        case 92: /* reduce AAgrammar93Grammar */
0695:                        {
0696:                            ArrayList list = new92();
0697:                            push(goTo(0), list);
0698:                        }
0699:                            break;
0700:                        case 93: /* reduce AAgrammar94Grammar */
0701:                        {
0702:                            ArrayList list = new93();
0703:                            push(goTo(0), list);
0704:                        }
0705:                            break;
0706:                        case 94: /* reduce AAgrammar95Grammar */
0707:                        {
0708:                            ArrayList list = new94();
0709:                            push(goTo(0), list);
0710:                        }
0711:                            break;
0712:                        case 95: /* reduce AAgrammar96Grammar */
0713:                        {
0714:                            ArrayList list = new95();
0715:                            push(goTo(0), list);
0716:                        }
0717:                            break;
0718:                        case 96: /* reduce AAgrammar97Grammar */
0719:                        {
0720:                            ArrayList list = new96();
0721:                            push(goTo(0), list);
0722:                        }
0723:                            break;
0724:                        case 97: /* reduce AAgrammar98Grammar */
0725:                        {
0726:                            ArrayList list = new97();
0727:                            push(goTo(0), list);
0728:                        }
0729:                            break;
0730:                        case 98: /* reduce AAgrammar99Grammar */
0731:                        {
0732:                            ArrayList list = new98();
0733:                            push(goTo(0), list);
0734:                        }
0735:                            break;
0736:                        case 99: /* reduce AAgrammar100Grammar */
0737:                        {
0738:                            ArrayList list = new99();
0739:                            push(goTo(0), list);
0740:                        }
0741:                            break;
0742:                        case 100: /* reduce AAgrammar101Grammar */
0743:                        {
0744:                            ArrayList list = new100();
0745:                            push(goTo(0), list);
0746:                        }
0747:                            break;
0748:                        case 101: /* reduce AAgrammar102Grammar */
0749:                        {
0750:                            ArrayList list = new101();
0751:                            push(goTo(0), list);
0752:                        }
0753:                            break;
0754:                        case 102: /* reduce AAgrammar103Grammar */
0755:                        {
0756:                            ArrayList list = new102();
0757:                            push(goTo(0), list);
0758:                        }
0759:                            break;
0760:                        case 103: /* reduce AAgrammar104Grammar */
0761:                        {
0762:                            ArrayList list = new103();
0763:                            push(goTo(0), list);
0764:                        }
0765:                            break;
0766:                        case 104: /* reduce AAgrammar105Grammar */
0767:                        {
0768:                            ArrayList list = new104();
0769:                            push(goTo(0), list);
0770:                        }
0771:                            break;
0772:                        case 105: /* reduce AAgrammar106Grammar */
0773:                        {
0774:                            ArrayList list = new105();
0775:                            push(goTo(0), list);
0776:                        }
0777:                            break;
0778:                        case 106: /* reduce AAgrammar107Grammar */
0779:                        {
0780:                            ArrayList list = new106();
0781:                            push(goTo(0), list);
0782:                        }
0783:                            break;
0784:                        case 107: /* reduce AAgrammar108Grammar */
0785:                        {
0786:                            ArrayList list = new107();
0787:                            push(goTo(0), list);
0788:                        }
0789:                            break;
0790:                        case 108: /* reduce AAgrammar109Grammar */
0791:                        {
0792:                            ArrayList list = new108();
0793:                            push(goTo(0), list);
0794:                        }
0795:                            break;
0796:                        case 109: /* reduce AAgrammar110Grammar */
0797:                        {
0798:                            ArrayList list = new109();
0799:                            push(goTo(0), list);
0800:                        }
0801:                            break;
0802:                        case 110: /* reduce AAgrammar111Grammar */
0803:                        {
0804:                            ArrayList list = new110();
0805:                            push(goTo(0), list);
0806:                        }
0807:                            break;
0808:                        case 111: /* reduce AAgrammar112Grammar */
0809:                        {
0810:                            ArrayList list = new111();
0811:                            push(goTo(0), list);
0812:                        }
0813:                            break;
0814:                        case 112: /* reduce AAgrammar113Grammar */
0815:                        {
0816:                            ArrayList list = new112();
0817:                            push(goTo(0), list);
0818:                        }
0819:                            break;
0820:                        case 113: /* reduce AAgrammar114Grammar */
0821:                        {
0822:                            ArrayList list = new113();
0823:                            push(goTo(0), list);
0824:                        }
0825:                            break;
0826:                        case 114: /* reduce AAgrammar115Grammar */
0827:                        {
0828:                            ArrayList list = new114();
0829:                            push(goTo(0), list);
0830:                        }
0831:                            break;
0832:                        case 115: /* reduce AAgrammar116Grammar */
0833:                        {
0834:                            ArrayList list = new115();
0835:                            push(goTo(0), list);
0836:                        }
0837:                            break;
0838:                        case 116: /* reduce AAgrammar117Grammar */
0839:                        {
0840:                            ArrayList list = new116();
0841:                            push(goTo(0), list);
0842:                        }
0843:                            break;
0844:                        case 117: /* reduce AAgrammar118Grammar */
0845:                        {
0846:                            ArrayList list = new117();
0847:                            push(goTo(0), list);
0848:                        }
0849:                            break;
0850:                        case 118: /* reduce AAgrammar119Grammar */
0851:                        {
0852:                            ArrayList list = new118();
0853:                            push(goTo(0), list);
0854:                        }
0855:                            break;
0856:                        case 119: /* reduce AAgrammar120Grammar */
0857:                        {
0858:                            ArrayList list = new119();
0859:                            push(goTo(0), list);
0860:                        }
0861:                            break;
0862:                        case 120: /* reduce AAgrammar121Grammar */
0863:                        {
0864:                            ArrayList list = new120();
0865:                            push(goTo(0), list);
0866:                        }
0867:                            break;
0868:                        case 121: /* reduce AAgrammar122Grammar */
0869:                        {
0870:                            ArrayList list = new121();
0871:                            push(goTo(0), list);
0872:                        }
0873:                            break;
0874:                        case 122: /* reduce AAgrammar123Grammar */
0875:                        {
0876:                            ArrayList list = new122();
0877:                            push(goTo(0), list);
0878:                        }
0879:                            break;
0880:                        case 123: /* reduce AAgrammar124Grammar */
0881:                        {
0882:                            ArrayList list = new123();
0883:                            push(goTo(0), list);
0884:                        }
0885:                            break;
0886:                        case 124: /* reduce AAgrammar125Grammar */
0887:                        {
0888:                            ArrayList list = new124();
0889:                            push(goTo(0), list);
0890:                        }
0891:                            break;
0892:                        case 125: /* reduce AAgrammar126Grammar */
0893:                        {
0894:                            ArrayList list = new125();
0895:                            push(goTo(0), list);
0896:                        }
0897:                            break;
0898:                        case 126: /* reduce AAgrammar127Grammar */
0899:                        {
0900:                            ArrayList list = new126();
0901:                            push(goTo(0), list);
0902:                        }
0903:                            break;
0904:                        case 127: /* reduce AAgrammar128Grammar */
0905:                        {
0906:                            ArrayList list = new127();
0907:                            push(goTo(0), list);
0908:                        }
0909:                            break;
0910:                        case 128: /* reduce APackage */
0911:                        {
0912:                            ArrayList list = new128();
0913:                            push(goTo(1), list);
0914:                        }
0915:                            break;
0916:                        case 129: /* reduce AApkgname1PkgName */
0917:                        {
0918:                            ArrayList list = new129();
0919:                            push(goTo(2), list);
0920:                        }
0921:                            break;
0922:                        case 130: /* reduce AApkgname2PkgName */
0923:                        {
0924:                            ArrayList list = new130();
0925:                            push(goTo(2), list);
0926:                        }
0927:                            break;
0928:                        case 131: /* reduce APkgNameTail */
0929:                        {
0930:                            ArrayList list = new131();
0931:                            push(goTo(3), list);
0932:                        }
0933:                            break;
0934:                        case 132: /* reduce AHelpers */
0935:                        {
0936:                            ArrayList list = new132();
0937:                            push(goTo(4), list);
0938:                        }
0939:                            break;
0940:                        case 133: /* reduce AHelperDef */
0941:                        {
0942:                            ArrayList list = new133();
0943:                            push(goTo(5), list);
0944:                        }
0945:                            break;
0946:                        case 134: /* reduce AStates */
0947:                        {
0948:                            ArrayList list = new134();
0949:                            push(goTo(6), list);
0950:                        }
0951:                            break;
0952:                        case 135: /* reduce AAidlist1IdList */
0953:                        {
0954:                            ArrayList list = new135();
0955:                            push(goTo(7), list);
0956:                        }
0957:                            break;
0958:                        case 136: /* reduce AAidlist2IdList */
0959:                        {
0960:                            ArrayList list = new136();
0961:                            push(goTo(7), list);
0962:                        }
0963:                            break;
0964:                        case 137: /* reduce AIdListTail */
0965:                        {
0966:                            ArrayList list = new137();
0967:                            push(goTo(8), list);
0968:                        }
0969:                            break;
0970:                        case 138: /* reduce ATokens */
0971:                        {
0972:                            ArrayList list = new138();
0973:                            push(goTo(9), list);
0974:                        }
0975:                            break;
0976:                        case 139: /* reduce AAtokendef1TokenDef */
0977:                        {
0978:                            ArrayList list = new139();
0979:                            push(goTo(10), list);
0980:                        }
0981:                            break;
0982:                        case 140: /* reduce AAtokendef2TokenDef */
0983:                        {
0984:                            ArrayList list = new140();
0985:                            push(goTo(10), list);
0986:                        }
0987:                            break;
0988:                        case 141: /* reduce AAtokendef3TokenDef */
0989:                        {
0990:                            ArrayList list = new141();
0991:                            push(goTo(10), list);
0992:                        }
0993:                            break;
0994:                        case 142: /* reduce AAtokendef4TokenDef */
0995:                        {
0996:                            ArrayList list = new142();
0997:                            push(goTo(10), list);
0998:                        }
0999:                            break;
1000:                        case 143: /* reduce AAstatelist1StateList */
1001:                        {
1002:                            ArrayList list = new143();
1003:                            push(goTo(11), list);
1004:                        }
1005:                            break;
1006:                        case 144: /* reduce AAstatelist2StateList */
1007:                        {
1008:                            ArrayList list = new144();
1009:                            push(goTo(11), list);
1010:                        }
1011:                            break;
1012:                        case 145: /* reduce AAstatelist3StateList */
1013:                        {
1014:                            ArrayList list = new145();
1015:                            push(goTo(11), list);
1016:                        }
1017:                            break;
1018:                        case 146: /* reduce AAstatelist4StateList */
1019:                        {
1020:                            ArrayList list = new146();
1021:                            push(goTo(11), list);
1022:                        }
1023:                            break;
1024:                        case 147: /* reduce AAstatelisttail1StateListTail */
1025:                        {
1026:                            ArrayList list = new147();
1027:                            push(goTo(12), list);
1028:                        }
1029:                            break;
1030:                        case 148: /* reduce AAstatelisttail2StateListTail */
1031:                        {
1032:                            ArrayList list = new148();
1033:                            push(goTo(12), list);
1034:                        }
1035:                            break;
1036:                        case 149: /* reduce ATransition */
1037:                        {
1038:                            ArrayList list = new149();
1039:                            push(goTo(13), list);
1040:                        }
1041:                            break;
1042:                        case 150: /* reduce AAigntokens1IgnTokens */
1043:                        {
1044:                            ArrayList list = new150();
1045:                            push(goTo(14), list);
1046:                        }
1047:                            break;
1048:                        case 151: /* reduce AAigntokens2IgnTokens */
1049:                        {
1050:                            ArrayList list = new151();
1051:                            push(goTo(14), list);
1052:                        }
1053:                            break;
1054:                        case 152: /* reduce ALookAhead */
1055:                        {
1056:                            ArrayList list = new152();
1057:                            push(goTo(15), list);
1058:                        }
1059:                            break;
1060:                        case 153: /* reduce AAregexp1RegExp */
1061:                        {
1062:                            ArrayList list = new153();
1063:                            push(goTo(16), list);
1064:                        }
1065:                            break;
1066:                        case 154: /* reduce AAregexp2RegExp */
1067:                        {
1068:                            ArrayList list = new154();
1069:                            push(goTo(16), list);
1070:                        }
1071:                            break;
1072:                        case 155: /* reduce ARegExpTail */
1073:                        {
1074:                            ArrayList list = new155();
1075:                            push(goTo(17), list);
1076:                        }
1077:                            break;
1078:                        case 156: /* reduce AAconcat1Concat */
1079:                        {
1080:                            ArrayList list = new156();
1081:                            push(goTo(18), list);
1082:                        }
1083:                            break;
1084:                        case 157: /* reduce AAconcat2Concat */
1085:                        {
1086:                            ArrayList list = new157();
1087:                            push(goTo(18), list);
1088:                        }
1089:                            break;
1090:                        case 158: /* reduce AAunexp1UnExp */
1091:                        {
1092:                            ArrayList list = new158();
1093:                            push(goTo(19), list);
1094:                        }
1095:                            break;
1096:                        case 159: /* reduce AAunexp2UnExp */
1097:                        {
1098:                            ArrayList list = new159();
1099:                            push(goTo(19), list);
1100:                        }
1101:                            break;
1102:                        case 160: /* reduce ACharBasic */
1103:                        {
1104:                            ArrayList list = new160();
1105:                            push(goTo(20), list);
1106:                        }
1107:                            break;
1108:                        case 161: /* reduce ASetBasic */
1109:                        {
1110:                            ArrayList list = new161();
1111:                            push(goTo(20), list);
1112:                        }
1113:                            break;
1114:                        case 162: /* reduce AStringBasic */
1115:                        {
1116:                            ArrayList list = new162();
1117:                            push(goTo(20), list);
1118:                        }
1119:                            break;
1120:                        case 163: /* reduce AIdBasic */
1121:                        {
1122:                            ArrayList list = new163();
1123:                            push(goTo(20), list);
1124:                        }
1125:                            break;
1126:                        case 164: /* reduce ARegExpBasic */
1127:                        {
1128:                            ArrayList list = new164();
1129:                            push(goTo(20), list);
1130:                        }
1131:                            break;
1132:                        case 165: /* reduce ACharChar */
1133:                        {
1134:                            ArrayList list = new165();
1135:                            push(goTo(21), list);
1136:                        }
1137:                            break;
1138:                        case 166: /* reduce ADecChar */
1139:                        {
1140:                            ArrayList list = new166();
1141:                            push(goTo(21), list);
1142:                        }
1143:                            break;
1144:                        case 167: /* reduce AHexChar */
1145:                        {
1146:                            ArrayList list = new167();
1147:                            push(goTo(21), list);
1148:                        }
1149:                            break;
1150:                        case 168: /* reduce AOperationSet */
1151:                        {
1152:                            ArrayList list = new168();
1153:                            push(goTo(22), list);
1154:                        }
1155:                            break;
1156:                        case 169: /* reduce AIntervalSet */
1157:                        {
1158:                            ArrayList list = new169();
1159:                            push(goTo(22), list);
1160:                        }
1161:                            break;
1162:                        case 170: /* reduce AStarUnOp */
1163:                        {
1164:                            ArrayList list = new170();
1165:                            push(goTo(23), list);
1166:                        }
1167:                            break;
1168:                        case 171: /* reduce AQMarkUnOp */
1169:                        {
1170:                            ArrayList list = new171();
1171:                            push(goTo(23), list);
1172:                        }
1173:                            break;
1174:                        case 172: /* reduce APlusUnOp */
1175:                        {
1176:                            ArrayList list = new172();
1177:                            push(goTo(23), list);
1178:                        }
1179:                            break;
1180:                        case 173: /* reduce APlusBinOp */
1181:                        {
1182:                            ArrayList list = new173();
1183:                            push(goTo(24), list);
1184:                        }
1185:                            break;
1186:                        case 174: /* reduce AMinusBinOp */
1187:                        {
1188:                            ArrayList list = new174();
1189:                            push(goTo(24), list);
1190:                        }
1191:                            break;
1192:                        case 175: /* reduce AProductions */
1193:                        {
1194:                            ArrayList list = new175();
1195:                            push(goTo(25), list);
1196:                        }
1197:                            break;
1198:                        case 176: /* reduce AAprod1Prod */
1199:                        {
1200:                            ArrayList list = new176();
1201:                            push(goTo(26), list);
1202:                        }
1203:                            break;
1204:                        case 177: /* reduce AAprod2Prod */
1205:                        {
1206:                            ArrayList list = new177();
1207:                            push(goTo(26), list);
1208:                        }
1209:                            break;
1210:                        case 178: /* reduce AAprodtransform1ProdTransform */
1211:                        {
1212:                            ArrayList list = new178();
1213:                            push(goTo(27), list);
1214:                        }
1215:                            break;
1216:                        case 179: /* reduce AAprodtransform2ProdTransform */
1217:                        {
1218:                            ArrayList list = new179();
1219:                            push(goTo(27), list);
1220:                        }
1221:                            break;
1222:                        case 180: /* reduce AAalts1Alts */
1223:                        {
1224:                            ArrayList list = new180();
1225:                            push(goTo(28), list);
1226:                        }
1227:                            break;
1228:                        case 181: /* reduce AAalts2Alts */
1229:                        {
1230:                            ArrayList list = new181();
1231:                            push(goTo(28), list);
1232:                        }
1233:                            break;
1234:                        case 182: /* reduce AAltsTail */
1235:                        {
1236:                            ArrayList list = new182();
1237:                            push(goTo(29), list);
1238:                        }
1239:                            break;
1240:                        case 183: /* reduce AAalt1Alt */
1241:                        {
1242:                            ArrayList list = new183();
1243:                            push(goTo(30), list);
1244:                        }
1245:                            break;
1246:                        case 184: /* reduce AAalt2Alt */
1247:                        {
1248:                            ArrayList list = new184();
1249:                            push(goTo(30), list);
1250:                        }
1251:                            break;
1252:                        case 185: /* reduce AAalt3Alt */
1253:                        {
1254:                            ArrayList list = new185();
1255:                            push(goTo(30), list);
1256:                        }
1257:                            break;
1258:                        case 186: /* reduce AAalt4Alt */
1259:                        {
1260:                            ArrayList list = new186();
1261:                            push(goTo(30), list);
1262:                        }
1263:                            break;
1264:                        case 187: /* reduce AAalt5Alt */
1265:                        {
1266:                            ArrayList list = new187();
1267:                            push(goTo(30), list);
1268:                        }
1269:                            break;
1270:                        case 188: /* reduce AAalt6Alt */
1271:                        {
1272:                            ArrayList list = new188();
1273:                            push(goTo(30), list);
1274:                        }
1275:                            break;
1276:                        case 189: /* reduce AAalt7Alt */
1277:                        {
1278:                            ArrayList list = new189();
1279:                            push(goTo(30), list);
1280:                        }
1281:                            break;
1282:                        case 190: /* reduce AAalt8Alt */
1283:                        {
1284:                            ArrayList list = new190();
1285:                            push(goTo(30), list);
1286:                        }
1287:                            break;
1288:                        case 191: /* reduce AAalttransform1AltTransform */
1289:                        {
1290:                            ArrayList list = new191();
1291:                            push(goTo(31), list);
1292:                        }
1293:                            break;
1294:                        case 192: /* reduce AAalttransform2AltTransform */
1295:                        {
1296:                            ArrayList list = new192();
1297:                            push(goTo(31), list);
1298:                        }
1299:                            break;
1300:                        case 193: /* reduce AAnewterm1Term */
1301:                        {
1302:                            ArrayList list = new193();
1303:                            push(goTo(32), list);
1304:                        }
1305:                            break;
1306:                        case 194: /* reduce AAnewterm2Term */
1307:                        {
1308:                            ArrayList list = new194();
1309:                            push(goTo(32), list);
1310:                        }
1311:                            break;
1312:                        case 195: /* reduce AAlistterm1Term */
1313:                        {
1314:                            ArrayList list = new195();
1315:                            push(goTo(32), list);
1316:                        }
1317:                            break;
1318:                        case 196: /* reduce AAlistterm2Term */
1319:                        {
1320:                            ArrayList list = new196();
1321:                            push(goTo(32), list);
1322:                        }
1323:                            break;
1324:                        case 197: /* reduce AAsimpleterm1Term */
1325:                        {
1326:                            ArrayList list = new197();
1327:                            push(goTo(32), list);
1328:                        }
1329:                            break;
1330:                        case 198: /* reduce AAsimpleterm2Term */
1331:                        {
1332:                            ArrayList list = new198();
1333:                            push(goTo(32), list);
1334:                        }
1335:                            break;
1336:                        case 199: /* reduce AAsimpleterm3Term */
1337:                        {
1338:                            ArrayList list = new199();
1339:                            push(goTo(32), list);
1340:                        }
1341:                            break;
1342:                        case 200: /* reduce AAsimpleterm4Term */
1343:                        {
1344:                            ArrayList list = new200();
1345:                            push(goTo(32), list);
1346:                        }
1347:                            break;
1348:                        case 201: /* reduce ANullTerm */
1349:                        {
1350:                            ArrayList list = new201();
1351:                            push(goTo(32), list);
1352:                        }
1353:                            break;
1354:                        case 202: /* reduce AAlistoflistterm1ListOfListTerm */
1355:                        {
1356:                            ArrayList list = new202();
1357:                            push(goTo(33), list);
1358:                        }
1359:                            break;
1360:                        case 203: /* reduce AAlistoflistterm2ListOfListTerm */
1361:                        {
1362:                            ArrayList list = new203();
1363:                            push(goTo(33), list);
1364:                        }
1365:                            break;
1366:                        case 204: /* reduce AAnewlistterm1ListTerm */
1367:                        {
1368:                            ArrayList list = new204();
1369:                            push(goTo(34), list);
1370:                        }
1371:                            break;
1372:                        case 205: /* reduce AAnewlistterm2ListTerm */
1373:                        {
1374:                            ArrayList list = new205();
1375:                            push(goTo(34), list);
1376:                        }
1377:                            break;
1378:                        case 206: /* reduce AAsimplelistterm1ListTerm */
1379:                        {
1380:                            ArrayList list = new206();
1381:                            push(goTo(34), list);
1382:                        }
1383:                            break;
1384:                        case 207: /* reduce AAsimplelistterm2ListTerm */
1385:                        {
1386:                            ArrayList list = new207();
1387:                            push(goTo(34), list);
1388:                        }
1389:                            break;
1390:                        case 208: /* reduce AAsimplelistterm3ListTerm */
1391:                        {
1392:                            ArrayList list = new208();
1393:                            push(goTo(34), list);
1394:                        }
1395:                            break;
1396:                        case 209: /* reduce AAsimplelistterm4ListTerm */
1397:                        {
1398:                            ArrayList list = new209();
1399:                            push(goTo(34), list);
1400:                        }
1401:                            break;
1402:                        case 210: /* reduce AListTermTail */
1403:                        {
1404:                            ArrayList list = new210();
1405:                            push(goTo(35), list);
1406:                        }
1407:                            break;
1408:                        case 211: /* reduce ASimpleTermTail */
1409:                        {
1410:                            ArrayList list = new211();
1411:                            push(goTo(36), list);
1412:                        }
1413:                            break;
1414:                        case 212: /* reduce AAprodname1ProdName */
1415:                        {
1416:                            ArrayList list = new212();
1417:                            push(goTo(37), list);
1418:                        }
1419:                            break;
1420:                        case 213: /* reduce AAprodname2ProdName */
1421:                        {
1422:                            ArrayList list = new213();
1423:                            push(goTo(37), list);
1424:                        }
1425:                            break;
1426:                        case 214: /* reduce AProdNameTail */
1427:                        {
1428:                            ArrayList list = new214();
1429:                            push(goTo(38), list);
1430:                        }
1431:                            break;
1432:                        case 215: /* reduce AAparams1Params */
1433:                        {
1434:                            ArrayList list = new215();
1435:                            push(goTo(39), list);
1436:                        }
1437:                            break;
1438:                        case 216: /* reduce AAparams2Params */
1439:                        {
1440:                            ArrayList list = new216();
1441:                            push(goTo(39), list);
1442:                        }
1443:                            break;
1444:                        case 217: /* reduce AParamsTail */
1445:                        {
1446:                            ArrayList list = new217();
1447:                            push(goTo(40), list);
1448:                        }
1449:                            break;
1450:                        case 218: /* reduce AAltName */
1451:                        {
1452:                            ArrayList list = new218();
1453:                            push(goTo(41), list);
1454:                        }
1455:                            break;
1456:                        case 219: /* reduce AAelem1Elem */
1457:                        {
1458:                            ArrayList list = new219();
1459:                            push(goTo(42), list);
1460:                        }
1461:                            break;
1462:                        case 220: /* reduce AAelem2Elem */
1463:                        {
1464:                            ArrayList list = new220();
1465:                            push(goTo(42), list);
1466:                        }
1467:                            break;
1468:                        case 221: /* reduce AAelem3Elem */
1469:                        {
1470:                            ArrayList list = new221();
1471:                            push(goTo(42), list);
1472:                        }
1473:                            break;
1474:                        case 222: /* reduce AAelem4Elem */
1475:                        {
1476:                            ArrayList list = new222();
1477:                            push(goTo(42), list);
1478:                        }
1479:                            break;
1480:                        case 223: /* reduce AAelem5Elem */
1481:                        {
1482:                            ArrayList list = new223();
1483:                            push(goTo(42), list);
1484:                        }
1485:                            break;
1486:                        case 224: /* reduce AAelem6Elem */
1487:                        {
1488:                            ArrayList list = new224();
1489:                            push(goTo(42), list);
1490:                        }
1491:                            break;
1492:                        case 225: /* reduce AAelem7Elem */
1493:                        {
1494:                            ArrayList list = new225();
1495:                            push(goTo(42), list);
1496:                        }
1497:                            break;
1498:                        case 226: /* reduce AAelem8Elem */
1499:                        {
1500:                            ArrayList list = new226();
1501:                            push(goTo(42), list);
1502:                        }
1503:                            break;
1504:                        case 227: /* reduce AElemName */
1505:                        {
1506:                            ArrayList list = new227();
1507:                            push(goTo(43), list);
1508:                        }
1509:                            break;
1510:                        case 228: /* reduce ATokenSpecifier */
1511:                        {
1512:                            ArrayList list = new228();
1513:                            push(goTo(44), list);
1514:                        }
1515:                            break;
1516:                        case 229: /* reduce AProductionSpecifier */
1517:                        {
1518:                            ArrayList list = new229();
1519:                            push(goTo(44), list);
1520:                        }
1521:                            break;
1522:                        case 230: /* reduce AAst */
1523:                        {
1524:                            ArrayList list = new230();
1525:                            push(goTo(45), list);
1526:                        }
1527:                            break;
1528:                        case 231: /* reduce AAstProd */
1529:                        {
1530:                            ArrayList list = new231();
1531:                            push(goTo(46), list);
1532:                        }
1533:                            break;
1534:                        case 232: /* reduce AAastalts1AstAlts */
1535:                        {
1536:                            ArrayList list = new232();
1537:                            push(goTo(47), list);
1538:                        }
1539:                            break;
1540:                        case 233: /* reduce AAastalts2AstAlts */
1541:                        {
1542:                            ArrayList list = new233();
1543:                            push(goTo(47), list);
1544:                        }
1545:                            break;
1546:                        case 234: /* reduce AAstAltsTail */
1547:                        {
1548:                            ArrayList list = new234();
1549:                            push(goTo(48), list);
1550:                        }
1551:                            break;
1552:                        case 235: /* reduce AAastalt1AstAlt */
1553:                        {
1554:                            ArrayList list = new235();
1555:                            push(goTo(49), list);
1556:                        }
1557:                            break;
1558:                        case 236: /* reduce AAastalt2AstAlt */
1559:                        {
1560:                            ArrayList list = new236();
1561:                            push(goTo(49), list);
1562:                        }
1563:                            break;
1564:                        case 237: /* reduce AAastalt3AstAlt */
1565:                        {
1566:                            ArrayList list = new237();
1567:                            push(goTo(49), list);
1568:                        }
1569:                            break;
1570:                        case 238: /* reduce AAastalt4AstAlt */
1571:                        {
1572:                            ArrayList list = new238();
1573:                            push(goTo(49), list);
1574:                        }
1575:                            break;
1576:                        case 239: /* reduce ATerminal$PkgNameTail */
1577:                        {
1578:                            ArrayList list = new239();
1579:                            push(goTo(50), list);
1580:                        }
1581:                            break;
1582:                        case 240: /* reduce ANonTerminal$PkgNameTail */
1583:                        {
1584:                            ArrayList list = new240();
1585:                            push(goTo(50), list);
1586:                        }
1587:                            break;
1588:                        case 241: /* reduce ATerminal$HelperDef */
1589:                        {
1590:                            ArrayList list = new241();
1591:                            push(goTo(51), list);
1592:                        }
1593:                            break;
1594:                        case 242: /* reduce ANonTerminal$HelperDef */
1595:                        {
1596:                            ArrayList list = new242();
1597:                            push(goTo(51), list);
1598:                        }
1599:                            break;
1600:                        case 243: /* reduce ATerminal$IdListTail */
1601:                        {
1602:                            ArrayList list = new243();
1603:                            push(goTo(52), list);
1604:                        }
1605:                            break;
1606:                        case 244: /* reduce ANonTerminal$IdListTail */
1607:                        {
1608:                            ArrayList list = new244();
1609:                            push(goTo(52), list);
1610:                        }
1611:                            break;
1612:                        case 245: /* reduce ATerminal$TokenDef */
1613:                        {
1614:                            ArrayList list = new245();
1615:                            push(goTo(53), list);
1616:                        }
1617:                            break;
1618:                        case 246: /* reduce ANonTerminal$TokenDef */
1619:                        {
1620:                            ArrayList list = new246();
1621:                            push(goTo(53), list);
1622:                        }
1623:                            break;
1624:                        case 247: /* reduce ATerminal$StateListTail */
1625:                        {
1626:                            ArrayList list = new247();
1627:                            push(goTo(54), list);
1628:                        }
1629:                            break;
1630:                        case 248: /* reduce ANonTerminal$StateListTail */
1631:                        {
1632:                            ArrayList list = new248();
1633:                            push(goTo(54), list);
1634:                        }
1635:                            break;
1636:                        case 249: /* reduce ATerminal$RegExpTail */
1637:                        {
1638:                            ArrayList list = new249();
1639:                            push(goTo(55), list);
1640:                        }
1641:                            break;
1642:                        case 250: /* reduce ANonTerminal$RegExpTail */
1643:                        {
1644:                            ArrayList list = new250();
1645:                            push(goTo(55), list);
1646:                        }
1647:                            break;
1648:                        case 251: /* reduce ATerminal$UnExp */
1649:                        {
1650:                            ArrayList list = new251();
1651:                            push(goTo(56), list);
1652:                        }
1653:                            break;
1654:                        case 252: /* reduce ANonTerminal$UnExp */
1655:                        {
1656:                            ArrayList list = new252();
1657:                            push(goTo(56), list);
1658:                        }
1659:                            break;
1660:                        case 253: /* reduce ATerminal$Prod */
1661:                        {
1662:                            ArrayList list = new253();
1663:                            push(goTo(57), list);
1664:                        }
1665:                            break;
1666:                        case 254: /* reduce ANonTerminal$Prod */
1667:                        {
1668:                            ArrayList list = new254();
1669:                            push(goTo(57), list);
1670:                        }
1671:                            break;
1672:                        case 255: /* reduce ATerminal$Elem */
1673:                        {
1674:                            ArrayList list = new255();
1675:                            push(goTo(58), list);
1676:                        }
1677:                            break;
1678:                        case 256: /* reduce ANonTerminal$Elem */
1679:                        {
1680:                            ArrayList list = new256();
1681:                            push(goTo(58), list);
1682:                        }
1683:                            break;
1684:                        case 257: /* reduce ATerminal$AltsTail */
1685:                        {
1686:                            ArrayList list = new257();
1687:                            push(goTo(59), list);
1688:                        }
1689:                            break;
1690:                        case 258: /* reduce ANonTerminal$AltsTail */
1691:                        {
1692:                            ArrayList list = new258();
1693:                            push(goTo(59), list);
1694:                        }
1695:                            break;
1696:                        case 259: /* reduce ATerminal$Term */
1697:                        {
1698:                            ArrayList list = new259();
1699:                            push(goTo(60), list);
1700:                        }
1701:                            break;
1702:                        case 260: /* reduce ANonTerminal$Term */
1703:                        {
1704:                            ArrayList list = new260();
1705:                            push(goTo(60), list);
1706:                        }
1707:                            break;
1708:                        case 261: /* reduce ATerminal$ListTermTail */
1709:                        {
1710:                            ArrayList list = new261();
1711:                            push(goTo(61), list);
1712:                        }
1713:                            break;
1714:                        case 262: /* reduce ANonTerminal$ListTermTail */
1715:                        {
1716:                            ArrayList list = new262();
1717:                            push(goTo(61), list);
1718:                        }
1719:                            break;
1720:                        case 263: /* reduce ATerminal$ParamsTail */
1721:                        {
1722:                            ArrayList list = new263();
1723:                            push(goTo(62), list);
1724:                        }
1725:                            break;
1726:                        case 264: /* reduce ANonTerminal$ParamsTail */
1727:                        {
1728:                            ArrayList list = new264();
1729:                            push(goTo(62), list);
1730:                        }
1731:                            break;
1732:                        case 265: /* reduce ATerminal$AstProd */
1733:                        {
1734:                            ArrayList list = new265();
1735:                            push(goTo(63), list);
1736:                        }
1737:                            break;
1738:                        case 266: /* reduce ANonTerminal$AstProd */
1739:                        {
1740:                            ArrayList list = new266();
1741:                            push(goTo(63), list);
1742:                        }
1743:                            break;
1744:                        case 267: /* reduce ATerminal$AstAltsTail */
1745:                        {
1746:                            ArrayList list = new267();
1747:                            push(goTo(64), list);
1748:                        }
1749:                            break;
1750:                        case 268: /* reduce ANonTerminal$AstAltsTail */
1751:                        {
1752:                            ArrayList list = new268();
1753:                            push(goTo(64), list);
1754:                        }
1755:                            break;
1756:                        }
1757:                        break;
1758:                    case ACCEPT: {
1759:                        EOF node2 = (EOF) lexer.next();
1760:                        PGrammar node1 = (PGrammar) ((ArrayList) pop()).get(0);
1761:                        Start node = new Start(node1, node2);
1762:                        return node;
1763:                    }
1764:                    case ERROR:
1765:                        throw new ParserException(last_token, "[" + last_line
1766:                                + "," + last_pos + "] "
1767:                                + errorMessages[errors[action[1]]]);
1768:                    }
1769:                }
1770:            }
1771:
1772:            ArrayList new0() /* reduce AAgrammar1Grammar */
1773:            {
1774:                ArrayList nodeList = new ArrayList();
1775:
1776:                PGrammar pgrammarNode1;
1777:                {
1778:                    TypedLinkedList listNode2 = new TypedLinkedList();
1779:                    Object nullNode3 = null;
1780:                    Object nullNode4 = null;
1781:                    Object nullNode5 = null;
1782:                    Object nullNode6 = null;
1783:                    Object nullNode7 = null;
1784:                    Object nullNode8 = null;
1785:                    {
1786:                    }
1787:
1788:                    pgrammarNode1 = new AGrammar(listNode2, null, null, null,
1789:                            null, null, null);
1790:                }
1791:                nodeList.add(pgrammarNode1);
1792:                return nodeList;
1793:            }
1794:
1795:            ArrayList new1() /* reduce AAgrammar2Grammar */
1796:            {
1797:                ArrayList nodeList = new ArrayList();
1798:
1799:                ArrayList nodeArrayList1 = (ArrayList) pop();
1800:                PGrammar pgrammarNode1;
1801:                {
1802:                    TypedLinkedList listNode3 = new TypedLinkedList();
1803:                    Object nullNode4 = null;
1804:                    Object nullNode5 = null;
1805:                    Object nullNode6 = null;
1806:                    Object nullNode7 = null;
1807:                    Object nullNode8 = null;
1808:                    Object nullNode9 = null;
1809:                    {
1810:                        TypedLinkedList listNode2 = new TypedLinkedList();
1811:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
1812:                        if (listNode2 != null) {
1813:                            listNode3.addAll(listNode2);
1814:                        }
1815:                    }
1816:
1817:                    pgrammarNode1 = new AGrammar(listNode3, null, null, null,
1818:                            null, null, null);
1819:                }
1820:                nodeList.add(pgrammarNode1);
1821:                return nodeList;
1822:            }
1823:
1824:            ArrayList new2() /* reduce AAgrammar3Grammar */
1825:            {
1826:                ArrayList nodeList = new ArrayList();
1827:
1828:                ArrayList nodeArrayList1 = (ArrayList) pop();
1829:                PGrammar pgrammarNode1;
1830:                {
1831:                    TypedLinkedList listNode2 = new TypedLinkedList();
1832:                    PHelpers phelpersNode3;
1833:                    Object nullNode4 = null;
1834:                    Object nullNode5 = null;
1835:                    Object nullNode6 = null;
1836:                    Object nullNode7 = null;
1837:                    Object nullNode8 = null;
1838:                    {
1839:                    }
1840:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
1841:
1842:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
1843:                            null, null, null, null, null);
1844:                }
1845:                nodeList.add(pgrammarNode1);
1846:                return nodeList;
1847:            }
1848:
1849:            ArrayList new3() /* reduce AAgrammar4Grammar */
1850:            {
1851:                ArrayList nodeList = new ArrayList();
1852:
1853:                ArrayList nodeArrayList2 = (ArrayList) pop();
1854:                ArrayList nodeArrayList1 = (ArrayList) pop();
1855:                PGrammar pgrammarNode1;
1856:                {
1857:                    TypedLinkedList listNode3 = new TypedLinkedList();
1858:                    PHelpers phelpersNode4;
1859:                    Object nullNode5 = null;
1860:                    Object nullNode6 = null;
1861:                    Object nullNode7 = null;
1862:                    Object nullNode8 = null;
1863:                    Object nullNode9 = null;
1864:                    {
1865:                        TypedLinkedList listNode2 = new TypedLinkedList();
1866:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
1867:                        if (listNode2 != null) {
1868:                            listNode3.addAll(listNode2);
1869:                        }
1870:                    }
1871:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
1872:
1873:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
1874:                            null, null, null, null, null);
1875:                }
1876:                nodeList.add(pgrammarNode1);
1877:                return nodeList;
1878:            }
1879:
1880:            ArrayList new4() /* reduce AAgrammar5Grammar */
1881:            {
1882:                ArrayList nodeList = new ArrayList();
1883:
1884:                ArrayList nodeArrayList1 = (ArrayList) pop();
1885:                PGrammar pgrammarNode1;
1886:                {
1887:                    TypedLinkedList listNode2 = new TypedLinkedList();
1888:                    Object nullNode3 = null;
1889:                    PStates pstatesNode4;
1890:                    Object nullNode5 = null;
1891:                    Object nullNode6 = null;
1892:                    Object nullNode7 = null;
1893:                    Object nullNode8 = null;
1894:                    {
1895:                    }
1896:                    pstatesNode4 = (PStates) nodeArrayList1.get(0);
1897:
1898:                    pgrammarNode1 = new AGrammar(listNode2, null, pstatesNode4,
1899:                            null, null, null, null);
1900:                }
1901:                nodeList.add(pgrammarNode1);
1902:                return nodeList;
1903:            }
1904:
1905:            ArrayList new5() /* reduce AAgrammar6Grammar */
1906:            {
1907:                ArrayList nodeList = new ArrayList();
1908:
1909:                ArrayList nodeArrayList2 = (ArrayList) pop();
1910:                ArrayList nodeArrayList1 = (ArrayList) pop();
1911:                PGrammar pgrammarNode1;
1912:                {
1913:                    TypedLinkedList listNode3 = new TypedLinkedList();
1914:                    Object nullNode4 = null;
1915:                    PStates pstatesNode5;
1916:                    Object nullNode6 = null;
1917:                    Object nullNode7 = null;
1918:                    Object nullNode8 = null;
1919:                    Object nullNode9 = null;
1920:                    {
1921:                        TypedLinkedList listNode2 = new TypedLinkedList();
1922:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
1923:                        if (listNode2 != null) {
1924:                            listNode3.addAll(listNode2);
1925:                        }
1926:                    }
1927:                    pstatesNode5 = (PStates) nodeArrayList2.get(0);
1928:
1929:                    pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5,
1930:                            null, null, null, null);
1931:                }
1932:                nodeList.add(pgrammarNode1);
1933:                return nodeList;
1934:            }
1935:
1936:            ArrayList new6() /* reduce AAgrammar7Grammar */
1937:            {
1938:                ArrayList nodeList = new ArrayList();
1939:
1940:                ArrayList nodeArrayList2 = (ArrayList) pop();
1941:                ArrayList nodeArrayList1 = (ArrayList) pop();
1942:                PGrammar pgrammarNode1;
1943:                {
1944:                    TypedLinkedList listNode2 = new TypedLinkedList();
1945:                    PHelpers phelpersNode3;
1946:                    PStates pstatesNode4;
1947:                    Object nullNode5 = null;
1948:                    Object nullNode6 = null;
1949:                    Object nullNode7 = null;
1950:                    Object nullNode8 = null;
1951:                    {
1952:                    }
1953:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
1954:                    pstatesNode4 = (PStates) nodeArrayList2.get(0);
1955:
1956:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
1957:                            pstatesNode4, null, null, null, null);
1958:                }
1959:                nodeList.add(pgrammarNode1);
1960:                return nodeList;
1961:            }
1962:
1963:            ArrayList new7() /* reduce AAgrammar8Grammar */
1964:            {
1965:                ArrayList nodeList = new ArrayList();
1966:
1967:                ArrayList nodeArrayList3 = (ArrayList) pop();
1968:                ArrayList nodeArrayList2 = (ArrayList) pop();
1969:                ArrayList nodeArrayList1 = (ArrayList) pop();
1970:                PGrammar pgrammarNode1;
1971:                {
1972:                    TypedLinkedList listNode3 = new TypedLinkedList();
1973:                    PHelpers phelpersNode4;
1974:                    PStates pstatesNode5;
1975:                    Object nullNode6 = null;
1976:                    Object nullNode7 = null;
1977:                    Object nullNode8 = null;
1978:                    Object nullNode9 = null;
1979:                    {
1980:                        TypedLinkedList listNode2 = new TypedLinkedList();
1981:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
1982:                        if (listNode2 != null) {
1983:                            listNode3.addAll(listNode2);
1984:                        }
1985:                    }
1986:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
1987:                    pstatesNode5 = (PStates) nodeArrayList3.get(0);
1988:
1989:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
1990:                            pstatesNode5, null, null, null, null);
1991:                }
1992:                nodeList.add(pgrammarNode1);
1993:                return nodeList;
1994:            }
1995:
1996:            ArrayList new8() /* reduce AAgrammar9Grammar */
1997:            {
1998:                ArrayList nodeList = new ArrayList();
1999:
2000:                ArrayList nodeArrayList1 = (ArrayList) pop();
2001:                PGrammar pgrammarNode1;
2002:                {
2003:                    TypedLinkedList listNode2 = new TypedLinkedList();
2004:                    Object nullNode3 = null;
2005:                    Object nullNode4 = null;
2006:                    PTokens ptokensNode5;
2007:                    Object nullNode6 = null;
2008:                    Object nullNode7 = null;
2009:                    Object nullNode8 = null;
2010:                    {
2011:                    }
2012:                    ptokensNode5 = (PTokens) nodeArrayList1.get(0);
2013:
2014:                    pgrammarNode1 = new AGrammar(listNode2, null, null,
2015:                            ptokensNode5, null, null, null);
2016:                }
2017:                nodeList.add(pgrammarNode1);
2018:                return nodeList;
2019:            }
2020:
2021:            ArrayList new9() /* reduce AAgrammar10Grammar */
2022:            {
2023:                ArrayList nodeList = new ArrayList();
2024:
2025:                ArrayList nodeArrayList2 = (ArrayList) pop();
2026:                ArrayList nodeArrayList1 = (ArrayList) pop();
2027:                PGrammar pgrammarNode1;
2028:                {
2029:                    TypedLinkedList listNode3 = new TypedLinkedList();
2030:                    Object nullNode4 = null;
2031:                    Object nullNode5 = null;
2032:                    PTokens ptokensNode6;
2033:                    Object nullNode7 = null;
2034:                    Object nullNode8 = null;
2035:                    Object nullNode9 = null;
2036:                    {
2037:                        TypedLinkedList listNode2 = new TypedLinkedList();
2038:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
2039:                        if (listNode2 != null) {
2040:                            listNode3.addAll(listNode2);
2041:                        }
2042:                    }
2043:                    ptokensNode6 = (PTokens) nodeArrayList2.get(0);
2044:
2045:                    pgrammarNode1 = new AGrammar(listNode3, null, null,
2046:                            ptokensNode6, null, null, null);
2047:                }
2048:                nodeList.add(pgrammarNode1);
2049:                return nodeList;
2050:            }
2051:
2052:            ArrayList new10() /* reduce AAgrammar11Grammar */
2053:            {
2054:                ArrayList nodeList = new ArrayList();
2055:
2056:                ArrayList nodeArrayList2 = (ArrayList) pop();
2057:                ArrayList nodeArrayList1 = (ArrayList) pop();
2058:                PGrammar pgrammarNode1;
2059:                {
2060:                    TypedLinkedList listNode2 = new TypedLinkedList();
2061:                    PHelpers phelpersNode3;
2062:                    Object nullNode4 = null;
2063:                    PTokens ptokensNode5;
2064:                    Object nullNode6 = null;
2065:                    Object nullNode7 = null;
2066:                    Object nullNode8 = null;
2067:                    {
2068:                    }
2069:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
2070:                    ptokensNode5 = (PTokens) nodeArrayList2.get(0);
2071:
2072:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
2073:                            null, ptokensNode5, null, null, null);
2074:                }
2075:                nodeList.add(pgrammarNode1);
2076:                return nodeList;
2077:            }
2078:
2079:            ArrayList new11() /* reduce AAgrammar12Grammar */
2080:            {
2081:                ArrayList nodeList = new ArrayList();
2082:
2083:                ArrayList nodeArrayList3 = (ArrayList) pop();
2084:                ArrayList nodeArrayList2 = (ArrayList) pop();
2085:                ArrayList nodeArrayList1 = (ArrayList) pop();
2086:                PGrammar pgrammarNode1;
2087:                {
2088:                    TypedLinkedList listNode3 = new TypedLinkedList();
2089:                    PHelpers phelpersNode4;
2090:                    Object nullNode5 = null;
2091:                    PTokens ptokensNode6;
2092:                    Object nullNode7 = null;
2093:                    Object nullNode8 = null;
2094:                    Object nullNode9 = null;
2095:                    {
2096:                        TypedLinkedList listNode2 = new TypedLinkedList();
2097:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
2098:                        if (listNode2 != null) {
2099:                            listNode3.addAll(listNode2);
2100:                        }
2101:                    }
2102:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
2103:                    ptokensNode6 = (PTokens) nodeArrayList3.get(0);
2104:
2105:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
2106:                            null, ptokensNode6, null, null, null);
2107:                }
2108:                nodeList.add(pgrammarNode1);
2109:                return nodeList;
2110:            }
2111:
2112:            ArrayList new12() /* reduce AAgrammar13Grammar */
2113:            {
2114:                ArrayList nodeList = new ArrayList();
2115:
2116:                ArrayList nodeArrayList2 = (ArrayList) pop();
2117:                ArrayList nodeArrayList1 = (ArrayList) pop();
2118:                PGrammar pgrammarNode1;
2119:                {
2120:                    TypedLinkedList listNode2 = new TypedLinkedList();
2121:                    Object nullNode3 = null;
2122:                    PStates pstatesNode4;
2123:                    PTokens ptokensNode5;
2124:                    Object nullNode6 = null;
2125:                    Object nullNode7 = null;
2126:                    Object nullNode8 = null;
2127:                    {
2128:                    }
2129:                    pstatesNode4 = (PStates) nodeArrayList1.get(0);
2130:                    ptokensNode5 = (PTokens) nodeArrayList2.get(0);
2131:
2132:                    pgrammarNode1 = new AGrammar(listNode2, null, pstatesNode4,
2133:                            ptokensNode5, null, null, null);
2134:                }
2135:                nodeList.add(pgrammarNode1);
2136:                return nodeList;
2137:            }
2138:
2139:            ArrayList new13() /* reduce AAgrammar14Grammar */
2140:            {
2141:                ArrayList nodeList = new ArrayList();
2142:
2143:                ArrayList nodeArrayList3 = (ArrayList) pop();
2144:                ArrayList nodeArrayList2 = (ArrayList) pop();
2145:                ArrayList nodeArrayList1 = (ArrayList) pop();
2146:                PGrammar pgrammarNode1;
2147:                {
2148:                    TypedLinkedList listNode3 = new TypedLinkedList();
2149:                    Object nullNode4 = null;
2150:                    PStates pstatesNode5;
2151:                    PTokens ptokensNode6;
2152:                    Object nullNode7 = null;
2153:                    Object nullNode8 = null;
2154:                    Object nullNode9 = null;
2155:                    {
2156:                        TypedLinkedList listNode2 = new TypedLinkedList();
2157:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
2158:                        if (listNode2 != null) {
2159:                            listNode3.addAll(listNode2);
2160:                        }
2161:                    }
2162:                    pstatesNode5 = (PStates) nodeArrayList2.get(0);
2163:                    ptokensNode6 = (PTokens) nodeArrayList3.get(0);
2164:
2165:                    pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5,
2166:                            ptokensNode6, null, null, null);
2167:                }
2168:                nodeList.add(pgrammarNode1);
2169:                return nodeList;
2170:            }
2171:
2172:            ArrayList new14() /* reduce AAgrammar15Grammar */
2173:            {
2174:                ArrayList nodeList = new ArrayList();
2175:
2176:                ArrayList nodeArrayList3 = (ArrayList) pop();
2177:                ArrayList nodeArrayList2 = (ArrayList) pop();
2178:                ArrayList nodeArrayList1 = (ArrayList) pop();
2179:                PGrammar pgrammarNode1;
2180:                {
2181:                    TypedLinkedList listNode2 = new TypedLinkedList();
2182:                    PHelpers phelpersNode3;
2183:                    PStates pstatesNode4;
2184:                    PTokens ptokensNode5;
2185:                    Object nullNode6 = null;
2186:                    Object nullNode7 = null;
2187:                    Object nullNode8 = null;
2188:                    {
2189:                    }
2190:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
2191:                    pstatesNode4 = (PStates) nodeArrayList2.get(0);
2192:                    ptokensNode5 = (PTokens) nodeArrayList3.get(0);
2193:
2194:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
2195:                            pstatesNode4, ptokensNode5, null, null, null);
2196:                }
2197:                nodeList.add(pgrammarNode1);
2198:                return nodeList;
2199:            }
2200:
2201:            ArrayList new15() /* reduce AAgrammar16Grammar */
2202:            {
2203:                ArrayList nodeList = new ArrayList();
2204:
2205:                ArrayList nodeArrayList4 = (ArrayList) pop();
2206:                ArrayList nodeArrayList3 = (ArrayList) pop();
2207:                ArrayList nodeArrayList2 = (ArrayList) pop();
2208:                ArrayList nodeArrayList1 = (ArrayList) pop();
2209:                PGrammar pgrammarNode1;
2210:                {
2211:                    TypedLinkedList listNode3 = new TypedLinkedList();
2212:                    PHelpers phelpersNode4;
2213:                    PStates pstatesNode5;
2214:                    PTokens ptokensNode6;
2215:                    Object nullNode7 = null;
2216:                    Object nullNode8 = null;
2217:                    Object nullNode9 = null;
2218:                    {
2219:                        TypedLinkedList listNode2 = new TypedLinkedList();
2220:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
2221:                        if (listNode2 != null) {
2222:                            listNode3.addAll(listNode2);
2223:                        }
2224:                    }
2225:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
2226:                    pstatesNode5 = (PStates) nodeArrayList3.get(0);
2227:                    ptokensNode6 = (PTokens) nodeArrayList4.get(0);
2228:
2229:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
2230:                            pstatesNode5, ptokensNode6, null, null, null);
2231:                }
2232:                nodeList.add(pgrammarNode1);
2233:                return nodeList;
2234:            }
2235:
2236:            ArrayList new16() /* reduce AAgrammar17Grammar */
2237:            {
2238:                ArrayList nodeList = new ArrayList();
2239:
2240:                ArrayList nodeArrayList1 = (ArrayList) pop();
2241:                PGrammar pgrammarNode1;
2242:                {
2243:                    TypedLinkedList listNode2 = new TypedLinkedList();
2244:                    Object nullNode3 = null;
2245:                    Object nullNode4 = null;
2246:                    Object nullNode5 = null;
2247:                    PIgnTokens pigntokensNode6;
2248:                    Object nullNode7 = null;
2249:                    Object nullNode8 = null;
2250:                    {
2251:                    }
2252:                    pigntokensNode6 = (PIgnTokens) nodeArrayList1.get(0);
2253:
2254:                    pgrammarNode1 = new AGrammar(listNode2, null, null, null,
2255:                            pigntokensNode6, null, null);
2256:                }
2257:                nodeList.add(pgrammarNode1);
2258:                return nodeList;
2259:            }
2260:
2261:            ArrayList new17() /* reduce AAgrammar18Grammar */
2262:            {
2263:                ArrayList nodeList = new ArrayList();
2264:
2265:                ArrayList nodeArrayList2 = (ArrayList) pop();
2266:                ArrayList nodeArrayList1 = (ArrayList) pop();
2267:                PGrammar pgrammarNode1;
2268:                {
2269:                    TypedLinkedList listNode3 = new TypedLinkedList();
2270:                    Object nullNode4 = null;
2271:                    Object nullNode5 = null;
2272:                    Object nullNode6 = null;
2273:                    PIgnTokens pigntokensNode7;
2274:                    Object nullNode8 = null;
2275:                    Object nullNode9 = null;
2276:                    {
2277:                        TypedLinkedList listNode2 = new TypedLinkedList();
2278:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
2279:                        if (listNode2 != null) {
2280:                            listNode3.addAll(listNode2);
2281:                        }
2282:                    }
2283:                    pigntokensNode7 = (PIgnTokens) nodeArrayList2.get(0);
2284:
2285:                    pgrammarNode1 = new AGrammar(listNode3, null, null, null,
2286:                            pigntokensNode7, null, null);
2287:                }
2288:                nodeList.add(pgrammarNode1);
2289:                return nodeList;
2290:            }
2291:
2292:            ArrayList new18() /* reduce AAgrammar19Grammar */
2293:            {
2294:                ArrayList nodeList = new ArrayList();
2295:
2296:                ArrayList nodeArrayList2 = (ArrayList) pop();
2297:                ArrayList nodeArrayList1 = (ArrayList) pop();
2298:                PGrammar pgrammarNode1;
2299:                {
2300:                    TypedLinkedList listNode2 = new TypedLinkedList();
2301:                    PHelpers phelpersNode3;
2302:                    Object nullNode4 = null;
2303:                    Object nullNode5 = null;
2304:                    PIgnTokens pigntokensNode6;
2305:                    Object nullNode7 = null;
2306:                    Object nullNode8 = null;
2307:                    {
2308:                    }
2309:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
2310:                    pigntokensNode6 = (PIgnTokens) nodeArrayList2.get(0);
2311:
2312:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
2313:                            null, null, pigntokensNode6, null, null);
2314:                }
2315:                nodeList.add(pgrammarNode1);
2316:                return nodeList;
2317:            }
2318:
2319:            ArrayList new19() /* reduce AAgrammar20Grammar */
2320:            {
2321:                ArrayList nodeList = new ArrayList();
2322:
2323:                ArrayList nodeArrayList3 = (ArrayList) pop();
2324:                ArrayList nodeArrayList2 = (ArrayList) pop();
2325:                ArrayList nodeArrayList1 = (ArrayList) pop();
2326:                PGrammar pgrammarNode1;
2327:                {
2328:                    TypedLinkedList listNode3 = new TypedLinkedList();
2329:                    PHelpers phelpersNode4;
2330:                    Object nullNode5 = null;
2331:                    Object nullNode6 = null;
2332:                    PIgnTokens pigntokensNode7;
2333:                    Object nullNode8 = null;
2334:                    Object nullNode9 = null;
2335:                    {
2336:                        TypedLinkedList listNode2 = new TypedLinkedList();
2337:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
2338:                        if (listNode2 != null) {
2339:                            listNode3.addAll(listNode2);
2340:                        }
2341:                    }
2342:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
2343:                    pigntokensNode7 = (PIgnTokens) nodeArrayList3.get(0);
2344:
2345:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
2346:                            null, null, pigntokensNode7, null, null);
2347:                }
2348:                nodeList.add(pgrammarNode1);
2349:                return nodeList;
2350:            }
2351:
2352:            ArrayList new20() /* reduce AAgrammar21Grammar */
2353:            {
2354:                ArrayList nodeList = new ArrayList();
2355:
2356:                ArrayList nodeArrayList2 = (ArrayList) pop();
2357:                ArrayList nodeArrayList1 = (ArrayList) pop();
2358:                PGrammar pgrammarNode1;
2359:                {
2360:                    TypedLinkedList listNode2 = new TypedLinkedList();
2361:                    Object nullNode3 = null;
2362:                    PStates pstatesNode4;
2363:                    Object nullNode5 = null;
2364:                    PIgnTokens pigntokensNode6;
2365:                    Object nullNode7 = null;
2366:                    Object nullNode8 = null;
2367:                    {
2368:                    }
2369:                    pstatesNode4 = (PStates) nodeArrayList1.get(0);
2370:                    pigntokensNode6 = (PIgnTokens) nodeArrayList2.get(0);
2371:
2372:                    pgrammarNode1 = new AGrammar(listNode2, null, pstatesNode4,
2373:                            null, pigntokensNode6, null, null);
2374:                }
2375:                nodeList.add(pgrammarNode1);
2376:                return nodeList;
2377:            }
2378:
2379:            ArrayList new21() /* reduce AAgrammar22Grammar */
2380:            {
2381:                ArrayList nodeList = new ArrayList();
2382:
2383:                ArrayList nodeArrayList3 = (ArrayList) pop();
2384:                ArrayList nodeArrayList2 = (ArrayList) pop();
2385:                ArrayList nodeArrayList1 = (ArrayList) pop();
2386:                PGrammar pgrammarNode1;
2387:                {
2388:                    TypedLinkedList listNode3 = new TypedLinkedList();
2389:                    Object nullNode4 = null;
2390:                    PStates pstatesNode5;
2391:                    Object nullNode6 = null;
2392:                    PIgnTokens pigntokensNode7;
2393:                    Object nullNode8 = null;
2394:                    Object nullNode9 = null;
2395:                    {
2396:                        TypedLinkedList listNode2 = new TypedLinkedList();
2397:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
2398:                        if (listNode2 != null) {
2399:                            listNode3.addAll(listNode2);
2400:                        }
2401:                    }
2402:                    pstatesNode5 = (PStates) nodeArrayList2.get(0);
2403:                    pigntokensNode7 = (PIgnTokens) nodeArrayList3.get(0);
2404:
2405:                    pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5,
2406:                            null, pigntokensNode7, null, null);
2407:                }
2408:                nodeList.add(pgrammarNode1);
2409:                return nodeList;
2410:            }
2411:
2412:            ArrayList new22() /* reduce AAgrammar23Grammar */
2413:            {
2414:                ArrayList nodeList = new ArrayList();
2415:
2416:                ArrayList nodeArrayList3 = (ArrayList) pop();
2417:                ArrayList nodeArrayList2 = (ArrayList) pop();
2418:                ArrayList nodeArrayList1 = (ArrayList) pop();
2419:                PGrammar pgrammarNode1;
2420:                {
2421:                    TypedLinkedList listNode2 = new TypedLinkedList();
2422:                    PHelpers phelpersNode3;
2423:                    PStates pstatesNode4;
2424:                    Object nullNode5 = null;
2425:                    PIgnTokens pigntokensNode6;
2426:                    Object nullNode7 = null;
2427:                    Object nullNode8 = null;
2428:                    {
2429:                    }
2430:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
2431:                    pstatesNode4 = (PStates) nodeArrayList2.get(0);
2432:                    pigntokensNode6 = (PIgnTokens) nodeArrayList3.get(0);
2433:
2434:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
2435:                            pstatesNode4, null, pigntokensNode6, null, null);
2436:                }
2437:                nodeList.add(pgrammarNode1);
2438:                return nodeList;
2439:            }
2440:
2441:            ArrayList new23() /* reduce AAgrammar24Grammar */
2442:            {
2443:                ArrayList nodeList = new ArrayList();
2444:
2445:                ArrayList nodeArrayList4 = (ArrayList) pop();
2446:                ArrayList nodeArrayList3 = (ArrayList) pop();
2447:                ArrayList nodeArrayList2 = (ArrayList) pop();
2448:                ArrayList nodeArrayList1 = (ArrayList) pop();
2449:                PGrammar pgrammarNode1;
2450:                {
2451:                    TypedLinkedList listNode3 = new TypedLinkedList();
2452:                    PHelpers phelpersNode4;
2453:                    PStates pstatesNode5;
2454:                    Object nullNode6 = null;
2455:                    PIgnTokens pigntokensNode7;
2456:                    Object nullNode8 = null;
2457:                    Object nullNode9 = null;
2458:                    {
2459:                        TypedLinkedList listNode2 = new TypedLinkedList();
2460:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
2461:                        if (listNode2 != null) {
2462:                            listNode3.addAll(listNode2);
2463:                        }
2464:                    }
2465:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
2466:                    pstatesNode5 = (PStates) nodeArrayList3.get(0);
2467:                    pigntokensNode7 = (PIgnTokens) nodeArrayList4.get(0);
2468:
2469:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
2470:                            pstatesNode5, null, pigntokensNode7, null, null);
2471:                }
2472:                nodeList.add(pgrammarNode1);
2473:                return nodeList;
2474:            }
2475:
2476:            ArrayList new24() /* reduce AAgrammar25Grammar */
2477:            {
2478:                ArrayList nodeList = new ArrayList();
2479:
2480:                ArrayList nodeArrayList2 = (ArrayList) pop();
2481:                ArrayList nodeArrayList1 = (ArrayList) pop();
2482:                PGrammar pgrammarNode1;
2483:                {
2484:                    TypedLinkedList listNode2 = new TypedLinkedList();
2485:                    Object nullNode3 = null;
2486:                    Object nullNode4 = null;
2487:                    PTokens ptokensNode5;
2488:                    PIgnTokens pigntokensNode6;
2489:                    Object nullNode7 = null;
2490:                    Object nullNode8 = null;
2491:                    {
2492:                    }
2493:                    ptokensNode5 = (PTokens) nodeArrayList1.get(0);
2494:                    pigntokensNode6 = (PIgnTokens) nodeArrayList2.get(0);
2495:
2496:                    pgrammarNode1 = new AGrammar(listNode2, null, null,
2497:                            ptokensNode5, pigntokensNode6, null, null);
2498:                }
2499:                nodeList.add(pgrammarNode1);
2500:                return nodeList;
2501:            }
2502:
2503:            ArrayList new25() /* reduce AAgrammar26Grammar */
2504:            {
2505:                ArrayList nodeList = new ArrayList();
2506:
2507:                ArrayList nodeArrayList3 = (ArrayList) pop();
2508:                ArrayList nodeArrayList2 = (ArrayList) pop();
2509:                ArrayList nodeArrayList1 = (ArrayList) pop();
2510:                PGrammar pgrammarNode1;
2511:                {
2512:                    TypedLinkedList listNode3 = new TypedLinkedList();
2513:                    Object nullNode4 = null;
2514:                    Object nullNode5 = null;
2515:                    PTokens ptokensNode6;
2516:                    PIgnTokens pigntokensNode7;
2517:                    Object nullNode8 = null;
2518:                    Object nullNode9 = null;
2519:                    {
2520:                        TypedLinkedList listNode2 = new TypedLinkedList();
2521:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
2522:                        if (listNode2 != null) {
2523:                            listNode3.addAll(listNode2);
2524:                        }
2525:                    }
2526:                    ptokensNode6 = (PTokens) nodeArrayList2.get(0);
2527:                    pigntokensNode7 = (PIgnTokens) nodeArrayList3.get(0);
2528:
2529:                    pgrammarNode1 = new AGrammar(listNode3, null, null,
2530:                            ptokensNode6, pigntokensNode7, null, null);
2531:                }
2532:                nodeList.add(pgrammarNode1);
2533:                return nodeList;
2534:            }
2535:
2536:            ArrayList new26() /* reduce AAgrammar27Grammar */
2537:            {
2538:                ArrayList nodeList = new ArrayList();
2539:
2540:                ArrayList nodeArrayList3 = (ArrayList) pop();
2541:                ArrayList nodeArrayList2 = (ArrayList) pop();
2542:                ArrayList nodeArrayList1 = (ArrayList) pop();
2543:                PGrammar pgrammarNode1;
2544:                {
2545:                    TypedLinkedList listNode2 = new TypedLinkedList();
2546:                    PHelpers phelpersNode3;
2547:                    Object nullNode4 = null;
2548:                    PTokens ptokensNode5;
2549:                    PIgnTokens pigntokensNode6;
2550:                    Object nullNode7 = null;
2551:                    Object nullNode8 = null;
2552:                    {
2553:                    }
2554:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
2555:                    ptokensNode5 = (PTokens) nodeArrayList2.get(0);
2556:                    pigntokensNode6 = (PIgnTokens) nodeArrayList3.get(0);
2557:
2558:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
2559:                            null, ptokensNode5, pigntokensNode6, null, null);
2560:                }
2561:                nodeList.add(pgrammarNode1);
2562:                return nodeList;
2563:            }
2564:
2565:            ArrayList new27() /* reduce AAgrammar28Grammar */
2566:            {
2567:                ArrayList nodeList = new ArrayList();
2568:
2569:                ArrayList nodeArrayList4 = (ArrayList) pop();
2570:                ArrayList nodeArrayList3 = (ArrayList) pop();
2571:                ArrayList nodeArrayList2 = (ArrayList) pop();
2572:                ArrayList nodeArrayList1 = (ArrayList) pop();
2573:                PGrammar pgrammarNode1;
2574:                {
2575:                    TypedLinkedList listNode3 = new TypedLinkedList();
2576:                    PHelpers phelpersNode4;
2577:                    Object nullNode5 = null;
2578:                    PTokens ptokensNode6;
2579:                    PIgnTokens pigntokensNode7;
2580:                    Object nullNode8 = null;
2581:                    Object nullNode9 = null;
2582:                    {
2583:                        TypedLinkedList listNode2 = new TypedLinkedList();
2584:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
2585:                        if (listNode2 != null) {
2586:                            listNode3.addAll(listNode2);
2587:                        }
2588:                    }
2589:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
2590:                    ptokensNode6 = (PTokens) nodeArrayList3.get(0);
2591:                    pigntokensNode7 = (PIgnTokens) nodeArrayList4.get(0);
2592:
2593:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
2594:                            null, ptokensNode6, pigntokensNode7, null, null);
2595:                }
2596:                nodeList.add(pgrammarNode1);
2597:                return nodeList;
2598:            }
2599:
2600:            ArrayList new28() /* reduce AAgrammar29Grammar */
2601:            {
2602:                ArrayList nodeList = new ArrayList();
2603:
2604:                ArrayList nodeArrayList3 = (ArrayList) pop();
2605:                ArrayList nodeArrayList2 = (ArrayList) pop();
2606:                ArrayList nodeArrayList1 = (ArrayList) pop();
2607:                PGrammar pgrammarNode1;
2608:                {
2609:                    TypedLinkedList listNode2 = new TypedLinkedList();
2610:                    Object nullNode3 = null;
2611:                    PStates pstatesNode4;
2612:                    PTokens ptokensNode5;
2613:                    PIgnTokens pigntokensNode6;
2614:                    Object nullNode7 = null;
2615:                    Object nullNode8 = null;
2616:                    {
2617:                    }
2618:                    pstatesNode4 = (PStates) nodeArrayList1.get(0);
2619:                    ptokensNode5 = (PTokens) nodeArrayList2.get(0);
2620:                    pigntokensNode6 = (PIgnTokens) nodeArrayList3.get(0);
2621:
2622:                    pgrammarNode1 = new AGrammar(listNode2, null, pstatesNode4,
2623:                            ptokensNode5, pigntokensNode6, null, null);
2624:                }
2625:                nodeList.add(pgrammarNode1);
2626:                return nodeList;
2627:            }
2628:
2629:            ArrayList new29() /* reduce AAgrammar30Grammar */
2630:            {
2631:                ArrayList nodeList = new ArrayList();
2632:
2633:                ArrayList nodeArrayList4 = (ArrayList) pop();
2634:                ArrayList nodeArrayList3 = (ArrayList) pop();
2635:                ArrayList nodeArrayList2 = (ArrayList) pop();
2636:                ArrayList nodeArrayList1 = (ArrayList) pop();
2637:                PGrammar pgrammarNode1;
2638:                {
2639:                    TypedLinkedList listNode3 = new TypedLinkedList();
2640:                    Object nullNode4 = null;
2641:                    PStates pstatesNode5;
2642:                    PTokens ptokensNode6;
2643:                    PIgnTokens pigntokensNode7;
2644:                    Object nullNode8 = null;
2645:                    Object nullNode9 = null;
2646:                    {
2647:                        TypedLinkedList listNode2 = new TypedLinkedList();
2648:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
2649:                        if (listNode2 != null) {
2650:                            listNode3.addAll(listNode2);
2651:                        }
2652:                    }
2653:                    pstatesNode5 = (PStates) nodeArrayList2.get(0);
2654:                    ptokensNode6 = (PTokens) nodeArrayList3.get(0);
2655:                    pigntokensNode7 = (PIgnTokens) nodeArrayList4.get(0);
2656:
2657:                    pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5,
2658:                            ptokensNode6, pigntokensNode7, null, null);
2659:                }
2660:                nodeList.add(pgrammarNode1);
2661:                return nodeList;
2662:            }
2663:
2664:            ArrayList new30() /* reduce AAgrammar31Grammar */
2665:            {
2666:                ArrayList nodeList = new ArrayList();
2667:
2668:                ArrayList nodeArrayList4 = (ArrayList) pop();
2669:                ArrayList nodeArrayList3 = (ArrayList) pop();
2670:                ArrayList nodeArrayList2 = (ArrayList) pop();
2671:                ArrayList nodeArrayList1 = (ArrayList) pop();
2672:                PGrammar pgrammarNode1;
2673:                {
2674:                    TypedLinkedList listNode2 = new TypedLinkedList();
2675:                    PHelpers phelpersNode3;
2676:                    PStates pstatesNode4;
2677:                    PTokens ptokensNode5;
2678:                    PIgnTokens pigntokensNode6;
2679:                    Object nullNode7 = null;
2680:                    Object nullNode8 = null;
2681:                    {
2682:                    }
2683:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
2684:                    pstatesNode4 = (PStates) nodeArrayList2.get(0);
2685:                    ptokensNode5 = (PTokens) nodeArrayList3.get(0);
2686:                    pigntokensNode6 = (PIgnTokens) nodeArrayList4.get(0);
2687:
2688:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
2689:                            pstatesNode4, ptokensNode5, pigntokensNode6, null,
2690:                            null);
2691:                }
2692:                nodeList.add(pgrammarNode1);
2693:                return nodeList;
2694:            }
2695:
2696:            ArrayList new31() /* reduce AAgrammar32Grammar */
2697:            {
2698:                ArrayList nodeList = new ArrayList();
2699:
2700:                ArrayList nodeArrayList5 = (ArrayList) pop();
2701:                ArrayList nodeArrayList4 = (ArrayList) pop();
2702:                ArrayList nodeArrayList3 = (ArrayList) pop();
2703:                ArrayList nodeArrayList2 = (ArrayList) pop();
2704:                ArrayList nodeArrayList1 = (ArrayList) pop();
2705:                PGrammar pgrammarNode1;
2706:                {
2707:                    TypedLinkedList listNode3 = new TypedLinkedList();
2708:                    PHelpers phelpersNode4;
2709:                    PStates pstatesNode5;
2710:                    PTokens ptokensNode6;
2711:                    PIgnTokens pigntokensNode7;
2712:                    Object nullNode8 = null;
2713:                    Object nullNode9 = null;
2714:                    {
2715:                        TypedLinkedList listNode2 = new TypedLinkedList();
2716:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
2717:                        if (listNode2 != null) {
2718:                            listNode3.addAll(listNode2);
2719:                        }
2720:                    }
2721:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
2722:                    pstatesNode5 = (PStates) nodeArrayList3.get(0);
2723:                    ptokensNode6 = (PTokens) nodeArrayList4.get(0);
2724:                    pigntokensNode7 = (PIgnTokens) nodeArrayList5.get(0);
2725:
2726:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
2727:                            pstatesNode5, ptokensNode6, pigntokensNode7, null,
2728:                            null);
2729:                }
2730:                nodeList.add(pgrammarNode1);
2731:                return nodeList;
2732:            }
2733:
2734:            ArrayList new32() /* reduce AAgrammar33Grammar */
2735:            {
2736:                ArrayList nodeList = new ArrayList();
2737:
2738:                ArrayList nodeArrayList1 = (ArrayList) pop();
2739:                PGrammar pgrammarNode1;
2740:                {
2741:                    TypedLinkedList listNode2 = new TypedLinkedList();
2742:                    Object nullNode3 = null;
2743:                    Object nullNode4 = null;
2744:                    Object nullNode5 = null;
2745:                    Object nullNode6 = null;
2746:                    PProductions pproductionsNode7;
2747:                    Object nullNode8 = null;
2748:                    {
2749:                    }
2750:                    pproductionsNode7 = (PProductions) nodeArrayList1.get(0);
2751:
2752:                    pgrammarNode1 = new AGrammar(listNode2, null, null, null,
2753:                            null, pproductionsNode7, null);
2754:                }
2755:                nodeList.add(pgrammarNode1);
2756:                return nodeList;
2757:            }
2758:
2759:            ArrayList new33() /* reduce AAgrammar34Grammar */
2760:            {
2761:                ArrayList nodeList = new ArrayList();
2762:
2763:                ArrayList nodeArrayList2 = (ArrayList) pop();
2764:                ArrayList nodeArrayList1 = (ArrayList) pop();
2765:                PGrammar pgrammarNode1;
2766:                {
2767:                    TypedLinkedList listNode3 = new TypedLinkedList();
2768:                    Object nullNode4 = null;
2769:                    Object nullNode5 = null;
2770:                    Object nullNode6 = null;
2771:                    Object nullNode7 = null;
2772:                    PProductions pproductionsNode8;
2773:                    Object nullNode9 = null;
2774:                    {
2775:                        TypedLinkedList listNode2 = new TypedLinkedList();
2776:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
2777:                        if (listNode2 != null) {
2778:                            listNode3.addAll(listNode2);
2779:                        }
2780:                    }
2781:                    pproductionsNode8 = (PProductions) nodeArrayList2.get(0);
2782:
2783:                    pgrammarNode1 = new AGrammar(listNode3, null, null, null,
2784:                            null, pproductionsNode8, null);
2785:                }
2786:                nodeList.add(pgrammarNode1);
2787:                return nodeList;
2788:            }
2789:
2790:            ArrayList new34() /* reduce AAgrammar35Grammar */
2791:            {
2792:                ArrayList nodeList = new ArrayList();
2793:
2794:                ArrayList nodeArrayList2 = (ArrayList) pop();
2795:                ArrayList nodeArrayList1 = (ArrayList) pop();
2796:                PGrammar pgrammarNode1;
2797:                {
2798:                    TypedLinkedList listNode2 = new TypedLinkedList();
2799:                    PHelpers phelpersNode3;
2800:                    Object nullNode4 = null;
2801:                    Object nullNode5 = null;
2802:                    Object nullNode6 = null;
2803:                    PProductions pproductionsNode7;
2804:                    Object nullNode8 = null;
2805:                    {
2806:                    }
2807:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
2808:                    pproductionsNode7 = (PProductions) nodeArrayList2.get(0);
2809:
2810:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
2811:                            null, null, null, pproductionsNode7, null);
2812:                }
2813:                nodeList.add(pgrammarNode1);
2814:                return nodeList;
2815:            }
2816:
2817:            ArrayList new35() /* reduce AAgrammar36Grammar */
2818:            {
2819:                ArrayList nodeList = new ArrayList();
2820:
2821:                ArrayList nodeArrayList3 = (ArrayList) pop();
2822:                ArrayList nodeArrayList2 = (ArrayList) pop();
2823:                ArrayList nodeArrayList1 = (ArrayList) pop();
2824:                PGrammar pgrammarNode1;
2825:                {
2826:                    TypedLinkedList listNode3 = new TypedLinkedList();
2827:                    PHelpers phelpersNode4;
2828:                    Object nullNode5 = null;
2829:                    Object nullNode6 = null;
2830:                    Object nullNode7 = null;
2831:                    PProductions pproductionsNode8;
2832:                    Object nullNode9 = null;
2833:                    {
2834:                        TypedLinkedList listNode2 = new TypedLinkedList();
2835:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
2836:                        if (listNode2 != null) {
2837:                            listNode3.addAll(listNode2);
2838:                        }
2839:                    }
2840:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
2841:                    pproductionsNode8 = (PProductions) nodeArrayList3.get(0);
2842:
2843:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
2844:                            null, null, null, pproductionsNode8, null);
2845:                }
2846:                nodeList.add(pgrammarNode1);
2847:                return nodeList;
2848:            }
2849:
2850:            ArrayList new36() /* reduce AAgrammar37Grammar */
2851:            {
2852:                ArrayList nodeList = new ArrayList();
2853:
2854:                ArrayList nodeArrayList2 = (ArrayList) pop();
2855:                ArrayList nodeArrayList1 = (ArrayList) pop();
2856:                PGrammar pgrammarNode1;
2857:                {
2858:                    TypedLinkedList listNode2 = new TypedLinkedList();
2859:                    Object nullNode3 = null;
2860:                    PStates pstatesNode4;
2861:                    Object nullNode5 = null;
2862:                    Object nullNode6 = null;
2863:                    PProductions pproductionsNode7;
2864:                    Object nullNode8 = null;
2865:                    {
2866:                    }
2867:                    pstatesNode4 = (PStates) nodeArrayList1.get(0);
2868:                    pproductionsNode7 = (PProductions) nodeArrayList2.get(0);
2869:
2870:                    pgrammarNode1 = new AGrammar(listNode2, null, pstatesNode4,
2871:                            null, null, pproductionsNode7, null);
2872:                }
2873:                nodeList.add(pgrammarNode1);
2874:                return nodeList;
2875:            }
2876:
2877:            ArrayList new37() /* reduce AAgrammar38Grammar */
2878:            {
2879:                ArrayList nodeList = new ArrayList();
2880:
2881:                ArrayList nodeArrayList3 = (ArrayList) pop();
2882:                ArrayList nodeArrayList2 = (ArrayList) pop();
2883:                ArrayList nodeArrayList1 = (ArrayList) pop();
2884:                PGrammar pgrammarNode1;
2885:                {
2886:                    TypedLinkedList listNode3 = new TypedLinkedList();
2887:                    Object nullNode4 = null;
2888:                    PStates pstatesNode5;
2889:                    Object nullNode6 = null;
2890:                    Object nullNode7 = null;
2891:                    PProductions pproductionsNode8;
2892:                    Object nullNode9 = null;
2893:                    {
2894:                        TypedLinkedList listNode2 = new TypedLinkedList();
2895:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
2896:                        if (listNode2 != null) {
2897:                            listNode3.addAll(listNode2);
2898:                        }
2899:                    }
2900:                    pstatesNode5 = (PStates) nodeArrayList2.get(0);
2901:                    pproductionsNode8 = (PProductions) nodeArrayList3.get(0);
2902:
2903:                    pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5,
2904:                            null, null, pproductionsNode8, null);
2905:                }
2906:                nodeList.add(pgrammarNode1);
2907:                return nodeList;
2908:            }
2909:
2910:            ArrayList new38() /* reduce AAgrammar39Grammar */
2911:            {
2912:                ArrayList nodeList = new ArrayList();
2913:
2914:                ArrayList nodeArrayList3 = (ArrayList) pop();
2915:                ArrayList nodeArrayList2 = (ArrayList) pop();
2916:                ArrayList nodeArrayList1 = (ArrayList) pop();
2917:                PGrammar pgrammarNode1;
2918:                {
2919:                    TypedLinkedList listNode2 = new TypedLinkedList();
2920:                    PHelpers phelpersNode3;
2921:                    PStates pstatesNode4;
2922:                    Object nullNode5 = null;
2923:                    Object nullNode6 = null;
2924:                    PProductions pproductionsNode7;
2925:                    Object nullNode8 = null;
2926:                    {
2927:                    }
2928:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
2929:                    pstatesNode4 = (PStates) nodeArrayList2.get(0);
2930:                    pproductionsNode7 = (PProductions) nodeArrayList3.get(0);
2931:
2932:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
2933:                            pstatesNode4, null, null, pproductionsNode7, null);
2934:                }
2935:                nodeList.add(pgrammarNode1);
2936:                return nodeList;
2937:            }
2938:
2939:            ArrayList new39() /* reduce AAgrammar40Grammar */
2940:            {
2941:                ArrayList nodeList = new ArrayList();
2942:
2943:                ArrayList nodeArrayList4 = (ArrayList) pop();
2944:                ArrayList nodeArrayList3 = (ArrayList) pop();
2945:                ArrayList nodeArrayList2 = (ArrayList) pop();
2946:                ArrayList nodeArrayList1 = (ArrayList) pop();
2947:                PGrammar pgrammarNode1;
2948:                {
2949:                    TypedLinkedList listNode3 = new TypedLinkedList();
2950:                    PHelpers phelpersNode4;
2951:                    PStates pstatesNode5;
2952:                    Object nullNode6 = null;
2953:                    Object nullNode7 = null;
2954:                    PProductions pproductionsNode8;
2955:                    Object nullNode9 = null;
2956:                    {
2957:                        TypedLinkedList listNode2 = new TypedLinkedList();
2958:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
2959:                        if (listNode2 != null) {
2960:                            listNode3.addAll(listNode2);
2961:                        }
2962:                    }
2963:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
2964:                    pstatesNode5 = (PStates) nodeArrayList3.get(0);
2965:                    pproductionsNode8 = (PProductions) nodeArrayList4.get(0);
2966:
2967:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
2968:                            pstatesNode5, null, null, pproductionsNode8, null);
2969:                }
2970:                nodeList.add(pgrammarNode1);
2971:                return nodeList;
2972:            }
2973:
2974:            ArrayList new40() /* reduce AAgrammar41Grammar */
2975:            {
2976:                ArrayList nodeList = new ArrayList();
2977:
2978:                ArrayList nodeArrayList2 = (ArrayList) pop();
2979:                ArrayList nodeArrayList1 = (ArrayList) pop();
2980:                PGrammar pgrammarNode1;
2981:                {
2982:                    TypedLinkedList listNode2 = new TypedLinkedList();
2983:                    Object nullNode3 = null;
2984:                    Object nullNode4 = null;
2985:                    PTokens ptokensNode5;
2986:                    Object nullNode6 = null;
2987:                    PProductions pproductionsNode7;
2988:                    Object nullNode8 = null;
2989:                    {
2990:                    }
2991:                    ptokensNode5 = (PTokens) nodeArrayList1.get(0);
2992:                    pproductionsNode7 = (PProductions) nodeArrayList2.get(0);
2993:
2994:                    pgrammarNode1 = new AGrammar(listNode2, null, null,
2995:                            ptokensNode5, null, pproductionsNode7, null);
2996:                }
2997:                nodeList.add(pgrammarNode1);
2998:                return nodeList;
2999:            }
3000:
3001:            ArrayList new41() /* reduce AAgrammar42Grammar */
3002:            {
3003:                ArrayList nodeList = new ArrayList();
3004:
3005:                ArrayList nodeArrayList3 = (ArrayList) pop();
3006:                ArrayList nodeArrayList2 = (ArrayList) pop();
3007:                ArrayList nodeArrayList1 = (ArrayList) pop();
3008:                PGrammar pgrammarNode1;
3009:                {
3010:                    TypedLinkedList listNode3 = new TypedLinkedList();
3011:                    Object nullNode4 = null;
3012:                    Object nullNode5 = null;
3013:                    PTokens ptokensNode6;
3014:                    Object nullNode7 = null;
3015:                    PProductions pproductionsNode8;
3016:                    Object nullNode9 = null;
3017:                    {
3018:                        TypedLinkedList listNode2 = new TypedLinkedList();
3019:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
3020:                        if (listNode2 != null) {
3021:                            listNode3.addAll(listNode2);
3022:                        }
3023:                    }
3024:                    ptokensNode6 = (PTokens) nodeArrayList2.get(0);
3025:                    pproductionsNode8 = (PProductions) nodeArrayList3.get(0);
3026:
3027:                    pgrammarNode1 = new AGrammar(listNode3, null, null,
3028:                            ptokensNode6, null, pproductionsNode8, null);
3029:                }
3030:                nodeList.add(pgrammarNode1);
3031:                return nodeList;
3032:            }
3033:
3034:            ArrayList new42() /* reduce AAgrammar43Grammar */
3035:            {
3036:                ArrayList nodeList = new ArrayList();
3037:
3038:                ArrayList nodeArrayList3 = (ArrayList) pop();
3039:                ArrayList nodeArrayList2 = (ArrayList) pop();
3040:                ArrayList nodeArrayList1 = (ArrayList) pop();
3041:                PGrammar pgrammarNode1;
3042:                {
3043:                    TypedLinkedList listNode2 = new TypedLinkedList();
3044:                    PHelpers phelpersNode3;
3045:                    Object nullNode4 = null;
3046:                    PTokens ptokensNode5;
3047:                    Object nullNode6 = null;
3048:                    PProductions pproductionsNode7;
3049:                    Object nullNode8 = null;
3050:                    {
3051:                    }
3052:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
3053:                    ptokensNode5 = (PTokens) nodeArrayList2.get(0);
3054:                    pproductionsNode7 = (PProductions) nodeArrayList3.get(0);
3055:
3056:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
3057:                            null, ptokensNode5, null, pproductionsNode7, null);
3058:                }
3059:                nodeList.add(pgrammarNode1);
3060:                return nodeList;
3061:            }
3062:
3063:            ArrayList new43() /* reduce AAgrammar44Grammar */
3064:            {
3065:                ArrayList nodeList = new ArrayList();
3066:
3067:                ArrayList nodeArrayList4 = (ArrayList) pop();
3068:                ArrayList nodeArrayList3 = (ArrayList) pop();
3069:                ArrayList nodeArrayList2 = (ArrayList) pop();
3070:                ArrayList nodeArrayList1 = (ArrayList) pop();
3071:                PGrammar pgrammarNode1;
3072:                {
3073:                    TypedLinkedList listNode3 = new TypedLinkedList();
3074:                    PHelpers phelpersNode4;
3075:                    Object nullNode5 = null;
3076:                    PTokens ptokensNode6;
3077:                    Object nullNode7 = null;
3078:                    PProductions pproductionsNode8;
3079:                    Object nullNode9 = null;
3080:                    {
3081:                        TypedLinkedList listNode2 = new TypedLinkedList();
3082:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
3083:                        if (listNode2 != null) {
3084:                            listNode3.addAll(listNode2);
3085:                        }
3086:                    }
3087:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
3088:                    ptokensNode6 = (PTokens) nodeArrayList3.get(0);
3089:                    pproductionsNode8 = (PProductions) nodeArrayList4.get(0);
3090:
3091:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
3092:                            null, ptokensNode6, null, pproductionsNode8, null);
3093:                }
3094:                nodeList.add(pgrammarNode1);
3095:                return nodeList;
3096:            }
3097:
3098:            ArrayList new44() /* reduce AAgrammar45Grammar */
3099:            {
3100:                ArrayList nodeList = new ArrayList();
3101:
3102:                ArrayList nodeArrayList3 = (ArrayList) pop();
3103:                ArrayList nodeArrayList2 = (ArrayList) pop();
3104:                ArrayList nodeArrayList1 = (ArrayList) pop();
3105:                PGrammar pgrammarNode1;
3106:                {
3107:                    TypedLinkedList listNode2 = new TypedLinkedList();
3108:                    Object nullNode3 = null;
3109:                    PStates pstatesNode4;
3110:                    PTokens ptokensNode5;
3111:                    Object nullNode6 = null;
3112:                    PProductions pproductionsNode7;
3113:                    Object nullNode8 = null;
3114:                    {
3115:                    }
3116:                    pstatesNode4 = (PStates) nodeArrayList1.get(0);
3117:                    ptokensNode5 = (PTokens) nodeArrayList2.get(0);
3118:                    pproductionsNode7 = (PProductions) nodeArrayList3.get(0);
3119:
3120:                    pgrammarNode1 = new AGrammar(listNode2, null, pstatesNode4,
3121:                            ptokensNode5, null, pproductionsNode7, null);
3122:                }
3123:                nodeList.add(pgrammarNode1);
3124:                return nodeList;
3125:            }
3126:
3127:            ArrayList new45() /* reduce AAgrammar46Grammar */
3128:            {
3129:                ArrayList nodeList = new ArrayList();
3130:
3131:                ArrayList nodeArrayList4 = (ArrayList) pop();
3132:                ArrayList nodeArrayList3 = (ArrayList) pop();
3133:                ArrayList nodeArrayList2 = (ArrayList) pop();
3134:                ArrayList nodeArrayList1 = (ArrayList) pop();
3135:                PGrammar pgrammarNode1;
3136:                {
3137:                    TypedLinkedList listNode3 = new TypedLinkedList();
3138:                    Object nullNode4 = null;
3139:                    PStates pstatesNode5;
3140:                    PTokens ptokensNode6;
3141:                    Object nullNode7 = null;
3142:                    PProductions pproductionsNode8;
3143:                    Object nullNode9 = null;
3144:                    {
3145:                        TypedLinkedList listNode2 = new TypedLinkedList();
3146:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
3147:                        if (listNode2 != null) {
3148:                            listNode3.addAll(listNode2);
3149:                        }
3150:                    }
3151:                    pstatesNode5 = (PStates) nodeArrayList2.get(0);
3152:                    ptokensNode6 = (PTokens) nodeArrayList3.get(0);
3153:                    pproductionsNode8 = (PProductions) nodeArrayList4.get(0);
3154:
3155:                    pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5,
3156:                            ptokensNode6, null, pproductionsNode8, null);
3157:                }
3158:                nodeList.add(pgrammarNode1);
3159:                return nodeList;
3160:            }
3161:
3162:            ArrayList new46() /* reduce AAgrammar47Grammar */
3163:            {
3164:                ArrayList nodeList = new ArrayList();
3165:
3166:                ArrayList nodeArrayList4 = (ArrayList) pop();
3167:                ArrayList nodeArrayList3 = (ArrayList) pop();
3168:                ArrayList nodeArrayList2 = (ArrayList) pop();
3169:                ArrayList nodeArrayList1 = (ArrayList) pop();
3170:                PGrammar pgrammarNode1;
3171:                {
3172:                    TypedLinkedList listNode2 = new TypedLinkedList();
3173:                    PHelpers phelpersNode3;
3174:                    PStates pstatesNode4;
3175:                    PTokens ptokensNode5;
3176:                    Object nullNode6 = null;
3177:                    PProductions pproductionsNode7;
3178:                    Object nullNode8 = null;
3179:                    {
3180:                    }
3181:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
3182:                    pstatesNode4 = (PStates) nodeArrayList2.get(0);
3183:                    ptokensNode5 = (PTokens) nodeArrayList3.get(0);
3184:                    pproductionsNode7 = (PProductions) nodeArrayList4.get(0);
3185:
3186:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
3187:                            pstatesNode4, ptokensNode5, null,
3188:                            pproductionsNode7, null);
3189:                }
3190:                nodeList.add(pgrammarNode1);
3191:                return nodeList;
3192:            }
3193:
3194:            ArrayList new47() /* reduce AAgrammar48Grammar */
3195:            {
3196:                ArrayList nodeList = new ArrayList();
3197:
3198:                ArrayList nodeArrayList5 = (ArrayList) pop();
3199:                ArrayList nodeArrayList4 = (ArrayList) pop();
3200:                ArrayList nodeArrayList3 = (ArrayList) pop();
3201:                ArrayList nodeArrayList2 = (ArrayList) pop();
3202:                ArrayList nodeArrayList1 = (ArrayList) pop();
3203:                PGrammar pgrammarNode1;
3204:                {
3205:                    TypedLinkedList listNode3 = new TypedLinkedList();
3206:                    PHelpers phelpersNode4;
3207:                    PStates pstatesNode5;
3208:                    PTokens ptokensNode6;
3209:                    Object nullNode7 = null;
3210:                    PProductions pproductionsNode8;
3211:                    Object nullNode9 = null;
3212:                    {
3213:                        TypedLinkedList listNode2 = new TypedLinkedList();
3214:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
3215:                        if (listNode2 != null) {
3216:                            listNode3.addAll(listNode2);
3217:                        }
3218:                    }
3219:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
3220:                    pstatesNode5 = (PStates) nodeArrayList3.get(0);
3221:                    ptokensNode6 = (PTokens) nodeArrayList4.get(0);
3222:                    pproductionsNode8 = (PProductions) nodeArrayList5.get(0);
3223:
3224:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
3225:                            pstatesNode5, ptokensNode6, null,
3226:                            pproductionsNode8, null);
3227:                }
3228:                nodeList.add(pgrammarNode1);
3229:                return nodeList;
3230:            }
3231:
3232:            ArrayList new48() /* reduce AAgrammar49Grammar */
3233:            {
3234:                ArrayList nodeList = new ArrayList();
3235:
3236:                ArrayList nodeArrayList2 = (ArrayList) pop();
3237:                ArrayList nodeArrayList1 = (ArrayList) pop();
3238:                PGrammar pgrammarNode1;
3239:                {
3240:                    TypedLinkedList listNode2 = new TypedLinkedList();
3241:                    Object nullNode3 = null;
3242:                    Object nullNode4 = null;
3243:                    Object nullNode5 = null;
3244:                    PIgnTokens pigntokensNode6;
3245:                    PProductions pproductionsNode7;
3246:                    Object nullNode8 = null;
3247:                    {
3248:                    }
3249:                    pigntokensNode6 = (PIgnTokens) nodeArrayList1.get(0);
3250:                    pproductionsNode7 = (PProductions) nodeArrayList2.get(0);
3251:
3252:                    pgrammarNode1 = new AGrammar(listNode2, null, null, null,
3253:                            pigntokensNode6, pproductionsNode7, null);
3254:                }
3255:                nodeList.add(pgrammarNode1);
3256:                return nodeList;
3257:            }
3258:
3259:            ArrayList new49() /* reduce AAgrammar50Grammar */
3260:            {
3261:                ArrayList nodeList = new ArrayList();
3262:
3263:                ArrayList nodeArrayList3 = (ArrayList) pop();
3264:                ArrayList nodeArrayList2 = (ArrayList) pop();
3265:                ArrayList nodeArrayList1 = (ArrayList) pop();
3266:                PGrammar pgrammarNode1;
3267:                {
3268:                    TypedLinkedList listNode3 = new TypedLinkedList();
3269:                    Object nullNode4 = null;
3270:                    Object nullNode5 = null;
3271:                    Object nullNode6 = null;
3272:                    PIgnTokens pigntokensNode7;
3273:                    PProductions pproductionsNode8;
3274:                    Object nullNode9 = null;
3275:                    {
3276:                        TypedLinkedList listNode2 = new TypedLinkedList();
3277:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
3278:                        if (listNode2 != null) {
3279:                            listNode3.addAll(listNode2);
3280:                        }
3281:                    }
3282:                    pigntokensNode7 = (PIgnTokens) nodeArrayList2.get(0);
3283:                    pproductionsNode8 = (PProductions) nodeArrayList3.get(0);
3284:
3285:                    pgrammarNode1 = new AGrammar(listNode3, null, null, null,
3286:                            pigntokensNode7, pproductionsNode8, null);
3287:                }
3288:                nodeList.add(pgrammarNode1);
3289:                return nodeList;
3290:            }
3291:
3292:            ArrayList new50() /* reduce AAgrammar51Grammar */
3293:            {
3294:                ArrayList nodeList = new ArrayList();
3295:
3296:                ArrayList nodeArrayList3 = (ArrayList) pop();
3297:                ArrayList nodeArrayList2 = (ArrayList) pop();
3298:                ArrayList nodeArrayList1 = (ArrayList) pop();
3299:                PGrammar pgrammarNode1;
3300:                {
3301:                    TypedLinkedList listNode2 = new TypedLinkedList();
3302:                    PHelpers phelpersNode3;
3303:                    Object nullNode4 = null;
3304:                    Object nullNode5 = null;
3305:                    PIgnTokens pigntokensNode6;
3306:                    PProductions pproductionsNode7;
3307:                    Object nullNode8 = null;
3308:                    {
3309:                    }
3310:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
3311:                    pigntokensNode6 = (PIgnTokens) nodeArrayList2.get(0);
3312:                    pproductionsNode7 = (PProductions) nodeArrayList3.get(0);
3313:
3314:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
3315:                            null, null, pigntokensNode6, pproductionsNode7,
3316:                            null);
3317:                }
3318:                nodeList.add(pgrammarNode1);
3319:                return nodeList;
3320:            }
3321:
3322:            ArrayList new51() /* reduce AAgrammar52Grammar */
3323:            {
3324:                ArrayList nodeList = new ArrayList();
3325:
3326:                ArrayList nodeArrayList4 = (ArrayList) pop();
3327:                ArrayList nodeArrayList3 = (ArrayList) pop();
3328:                ArrayList nodeArrayList2 = (ArrayList) pop();
3329:                ArrayList nodeArrayList1 = (ArrayList) pop();
3330:                PGrammar pgrammarNode1;
3331:                {
3332:                    TypedLinkedList listNode3 = new TypedLinkedList();
3333:                    PHelpers phelpersNode4;
3334:                    Object nullNode5 = null;
3335:                    Object nullNode6 = null;
3336:                    PIgnTokens pigntokensNode7;
3337:                    PProductions pproductionsNode8;
3338:                    Object nullNode9 = null;
3339:                    {
3340:                        TypedLinkedList listNode2 = new TypedLinkedList();
3341:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
3342:                        if (listNode2 != null) {
3343:                            listNode3.addAll(listNode2);
3344:                        }
3345:                    }
3346:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
3347:                    pigntokensNode7 = (PIgnTokens) nodeArrayList3.get(0);
3348:                    pproductionsNode8 = (PProductions) nodeArrayList4.get(0);
3349:
3350:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
3351:                            null, null, pigntokensNode7, pproductionsNode8,
3352:                            null);
3353:                }
3354:                nodeList.add(pgrammarNode1);
3355:                return nodeList;
3356:            }
3357:
3358:            ArrayList new52() /* reduce AAgrammar53Grammar */
3359:            {
3360:                ArrayList nodeList = new ArrayList();
3361:
3362:                ArrayList nodeArrayList3 = (ArrayList) pop();
3363:                ArrayList nodeArrayList2 = (ArrayList) pop();
3364:                ArrayList nodeArrayList1 = (ArrayList) pop();
3365:                PGrammar pgrammarNode1;
3366:                {
3367:                    TypedLinkedList listNode2 = new TypedLinkedList();
3368:                    Object nullNode3 = null;
3369:                    PStates pstatesNode4;
3370:                    Object nullNode5 = null;
3371:                    PIgnTokens pigntokensNode6;
3372:                    PProductions pproductionsNode7;
3373:                    Object nullNode8 = null;
3374:                    {
3375:                    }
3376:                    pstatesNode4 = (PStates) nodeArrayList1.get(0);
3377:                    pigntokensNode6 = (PIgnTokens) nodeArrayList2.get(0);
3378:                    pproductionsNode7 = (PProductions) nodeArrayList3.get(0);
3379:
3380:                    pgrammarNode1 = new AGrammar(listNode2, null, pstatesNode4,
3381:                            null, pigntokensNode6, pproductionsNode7, null);
3382:                }
3383:                nodeList.add(pgrammarNode1);
3384:                return nodeList;
3385:            }
3386:
3387:            ArrayList new53() /* reduce AAgrammar54Grammar */
3388:            {
3389:                ArrayList nodeList = new ArrayList();
3390:
3391:                ArrayList nodeArrayList4 = (ArrayList) pop();
3392:                ArrayList nodeArrayList3 = (ArrayList) pop();
3393:                ArrayList nodeArrayList2 = (ArrayList) pop();
3394:                ArrayList nodeArrayList1 = (ArrayList) pop();
3395:                PGrammar pgrammarNode1;
3396:                {
3397:                    TypedLinkedList listNode3 = new TypedLinkedList();
3398:                    Object nullNode4 = null;
3399:                    PStates pstatesNode5;
3400:                    Object nullNode6 = null;
3401:                    PIgnTokens pigntokensNode7;
3402:                    PProductions pproductionsNode8;
3403:                    Object nullNode9 = null;
3404:                    {
3405:                        TypedLinkedList listNode2 = new TypedLinkedList();
3406:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
3407:                        if (listNode2 != null) {
3408:                            listNode3.addAll(listNode2);
3409:                        }
3410:                    }
3411:                    pstatesNode5 = (PStates) nodeArrayList2.get(0);
3412:                    pigntokensNode7 = (PIgnTokens) nodeArrayList3.get(0);
3413:                    pproductionsNode8 = (PProductions) nodeArrayList4.get(0);
3414:
3415:                    pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5,
3416:                            null, pigntokensNode7, pproductionsNode8, null);
3417:                }
3418:                nodeList.add(pgrammarNode1);
3419:                return nodeList;
3420:            }
3421:
3422:            ArrayList new54() /* reduce AAgrammar55Grammar */
3423:            {
3424:                ArrayList nodeList = new ArrayList();
3425:
3426:                ArrayList nodeArrayList4 = (ArrayList) pop();
3427:                ArrayList nodeArrayList3 = (ArrayList) pop();
3428:                ArrayList nodeArrayList2 = (ArrayList) pop();
3429:                ArrayList nodeArrayList1 = (ArrayList) pop();
3430:                PGrammar pgrammarNode1;
3431:                {
3432:                    TypedLinkedList listNode2 = new TypedLinkedList();
3433:                    PHelpers phelpersNode3;
3434:                    PStates pstatesNode4;
3435:                    Object nullNode5 = null;
3436:                    PIgnTokens pigntokensNode6;
3437:                    PProductions pproductionsNode7;
3438:                    Object nullNode8 = null;
3439:                    {
3440:                    }
3441:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
3442:                    pstatesNode4 = (PStates) nodeArrayList2.get(0);
3443:                    pigntokensNode6 = (PIgnTokens) nodeArrayList3.get(0);
3444:                    pproductionsNode7 = (PProductions) nodeArrayList4.get(0);
3445:
3446:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
3447:                            pstatesNode4, null, pigntokensNode6,
3448:                            pproductionsNode7, null);
3449:                }
3450:                nodeList.add(pgrammarNode1);
3451:                return nodeList;
3452:            }
3453:
3454:            ArrayList new55() /* reduce AAgrammar56Grammar */
3455:            {
3456:                ArrayList nodeList = new ArrayList();
3457:
3458:                ArrayList nodeArrayList5 = (ArrayList) pop();
3459:                ArrayList nodeArrayList4 = (ArrayList) pop();
3460:                ArrayList nodeArrayList3 = (ArrayList) pop();
3461:                ArrayList nodeArrayList2 = (ArrayList) pop();
3462:                ArrayList nodeArrayList1 = (ArrayList) pop();
3463:                PGrammar pgrammarNode1;
3464:                {
3465:                    TypedLinkedList listNode3 = new TypedLinkedList();
3466:                    PHelpers phelpersNode4;
3467:                    PStates pstatesNode5;
3468:                    Object nullNode6 = null;
3469:                    PIgnTokens pigntokensNode7;
3470:                    PProductions pproductionsNode8;
3471:                    Object nullNode9 = null;
3472:                    {
3473:                        TypedLinkedList listNode2 = new TypedLinkedList();
3474:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
3475:                        if (listNode2 != null) {
3476:                            listNode3.addAll(listNode2);
3477:                        }
3478:                    }
3479:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
3480:                    pstatesNode5 = (PStates) nodeArrayList3.get(0);
3481:                    pigntokensNode7 = (PIgnTokens) nodeArrayList4.get(0);
3482:                    pproductionsNode8 = (PProductions) nodeArrayList5.get(0);
3483:
3484:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
3485:                            pstatesNode5, null, pigntokensNode7,
3486:                            pproductionsNode8, null);
3487:                }
3488:                nodeList.add(pgrammarNode1);
3489:                return nodeList;
3490:            }
3491:
3492:            ArrayList new56() /* reduce AAgrammar57Grammar */
3493:            {
3494:                ArrayList nodeList = new ArrayList();
3495:
3496:                ArrayList nodeArrayList3 = (ArrayList) pop();
3497:                ArrayList nodeArrayList2 = (ArrayList) pop();
3498:                ArrayList nodeArrayList1 = (ArrayList) pop();
3499:                PGrammar pgrammarNode1;
3500:                {
3501:                    TypedLinkedList listNode2 = new TypedLinkedList();
3502:                    Object nullNode3 = null;
3503:                    Object nullNode4 = null;
3504:                    PTokens ptokensNode5;
3505:                    PIgnTokens pigntokensNode6;
3506:                    PProductions pproductionsNode7;
3507:                    Object nullNode8 = null;
3508:                    {
3509:                    }
3510:                    ptokensNode5 = (PTokens) nodeArrayList1.get(0);
3511:                    pigntokensNode6 = (PIgnTokens) nodeArrayList2.get(0);
3512:                    pproductionsNode7 = (PProductions) nodeArrayList3.get(0);
3513:
3514:                    pgrammarNode1 = new AGrammar(listNode2, null, null,
3515:                            ptokensNode5, pigntokensNode6, pproductionsNode7,
3516:                            null);
3517:                }
3518:                nodeList.add(pgrammarNode1);
3519:                return nodeList;
3520:            }
3521:
3522:            ArrayList new57() /* reduce AAgrammar58Grammar */
3523:            {
3524:                ArrayList nodeList = new ArrayList();
3525:
3526:                ArrayList nodeArrayList4 = (ArrayList) pop();
3527:                ArrayList nodeArrayList3 = (ArrayList) pop();
3528:                ArrayList nodeArrayList2 = (ArrayList) pop();
3529:                ArrayList nodeArrayList1 = (ArrayList) pop();
3530:                PGrammar pgrammarNode1;
3531:                {
3532:                    TypedLinkedList listNode3 = new TypedLinkedList();
3533:                    Object nullNode4 = null;
3534:                    Object nullNode5 = null;
3535:                    PTokens ptokensNode6;
3536:                    PIgnTokens pigntokensNode7;
3537:                    PProductions pproductionsNode8;
3538:                    Object nullNode9 = null;
3539:                    {
3540:                        TypedLinkedList listNode2 = new TypedLinkedList();
3541:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
3542:                        if (listNode2 != null) {
3543:                            listNode3.addAll(listNode2);
3544:                        }
3545:                    }
3546:                    ptokensNode6 = (PTokens) nodeArrayList2.get(0);
3547:                    pigntokensNode7 = (PIgnTokens) nodeArrayList3.get(0);
3548:                    pproductionsNode8 = (PProductions) nodeArrayList4.get(0);
3549:
3550:                    pgrammarNode1 = new AGrammar(listNode3, null, null,
3551:                            ptokensNode6, pigntokensNode7, pproductionsNode8,
3552:                            null);
3553:                }
3554:                nodeList.add(pgrammarNode1);
3555:                return nodeList;
3556:            }
3557:
3558:            ArrayList new58() /* reduce AAgrammar59Grammar */
3559:            {
3560:                ArrayList nodeList = new ArrayList();
3561:
3562:                ArrayList nodeArrayList4 = (ArrayList) pop();
3563:                ArrayList nodeArrayList3 = (ArrayList) pop();
3564:                ArrayList nodeArrayList2 = (ArrayList) pop();
3565:                ArrayList nodeArrayList1 = (ArrayList) pop();
3566:                PGrammar pgrammarNode1;
3567:                {
3568:                    TypedLinkedList listNode2 = new TypedLinkedList();
3569:                    PHelpers phelpersNode3;
3570:                    Object nullNode4 = null;
3571:                    PTokens ptokensNode5;
3572:                    PIgnTokens pigntokensNode6;
3573:                    PProductions pproductionsNode7;
3574:                    Object nullNode8 = null;
3575:                    {
3576:                    }
3577:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
3578:                    ptokensNode5 = (PTokens) nodeArrayList2.get(0);
3579:                    pigntokensNode6 = (PIgnTokens) nodeArrayList3.get(0);
3580:                    pproductionsNode7 = (PProductions) nodeArrayList4.get(0);
3581:
3582:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
3583:                            null, ptokensNode5, pigntokensNode6,
3584:                            pproductionsNode7, null);
3585:                }
3586:                nodeList.add(pgrammarNode1);
3587:                return nodeList;
3588:            }
3589:
3590:            ArrayList new59() /* reduce AAgrammar60Grammar */
3591:            {
3592:                ArrayList nodeList = new ArrayList();
3593:
3594:                ArrayList nodeArrayList5 = (ArrayList) pop();
3595:                ArrayList nodeArrayList4 = (ArrayList) pop();
3596:                ArrayList nodeArrayList3 = (ArrayList) pop();
3597:                ArrayList nodeArrayList2 = (ArrayList) pop();
3598:                ArrayList nodeArrayList1 = (ArrayList) pop();
3599:                PGrammar pgrammarNode1;
3600:                {
3601:                    TypedLinkedList listNode3 = new TypedLinkedList();
3602:                    PHelpers phelpersNode4;
3603:                    Object nullNode5 = null;
3604:                    PTokens ptokensNode6;
3605:                    PIgnTokens pigntokensNode7;
3606:                    PProductions pproductionsNode8;
3607:                    Object nullNode9 = null;
3608:                    {
3609:                        TypedLinkedList listNode2 = new TypedLinkedList();
3610:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
3611:                        if (listNode2 != null) {
3612:                            listNode3.addAll(listNode2);
3613:                        }
3614:                    }
3615:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
3616:                    ptokensNode6 = (PTokens) nodeArrayList3.get(0);
3617:                    pigntokensNode7 = (PIgnTokens) nodeArrayList4.get(0);
3618:                    pproductionsNode8 = (PProductions) nodeArrayList5.get(0);
3619:
3620:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
3621:                            null, ptokensNode6, pigntokensNode7,
3622:                            pproductionsNode8, null);
3623:                }
3624:                nodeList.add(pgrammarNode1);
3625:                return nodeList;
3626:            }
3627:
3628:            ArrayList new60() /* reduce AAgrammar61Grammar */
3629:            {
3630:                ArrayList nodeList = new ArrayList();
3631:
3632:                ArrayList nodeArrayList4 = (ArrayList) pop();
3633:                ArrayList nodeArrayList3 = (ArrayList) pop();
3634:                ArrayList nodeArrayList2 = (ArrayList) pop();
3635:                ArrayList nodeArrayList1 = (ArrayList) pop();
3636:                PGrammar pgrammarNode1;
3637:                {
3638:                    TypedLinkedList listNode2 = new TypedLinkedList();
3639:                    Object nullNode3 = null;
3640:                    PStates pstatesNode4;
3641:                    PTokens ptokensNode5;
3642:                    PIgnTokens pigntokensNode6;
3643:                    PProductions pproductionsNode7;
3644:                    Object nullNode8 = null;
3645:                    {
3646:                    }
3647:                    pstatesNode4 = (PStates) nodeArrayList1.get(0);
3648:                    ptokensNode5 = (PTokens) nodeArrayList2.get(0);
3649:                    pigntokensNode6 = (PIgnTokens) nodeArrayList3.get(0);
3650:                    pproductionsNode7 = (PProductions) nodeArrayList4.get(0);
3651:
3652:                    pgrammarNode1 = new AGrammar(listNode2, null, pstatesNode4,
3653:                            ptokensNode5, pigntokensNode6, pproductionsNode7,
3654:                            null);
3655:                }
3656:                nodeList.add(pgrammarNode1);
3657:                return nodeList;
3658:            }
3659:
3660:            ArrayList new61() /* reduce AAgrammar62Grammar */
3661:            {
3662:                ArrayList nodeList = new ArrayList();
3663:
3664:                ArrayList nodeArrayList5 = (ArrayList) pop();
3665:                ArrayList nodeArrayList4 = (ArrayList) pop();
3666:                ArrayList nodeArrayList3 = (ArrayList) pop();
3667:                ArrayList nodeArrayList2 = (ArrayList) pop();
3668:                ArrayList nodeArrayList1 = (ArrayList) pop();
3669:                PGrammar pgrammarNode1;
3670:                {
3671:                    TypedLinkedList listNode3 = new TypedLinkedList();
3672:                    Object nullNode4 = null;
3673:                    PStates pstatesNode5;
3674:                    PTokens ptokensNode6;
3675:                    PIgnTokens pigntokensNode7;
3676:                    PProductions pproductionsNode8;
3677:                    Object nullNode9 = null;
3678:                    {
3679:                        TypedLinkedList listNode2 = new TypedLinkedList();
3680:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
3681:                        if (listNode2 != null) {
3682:                            listNode3.addAll(listNode2);
3683:                        }
3684:                    }
3685:                    pstatesNode5 = (PStates) nodeArrayList2.get(0);
3686:                    ptokensNode6 = (PTokens) nodeArrayList3.get(0);
3687:                    pigntokensNode7 = (PIgnTokens) nodeArrayList4.get(0);
3688:                    pproductionsNode8 = (PProductions) nodeArrayList5.get(0);
3689:
3690:                    pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5,
3691:                            ptokensNode6, pigntokensNode7, pproductionsNode8,
3692:                            null);
3693:                }
3694:                nodeList.add(pgrammarNode1);
3695:                return nodeList;
3696:            }
3697:
3698:            ArrayList new62() /* reduce AAgrammar63Grammar */
3699:            {
3700:                ArrayList nodeList = new ArrayList();
3701:
3702:                ArrayList nodeArrayList5 = (ArrayList) pop();
3703:                ArrayList nodeArrayList4 = (ArrayList) pop();
3704:                ArrayList nodeArrayList3 = (ArrayList) pop();
3705:                ArrayList nodeArrayList2 = (ArrayList) pop();
3706:                ArrayList nodeArrayList1 = (ArrayList) pop();
3707:                PGrammar pgrammarNode1;
3708:                {
3709:                    TypedLinkedList listNode2 = new TypedLinkedList();
3710:                    PHelpers phelpersNode3;
3711:                    PStates pstatesNode4;
3712:                    PTokens ptokensNode5;
3713:                    PIgnTokens pigntokensNode6;
3714:                    PProductions pproductionsNode7;
3715:                    Object nullNode8 = null;
3716:                    {
3717:                    }
3718:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
3719:                    pstatesNode4 = (PStates) nodeArrayList2.get(0);
3720:                    ptokensNode5 = (PTokens) nodeArrayList3.get(0);
3721:                    pigntokensNode6 = (PIgnTokens) nodeArrayList4.get(0);
3722:                    pproductionsNode7 = (PProductions) nodeArrayList5.get(0);
3723:
3724:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
3725:                            pstatesNode4, ptokensNode5, pigntokensNode6,
3726:                            pproductionsNode7, null);
3727:                }
3728:                nodeList.add(pgrammarNode1);
3729:                return nodeList;
3730:            }
3731:
3732:            ArrayList new63() /* reduce AAgrammar64Grammar */
3733:            {
3734:                ArrayList nodeList = new ArrayList();
3735:
3736:                ArrayList nodeArrayList6 = (ArrayList) pop();
3737:                ArrayList nodeArrayList5 = (ArrayList) pop();
3738:                ArrayList nodeArrayList4 = (ArrayList) pop();
3739:                ArrayList nodeArrayList3 = (ArrayList) pop();
3740:                ArrayList nodeArrayList2 = (ArrayList) pop();
3741:                ArrayList nodeArrayList1 = (ArrayList) pop();
3742:                PGrammar pgrammarNode1;
3743:                {
3744:                    TypedLinkedList listNode3 = new TypedLinkedList();
3745:                    PHelpers phelpersNode4;
3746:                    PStates pstatesNode5;
3747:                    PTokens ptokensNode6;
3748:                    PIgnTokens pigntokensNode7;
3749:                    PProductions pproductionsNode8;
3750:                    Object nullNode9 = null;
3751:                    {
3752:                        TypedLinkedList listNode2 = new TypedLinkedList();
3753:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
3754:                        if (listNode2 != null) {
3755:                            listNode3.addAll(listNode2);
3756:                        }
3757:                    }
3758:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
3759:                    pstatesNode5 = (PStates) nodeArrayList3.get(0);
3760:                    ptokensNode6 = (PTokens) nodeArrayList4.get(0);
3761:                    pigntokensNode7 = (PIgnTokens) nodeArrayList5.get(0);
3762:                    pproductionsNode8 = (PProductions) nodeArrayList6.get(0);
3763:
3764:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
3765:                            pstatesNode5, ptokensNode6, pigntokensNode7,
3766:                            pproductionsNode8, null);
3767:                }
3768:                nodeList.add(pgrammarNode1);
3769:                return nodeList;
3770:            }
3771:
3772:            ArrayList new64() /* reduce AAgrammar65Grammar */
3773:            {
3774:                ArrayList nodeList = new ArrayList();
3775:
3776:                ArrayList nodeArrayList1 = (ArrayList) pop();
3777:                PGrammar pgrammarNode1;
3778:                {
3779:                    TypedLinkedList listNode2 = new TypedLinkedList();
3780:                    Object nullNode3 = null;
3781:                    Object nullNode4 = null;
3782:                    Object nullNode5 = null;
3783:                    Object nullNode6 = null;
3784:                    Object nullNode7 = null;
3785:                    PAst pastNode8;
3786:                    {
3787:                    }
3788:                    pastNode8 = (PAst) nodeArrayList1.get(0);
3789:
3790:                    pgrammarNode1 = new AGrammar(listNode2, null, null, null,
3791:                            null, null, pastNode8);
3792:                }
3793:                nodeList.add(pgrammarNode1);
3794:                return nodeList;
3795:            }
3796:
3797:            ArrayList new65() /* reduce AAgrammar66Grammar */
3798:            {
3799:                ArrayList nodeList = new ArrayList();
3800:
3801:                ArrayList nodeArrayList2 = (ArrayList) pop();
3802:                ArrayList nodeArrayList1 = (ArrayList) pop();
3803:                PGrammar pgrammarNode1;
3804:                {
3805:                    TypedLinkedList listNode3 = new TypedLinkedList();
3806:                    Object nullNode4 = null;
3807:                    Object nullNode5 = null;
3808:                    Object nullNode6 = null;
3809:                    Object nullNode7 = null;
3810:                    Object nullNode8 = null;
3811:                    PAst pastNode9;
3812:                    {
3813:                        TypedLinkedList listNode2 = new TypedLinkedList();
3814:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
3815:                        if (listNode2 != null) {
3816:                            listNode3.addAll(listNode2);
3817:                        }
3818:                    }
3819:                    pastNode9 = (PAst) nodeArrayList2.get(0);
3820:
3821:                    pgrammarNode1 = new AGrammar(listNode3, null, null, null,
3822:                            null, null, pastNode9);
3823:                }
3824:                nodeList.add(pgrammarNode1);
3825:                return nodeList;
3826:            }
3827:
3828:            ArrayList new66() /* reduce AAgrammar67Grammar */
3829:            {
3830:                ArrayList nodeList = new ArrayList();
3831:
3832:                ArrayList nodeArrayList2 = (ArrayList) pop();
3833:                ArrayList nodeArrayList1 = (ArrayList) pop();
3834:                PGrammar pgrammarNode1;
3835:                {
3836:                    TypedLinkedList listNode2 = new TypedLinkedList();
3837:                    PHelpers phelpersNode3;
3838:                    Object nullNode4 = null;
3839:                    Object nullNode5 = null;
3840:                    Object nullNode6 = null;
3841:                    Object nullNode7 = null;
3842:                    PAst pastNode8;
3843:                    {
3844:                    }
3845:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
3846:                    pastNode8 = (PAst) nodeArrayList2.get(0);
3847:
3848:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
3849:                            null, null, null, null, pastNode8);
3850:                }
3851:                nodeList.add(pgrammarNode1);
3852:                return nodeList;
3853:            }
3854:
3855:            ArrayList new67() /* reduce AAgrammar68Grammar */
3856:            {
3857:                ArrayList nodeList = new ArrayList();
3858:
3859:                ArrayList nodeArrayList3 = (ArrayList) pop();
3860:                ArrayList nodeArrayList2 = (ArrayList) pop();
3861:                ArrayList nodeArrayList1 = (ArrayList) pop();
3862:                PGrammar pgrammarNode1;
3863:                {
3864:                    TypedLinkedList listNode3 = new TypedLinkedList();
3865:                    PHelpers phelpersNode4;
3866:                    Object nullNode5 = null;
3867:                    Object nullNode6 = null;
3868:                    Object nullNode7 = null;
3869:                    Object nullNode8 = null;
3870:                    PAst pastNode9;
3871:                    {
3872:                        TypedLinkedList listNode2 = new TypedLinkedList();
3873:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
3874:                        if (listNode2 != null) {
3875:                            listNode3.addAll(listNode2);
3876:                        }
3877:                    }
3878:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
3879:                    pastNode9 = (PAst) nodeArrayList3.get(0);
3880:
3881:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
3882:                            null, null, null, null, pastNode9);
3883:                }
3884:                nodeList.add(pgrammarNode1);
3885:                return nodeList;
3886:            }
3887:
3888:            ArrayList new68() /* reduce AAgrammar69Grammar */
3889:            {
3890:                ArrayList nodeList = new ArrayList();
3891:
3892:                ArrayList nodeArrayList2 = (ArrayList) pop();
3893:                ArrayList nodeArrayList1 = (ArrayList) pop();
3894:                PGrammar pgrammarNode1;
3895:                {
3896:                    TypedLinkedList listNode2 = new TypedLinkedList();
3897:                    Object nullNode3 = null;
3898:                    PStates pstatesNode4;
3899:                    Object nullNode5 = null;
3900:                    Object nullNode6 = null;
3901:                    Object nullNode7 = null;
3902:                    PAst pastNode8;
3903:                    {
3904:                    }
3905:                    pstatesNode4 = (PStates) nodeArrayList1.get(0);
3906:                    pastNode8 = (PAst) nodeArrayList2.get(0);
3907:
3908:                    pgrammarNode1 = new AGrammar(listNode2, null, pstatesNode4,
3909:                            null, null, null, pastNode8);
3910:                }
3911:                nodeList.add(pgrammarNode1);
3912:                return nodeList;
3913:            }
3914:
3915:            ArrayList new69() /* reduce AAgrammar70Grammar */
3916:            {
3917:                ArrayList nodeList = new ArrayList();
3918:
3919:                ArrayList nodeArrayList3 = (ArrayList) pop();
3920:                ArrayList nodeArrayList2 = (ArrayList) pop();
3921:                ArrayList nodeArrayList1 = (ArrayList) pop();
3922:                PGrammar pgrammarNode1;
3923:                {
3924:                    TypedLinkedList listNode3 = new TypedLinkedList();
3925:                    Object nullNode4 = null;
3926:                    PStates pstatesNode5;
3927:                    Object nullNode6 = null;
3928:                    Object nullNode7 = null;
3929:                    Object nullNode8 = null;
3930:                    PAst pastNode9;
3931:                    {
3932:                        TypedLinkedList listNode2 = new TypedLinkedList();
3933:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
3934:                        if (listNode2 != null) {
3935:                            listNode3.addAll(listNode2);
3936:                        }
3937:                    }
3938:                    pstatesNode5 = (PStates) nodeArrayList2.get(0);
3939:                    pastNode9 = (PAst) nodeArrayList3.get(0);
3940:
3941:                    pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5,
3942:                            null, null, null, pastNode9);
3943:                }
3944:                nodeList.add(pgrammarNode1);
3945:                return nodeList;
3946:            }
3947:
3948:            ArrayList new70() /* reduce AAgrammar71Grammar */
3949:            {
3950:                ArrayList nodeList = new ArrayList();
3951:
3952:                ArrayList nodeArrayList3 = (ArrayList) pop();
3953:                ArrayList nodeArrayList2 = (ArrayList) pop();
3954:                ArrayList nodeArrayList1 = (ArrayList) pop();
3955:                PGrammar pgrammarNode1;
3956:                {
3957:                    TypedLinkedList listNode2 = new TypedLinkedList();
3958:                    PHelpers phelpersNode3;
3959:                    PStates pstatesNode4;
3960:                    Object nullNode5 = null;
3961:                    Object nullNode6 = null;
3962:                    Object nullNode7 = null;
3963:                    PAst pastNode8;
3964:                    {
3965:                    }
3966:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
3967:                    pstatesNode4 = (PStates) nodeArrayList2.get(0);
3968:                    pastNode8 = (PAst) nodeArrayList3.get(0);
3969:
3970:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
3971:                            pstatesNode4, null, null, null, pastNode8);
3972:                }
3973:                nodeList.add(pgrammarNode1);
3974:                return nodeList;
3975:            }
3976:
3977:            ArrayList new71() /* reduce AAgrammar72Grammar */
3978:            {
3979:                ArrayList nodeList = new ArrayList();
3980:
3981:                ArrayList nodeArrayList4 = (ArrayList) pop();
3982:                ArrayList nodeArrayList3 = (ArrayList) pop();
3983:                ArrayList nodeArrayList2 = (ArrayList) pop();
3984:                ArrayList nodeArrayList1 = (ArrayList) pop();
3985:                PGrammar pgrammarNode1;
3986:                {
3987:                    TypedLinkedList listNode3 = new TypedLinkedList();
3988:                    PHelpers phelpersNode4;
3989:                    PStates pstatesNode5;
3990:                    Object nullNode6 = null;
3991:                    Object nullNode7 = null;
3992:                    Object nullNode8 = null;
3993:                    PAst pastNode9;
3994:                    {
3995:                        TypedLinkedList listNode2 = new TypedLinkedList();
3996:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
3997:                        if (listNode2 != null) {
3998:                            listNode3.addAll(listNode2);
3999:                        }
4000:                    }
4001:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
4002:                    pstatesNode5 = (PStates) nodeArrayList3.get(0);
4003:                    pastNode9 = (PAst) nodeArrayList4.get(0);
4004:
4005:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
4006:                            pstatesNode5, null, null, null, pastNode9);
4007:                }
4008:                nodeList.add(pgrammarNode1);
4009:                return nodeList;
4010:            }
4011:
4012:            ArrayList new72() /* reduce AAgrammar73Grammar */
4013:            {
4014:                ArrayList nodeList = new ArrayList();
4015:
4016:                ArrayList nodeArrayList2 = (ArrayList) pop();
4017:                ArrayList nodeArrayList1 = (ArrayList) pop();
4018:                PGrammar pgrammarNode1;
4019:                {
4020:                    TypedLinkedList listNode2 = new TypedLinkedList();
4021:                    Object nullNode3 = null;
4022:                    Object nullNode4 = null;
4023:                    PTokens ptokensNode5;
4024:                    Object nullNode6 = null;
4025:                    Object nullNode7 = null;
4026:                    PAst pastNode8;
4027:                    {
4028:                    }
4029:                    ptokensNode5 = (PTokens) nodeArrayList1.get(0);
4030:                    pastNode8 = (PAst) nodeArrayList2.get(0);
4031:
4032:                    pgrammarNode1 = new AGrammar(listNode2, null, null,
4033:                            ptokensNode5, null, null, pastNode8);
4034:                }
4035:                nodeList.add(pgrammarNode1);
4036:                return nodeList;
4037:            }
4038:
4039:            ArrayList new73() /* reduce AAgrammar74Grammar */
4040:            {
4041:                ArrayList nodeList = new ArrayList();
4042:
4043:                ArrayList nodeArrayList3 = (ArrayList) pop();
4044:                ArrayList nodeArrayList2 = (ArrayList) pop();
4045:                ArrayList nodeArrayList1 = (ArrayList) pop();
4046:                PGrammar pgrammarNode1;
4047:                {
4048:                    TypedLinkedList listNode3 = new TypedLinkedList();
4049:                    Object nullNode4 = null;
4050:                    Object nullNode5 = null;
4051:                    PTokens ptokensNode6;
4052:                    Object nullNode7 = null;
4053:                    Object nullNode8 = null;
4054:                    PAst pastNode9;
4055:                    {
4056:                        TypedLinkedList listNode2 = new TypedLinkedList();
4057:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
4058:                        if (listNode2 != null) {
4059:                            listNode3.addAll(listNode2);
4060:                        }
4061:                    }
4062:                    ptokensNode6 = (PTokens) nodeArrayList2.get(0);
4063:                    pastNode9 = (PAst) nodeArrayList3.get(0);
4064:
4065:                    pgrammarNode1 = new AGrammar(listNode3, null, null,
4066:                            ptokensNode6, null, null, pastNode9);
4067:                }
4068:                nodeList.add(pgrammarNode1);
4069:                return nodeList;
4070:            }
4071:
4072:            ArrayList new74() /* reduce AAgrammar75Grammar */
4073:            {
4074:                ArrayList nodeList = new ArrayList();
4075:
4076:                ArrayList nodeArrayList3 = (ArrayList) pop();
4077:                ArrayList nodeArrayList2 = (ArrayList) pop();
4078:                ArrayList nodeArrayList1 = (ArrayList) pop();
4079:                PGrammar pgrammarNode1;
4080:                {
4081:                    TypedLinkedList listNode2 = new TypedLinkedList();
4082:                    PHelpers phelpersNode3;
4083:                    Object nullNode4 = null;
4084:                    PTokens ptokensNode5;
4085:                    Object nullNode6 = null;
4086:                    Object nullNode7 = null;
4087:                    PAst pastNode8;
4088:                    {
4089:                    }
4090:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
4091:                    ptokensNode5 = (PTokens) nodeArrayList2.get(0);
4092:                    pastNode8 = (PAst) nodeArrayList3.get(0);
4093:
4094:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
4095:                            null, ptokensNode5, null, null, pastNode8);
4096:                }
4097:                nodeList.add(pgrammarNode1);
4098:                return nodeList;
4099:            }
4100:
4101:            ArrayList new75() /* reduce AAgrammar76Grammar */
4102:            {
4103:                ArrayList nodeList = new ArrayList();
4104:
4105:                ArrayList nodeArrayList4 = (ArrayList) pop();
4106:                ArrayList nodeArrayList3 = (ArrayList) pop();
4107:                ArrayList nodeArrayList2 = (ArrayList) pop();
4108:                ArrayList nodeArrayList1 = (ArrayList) pop();
4109:                PGrammar pgrammarNode1;
4110:                {
4111:                    TypedLinkedList listNode3 = new TypedLinkedList();
4112:                    PHelpers phelpersNode4;
4113:                    Object nullNode5 = null;
4114:                    PTokens ptokensNode6;
4115:                    Object nullNode7 = null;
4116:                    Object nullNode8 = null;
4117:                    PAst pastNode9;
4118:                    {
4119:                        TypedLinkedList listNode2 = new TypedLinkedList();
4120:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
4121:                        if (listNode2 != null) {
4122:                            listNode3.addAll(listNode2);
4123:                        }
4124:                    }
4125:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
4126:                    ptokensNode6 = (PTokens) nodeArrayList3.get(0);
4127:                    pastNode9 = (PAst) nodeArrayList4.get(0);
4128:
4129:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
4130:                            null, ptokensNode6, null, null, pastNode9);
4131:                }
4132:                nodeList.add(pgrammarNode1);
4133:                return nodeList;
4134:            }
4135:
4136:            ArrayList new76() /* reduce AAgrammar77Grammar */
4137:            {
4138:                ArrayList nodeList = new ArrayList();
4139:
4140:                ArrayList nodeArrayList3 = (ArrayList) pop();
4141:                ArrayList nodeArrayList2 = (ArrayList) pop();
4142:                ArrayList nodeArrayList1 = (ArrayList) pop();
4143:                PGrammar pgrammarNode1;
4144:                {
4145:                    TypedLinkedList listNode2 = new TypedLinkedList();
4146:                    Object nullNode3 = null;
4147:                    PStates pstatesNode4;
4148:                    PTokens ptokensNode5;
4149:                    Object nullNode6 = null;
4150:                    Object nullNode7 = null;
4151:                    PAst pastNode8;
4152:                    {
4153:                    }
4154:                    pstatesNode4 = (PStates) nodeArrayList1.get(0);
4155:                    ptokensNode5 = (PTokens) nodeArrayList2.get(0);
4156:                    pastNode8 = (PAst) nodeArrayList3.get(0);
4157:
4158:                    pgrammarNode1 = new AGrammar(listNode2, null, pstatesNode4,
4159:                            ptokensNode5, null, null, pastNode8);
4160:                }
4161:                nodeList.add(pgrammarNode1);
4162:                return nodeList;
4163:            }
4164:
4165:            ArrayList new77() /* reduce AAgrammar78Grammar */
4166:            {
4167:                ArrayList nodeList = new ArrayList();
4168:
4169:                ArrayList nodeArrayList4 = (ArrayList) pop();
4170:                ArrayList nodeArrayList3 = (ArrayList) pop();
4171:                ArrayList nodeArrayList2 = (ArrayList) pop();
4172:                ArrayList nodeArrayList1 = (ArrayList) pop();
4173:                PGrammar pgrammarNode1;
4174:                {
4175:                    TypedLinkedList listNode3 = new TypedLinkedList();
4176:                    Object nullNode4 = null;
4177:                    PStates pstatesNode5;
4178:                    PTokens ptokensNode6;
4179:                    Object nullNode7 = null;
4180:                    Object nullNode8 = null;
4181:                    PAst pastNode9;
4182:                    {
4183:                        TypedLinkedList listNode2 = new TypedLinkedList();
4184:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
4185:                        if (listNode2 != null) {
4186:                            listNode3.addAll(listNode2);
4187:                        }
4188:                    }
4189:                    pstatesNode5 = (PStates) nodeArrayList2.get(0);
4190:                    ptokensNode6 = (PTokens) nodeArrayList3.get(0);
4191:                    pastNode9 = (PAst) nodeArrayList4.get(0);
4192:
4193:                    pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5,
4194:                            ptokensNode6, null, null, pastNode9);
4195:                }
4196:                nodeList.add(pgrammarNode1);
4197:                return nodeList;
4198:            }
4199:
4200:            ArrayList new78() /* reduce AAgrammar79Grammar */
4201:            {
4202:                ArrayList nodeList = new ArrayList();
4203:
4204:                ArrayList nodeArrayList4 = (ArrayList) pop();
4205:                ArrayList nodeArrayList3 = (ArrayList) pop();
4206:                ArrayList nodeArrayList2 = (ArrayList) pop();
4207:                ArrayList nodeArrayList1 = (ArrayList) pop();
4208:                PGrammar pgrammarNode1;
4209:                {
4210:                    TypedLinkedList listNode2 = new TypedLinkedList();
4211:                    PHelpers phelpersNode3;
4212:                    PStates pstatesNode4;
4213:                    PTokens ptokensNode5;
4214:                    Object nullNode6 = null;
4215:                    Object nullNode7 = null;
4216:                    PAst pastNode8;
4217:                    {
4218:                    }
4219:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
4220:                    pstatesNode4 = (PStates) nodeArrayList2.get(0);
4221:                    ptokensNode5 = (PTokens) nodeArrayList3.get(0);
4222:                    pastNode8 = (PAst) nodeArrayList4.get(0);
4223:
4224:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
4225:                            pstatesNode4, ptokensNode5, null, null, pastNode8);
4226:                }
4227:                nodeList.add(pgrammarNode1);
4228:                return nodeList;
4229:            }
4230:
4231:            ArrayList new79() /* reduce AAgrammar80Grammar */
4232:            {
4233:                ArrayList nodeList = new ArrayList();
4234:
4235:                ArrayList nodeArrayList5 = (ArrayList) pop();
4236:                ArrayList nodeArrayList4 = (ArrayList) pop();
4237:                ArrayList nodeArrayList3 = (ArrayList) pop();
4238:                ArrayList nodeArrayList2 = (ArrayList) pop();
4239:                ArrayList nodeArrayList1 = (ArrayList) pop();
4240:                PGrammar pgrammarNode1;
4241:                {
4242:                    TypedLinkedList listNode3 = new TypedLinkedList();
4243:                    PHelpers phelpersNode4;
4244:                    PStates pstatesNode5;
4245:                    PTokens ptokensNode6;
4246:                    Object nullNode7 = null;
4247:                    Object nullNode8 = null;
4248:                    PAst pastNode9;
4249:                    {
4250:                        TypedLinkedList listNode2 = new TypedLinkedList();
4251:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
4252:                        if (listNode2 != null) {
4253:                            listNode3.addAll(listNode2);
4254:                        }
4255:                    }
4256:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
4257:                    pstatesNode5 = (PStates) nodeArrayList3.get(0);
4258:                    ptokensNode6 = (PTokens) nodeArrayList4.get(0);
4259:                    pastNode9 = (PAst) nodeArrayList5.get(0);
4260:
4261:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
4262:                            pstatesNode5, ptokensNode6, null, null, pastNode9);
4263:                }
4264:                nodeList.add(pgrammarNode1);
4265:                return nodeList;
4266:            }
4267:
4268:            ArrayList new80() /* reduce AAgrammar81Grammar */
4269:            {
4270:                ArrayList nodeList = new ArrayList();
4271:
4272:                ArrayList nodeArrayList2 = (ArrayList) pop();
4273:                ArrayList nodeArrayList1 = (ArrayList) pop();
4274:                PGrammar pgrammarNode1;
4275:                {
4276:                    TypedLinkedList listNode2 = new TypedLinkedList();
4277:                    Object nullNode3 = null;
4278:                    Object nullNode4 = null;
4279:                    Object nullNode5 = null;
4280:                    PIgnTokens pigntokensNode6;
4281:                    Object nullNode7 = null;
4282:                    PAst pastNode8;
4283:                    {
4284:                    }
4285:                    pigntokensNode6 = (PIgnTokens) nodeArrayList1.get(0);
4286:                    pastNode8 = (PAst) nodeArrayList2.get(0);
4287:
4288:                    pgrammarNode1 = new AGrammar(listNode2, null, null, null,
4289:                            pigntokensNode6, null, pastNode8);
4290:                }
4291:                nodeList.add(pgrammarNode1);
4292:                return nodeList;
4293:            }
4294:
4295:            ArrayList new81() /* reduce AAgrammar82Grammar */
4296:            {
4297:                ArrayList nodeList = new ArrayList();
4298:
4299:                ArrayList nodeArrayList3 = (ArrayList) pop();
4300:                ArrayList nodeArrayList2 = (ArrayList) pop();
4301:                ArrayList nodeArrayList1 = (ArrayList) pop();
4302:                PGrammar pgrammarNode1;
4303:                {
4304:                    TypedLinkedList listNode3 = new TypedLinkedList();
4305:                    Object nullNode4 = null;
4306:                    Object nullNode5 = null;
4307:                    Object nullNode6 = null;
4308:                    PIgnTokens pigntokensNode7;
4309:                    Object nullNode8 = null;
4310:                    PAst pastNode9;
4311:                    {
4312:                        TypedLinkedList listNode2 = new TypedLinkedList();
4313:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
4314:                        if (listNode2 != null) {
4315:                            listNode3.addAll(listNode2);
4316:                        }
4317:                    }
4318:                    pigntokensNode7 = (PIgnTokens) nodeArrayList2.get(0);
4319:                    pastNode9 = (PAst) nodeArrayList3.get(0);
4320:
4321:                    pgrammarNode1 = new AGrammar(listNode3, null, null, null,
4322:                            pigntokensNode7, null, pastNode9);
4323:                }
4324:                nodeList.add(pgrammarNode1);
4325:                return nodeList;
4326:            }
4327:
4328:            ArrayList new82() /* reduce AAgrammar83Grammar */
4329:            {
4330:                ArrayList nodeList = new ArrayList();
4331:
4332:                ArrayList nodeArrayList3 = (ArrayList) pop();
4333:                ArrayList nodeArrayList2 = (ArrayList) pop();
4334:                ArrayList nodeArrayList1 = (ArrayList) pop();
4335:                PGrammar pgrammarNode1;
4336:                {
4337:                    TypedLinkedList listNode2 = new TypedLinkedList();
4338:                    PHelpers phelpersNode3;
4339:                    Object nullNode4 = null;
4340:                    Object nullNode5 = null;
4341:                    PIgnTokens pigntokensNode6;
4342:                    Object nullNode7 = null;
4343:                    PAst pastNode8;
4344:                    {
4345:                    }
4346:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
4347:                    pigntokensNode6 = (PIgnTokens) nodeArrayList2.get(0);
4348:                    pastNode8 = (PAst) nodeArrayList3.get(0);
4349:
4350:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
4351:                            null, null, pigntokensNode6, null, pastNode8);
4352:                }
4353:                nodeList.add(pgrammarNode1);
4354:                return nodeList;
4355:            }
4356:
4357:            ArrayList new83() /* reduce AAgrammar84Grammar */
4358:            {
4359:                ArrayList nodeList = new ArrayList();
4360:
4361:                ArrayList nodeArrayList4 = (ArrayList) pop();
4362:                ArrayList nodeArrayList3 = (ArrayList) pop();
4363:                ArrayList nodeArrayList2 = (ArrayList) pop();
4364:                ArrayList nodeArrayList1 = (ArrayList) pop();
4365:                PGrammar pgrammarNode1;
4366:                {
4367:                    TypedLinkedList listNode3 = new TypedLinkedList();
4368:                    PHelpers phelpersNode4;
4369:                    Object nullNode5 = null;
4370:                    Object nullNode6 = null;
4371:                    PIgnTokens pigntokensNode7;
4372:                    Object nullNode8 = null;
4373:                    PAst pastNode9;
4374:                    {
4375:                        TypedLinkedList listNode2 = new TypedLinkedList();
4376:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
4377:                        if (listNode2 != null) {
4378:                            listNode3.addAll(listNode2);
4379:                        }
4380:                    }
4381:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
4382:                    pigntokensNode7 = (PIgnTokens) nodeArrayList3.get(0);
4383:                    pastNode9 = (PAst) nodeArrayList4.get(0);
4384:
4385:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
4386:                            null, null, pigntokensNode7, null, pastNode9);
4387:                }
4388:                nodeList.add(pgrammarNode1);
4389:                return nodeList;
4390:            }
4391:
4392:            ArrayList new84() /* reduce AAgrammar85Grammar */
4393:            {
4394:                ArrayList nodeList = new ArrayList();
4395:
4396:                ArrayList nodeArrayList3 = (ArrayList) pop();
4397:                ArrayList nodeArrayList2 = (ArrayList) pop();
4398:                ArrayList nodeArrayList1 = (ArrayList) pop();
4399:                PGrammar pgrammarNode1;
4400:                {
4401:                    TypedLinkedList listNode2 = new TypedLinkedList();
4402:                    Object nullNode3 = null;
4403:                    PStates pstatesNode4;
4404:                    Object nullNode5 = null;
4405:                    PIgnTokens pigntokensNode6;
4406:                    Object nullNode7 = null;
4407:                    PAst pastNode8;
4408:                    {
4409:                    }
4410:                    pstatesNode4 = (PStates) nodeArrayList1.get(0);
4411:                    pigntokensNode6 = (PIgnTokens) nodeArrayList2.get(0);
4412:                    pastNode8 = (PAst) nodeArrayList3.get(0);
4413:
4414:                    pgrammarNode1 = new AGrammar(listNode2, null, pstatesNode4,
4415:                            null, pigntokensNode6, null, pastNode8);
4416:                }
4417:                nodeList.add(pgrammarNode1);
4418:                return nodeList;
4419:            }
4420:
4421:            ArrayList new85() /* reduce AAgrammar86Grammar */
4422:            {
4423:                ArrayList nodeList = new ArrayList();
4424:
4425:                ArrayList nodeArrayList4 = (ArrayList) pop();
4426:                ArrayList nodeArrayList3 = (ArrayList) pop();
4427:                ArrayList nodeArrayList2 = (ArrayList) pop();
4428:                ArrayList nodeArrayList1 = (ArrayList) pop();
4429:                PGrammar pgrammarNode1;
4430:                {
4431:                    TypedLinkedList listNode3 = new TypedLinkedList();
4432:                    Object nullNode4 = null;
4433:                    PStates pstatesNode5;
4434:                    Object nullNode6 = null;
4435:                    PIgnTokens pigntokensNode7;
4436:                    Object nullNode8 = null;
4437:                    PAst pastNode9;
4438:                    {
4439:                        TypedLinkedList listNode2 = new TypedLinkedList();
4440:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
4441:                        if (listNode2 != null) {
4442:                            listNode3.addAll(listNode2);
4443:                        }
4444:                    }
4445:                    pstatesNode5 = (PStates) nodeArrayList2.get(0);
4446:                    pigntokensNode7 = (PIgnTokens) nodeArrayList3.get(0);
4447:                    pastNode9 = (PAst) nodeArrayList4.get(0);
4448:
4449:                    pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5,
4450:                            null, pigntokensNode7, null, pastNode9);
4451:                }
4452:                nodeList.add(pgrammarNode1);
4453:                return nodeList;
4454:            }
4455:
4456:            ArrayList new86() /* reduce AAgrammar87Grammar */
4457:            {
4458:                ArrayList nodeList = new ArrayList();
4459:
4460:                ArrayList nodeArrayList4 = (ArrayList) pop();
4461:                ArrayList nodeArrayList3 = (ArrayList) pop();
4462:                ArrayList nodeArrayList2 = (ArrayList) pop();
4463:                ArrayList nodeArrayList1 = (ArrayList) pop();
4464:                PGrammar pgrammarNode1;
4465:                {
4466:                    TypedLinkedList listNode2 = new TypedLinkedList();
4467:                    PHelpers phelpersNode3;
4468:                    PStates pstatesNode4;
4469:                    Object nullNode5 = null;
4470:                    PIgnTokens pigntokensNode6;
4471:                    Object nullNode7 = null;
4472:                    PAst pastNode8;
4473:                    {
4474:                    }
4475:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
4476:                    pstatesNode4 = (PStates) nodeArrayList2.get(0);
4477:                    pigntokensNode6 = (PIgnTokens) nodeArrayList3.get(0);
4478:                    pastNode8 = (PAst) nodeArrayList4.get(0);
4479:
4480:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
4481:                            pstatesNode4, null, pigntokensNode6, null,
4482:                            pastNode8);
4483:                }
4484:                nodeList.add(pgrammarNode1);
4485:                return nodeList;
4486:            }
4487:
4488:            ArrayList new87() /* reduce AAgrammar88Grammar */
4489:            {
4490:                ArrayList nodeList = new ArrayList();
4491:
4492:                ArrayList nodeArrayList5 = (ArrayList) pop();
4493:                ArrayList nodeArrayList4 = (ArrayList) pop();
4494:                ArrayList nodeArrayList3 = (ArrayList) pop();
4495:                ArrayList nodeArrayList2 = (ArrayList) pop();
4496:                ArrayList nodeArrayList1 = (ArrayList) pop();
4497:                PGrammar pgrammarNode1;
4498:                {
4499:                    TypedLinkedList listNode3 = new TypedLinkedList();
4500:                    PHelpers phelpersNode4;
4501:                    PStates pstatesNode5;
4502:                    Object nullNode6 = null;
4503:                    PIgnTokens pigntokensNode7;
4504:                    Object nullNode8 = null;
4505:                    PAst pastNode9;
4506:                    {
4507:                        TypedLinkedList listNode2 = new TypedLinkedList();
4508:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
4509:                        if (listNode2 != null) {
4510:                            listNode3.addAll(listNode2);
4511:                        }
4512:                    }
4513:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
4514:                    pstatesNode5 = (PStates) nodeArrayList3.get(0);
4515:                    pigntokensNode7 = (PIgnTokens) nodeArrayList4.get(0);
4516:                    pastNode9 = (PAst) nodeArrayList5.get(0);
4517:
4518:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
4519:                            pstatesNode5, null, pigntokensNode7, null,
4520:                            pastNode9);
4521:                }
4522:                nodeList.add(pgrammarNode1);
4523:                return nodeList;
4524:            }
4525:
4526:            ArrayList new88() /* reduce AAgrammar89Grammar */
4527:            {
4528:                ArrayList nodeList = new ArrayList();
4529:
4530:                ArrayList nodeArrayList3 = (ArrayList) pop();
4531:                ArrayList nodeArrayList2 = (ArrayList) pop();
4532:                ArrayList nodeArrayList1 = (ArrayList) pop();
4533:                PGrammar pgrammarNode1;
4534:                {
4535:                    TypedLinkedList listNode2 = new TypedLinkedList();
4536:                    Object nullNode3 = null;
4537:                    Object nullNode4 = null;
4538:                    PTokens ptokensNode5;
4539:                    PIgnTokens pigntokensNode6;
4540:                    Object nullNode7 = null;
4541:                    PAst pastNode8;
4542:                    {
4543:                    }
4544:                    ptokensNode5 = (PTokens) nodeArrayList1.get(0);
4545:                    pigntokensNode6 = (PIgnTokens) nodeArrayList2.get(0);
4546:                    pastNode8 = (PAst) nodeArrayList3.get(0);
4547:
4548:                    pgrammarNode1 = new AGrammar(listNode2, null, null,
4549:                            ptokensNode5, pigntokensNode6, null, pastNode8);
4550:                }
4551:                nodeList.add(pgrammarNode1);
4552:                return nodeList;
4553:            }
4554:
4555:            ArrayList new89() /* reduce AAgrammar90Grammar */
4556:            {
4557:                ArrayList nodeList = new ArrayList();
4558:
4559:                ArrayList nodeArrayList4 = (ArrayList) pop();
4560:                ArrayList nodeArrayList3 = (ArrayList) pop();
4561:                ArrayList nodeArrayList2 = (ArrayList) pop();
4562:                ArrayList nodeArrayList1 = (ArrayList) pop();
4563:                PGrammar pgrammarNode1;
4564:                {
4565:                    TypedLinkedList listNode3 = new TypedLinkedList();
4566:                    Object nullNode4 = null;
4567:                    Object nullNode5 = null;
4568:                    PTokens ptokensNode6;
4569:                    PIgnTokens pigntokensNode7;
4570:                    Object nullNode8 = null;
4571:                    PAst pastNode9;
4572:                    {
4573:                        TypedLinkedList listNode2 = new TypedLinkedList();
4574:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
4575:                        if (listNode2 != null) {
4576:                            listNode3.addAll(listNode2);
4577:                        }
4578:                    }
4579:                    ptokensNode6 = (PTokens) nodeArrayList2.get(0);
4580:                    pigntokensNode7 = (PIgnTokens) nodeArrayList3.get(0);
4581:                    pastNode9 = (PAst) nodeArrayList4.get(0);
4582:
4583:                    pgrammarNode1 = new AGrammar(listNode3, null, null,
4584:                            ptokensNode6, pigntokensNode7, null, pastNode9);
4585:                }
4586:                nodeList.add(pgrammarNode1);
4587:                return nodeList;
4588:            }
4589:
4590:            ArrayList new90() /* reduce AAgrammar91Grammar */
4591:            {
4592:                ArrayList nodeList = new ArrayList();
4593:
4594:                ArrayList nodeArrayList4 = (ArrayList) pop();
4595:                ArrayList nodeArrayList3 = (ArrayList) pop();
4596:                ArrayList nodeArrayList2 = (ArrayList) pop();
4597:                ArrayList nodeArrayList1 = (ArrayList) pop();
4598:                PGrammar pgrammarNode1;
4599:                {
4600:                    TypedLinkedList listNode2 = new TypedLinkedList();
4601:                    PHelpers phelpersNode3;
4602:                    Object nullNode4 = null;
4603:                    PTokens ptokensNode5;
4604:                    PIgnTokens pigntokensNode6;
4605:                    Object nullNode7 = null;
4606:                    PAst pastNode8;
4607:                    {
4608:                    }
4609:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
4610:                    ptokensNode5 = (PTokens) nodeArrayList2.get(0);
4611:                    pigntokensNode6 = (PIgnTokens) nodeArrayList3.get(0);
4612:                    pastNode8 = (PAst) nodeArrayList4.get(0);
4613:
4614:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
4615:                            null, ptokensNode5, pigntokensNode6, null,
4616:                            pastNode8);
4617:                }
4618:                nodeList.add(pgrammarNode1);
4619:                return nodeList;
4620:            }
4621:
4622:            ArrayList new91() /* reduce AAgrammar92Grammar */
4623:            {
4624:                ArrayList nodeList = new ArrayList();
4625:
4626:                ArrayList nodeArrayList5 = (ArrayList) pop();
4627:                ArrayList nodeArrayList4 = (ArrayList) pop();
4628:                ArrayList nodeArrayList3 = (ArrayList) pop();
4629:                ArrayList nodeArrayList2 = (ArrayList) pop();
4630:                ArrayList nodeArrayList1 = (ArrayList) pop();
4631:                PGrammar pgrammarNode1;
4632:                {
4633:                    TypedLinkedList listNode3 = new TypedLinkedList();
4634:                    PHelpers phelpersNode4;
4635:                    Object nullNode5 = null;
4636:                    PTokens ptokensNode6;
4637:                    PIgnTokens pigntokensNode7;
4638:                    Object nullNode8 = null;
4639:                    PAst pastNode9;
4640:                    {
4641:                        TypedLinkedList listNode2 = new TypedLinkedList();
4642:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
4643:                        if (listNode2 != null) {
4644:                            listNode3.addAll(listNode2);
4645:                        }
4646:                    }
4647:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
4648:                    ptokensNode6 = (PTokens) nodeArrayList3.get(0);
4649:                    pigntokensNode7 = (PIgnTokens) nodeArrayList4.get(0);
4650:                    pastNode9 = (PAst) nodeArrayList5.get(0);
4651:
4652:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
4653:                            null, ptokensNode6, pigntokensNode7, null,
4654:                            pastNode9);
4655:                }
4656:                nodeList.add(pgrammarNode1);
4657:                return nodeList;
4658:            }
4659:
4660:            ArrayList new92() /* reduce AAgrammar93Grammar */
4661:            {
4662:                ArrayList nodeList = new ArrayList();
4663:
4664:                ArrayList nodeArrayList4 = (ArrayList) pop();
4665:                ArrayList nodeArrayList3 = (ArrayList) pop();
4666:                ArrayList nodeArrayList2 = (ArrayList) pop();
4667:                ArrayList nodeArrayList1 = (ArrayList) pop();
4668:                PGrammar pgrammarNode1;
4669:                {
4670:                    TypedLinkedList listNode2 = new TypedLinkedList();
4671:                    Object nullNode3 = null;
4672:                    PStates pstatesNode4;
4673:                    PTokens ptokensNode5;
4674:                    PIgnTokens pigntokensNode6;
4675:                    Object nullNode7 = null;
4676:                    PAst pastNode8;
4677:                    {
4678:                    }
4679:                    pstatesNode4 = (PStates) nodeArrayList1.get(0);
4680:                    ptokensNode5 = (PTokens) nodeArrayList2.get(0);
4681:                    pigntokensNode6 = (PIgnTokens) nodeArrayList3.get(0);
4682:                    pastNode8 = (PAst) nodeArrayList4.get(0);
4683:
4684:                    pgrammarNode1 = new AGrammar(listNode2, null, pstatesNode4,
4685:                            ptokensNode5, pigntokensNode6, null, pastNode8);
4686:                }
4687:                nodeList.add(pgrammarNode1);
4688:                return nodeList;
4689:            }
4690:
4691:            ArrayList new93() /* reduce AAgrammar94Grammar */
4692:            {
4693:                ArrayList nodeList = new ArrayList();
4694:
4695:                ArrayList nodeArrayList5 = (ArrayList) pop();
4696:                ArrayList nodeArrayList4 = (ArrayList) pop();
4697:                ArrayList nodeArrayList3 = (ArrayList) pop();
4698:                ArrayList nodeArrayList2 = (ArrayList) pop();
4699:                ArrayList nodeArrayList1 = (ArrayList) pop();
4700:                PGrammar pgrammarNode1;
4701:                {
4702:                    TypedLinkedList listNode3 = new TypedLinkedList();
4703:                    Object nullNode4 = null;
4704:                    PStates pstatesNode5;
4705:                    PTokens ptokensNode6;
4706:                    PIgnTokens pigntokensNode7;
4707:                    Object nullNode8 = null;
4708:                    PAst pastNode9;
4709:                    {
4710:                        TypedLinkedList listNode2 = new TypedLinkedList();
4711:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
4712:                        if (listNode2 != null) {
4713:                            listNode3.addAll(listNode2);
4714:                        }
4715:                    }
4716:                    pstatesNode5 = (PStates) nodeArrayList2.get(0);
4717:                    ptokensNode6 = (PTokens) nodeArrayList3.get(0);
4718:                    pigntokensNode7 = (PIgnTokens) nodeArrayList4.get(0);
4719:                    pastNode9 = (PAst) nodeArrayList5.get(0);
4720:
4721:                    pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5,
4722:                            ptokensNode6, pigntokensNode7, null, pastNode9);
4723:                }
4724:                nodeList.add(pgrammarNode1);
4725:                return nodeList;
4726:            }
4727:
4728:            ArrayList new94() /* reduce AAgrammar95Grammar */
4729:            {
4730:                ArrayList nodeList = new ArrayList();
4731:
4732:                ArrayList nodeArrayList5 = (ArrayList) pop();
4733:                ArrayList nodeArrayList4 = (ArrayList) pop();
4734:                ArrayList nodeArrayList3 = (ArrayList) pop();
4735:                ArrayList nodeArrayList2 = (ArrayList) pop();
4736:                ArrayList nodeArrayList1 = (ArrayList) pop();
4737:                PGrammar pgrammarNode1;
4738:                {
4739:                    TypedLinkedList listNode2 = new TypedLinkedList();
4740:                    PHelpers phelpersNode3;
4741:                    PStates pstatesNode4;
4742:                    PTokens ptokensNode5;
4743:                    PIgnTokens pigntokensNode6;
4744:                    Object nullNode7 = null;
4745:                    PAst pastNode8;
4746:                    {
4747:                    }
4748:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
4749:                    pstatesNode4 = (PStates) nodeArrayList2.get(0);
4750:                    ptokensNode5 = (PTokens) nodeArrayList3.get(0);
4751:                    pigntokensNode6 = (PIgnTokens) nodeArrayList4.get(0);
4752:                    pastNode8 = (PAst) nodeArrayList5.get(0);
4753:
4754:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
4755:                            pstatesNode4, ptokensNode5, pigntokensNode6, null,
4756:                            pastNode8);
4757:                }
4758:                nodeList.add(pgrammarNode1);
4759:                return nodeList;
4760:            }
4761:
4762:            ArrayList new95() /* reduce AAgrammar96Grammar */
4763:            {
4764:                ArrayList nodeList = new ArrayList();
4765:
4766:                ArrayList nodeArrayList6 = (ArrayList) pop();
4767:                ArrayList nodeArrayList5 = (ArrayList) pop();
4768:                ArrayList nodeArrayList4 = (ArrayList) pop();
4769:                ArrayList nodeArrayList3 = (ArrayList) pop();
4770:                ArrayList nodeArrayList2 = (ArrayList) pop();
4771:                ArrayList nodeArrayList1 = (ArrayList) pop();
4772:                PGrammar pgrammarNode1;
4773:                {
4774:                    TypedLinkedList listNode3 = new TypedLinkedList();
4775:                    PHelpers phelpersNode4;
4776:                    PStates pstatesNode5;
4777:                    PTokens ptokensNode6;
4778:                    PIgnTokens pigntokensNode7;
4779:                    Object nullNode8 = null;
4780:                    PAst pastNode9;
4781:                    {
4782:                        TypedLinkedList listNode2 = new TypedLinkedList();
4783:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
4784:                        if (listNode2 != null) {
4785:                            listNode3.addAll(listNode2);
4786:                        }
4787:                    }
4788:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
4789:                    pstatesNode5 = (PStates) nodeArrayList3.get(0);
4790:                    ptokensNode6 = (PTokens) nodeArrayList4.get(0);
4791:                    pigntokensNode7 = (PIgnTokens) nodeArrayList5.get(0);
4792:                    pastNode9 = (PAst) nodeArrayList6.get(0);
4793:
4794:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
4795:                            pstatesNode5, ptokensNode6, pigntokensNode7, null,
4796:                            pastNode9);
4797:                }
4798:                nodeList.add(pgrammarNode1);
4799:                return nodeList;
4800:            }
4801:
4802:            ArrayList new96() /* reduce AAgrammar97Grammar */
4803:            {
4804:                ArrayList nodeList = new ArrayList();
4805:
4806:                ArrayList nodeArrayList2 = (ArrayList) pop();
4807:                ArrayList nodeArrayList1 = (ArrayList) pop();
4808:                PGrammar pgrammarNode1;
4809:                {
4810:                    TypedLinkedList listNode2 = new TypedLinkedList();
4811:                    Object nullNode3 = null;
4812:                    Object nullNode4 = null;
4813:                    Object nullNode5 = null;
4814:                    Object nullNode6 = null;
4815:                    PProductions pproductionsNode7;
4816:                    PAst pastNode8;
4817:                    {
4818:                    }
4819:                    pproductionsNode7 = (PProductions) nodeArrayList1.get(0);
4820:                    pastNode8 = (PAst) nodeArrayList2.get(0);
4821:
4822:                    pgrammarNode1 = new AGrammar(listNode2, null, null, null,
4823:                            null, pproductionsNode7, pastNode8);
4824:                }
4825:                nodeList.add(pgrammarNode1);
4826:                return nodeList;
4827:            }
4828:
4829:            ArrayList new97() /* reduce AAgrammar98Grammar */
4830:            {
4831:                ArrayList nodeList = new ArrayList();
4832:
4833:                ArrayList nodeArrayList3 = (ArrayList) pop();
4834:                ArrayList nodeArrayList2 = (ArrayList) pop();
4835:                ArrayList nodeArrayList1 = (ArrayList) pop();
4836:                PGrammar pgrammarNode1;
4837:                {
4838:                    TypedLinkedList listNode3 = new TypedLinkedList();
4839:                    Object nullNode4 = null;
4840:                    Object nullNode5 = null;
4841:                    Object nullNode6 = null;
4842:                    Object nullNode7 = null;
4843:                    PProductions pproductionsNode8;
4844:                    PAst pastNode9;
4845:                    {
4846:                        TypedLinkedList listNode2 = new TypedLinkedList();
4847:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
4848:                        if (listNode2 != null) {
4849:                            listNode3.addAll(listNode2);
4850:                        }
4851:                    }
4852:                    pproductionsNode8 = (PProductions) nodeArrayList2.get(0);
4853:                    pastNode9 = (PAst) nodeArrayList3.get(0);
4854:
4855:                    pgrammarNode1 = new AGrammar(listNode3, null, null, null,
4856:                            null, pproductionsNode8, pastNode9);
4857:                }
4858:                nodeList.add(pgrammarNode1);
4859:                return nodeList;
4860:            }
4861:
4862:            ArrayList new98() /* reduce AAgrammar99Grammar */
4863:            {
4864:                ArrayList nodeList = new ArrayList();
4865:
4866:                ArrayList nodeArrayList3 = (ArrayList) pop();
4867:                ArrayList nodeArrayList2 = (ArrayList) pop();
4868:                ArrayList nodeArrayList1 = (ArrayList) pop();
4869:                PGrammar pgrammarNode1;
4870:                {
4871:                    TypedLinkedList listNode2 = new TypedLinkedList();
4872:                    PHelpers phelpersNode3;
4873:                    Object nullNode4 = null;
4874:                    Object nullNode5 = null;
4875:                    Object nullNode6 = null;
4876:                    PProductions pproductionsNode7;
4877:                    PAst pastNode8;
4878:                    {
4879:                    }
4880:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
4881:                    pproductionsNode7 = (PProductions) nodeArrayList2.get(0);
4882:                    pastNode8 = (PAst) nodeArrayList3.get(0);
4883:
4884:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
4885:                            null, null, null, pproductionsNode7, pastNode8);
4886:                }
4887:                nodeList.add(pgrammarNode1);
4888:                return nodeList;
4889:            }
4890:
4891:            ArrayList new99() /* reduce AAgrammar100Grammar */
4892:            {
4893:                ArrayList nodeList = new ArrayList();
4894:
4895:                ArrayList nodeArrayList4 = (ArrayList) pop();
4896:                ArrayList nodeArrayList3 = (ArrayList) pop();
4897:                ArrayList nodeArrayList2 = (ArrayList) pop();
4898:                ArrayList nodeArrayList1 = (ArrayList) pop();
4899:                PGrammar pgrammarNode1;
4900:                {
4901:                    TypedLinkedList listNode3 = new TypedLinkedList();
4902:                    PHelpers phelpersNode4;
4903:                    Object nullNode5 = null;
4904:                    Object nullNode6 = null;
4905:                    Object nullNode7 = null;
4906:                    PProductions pproductionsNode8;
4907:                    PAst pastNode9;
4908:                    {
4909:                        TypedLinkedList listNode2 = new TypedLinkedList();
4910:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
4911:                        if (listNode2 != null) {
4912:                            listNode3.addAll(listNode2);
4913:                        }
4914:                    }
4915:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
4916:                    pproductionsNode8 = (PProductions) nodeArrayList3.get(0);
4917:                    pastNode9 = (PAst) nodeArrayList4.get(0);
4918:
4919:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
4920:                            null, null, null, pproductionsNode8, pastNode9);
4921:                }
4922:                nodeList.add(pgrammarNode1);
4923:                return nodeList;
4924:            }
4925:
4926:            ArrayList new100() /* reduce AAgrammar101Grammar */
4927:            {
4928:                ArrayList nodeList = new ArrayList();
4929:
4930:                ArrayList nodeArrayList3 = (ArrayList) pop();
4931:                ArrayList nodeArrayList2 = (ArrayList) pop();
4932:                ArrayList nodeArrayList1 = (ArrayList) pop();
4933:                PGrammar pgrammarNode1;
4934:                {
4935:                    TypedLinkedList listNode2 = new TypedLinkedList();
4936:                    Object nullNode3 = null;
4937:                    PStates pstatesNode4;
4938:                    Object nullNode5 = null;
4939:                    Object nullNode6 = null;
4940:                    PProductions pproductionsNode7;
4941:                    PAst pastNode8;
4942:                    {
4943:                    }
4944:                    pstatesNode4 = (PStates) nodeArrayList1.get(0);
4945:                    pproductionsNode7 = (PProductions) nodeArrayList2.get(0);
4946:                    pastNode8 = (PAst) nodeArrayList3.get(0);
4947:
4948:                    pgrammarNode1 = new AGrammar(listNode2, null, pstatesNode4,
4949:                            null, null, pproductionsNode7, pastNode8);
4950:                }
4951:                nodeList.add(pgrammarNode1);
4952:                return nodeList;
4953:            }
4954:
4955:            ArrayList new101() /* reduce AAgrammar102Grammar */
4956:            {
4957:                ArrayList nodeList = new ArrayList();
4958:
4959:                ArrayList nodeArrayList4 = (ArrayList) pop();
4960:                ArrayList nodeArrayList3 = (ArrayList) pop();
4961:                ArrayList nodeArrayList2 = (ArrayList) pop();
4962:                ArrayList nodeArrayList1 = (ArrayList) pop();
4963:                PGrammar pgrammarNode1;
4964:                {
4965:                    TypedLinkedList listNode3 = new TypedLinkedList();
4966:                    Object nullNode4 = null;
4967:                    PStates pstatesNode5;
4968:                    Object nullNode6 = null;
4969:                    Object nullNode7 = null;
4970:                    PProductions pproductionsNode8;
4971:                    PAst pastNode9;
4972:                    {
4973:                        TypedLinkedList listNode2 = new TypedLinkedList();
4974:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
4975:                        if (listNode2 != null) {
4976:                            listNode3.addAll(listNode2);
4977:                        }
4978:                    }
4979:                    pstatesNode5 = (PStates) nodeArrayList2.get(0);
4980:                    pproductionsNode8 = (PProductions) nodeArrayList3.get(0);
4981:                    pastNode9 = (PAst) nodeArrayList4.get(0);
4982:
4983:                    pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5,
4984:                            null, null, pproductionsNode8, pastNode9);
4985:                }
4986:                nodeList.add(pgrammarNode1);
4987:                return nodeList;
4988:            }
4989:
4990:            ArrayList new102() /* reduce AAgrammar103Grammar */
4991:            {
4992:                ArrayList nodeList = new ArrayList();
4993:
4994:                ArrayList nodeArrayList4 = (ArrayList) pop();
4995:                ArrayList nodeArrayList3 = (ArrayList) pop();
4996:                ArrayList nodeArrayList2 = (ArrayList) pop();
4997:                ArrayList nodeArrayList1 = (ArrayList) pop();
4998:                PGrammar pgrammarNode1;
4999:                {
5000:                    TypedLinkedList listNode2 = new TypedLinkedList();
5001:                    PHelpers phelpersNode3;
5002:                    PStates pstatesNode4;
5003:                    Object nullNode5 = null;
5004:                    Object nullNode6 = null;
5005:                    PProductions pproductionsNode7;
5006:                    PAst pastNode8;
5007:                    {
5008:                    }
5009:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
5010:                    pstatesNode4 = (PStates) nodeArrayList2.get(0);
5011:                    pproductionsNode7 = (PProductions) nodeArrayList3.get(0);
5012:                    pastNode8 = (PAst) nodeArrayList4.get(0);
5013:
5014:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
5015:                            pstatesNode4, null, null, pproductionsNode7,
5016:                            pastNode8);
5017:                }
5018:                nodeList.add(pgrammarNode1);
5019:                return nodeList;
5020:            }
5021:
5022:            ArrayList new103() /* reduce AAgrammar104Grammar */
5023:            {
5024:                ArrayList nodeList = new ArrayList();
5025:
5026:                ArrayList nodeArrayList5 = (ArrayList) pop();
5027:                ArrayList nodeArrayList4 = (ArrayList) pop();
5028:                ArrayList nodeArrayList3 = (ArrayList) pop();
5029:                ArrayList nodeArrayList2 = (ArrayList) pop();
5030:                ArrayList nodeArrayList1 = (ArrayList) pop();
5031:                PGrammar pgrammarNode1;
5032:                {
5033:                    TypedLinkedList listNode3 = new TypedLinkedList();
5034:                    PHelpers phelpersNode4;
5035:                    PStates pstatesNode5;
5036:                    Object nullNode6 = null;
5037:                    Object nullNode7 = null;
5038:                    PProductions pproductionsNode8;
5039:                    PAst pastNode9;
5040:                    {
5041:                        TypedLinkedList listNode2 = new TypedLinkedList();
5042:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
5043:                        if (listNode2 != null) {
5044:                            listNode3.addAll(listNode2);
5045:                        }
5046:                    }
5047:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
5048:                    pstatesNode5 = (PStates) nodeArrayList3.get(0);
5049:                    pproductionsNode8 = (PProductions) nodeArrayList4.get(0);
5050:                    pastNode9 = (PAst) nodeArrayList5.get(0);
5051:
5052:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
5053:                            pstatesNode5, null, null, pproductionsNode8,
5054:                            pastNode9);
5055:                }
5056:                nodeList.add(pgrammarNode1);
5057:                return nodeList;
5058:            }
5059:
5060:            ArrayList new104() /* reduce AAgrammar105Grammar */
5061:            {
5062:                ArrayList nodeList = new ArrayList();
5063:
5064:                ArrayList nodeArrayList3 = (ArrayList) pop();
5065:                ArrayList nodeArrayList2 = (ArrayList) pop();
5066:                ArrayList nodeArrayList1 = (ArrayList) pop();
5067:                PGrammar pgrammarNode1;
5068:                {
5069:                    TypedLinkedList listNode2 = new TypedLinkedList();
5070:                    Object nullNode3 = null;
5071:                    Object nullNode4 = null;
5072:                    PTokens ptokensNode5;
5073:                    Object nullNode6 = null;
5074:                    PProductions pproductionsNode7;
5075:                    PAst pastNode8;
5076:                    {
5077:                    }
5078:                    ptokensNode5 = (PTokens) nodeArrayList1.get(0);
5079:                    pproductionsNode7 = (PProductions) nodeArrayList2.get(0);
5080:                    pastNode8 = (PAst) nodeArrayList3.get(0);
5081:
5082:                    pgrammarNode1 = new AGrammar(listNode2, null, null,
5083:                            ptokensNode5, null, pproductionsNode7, pastNode8);
5084:                }
5085:                nodeList.add(pgrammarNode1);
5086:                return nodeList;
5087:            }
5088:
5089:            ArrayList new105() /* reduce AAgrammar106Grammar */
5090:            {
5091:                ArrayList nodeList = new ArrayList();
5092:
5093:                ArrayList nodeArrayList4 = (ArrayList) pop();
5094:                ArrayList nodeArrayList3 = (ArrayList) pop();
5095:                ArrayList nodeArrayList2 = (ArrayList) pop();
5096:                ArrayList nodeArrayList1 = (ArrayList) pop();
5097:                PGrammar pgrammarNode1;
5098:                {
5099:                    TypedLinkedList listNode3 = new TypedLinkedList();
5100:                    Object nullNode4 = null;
5101:                    Object nullNode5 = null;
5102:                    PTokens ptokensNode6;
5103:                    Object nullNode7 = null;
5104:                    PProductions pproductionsNode8;
5105:                    PAst pastNode9;
5106:                    {
5107:                        TypedLinkedList listNode2 = new TypedLinkedList();
5108:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
5109:                        if (listNode2 != null) {
5110:                            listNode3.addAll(listNode2);
5111:                        }
5112:                    }
5113:                    ptokensNode6 = (PTokens) nodeArrayList2.get(0);
5114:                    pproductionsNode8 = (PProductions) nodeArrayList3.get(0);
5115:                    pastNode9 = (PAst) nodeArrayList4.get(0);
5116:
5117:                    pgrammarNode1 = new AGrammar(listNode3, null, null,
5118:                            ptokensNode6, null, pproductionsNode8, pastNode9);
5119:                }
5120:                nodeList.add(pgrammarNode1);
5121:                return nodeList;
5122:            }
5123:
5124:            ArrayList new106() /* reduce AAgrammar107Grammar */
5125:            {
5126:                ArrayList nodeList = new ArrayList();
5127:
5128:                ArrayList nodeArrayList4 = (ArrayList) pop();
5129:                ArrayList nodeArrayList3 = (ArrayList) pop();
5130:                ArrayList nodeArrayList2 = (ArrayList) pop();
5131:                ArrayList nodeArrayList1 = (ArrayList) pop();
5132:                PGrammar pgrammarNode1;
5133:                {
5134:                    TypedLinkedList listNode2 = new TypedLinkedList();
5135:                    PHelpers phelpersNode3;
5136:                    Object nullNode4 = null;
5137:                    PTokens ptokensNode5;
5138:                    Object nullNode6 = null;
5139:                    PProductions pproductionsNode7;
5140:                    PAst pastNode8;
5141:                    {
5142:                    }
5143:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
5144:                    ptokensNode5 = (PTokens) nodeArrayList2.get(0);
5145:                    pproductionsNode7 = (PProductions) nodeArrayList3.get(0);
5146:                    pastNode8 = (PAst) nodeArrayList4.get(0);
5147:
5148:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
5149:                            null, ptokensNode5, null, pproductionsNode7,
5150:                            pastNode8);
5151:                }
5152:                nodeList.add(pgrammarNode1);
5153:                return nodeList;
5154:            }
5155:
5156:            ArrayList new107() /* reduce AAgrammar108Grammar */
5157:            {
5158:                ArrayList nodeList = new ArrayList();
5159:
5160:                ArrayList nodeArrayList5 = (ArrayList) pop();
5161:                ArrayList nodeArrayList4 = (ArrayList) pop();
5162:                ArrayList nodeArrayList3 = (ArrayList) pop();
5163:                ArrayList nodeArrayList2 = (ArrayList) pop();
5164:                ArrayList nodeArrayList1 = (ArrayList) pop();
5165:                PGrammar pgrammarNode1;
5166:                {
5167:                    TypedLinkedList listNode3 = new TypedLinkedList();
5168:                    PHelpers phelpersNode4;
5169:                    Object nullNode5 = null;
5170:                    PTokens ptokensNode6;
5171:                    Object nullNode7 = null;
5172:                    PProductions pproductionsNode8;
5173:                    PAst pastNode9;
5174:                    {
5175:                        TypedLinkedList listNode2 = new TypedLinkedList();
5176:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
5177:                        if (listNode2 != null) {
5178:                            listNode3.addAll(listNode2);
5179:                        }
5180:                    }
5181:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
5182:                    ptokensNode6 = (PTokens) nodeArrayList3.get(0);
5183:                    pproductionsNode8 = (PProductions) nodeArrayList4.get(0);
5184:                    pastNode9 = (PAst) nodeArrayList5.get(0);
5185:
5186:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
5187:                            null, ptokensNode6, null, pproductionsNode8,
5188:                            pastNode9);
5189:                }
5190:                nodeList.add(pgrammarNode1);
5191:                return nodeList;
5192:            }
5193:
5194:            ArrayList new108() /* reduce AAgrammar109Grammar */
5195:            {
5196:                ArrayList nodeList = new ArrayList();
5197:
5198:                ArrayList nodeArrayList4 = (ArrayList) pop();
5199:                ArrayList nodeArrayList3 = (ArrayList) pop();
5200:                ArrayList nodeArrayList2 = (ArrayList) pop();
5201:                ArrayList nodeArrayList1 = (ArrayList) pop();
5202:                PGrammar pgrammarNode1;
5203:                {
5204:                    TypedLinkedList listNode2 = new TypedLinkedList();
5205:                    Object nullNode3 = null;
5206:                    PStates pstatesNode4;
5207:                    PTokens ptokensNode5;
5208:                    Object nullNode6 = null;
5209:                    PProductions pproductionsNode7;
5210:                    PAst pastNode8;
5211:                    {
5212:                    }
5213:                    pstatesNode4 = (PStates) nodeArrayList1.get(0);
5214:                    ptokensNode5 = (PTokens) nodeArrayList2.get(0);
5215:                    pproductionsNode7 = (PProductions) nodeArrayList3.get(0);
5216:                    pastNode8 = (PAst) nodeArrayList4.get(0);
5217:
5218:                    pgrammarNode1 = new AGrammar(listNode2, null, pstatesNode4,
5219:                            ptokensNode5, null, pproductionsNode7, pastNode8);
5220:                }
5221:                nodeList.add(pgrammarNode1);
5222:                return nodeList;
5223:            }
5224:
5225:            ArrayList new109() /* reduce AAgrammar110Grammar */
5226:            {
5227:                ArrayList nodeList = new ArrayList();
5228:
5229:                ArrayList nodeArrayList5 = (ArrayList) pop();
5230:                ArrayList nodeArrayList4 = (ArrayList) pop();
5231:                ArrayList nodeArrayList3 = (ArrayList) pop();
5232:                ArrayList nodeArrayList2 = (ArrayList) pop();
5233:                ArrayList nodeArrayList1 = (ArrayList) pop();
5234:                PGrammar pgrammarNode1;
5235:                {
5236:                    TypedLinkedList listNode3 = new TypedLinkedList();
5237:                    Object nullNode4 = null;
5238:                    PStates pstatesNode5;
5239:                    PTokens ptokensNode6;
5240:                    Object nullNode7 = null;
5241:                    PProductions pproductionsNode8;
5242:                    PAst pastNode9;
5243:                    {
5244:                        TypedLinkedList listNode2 = new TypedLinkedList();
5245:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
5246:                        if (listNode2 != null) {
5247:                            listNode3.addAll(listNode2);
5248:                        }
5249:                    }
5250:                    pstatesNode5 = (PStates) nodeArrayList2.get(0);
5251:                    ptokensNode6 = (PTokens) nodeArrayList3.get(0);
5252:                    pproductionsNode8 = (PProductions) nodeArrayList4.get(0);
5253:                    pastNode9 = (PAst) nodeArrayList5.get(0);
5254:
5255:                    pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5,
5256:                            ptokensNode6, null, pproductionsNode8, pastNode9);
5257:                }
5258:                nodeList.add(pgrammarNode1);
5259:                return nodeList;
5260:            }
5261:
5262:            ArrayList new110() /* reduce AAgrammar111Grammar */
5263:            {
5264:                ArrayList nodeList = new ArrayList();
5265:
5266:                ArrayList nodeArrayList5 = (ArrayList) pop();
5267:                ArrayList nodeArrayList4 = (ArrayList) pop();
5268:                ArrayList nodeArrayList3 = (ArrayList) pop();
5269:                ArrayList nodeArrayList2 = (ArrayList) pop();
5270:                ArrayList nodeArrayList1 = (ArrayList) pop();
5271:                PGrammar pgrammarNode1;
5272:                {
5273:                    TypedLinkedList listNode2 = new TypedLinkedList();
5274:                    PHelpers phelpersNode3;
5275:                    PStates pstatesNode4;
5276:                    PTokens ptokensNode5;
5277:                    Object nullNode6 = null;
5278:                    PProductions pproductionsNode7;
5279:                    PAst pastNode8;
5280:                    {
5281:                    }
5282:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
5283:                    pstatesNode4 = (PStates) nodeArrayList2.get(0);
5284:                    ptokensNode5 = (PTokens) nodeArrayList3.get(0);
5285:                    pproductionsNode7 = (PProductions) nodeArrayList4.get(0);
5286:                    pastNode8 = (PAst) nodeArrayList5.get(0);
5287:
5288:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
5289:                            pstatesNode4, ptokensNode5, null,
5290:                            pproductionsNode7, pastNode8);
5291:                }
5292:                nodeList.add(pgrammarNode1);
5293:                return nodeList;
5294:            }
5295:
5296:            ArrayList new111() /* reduce AAgrammar112Grammar */
5297:            {
5298:                ArrayList nodeList = new ArrayList();
5299:
5300:                ArrayList nodeArrayList6 = (ArrayList) pop();
5301:                ArrayList nodeArrayList5 = (ArrayList) pop();
5302:                ArrayList nodeArrayList4 = (ArrayList) pop();
5303:                ArrayList nodeArrayList3 = (ArrayList) pop();
5304:                ArrayList nodeArrayList2 = (ArrayList) pop();
5305:                ArrayList nodeArrayList1 = (ArrayList) pop();
5306:                PGrammar pgrammarNode1;
5307:                {
5308:                    TypedLinkedList listNode3 = new TypedLinkedList();
5309:                    PHelpers phelpersNode4;
5310:                    PStates pstatesNode5;
5311:                    PTokens ptokensNode6;
5312:                    Object nullNode7 = null;
5313:                    PProductions pproductionsNode8;
5314:                    PAst pastNode9;
5315:                    {
5316:                        TypedLinkedList listNode2 = new TypedLinkedList();
5317:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
5318:                        if (listNode2 != null) {
5319:                            listNode3.addAll(listNode2);
5320:                        }
5321:                    }
5322:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
5323:                    pstatesNode5 = (PStates) nodeArrayList3.get(0);
5324:                    ptokensNode6 = (PTokens) nodeArrayList4.get(0);
5325:                    pproductionsNode8 = (PProductions) nodeArrayList5.get(0);
5326:                    pastNode9 = (PAst) nodeArrayList6.get(0);
5327:
5328:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
5329:                            pstatesNode5, ptokensNode6, null,
5330:                            pproductionsNode8, pastNode9);
5331:                }
5332:                nodeList.add(pgrammarNode1);
5333:                return nodeList;
5334:            }
5335:
5336:            ArrayList new112() /* reduce AAgrammar113Grammar */
5337:            {
5338:                ArrayList nodeList = new ArrayList();
5339:
5340:                ArrayList nodeArrayList3 = (ArrayList) pop();
5341:                ArrayList nodeArrayList2 = (ArrayList) pop();
5342:                ArrayList nodeArrayList1 = (ArrayList) pop();
5343:                PGrammar pgrammarNode1;
5344:                {
5345:                    TypedLinkedList listNode2 = new TypedLinkedList();
5346:                    Object nullNode3 = null;
5347:                    Object nullNode4 = null;
5348:                    Object nullNode5 = null;
5349:                    PIgnTokens pigntokensNode6;
5350:                    PProductions pproductionsNode7;
5351:                    PAst pastNode8;
5352:                    {
5353:                    }
5354:                    pigntokensNode6 = (PIgnTokens) nodeArrayList1.get(0);
5355:                    pproductionsNode7 = (PProductions) nodeArrayList2.get(0);
5356:                    pastNode8 = (PAst) nodeArrayList3.get(0);
5357:
5358:                    pgrammarNode1 = new AGrammar(listNode2, null, null, null,
5359:                            pigntokensNode6, pproductionsNode7, pastNode8);
5360:                }
5361:                nodeList.add(pgrammarNode1);
5362:                return nodeList;
5363:            }
5364:
5365:            ArrayList new113() /* reduce AAgrammar114Grammar */
5366:            {
5367:                ArrayList nodeList = new ArrayList();
5368:
5369:                ArrayList nodeArrayList4 = (ArrayList) pop();
5370:                ArrayList nodeArrayList3 = (ArrayList) pop();
5371:                ArrayList nodeArrayList2 = (ArrayList) pop();
5372:                ArrayList nodeArrayList1 = (ArrayList) pop();
5373:                PGrammar pgrammarNode1;
5374:                {
5375:                    TypedLinkedList listNode3 = new TypedLinkedList();
5376:                    Object nullNode4 = null;
5377:                    Object nullNode5 = null;
5378:                    Object nullNode6 = null;
5379:                    PIgnTokens pigntokensNode7;
5380:                    PProductions pproductionsNode8;
5381:                    PAst pastNode9;
5382:                    {
5383:                        TypedLinkedList listNode2 = new TypedLinkedList();
5384:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
5385:                        if (listNode2 != null) {
5386:                            listNode3.addAll(listNode2);
5387:                        }
5388:                    }
5389:                    pigntokensNode7 = (PIgnTokens) nodeArrayList2.get(0);
5390:                    pproductionsNode8 = (PProductions) nodeArrayList3.get(0);
5391:                    pastNode9 = (PAst) nodeArrayList4.get(0);
5392:
5393:                    pgrammarNode1 = new AGrammar(listNode3, null, null, null,
5394:                            pigntokensNode7, pproductionsNode8, pastNode9);
5395:                }
5396:                nodeList.add(pgrammarNode1);
5397:                return nodeList;
5398:            }
5399:
5400:            ArrayList new114() /* reduce AAgrammar115Grammar */
5401:            {
5402:                ArrayList nodeList = new ArrayList();
5403:
5404:                ArrayList nodeArrayList4 = (ArrayList) pop();
5405:                ArrayList nodeArrayList3 = (ArrayList) pop();
5406:                ArrayList nodeArrayList2 = (ArrayList) pop();
5407:                ArrayList nodeArrayList1 = (ArrayList) pop();
5408:                PGrammar pgrammarNode1;
5409:                {
5410:                    TypedLinkedList listNode2 = new TypedLinkedList();
5411:                    PHelpers phelpersNode3;
5412:                    Object nullNode4 = null;
5413:                    Object nullNode5 = null;
5414:                    PIgnTokens pigntokensNode6;
5415:                    PProductions pproductionsNode7;
5416:                    PAst pastNode8;
5417:                    {
5418:                    }
5419:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
5420:                    pigntokensNode6 = (PIgnTokens) nodeArrayList2.get(0);
5421:                    pproductionsNode7 = (PProductions) nodeArrayList3.get(0);
5422:                    pastNode8 = (PAst) nodeArrayList4.get(0);
5423:
5424:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
5425:                            null, null, pigntokensNode6, pproductionsNode7,
5426:                            pastNode8);
5427:                }
5428:                nodeList.add(pgrammarNode1);
5429:                return nodeList;
5430:            }
5431:
5432:            ArrayList new115() /* reduce AAgrammar116Grammar */
5433:            {
5434:                ArrayList nodeList = new ArrayList();
5435:
5436:                ArrayList nodeArrayList5 = (ArrayList) pop();
5437:                ArrayList nodeArrayList4 = (ArrayList) pop();
5438:                ArrayList nodeArrayList3 = (ArrayList) pop();
5439:                ArrayList nodeArrayList2 = (ArrayList) pop();
5440:                ArrayList nodeArrayList1 = (ArrayList) pop();
5441:                PGrammar pgrammarNode1;
5442:                {
5443:                    TypedLinkedList listNode3 = new TypedLinkedList();
5444:                    PHelpers phelpersNode4;
5445:                    Object nullNode5 = null;
5446:                    Object nullNode6 = null;
5447:                    PIgnTokens pigntokensNode7;
5448:                    PProductions pproductionsNode8;
5449:                    PAst pastNode9;
5450:                    {
5451:                        TypedLinkedList listNode2 = new TypedLinkedList();
5452:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
5453:                        if (listNode2 != null) {
5454:                            listNode3.addAll(listNode2);
5455:                        }
5456:                    }
5457:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
5458:                    pigntokensNode7 = (PIgnTokens) nodeArrayList3.get(0);
5459:                    pproductionsNode8 = (PProductions) nodeArrayList4.get(0);
5460:                    pastNode9 = (PAst) nodeArrayList5.get(0);
5461:
5462:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
5463:                            null, null, pigntokensNode7, pproductionsNode8,
5464:                            pastNode9);
5465:                }
5466:                nodeList.add(pgrammarNode1);
5467:                return nodeList;
5468:            }
5469:
5470:            ArrayList new116() /* reduce AAgrammar117Grammar */
5471:            {
5472:                ArrayList nodeList = new ArrayList();
5473:
5474:                ArrayList nodeArrayList4 = (ArrayList) pop();
5475:                ArrayList nodeArrayList3 = (ArrayList) pop();
5476:                ArrayList nodeArrayList2 = (ArrayList) pop();
5477:                ArrayList nodeArrayList1 = (ArrayList) pop();
5478:                PGrammar pgrammarNode1;
5479:                {
5480:                    TypedLinkedList listNode2 = new TypedLinkedList();
5481:                    Object nullNode3 = null;
5482:                    PStates pstatesNode4;
5483:                    Object nullNode5 = null;
5484:                    PIgnTokens pigntokensNode6;
5485:                    PProductions pproductionsNode7;
5486:                    PAst pastNode8;
5487:                    {
5488:                    }
5489:                    pstatesNode4 = (PStates) nodeArrayList1.get(0);
5490:                    pigntokensNode6 = (PIgnTokens) nodeArrayList2.get(0);
5491:                    pproductionsNode7 = (PProductions) nodeArrayList3.get(0);
5492:                    pastNode8 = (PAst) nodeArrayList4.get(0);
5493:
5494:                    pgrammarNode1 = new AGrammar(listNode2, null, pstatesNode4,
5495:                            null, pigntokensNode6, pproductionsNode7, pastNode8);
5496:                }
5497:                nodeList.add(pgrammarNode1);
5498:                return nodeList;
5499:            }
5500:
5501:            ArrayList new117() /* reduce AAgrammar118Grammar */
5502:            {
5503:                ArrayList nodeList = new ArrayList();
5504:
5505:                ArrayList nodeArrayList5 = (ArrayList) pop();
5506:                ArrayList nodeArrayList4 = (ArrayList) pop();
5507:                ArrayList nodeArrayList3 = (ArrayList) pop();
5508:                ArrayList nodeArrayList2 = (ArrayList) pop();
5509:                ArrayList nodeArrayList1 = (ArrayList) pop();
5510:                PGrammar pgrammarNode1;
5511:                {
5512:                    TypedLinkedList listNode3 = new TypedLinkedList();
5513:                    Object nullNode4 = null;
5514:                    PStates pstatesNode5;
5515:                    Object nullNode6 = null;
5516:                    PIgnTokens pigntokensNode7;
5517:                    PProductions pproductionsNode8;
5518:                    PAst pastNode9;
5519:                    {
5520:                        TypedLinkedList listNode2 = new TypedLinkedList();
5521:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
5522:                        if (listNode2 != null) {
5523:                            listNode3.addAll(listNode2);
5524:                        }
5525:                    }
5526:                    pstatesNode5 = (PStates) nodeArrayList2.get(0);
5527:                    pigntokensNode7 = (PIgnTokens) nodeArrayList3.get(0);
5528:                    pproductionsNode8 = (PProductions) nodeArrayList4.get(0);
5529:                    pastNode9 = (PAst) nodeArrayList5.get(0);
5530:
5531:                    pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5,
5532:                            null, pigntokensNode7, pproductionsNode8, pastNode9);
5533:                }
5534:                nodeList.add(pgrammarNode1);
5535:                return nodeList;
5536:            }
5537:
5538:            ArrayList new118() /* reduce AAgrammar119Grammar */
5539:            {
5540:                ArrayList nodeList = new ArrayList();
5541:
5542:                ArrayList nodeArrayList5 = (ArrayList) pop();
5543:                ArrayList nodeArrayList4 = (ArrayList) pop();
5544:                ArrayList nodeArrayList3 = (ArrayList) pop();
5545:                ArrayList nodeArrayList2 = (ArrayList) pop();
5546:                ArrayList nodeArrayList1 = (ArrayList) pop();
5547:                PGrammar pgrammarNode1;
5548:                {
5549:                    TypedLinkedList listNode2 = new TypedLinkedList();
5550:                    PHelpers phelpersNode3;
5551:                    PStates pstatesNode4;
5552:                    Object nullNode5 = null;
5553:                    PIgnTokens pigntokensNode6;
5554:                    PProductions pproductionsNode7;
5555:                    PAst pastNode8;
5556:                    {
5557:                    }
5558:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
5559:                    pstatesNode4 = (PStates) nodeArrayList2.get(0);
5560:                    pigntokensNode6 = (PIgnTokens) nodeArrayList3.get(0);
5561:                    pproductionsNode7 = (PProductions) nodeArrayList4.get(0);
5562:                    pastNode8 = (PAst) nodeArrayList5.get(0);
5563:
5564:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
5565:                            pstatesNode4, null, pigntokensNode6,
5566:                            pproductionsNode7, pastNode8);
5567:                }
5568:                nodeList.add(pgrammarNode1);
5569:                return nodeList;
5570:            }
5571:
5572:            ArrayList new119() /* reduce AAgrammar120Grammar */
5573:            {
5574:                ArrayList nodeList = new ArrayList();
5575:
5576:                ArrayList nodeArrayList6 = (ArrayList) pop();
5577:                ArrayList nodeArrayList5 = (ArrayList) pop();
5578:                ArrayList nodeArrayList4 = (ArrayList) pop();
5579:                ArrayList nodeArrayList3 = (ArrayList) pop();
5580:                ArrayList nodeArrayList2 = (ArrayList) pop();
5581:                ArrayList nodeArrayList1 = (ArrayList) pop();
5582:                PGrammar pgrammarNode1;
5583:                {
5584:                    TypedLinkedList listNode3 = new TypedLinkedList();
5585:                    PHelpers phelpersNode4;
5586:                    PStates pstatesNode5;
5587:                    Object nullNode6 = null;
5588:                    PIgnTokens pigntokensNode7;
5589:                    PProductions pproductionsNode8;
5590:                    PAst pastNode9;
5591:                    {
5592:                        TypedLinkedList listNode2 = new TypedLinkedList();
5593:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
5594:                        if (listNode2 != null) {
5595:                            listNode3.addAll(listNode2);
5596:                        }
5597:                    }
5598:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
5599:                    pstatesNode5 = (PStates) nodeArrayList3.get(0);
5600:                    pigntokensNode7 = (PIgnTokens) nodeArrayList4.get(0);
5601:                    pproductionsNode8 = (PProductions) nodeArrayList5.get(0);
5602:                    pastNode9 = (PAst) nodeArrayList6.get(0);
5603:
5604:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
5605:                            pstatesNode5, null, pigntokensNode7,
5606:                            pproductionsNode8, pastNode9);
5607:                }
5608:                nodeList.add(pgrammarNode1);
5609:                return nodeList;
5610:            }
5611:
5612:            ArrayList new120() /* reduce AAgrammar121Grammar */
5613:            {
5614:                ArrayList nodeList = new ArrayList();
5615:
5616:                ArrayList nodeArrayList4 = (ArrayList) pop();
5617:                ArrayList nodeArrayList3 = (ArrayList) pop();
5618:                ArrayList nodeArrayList2 = (ArrayList) pop();
5619:                ArrayList nodeArrayList1 = (ArrayList) pop();
5620:                PGrammar pgrammarNode1;
5621:                {
5622:                    TypedLinkedList listNode2 = new TypedLinkedList();
5623:                    Object nullNode3 = null;
5624:                    Object nullNode4 = null;
5625:                    PTokens ptokensNode5;
5626:                    PIgnTokens pigntokensNode6;
5627:                    PProductions pproductionsNode7;
5628:                    PAst pastNode8;
5629:                    {
5630:                    }
5631:                    ptokensNode5 = (PTokens) nodeArrayList1.get(0);
5632:                    pigntokensNode6 = (PIgnTokens) nodeArrayList2.get(0);
5633:                    pproductionsNode7 = (PProductions) nodeArrayList3.get(0);
5634:                    pastNode8 = (PAst) nodeArrayList4.get(0);
5635:
5636:                    pgrammarNode1 = new AGrammar(listNode2, null, null,
5637:                            ptokensNode5, pigntokensNode6, pproductionsNode7,
5638:                            pastNode8);
5639:                }
5640:                nodeList.add(pgrammarNode1);
5641:                return nodeList;
5642:            }
5643:
5644:            ArrayList new121() /* reduce AAgrammar122Grammar */
5645:            {
5646:                ArrayList nodeList = new ArrayList();
5647:
5648:                ArrayList nodeArrayList5 = (ArrayList) pop();
5649:                ArrayList nodeArrayList4 = (ArrayList) pop();
5650:                ArrayList nodeArrayList3 = (ArrayList) pop();
5651:                ArrayList nodeArrayList2 = (ArrayList) pop();
5652:                ArrayList nodeArrayList1 = (ArrayList) pop();
5653:                PGrammar pgrammarNode1;
5654:                {
5655:                    TypedLinkedList listNode3 = new TypedLinkedList();
5656:                    Object nullNode4 = null;
5657:                    Object nullNode5 = null;
5658:                    PTokens ptokensNode6;
5659:                    PIgnTokens pigntokensNode7;
5660:                    PProductions pproductionsNode8;
5661:                    PAst pastNode9;
5662:                    {
5663:                        TypedLinkedList listNode2 = new TypedLinkedList();
5664:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
5665:                        if (listNode2 != null) {
5666:                            listNode3.addAll(listNode2);
5667:                        }
5668:                    }
5669:                    ptokensNode6 = (PTokens) nodeArrayList2.get(0);
5670:                    pigntokensNode7 = (PIgnTokens) nodeArrayList3.get(0);
5671:                    pproductionsNode8 = (PProductions) nodeArrayList4.get(0);
5672:                    pastNode9 = (PAst) nodeArrayList5.get(0);
5673:
5674:                    pgrammarNode1 = new AGrammar(listNode3, null, null,
5675:                            ptokensNode6, pigntokensNode7, pproductionsNode8,
5676:                            pastNode9);
5677:                }
5678:                nodeList.add(pgrammarNode1);
5679:                return nodeList;
5680:            }
5681:
5682:            ArrayList new122() /* reduce AAgrammar123Grammar */
5683:            {
5684:                ArrayList nodeList = new ArrayList();
5685:
5686:                ArrayList nodeArrayList5 = (ArrayList) pop();
5687:                ArrayList nodeArrayList4 = (ArrayList) pop();
5688:                ArrayList nodeArrayList3 = (ArrayList) pop();
5689:                ArrayList nodeArrayList2 = (ArrayList) pop();
5690:                ArrayList nodeArrayList1 = (ArrayList) pop();
5691:                PGrammar pgrammarNode1;
5692:                {
5693:                    TypedLinkedList listNode2 = new TypedLinkedList();
5694:                    PHelpers phelpersNode3;
5695:                    Object nullNode4 = null;
5696:                    PTokens ptokensNode5;
5697:                    PIgnTokens pigntokensNode6;
5698:                    PProductions pproductionsNode7;
5699:                    PAst pastNode8;
5700:                    {
5701:                    }
5702:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
5703:                    ptokensNode5 = (PTokens) nodeArrayList2.get(0);
5704:                    pigntokensNode6 = (PIgnTokens) nodeArrayList3.get(0);
5705:                    pproductionsNode7 = (PProductions) nodeArrayList4.get(0);
5706:                    pastNode8 = (PAst) nodeArrayList5.get(0);
5707:
5708:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
5709:                            null, ptokensNode5, pigntokensNode6,
5710:                            pproductionsNode7, pastNode8);
5711:                }
5712:                nodeList.add(pgrammarNode1);
5713:                return nodeList;
5714:            }
5715:
5716:            ArrayList new123() /* reduce AAgrammar124Grammar */
5717:            {
5718:                ArrayList nodeList = new ArrayList();
5719:
5720:                ArrayList nodeArrayList6 = (ArrayList) pop();
5721:                ArrayList nodeArrayList5 = (ArrayList) pop();
5722:                ArrayList nodeArrayList4 = (ArrayList) pop();
5723:                ArrayList nodeArrayList3 = (ArrayList) pop();
5724:                ArrayList nodeArrayList2 = (ArrayList) pop();
5725:                ArrayList nodeArrayList1 = (ArrayList) pop();
5726:                PGrammar pgrammarNode1;
5727:                {
5728:                    TypedLinkedList listNode3 = new TypedLinkedList();
5729:                    PHelpers phelpersNode4;
5730:                    Object nullNode5 = null;
5731:                    PTokens ptokensNode6;
5732:                    PIgnTokens pigntokensNode7;
5733:                    PProductions pproductionsNode8;
5734:                    PAst pastNode9;
5735:                    {
5736:                        TypedLinkedList listNode2 = new TypedLinkedList();
5737:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
5738:                        if (listNode2 != null) {
5739:                            listNode3.addAll(listNode2);
5740:                        }
5741:                    }
5742:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
5743:                    ptokensNode6 = (PTokens) nodeArrayList3.get(0);
5744:                    pigntokensNode7 = (PIgnTokens) nodeArrayList4.get(0);
5745:                    pproductionsNode8 = (PProductions) nodeArrayList5.get(0);
5746:                    pastNode9 = (PAst) nodeArrayList6.get(0);
5747:
5748:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
5749:                            null, ptokensNode6, pigntokensNode7,
5750:                            pproductionsNode8, pastNode9);
5751:                }
5752:                nodeList.add(pgrammarNode1);
5753:                return nodeList;
5754:            }
5755:
5756:            ArrayList new124() /* reduce AAgrammar125Grammar */
5757:            {
5758:                ArrayList nodeList = new ArrayList();
5759:
5760:                ArrayList nodeArrayList5 = (ArrayList) pop();
5761:                ArrayList nodeArrayList4 = (ArrayList) pop();
5762:                ArrayList nodeArrayList3 = (ArrayList) pop();
5763:                ArrayList nodeArrayList2 = (ArrayList) pop();
5764:                ArrayList nodeArrayList1 = (ArrayList) pop();
5765:                PGrammar pgrammarNode1;
5766:                {
5767:                    TypedLinkedList listNode2 = new TypedLinkedList();
5768:                    Object nullNode3 = null;
5769:                    PStates pstatesNode4;
5770:                    PTokens ptokensNode5;
5771:                    PIgnTokens pigntokensNode6;
5772:                    PProductions pproductionsNode7;
5773:                    PAst pastNode8;
5774:                    {
5775:                    }
5776:                    pstatesNode4 = (PStates) nodeArrayList1.get(0);
5777:                    ptokensNode5 = (PTokens) nodeArrayList2.get(0);
5778:                    pigntokensNode6 = (PIgnTokens) nodeArrayList3.get(0);
5779:                    pproductionsNode7 = (PProductions) nodeArrayList4.get(0);
5780:                    pastNode8 = (PAst) nodeArrayList5.get(0);
5781:
5782:                    pgrammarNode1 = new AGrammar(listNode2, null, pstatesNode4,
5783:                            ptokensNode5, pigntokensNode6, pproductionsNode7,
5784:                            pastNode8);
5785:                }
5786:                nodeList.add(pgrammarNode1);
5787:                return nodeList;
5788:            }
5789:
5790:            ArrayList new125() /* reduce AAgrammar126Grammar */
5791:            {
5792:                ArrayList nodeList = new ArrayList();
5793:
5794:                ArrayList nodeArrayList6 = (ArrayList) pop();
5795:                ArrayList nodeArrayList5 = (ArrayList) pop();
5796:                ArrayList nodeArrayList4 = (ArrayList) pop();
5797:                ArrayList nodeArrayList3 = (ArrayList) pop();
5798:                ArrayList nodeArrayList2 = (ArrayList) pop();
5799:                ArrayList nodeArrayList1 = (ArrayList) pop();
5800:                PGrammar pgrammarNode1;
5801:                {
5802:                    TypedLinkedList listNode3 = new TypedLinkedList();
5803:                    Object nullNode4 = null;
5804:                    PStates pstatesNode5;
5805:                    PTokens ptokensNode6;
5806:                    PIgnTokens pigntokensNode7;
5807:                    PProductions pproductionsNode8;
5808:                    PAst pastNode9;
5809:                    {
5810:                        TypedLinkedList listNode2 = new TypedLinkedList();
5811:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
5812:                        if (listNode2 != null) {
5813:                            listNode3.addAll(listNode2);
5814:                        }
5815:                    }
5816:                    pstatesNode5 = (PStates) nodeArrayList2.get(0);
5817:                    ptokensNode6 = (PTokens) nodeArrayList3.get(0);
5818:                    pigntokensNode7 = (PIgnTokens) nodeArrayList4.get(0);
5819:                    pproductionsNode8 = (PProductions) nodeArrayList5.get(0);
5820:                    pastNode9 = (PAst) nodeArrayList6.get(0);
5821:
5822:                    pgrammarNode1 = new AGrammar(listNode3, null, pstatesNode5,
5823:                            ptokensNode6, pigntokensNode7, pproductionsNode8,
5824:                            pastNode9);
5825:                }
5826:                nodeList.add(pgrammarNode1);
5827:                return nodeList;
5828:            }
5829:
5830:            ArrayList new126() /* reduce AAgrammar127Grammar */
5831:            {
5832:                ArrayList nodeList = new ArrayList();
5833:
5834:                ArrayList nodeArrayList6 = (ArrayList) pop();
5835:                ArrayList nodeArrayList5 = (ArrayList) pop();
5836:                ArrayList nodeArrayList4 = (ArrayList) pop();
5837:                ArrayList nodeArrayList3 = (ArrayList) pop();
5838:                ArrayList nodeArrayList2 = (ArrayList) pop();
5839:                ArrayList nodeArrayList1 = (ArrayList) pop();
5840:                PGrammar pgrammarNode1;
5841:                {
5842:                    TypedLinkedList listNode2 = new TypedLinkedList();
5843:                    PHelpers phelpersNode3;
5844:                    PStates pstatesNode4;
5845:                    PTokens ptokensNode5;
5846:                    PIgnTokens pigntokensNode6;
5847:                    PProductions pproductionsNode7;
5848:                    PAst pastNode8;
5849:                    {
5850:                    }
5851:                    phelpersNode3 = (PHelpers) nodeArrayList1.get(0);
5852:                    pstatesNode4 = (PStates) nodeArrayList2.get(0);
5853:                    ptokensNode5 = (PTokens) nodeArrayList3.get(0);
5854:                    pigntokensNode6 = (PIgnTokens) nodeArrayList4.get(0);
5855:                    pproductionsNode7 = (PProductions) nodeArrayList5.get(0);
5856:                    pastNode8 = (PAst) nodeArrayList6.get(0);
5857:
5858:                    pgrammarNode1 = new AGrammar(listNode2, phelpersNode3,
5859:                            pstatesNode4, ptokensNode5, pigntokensNode6,
5860:                            pproductionsNode7, pastNode8);
5861:                }
5862:                nodeList.add(pgrammarNode1);
5863:                return nodeList;
5864:            }
5865:
5866:            ArrayList new127() /* reduce AAgrammar128Grammar */
5867:            {
5868:                ArrayList nodeList = new ArrayList();
5869:
5870:                ArrayList nodeArrayList7 = (ArrayList) pop();
5871:                ArrayList nodeArrayList6 = (ArrayList) pop();
5872:                ArrayList nodeArrayList5 = (ArrayList) pop();
5873:                ArrayList nodeArrayList4 = (ArrayList) pop();
5874:                ArrayList nodeArrayList3 = (ArrayList) pop();
5875:                ArrayList nodeArrayList2 = (ArrayList) pop();
5876:                ArrayList nodeArrayList1 = (ArrayList) pop();
5877:                PGrammar pgrammarNode1;
5878:                {
5879:                    TypedLinkedList listNode3 = new TypedLinkedList();
5880:                    PHelpers phelpersNode4;
5881:                    PStates pstatesNode5;
5882:                    PTokens ptokensNode6;
5883:                    PIgnTokens pigntokensNode7;
5884:                    PProductions pproductionsNode8;
5885:                    PAst pastNode9;
5886:                    {
5887:                        TypedLinkedList listNode2 = new TypedLinkedList();
5888:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
5889:                        if (listNode2 != null) {
5890:                            listNode3.addAll(listNode2);
5891:                        }
5892:                    }
5893:                    phelpersNode4 = (PHelpers) nodeArrayList2.get(0);
5894:                    pstatesNode5 = (PStates) nodeArrayList3.get(0);
5895:                    ptokensNode6 = (PTokens) nodeArrayList4.get(0);
5896:                    pigntokensNode7 = (PIgnTokens) nodeArrayList5.get(0);
5897:                    pproductionsNode8 = (PProductions) nodeArrayList6.get(0);
5898:                    pastNode9 = (PAst) nodeArrayList7.get(0);
5899:
5900:                    pgrammarNode1 = new AGrammar(listNode3, phelpersNode4,
5901:                            pstatesNode5, ptokensNode6, pigntokensNode7,
5902:                            pproductionsNode8, pastNode9);
5903:                }
5904:                nodeList.add(pgrammarNode1);
5905:                return nodeList;
5906:            }
5907:
5908:            ArrayList new128() /* reduce APackage */
5909:            {
5910:                ArrayList nodeList = new ArrayList();
5911:
5912:                ArrayList nodeArrayList2 = (ArrayList) pop();
5913:                ArrayList nodeArrayList1 = (ArrayList) pop();
5914:                TypedLinkedList listNode2 = new TypedLinkedList();
5915:                {
5916:                    TypedLinkedList listNode1 = new TypedLinkedList();
5917:                    listNode1 = (TypedLinkedList) nodeArrayList2.get(0);
5918:                    if (listNode1 != null) {
5919:                        listNode2.addAll(listNode1);
5920:                    }
5921:                }
5922:                nodeList.add(listNode2);
5923:                return nodeList;
5924:            }
5925:
5926:            ArrayList new129() /* reduce AApkgname1PkgName */
5927:            {
5928:                ArrayList nodeList = new ArrayList();
5929:
5930:                ArrayList nodeArrayList2 = (ArrayList) pop();
5931:                ArrayList nodeArrayList1 = (ArrayList) pop();
5932:                TypedLinkedList listNode2 = new TypedLinkedList();
5933:                {
5934:                    TPkgId tpkgidNode1;
5935:                    tpkgidNode1 = (TPkgId) nodeArrayList1.get(0);
5936:                    if (tpkgidNode1 != null) {
5937:                        listNode2.add(tpkgidNode1);
5938:                    }
5939:                }
5940:                nodeList.add(listNode2);
5941:                return nodeList;
5942:            }
5943:
5944:            ArrayList new130() /* reduce AApkgname2PkgName */
5945:            {
5946:                ArrayList nodeList = new ArrayList();
5947:
5948:                ArrayList nodeArrayList3 = (ArrayList) pop();
5949:                ArrayList nodeArrayList2 = (ArrayList) pop();
5950:                ArrayList nodeArrayList1 = (ArrayList) pop();
5951:                TypedLinkedList listNode3 = new TypedLinkedList();
5952:                {
5953:                    TPkgId tpkgidNode1;
5954:                    TypedLinkedList listNode2 = new TypedLinkedList();
5955:                    tpkgidNode1 = (TPkgId) nodeArrayList1.get(0);
5956:                    listNode2 = (TypedLinkedList) nodeArrayList2.get(0);
5957:                    if (tpkgidNode1 != null) {
5958:                        listNode3.add(tpkgidNode1);
5959:                    }
5960:                    if (listNode2 != null) {
5961:                        listNode3.addAll(listNode2);
5962:                    }
5963:                }
5964:                nodeList.add(listNode3);
5965:                return nodeList;
5966:            }
5967:
5968:            ArrayList new131() /* reduce APkgNameTail */
5969:            {
5970:                ArrayList nodeList = new ArrayList();
5971:
5972:                ArrayList nodeArrayList2 = (ArrayList) pop();
5973:                ArrayList nodeArrayList1 = (ArrayList) pop();
5974:                TPkgId tpkgidNode1;
5975:                tpkgidNode1 = (TPkgId) nodeArrayList2.get(0);
5976:                nodeList.add(tpkgidNode1);
5977:                return nodeList;
5978:            }
5979:
5980:            ArrayList new132() /* reduce AHelpers */
5981:            {
5982:                ArrayList nodeList = new ArrayList();
5983:
5984:                ArrayList nodeArrayList2 = (ArrayList) pop();
5985:                ArrayList nodeArrayList1 = (ArrayList) pop();
5986:                PHelpers phelpersNode1;
5987:                {
5988:                    TypedLinkedList listNode3 = new TypedLinkedList();
5989:                    {
5990:                        TypedLinkedList listNode2 = new TypedLinkedList();
5991:                        listNode2 = (TypedLinkedList) nodeArrayList2.get(0);
5992:                        if (listNode2 != null) {
5993:                            listNode3.addAll(listNode2);
5994:                        }
5995:                    }
5996:
5997:                    phelpersNode1 = new AHelpers(listNode3);
5998:                }
5999:                nodeList.add(phelpersNode1);
6000:                return nodeList;
6001:            }
6002:
6003:            ArrayList new133() /* reduce AHelperDef */
6004:            {
6005:                ArrayList nodeList = new ArrayList();
6006:
6007:                ArrayList nodeArrayList4 = (ArrayList) pop();
6008:                ArrayList nodeArrayList3 = (ArrayList) pop();
6009:                ArrayList nodeArrayList2 = (ArrayList) pop();
6010:                ArrayList nodeArrayList1 = (ArrayList) pop();
6011:                PHelperDef phelperdefNode1;
6012:                {
6013:                    TId tidNode2;
6014:                    PRegExp pregexpNode3;
6015:                    tidNode2 = (TId) nodeArrayList1.get(0);
6016:                    pregexpNode3 = (PRegExp) nodeArrayList3.get(0);
6017:
6018:                    phelperdefNode1 = new AHelperDef(tidNode2, pregexpNode3);
6019:                }
6020:                nodeList.add(phelperdefNode1);
6021:                return nodeList;
6022:            }
6023:
6024:            ArrayList new134() /* reduce AStates */
6025:            {
6026:                ArrayList nodeList = new ArrayList();
6027:
6028:                ArrayList nodeArrayList3 = (ArrayList) pop();
6029:                ArrayList nodeArrayList2 = (ArrayList) pop();
6030:                ArrayList nodeArrayList1 = (ArrayList) pop();
6031:                PStates pstatesNode1;
6032:                {
6033:                    TypedLinkedList listNode3 = new TypedLinkedList();
6034:                    {
6035:                        TypedLinkedList listNode2 = new TypedLinkedList();
6036:                        listNode2 = (TypedLinkedList) nodeArrayList2.get(0);
6037:                        if (listNode2 != null) {
6038:                            listNode3.addAll(listNode2);
6039:                        }
6040:                    }
6041:
6042:                    pstatesNode1 = new AStates(listNode3);
6043:                }
6044:                nodeList.add(pstatesNode1);
6045:                return nodeList;
6046:            }
6047:
6048:            ArrayList new135() /* reduce AAidlist1IdList */
6049:            {
6050:                ArrayList nodeList = new ArrayList();
6051:
6052:                ArrayList nodeArrayList1 = (ArrayList) pop();
6053:                TypedLinkedList listNode2 = new TypedLinkedList();
6054:                {
6055:                    TId tidNode1;
6056:                    tidNode1 = (TId) nodeArrayList1.get(0);
6057:                    if (tidNode1 != null) {
6058:                        listNode2.add(tidNode1);
6059:                    }
6060:                }
6061:                nodeList.add(listNode2);
6062:                return nodeList;
6063:            }
6064:
6065:            ArrayList new136() /* reduce AAidlist2IdList */
6066:            {
6067:                ArrayList nodeList = new ArrayList();
6068:
6069:                ArrayList nodeArrayList2 = (ArrayList) pop();
6070:                ArrayList nodeArrayList1 = (ArrayList) pop();
6071:                TypedLinkedList listNode3 = new TypedLinkedList();
6072:                {
6073:                    TId tidNode1;
6074:                    TypedLinkedList listNode2 = new TypedLinkedList();
6075:                    tidNode1 = (TId) nodeArrayList1.get(0);
6076:                    listNode2 = (TypedLinkedList) nodeArrayList2.get(0);
6077:                    if (tidNode1 != null) {
6078:                        listNode3.add(tidNode1);
6079:                    }
6080:                    if (listNode2 != null) {
6081:                        listNode3.addAll(listNode2);
6082:                    }
6083:                }
6084:                nodeList.add(listNode3);
6085:                return nodeList;
6086:            }
6087:
6088:            ArrayList new137() /* reduce AIdListTail */
6089:            {
6090:                ArrayList nodeList = new ArrayList();
6091:
6092:                ArrayList nodeArrayList2 = (ArrayList) pop();
6093:                ArrayList nodeArrayList1 = (ArrayList) pop();
6094:                TId tidNode1;
6095:                tidNode1 = (TId) nodeArrayList2.get(0);
6096:                nodeList.add(tidNode1);
6097:                return nodeList;
6098:            }
6099:
6100:            ArrayList new138() /* reduce ATokens */
6101:            {
6102:                ArrayList nodeList = new ArrayList();
6103:
6104:                ArrayList nodeArrayList2 = (ArrayList) pop();
6105:                ArrayList nodeArrayList1 = (ArrayList) pop();
6106:                PTokens ptokensNode1;
6107:                {
6108:                    TypedLinkedList listNode3 = new TypedLinkedList();
6109:                    {
6110:                        TypedLinkedList listNode2 = new TypedLinkedList();
6111:                        listNode2 = (TypedLinkedList) nodeArrayList2.get(0);
6112:                        if (listNode2 != null) {
6113:                            listNode3.addAll(listNode2);
6114:                        }
6115:                    }
6116:
6117:                    ptokensNode1 = new ATokens(listNode3);
6118:                }
6119:                nodeList.add(ptokensNode1);
6120:                return nodeList;
6121:            }
6122:
6123:            ArrayList new139() /* reduce AAtokendef1TokenDef */
6124:            {
6125:                ArrayList nodeList = new ArrayList();
6126:
6127:                ArrayList nodeArrayList4 = (ArrayList) pop();
6128:                ArrayList nodeArrayList3 = (ArrayList) pop();
6129:                ArrayList nodeArrayList2 = (ArrayList) pop();
6130:                ArrayList nodeArrayList1 = (ArrayList) pop();
6131:                PTokenDef ptokendefNode1;
6132:                {
6133:                    Object nullNode2 = null;
6134:                    TId tidNode3;
6135:                    PRegExp pregexpNode4;
6136:                    Object nullNode5 = null;
6137:                    Object nullNode6 = null;
6138:                    tidNode3 = (TId) nodeArrayList1.get(0);
6139:                    pregexpNode4 = (PRegExp) nodeArrayList3.get(0);
6140:
6141:                    ptokendefNode1 = new ATokenDef(null, tidNode3,
6142:                            pregexpNode4, null, null);
6143:                }
6144:                nodeList.add(ptokendefNode1);
6145:                return nodeList;
6146:            }
6147:
6148:            ArrayList new140() /* reduce AAtokendef2TokenDef */
6149:            {
6150:                ArrayList nodeList = new ArrayList();
6151:
6152:                ArrayList nodeArrayList5 = (ArrayList) pop();
6153:                ArrayList nodeArrayList4 = (ArrayList) pop();
6154:                ArrayList nodeArrayList3 = (ArrayList) pop();
6155:                ArrayList nodeArrayList2 = (ArrayList) pop();
6156:                ArrayList nodeArrayList1 = (ArrayList) pop();
6157:                PTokenDef ptokendefNode1;
6158:                {
6159:                    PStateList pstatelistNode2;
6160:                    TId tidNode3;
6161:                    PRegExp pregexpNode4;
6162:                    Object nullNode5 = null;
6163:                    Object nullNode6 = null;
6164:                    pstatelistNode2 = (PStateList) nodeArrayList1.get(0);
6165:                    tidNode3 = (TId) nodeArrayList2.get(0);
6166:                    pregexpNode4 = (PRegExp) nodeArrayList4.get(0);
6167:
6168:                    ptokendefNode1 = new ATokenDef(pstatelistNode2, tidNode3,
6169:                            pregexpNode4, null, null);
6170:                }
6171:                nodeList.add(ptokendefNode1);
6172:                return nodeList;
6173:            }
6174:
6175:            ArrayList new141() /* reduce AAtokendef3TokenDef */
6176:            {
6177:                ArrayList nodeList = new ArrayList();
6178:
6179:                ArrayList nodeArrayList5 = (ArrayList) pop();
6180:                ArrayList nodeArrayList4 = (ArrayList) pop();
6181:                ArrayList nodeArrayList3 = (ArrayList) pop();
6182:                ArrayList nodeArrayList2 = (ArrayList) pop();
6183:                ArrayList nodeArrayList1 = (ArrayList) pop();
6184:                PTokenDef ptokendefNode1;
6185:                {
6186:                    Object nullNode2 = null;
6187:                    TId tidNode3;
6188:                    PRegExp pregexpNode4;
6189:                    TSlash tslashNode5;
6190:                    PRegExp pregexpNode6;
6191:                    tidNode3 = (TId) nodeArrayList1.get(0);
6192:                    pregexpNode4 = (PRegExp) nodeArrayList3.get(0);
6193:                    tslashNode5 = (TSlash) nodeArrayList4.get(0);
6194:                    pregexpNode6 = (PRegExp) nodeArrayList4.get(1);
6195:
6196:                    ptokendefNode1 = new ATokenDef(null, tidNode3,
6197:                            pregexpNode4, tslashNode5, pregexpNode6);
6198:                }
6199:                nodeList.add(ptokendefNode1);
6200:                return nodeList;
6201:            }
6202:
6203:            ArrayList new142() /* reduce AAtokendef4TokenDef */
6204:            {
6205:                ArrayList nodeList = new ArrayList();
6206:
6207:                ArrayList nodeArrayList6 = (ArrayList) pop();
6208:                ArrayList nodeArrayList5 = (ArrayList) pop();
6209:                ArrayList nodeArrayList4 = (ArrayList) pop();
6210:                ArrayList nodeArrayList3 = (ArrayList) pop();
6211:                ArrayList nodeArrayList2 = (ArrayList) pop();
6212:                ArrayList nodeArrayList1 = (ArrayList) pop();
6213:                PTokenDef ptokendefNode1;
6214:                {
6215:                    PStateList pstatelistNode2;
6216:                    TId tidNode3;
6217:                    PRegExp pregexpNode4;
6218:                    TSlash tslashNode5;
6219:                    PRegExp pregexpNode6;
6220:                    pstatelistNode2 = (PStateList) nodeArrayList1.get(0);
6221:                    tidNode3 = (TId) nodeArrayList2.get(0);
6222:                    pregexpNode4 = (PRegExp) nodeArrayList4.get(0);
6223:                    tslashNode5 = (TSlash) nodeArrayList5.get(0);
6224:                    pregexpNode6 = (PRegExp) nodeArrayList5.get(1);
6225:
6226:                    ptokendefNode1 = new ATokenDef(pstatelistNode2, tidNode3,
6227:                            pregexpNode4, tslashNode5, pregexpNode6);
6228:                }
6229:                nodeList.add(ptokendefNode1);
6230:                return nodeList;
6231:            }
6232:
6233:            ArrayList new143() /* reduce AAstatelist1StateList */
6234:            {
6235:                ArrayList nodeList = new ArrayList();
6236:
6237:                ArrayList nodeArrayList3 = (ArrayList) pop();
6238:                ArrayList nodeArrayList2 = (ArrayList) pop();
6239:                ArrayList nodeArrayList1 = (ArrayList) pop();
6240:                PStateList pstatelistNode1;
6241:                {
6242:                    TId tidNode2;
6243:                    Object nullNode3 = null;
6244:                    TypedLinkedList listNode4 = new TypedLinkedList();
6245:                    tidNode2 = (TId) nodeArrayList2.get(0);
6246:                    {
6247:                    }
6248:
6249:                    pstatelistNode1 = new AStateList(tidNode2, null, listNode4);
6250:                }
6251:                nodeList.add(pstatelistNode1);
6252:                return nodeList;
6253:            }
6254:
6255:            ArrayList new144() /* reduce AAstatelist2StateList */
6256:            {
6257:                ArrayList nodeList = new ArrayList();
6258:
6259:                ArrayList nodeArrayList4 = (ArrayList) pop();
6260:                ArrayList nodeArrayList3 = (ArrayList) pop();
6261:                ArrayList nodeArrayList2 = (ArrayList) pop();
6262:                ArrayList nodeArrayList1 = (ArrayList) pop();
6263:                PStateList pstatelistNode1;
6264:                {
6265:                    TId tidNode2;
6266:                    PTransition ptransitionNode3;
6267:                    TypedLinkedList listNode4 = new TypedLinkedList();
6268:                    tidNode2 = (TId) nodeArrayList2.get(0);
6269:                    ptransitionNode3 = (PTransition) nodeArrayList3.get(0);
6270:                    {
6271:                    }
6272:
6273:                    pstatelistNode1 = new AStateList(tidNode2,
6274:                            ptransitionNode3, listNode4);
6275:                }
6276:                nodeList.add(pstatelistNode1);
6277:                return nodeList;
6278:            }
6279:
6280:            ArrayList new145() /* reduce AAstatelist3StateList */
6281:            {
6282:                ArrayList nodeList = new ArrayList();
6283:
6284:                ArrayList nodeArrayList4 = (ArrayList) pop();
6285:                ArrayList nodeArrayList3 = (ArrayList) pop();
6286:                ArrayList nodeArrayList2 = (ArrayList) pop();
6287:                ArrayList nodeArrayList1 = (ArrayList) pop();
6288:                PStateList pstatelistNode1;
6289:                {
6290:                    TId tidNode2;
6291:                    Object nullNode3 = null;
6292:                    TypedLinkedList listNode5 = new TypedLinkedList();
6293:                    tidNode2 = (TId) nodeArrayList2.get(0);
6294:                    {
6295:                        TypedLinkedList listNode4 = new TypedLinkedList();
6296:                        listNode4 = (TypedLinkedList) nodeArrayList3.get(0);
6297:                        if (listNode4 != null) {
6298:                            listNode5.addAll(listNode4);
6299:                        }
6300:                    }
6301:
6302:                    pstatelistNode1 = new AStateList(tidNode2, null, listNode5);
6303:                }
6304:                nodeList.add(pstatelistNode1);
6305:                return nodeList;
6306:            }
6307:
6308:            ArrayList new146() /* reduce AAstatelist4StateList */
6309:            {
6310:                ArrayList nodeList = new ArrayList();
6311:
6312:                ArrayList nodeArrayList5 = (ArrayList) pop();
6313:                ArrayList nodeArrayList4 = (ArrayList) pop();
6314:                ArrayList nodeArrayList3 = (ArrayList) pop();
6315:                ArrayList nodeArrayList2 = (ArrayList) pop();
6316:                ArrayList nodeArrayList1 = (ArrayList) pop();
6317:                PStateList pstatelistNode1;
6318:                {
6319:                    TId tidNode2;
6320:                    PTransition ptransitionNode3;
6321:                    TypedLinkedList listNode5 = new TypedLinkedList();
6322:                    tidNode2 = (TId) nodeArrayList2.get(0);
6323:                    ptransitionNode3 = (PTransition) nodeArrayList3.get(0);
6324:                    {
6325:                        TypedLinkedList listNode4 = new TypedLinkedList();
6326:                        listNode4 = (TypedLinkedList) nodeArrayList4.get(0);
6327:                        if (listNode4 != null) {
6328:                            listNode5.addAll(listNode4);
6329:                        }
6330:                    }
6331:
6332:                    pstatelistNode1 = new AStateList(tidNode2,
6333:                            ptransitionNode3, listNode5);
6334:                }
6335:                nodeList.add(pstatelistNode1);
6336:                return nodeList;
6337:            }
6338:
6339:            ArrayList new147() /* reduce AAstatelisttail1StateListTail */
6340:            {
6341:                ArrayList nodeList = new ArrayList();
6342:
6343:                ArrayList nodeArrayList2 = (ArrayList) pop();
6344:                ArrayList nodeArrayList1 = (ArrayList) pop();
6345:                PStateListTail pstatelisttailNode1;
6346:                {
6347:                    TId tidNode2;
6348:                    Object nullNode3 = null;
6349:                    tidNode2 = (TId) nodeArrayList2.get(0);
6350:
6351:                    pstatelisttailNode1 = new AStateListTail(tidNode2, null);
6352:                }
6353:                nodeList.add(pstatelisttailNode1);
6354:                return nodeList;
6355:            }
6356:
6357:            ArrayList new148() /* reduce AAstatelisttail2StateListTail */
6358:            {
6359:                ArrayList nodeList = new ArrayList();
6360:
6361:                ArrayList nodeArrayList3 = (ArrayList) pop();
6362:                ArrayList nodeArrayList2 = (ArrayList) pop();
6363:                ArrayList nodeArrayList1 = (ArrayList) pop();
6364:                PStateListTail pstatelisttailNode1;
6365:                {
6366:                    TId tidNode2;
6367:                    PTransition ptransitionNode3;
6368:                    tidNode2 = (TId) nodeArrayList2.get(0);
6369:                    ptransitionNode3 = (PTransition) nodeArrayList3.get(0);
6370:
6371:                    pstatelisttailNode1 = new AStateListTail(tidNode2,
6372:                            ptransitionNode3);
6373:                }
6374:                nodeList.add(pstatelisttailNode1);
6375:                return nodeList;
6376:            }
6377:
6378:            ArrayList new149() /* reduce ATransition */
6379:            {
6380:                ArrayList nodeList = new ArrayList();
6381:
6382:                ArrayList nodeArrayList2 = (ArrayList) pop();
6383:                ArrayList nodeArrayList1 = (ArrayList) pop();
6384:                PTransition ptransitionNode1;
6385:                {
6386:                    TId tidNode2;
6387:                    tidNode2 = (TId) nodeArrayList2.get(0);
6388:
6389:                    ptransitionNode1 = new ATransition(tidNode2);
6390:                }
6391:                nodeList.add(ptransitionNode1);
6392:                return nodeList;
6393:            }
6394:
6395:            ArrayList new150() /* reduce AAigntokens1IgnTokens */
6396:            {
6397:                ArrayList nodeList = new ArrayList();
6398:
6399:                ArrayList nodeArrayList3 = (ArrayList) pop();
6400:                ArrayList nodeArrayList2 = (ArrayList) pop();
6401:                ArrayList nodeArrayList1 = (ArrayList) pop();
6402:                PIgnTokens pigntokensNode1;
6403:                {
6404:                    TypedLinkedList listNode2 = new TypedLinkedList();
6405:                    {
6406:                    }
6407:
6408:                    pigntokensNode1 = new AIgnTokens(listNode2);
6409:                }
6410:                nodeList.add(pigntokensNode1);
6411:                return nodeList;
6412:            }
6413:
6414:            ArrayList new151() /* reduce AAigntokens2IgnTokens */
6415:            {
6416:                ArrayList nodeList = new ArrayList();
6417:
6418:                ArrayList nodeArrayList4 = (ArrayList) pop();
6419:                ArrayList nodeArrayList3 = (ArrayList) pop();
6420:                ArrayList nodeArrayList2 = (ArrayList) pop();
6421:                ArrayList nodeArrayList1 = (ArrayList) pop();
6422:                PIgnTokens pigntokensNode1;
6423:                {
6424:                    TypedLinkedList listNode3 = new TypedLinkedList();
6425:                    {
6426:                        TypedLinkedList listNode2 = new TypedLinkedList();
6427:                        listNode2 = (TypedLinkedList) nodeArrayList3.get(0);
6428:                        if (listNode2 != null) {
6429:                            listNode3.addAll(listNode2);
6430:                        }
6431:                    }
6432:
6433:                    pigntokensNode1 = new AIgnTokens(listNode3);
6434:                }
6435:                nodeList.add(pigntokensNode1);
6436:                return nodeList;
6437:            }
6438:
6439:            ArrayList new152() /* reduce ALookAhead */
6440:            {
6441:                ArrayList nodeList = new ArrayList();
6442:
6443:                ArrayList nodeArrayList2 = (ArrayList) pop();
6444:                ArrayList nodeArrayList1 = (ArrayList) pop();
6445:                TSlash tslashNode1;
6446:                PRegExp pregexpNode2;
6447:                tslashNode1 = (TSlash) nodeArrayList1.get(0);
6448:                pregexpNode2 = (PRegExp) nodeArrayList2.get(0);
6449:                nodeList.add(tslashNode1);
6450:                nodeList.add(pregexpNode2);
6451:                return nodeList;
6452:            }
6453:
6454:            ArrayList new153() /* reduce AAregexp1RegExp */
6455:            {
6456:                ArrayList nodeList = new ArrayList();
6457:
6458:                ArrayList nodeArrayList1 = (ArrayList) pop();
6459:                PRegExp pregexpNode1;
6460:                {
6461:                    TypedLinkedList listNode3 = new TypedLinkedList();
6462:                    {
6463:                        PConcat pconcatNode2;
6464:                        pconcatNode2 = (PConcat) nodeArrayList1.get(0);
6465:                        if (pconcatNode2 != null) {
6466:                            listNode3.add(pconcatNode2);
6467:                        }
6468:                    }
6469:
6470:                    pregexpNode1 = new ARegExp(listNode3);
6471:                }
6472:                nodeList.add(pregexpNode1);
6473:                return nodeList;
6474:            }
6475:
6476:            ArrayList new154() /* reduce AAregexp2RegExp */
6477:            {
6478:                ArrayList nodeList = new ArrayList();
6479:
6480:                ArrayList nodeArrayList2 = (ArrayList) pop();
6481:                ArrayList nodeArrayList1 = (ArrayList) pop();
6482:                PRegExp pregexpNode1;
6483:                {
6484:                    TypedLinkedList listNode4 = new TypedLinkedList();
6485:                    {
6486:                        PConcat pconcatNode2;
6487:                        TypedLinkedList listNode3 = new TypedLinkedList();
6488:                        pconcatNode2 = (PConcat) nodeArrayList1.get(0);
6489:                        listNode3 = (TypedLinkedList) nodeArrayList2.get(0);
6490:                        if (pconcatNode2 != null) {
6491:                            listNode4.add(pconcatNode2);
6492:                        }
6493:                        if (listNode3 != null) {
6494:                            listNode4.addAll(listNode3);
6495:                        }
6496:                    }
6497:
6498:                    pregexpNode1 = new ARegExp(listNode4);
6499:                }
6500:                nodeList.add(pregexpNode1);
6501:                return nodeList;
6502:            }
6503:
6504:            ArrayList new155() /* reduce ARegExpTail */
6505:            {
6506:                ArrayList nodeList = new ArrayList();
6507:
6508:                ArrayList nodeArrayList2 = (ArrayList) pop();
6509:                ArrayList nodeArrayList1 = (ArrayList) pop();
6510:                PConcat pconcatNode1;
6511:                pconcatNode1 = (PConcat) nodeArrayList2.get(0);
6512:                nodeList.add(pconcatNode1);
6513:                return nodeList;
6514:            }
6515:
6516:            ArrayList new156() /* reduce AAconcat1Concat */
6517:            {
6518:                ArrayList nodeList = new ArrayList();
6519:
6520:                PConcat pconcatNode1;
6521:                {
6522:                    TypedLinkedList listNode2 = new TypedLinkedList();
6523:                    {
6524:                    }
6525:
6526:                    pconcatNode1 = new AConcat(listNode2);
6527:                }
6528:                nodeList.add(pconcatNode1);
6529:                return nodeList;
6530:            }
6531:
6532:            ArrayList new157() /* reduce AAconcat2Concat */
6533:            {
6534:                ArrayList nodeList = new ArrayList();
6535:
6536:                ArrayList nodeArrayList1 = (ArrayList) pop();
6537:                PConcat pconcatNode1;
6538:                {
6539:                    TypedLinkedList listNode3 = new TypedLinkedList();
6540:                    {
6541:                        TypedLinkedList listNode2 = new TypedLinkedList();
6542:                        listNode2 = (TypedLinkedList) nodeArrayList1.get(0);
6543:                        if (listNode2 != null) {
6544:                            listNode3.addAll(listNode2);
6545:                        }
6546:                    }
6547:
6548:                    pconcatNode1 = new AConcat(listNode3);
6549:                }
6550:                nodeList.add(pconcatNode1);
6551:                return nodeList;
6552:            }
6553:
6554:            ArrayList new158() /* reduce AAunexp1UnExp */
6555:            {
6556:                ArrayList nodeList = new ArrayList();
6557:
6558:                ArrayList nodeArrayList1 = (ArrayList) pop();
6559:                PUnExp punexpNode1;
6560:                {
6561:                    PBasic pbasicNode2;
6562:                    Object nullNode3 = null;
6563:                    pbasicNode2 = (PBasic) nodeArrayList1.get(0);
6564:
6565:                    punexpNode1 = new AUnExp(pbasicNode2, null);
6566:                }
6567:                nodeList.add(punexpNode1);
6568:                return nodeList;
6569:            }
6570:
6571:            ArrayList new159() /* reduce AAunexp2UnExp */
6572:            {
6573:                ArrayList nodeList = new ArrayList();
6574:
6575:                ArrayList nodeArrayList2 = (ArrayList) pop();
6576:                ArrayList nodeArrayList1 = (ArrayList) pop();
6577:                PUnExp punexpNode1;
6578:                {
6579:                    PBasic pbasicNode2;
6580:                    PUnOp punopNode3;
6581:                    pbasicNode2 = (PBasic) nodeArrayList1.get(0);
6582:                    punopNode3 = (PUnOp) nodeArrayList2.get(0);
6583:
6584:                    punexpNode1 = new AUnExp(pbasicNode2, punopNode3);
6585:                }
6586:                nodeList.add(punexpNode1);
6587:                return nodeList;
6588:            }
6589:
6590:            ArrayList new160() /* reduce ACharBasic */
6591:            {
6592:                ArrayList nodeList = new ArrayList();
6593:
6594:                ArrayList nodeArrayList1 = (ArrayList) pop();
6595:                PBasic pbasicNode1;
6596:                {
6597:                    PChar pcharNode2;
6598:                    pcharNode2 = (PChar) nodeArrayList1.get(0);
6599:
6600:                    pbasicNode1 = new ACharBasic(pcharNode2);
6601:                }
6602:                nodeList.add(pbasicNode1);
6603:                return nodeList;
6604:            }
6605:
6606:            ArrayList new161() /* reduce ASetBasic */
6607:            {
6608:                ArrayList nodeList = new ArrayList();
6609:
6610:                ArrayList nodeArrayList1 = (ArrayList) pop();
6611:                PBasic pbasicNode1;
6612:                {
6613:                    PSet psetNode2;
6614:                    psetNode2 = (PSet) nodeArrayList1.get(0);
6615:
6616:                    pbasicNode1 = new ASetBasic(psetNode2);
6617:                }
6618:                nodeList.add(pbasicNode1);
6619:                return nodeList;
6620:            }
6621:
6622:            ArrayList new162() /* reduce AStringBasic */
6623:            {
6624:                ArrayList nodeList = new ArrayList();
6625:
6626:                ArrayList nodeArrayList1 = (ArrayList) pop();
6627:                PBasic pbasicNode1;
6628:                {
6629:                    TString tstringNode2;
6630:                    tstringNode2 = (TString) nodeArrayList1.get(0);
6631:
6632:                    pbasicNode1 = new AStringBasic(tstringNode2);
6633:                }
6634:                nodeList.add(pbasicNode1);
6635:                return nodeList;
6636:            }
6637:
6638:            ArrayList new163() /* reduce AIdBasic */
6639:            {
6640:                ArrayList nodeList = new ArrayList();
6641:
6642:                ArrayList nodeArrayList1 = (ArrayList) pop();
6643:                PBasic pbasicNode1;
6644:                {
6645:                    TId tidNode2;
6646:                    tidNode2 = (TId) nodeArrayList1.get(0);
6647:
6648:                    pbasicNode1 = new AIdBasic(tidNode2);
6649:                }
6650:                nodeList.add(pbasicNode1);
6651:                return nodeList;
6652:            }
6653:
6654:            ArrayList new164() /* reduce ARegExpBasic */
6655:            {
6656:                ArrayList nodeList = new ArrayList();
6657:
6658:                ArrayList nodeArrayList3 = (ArrayList) pop();
6659:                ArrayList nodeArrayList2 = (ArrayList) pop();
6660:                ArrayList nodeArrayList1 = (ArrayList) pop();
6661:                PBasic pbasicNode1;
6662:                {
6663:                    PRegExp pregexpNode2;
6664:                    pregexpNode2 = (PRegExp) nodeArrayList2.get(0);
6665:
6666:                    pbasicNode1 = new ARegExpBasic(pregexpNode2);
6667:                }
6668:                nodeList.add(pbasicNode1);
6669:                return nodeList;
6670:            }
6671:
6672:            ArrayList new165() /* reduce ACharChar */
6673:            {
6674:                ArrayList nodeList = new ArrayList();
6675:
6676:                ArrayList nodeArrayList1 = (ArrayList) pop();
6677:                PChar pcharNode1;
6678:                {
6679:                    TChar tcharNode2;
6680:                    tcharNode2 = (TChar) nodeArrayList1.get(0);
6681:
6682:                    pcharNode1 = new ACharChar(tcharNode2);
6683:                }
6684:                nodeList.add(pcharNode1);
6685:                return nodeList;
6686:            }
6687:
6688:            ArrayList new166() /* reduce ADecChar */
6689:            {
6690:                ArrayList nodeList = new ArrayList();
6691:
6692:                ArrayList nodeArrayList1 = (ArrayList) pop();
6693:                PChar pcharNode1;
6694:                {
6695:                    TDecChar tdeccharNode2;
6696:                    tdeccharNode2 = (TDecChar) nodeArrayList1.get(0);
6697:
6698:                    pcharNode1 = new ADecChar(tdeccharNode2);
6699:                }
6700:                nodeList.add(pcharNode1);
6701:                return nodeList;
6702:            }
6703:
6704:            ArrayList new167() /* reduce AHexChar */
6705:            {
6706:                ArrayList nodeList = new ArrayList();
6707:
6708:                ArrayList nodeArrayList1 = (ArrayList) pop();
6709:                PChar pcharNode1;
6710:                {
6711:                    THexChar thexcharNode2;
6712:                    thexcharNode2 = (THexChar) nodeArrayList1.get(0);
6713:
6714:                    pcharNode1 = new AHexChar(thexcharNode2);
6715:                }
6716:                nodeList.add(pcharNode1);
6717:                return nodeList;
6718:            }
6719:
6720:            ArrayList new168() /* reduce AOperationSet */
6721:            {
6722:                ArrayList nodeList = new ArrayList();
6723:
6724:                ArrayList nodeArrayList5 = (ArrayList) pop();
6725:                ArrayList nodeArrayList4 = (ArrayList) pop();
6726:                ArrayList nodeArrayList3 = (ArrayList) pop();
6727:                ArrayList nodeArrayList2 = (ArrayList) pop();
6728:                ArrayList nodeArrayList1 = (ArrayList) pop();
6729:                PSet psetNode1;
6730:                {
6731:                    PBasic pbasicNode2;
6732:                    PBinOp pbinopNode3;
6733:                    PBasic pbasicNode4;
6734:                    pbasicNode2 = (PBasic) nodeArrayList2.get(0);
6735:                    pbinopNode3 = (PBinOp) nodeArrayList3.get(0);
6736:                    pbasicNode4 = (PBasic) nodeArrayList4.get(0);
6737:
6738:                    psetNode1 = new AOperationSet(pbasicNode2, pbinopNode3,
6739:                            pbasicNode4);
6740:                }
6741:                nodeList.add(psetNode1);
6742:                return nodeList;
6743:            }
6744:
6745:            ArrayList new169() /* reduce AIntervalSet */
6746:            {
6747:                ArrayList nodeList = new ArrayList();
6748:
6749:                ArrayList nodeArrayList5 = (ArrayList) pop();
6750:                ArrayList nodeArrayList4 = (ArrayList) pop();
6751:                ArrayList nodeArrayList3 = (ArrayList) pop();
6752:                ArrayList nodeArrayList2 = (ArrayList) pop();
6753:                ArrayList nodeArrayList1 = (ArrayList) pop();
6754:                PSet psetNode1;
6755:                {
6756:                    PChar pcharNode2;
6757:                    PChar pcharNode3;
6758:                    pcharNode2 = (PChar) nodeArrayList2.get(0);
6759:                    pcharNode3 = (PChar) nodeArrayList4.get(0);
6760:
6761:                    psetNode1 = new AIntervalSet(pcharNode2, pcharNode3);
6762:                }
6763:                nodeList.add(psetNode1);
6764:                return nodeList;
6765:            }
6766:
6767:            ArrayList new170() /* reduce AStarUnOp */
6768:            {
6769:                ArrayList nodeList = new ArrayList();
6770:
6771:                ArrayList nodeArrayList1 = (ArrayList) pop();
6772:                PUnOp punopNode1;
6773:                {
6774:                    TStar tstarNode2;
6775:                    tstarNode2 = (TStar) nodeArrayList1.get(0);
6776:
6777:                    punopNode1 = new AStarUnOp(tstarNode2);
6778:                }
6779:                nodeList.add(punopNode1);
6780:                return nodeList;
6781:            }
6782:
6783:            ArrayList new171() /* reduce AQMarkUnOp */
6784:            {
6785:                ArrayList nodeList = new ArrayList();
6786:
6787:                ArrayList nodeArrayList1 = (ArrayList) pop();
6788:                PUnOp punopNode1;
6789:                {
6790:                    TQMark tqmarkNode2;
6791:                    tqmarkNode2 = (TQMark) nodeArrayList1.get(0);
6792:
6793:                    punopNode1 = new AQMarkUnOp(tqmarkNode2);
6794:                }
6795:                nodeList.add(punopNode1);
6796:                return nodeList;
6797:            }
6798:
6799:            ArrayList new172() /* reduce APlusUnOp */
6800:            {
6801:                ArrayList nodeList = new ArrayList();
6802:
6803:                ArrayList nodeArrayList1 = (ArrayList) pop();
6804:                PUnOp punopNode1;
6805:                {
6806:                    TPlus tplusNode2;
6807:                    tplusNode2 = (TPlus) nodeArrayList1.get(0);
6808:
6809:                    punopNode1 = new APlusUnOp(tplusNode2);
6810:                }
6811:                nodeList.add(punopNode1);
6812:                return nodeList;
6813:            }
6814:
6815:            ArrayList new173() /* reduce APlusBinOp */
6816:            {
6817:                ArrayList nodeList = new ArrayList();
6818:
6819:                ArrayList nodeArrayList1 = (ArrayList) pop();
6820:                PBinOp pbinopNode1;
6821:                {
6822:
6823:                    pbinopNode1 = new APlusBinOp();
6824:                }
6825:                nodeList.add(pbinopNode1);
6826:                return nodeList;
6827:            }
6828:
6829:            ArrayList new174() /* reduce AMinusBinOp */
6830:            {
6831:                ArrayList nodeList = new ArrayList();
6832:
6833:                ArrayList nodeArrayList1 = (ArrayList) pop();
6834:                PBinOp pbinopNode1;
6835:                {
6836:
6837:                    pbinopNode1 = new AMinusBinOp();
6838:                }
6839:                nodeList.add(pbinopNode1);
6840:                return nodeList;
6841:            }
6842:
6843:            ArrayList new175() /* reduce AProductions */
6844:            {
6845:                ArrayList nodeList = new ArrayList();
6846:
6847:                ArrayList nodeArrayList2 = (ArrayList) pop();
6848:                ArrayList nodeArrayList1 = (ArrayList) pop();
6849:                PProductions pproductionsNode1;
6850:                {
6851:                    TypedLinkedList listNode3 = new TypedLinkedList();
6852:                    {
6853:                        TypedLinkedList listNode2 = new TypedLinkedList();
6854:                        listNode2 = (TypedLinkedList) nodeArrayList2.get(0);
6855:                        if (listNode2 != null) {
6856:                            listNode3.addAll(listNode2);
6857:                        }
6858:                    }
6859:
6860:                    pproductionsNode1 = new AProductions(listNode3);
6861:                }
6862:                nodeList.add(pproductionsNode1);
6863:                return nodeList;
6864:            }
6865:
6866:            ArrayList new176() /* reduce AAprod1Prod */
6867:            {
6868:                ArrayList nodeList = new ArrayList();
6869:
6870:                ArrayList nodeArrayList4 = (ArrayList) pop();
6871:                ArrayList nodeArrayList3 = (ArrayList) pop();
6872:                ArrayList nodeArrayList2 = (ArrayList) pop();
6873:                ArrayList nodeArrayList1 = (ArrayList) pop();
6874:                PProd pprodNode1;
6875:                {
6876:                    TId tidNode2;
6877:                    Object nullNode3 = null;
6878:                    TypedLinkedList listNode4 = new TypedLinkedList();
6879:                    TypedLinkedList listNode6 = new TypedLinkedList();
6880:                    tidNode2 = (TId) nodeArrayList1.get(0);
6881:                    {
6882:                    }
6883:
6884:                    {
6885:                        TypedLinkedList listNode5 = new TypedLinkedList();
6886:                        listNode5 = (TypedLinkedList) nodeArrayList3.get(0);
6887:                        if (listNode5 != null) {
6888:                            listNode6.addAll(listNode5);
6889:                        }
6890:                    }
6891:
6892:                    pprodNode1 = new AProd(tidNode2, null, listNode4, listNode6);
6893:                }
6894:                nodeList.add(pprodNode1);
6895:                return nodeList;
6896:            }
6897:
6898:            ArrayList new177() /* reduce AAprod2Prod */
6899:            {
6900:                ArrayList nodeList = new ArrayList();
6901:
6902:                ArrayList nodeArrayList5 = (ArrayList) pop();
6903:                ArrayList nodeArrayList4 = (ArrayList) pop();
6904:                ArrayList nodeArrayList3 = (ArrayList) pop();
6905:                ArrayList nodeArrayList2 = (ArrayList) pop();
6906:                ArrayList nodeArrayList1 = (ArrayList) pop();
6907:                PProd pprodNode1;
6908:                {
6909:                    TId tidNode2;
6910:                    TArrow tarrowNode3;
6911:                    TypedLinkedList listNode5 = new TypedLinkedList();
6912:                    TypedLinkedList listNode7 = new TypedLinkedList();
6913:                    tidNode2 = (TId) nodeArrayList1.get(0);
6914:                    tarrowNode3 = (TArrow) nodeArrayList2.get(0);
6915:                    {
6916:                        TypedLinkedList listNode4 = new TypedLinkedList();
6917:                        listNode4 = (TypedLinkedList) nodeArrayList2.get(1);
6918:                        if (listNode4 != null) {
6919:                            listNode5.addAll(listNode4);
6920:                        }
6921:                    }
6922:                    {
6923:                        TypedLinkedList listNode6 = new TypedLinkedList();
6924:                        listNode6 = (TypedLinkedList) nodeArrayList4.get(0);
6925:                        if (listNode6 != null) {
6926:                            listNode7.addAll(listNode6);
6927:                        }
6928:                    }
6929:
6930:                    pprodNode1 = new AProd(tidNode2, tarrowNode3, listNode5,
6931:                            listNode7);
6932:                }
6933:                nodeList.add(pprodNode1);
6934:                return nodeList;
6935:            }
6936:
6937:            ArrayList new178() /* reduce AAprodtransform1ProdTransform */
6938:            {
6939:                ArrayList nodeList = new ArrayList();
6940:
6941:                ArrayList nodeArrayList3 = (ArrayList) pop();
6942:                ArrayList nodeArrayList2 = (ArrayList) pop();
6943:                ArrayList nodeArrayList1 = (ArrayList) pop();
6944:                TArrow tarrowNode1;
6945:                TypedLinkedList listNode2 = new TypedLinkedList();
6946:                tarrowNode1 = (TArrow) nodeArrayList2.get(0);
6947:                {
6948:                }
6949:                nodeList.add(tarrowNode1);
6950:                nodeList.add(listNode2);
6951:                return nodeList;
6952:            }
6953:
6954:            ArrayList new179() /* reduce AAprodtransform2ProdTransform */
6955:            {
6956:                ArrayList nodeList = new ArrayList();
6957:
6958:                ArrayList nodeArrayList4 = (ArrayList) pop();
6959:                ArrayList nodeArrayList3 = (ArrayList) pop();
6960:                ArrayList nodeArrayList2 = (ArrayList) pop();
6961:                ArrayList nodeArrayList1 = (ArrayList) pop();
6962:                TArrow tarrowNode1;
6963:                TypedLinkedList listNode3 = new TypedLinkedList();
6964:                tarrowNode1 = (TArrow) nodeArrayList2.get(0);
6965:                {
6966:                    TypedLinkedList listNode2 = new TypedLinkedList();
6967:                    listNode2 = (TypedLinkedList) nodeArrayList3.get(0);
6968:                    if (listNode2 != null) {
6969:                        listNode3.addAll(listNode2);
6970:                    }
6971:                }
6972:                nodeList.add(tarrowNode1);
6973:                nodeList.add(listNode3);
6974:                return nodeList;
6975:            }
6976:
6977:            ArrayList new180() /* reduce AAalts1Alts */
6978:            {
6979:                ArrayList nodeList = new ArrayList();
6980:
6981:                ArrayList nodeArrayList1 = (ArrayList) pop();
6982:                TypedLinkedList listNode2 = new TypedLinkedList();
6983:                {
6984:                    PAlt paltNode1;
6985:                    paltNode1 = (PAlt) nodeArrayList1.get(0);
6986:                    if (paltNode1 != null) {
6987:                        listNode2.add(paltNode1);
6988:                    }
6989:                }
6990:                nodeList.add(listNode2);
6991:                return nodeList;
6992:            }
6993:
6994:            ArrayList new181() /* reduce AAalts2Alts */
6995:            {
6996:                ArrayList nodeList = new ArrayList();
6997:
6998:                ArrayList nodeArrayList2 = (ArrayList) pop();
6999:                ArrayList nodeArrayList1 = (ArrayList) pop();
7000:                TypedLinkedList listNode3 = new TypedLinkedList();
7001:                {
7002:                    PAlt paltNode1;
7003:                    TypedLinkedList listNode2 = new TypedLinkedList();
7004:                    paltNode1 = (PAlt) nodeArrayList1.get(0);
7005:                    listNode2 = (TypedLinkedList) nodeArrayList2.get(0);
7006:                    if (paltNode1 != null) {
7007:                        listNode3.add(paltNode1);
7008:                    }
7009:                    if (listNode2 != null) {
7010:                        listNode3.addAll(listNode2);
7011:                    }
7012:                }
7013:                nodeList.add(listNode3);
7014:                return nodeList;
7015:            }
7016:
7017:            ArrayList new182() /* reduce AAltsTail */
7018:            {
7019:                ArrayList nodeList = new ArrayList();
7020:
7021:                ArrayList nodeArrayList2 = (ArrayList) pop();
7022:                ArrayList nodeArrayList1 = (ArrayList) pop();
7023:                PAlt paltNode1;
7024:                paltNode1 = (PAlt) nodeArrayList2.get(0);
7025:                nodeList.add(paltNode1);
7026:                return nodeList;
7027:            }
7028:
7029:            ArrayList new183() /* reduce AAalt1Alt */
7030:            {
7031:                ArrayList nodeList = new ArrayList();
7032:
7033:                PAlt paltNode1;
7034:                {
7035:                    Object nullNode2 = null;
7036:                    TypedLinkedList listNode3 = new TypedLinkedList();
7037:                    Object nullNode4 = null;
7038:                    {
7039:                    }
7040:
7041:                    paltNode1 = new AAlt(null, listNode3, null);
7042:                }
7043:                nodeList.add(paltNode1);
7044:                return nodeList;
7045:            }
7046:
7047:            ArrayList new184() /* reduce AAalt2Alt */
7048:            {
7049:                ArrayList nodeList = new ArrayList();
7050:
7051:                ArrayList nodeArrayList1 = (ArrayList) pop();
7052:                PAlt paltNode1;
7053:                {
7054:                    TId tidNode2;
7055:                    TypedLinkedList listNode3 = new TypedLinkedList();
7056:                    Object nullNode4 = null;
7057:                    tidNode2 = (TId) nodeArrayList1.get(0);
7058:                    {
7059:                    }
7060:
7061:                    paltNode1 = new AAlt(tidNode2, listNode3, null);
7062:                }
7063:                nodeList.add(paltNode1);
7064:                return nodeList;
7065:            }
7066:
7067:            ArrayList new185() /* reduce AAalt3Alt */
7068:            {
7069:                ArrayList nodeList = new ArrayList();
7070:
7071:                ArrayList nodeArrayList1 = (ArrayList) pop();
7072:                PAlt paltNode1;
7073:                {
7074:                    Object nullNode2 = null;
7075:                    TypedLinkedList listNode4 = new TypedLinkedList();
7076:                    Object nullNode5 = null;
7077:                    {
7078:                        TypedLinkedList listNode3 = new TypedLinkedList();
7079:                        listNode3 = (TypedLinkedList) nodeArrayList1.get(0);
7080:                        if (listNode3 != null) {
7081:                            listNode4.addAll(listNode3);
7082:                        }
7083:                    }
7084:
7085:                    paltNode1 = new AAlt(null, listNode4, null);
7086:                }
7087:                nodeList.add(paltNode1);
7088:                return nodeList;
7089:            }
7090:
7091:            ArrayList new186() /* reduce AAalt4Alt */
7092:            {
7093:                ArrayList nodeList = new ArrayList();
7094:
7095:                ArrayList nodeArrayList2 = (ArrayList) pop();
7096:                ArrayList nodeArrayList1 = (ArrayList) pop();
7097:                PAlt paltNode1;
7098:                {
7099:                    TId tidNode2;
7100:                    TypedLinkedList listNode4 = new TypedLinkedList();
7101:                    Object nullNode5 = null;
7102:                    tidNode2 = (TId) nodeArrayList1.get(0);
7103:                    {
7104:                        TypedLinkedList listNode3 = new TypedLinkedList();
7105:                        listNode3 = (TypedLinkedList) nodeArrayList2.get(0);
7106:                        if (listNode3 != null) {
7107:                            listNode4.addAll(listNode3);
7108:                        }
7109:                    }
7110:
7111:                    paltNode1 = new AAlt(tidNode2, listNode4, null);
7112:                }
7113:                nodeList.add(paltNode1);
7114:                return nodeList;
7115:            }
7116:
7117:            ArrayList new187() /* reduce AAalt5Alt */
7118:            {
7119:                ArrayList nodeList = new ArrayList();
7120:
7121:                ArrayList nodeArrayList1 = (ArrayList) pop();
7122:                PAlt paltNode1;
7123:                {
7124:                    Object nullNode2 = null;
7125:                    TypedLinkedList listNode3 = new TypedLinkedList();
7126:                    PAltTransform palttransformNode4;
7127:                    {
7128:                    }
7129:                    palttransformNode4 = (PAltTransform) nodeArrayList1.get(0);
7130:
7131:                    paltNode1 = new AAlt(null, listNode3, palttransformNode4);
7132:                }
7133:                nodeList.add(paltNode1);
7134:                return nodeList;
7135:            }
7136:
7137:            ArrayList new188() /* reduce AAalt6Alt */
7138:            {
7139:                ArrayList nodeList = new ArrayList();
7140:
7141:                ArrayList nodeArrayList2 = (ArrayList) pop();
7142:                ArrayList nodeArrayList1 = (ArrayList) pop();
7143:                PAlt paltNode1;
7144:                {
7145:                    TId tidNode2;
7146:                    TypedLinkedList listNode3 = new TypedLinkedList();
7147:                    PAltTransform palttransformNode4;
7148:                    tidNode2 = (TId) nodeArrayList1.get(0);
7149:                    {
7150:                    }
7151:                    palttransformNode4 = (PAltTransform) nodeArrayList2.get(0);
7152:
7153:                    paltNode1 = new AAlt(tidNode2, listNode3,
7154:                            palttransformNode4);
7155:                }
7156:                nodeList.add(paltNode1);
7157:                return nodeList;
7158:            }
7159:
7160:            ArrayList new189() /* reduce AAalt7Alt */
7161:            {
7162:                ArrayList nodeList = new ArrayList();
7163:
7164:                ArrayList nodeArrayList2 = (ArrayList) pop();
7165:                ArrayList nodeArrayList1 = (ArrayList) pop();
7166:                PAlt paltNode1;
7167:                {
7168:                    Object nullNode2 = null;
7169:                    TypedLinkedList listNode4 = new TypedLinkedList();
7170:                    PAltTransform palttransformNode5;
7171:                    {
7172:                        TypedLinkedList listNode3 = new TypedLinkedList();
7173:                        listNode3 = (TypedLinkedList) nodeArrayList1.get(0);
7174:                        if (listNode3 != null) {
7175:                            listNode4.addAll(listNode3);
7176:                        }
7177:                    }
7178:                    palttransformNode5 = (PAltTransform) nodeArrayList2.get(0);
7179:
7180:                    paltNode1 = new AAlt(null, listNode4, palttransformNode5);
7181:                }
7182:                nodeList.add(paltNode1);
7183:                return nodeList;
7184:            }
7185:
7186:            ArrayList new190() /* reduce AAalt8Alt */
7187:            {
7188:                ArrayList nodeList = new ArrayList();
7189:
7190:                ArrayList nodeArrayList3 = (ArrayList) pop();
7191:                ArrayList nodeArrayList2 = (ArrayList) pop();
7192:                ArrayList nodeArrayList1 = (ArrayList) pop();
7193:                PAlt paltNode1;
7194:                {
7195:                    TId tidNode2;
7196:                    TypedLinkedList listNode4 = new TypedLinkedList();
7197:                    PAltTransform palttransformNode5;
7198:                    tidNode2 = (TId) nodeArrayList1.get(0);
7199:                    {
7200:                        TypedLinkedList listNode3 = new TypedLinkedList();
7201:                        listNode3 = (TypedLinkedList) nodeArrayList2.get(0);
7202:                        if (listNode3 != null) {
7203:                            listNode4.addAll(listNode3);
7204:                        }
7205:                    }
7206:                    palttransformNode5 = (PAltTransform) nodeArrayList3.get(0);
7207:
7208:                    paltNode1 = new AAlt(tidNode2, listNode4,
7209:                            palttransformNode5);
7210:                }
7211:                nodeList.add(paltNode1);
7212:                return nodeList;
7213:            }
7214:
7215:            ArrayList new191() /* reduce AAalttransform1AltTransform */
7216:            {
7217:                ArrayList nodeList = new ArrayList();
7218:
7219:                ArrayList nodeArrayList3 = (ArrayList) pop();
7220:                ArrayList nodeArrayList2 = (ArrayList) pop();
7221:                ArrayList nodeArrayList1 = (ArrayList) pop();
7222:                PAltTransform palttransformNode1;
7223:                {
7224:                    TLBrace tlbraceNode2;
7225:                    TypedLinkedList listNode3 = new TypedLinkedList();
7226:                    TRBrace trbraceNode4;
7227:                    tlbraceNode2 = (TLBrace) nodeArrayList1.get(0);
7228:                    {
7229:                    }
7230:                    trbraceNode4 = (TRBrace) nodeArrayList3.get(0);
7231:
7232:                    palttransformNode1 = new AAltTransform(tlbraceNode2,
7233:                            listNode3, trbraceNode4);
7234:                }
7235:                nodeList.add(palttransformNode1);
7236:                return nodeList;
7237:            }
7238:
7239:            ArrayList new192() /* reduce AAalttransform2AltTransform */
7240:            {
7241:                ArrayList nodeList = new ArrayList();
7242:
7243:                ArrayList nodeArrayList4 = (ArrayList) pop();
7244:                ArrayList nodeArrayList3 = (ArrayList) pop();
7245:                ArrayList nodeArrayList2 = (ArrayList) pop();
7246:                ArrayList nodeArrayList1 = (ArrayList) pop();
7247:                PAltTransform palttransformNode1;
7248:                {
7249:                    TLBrace tlbraceNode2;
7250:                    TypedLinkedList listNode4 = new TypedLinkedList();
7251:                    TRBrace trbraceNode5;
7252:                    tlbraceNode2 = (TLBrace) nodeArrayList1.get(0);
7253:                    {
7254:                        TypedLinkedList listNode3 = new TypedLinkedList();
7255:                        listNode3 = (TypedLinkedList) nodeArrayList3.get(0);
7256:                        if (listNode3 != null) {
7257:                            listNode4.addAll(listNode3);
7258:                        }
7259:                    }
7260:                    trbraceNode5 = (TRBrace) nodeArrayList4.get(0);
7261:
7262:                    palttransformNode1 = new AAltTransform(tlbraceNode2,
7263:                            listNode4, trbraceNode5);
7264:                }
7265:                nodeList.add(palttransformNode1);
7266:                return nodeList;
7267:            }
7268:
7269:            ArrayList new193() /* reduce AAnewterm1Term */
7270:            {
7271:                ArrayList nodeList = new ArrayList();
7272:
7273:                ArrayList nodeArrayList4 = (ArrayList) pop();
7274:                ArrayList nodeArrayList3 = (ArrayList) pop();
7275:                ArrayList nodeArrayList2 = (ArrayList) pop();
7276:                ArrayList nodeArrayList1 = (ArrayList) pop();
7277:                PTerm ptermNode1;
7278:                {
7279:                    PProdName pprodnameNode2;
7280:                    TLPar tlparNode3;
7281:                    TypedLinkedList listNode4 = new TypedLinkedList();
7282:                    pprodnameNode2 = (PProdName) nodeArrayList2.get(0);
7283:                    tlparNode3 = (TLPar) nodeArrayList3.get(0);
7284:                    {
7285:                    }
7286:
7287:                    ptermNode1 = new ANewTerm(pprodnameNode2, tlparNode3,
7288:                            listNode4);
7289:                }
7290:                nodeList.add(ptermNode1);
7291:                return nodeList;
7292:            }
7293:
7294:            ArrayList new194() /* reduce AAnewterm2Term */
7295:            {
7296:                ArrayList nodeList = new ArrayList();
7297:
7298:                ArrayList nodeArrayList5 = (ArrayList) pop();
7299:                ArrayList nodeArrayList4 = (ArrayList) pop();
7300:                ArrayList nodeArrayList3 = (ArrayList) pop();
7301:                ArrayList nodeArrayList2 = (ArrayList) pop();
7302:                ArrayList nodeArrayList1 = (ArrayList) pop();
7303:                PTerm ptermNode1;
7304:                {
7305:                    PProdName pprodnameNode2;
7306:                    TLPar tlparNode3;
7307:                    TypedLinkedList listNode5 = new TypedLinkedList();
7308:                    pprodnameNode2 = (PProdName) nodeArrayList2.get(0);
7309:                    tlparNode3 = (TLPar) nodeArrayList3.get(0);
7310:                    {
7311:                        TypedLinkedList listNode4 = new TypedLinkedList();
7312:                        listNode4 = (TypedLinkedList) nodeArrayList4.get(0);
7313:                        if (listNode4 != null) {
7314:                            listNode5.addAll(listNode4);
7315:                        }
7316:                    }
7317:
7318:                    ptermNode1 = new ANewTerm(pprodnameNode2, tlparNode3,
7319:                            listNode5);
7320:                }
7321:                nodeList.add(ptermNode1);
7322:                return nodeList;
7323:            }
7324:
7325:            ArrayList new195() /* reduce AAlistterm1Term */
7326:            {
7327:                ArrayList nodeList = new ArrayList();
7328:
7329:                ArrayList nodeArrayList2 = (ArrayList) pop();
7330:                ArrayList nodeArrayList1 = (ArrayList) pop();
7331:                PTerm ptermNode1;
7332:                {
7333:                    TLBkt tlbktNode2;
7334:                    TypedLinkedList listNode3 = new TypedLinkedList();
7335:                    tlbktNode2 = (TLBkt) nodeArrayList1.get(0);
7336:                    {
7337:                    }
7338:
7339:                    ptermNode1 = new AListTerm(tlbktNode2, listNode3);
7340:                }
7341:                nodeList.add(ptermNode1);
7342:                return nodeList;
7343:            }
7344:
7345:            ArrayList new196() /* reduce AAlistterm2Term */
7346:            {
7347:                ArrayList nodeList = new ArrayList();
7348:
7349:                ArrayList nodeArrayList3 = (ArrayList) pop();
7350:                ArrayList nodeArrayList2 = (ArrayList) pop();
7351:                ArrayList nodeArrayList1 = (ArrayList) pop();
7352:                PTerm ptermNode1;
7353:                {
7354:                    TLBkt tlbktNode2;
7355:                    TypedLinkedList listNode4 = new TypedLinkedList();
7356:                    tlbktNode2 = (TLBkt) nodeArrayList1.get(0);
7357:                    {
7358:                        TypedLinkedList listNode3 = new TypedLinkedList();
7359:                        listNode3 = (TypedLinkedList) nodeArrayList2.get(0);
7360:                        if (listNode3 != null) {
7361:                            listNode4.addAll(listNode3);
7362:                        }
7363:                    }
7364:
7365:                    ptermNode1 = new AListTerm(tlbktNode2, listNode4);
7366:                }
7367:                nodeList.add(ptermNode1);
7368:                return nodeList;
7369:            }
7370:
7371:            ArrayList new197() /* reduce AAsimpleterm1Term */
7372:            {
7373:                ArrayList nodeList = new ArrayList();
7374:
7375:                ArrayList nodeArrayList1 = (ArrayList) pop();
7376:                PTerm ptermNode1;
7377:                {
7378:                    Object nullNode2 = null;
7379:                    TId tidNode3;
7380:                    Object nullNode4 = null;
7381:                    tidNode3 = (TId) nodeArrayList1.get(0);
7382:
7383:                    ptermNode1 = new ASimpleTerm(null, tidNode3, null);
7384:                }
7385:                nodeList.add(ptermNode1);
7386:                return nodeList;
7387:            }
7388:
7389:            ArrayList new198() /* reduce AAsimpleterm2Term */
7390:            {
7391:                ArrayList nodeList = new ArrayList();
7392:
7393:                ArrayList nodeArrayList2 = (ArrayList) pop();
7394:                ArrayList nodeArrayList1 = (ArrayList) pop();
7395:                PTerm ptermNode1;
7396:                {
7397:                    PSpecifier pspecifierNode2;
7398:                    TId tidNode3;
7399:                    Object nullNode4 = null;
7400:                    pspecifierNode2 = (PSpecifier) nodeArrayList1.get(0);
7401:                    tidNode3 = (TId) nodeArrayList2.get(0);
7402:
7403:                    ptermNode1 = new ASimpleTerm(pspecifierNode2, tidNode3,
7404:                            null);
7405:                }
7406:                nodeList.add(ptermNode1);
7407:                return nodeList;
7408:            }
7409:
7410:            ArrayList new199() /* reduce AAsimpleterm3Term */
7411:            {
7412:                ArrayList nodeList = new ArrayList();
7413:
7414:                ArrayList nodeArrayList2 = (ArrayList) pop();
7415:                ArrayList nodeArrayList1 = (ArrayList) pop();
7416:                PTerm ptermNode1;
7417:                {
7418:                    Object nullNode2 = null;
7419:                    TId tidNode3;
7420:                    TId tidNode4;
7421:                    tidNode3 = (TId) nodeArrayList1.get(0);
7422:                    tidNode4 = (TId) nodeArrayList2.get(0);
7423:
7424:                    ptermNode1 = new ASimpleTerm(null, tidNode3, tidNode4);
7425:                }
7426:                nodeList.add(ptermNode1);
7427:                return nodeList;
7428:            }
7429:
7430:            ArrayList new200() /* reduce AAsimpleterm4Term */
7431:            {
7432:                ArrayList nodeList = new ArrayList();
7433:
7434:                ArrayList nodeArrayList3 = (ArrayList) pop();
7435:                ArrayList nodeArrayList2 = (ArrayList) pop();
7436:                ArrayList nodeArrayList1 = (ArrayList) pop();
7437:                PTerm ptermNode1;
7438:                {
7439:                    PSpecifier pspecifierNode2;
7440:                    TId tidNode3;
7441:                    TId tidNode4;
7442:                    pspecifierNode2 = (PSpecifier) nodeArrayList1.get(0);
7443:                    tidNode3 = (TId) nodeArrayList2.get(0);
7444:                    tidNode4 = (TId) nodeArrayList3.get(0);
7445:
7446:                    ptermNode1 = new ASimpleTerm(pspecifierNode2, tidNode3,
7447:                            tidNode4);
7448:                }
7449:                nodeList.add(ptermNode1);
7450:                return nodeList;
7451:            }
7452:
7453:            ArrayList new201() /* reduce ANullTerm */
7454:            {
7455:                ArrayList nodeList = new ArrayList();
7456:
7457:                ArrayList nodeArrayList1 = (ArrayList) pop();
7458:                PTerm ptermNode1;
7459:                {
7460:
7461:                    ptermNode1 = new ANullTerm();
7462:                }
7463:                nodeList.add(ptermNode1);
7464:                return nodeList;
7465:            }
7466:
7467:            ArrayList new202() /* reduce AAlistoflistterm1ListOfListTerm */
7468:            {
7469:                ArrayList nodeList = new ArrayList();
7470:
7471:                ArrayList nodeArrayList1 = (ArrayList) pop();
7472:                TypedLinkedList listNode2 = new TypedLinkedList();
7473:                {
7474:                    PListTerm plisttermNode1;
7475:                    plisttermNode1 = (PListTerm) nodeArrayList1.get(0);
7476:                    if (plisttermNode1 != null) {
7477:                        listNode2.add(plisttermNode1);
7478:                    }
7479:                }
7480:                nodeList.add(listNode2);
7481:                return nodeList;
7482:            }
7483:
7484:            ArrayList new203() /* reduce AAlistoflistterm2ListOfListTerm */
7485:            {
7486:                ArrayList nodeList = new ArrayList();
7487:
7488:                ArrayList nodeArrayList2 = (ArrayList) pop();
7489:                ArrayList nodeArrayList1 = (ArrayList) pop();
7490:                TypedLinkedList listNode3 = new TypedLinkedList();
7491:                {
7492:                    PListTerm plisttermNode1;
7493:                    TypedLinkedList listNode2 = new TypedLinkedList();
7494:                    plisttermNode1 = (PListTerm) nodeArrayList1.get(0);
7495:                    listNode2 = (TypedLinkedList) nodeArrayList2.get(0);
7496:                    if (plisttermNode1 != null) {
7497:                        listNode3.add(plisttermNode1);
7498:                    }
7499:                    if (listNode2 != null) {
7500:                        listNode3.addAll(listNode2);
7501:                    }
7502:                }
7503:                nodeList.add(listNode3);
7504:                return nodeList;
7505:            }
7506:
7507:            ArrayList new204() /* reduce AAnewlistterm1ListTerm */
7508:            {
7509:                ArrayList nodeList = new ArrayList();
7510:
7511:                ArrayList nodeArrayList4 = (ArrayList) pop();
7512:                ArrayList nodeArrayList3 = (ArrayList) pop();
7513:                ArrayList nodeArrayList2 = (ArrayList) pop();
7514:                ArrayList nodeArrayList1 = (ArrayList) pop();
7515:                PListTerm plisttermNode1;
7516:                {
7517:                    PProdName pprodnameNode2;
7518:                    TLPar tlparNode3;
7519:                    TypedLinkedList listNode4 = new TypedLinkedList();
7520:                    pprodnameNode2 = (PProdName) nodeArrayList2.get(0);
7521:                    tlparNode3 = (TLPar) nodeArrayList3.get(0);
7522:                    {
7523:                    }
7524:
7525:                    plisttermNode1 = new ANewListTerm(pprodnameNode2,
7526:                            tlparNode3, listNode4);
7527:                }
7528:                nodeList.add(plisttermNode1);
7529:                return nodeList;
7530:            }
7531:
7532:            ArrayList new205() /* reduce AAnewlistterm2ListTerm */
7533:            {
7534:                ArrayList nodeList = new ArrayList();
7535:
7536:                ArrayList nodeArrayList5 = (ArrayList) pop();
7537:                ArrayList nodeArrayList4 = (ArrayList) pop();
7538:                ArrayList nodeArrayList3 = (ArrayList) pop();
7539:                ArrayList nodeArrayList2 = (ArrayList) pop();
7540:                ArrayList nodeArrayList1 = (ArrayList) pop();
7541:                PListTerm plisttermNode1;
7542:                {
7543:                    PProdName pprodnameNode2;
7544:                    TLPar tlparNode3;
7545:                    TypedLinkedList listNode5 = new TypedLinkedList();
7546:                    pprodnameNode2 = (PProdName) nodeArrayList2.get(0);
7547:                    tlparNode3 = (TLPar) nodeArrayList3.get(0);
7548:                    {
7549:                        TypedLinkedList listNode4 = new TypedLinkedList();
7550:                        listNode4 = (TypedLinkedList) nodeArrayList4.get(0);
7551:                        if (listNode4 != null) {
7552:                            listNode5.addAll(listNode4);
7553:                        }
7554:                    }
7555:
7556:                    plisttermNode1 = new ANewListTerm(pprodnameNode2,
7557:                            tlparNode3, listNode5);
7558:                }
7559:                nodeList.add(plisttermNode1);
7560:                return nodeList;
7561:            }
7562:
7563:            ArrayList new206() /* reduce AAsimplelistterm1ListTerm */
7564:            {
7565:                ArrayList nodeList = new ArrayList();
7566:
7567:                ArrayList nodeArrayList1 = (ArrayList) pop();
7568:                PListTerm plisttermNode1;
7569:                {
7570:                    Object nullNode2 = null;
7571:                    TId tidNode3;
7572:                    Object nullNode4 = null;
7573:                    tidNode3 = (TId) nodeArrayList1.get(0);
7574:
7575:                    plisttermNode1 = new ASimpleListTerm(null, tidNode3, null);
7576:                }
7577:                nodeList.add(plisttermNode1);
7578:                return nodeList;
7579:            }
7580:
7581:            ArrayList new207() /* reduce AAsimplelistterm2ListTerm */
7582:            {
7583:                ArrayList nodeList = new ArrayList();
7584:
7585:                ArrayList nodeArrayList2 = (ArrayList) pop();
7586:                ArrayList nodeArrayList1 = (ArrayList) pop();
7587:                PListTerm plisttermNode1;
7588:                {
7589:                    PSpecifier pspecifierNode2;
7590:                    TId tidNode3;
7591:                    Object nullNode4 = null;
7592:                    pspecifierNode2 = (PSpecifier) nodeArrayList1.get(0);
7593:                    tidNode3 = (TId) nodeArrayList2.get(0);
7594:
7595:                    plisttermNode1 = new ASimpleListTerm(pspecifierNode2,
7596:                            tidNode3, null);
7597:                }
7598:                nodeList.add(plisttermNode1);
7599:                return nodeList;
7600:            }
7601:
7602:            ArrayList new208() /* reduce AAsimplelistterm3ListTerm */
7603:            {
7604:                ArrayList nodeList = new ArrayList();
7605:
7606:                ArrayList nodeArrayList2 = (ArrayList) pop();
7607:                ArrayList nodeArrayList1 = (ArrayList) pop();
7608:                PListTerm plisttermNode1;
7609:                {
7610:                    Object nullNode2 = null;
7611:                    TId tidNode3;
7612:                    TId tidNode4;
7613:                    tidNode3 = (TId) nodeArrayList1.get(0);
7614:                    tidNode4 = (TId) nodeArrayList2.get(0);
7615:
7616:                    plisttermNode1 = new ASimpleListTerm(null, tidNode3,
7617:                            tidNode4);
7618:                }
7619:                nodeList.add(plisttermNode1);
7620:                return nodeList;
7621:            }
7622:
7623:            ArrayList new209() /* reduce AAsimplelistterm4ListTerm */
7624:            {
7625:                ArrayList nodeList = new ArrayList();
7626:
7627:                ArrayList nodeArrayList3 = (ArrayList) pop();
7628:                ArrayList nodeArrayList2 = (ArrayList) pop();
7629:                ArrayList nodeArrayList1 = (ArrayList) pop();
7630:                PListTerm plisttermNode1;
7631:                {
7632:                    PSpecifier pspecifierNode2;
7633:                    TId tidNode3;
7634:                    TId tidNode4;
7635:                    pspecifierNode2 = (PSpecifier) nodeArrayList1.get(0);
7636:                    tidNode3 = (TId) nodeArrayList2.get(0);
7637:                    tidNode4 = (TId) nodeArrayList3.get(0);
7638:
7639:                    plisttermNode1 = new ASimpleListTerm(pspecifierNode2,
7640:                            tidNode3, tidNode4);
7641:                }
7642:                nodeList.add(plisttermNode1);
7643:                return nodeList;
7644:            }
7645:
7646:            ArrayList new210() /* reduce AListTermTail */
7647:            {
7648:                ArrayList nodeList = new ArrayList();
7649:
7650:                ArrayList nodeArrayList2 = (ArrayList) pop();
7651:                ArrayList nodeArrayList1 = (ArrayList) pop();
7652:                PListTerm plisttermNode1;
7653:                plisttermNode1 = (PListTerm) nodeArrayList2.get(0);
7654:                nodeList.add(plisttermNode1);
7655:                return nodeList;
7656:            }
7657:
7658:            ArrayList new211() /* reduce ASimpleTermTail */
7659:            {
7660:                ArrayList nodeList = new ArrayList();
7661:
7662:                ArrayList nodeArrayList2 = (ArrayList) pop();
7663:                ArrayList nodeArrayList1 = (ArrayList) pop();
7664:                TId tidNode1;
7665:                tidNode1 = (TId) nodeArrayList2.get(0);
7666:                nodeList.add(tidNode1);
7667:                return nodeList;
7668:            }
7669:
7670:            ArrayList new212() /* reduce AAprodname1ProdName */
7671:            {
7672:                ArrayList nodeList = new ArrayList();
7673:
7674:                ArrayList nodeArrayList1 = (ArrayList) pop();
7675:                PProdName pprodnameNode1;
7676:                {
7677:                    TId tidNode2;
7678:                    Object nullNode3 = null;
7679:                    tidNode2 = (TId) nodeArrayList1.get(0);
7680:
7681:                    pprodnameNode1 = new AProdName(tidNode2, null);
7682:                }
7683:                nodeList.add(pprodnameNode1);
7684:                return nodeList;
7685:            }
7686:
7687:            ArrayList new213() /* reduce AAprodname2ProdName */
7688:            {
7689:                ArrayList nodeList = new ArrayList();
7690:
7691:                ArrayList nodeArrayList2 = (ArrayList) pop();
7692:                ArrayList nodeArrayList1 = (ArrayList) pop();
7693:                PProdName pprodnameNode1;
7694:                {
7695:                    TId tidNode2;
7696:                    TId tidNode3;
7697:                    tidNode2 = (TId) nodeArrayList1.get(0);
7698:                    tidNode3 = (TId) nodeArrayList2.get(0);
7699:
7700:                    pprodnameNode1 = new AProdName(tidNode2, tidNode3);
7701:                }
7702:                nodeList.add(pprodnameNode1);
7703:                return nodeList;
7704:            }
7705:
7706:            ArrayList new214() /* reduce AProdNameTail */
7707:            {
7708:                ArrayList nodeList = new ArrayList();
7709:
7710:                ArrayList nodeArrayList2 = (ArrayList) pop();
7711:                ArrayList nodeArrayList1 = (ArrayList) pop();
7712:                TId tidNode1;
7713:                tidNode1 = (TId) nodeArrayList2.get(0);
7714:                nodeList.add(tidNode1);
7715:                return nodeList;
7716:            }
7717:
7718:            ArrayList new215() /* reduce AAparams1Params */
7719:            {
7720:                ArrayList nodeList = new ArrayList();
7721:
7722:                ArrayList nodeArrayList1 = (ArrayList) pop();
7723:                TypedLinkedList listNode2 = new TypedLinkedList();
7724:                {
7725:                    PTerm ptermNode1;
7726:                    ptermNode1 = (PTerm) nodeArrayList1.get(0);
7727:                    if (ptermNode1 != null) {
7728:                        listNode2.add(ptermNode1);
7729:                    }
7730:                }
7731:                nodeList.add(listNode2);
7732:                return nodeList;
7733:            }
7734:
7735:            ArrayList new216() /* reduce AAparams2Params */
7736:            {
7737:                ArrayList nodeList = new ArrayList();
7738:
7739:                ArrayList nodeArrayList2 = (ArrayList) pop();
7740:                ArrayList nodeArrayList1 = (ArrayList) pop();
7741:                TypedLinkedList listNode3 = new TypedLinkedList();
7742:                {
7743:                    PTerm ptermNode1;
7744:                    TypedLinkedList listNode2 = new TypedLinkedList();
7745:                    ptermNode1 = (PTerm) nodeArrayList1.get(0);
7746:                    listNode2 = (TypedLinkedList) nodeArrayList2.get(0);
7747:                    if (ptermNode1 != null) {
7748:                        listNode3.add(ptermNode1);
7749:                    }
7750:                    if (listNode2 != null) {
7751:                        listNode3.addAll(listNode2);
7752:                    }
7753:                }
7754:                nodeList.add(listNode3);
7755:                return nodeList;
7756:            }
7757:
7758:            ArrayList new217() /* reduce AParamsTail */
7759:            {
7760:                ArrayList nodeList = new ArrayList();
7761:
7762:                ArrayList nodeArrayList2 = (ArrayList) pop();
7763:                ArrayList nodeArrayList1 = (ArrayList) pop();
7764:                PTerm ptermNode1;
7765:                ptermNode1 = (PTerm) nodeArrayList2.get(0);
7766:                nodeList.add(ptermNode1);
7767:                return nodeList;
7768:            }
7769:
7770:            ArrayList new218() /* reduce AAltName */
7771:            {
7772:                ArrayList nodeList = new ArrayList();
7773:
7774:                ArrayList nodeArrayList3 = (ArrayList) pop();
7775:                ArrayList nodeArrayList2 = (ArrayList) pop();
7776:                ArrayList nodeArrayList1 = (ArrayList) pop();
7777:                TId tidNode1;
7778:                tidNode1 = (TId) nodeArrayList2.get(0);
7779:                nodeList.add(tidNode1);
7780:                return nodeList;
7781:            }
7782:
7783:            ArrayList new219() /* reduce AAelem1Elem */
7784:            {
7785:                ArrayList nodeList = new ArrayList();
7786:
7787:                ArrayList nodeArrayList1 = (ArrayList) pop();
7788:                PElem pelemNode1;
7789:                {
7790:                    Object nullNode2 = null;
7791:                    Object nullNode3 = null;
7792:                    TId tidNode4;
7793:                    Object nullNode5 = null;
7794:                    tidNode4 = (TId) nodeArrayList1.get(0);
7795:
7796:                    pelemNode1 = new AElem(null, null, tidNode4, null);
7797:                }
7798:                nodeList.add(pelemNode1);
7799:                return nodeList;
7800:            }
7801:
7802:            ArrayList new220() /* reduce AAelem2Elem */
7803:            {
7804:                ArrayList nodeList = new ArrayList();
7805:
7806:                ArrayList nodeArrayList2 = (ArrayList) pop();
7807:                ArrayList nodeArrayList1 = (ArrayList) pop();
7808:                PElem pelemNode1;
7809:                {
7810:                    TId tidNode2;
7811:                    Object nullNode3 = null;
7812:                    TId tidNode4;
7813:                    Object nullNode5 = null;
7814:                    tidNode2 = (TId) nodeArrayList1.get(0);
7815:                    tidNode4 = (TId) nodeArrayList2.get(0);
7816:
7817:                    pelemNode1 = new AElem(tidNode2, null, tidNode4, null);
7818:                }
7819:                nodeList.add(pelemNode1);
7820:                return nodeList;
7821:            }
7822:
7823:            ArrayList new221() /* reduce AAelem3Elem */
7824:            {
7825:                ArrayList nodeList = new ArrayList();
7826:
7827:                ArrayList nodeArrayList2 = (ArrayList) pop();
7828:                ArrayList nodeArrayList1 = (ArrayList) pop();
7829:                PElem pelemNode1;
7830:                {
7831:                    Object nullNode2 = null;
7832:                    PSpecifier pspecifierNode3;
7833:                    TId tidNode4;
7834:                    Object nullNode5 = null;
7835:                    pspecifierNode3 = (PSpecifier) nodeArrayList1.get(0);
7836:                    tidNode4 = (TId) nodeArrayList2.get(0);
7837:
7838:                    pelemNode1 = new AElem(null, pspecifierNode3, tidNode4,
7839:                            null);
7840:                }
7841:                nodeList.add(pelemNode1);
7842:                return nodeList;
7843:            }
7844:
7845:            ArrayList new222() /* reduce AAelem4Elem */
7846:            {
7847:                ArrayList nodeList = new ArrayList();
7848:
7849:                ArrayList nodeArrayList3 = (ArrayList) pop();
7850:                ArrayList nodeArrayList2 = (ArrayList) pop();
7851:                ArrayList nodeArrayList1 = (ArrayList) pop();
7852:                PElem pelemNode1;
7853:                {
7854:                    TId tidNode2;
7855:                    PSpecifier pspecifierNode3;
7856:                    TId tidNode4;
7857:                    Object nullNode5 = null;
7858:                    tidNode2 = (TId) nodeArrayList1.get(0);
7859:                    pspecifierNode3 = (PSpecifier) nodeArrayList2.get(0);
7860:                    tidNode4 = (TId) nodeArrayList3.get(0);
7861:
7862:                    pelemNode1 = new AElem(tidNode2, pspecifierNode3, tidNode4,
7863:                            null);
7864:                }
7865:                nodeList.add(pelemNode1);
7866:                return nodeList;
7867:            }
7868:
7869:            ArrayList new223() /* reduce AAelem5Elem */
7870:            {
7871:                ArrayList nodeList = new ArrayList();
7872:
7873:                ArrayList nodeArrayList2 = (ArrayList) pop();
7874:                ArrayList nodeArrayList1 = (ArrayList) pop();
7875:                PElem pelemNode1;
7876:                {
7877:                    Object nullNode2 = null;
7878:                    Object nullNode3 = null;
7879:                    TId tidNode4;
7880:                    PUnOp punopNode5;
7881:                    tidNode4 = (TId) nodeArrayList1.get(0);
7882:                    punopNode5 = (PUnOp) nodeArrayList2.get(0);
7883:
7884:                    pelemNode1 = new AElem(null, null, tidNode4, punopNode5);
7885:                }
7886:                nodeList.add(pelemNode1);
7887:                return nodeList;
7888:            }
7889:
7890:            ArrayList new224() /* reduce AAelem6Elem */
7891:            {
7892:                ArrayList nodeList = new ArrayList();
7893:
7894:                ArrayList nodeArrayList3 = (ArrayList) pop();
7895:                ArrayList nodeArrayList2 = (ArrayList) pop();
7896:                ArrayList nodeArrayList1 = (ArrayList) pop();
7897:                PElem pelemNode1;
7898:                {
7899:                    TId tidNode2;
7900:                    Object nullNode3 = null;
7901:                    TId tidNode4;
7902:                    PUnOp punopNode5;
7903:                    tidNode2 = (TId) nodeArrayList1.get(0);
7904:                    tidNode4 = (TId) nodeArrayList2.get(0);
7905:                    punopNode5 = (PUnOp) nodeArrayList3.get(0);
7906:
7907:                    pelemNode1 = new AElem(tidNode2, null, tidNode4, punopNode5);
7908:                }
7909:                nodeList.add(pelemNode1);
7910:                return nodeList;
7911:            }
7912:
7913:            ArrayList new225() /* reduce AAelem7Elem */
7914:            {
7915:                ArrayList nodeList = new ArrayList();
7916:
7917:                ArrayList nodeArrayList3 = (ArrayList) pop();
7918:                ArrayList nodeArrayList2 = (ArrayList) pop();
7919:                ArrayList nodeArrayList1 = (ArrayList) pop();
7920:                PElem pelemNode1;
7921:                {
7922:                    Object nullNode2 = null;
7923:                    PSpecifier pspecifierNode3;
7924:                    TId tidNode4;
7925:                    PUnOp punopNode5;
7926:                    pspecifierNode3 = (PSpecifier) nodeArrayList1.get(0);
7927:                    tidNode4 = (TId) nodeArrayList2.get(0);
7928:                    punopNode5 = (PUnOp) nodeArrayList3.get(0);
7929:
7930:                    pelemNode1 = new AElem(null, pspecifierNode3, tidNode4,
7931:                            punopNode5);
7932:                }
7933:                nodeList.add(pelemNode1);
7934:                return nodeList;
7935:            }
7936:
7937:            ArrayList new226() /* reduce AAelem8Elem */
7938:            {
7939:                ArrayList nodeList = new ArrayList();
7940:
7941:                ArrayList nodeArrayList4 = (ArrayList) pop();
7942:                ArrayList nodeArrayList3 = (ArrayList) pop();
7943:                ArrayList nodeArrayList2 = (ArrayList) pop();
7944:                ArrayList nodeArrayList1 = (ArrayList) pop();
7945:                PElem pelemNode1;
7946:                {
7947:                    TId tidNode2;
7948:                    PSpecifier pspecifierNode3;
7949:                    TId tidNode4;
7950:                    PUnOp punopNode5;
7951:                    tidNode2 = (TId) nodeArrayList1.get(0);
7952:                    pspecifierNode3 = (PSpecifier) nodeArrayList2.get(0);
7953:                    tidNode4 = (TId) nodeArrayList3.get(0);
7954:                    punopNode5 = (PUnOp) nodeArrayList4.get(0);
7955:
7956:                    pelemNode1 = new AElem(tidNode2, pspecifierNode3, tidNode4,
7957:                            punopNode5);
7958:                }
7959:                nodeList.add(pelemNode1);
7960:                return nodeList;
7961:            }
7962:
7963:            ArrayList new227() /* reduce AElemName */
7964:            {
7965:                ArrayList nodeList = new ArrayList();
7966:
7967:                ArrayList nodeArrayList4 = (ArrayList) pop();
7968:                ArrayList nodeArrayList3 = (ArrayList) pop();
7969:                ArrayList nodeArrayList2 = (ArrayList) pop();
7970:                ArrayList nodeArrayList1 = (ArrayList) pop();
7971:                TId tidNode1;
7972:                tidNode1 = (TId) nodeArrayList2.get(0);
7973:                nodeList.add(tidNode1);
7974:                return nodeList;
7975:            }
7976:
7977:            ArrayList new228() /* reduce ATokenSpecifier */
7978:            {
7979:                ArrayList nodeList = new ArrayList();
7980:
7981:                ArrayList nodeArrayList2 = (ArrayList) pop();
7982:                ArrayList nodeArrayList1 = (ArrayList) pop();
7983:                PSpecifier pspecifierNode1;
7984:                {
7985:
7986:                    pspecifierNode1 = new ATokenSpecifier();
7987:                }
7988:                nodeList.add(pspecifierNode1);
7989:                return nodeList;
7990:            }
7991:
7992:            ArrayList new229() /* reduce AProductionSpecifier */
7993:            {
7994:                ArrayList nodeList = new ArrayList();
7995:
7996:                ArrayList nodeArrayList2 = (ArrayList) pop();
7997:                ArrayList nodeArrayList1 = (ArrayList) pop();
7998:                PSpecifier pspecifierNode1;
7999:                {
8000:
8001:                    pspecifierNode1 = new AProductionSpecifier();
8002:                }
8003:                nodeList.add(pspecifierNode1);
8004:                return nodeList;
8005:            }
8006:
8007:            ArrayList new230() /* reduce AAst */
8008:            {
8009:                ArrayList nodeList = new ArrayList();
8010:
8011:                ArrayList nodeArrayList4 = (ArrayList) pop();
8012:                ArrayList nodeArrayList3 = (ArrayList) pop();
8013:                ArrayList nodeArrayList2 = (ArrayList) pop();
8014:                ArrayList nodeArrayList1 = (ArrayList) pop();
8015:                PAst pastNode1;
8016:                {
8017:                    TypedLinkedList listNode3 = new TypedLinkedList();
8018:                    {
8019:                        TypedLinkedList listNode2 = new TypedLinkedList();
8020:                        listNode2 = (TypedLinkedList) nodeArrayList4.get(0);
8021:                        if (listNode2 != null) {
8022:                            listNode3.addAll(listNode2);
8023:                        }
8024:                    }
8025:
8026:                    pastNode1 = new AAst(listNode3);
8027:                }
8028:                nodeList.add(pastNode1);
8029:                return nodeList;
8030:            }
8031:
8032:            ArrayList new231() /* reduce AAstProd */
8033:            {
8034:                ArrayList nodeList = new ArrayList();
8035:
8036:                ArrayList nodeArrayList4 = (ArrayList) pop();
8037:                ArrayList nodeArrayList3 = (ArrayList) pop();
8038:                ArrayList nodeArrayList2 = (ArrayList) pop();
8039:                ArrayList nodeArrayList1 = (ArrayList) pop();
8040:                PAstProd pastprodNode1;
8041:                {
8042:                    TId tidNode2;
8043:                    TypedLinkedList listNode4 = new TypedLinkedList();
8044:                    tidNode2 = (TId) nodeArrayList1.get(0);
8045:                    {
8046:                        TypedLinkedList listNode3 = new TypedLinkedList();
8047:                        listNode3 = (TypedLinkedList) nodeArrayList3.get(0);
8048:                        if (listNode3 != null) {
8049:                            listNode4.addAll(listNode3);
8050:                        }
8051:                    }
8052:
8053:                    pastprodNode1 = new AAstProd(tidNode2, listNode4);
8054:                }
8055:                nodeList.add(pastprodNode1);
8056:                return nodeList;
8057:            }
8058:
8059:            ArrayList new232() /* reduce AAastalts1AstAlts */
8060:            {
8061:                ArrayList nodeList = new ArrayList();
8062:
8063:                ArrayList nodeArrayList1 = (ArrayList) pop();
8064:                TypedLinkedList listNode2 = new TypedLinkedList();
8065:                {
8066:                    PAstAlt pastaltNode1;
8067:                    pastaltNode1 = (PAstAlt) nodeArrayList1.get(0);
8068:                    if (pastaltNode1 != null) {
8069:                        listNode2.add(pastaltNode1);
8070:                    }
8071:                }
8072:                nodeList.add(listNode2);
8073:                return nodeList;
8074:            }
8075:
8076:            ArrayList new233() /* reduce AAastalts2AstAlts */
8077:            {
8078:                ArrayList nodeList = new ArrayList();
8079:
8080:                ArrayList nodeArrayList2 = (ArrayList) pop();
8081:                ArrayList nodeArrayList1 = (ArrayList) pop();
8082:                TypedLinkedList listNode3 = new TypedLinkedList();
8083:                {
8084:                    PAstAlt pastaltNode1;
8085:                    TypedLinkedList listNode2 = new TypedLinkedList();
8086:                    pastaltNode1 = (PAstAlt) nodeArrayList1.get(0);
8087:                    listNode2 = (TypedLinkedList) nodeArrayList2.get(0);
8088:                    if (pastaltNode1 != null) {
8089:                        listNode3.add(pastaltNode1);
8090:                    }
8091:                    if (listNode2 != null) {
8092:                        listNode3.addAll(listNode2);
8093:                    }
8094:                }
8095:                nodeList.add(listNode3);
8096:                return nodeList;
8097:            }
8098:
8099:            ArrayList new234() /* reduce AAstAltsTail */
8100:            {
8101:                ArrayList nodeList = new ArrayList();
8102:
8103:                ArrayList nodeArrayList2 = (ArrayList) pop();
8104:                ArrayList nodeArrayList1 = (ArrayList) pop();
8105:                PAstAlt pastaltNode1;
8106:                pastaltNode1 = (PAstAlt) nodeArrayList2.get(0);
8107:                nodeList.add(pastaltNode1);
8108:                return nodeList;
8109:            }
8110:
8111:            ArrayList new235() /* reduce AAastalt1AstAlt */
8112:            {
8113:                ArrayList nodeList = new ArrayList();
8114:
8115:                PAstAlt pastaltNode1;
8116:                {
8117:                    Object nullNode2 = null;
8118:                    TypedLinkedList listNode3 = new TypedLinkedList();
8119:                    {
8120:                    }
8121:
8122:                    pastaltNode1 = new AAstAlt(null, listNode3);
8123:                }
8124:                nodeList.add(pastaltNode1);
8125:                return nodeList;
8126:            }
8127:
8128:            ArrayList new236() /* reduce AAastalt2AstAlt */
8129:            {
8130:                ArrayList nodeList = new ArrayList();
8131:
8132:                ArrayList nodeArrayList1 = (ArrayList) pop();
8133:                PAstAlt pastaltNode1;
8134:                {
8135:                    TId tidNode2;
8136:                    TypedLinkedList listNode3 = new TypedLinkedList();
8137:                    tidNode2 = (TId) nodeArrayList1.get(0);
8138:                    {
8139:                    }
8140:
8141:                    pastaltNode1 = new AAstAlt(tidNode2, listNode3);
8142:                }
8143:                nodeList.add(pastaltNode1);
8144:                return nodeList;
8145:            }
8146:
8147:            ArrayList new237() /* reduce AAastalt3AstAlt */
8148:            {
8149:                ArrayList nodeList = new ArrayList();
8150:
8151:                ArrayList nodeArrayList1 = (ArrayList) pop();
8152:                PAstAlt pastaltNode1;
8153:                {
8154:                    Object nullNode2 = null;
8155:                    TypedLinkedList listNode4 = new TypedLinkedList();
8156:                    {
8157:                        TypedLinkedList listNode3 = new TypedLinkedList();
8158:                        listNode3 = (TypedLinkedList) nodeArrayList1.get(0);
8159:                        if (listNode3 != null) {
8160:                            listNode4.addAll(listNode3);
8161:                        }
8162:                    }
8163:
8164:                    pastaltNode1 = new AAstAlt(null, listNode4);
8165:                }
8166:                nodeList.add(pastaltNode1);
8167:                return nodeList;
8168:            }
8169:
8170:            ArrayList new238() /* reduce AAastalt4AstAlt */
8171:            {
8172:                ArrayList nodeList = new ArrayList();
8173:
8174:                ArrayList nodeArrayList2 = (ArrayList) pop();
8175:                ArrayList nodeArrayList1 = (ArrayList) pop();
8176:                PAstAlt pastaltNode1;
8177:                {
8178:                    TId tidNode2;
8179:                    TypedLinkedList listNode4 = new TypedLinkedList();
8180:                    tidNode2 = (TId) nodeArrayList1.get(0);
8181:                    {
8182:                        TypedLinkedList listNode3 = new TypedLinkedList();
8183:                        listNode3 = (TypedLinkedList) nodeArrayList2.get(0);
8184:                        if (listNode3 != null) {
8185:                            listNode4.addAll(listNode3);
8186:                        }
8187:                    }
8188:
8189:                    pastaltNode1 = new AAstAlt(tidNode2, listNode4);
8190:                }
8191:                nodeList.add(pastaltNode1);
8192:                return nodeList;
8193:            }
8194:
8195:            ArrayList new239() /* reduce ATerminal$PkgNameTail */
8196:            {
8197:                ArrayList nodeList = new ArrayList();
8198:
8199:                ArrayList nodeArrayList1 = (ArrayList) pop();
8200:                TypedLinkedList listNode2 = new TypedLinkedList();
8201:                {
8202:                    TPkgId tpkgidNode1;
8203:                    tpkgidNode1 = (TPkgId) nodeArrayList1.get(0);
8204:                    if (tpkgidNode1 != null) {
8205:                        listNode2.add(tpkgidNode1);
8206:                    }
8207:                }
8208:                nodeList.add(listNode2);
8209:                return nodeList;
8210:            }
8211:
8212:            ArrayList new240() /* reduce ANonTerminal$PkgNameTail */
8213:            {
8214:                ArrayList nodeList = new ArrayList();
8215:
8216:                ArrayList nodeArrayList2 = (ArrayList) pop();
8217:                ArrayList nodeArrayList1 = (ArrayList) pop();
8218:                TypedLinkedList listNode3 = new TypedLinkedList();
8219:                {
8220:                    TypedLinkedList listNode1 = new TypedLinkedList();
8221:                    TPkgId tpkgidNode2;
8222:                    listNode1 = (TypedLinkedList) nodeArrayList1.get(0);
8223:                    tpkgidNode2 = (TPkgId) nodeArrayList2.get(0);
8224:                    if (listNode1 != null) {
8225:                        listNode3.addAll(listNode1);
8226:                    }
8227:                    if (tpkgidNode2 != null) {
8228:                        listNode3.add(tpkgidNode2);
8229:                    }
8230:                }
8231:                nodeList.add(listNode3);
8232:                return nodeList;
8233:            }
8234:
8235:            ArrayList new241() /* reduce ATerminal$HelperDef */
8236:            {
8237:                ArrayList nodeList = new ArrayList();
8238:
8239:                ArrayList nodeArrayList1 = (ArrayList) pop();
8240:                TypedLinkedList listNode2 = new TypedLinkedList();
8241:                {
8242:                    PHelperDef phelperdefNode1;
8243:                    phelperdefNode1 = (PHelperDef) nodeArrayList1.get(0);
8244:                    if (phelperdefNode1 != null) {
8245:                        listNode2.add(phelperdefNode1);
8246:                    }
8247:                }
8248:                nodeList.add(listNode2);
8249:                return nodeList;
8250:            }
8251:
8252:            ArrayList new242() /* reduce ANonTerminal$HelperDef */
8253:            {
8254:                ArrayList nodeList = new ArrayList();
8255:
8256:                ArrayList nodeArrayList2 = (ArrayList) pop();
8257:                ArrayList nodeArrayList1 = (ArrayList) pop();
8258:                TypedLinkedList listNode3 = new TypedLinkedList();
8259:                {
8260:                    TypedLinkedList listNode1 = new TypedLinkedList();
8261:                    PHelperDef phelperdefNode2;
8262:                    listNode1 = (TypedLinkedList) nodeArrayList1.get(0);
8263:                    phelperdefNode2 = (PHelperDef) nodeArrayList2.get(0);
8264:                    if (listNode1 != null) {
8265:                        listNode3.addAll(listNode1);
8266:                    }
8267:                    if (phelperdefNode2 != null) {
8268:                        listNode3.add(phelperdefNode2);
8269:                    }
8270:                }
8271:                nodeList.add(listNode3);
8272:                return nodeList;
8273:            }
8274:
8275:            ArrayList new243() /* reduce ATerminal$IdListTail */
8276:            {
8277:                ArrayList nodeList = new ArrayList();
8278:
8279:                ArrayList nodeArrayList1 = (ArrayList) pop();
8280:                TypedLinkedList listNode2 = new TypedLinkedList();
8281:                {
8282:                    TId tidNode1;
8283:                    tidNode1 = (TId) nodeArrayList1.get(0);
8284:                    if (tidNode1 != null) {
8285:                        listNode2.add(tidNode1);
8286:                    }
8287:                }
8288:                nodeList.add(listNode2);
8289:                return nodeList;
8290:            }
8291:
8292:            ArrayList new244() /* reduce ANonTerminal$IdListTail */
8293:            {
8294:                ArrayList nodeList = new ArrayList();
8295:
8296:                ArrayList nodeArrayList2 = (ArrayList) pop();
8297:                ArrayList nodeArrayList1 = (ArrayList) pop();
8298:                TypedLinkedList listNode3 = new TypedLinkedList();
8299:                {
8300:                    TypedLinkedList listNode1 = new TypedLinkedList();
8301:                    TId tidNode2;
8302:                    listNode1 = (TypedLinkedList) nodeArrayList1.get(0);
8303:                    tidNode2 = (TId) nodeArrayList2.get(0);
8304:                    if (listNode1 != null) {
8305:                        listNode3.addAll(listNode1);
8306:                    }
8307:                    if (tidNode2 != null) {
8308:                        listNode3.add(tidNode2);
8309:                    }
8310:                }
8311:                nodeList.add(listNode3);
8312:                return nodeList;
8313:            }
8314:
8315:            ArrayList new245() /* reduce ATerminal$TokenDef */
8316:            {
8317:                ArrayList nodeList = new ArrayList();
8318:
8319:                ArrayList nodeArrayList1 = (ArrayList) pop();
8320:                TypedLinkedList listNode2 = new TypedLinkedList();
8321:                {
8322:                    PTokenDef ptokendefNode1;
8323:                    ptokendefNode1 = (PTokenDef) nodeArrayList1.get(0);
8324:                    if (ptokendefNode1 != null) {
8325:                        listNode2.add(ptokendefNode1);
8326:                    }
8327:                }
8328:                nodeList.add(listNode2);
8329:                return nodeList;
8330:            }
8331:
8332:            ArrayList new246() /* reduce ANonTerminal$TokenDef */
8333:            {
8334:                ArrayList nodeList = new ArrayList();
8335:
8336:                ArrayList nodeArrayList2 = (ArrayList) pop();
8337:                ArrayList nodeArrayList1 = (ArrayList) pop();
8338:                TypedLinkedList listNode3 = new TypedLinkedList();
8339:                {
8340:                    TypedLinkedList listNode1 = new TypedLinkedList();
8341:                    PTokenDef ptokendefNode2;
8342:                    listNode1 = (TypedLinkedList) nodeArrayList1.get(0);
8343:                    ptokendefNode2 = (PTokenDef) nodeArrayList2.get(0);
8344:                    if (listNode1 != null) {
8345:                        listNode3.addAll(listNode1);
8346:                    }
8347:                    if (ptokendefNode2 != null) {
8348:                        listNode3.add(ptokendefNode2);
8349:                    }
8350:                }
8351:                nodeList.add(listNode3);
8352:                return nodeList;
8353:            }
8354:
8355:            ArrayList new247() /* reduce ATerminal$StateListTail */
8356:            {
8357:                ArrayList nodeList = new ArrayList();
8358:
8359:                ArrayList nodeArrayList1 = (ArrayList) pop();
8360:                TypedLinkedList listNode2 = new TypedLinkedList();
8361:                {
8362:                    PStateListTail pstatelisttailNode1;
8363:                    pstatelisttailNode1 = (PStateListTail) nodeArrayList1
8364:                            .get(0);
8365:                    if (pstatelisttailNode1 != null) {
8366:                        listNode2.add(pstatelisttailNode1);
8367:                    }
8368:                }
8369:                nodeList.add(listNode2);
8370:                return nodeList;
8371:            }
8372:
8373:            ArrayList new248() /* reduce ANonTerminal$StateListTail */
8374:            {
8375:                ArrayList nodeList = new ArrayList();
8376:
8377:                ArrayList nodeArrayList2 = (ArrayList) pop();
8378:                ArrayList nodeArrayList1 = (ArrayList) pop();
8379:                TypedLinkedList listNode3 = new TypedLinkedList();
8380:                {
8381:                    TypedLinkedList listNode1 = new TypedLinkedList();
8382:                    PStateListTail pstatelisttailNode2;
8383:                    listNode1 = (TypedLinkedList) nodeArrayList1.get(0);
8384:                    pstatelisttailNode2 = (PStateListTail) nodeArrayList2
8385:                            .get(0);
8386:                    if (listNode1 != null) {
8387:                        listNode3.addAll(listNode1);
8388:                    }
8389:                    if (pstatelisttailNode2 != null) {
8390:                        listNode3.add(pstatelisttailNode2);
8391:                    }
8392:                }
8393:                nodeList.add(listNode3);
8394:                return nodeList;
8395:            }
8396:
8397:            ArrayList new249() /* reduce ATerminal$RegExpTail */
8398:            {
8399:                ArrayList nodeList = new ArrayList();
8400:
8401:                ArrayList nodeArrayList1 = (ArrayList) pop();
8402:                TypedLinkedList listNode2 = new TypedLinkedList();
8403:                {
8404:                    PConcat pconcatNode1;
8405:                    pconcatNode1 = (PConcat) nodeArrayList1.get(0);
8406:                    if (pconcatNode1 != null) {
8407:                        listNode2.add(pconcatNode1);
8408:                    }
8409:                }
8410:                nodeList.add(listNode2);
8411:                return nodeList;
8412:            }
8413:
8414:            ArrayList new250() /* reduce ANonTerminal$RegExpTail */
8415:            {
8416:                ArrayList nodeList = new ArrayList();
8417:
8418:                ArrayList nodeArrayList2 = (ArrayList) pop();
8419:                ArrayList nodeArrayList1 = (ArrayList) pop();
8420:                TypedLinkedList listNode3 = new TypedLinkedList();
8421:                {
8422:                    TypedLinkedList listNode1 = new TypedLinkedList();
8423:                    PConcat pconcatNode2;
8424:                    listNode1 = (TypedLinkedList) nodeArrayList1.get(0);
8425:                    pconcatNode2 = (PConcat) nodeArrayList2.get(0);
8426:                    if (listNode1 != null) {
8427:                        listNode3.addAll(listNode1);
8428:                    }
8429:                    if (pconcatNode2 != null) {
8430:                        listNode3.add(pconcatNode2);
8431:                    }
8432:                }
8433:                nodeList.add(listNode3);
8434:                return nodeList;
8435:            }
8436:
8437:            ArrayList new251() /* reduce ATerminal$UnExp */
8438:            {
8439:                ArrayList nodeList = new ArrayList();
8440:
8441:                ArrayList nodeArrayList1 = (ArrayList) pop();
8442:                TypedLinkedList listNode2 = new TypedLinkedList();
8443:                {
8444:                    PUnExp punexpNode1;
8445:                    punexpNode1 = (PUnExp) nodeArrayList1.get(0);
8446:                    if (punexpNode1 != null) {
8447:                        listNode2.add(punexpNode1);
8448:                    }
8449:                }
8450:                nodeList.add(listNode2);
8451:                return nodeList;
8452:            }
8453:
8454:            ArrayList new252() /* reduce ANonTerminal$UnExp */
8455:            {
8456:                ArrayList nodeList = new ArrayList();
8457:
8458:                ArrayList nodeArrayList2 = (ArrayList) pop();
8459:                ArrayList nodeArrayList1 = (ArrayList) pop();
8460:                TypedLinkedList listNode3 = new TypedLinkedList();
8461:                {
8462:                    TypedLinkedList listNode1 = new TypedLinkedList();
8463:                    PUnExp punexpNode2;
8464:                    listNode1 = (TypedLinkedList) nodeArrayList1.get(0);
8465:                    punexpNode2 = (PUnExp) nodeArrayList2.get(0);
8466:                    if (listNode1 != null) {
8467:                        listNode3.addAll(listNode1);
8468:                    }
8469:                    if (punexpNode2 != null) {
8470:                        listNode3.add(punexpNode2);
8471:                    }
8472:                }
8473:                nodeList.add(listNode3);
8474:                return nodeList;
8475:            }
8476:
8477:            ArrayList new253() /* reduce ATerminal$Prod */
8478:            {
8479:                ArrayList nodeList = new ArrayList();
8480:
8481:                ArrayList nodeArrayList1 = (ArrayList) pop();
8482:                TypedLinkedList listNode2 = new TypedLinkedList();
8483:                {
8484:                    PProd pprodNode1;
8485:                    pprodNode1 = (PProd) nodeArrayList1.get(0);
8486:                    if (pprodNode1 != null) {
8487:                        listNode2.add(pprodNode1);
8488:                    }
8489:                }
8490:                nodeList.add(listNode2);
8491:                return nodeList;
8492:            }
8493:
8494:            ArrayList new254() /* reduce ANonTerminal$Prod */
8495:            {
8496:                ArrayList nodeList = new ArrayList();
8497:
8498:                ArrayList nodeArrayList2 = (ArrayList) pop();
8499:                ArrayList nodeArrayList1 = (ArrayList) pop();
8500:                TypedLinkedList listNode3 = new TypedLinkedList();
8501:                {
8502:                    TypedLinkedList listNode1 = new TypedLinkedList();
8503:                    PProd pprodNode2;
8504:                    listNode1 = (TypedLinkedList) nodeArrayList1.get(0);
8505:                    pprodNode2 = (PProd) nodeArrayList2.get(0);
8506:                    if (listNode1 != null) {
8507:                        listNode3.addAll(listNode1);
8508:                    }
8509:                    if (pprodNode2 != null) {
8510:                        listNode3.add(pprodNode2);
8511:                    }
8512:                }
8513:                nodeList.add(listNode3);
8514:                return nodeList;
8515:            }
8516:
8517:            ArrayList new255() /* reduce ATerminal$Elem */
8518:            {
8519:                ArrayList nodeList = new ArrayList();
8520:
8521:                ArrayList nodeArrayList1 = (ArrayList) pop();
8522:                TypedLinkedList listNode2 = new TypedLinkedList();
8523:                {
8524:                    PElem pelemNode1;
8525:                    pelemNode1 = (PElem) nodeArrayList1.get(0);
8526:                    if (pelemNode1 != null) {
8527:                        listNode2.add(pelemNode1);
8528:                    }
8529:                }
8530:                nodeList.add(listNode2);
8531:                return nodeList;
8532:            }
8533:
8534:            ArrayList new256() /* reduce ANonTerminal$Elem */
8535:            {
8536:                ArrayList nodeList = new ArrayList();
8537:
8538:                ArrayList nodeArrayList2 = (ArrayList) pop();
8539:                ArrayList nodeArrayList1 = (ArrayList) pop();
8540:                TypedLinkedList listNode3 = new TypedLinkedList();
8541:                {
8542:                    TypedLinkedList listNode1 = new TypedLinkedList();
8543:                    PElem pelemNode2;
8544:                    listNode1 = (TypedLinkedList) nodeArrayList1.get(0);
8545:                    pelemNode2 = (PElem) nodeArrayList2.get(0);
8546:                    if (listNode1 != null) {
8547:                        listNode3.addAll(listNode1);
8548:                    }
8549:                    if (pelemNode2 != null) {
8550:                        listNode3.add(pelemNode2);
8551:                    }
8552:                }
8553:                nodeList.add(listNode3);
8554:                return nodeList;
8555:            }
8556:
8557:            ArrayList new257() /* reduce ATerminal$AltsTail */
8558:            {
8559:                ArrayList nodeList = new ArrayList();
8560:
8561:                ArrayList nodeArrayList1 = (ArrayList) pop();
8562:                TypedLinkedList listNode2 = new TypedLinkedList();
8563:                {
8564:                    PAlt paltNode1;
8565:                    paltNode1 = (PAlt) nodeArrayList1.get(0);
8566:                    if (paltNode1 != null) {
8567:                        listNode2.add(paltNode1);
8568:                    }
8569:                }
8570:                nodeList.add(listNode2);
8571:                return nodeList;
8572:            }
8573:
8574:            ArrayList new258() /* reduce ANonTerminal$AltsTail */
8575:            {
8576:                ArrayList nodeList = new ArrayList();
8577:
8578:                ArrayList nodeArrayList2 = (ArrayList) pop();
8579:                ArrayList nodeArrayList1 = (ArrayList) pop();
8580:                TypedLinkedList listNode3 = new TypedLinkedList();
8581:                {
8582:                    TypedLinkedList listNode1 = new TypedLinkedList();
8583:                    PAlt paltNode2;
8584:                    listNode1 = (TypedLinkedList) nodeArrayList1.get(0);
8585:                    paltNode2 = (PAlt) nodeArrayList2.get(0);
8586:                    if (listNode1 != null) {
8587:                        listNode3.addAll(listNode1);
8588:                    }
8589:                    if (paltNode2 != null) {
8590:                        listNode3.add(paltNode2);
8591:                    }
8592:                }
8593:                nodeList.add(listNode3);
8594:                return nodeList;
8595:            }
8596:
8597:            ArrayList new259() /* reduce ATerminal$Term */
8598:            {
8599:                ArrayList nodeList = new ArrayList();
8600:
8601:                ArrayList nodeArrayList1 = (ArrayList) pop();
8602:                TypedLinkedList listNode2 = new TypedLinkedList();
8603:                {
8604:                    PTerm ptermNode1;
8605:                    ptermNode1 = (PTerm) nodeArrayList1.get(0);
8606:                    if (ptermNode1 != null) {
8607:                        listNode2.add(ptermNode1);
8608:                    }
8609:                }
8610:                nodeList.add(listNode2);
8611:                return nodeList;
8612:            }
8613:
8614:            ArrayList new260() /* reduce ANonTerminal$Term */
8615:            {
8616:                ArrayList nodeList = new ArrayList();
8617:
8618:                ArrayList nodeArrayList2 = (ArrayList) pop();
8619:                ArrayList nodeArrayList1 = (ArrayList) pop();
8620:                TypedLinkedList listNode3 = new TypedLinkedList();
8621:                {
8622:                    TypedLinkedList listNode1 = new TypedLinkedList();
8623:                    PTerm ptermNode2;
8624:                    listNode1 = (TypedLinkedList) nodeArrayList1.get(0);
8625:                    ptermNode2 = (PTerm) nodeArrayList2.get(0);
8626:                    if (listNode1 != null) {
8627:                        listNode3.addAll(listNode1);
8628:                    }
8629:                    if (ptermNode2 != null) {
8630:                        listNode3.add(ptermNode2);
8631:                    }
8632:                }
8633:                nodeList.add(listNode3);
8634:                return nodeList;
8635:            }
8636:
8637:            ArrayList new261() /* reduce ATerminal$ListTermTail */
8638:            {
8639:                ArrayList nodeList = new ArrayList();
8640:
8641:                ArrayList nodeArrayList1 = (ArrayList) pop();
8642:                TypedLinkedList listNode2 = new TypedLinkedList();
8643:                {
8644:                    PListTerm plisttermNode1;
8645:                    plisttermNode1 = (PListTerm) nodeArrayList1.get(0);
8646:                    if (plisttermNode1 != null) {
8647:                        listNode2.add(plisttermNode1);
8648:                    }
8649:                }
8650:                nodeList.add(listNode2);
8651:                return nodeList;
8652:            }
8653:
8654:            ArrayList new262() /* reduce ANonTerminal$ListTermTail */
8655:            {
8656:                ArrayList nodeList = new ArrayList();
8657:
8658:                ArrayList nodeArrayList2 = (ArrayList) pop();
8659:                ArrayList nodeArrayList1 = (ArrayList) pop();
8660:                TypedLinkedList listNode3 = new TypedLinkedList();
8661:                {
8662:                    TypedLinkedList listNode1 = new TypedLinkedList();
8663:                    PListTerm plisttermNode2;
8664:                    listNode1 = (TypedLinkedList) nodeArrayList1.get(0);
8665:                    plisttermNode2 = (PListTerm) nodeArrayList2.get(0);
8666:                    if (listNode1 != null) {
8667:                        listNode3.addAll(listNode1);
8668:                    }
8669:                    if (plisttermNode2 != null) {
8670:                        listNode3.add(plisttermNode2);
8671:                    }
8672:                }
8673:                nodeList.add(listNode3);
8674:                return nodeList;
8675:            }
8676:
8677:            ArrayList new263() /* reduce ATerminal$ParamsTail */
8678:            {
8679:                ArrayList nodeList = new ArrayList();
8680:
8681:                ArrayList nodeArrayList1 = (ArrayList) pop();
8682:                TypedLinkedList listNode2 = new TypedLinkedList();
8683:                {
8684:                    PTerm ptermNode1;
8685:                    ptermNode1 = (PTerm) nodeArrayList1.get(0);
8686:                    if (ptermNode1 != null) {
8687:                        listNode2.add(ptermNode1);
8688:                    }
8689:                }
8690:                nodeList.add(listNode2);
8691:                return nodeList;
8692:            }
8693:
8694:            ArrayList new264() /* reduce ANonTerminal$ParamsTail */
8695:            {
8696:                ArrayList nodeList = new ArrayList();
8697:
8698:                ArrayList nodeArrayList2 = (ArrayList) pop();
8699:                ArrayList nodeArrayList1 = (ArrayList) pop();
8700:                TypedLinkedList listNode3 = new TypedLinkedList();
8701:                {
8702:                    TypedLinkedList listNode1 = new TypedLinkedList();
8703:                    PTerm ptermNode2;
8704:                    listNode1 = (TypedLinkedList) nodeArrayList1.get(0);
8705:                    ptermNode2 = (PTerm) nodeArrayList2.get(0);
8706:                    if (listNode1 != null) {
8707:                        listNode3.addAll(listNode1);
8708:                    }
8709:                    if (ptermNode2 != null) {
8710:                        listNode3.add(ptermNode2);
8711:                    }
8712:                }
8713:                nodeList.add(listNode3);
8714:                return nodeList;
8715:            }
8716:
8717:            ArrayList new265() /* reduce ATerminal$AstProd */
8718:            {
8719:                ArrayList nodeList = new ArrayList();
8720:
8721:                ArrayList nodeArrayList1 = (ArrayList) pop();
8722:                TypedLinkedList listNode2 = new TypedLinkedList();
8723:                {
8724:                    PAstProd pastprodNode1;
8725:                    pastprodNode1 = (PAstProd) nodeArrayList1.get(0);
8726:                    if (pastprodNode1 != null) {
8727:                        listNode2.add(pastprodNode1);
8728:                    }
8729:                }
8730:                nodeList.add(listNode2);
8731:                return nodeList;
8732:            }
8733:
8734:            ArrayList new266() /* reduce ANonTerminal$AstProd */
8735:            {
8736:                ArrayList nodeList = new ArrayList();
8737:
8738:                ArrayList nodeArrayList2 = (ArrayList) pop();
8739:                ArrayList nodeArrayList1 = (ArrayList) pop();
8740:                TypedLinkedList listNode3 = new TypedLinkedList();
8741:                {
8742:                    TypedLinkedList listNode1 = new TypedLinkedList();
8743:                    PAstProd pastprodNode2;
8744:                    listNode1 = (TypedLinkedList) nodeArrayList1.get(0);
8745:                    pastprodNode2 = (PAstProd) nodeArrayList2.get(0);
8746:                    if (listNode1 != null) {
8747:                        listNode3.addAll(listNode1);
8748:                    }
8749:                    if (pastprodNode2 != null) {
8750:                        listNode3.add(pastprodNode2);
8751:                    }
8752:                }
8753:                nodeList.add(listNode3);
8754:                return nodeList;
8755:            }
8756:
8757:            ArrayList new267() /* reduce ATerminal$AstAltsTail */
8758:            {
8759:                ArrayList nodeList = new ArrayList();
8760:
8761:                ArrayList nodeArrayList1 = (ArrayList) pop();
8762:                TypedLinkedList listNode2 = new TypedLinkedList();
8763:                {
8764:                    PAstAlt pastaltNode1;
8765:                    pastaltNode1 = (PAstAlt) nodeArrayList1.get(0);
8766:                    if (pastaltNode1 != null) {
8767:                        listNode2.add(pastaltNode1);
8768:                    }
8769:                }
8770:                nodeList.add(listNode2);
8771:                return nodeList;
8772:            }
8773:
8774:            ArrayList new268() /* reduce ANonTerminal$AstAltsTail */
8775:            {
8776:                ArrayList nodeList = new ArrayList();
8777:
8778:                ArrayList nodeArrayList2 = (ArrayList) pop();
8779:                ArrayList nodeArrayList1 = (ArrayList) pop();
8780:                TypedLinkedList listNode3 = new TypedLinkedList();
8781:                {
8782:                    TypedLinkedList listNode1 = new TypedLinkedList();
8783:                    PAstAlt pastaltNode2;
8784:                    listNode1 = (TypedLinkedList) nodeArrayList1.get(0);
8785:                    pastaltNode2 = (PAstAlt) nodeArrayList2.get(0);
8786:                    if (listNode1 != null) {
8787:                        listNode3.addAll(listNode1);
8788:                    }
8789:                    if (pastaltNode2 != null) {
8790:                        listNode3.add(pastaltNode2);
8791:                    }
8792:                }
8793:                nodeList.add(listNode3);
8794:                return nodeList;
8795:            }
8796:
8797:            private static int[][][] actionTable;
8798:            /*      {
8799:            			{{-1, REDUCE, 0}, {1, SHIFT, 1}, {2, SHIFT, 2}, {3, SHIFT, 3}, {4, SHIFT, 4}, {5, SHIFT, 5}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8800:            			{{-1, ERROR, 1}, {0, SHIFT, 16}, },
8801:            			{{-1, ERROR, 2}, {33, SHIFT, 18}, },
8802:            			{{-1, ERROR, 3}, {33, SHIFT, 20}, },
8803:            			{{-1, ERROR, 4}, {22, SHIFT, 23}, {33, SHIFT, 24}, },
8804:            			{{-1, ERROR, 5}, {4, SHIFT, 28}, },
8805:            			{{-1, ERROR, 6}, {33, SHIFT, 29}, },
8806:            			{{-1, ERROR, 7}, {8, SHIFT, 32}, },
8807:            			{{-1, ERROR, 8}, {38, ACCEPT, -1}, },
8808:            			{{-1, REDUCE, 1}, {2, SHIFT, 2}, {3, SHIFT, 3}, {4, SHIFT, 4}, {5, SHIFT, 5}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8809:            			{{-1, REDUCE, 2}, {2, SHIFT, 2}, {4, SHIFT, 4}, {5, SHIFT, 5}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8810:            			{{-1, REDUCE, 4}, {4, SHIFT, 4}, {5, SHIFT, 5}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8811:            			{{-1, REDUCE, 8}, {5, SHIFT, 5}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8812:            			{{-1, REDUCE, 16}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8813:            			{{-1, REDUCE, 32}, {7, SHIFT, 7}, },
8814:            			{{-1, REDUCE, 64}, },
8815:            			{{-1, ERROR, 16}, {14, SHIFT, 54}, {16, SHIFT, 55}, },
8816:            			{{-1, REDUCE, 128}, },
8817:            			{{-1, REDUCE, 135}, {29, SHIFT, 58}, },
8818:            			{{-1, ERROR, 19}, {16, SHIFT, 61}, },
8819:            			{{-1, ERROR, 20}, {17, SHIFT, 62}, },
8820:            			{{-1, REDUCE, 241}, },
8821:            			{{-1, REDUCE, 132}, {33, SHIFT, 20}, },
8822:            			{{-1, ERROR, 23}, {33, SHIFT, 64}, },
8823:            			{{-1, ERROR, 24}, {17, SHIFT, 65}, },
8824:            			{{-1, REDUCE, 245}, },
8825:            			{{-1, ERROR, 26}, {33, SHIFT, 66}, },
8826:            			{{-1, REDUCE, 138}, {22, SHIFT, 23}, {33, SHIFT, 24}, },
8827:            			{{-1, ERROR, 28}, {16, SHIFT, 68}, {33, SHIFT, 18}, },
8828:            			{{-1, ERROR, 29}, {17, SHIFT, 70}, {22, SHIFT, 71}, },
8829:            			{{-1, REDUCE, 253}, },
8830:            			{{-1, REDUCE, 175}, {33, SHIFT, 29}, },
8831:            			{{-1, ERROR, 32}, {9, SHIFT, 74}, },
8832:            			{{-1, REDUCE, 3}, {2, SHIFT, 2}, {4, SHIFT, 4}, {5, SHIFT, 5}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8833:            			{{-1, REDUCE, 5}, {4, SHIFT, 4}, {5, SHIFT, 5}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8834:            			{{-1, REDUCE, 9}, {5, SHIFT, 5}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8835:            			{{-1, REDUCE, 17}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8836:            			{{-1, REDUCE, 33}, {7, SHIFT, 7}, },
8837:            			{{-1, REDUCE, 65}, },
8838:            			{{-1, REDUCE, 6}, {4, SHIFT, 4}, {5, SHIFT, 5}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8839:            			{{-1, REDUCE, 10}, {5, SHIFT, 5}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8840:            			{{-1, REDUCE, 18}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8841:            			{{-1, REDUCE, 34}, {7, SHIFT, 7}, },
8842:            			{{-1, REDUCE, 66}, },
8843:            			{{-1, REDUCE, 12}, {5, SHIFT, 5}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8844:            			{{-1, REDUCE, 20}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8845:            			{{-1, REDUCE, 36}, {7, SHIFT, 7}, },
8846:            			{{-1, REDUCE, 68}, },
8847:            			{{-1, REDUCE, 24}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8848:            			{{-1, REDUCE, 40}, {7, SHIFT, 7}, },
8849:            			{{-1, REDUCE, 72}, },
8850:            			{{-1, REDUCE, 48}, {7, SHIFT, 7}, },
8851:            			{{-1, REDUCE, 80}, },
8852:            			{{-1, REDUCE, 96}, },
8853:            			{{-1, ERROR, 54}, {0, SHIFT, 110}, },
8854:            			{{-1, REDUCE, 129}, },
8855:            			{{-1, REDUCE, 239}, },
8856:            			{{-1, ERROR, 57}, {14, SHIFT, 54}, {16, SHIFT, 111}, },
8857:            			{{-1, ERROR, 58}, {33, SHIFT, 113}, },
8858:            			{{-1, REDUCE, 243}, },
8859:            			{{-1, REDUCE, 136}, {29, SHIFT, 58}, },
8860:            			{{-1, REDUCE, 134}, },
8861:            			{{-1, REDUCE, 156}, {18, SHIFT, 115}, {20, SHIFT, 116}, {33, SHIFT, 117}, {34, SHIFT, 118}, {35, SHIFT, 119}, {36, SHIFT, 120}, {37, SHIFT, 121}, },
8862:            			{{-1, REDUCE, 242}, },
8863:            			{{-1, ERROR, 64}, {23, SHIFT, 129}, {29, SHIFT, 130}, {31, SHIFT, 131}, },
8864:            			{{-1, REDUCE, 156}, {18, SHIFT, 115}, {20, SHIFT, 116}, {33, SHIFT, 117}, {34, SHIFT, 118}, {35, SHIFT, 119}, {36, SHIFT, 120}, {37, SHIFT, 121}, },
8865:            			{{-1, ERROR, 66}, {17, SHIFT, 136}, },
8866:            			{{-1, REDUCE, 246}, },
8867:            			{{-1, REDUCE, 150}, },
8868:            			{{-1, ERROR, 69}, {16, SHIFT, 137}, },
8869:            			{{-1, REDUCE, 183}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 140}, {22, SHIFT, 141}, {33, SHIFT, 142}, },
8870:            			{{-1, ERROR, 71}, {31, SHIFT, 151}, },
8871:            			{{-1, ERROR, 72}, {17, SHIFT, 152}, },
8872:            			{{-1, REDUCE, 254}, },
8873:            			{{-1, ERROR, 74}, {33, SHIFT, 153}, },
8874:            			{{-1, REDUCE, 7}, {4, SHIFT, 4}, {5, SHIFT, 5}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8875:            			{{-1, REDUCE, 11}, {5, SHIFT, 5}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8876:            			{{-1, REDUCE, 19}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8877:            			{{-1, REDUCE, 35}, {7, SHIFT, 7}, },
8878:            			{{-1, REDUCE, 67}, },
8879:            			{{-1, REDUCE, 13}, {5, SHIFT, 5}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8880:            			{{-1, REDUCE, 21}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8881:            			{{-1, REDUCE, 37}, {7, SHIFT, 7}, },
8882:            			{{-1, REDUCE, 69}, },
8883:            			{{-1, REDUCE, 25}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8884:            			{{-1, REDUCE, 41}, {7, SHIFT, 7}, },
8885:            			{{-1, REDUCE, 73}, },
8886:            			{{-1, REDUCE, 49}, {7, SHIFT, 7}, },
8887:            			{{-1, REDUCE, 81}, },
8888:            			{{-1, REDUCE, 97}, },
8889:            			{{-1, REDUCE, 14}, {5, SHIFT, 5}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8890:            			{{-1, REDUCE, 22}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8891:            			{{-1, REDUCE, 38}, {7, SHIFT, 7}, },
8892:            			{{-1, REDUCE, 70}, },
8893:            			{{-1, REDUCE, 26}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8894:            			{{-1, REDUCE, 42}, {7, SHIFT, 7}, },
8895:            			{{-1, REDUCE, 74}, },
8896:            			{{-1, REDUCE, 50}, {7, SHIFT, 7}, },
8897:            			{{-1, REDUCE, 82}, },
8898:            			{{-1, REDUCE, 98}, },
8899:            			{{-1, REDUCE, 28}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8900:            			{{-1, REDUCE, 44}, {7, SHIFT, 7}, },
8901:            			{{-1, REDUCE, 76}, },
8902:            			{{-1, REDUCE, 52}, {7, SHIFT, 7}, },
8903:            			{{-1, REDUCE, 84}, },
8904:            			{{-1, REDUCE, 100}, },
8905:            			{{-1, REDUCE, 56}, {7, SHIFT, 7}, },
8906:            			{{-1, REDUCE, 88}, },
8907:            			{{-1, REDUCE, 104}, },
8908:            			{{-1, REDUCE, 112}, },
8909:            			{{-1, REDUCE, 131}, },
8910:            			{{-1, REDUCE, 130}, },
8911:            			{{-1, REDUCE, 240}, },
8912:            			{{-1, REDUCE, 137}, },
8913:            			{{-1, REDUCE, 244}, },
8914:            			{{-1, ERROR, 115}, {18, SHIFT, 115}, {20, SHIFT, 116}, {33, SHIFT, 117}, {34, SHIFT, 118}, {35, SHIFT, 119}, {36, SHIFT, 120}, {37, SHIFT, 121}, },
8915:            			{{-1, REDUCE, 156}, {18, SHIFT, 115}, {20, SHIFT, 116}, {33, SHIFT, 117}, {34, SHIFT, 118}, {35, SHIFT, 119}, {36, SHIFT, 120}, {37, SHIFT, 121}, },
8916:            			{{-1, REDUCE, 163}, },
8917:            			{{-1, REDUCE, 165}, },
8918:            			{{-1, REDUCE, 166}, },
8919:            			{{-1, REDUCE, 167}, },
8920:            			{{-1, REDUCE, 162}, },
8921:            			{{-1, ERROR, 122}, {16, SHIFT, 194}, },
8922:            			{{-1, REDUCE, 153}, {28, SHIFT, 195}, },
8923:            			{{-1, REDUCE, 251}, },
8924:            			{{-1, REDUCE, 158}, {24, SHIFT, 198}, {26, SHIFT, 199}, {27, SHIFT, 200}, },
8925:            			{{-1, REDUCE, 160}, },
8926:            			{{-1, REDUCE, 161}, },
8927:            			{{-1, REDUCE, 157}, {18, SHIFT, 115}, {20, SHIFT, 116}, {33, SHIFT, 117}, {34, SHIFT, 118}, {35, SHIFT, 119}, {36, SHIFT, 120}, {37, SHIFT, 121}, },
8928:            			{{-1, REDUCE, 143}, },
8929:            			{{-1, ERROR, 130}, {33, SHIFT, 203}, },
8930:            			{{-1, ERROR, 131}, {33, SHIFT, 204}, },
8931:            			{{-1, REDUCE, 247}, },
8932:            			{{-1, ERROR, 133}, {23, SHIFT, 205}, {29, SHIFT, 130}, },
8933:            			{{-1, ERROR, 134}, {23, SHIFT, 207}, {29, SHIFT, 130}, },
8934:            			{{-1, ERROR, 135}, {16, SHIFT, 209}, {30, SHIFT, 210}, },
8935:            			{{-1, REDUCE, 156}, {18, SHIFT, 115}, {20, SHIFT, 116}, {33, SHIFT, 117}, {34, SHIFT, 118}, {35, SHIFT, 119}, {36, SHIFT, 120}, {37, SHIFT, 121}, },
8936:            			{{-1, REDUCE, 151}, },
8937:            			{{-1, ERROR, 138}, {14, SHIFT, 213}, },
8938:            			{{-1, ERROR, 139}, {14, SHIFT, 214}, },
8939:            			{{-1, ERROR, 140}, {33, SHIFT, 215}, },
8940:            			{{-1, ERROR, 141}, {31, SHIFT, 216}, {33, SHIFT, 217}, },
8941:            			{{-1, REDUCE, 219}, {24, SHIFT, 198}, {26, SHIFT, 199}, {27, SHIFT, 200}, },
8942:            			{{-1, ERROR, 143}, {16, SHIFT, 219}, },
8943:            			{{-1, REDUCE, 180}, {28, SHIFT, 220}, },
8944:            			{{-1, REDUCE, 187}, },
8945:            			{{-1, REDUCE, 184}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 140}, {22, SHIFT, 223}, {33, SHIFT, 142}, },
8946:            			{{-1, REDUCE, 255}, },
8947:            			{{-1, ERROR, 148}, {12, SHIFT, 138}, {13, SHIFT, 139}, {33, SHIFT, 226}, },
8948:            			{{-1, ERROR, 149}, {33, SHIFT, 228}, },
8949:            			{{-1, REDUCE, 185}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 140}, {22, SHIFT, 223}, {33, SHIFT, 142}, },
8950:            			{{-1, ERROR, 151}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 140}, {23, SHIFT, 231}, {33, SHIFT, 142}, },
8951:            			{{-1, REDUCE, 183}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 140}, {22, SHIFT, 141}, {33, SHIFT, 142}, },
8952:            			{{-1, ERROR, 153}, {17, SHIFT, 234}, },
8953:            			{{-1, REDUCE, 265}, },
8954:            			{{-1, REDUCE, 230}, {33, SHIFT, 153}, },
8955:            			{{-1, REDUCE, 15}, {5, SHIFT, 5}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8956:            			{{-1, REDUCE, 23}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8957:            			{{-1, REDUCE, 39}, {7, SHIFT, 7}, },
8958:            			{{-1, REDUCE, 71}, },
8959:            			{{-1, REDUCE, 27}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8960:            			{{-1, REDUCE, 43}, {7, SHIFT, 7}, },
8961:            			{{-1, REDUCE, 75}, },
8962:            			{{-1, REDUCE, 51}, {7, SHIFT, 7}, },
8963:            			{{-1, REDUCE, 83}, },
8964:            			{{-1, REDUCE, 99}, },
8965:            			{{-1, REDUCE, 29}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8966:            			{{-1, REDUCE, 45}, {7, SHIFT, 7}, },
8967:            			{{-1, REDUCE, 77}, },
8968:            			{{-1, REDUCE, 53}, {7, SHIFT, 7}, },
8969:            			{{-1, REDUCE, 85}, },
8970:            			{{-1, REDUCE, 101}, },
8971:            			{{-1, REDUCE, 57}, {7, SHIFT, 7}, },
8972:            			{{-1, REDUCE, 89}, },
8973:            			{{-1, REDUCE, 105}, },
8974:            			{{-1, REDUCE, 113}, },
8975:            			{{-1, REDUCE, 30}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
8976:            			{{-1, REDUCE, 46}, {7, SHIFT, 7}, },
8977:            			{{-1, REDUCE, 78}, },
8978:            			{{-1, REDUCE, 54}, {7, SHIFT, 7}, },
8979:            			{{-1, REDUCE, 86}, },
8980:            			{{-1, REDUCE, 102}, },
8981:            			{{-1, REDUCE, 58}, {7, SHIFT, 7}, },
8982:            			{{-1, REDUCE, 90}, },
8983:            			{{-1, REDUCE, 106}, },
8984:            			{{-1, REDUCE, 114}, },
8985:            			{{-1, REDUCE, 60}, {7, SHIFT, 7}, },
8986:            			{{-1, REDUCE, 92}, },
8987:            			{{-1, REDUCE, 108}, },
8988:            			{{-1, REDUCE, 116}, },
8989:            			{{-1, REDUCE, 120}, },
8990:            			{{-1, ERROR, 191}, {24, SHIFT, 257}, {25, SHIFT, 258}, },
8991:            			{{-1, REDUCE, 160}, {15, SHIFT, 260}, },
8992:            			{{-1, ERROR, 193}, {21, SHIFT, 261}, },
8993:            			{{-1, REDUCE, 133}, },
8994:            			{{-1, REDUCE, 156}, {18, SHIFT, 115}, {20, SHIFT, 116}, {33, SHIFT, 117}, {34, SHIFT, 118}, {35, SHIFT, 119}, {36, SHIFT, 120}, {37, SHIFT, 121}, },
8995:            			{{-1, REDUCE, 249}, },
8996:            			{{-1, REDUCE, 154}, {28, SHIFT, 195}, },
8997:            			{{-1, REDUCE, 172}, },
8998:            			{{-1, REDUCE, 171}, },
8999:            			{{-1, REDUCE, 170}, },
9000:            			{{-1, REDUCE, 159}, },
9001:            			{{-1, REDUCE, 252}, },
9002:            			{{-1, REDUCE, 147}, {31, SHIFT, 131}, },
9003:            			{{-1, REDUCE, 149}, },
9004:            			{{-1, REDUCE, 144}, },
9005:            			{{-1, ERROR, 206}, {23, SHIFT, 265}, {29, SHIFT, 130}, },
9006:            			{{-1, REDUCE, 145}, },
9007:            			{{-1, REDUCE, 248}, },
9008:            			{{-1, REDUCE, 139}, },
9009:            			{{-1, REDUCE, 156}, {18, SHIFT, 115}, {20, SHIFT, 116}, {33, SHIFT, 117}, {34, SHIFT, 118}, {35, SHIFT, 119}, {36, SHIFT, 120}, {37, SHIFT, 121}, },
9010:            			{{-1, ERROR, 211}, {16, SHIFT, 267}, },
9011:            			{{-1, ERROR, 212}, {16, SHIFT, 268}, {30, SHIFT, 210}, },
9012:            			{{-1, REDUCE, 228}, },
9013:            			{{-1, REDUCE, 229}, },
9014:            			{{-1, ERROR, 215}, {19, SHIFT, 270}, },
9015:            			{{-1, ERROR, 216}, {10, SHIFT, 271}, {11, SHIFT, 272}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 273}, {23, SHIFT, 274}, {33, SHIFT, 275}, },
9016:            			{{-1, ERROR, 217}, {23, SHIFT, 279}, },
9017:            			{{-1, REDUCE, 223}, },
9018:            			{{-1, REDUCE, 176}, },
9019:            			{{-1, REDUCE, 183}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 140}, {22, SHIFT, 141}, {33, SHIFT, 142}, },
9020:            			{{-1, REDUCE, 257}, },
9021:            			{{-1, REDUCE, 181}, {28, SHIFT, 220}, },
9022:            			{{-1, ERROR, 223}, {31, SHIFT, 216}, },
9023:            			{{-1, REDUCE, 188}, },
9024:            			{{-1, REDUCE, 186}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 140}, {22, SHIFT, 223}, {33, SHIFT, 142}, },
9025:            			{{-1, REDUCE, 220}, {24, SHIFT, 198}, {26, SHIFT, 199}, {27, SHIFT, 200}, },
9026:            			{{-1, ERROR, 227}, {33, SHIFT, 284}, },
9027:            			{{-1, REDUCE, 221}, {24, SHIFT, 198}, {26, SHIFT, 199}, {27, SHIFT, 200}, },
9028:            			{{-1, REDUCE, 189}, },
9029:            			{{-1, REDUCE, 256}, },
9030:            			{{-1, REDUCE, 178}, },
9031:            			{{-1, ERROR, 232}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 140}, {23, SHIFT, 286}, {33, SHIFT, 142}, },
9032:            			{{-1, ERROR, 233}, {16, SHIFT, 287}, },
9033:            			{{-1, REDUCE, 235}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 140}, {22, SHIFT, 288}, {33, SHIFT, 142}, },
9034:            			{{-1, REDUCE, 266}, },
9035:            			{{-1, REDUCE, 31}, {6, SHIFT, 6}, {7, SHIFT, 7}, },
9036:            			{{-1, REDUCE, 47}, {7, SHIFT, 7}, },
9037:            			{{-1, REDUCE, 79}, },
9038:            			{{-1, REDUCE, 55}, {7, SHIFT, 7}, },
9039:            			{{-1, REDUCE, 87}, },
9040:            			{{-1, REDUCE, 103}, },
9041:            			{{-1, REDUCE, 59}, {7, SHIFT, 7}, },
9042:            			{{-1, REDUCE, 91}, },
9043:            			{{-1, REDUCE, 107}, },
9044:            			{{-1, REDUCE, 115}, },
9045:            			{{-1, REDUCE, 61}, {7, SHIFT, 7}, },
9046:            			{{-1, REDUCE, 93}, },
9047:            			{{-1, REDUCE, 109}, },
9048:            			{{-1, REDUCE, 117}, },
9049:            			{{-1, REDUCE, 121}, },
9050:            			{{-1, REDUCE, 62}, {7, SHIFT, 7}, },
9051:            			{{-1, REDUCE, 94}, },
9052:            			{{-1, REDUCE, 110}, },
9053:            			{{-1, REDUCE, 118}, },
9054:            			{{-1, REDUCE, 122}, },
9055:            			{{-1, REDUCE, 124}, },
9056:            			{{-1, REDUCE, 173}, },
9057:            			{{-1, REDUCE, 174}, },
9058:            			{{-1, ERROR, 259}, {18, SHIFT, 115}, {20, SHIFT, 116}, {33, SHIFT, 117}, {34, SHIFT, 118}, {35, SHIFT, 119}, {36, SHIFT, 120}, {37, SHIFT, 121}, },
9059:            			{{-1, ERROR, 260}, {34, SHIFT, 118}, {35, SHIFT, 119}, {36, SHIFT, 120}, },
9060:            			{{-1, REDUCE, 164}, },
9061:            			{{-1, REDUCE, 155}, },
9062:            			{{-1, REDUCE, 250}, },
9063:            			{{-1, REDUCE, 148}, },
9064:            			{{-1, REDUCE, 146}, },
9065:            			{{-1, REDUCE, 152}, },
9066:            			{{-1, REDUCE, 141}, },
9067:            			{{-1, REDUCE, 140}, },
9068:            			{{-1, ERROR, 269}, {16, SHIFT, 302}, },
9069:            			{{-1, ERROR, 270}, {32, SHIFT, 303}, },
9070:            			{{-1, ERROR, 271}, {33, SHIFT, 304}, },
9071:            			{{-1, REDUCE, 201}, },
9072:            			{{-1, ERROR, 273}, {10, SHIFT, 306}, {12, SHIFT, 138}, {13, SHIFT, 139}, {19, SHIFT, 307}, {33, SHIFT, 308}, },
9073:            			{{-1, REDUCE, 191}, },
9074:            			{{-1, REDUCE, 197}, {14, SHIFT, 312}, },
9075:            			{{-1, REDUCE, 259}, },
9076:            			{{-1, ERROR, 277}, {33, SHIFT, 314}, },
9077:            			{{-1, ERROR, 278}, {10, SHIFT, 271}, {11, SHIFT, 272}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 273}, {23, SHIFT, 315}, {33, SHIFT, 275}, },
9078:            			{{-1, REDUCE, 218}, },
9079:            			{{-1, REDUCE, 182}, },
9080:            			{{-1, REDUCE, 258}, },
9081:            			{{-1, REDUCE, 190}, },
9082:            			{{-1, REDUCE, 224}, },
9083:            			{{-1, REDUCE, 222}, {24, SHIFT, 198}, {26, SHIFT, 199}, {27, SHIFT, 200}, },
9084:            			{{-1, REDUCE, 225}, },
9085:            			{{-1, REDUCE, 179}, },
9086:            			{{-1, REDUCE, 177}, },
9087:            			{{-1, ERROR, 288}, {33, SHIFT, 217}, },
9088:            			{{-1, REDUCE, 236}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 140}, {33, SHIFT, 142}, },
9089:            			{{-1, ERROR, 290}, {16, SHIFT, 319}, },
9090:            			{{-1, REDUCE, 232}, {28, SHIFT, 320}, },
9091:            			{{-1, REDUCE, 237}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 140}, {33, SHIFT, 142}, },
9092:            			{{-1, REDUCE, 63}, {7, SHIFT, 7}, },
9093:            			{{-1, REDUCE, 95}, },
9094:            			{{-1, REDUCE, 111}, },
9095:            			{{-1, REDUCE, 119}, },
9096:            			{{-1, REDUCE, 123}, },
9097:            			{{-1, REDUCE, 125}, },
9098:            			{{-1, REDUCE, 126}, },
9099:            			{{-1, ERROR, 300}, {19, SHIFT, 324}, },
9100:            			{{-1, ERROR, 301}, {19, SHIFT, 325}, },
9101:            			{{-1, REDUCE, 142}, },
9102:            			{{-1, REDUCE, 227}, },
9103:            			{{-1, REDUCE, 212}, {14, SHIFT, 326}, },
9104:            			{{-1, ERROR, 305}, {20, SHIFT, 328}, },
9105:            			{{-1, ERROR, 306}, {33, SHIFT, 304}, },
9106:            			{{-1, REDUCE, 195}, },
9107:            			{{-1, REDUCE, 206}, {14, SHIFT, 312}, },
9108:            			{{-1, ERROR, 309}, {19, SHIFT, 331}, },
9109:            			{{-1, REDUCE, 202}, {29, SHIFT, 332}, },
9110:            			{{-1, ERROR, 311}, {33, SHIFT, 335}, },
9111:            			{{-1, ERROR, 312}, {33, SHIFT, 336}, },
9112:            			{{-1, REDUCE, 199}, },
9113:            			{{-1, REDUCE, 198}, {14, SHIFT, 312}, },
9114:            			{{-1, REDUCE, 192}, },
9115:            			{{-1, REDUCE, 260}, },
9116:            			{{-1, REDUCE, 226}, },
9117:            			{{-1, REDUCE, 238}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 140}, {33, SHIFT, 142}, },
9118:            			{{-1, REDUCE, 231}, },
9119:            			{{-1, REDUCE, 235}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 140}, {22, SHIFT, 288}, {33, SHIFT, 142}, },
9120:            			{{-1, REDUCE, 267}, },
9121:            			{{-1, REDUCE, 233}, {28, SHIFT, 320}, },
9122:            			{{-1, REDUCE, 127}, },
9123:            			{{-1, REDUCE, 168}, },
9124:            			{{-1, REDUCE, 169}, },
9125:            			{{-1, ERROR, 326}, {33, SHIFT, 340}, },
9126:            			{{-1, REDUCE, 213}, },
9127:            			{{-1, ERROR, 328}, {10, SHIFT, 271}, {11, SHIFT, 272}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 273}, {21, SHIFT, 341}, {33, SHIFT, 275}, },
9128:            			{{-1, ERROR, 329}, {20, SHIFT, 344}, },
9129:            			{{-1, REDUCE, 208}, },
9130:            			{{-1, REDUCE, 196}, },
9131:            			{{-1, ERROR, 332}, {10, SHIFT, 306}, {12, SHIFT, 138}, {13, SHIFT, 139}, {33, SHIFT, 308}, },
9132:            			{{-1, REDUCE, 261}, },
9133:            			{{-1, REDUCE, 203}, {29, SHIFT, 332}, },
9134:            			{{-1, REDUCE, 207}, {14, SHIFT, 312}, },
9135:            			{{-1, REDUCE, 211}, },
9136:            			{{-1, REDUCE, 200}, },
9137:            			{{-1, REDUCE, 234}, },
9138:            			{{-1, REDUCE, 268}, },
9139:            			{{-1, REDUCE, 214}, },
9140:            			{{-1, REDUCE, 193}, },
9141:            			{{-1, REDUCE, 215}, {29, SHIFT, 348}, },
9142:            			{{-1, ERROR, 343}, {21, SHIFT, 351}, },
9143:            			{{-1, ERROR, 344}, {10, SHIFT, 271}, {11, SHIFT, 272}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 273}, {21, SHIFT, 352}, {33, SHIFT, 275}, },
9144:            			{{-1, REDUCE, 210}, },
9145:            			{{-1, REDUCE, 262}, },
9146:            			{{-1, REDUCE, 209}, },
9147:            			{{-1, ERROR, 348}, {10, SHIFT, 271}, {11, SHIFT, 272}, {12, SHIFT, 138}, {13, SHIFT, 139}, {18, SHIFT, 273}, {33, SHIFT, 275}, },
9148:            			{{-1, REDUCE, 263}, },
9149:            			{{-1, REDUCE, 216}, {29, SHIFT, 348}, },
9150:            			{{-1, REDUCE, 194}, },
9151:            			{{-1, REDUCE, 204}, },
9152:            			{{-1, ERROR, 353}, {21, SHIFT, 356}, },
9153:            			{{-1, REDUCE, 217}, },
9154:            			{{-1, REDUCE, 264}, },
9155:            			{{-1, REDUCE, 205}, },
9156:                    };*/
9157:            private static int[][][] gotoTable;
9158:            /*      {
9159:            			{{-1, 8}, },
9160:            			{{-1, 9}, },
9161:            			{{-1, 17}, },
9162:            			{{-1, 56}, {57, 112}, },
9163:            			{{-1, 10}, {9, 33}, },
9164:            			{{-1, 21}, {22, 63}, },
9165:            			{{-1, 11}, {9, 34}, {10, 39}, {33, 75}, },
9166:            			{{-1, 19}, {28, 69}, },
9167:            			{{-1, 59}, {60, 114}, },
9168:            			{{-1, 12}, {9, 35}, {10, 40}, {11, 44}, {33, 76}, {34, 80}, {39, 90}, {75, 156}, },
9169:            			{{-1, 25}, {27, 67}, },
9170:            			{{-1, 26}, },
9171:            			{{-1, 132}, {134, 208}, {206, 208}, },
9172:            			{{-1, 133}, {203, 264}, },
9173:            			{{-1, 13}, {9, 36}, {10, 41}, {11, 45}, {12, 48}, {33, 77}, {34, 81}, {35, 84}, {39, 91}, {40, 94}, {44, 100}, {75, 157}, {76, 160}, {80, 166}, {90, 176}, {156, 236}, },
9174:            			{{-1, 211}, {212, 269}, },
9175:            			{{-1, 122}, {65, 135}, {116, 193}, {136, 212}, {210, 266}, },
9176:            			{{-1, 196}, {197, 263}, },
9177:            			{{-1, 123}, {195, 262}, },
9178:            			{{-1, 124}, {128, 202}, },
9179:            			{{-1, 125}, {115, 191}, {259, 300}, },
9180:            			{{-1, 126}, {115, 192}, {260, 301}, },
9181:            			{{-1, 127}, },
9182:            			{{-1, 201}, {142, 218}, {226, 283}, {228, 285}, {284, 317}, },
9183:            			{{-1, 259}, },
9184:            			{{-1, 14}, {9, 37}, {10, 42}, {11, 46}, {12, 49}, {13, 51}, {33, 78}, {34, 82}, {35, 85}, {36, 87}, {39, 92}, {40, 95}, {41, 97}, {44, 101}, {45, 103}, {48, 106}, {75, 158}, {76, 161}, {77, 163}, {80, 167}, {81, 169}, {84, 172}, {90, 177}, {91, 179}, {94, 182}, {100, 186}, {156, 237}, {157, 239}, {160, 242}, {166, 246}, {176, 251}, {236, 293}, },
9185:            			{{-1, 30}, {31, 73}, },
9186:            			{{-1, 72}, },
9187:            			{{-1, 143}, {152, 233}, },
9188:            			{{-1, 221}, {222, 281}, },
9189:            			{{-1, 144}, {220, 280}, },
9190:            			{{-1, 145}, {146, 224}, {150, 229}, {225, 282}, },
9191:            			{{-1, 342}, {216, 276}, {278, 316}, {348, 354}, },
9192:            			{{-1, 309}, },
9193:            			{{-1, 310}, {332, 345}, },
9194:            			{{-1, 333}, {334, 346}, },
9195:            			{{-1, 313}, {308, 330}, {314, 337}, {335, 347}, },
9196:            			{{-1, 305}, {306, 329}, },
9197:            			{{-1, 327}, },
9198:            			{{-1, 343}, {344, 353}, },
9199:            			{{-1, 349}, {350, 355}, },
9200:            			{{-1, 146}, {234, 289}, {320, 289}, },
9201:            			{{-1, 147}, {150, 230}, {225, 230}, {232, 230}, {292, 230}, {318, 230}, },
9202:            			{{-1, 148}, },
9203:            			{{-1, 149}, {148, 227}, {216, 277}, {273, 311}, {278, 277}, {328, 277}, {332, 311}, {344, 277}, {348, 277}, },
9204:            			{{-1, 15}, {9, 38}, {10, 43}, {11, 47}, {12, 50}, {13, 52}, {14, 53}, {33, 79}, {34, 83}, {35, 86}, {36, 88}, {37, 89}, {39, 93}, {40, 96}, {41, 98}, {42, 99}, {44, 102}, {45, 104}, {46, 105}, {48, 107}, {49, 108}, {51, 109}, {75, 159}, {76, 162}, {77, 164}, {78, 165}, {80, 168}, {81, 170}, {82, 171}, {84, 173}, {85, 174}, {87, 175}, {90, 178}, {91, 180}, {92, 181}, {94, 183}, {95, 184}, {97, 185}, {100, 187}, {101, 188}, {103, 189}, {106, 190}, {156, 238}, {157, 240}, {158, 241}, {160, 243}, {161, 244}, {163, 245}, {166, 247}, {167, 248}, {169, 249}, {172, 250}, {176, 252}, {177, 253}, {179, 254}, {182, 255}, {186, 256}, {236, 294}, {237, 295}, {239, 296}, {242, 297}, {246, 298}, {251, 299}, {293, 323}, },
9205:            			{{-1, 154}, {155, 235}, },
9206:            			{{-1, 290}, },
9207:            			{{-1, 321}, {322, 339}, },
9208:            			{{-1, 291}, {320, 338}, },
9209:            			{{-1, 57}, },
9210:            			{{-1, 22}, },
9211:            			{{-1, 60}, },
9212:            			{{-1, 27}, },
9213:            			{{-1, 134}, {133, 206}, },
9214:            			{{-1, 197}, },
9215:            			{{-1, 128}, },
9216:            			{{-1, 31}, },
9217:            			{{-1, 150}, {146, 225}, {151, 232}, {234, 292}, {289, 318}, {320, 292}, },
9218:            			{{-1, 222}, },
9219:            			{{-1, 278}, },
9220:            			{{-1, 334}, },
9221:            			{{-1, 350}, },
9222:            			{{-1, 155}, },
9223:            			{{-1, 322}, },
9224:                    };*/
9225:            private static String[] errorMessages;
9226:            /*      {
9227:            			"expecting: 'Package', 'States', 'Helpers', 'Tokens', 'Ignored', 'Productions', 'Abstract', EOF",
9228:            			"expecting: pkg id",
9229:            			"expecting: id",
9230:            			"expecting: '{', id",
9231:            			"expecting: 'Tokens'",
9232:            			"expecting: 'Syntax'",
9233:            			"expecting: EOF",
9234:            			"expecting: 'States', 'Helpers', 'Tokens', 'Ignored', 'Productions', 'Abstract', EOF",
9235:            			"expecting: 'States', 'Tokens', 'Ignored', 'Productions', 'Abstract', EOF",
9236:            			"expecting: 'Tokens', 'Ignored', 'Productions', 'Abstract', EOF",
9237:            			"expecting: 'Ignored', 'Productions', 'Abstract', EOF",
9238:            			"expecting: 'Productions', 'Abstract', EOF",
9239:            			"expecting: 'Abstract', EOF",
9240:            			"expecting: '.', ';'",
9241:            			"expecting: ';', ','",
9242:            			"expecting: ';'",
9243:            			"expecting: '='",
9244:            			"expecting: 'States', 'Tokens', 'Ignored', 'Productions', 'Abstract', id, EOF",
9245:            			"expecting: 'Ignored', 'Productions', 'Abstract', '{', id, EOF",
9246:            			"expecting: ';', id",
9247:            			"expecting: '=', '{'",
9248:            			"expecting: 'Abstract', id, EOF",
9249:            			"expecting: 'Tree'",
9250:            			"expecting: ';', '[', '(', '|', id, char, dec char, hex char, string",
9251:            			"expecting: '}', ',', '->'",
9252:            			"expecting: ';', '[', '(', '|', '/', id, char, dec char, hex char, string",
9253:            			"expecting: 'T', 'P', ';', '[', '{', '|', id",
9254:            			"expecting: '->'",
9255:            			"expecting: '[', '(', id, char, dec char, hex char, string",
9256:            			"expecting: '[', '(', ')', '|', id, char, dec char, hex char, string",
9257:            			"expecting: ';', '[', ']', '(', ')', '+', '-', '?', '*', '|', '/', id, char, dec char, hex char, string",
9258:            			"expecting: '..', ';', '[', ']', '(', ')', '+', '-', '?', '*', '|', '/', id, char, dec char, hex char, string",
9259:            			"expecting: ';', ')', '|', '/'",
9260:            			"expecting: ';', '[', '(', ')', '|', '/', id, char, dec char, hex char, string",
9261:            			"expecting: ';', '[', '(', ')', '+', '?', '*', '|', '/', id, char, dec char, hex char, string",
9262:            			"expecting: ';', '[', ']', '(', ')', '+', '?', '*', '|', '/', id, char, dec char, hex char, string",
9263:            			"expecting: '}', ','",
9264:            			"expecting: ';', '/'",
9265:            			"expecting: '.'",
9266:            			"expecting: '->', id",
9267:            			"expecting: 'T', 'P', ';', '[', '{', '}', '+', '?', '*', '|', id",
9268:            			"expecting: ';', '|'",
9269:            			"expecting: 'T', 'P', ';', '[', '{', '}', '|', id",
9270:            			"expecting: 'T', 'P', id",
9271:            			"expecting: 'T', 'P', '[', '}', id",
9272:            			"expecting: id, EOF",
9273:            			"expecting: '+', '-'",
9274:            			"expecting: '..', '+', '-'",
9275:            			"expecting: ')'",
9276:            			"expecting: 'T', 'P', ';', '[', '(', ')', '{', '}', '|', '/', id, char, dec char, hex char, string",
9277:            			"expecting: ']'",
9278:            			"expecting: 'New', 'Null', 'T', 'P', '[', '}', id",
9279:            			"expecting: '}'",
9280:            			"expecting: char, dec char, hex char",
9281:            			"expecting: ':'",
9282:            			"expecting: 'New', 'Null', 'T', 'P', '[', ')', '}', ',', id",
9283:            			"expecting: 'New', 'T', 'P', ']', id",
9284:            			"expecting: 'New', 'Null', 'T', 'P', '.', '[', ')', '}', ',', id",
9285:            			"expecting: 'T', 'P', ';', '[', '|', id",
9286:            			"expecting: '.', '('",
9287:            			"expecting: '('",
9288:            			"expecting: '.', ']', ','",
9289:            			"expecting: ']', ','",
9290:            			"expecting: 'New', 'Null', 'T', 'P', '[', ')', id",
9291:            			"expecting: 'New', 'T', 'P', id",
9292:            			"expecting: 'New', 'Null', 'T', 'P', '[', ']', ')', '}', ',', id",
9293:            			"expecting: ')', ','",
9294:            			"expecting: 'New', 'Null', 'T', 'P', '[', id",
9295:                    };*/
9296:            private static int[] errors;
9297:            /*      {
9298:            			0, 1, 2, 2, 3, 4, 2, 5, 6, 7, 8, 9, 10, 11, 12, 6, 13, 7, 14, 15, 16, 17, 17, 2, 16, 18, 2, 18, 19, 20, 21, 21, 22, 8, 9, 10, 11, 12, 6, 9, 10, 11, 12, 6, 10, 11, 12, 6, 11, 12, 6, 12, 6, 6, 1, 7, 13, 13, 2, 14, 14, 9, 23, 17, 24, 25, 16, 18, 11, 15, 26, 27, 16, 21, 2, 9, 10, 11, 12, 6, 10, 11, 12, 6, 11, 12, 6, 12, 6, 6, 10, 11, 12, 6, 11, 12, 6, 12, 6, 6, 11, 12, 6, 12, 6, 6, 12, 6, 6, 6, 13, 7, 13, 14, 14, 28, 29, 30, 31, 31, 31, 30, 15, 32, 33, 34, 35, 30, 33, 2, 2, 2, 36, 36, 36, 37, 25, 11, 38, 38, 2, 39, 40, 15, 41, 41, 26, 42, 43, 2, 26, 44, 26, 16, 45, 45, 10, 11, 12, 6, 11, 12, 6, 12, 6, 6, 11, 12, 6, 12, 6, 6, 12, 6, 6, 6, 11, 12, 6, 12, 6, 6, 12, 6, 6, 6, 12, 6, 6, 6, 6, 46, 47, 48, 17, 33, 32, 32, 49, 49, 49, 33, 33, 24, 36, 2, 36, 2, 36, 18, 23, 15, 37, 2, 2, 50, 51, 52, 42, 21, 26, 41, 41, 27, 41, 26, 40, 2, 40, 41, 42, 16, 44, 15, 26, 45, 11, 12, 6, 12, 6, 6, 12, 6, 6, 6, 12, 6, 6, 6, 6, 12, 6, 6, 6, 6, 6, 28, 28, 28, 53, 30, 32, 32, 36, 2, 15, 18, 18, 15, 54, 2, 55, 56, 41, 57, 51, 2, 51, 26, 41, 41, 41, 42, 40, 42, 16, 21, 2, 58, 15, 41, 58, 12, 6, 6, 6, 6, 6, 6, 50, 50, 18, 43, 59, 60, 2, 55, 61, 50, 62, 2, 2, 55, 57, 41, 51, 42, 58, 45, 26, 41, 41, 6, 30, 30, 2, 60, 63, 60, 62, 55, 64, 62, 62, 61, 65, 55, 41, 41, 60, 55, 66, 48, 63, 62, 62, 62, 67, 66, 66, 55, 62, 48, 66, 66, 62, 
9299:                    };*/
9300:
9301:            static {
9302:                try {
9303:                    DataInputStream s = new DataInputStream(
9304:                            new BufferedInputStream(Parser.class
9305:                                    .getResourceAsStream("parser.dat")));
9306:
9307:                    // read actionTable
9308:                    int length = s.readInt();
9309:                    actionTable = new int[length][][];
9310:                    for (int i = 0; i < actionTable.length; i++) {
9311:                        length = s.readInt();
9312:                        actionTable[i] = new int[length][3];
9313:                        for (int j = 0; j < actionTable[i].length; j++) {
9314:                            for (int k = 0; k < 3; k++) {
9315:                                actionTable[i][j][k] = s.readInt();
9316:                            }
9317:                        }
9318:                    }
9319:
9320:                    // read gotoTable
9321:                    length = s.readInt();
9322:                    gotoTable = new int[length][][];
9323:                    for (int i = 0; i < gotoTable.length; i++) {
9324:                        length = s.readInt();
9325:                        gotoTable[i] = new int[length][2];
9326:                        for (int j = 0; j < gotoTable[i].length; j++) {
9327:                            for (int k = 0; k < 2; k++) {
9328:                                gotoTable[i][j][k] = s.readInt();
9329:                            }
9330:                        }
9331:                    }
9332:
9333:                    // read errorMessages
9334:                    length = s.readInt();
9335:                    errorMessages = new String[length];
9336:                    for (int i = 0; i < errorMessages.length; i++) {
9337:                        length = s.readInt();
9338:                        StringBuffer buffer = new StringBuffer();
9339:
9340:                        for (int j = 0; j < length; j++) {
9341:                            buffer.append(s.readChar());
9342:                        }
9343:                        errorMessages[i] = buffer.toString();
9344:                    }
9345:
9346:                    // read errors
9347:                    length = s.readInt();
9348:                    errors = new int[length];
9349:                    for (int i = 0; i < errors.length; i++) {
9350:                        errors[i] = s.readInt();
9351:                    }
9352:
9353:                    s.close();
9354:                } catch (Exception e) {
9355:                    throw new RuntimeException(
9356:                            "The file \"parser.dat\" is either missing or corrupted.");
9357:                }
9358:            }
9359:        }
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.