From 40346b2a0b331be78e458cbc7b917620705b11f3 Mon Sep 17 00:00:00 2001 From: JanUlrich Date: Fri, 14 Mar 2014 14:09:03 +0100 Subject: [PATCH] =?UTF-8?q?Neue=20Klasse=20f=C3=BCr=20Interface=20eingef?= =?UTF-8?q?=C3=BChrt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bin/mycompiler/myparser/JavaParser.jay | 4 +- src/mycompiler/myclass/Interface.java | 7 +- src/mycompiler/myinterface/InterfaceBody.java | 1 - src/mycompiler/myparser/JavaParser.java | 2379 +-- src/mycompiler/myparser/JavaParser.jay | 4 +- .../test/lambda/testResults/LambdaTest.log | 166 +- tools/y.output | 13870 ++++++++-------- 7 files changed, 8477 insertions(+), 7954 deletions(-) diff --git a/bin/mycompiler/myparser/JavaParser.jay b/bin/mycompiler/myparser/JavaParser.jay index 8b53e82f..27d756b1 100755 --- a/bin/mycompiler/myparser/JavaParser.jay +++ b/bin/mycompiler/myparser/JavaParser.jay @@ -394,12 +394,12 @@ typedeclaration :classdeclaration { $$=$1; } -/* | interfacedeclaration + | interfacedeclaration { // SCJU: Interface $$=$1; } -*/ + qualifiedname : name '.' IDENTIFIER { diff --git a/src/mycompiler/myclass/Interface.java b/src/mycompiler/myclass/Interface.java index c5915b59..4434b55b 100644 --- a/src/mycompiler/myclass/Interface.java +++ b/src/mycompiler/myclass/Interface.java @@ -12,12 +12,9 @@ import mycompiler.mytype.Type; */ public class Interface extends Class { - public Interface(String name, Modifiers mod, ClassBody cb, Vector ct, - Vector usedIdsToCheck, UsedId superclass, - Vector superif, Vector paralist) { - super(name, mod, cb, ct, usedIdsToCheck, superclass, superif, paralist); + public Interface(String name){ + super(name); } - } diff --git a/src/mycompiler/myinterface/InterfaceBody.java b/src/mycompiler/myinterface/InterfaceBody.java index 54d904ea..35123ef2 100755 --- a/src/mycompiler/myinterface/InterfaceBody.java +++ b/src/mycompiler/myinterface/InterfaceBody.java @@ -9,7 +9,6 @@ import mycompiler.myclass.Field; import mycompiler.mybytecode.ClassFile; import mycompiler.myclass.Constant; -import mycompiler.myclass.FieldDecl; import mycompiler.myclass.Method; import mycompiler.myexception.JVMCodeException; import mycompiler.mymodifier.Modifiers; diff --git a/src/mycompiler/myparser/JavaParser.java b/src/mycompiler/myparser/JavaParser.java index a0406caf..d368209d 100644 --- a/src/mycompiler/myparser/JavaParser.java +++ b/src/mycompiler/myparser/JavaParser.java @@ -266,7 +266,7 @@ public Vector testPair = new Vector(); */ //t protected jay.yydebug.yyDebug yydebug; - protected static final int yyFinal = 8; + protected static final int yyFinal = 9; //t public static final String yyRule [] = { //t "$accept : compilationunit", //t "compilationunit : typedeclarations", @@ -279,6 +279,7 @@ public Vector testPair = new Vector(); //t "name : qualifiedname", //t "name : simplename", //t "typedeclaration : classdeclaration", +//t "typedeclaration : interfacedeclaration", //t "qualifiedname : name '.' IDENTIFIER", //t "importqualifiedname : name '.' IDENTIFIER", //t "importqualifiedname : name '.' '*'", @@ -812,6 +813,13 @@ case 10: } break; case 11: + // line 398 "./../src/mycompiler/myparser/JavaParser.jay" + { + /* SCJU: Interface*/ + yyVal=((Interface)yyVals[0+yyTop]); + } + break; +case 12: // line 405 "./../src/mycompiler/myparser/JavaParser.jay" { ((UsedId)yyVals[-2+yyTop]).set_Name(((Token)yyVals[0+yyTop]).getLexem()); @@ -819,7 +827,7 @@ case 11: yyVal=((UsedId)yyVals[-2+yyTop]); } break; -case 12: +case 13: // line 412 "./../src/mycompiler/myparser/JavaParser.jay" { ((UsedId)yyVals[-2+yyTop]).set_Name(((Token)yyVals[0+yyTop]).getLexem()); @@ -827,7 +835,7 @@ case 12: yyVal=((UsedId)yyVals[-2+yyTop]); } break; -case 13: +case 14: // line 418 "./../src/mycompiler/myparser/JavaParser.jay" { ((UsedId)yyVals[-2+yyTop]).set_Name("*"); @@ -835,7 +843,7 @@ case 13: yyVal=((UsedId)yyVals[-2+yyTop]); } break; -case 14: +case 15: // line 426 "./../src/mycompiler/myparser/JavaParser.jay" { UsedId UI = new UsedId(((Token)yyVals[0+yyTop]).getOffset()); @@ -844,7 +852,7 @@ case 14: yyVal = UI; } break; -case 15: +case 16: // line 434 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Um das hier uebersichtlicher zu halten,*/ @@ -863,7 +871,7 @@ case 15: this.initUsedIdsToCheck(); } break; -case 16: +case 17: // line 451 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new Class(((ClassAndParameter)yyVals[-1+yyTop]).getName(), ((Modifiers)yyVals[-3+yyTop]), ((ClassBody)yyVals[0+yyTop]), containedTypes,usedIdsToCheck, null, null, ((ClassAndParameter)yyVals[-1+yyTop]).getParaVector()); @@ -871,7 +879,7 @@ case 16: this.initUsedIdsToCheck(); } break; -case 17: +case 18: // line 457 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new Class(((ClassAndParameter)yyVals[-2+yyTop]).getName(), null, ((ClassBody)yyVals[0+yyTop]), containedTypes,usedIdsToCheck, ((UsedId)yyVals[-1+yyTop]), null, ((ClassAndParameter)yyVals[-2+yyTop]).getParaVector()); @@ -879,7 +887,7 @@ case 17: this.initUsedIdsToCheck(); } break; -case 18: +case 19: // line 463 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new Class(((ClassAndParameter)yyVals[-2+yyTop]).getName(), ((Modifiers)yyVals[-4+yyTop]), ((ClassBody)yyVals[0+yyTop]), containedTypes, usedIdsToCheck, ((UsedId)yyVals[-1+yyTop]), null, ((ClassAndParameter)yyVals[-2+yyTop]).getParaVector()); @@ -887,7 +895,7 @@ case 18: this.initUsedIdsToCheck(); } break; -case 19: +case 20: // line 470 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new Class(((ClassAndParameter)yyVals[-2+yyTop]).getName(), null, ((ClassBody)yyVals[0+yyTop]), containedTypes, usedIdsToCheck, null, ((InterfaceList)yyVals[-1+yyTop]).getVector(), ((ClassAndParameter)yyVals[-2+yyTop]).getParaVector()); @@ -895,7 +903,7 @@ case 19: this.initUsedIdsToCheck(); } break; -case 20: +case 21: // line 476 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new Class(((ClassAndParameter)yyVals[-2+yyTop]).getName(), ((Modifiers)yyVals[-4+yyTop]), ((ClassBody)yyVals[0+yyTop]), containedTypes, usedIdsToCheck, null, ((InterfaceList)yyVals[-1+yyTop]).getVector(), ((ClassAndParameter)yyVals[-2+yyTop]).getParaVector()); @@ -903,7 +911,7 @@ case 20: this.initUsedIdsToCheck(); } break; -case 21: +case 22: // line 482 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new Class(((ClassAndParameter)yyVals[-3+yyTop]).getName(), null, ((ClassBody)yyVals[0+yyTop]), containedTypes,usedIdsToCheck, ((UsedId)yyVals[-2+yyTop]), ((InterfaceList)yyVals[-1+yyTop]).getVector(), ((ClassAndParameter)yyVals[-3+yyTop]).getParaVector()); @@ -911,7 +919,7 @@ case 21: this.initUsedIdsToCheck(); } break; -case 22: +case 23: // line 488 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new Class(((ClassAndParameter)yyVals[-3+yyTop]).getName(), ((Modifiers)yyVals[-5+yyTop]), ((ClassBody)yyVals[0+yyTop]), containedTypes, usedIdsToCheck, ((UsedId)yyVals[-2+yyTop]), ((InterfaceList)yyVals[-1+yyTop]).getVector(), ((ClassAndParameter)yyVals[-3+yyTop]).getParaVector()); @@ -919,7 +927,7 @@ case 22: this.initUsedIdsToCheck(); } break; -case 23: +case 24: // line 495 "./../src/mycompiler/myparser/JavaParser.jay" { /* HOTI*/ @@ -927,13 +935,13 @@ case 23: yyVal = new InterfaceAndParameter(((Token)yyVals[0+yyTop]).getLexem()); } break; -case 24: +case 25: // line 501 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new InterfaceAndParameter(((Token)yyVals[-3+yyTop]).getLexem(), ((ParaList)yyVals[-1+yyTop])); } break; -case 25: +case 26: // line 506 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Hilfskonstrukt, um die Grammatik ueberschaubar zu halten*/ @@ -941,13 +949,13 @@ case 25: yyVal = new ClassAndParameter(((Token)yyVals[0+yyTop]).getLexem()); } break; -case 26: +case 27: // line 512 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new ClassAndParameter(((Token)yyVals[-3+yyTop]).getLexem(), ((ParaList)yyVals[-1+yyTop])); } break; -case 27: +case 28: // line 517 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interface*/ @@ -959,7 +967,7 @@ case 27: yyVal = ic; } break; -case 28: +case 29: // line 527 "./../src/mycompiler/myparser/JavaParser.jay" { Interface ic = new Interface(((InterfaceAndParameter)yyVals[-1+yyTop]).getName(), ((Modifiers)yyVals[-3+yyTop])); @@ -970,7 +978,7 @@ case 28: yyVal = ic; } break; -case 29: +case 30: // line 536 "./../src/mycompiler/myparser/JavaParser.jay" { Interface ic = new Interface(((InterfaceAndParameter)yyVals[-2+yyTop]).getName()); @@ -982,7 +990,7 @@ case 29: yyVal = ic; } break; -case 30: +case 31: // line 546 "./../src/mycompiler/myparser/JavaParser.jay" { Interface ic = new Interface(((InterfaceAndParameter)yyVals[-2+yyTop]).getName(), ((Modifiers)yyVals[-4+yyTop])); @@ -994,7 +1002,7 @@ case 30: yyVal = ic; } break; -case 31: +case 32: // line 557 "./../src/mycompiler/myparser/JavaParser.jay" { ParaList pl = new ParaList(); @@ -1007,7 +1015,7 @@ case 31: yyVal = pl; } break; -case 32: +case 33: // line 568 "./../src/mycompiler/myparser/JavaParser.jay" { ParaList pl = new ParaList(); @@ -1018,7 +1026,7 @@ case 32: yyVal = pl; } break; -case 33: +case 34: // line 577 "./../src/mycompiler/myparser/JavaParser.jay" { ParaList pl = new ParaList(); @@ -1026,7 +1034,7 @@ case 33: yyVal = pl; } break; -case 34: +case 35: // line 583 "./../src/mycompiler/myparser/JavaParser.jay" { @@ -1040,7 +1048,7 @@ case 34: yyVal=((ParaList)yyVals[-2+yyTop]); } break; -case 35: +case 36: // line 596 "./../src/mycompiler/myparser/JavaParser.jay" { RefType t = new RefType( ((Token)yyVals[-3+yyTop]).getLexem() ,((Token)yyVals[-3+yyTop]).getOffset() ); @@ -1050,14 +1058,14 @@ case 35: yyVal=((ParaList)yyVals[-5+yyTop]); } break; -case 36: +case 37: // line 604 "./../src/mycompiler/myparser/JavaParser.jay" { ((ParaList)yyVals[-2+yyTop]).getParalist().addElement(((WildcardType)yyVals[0+yyTop])); yyVal=((ParaList)yyVals[-2+yyTop]); } break; -case 37: +case 38: // line 610 "./../src/mycompiler/myparser/JavaParser.jay" { /*Luar 29.11.06 Offset auf -1, da keine Angabe vorhanden*/ @@ -1065,34 +1073,34 @@ case 37: yyVal = wc; } break; -case 38: +case 39: // line 616 "./../src/mycompiler/myparser/JavaParser.jay" { ExtendsWildcardType ewc = new ExtendsWildcardType(((Token)yyVals[-1+yyTop]).getOffset(),((RefType)yyVals[0+yyTop])); yyVal = ewc; } break; -case 39: +case 40: // line 621 "./../src/mycompiler/myparser/JavaParser.jay" { SuperWildcardType swc = new SuperWildcardType(((Token)yyVals[-1+yyTop]).getOffset(),((RefType)yyVals[0+yyTop])); yyVal = swc; } break; -case 40: +case 41: // line 627 "./../src/mycompiler/myparser/JavaParser.jay" { ClassBody CB = new ClassBody(); yyVal = CB; } break; -case 41: +case 42: // line 633 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = ((ClassBody)yyVals[-1+yyTop]); } break; -case 42: +case 43: // line 638 "./../src/mycompiler/myparser/JavaParser.jay" { Modifiers Mod = new Modifiers(); @@ -1100,20 +1108,20 @@ case 42: yyVal = Mod; } break; -case 43: +case 44: // line 644 "./../src/mycompiler/myparser/JavaParser.jay" { ((Modifiers)yyVals[-1+yyTop]).addModifier(((Modifier)yyVals[0+yyTop])); yyVal = ((Modifiers)yyVals[-1+yyTop]); } break; -case 44: +case 45: // line 650 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = ((UsedId)yyVals[0+yyTop]); } break; -case 45: +case 46: // line 655 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interface*/ @@ -1122,27 +1130,27 @@ case 45: yyVal = il; } break; -case 46: +case 47: // line 662 "./../src/mycompiler/myparser/JavaParser.jay" { ((InterfaceList)yyVals[-2+yyTop]).addInterface(((UsedId)yyVals[0+yyTop])); yyVal = ((InterfaceList)yyVals[-2+yyTop]); } break; -case 47: +case 48: // line 668 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interface*/ yyVal = new InterfaceBody(); } break; -case 48: +case 49: // line 673 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = ((InterfaceBody)yyVals[-1+yyTop]); } break; -case 49: +case 50: // line 680 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interface*/ @@ -1151,14 +1159,14 @@ case 49: yyVal = il; } break; -case 50: +case 51: // line 687 "./../src/mycompiler/myparser/JavaParser.jay" { ((InterfaceList)yyVals[-2+yyTop]).addInterface(((UsedId)yyVals[0+yyTop])); yyVal = ((InterfaceList)yyVals[-2+yyTop]); } break; -case 51: +case 52: // line 694 "./../src/mycompiler/myparser/JavaParser.jay" { ClassBody CB = new ClassBody(); @@ -1166,55 +1174,55 @@ case 51: yyVal=CB; } break; -case 52: +case 53: // line 700 "./../src/mycompiler/myparser/JavaParser.jay" { ((ClassBody)yyVals[-1+yyTop]).addField(((Field)yyVals[0+yyTop])); yyVal = ((ClassBody)yyVals[-1+yyTop]); } break; -case 53: +case 54: // line 707 "./../src/mycompiler/myparser/JavaParser.jay" { Public Pub = new Public(); yyVal=Pub; } break; -case 54: +case 55: // line 712 "./../src/mycompiler/myparser/JavaParser.jay" { Protected Pro = new Protected(); yyVal=Pro; } break; -case 55: +case 56: // line 717 "./../src/mycompiler/myparser/JavaParser.jay" { Private Pri = new Private(); yyVal=Pri; } break; -case 56: +case 57: // line 722 "./../src/mycompiler/myparser/JavaParser.jay" { Static Sta = new Static(); yyVal=Sta; } break; -case 57: +case 58: // line 727 "./../src/mycompiler/myparser/JavaParser.jay" { Abstract Abs = new Abstract(); yyVal=Abs; } break; -case 58: +case 59: // line 732 "./../src/mycompiler/myparser/JavaParser.jay" { Final fin = new Final(); yyVal = fin; } break; -case 59: +case 60: // line 738 "./../src/mycompiler/myparser/JavaParser.jay" { /*PL 05-07-30 eingefuegt containedTypes ANFANG*/ @@ -1229,7 +1237,7 @@ case 59: yyVal = ((UsedId)yyVals[0+yyTop]); } break; -case 60: +case 61: // line 753 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interface*/ @@ -1238,39 +1246,39 @@ case 60: yyVal = ib; } break; -case 61: +case 62: // line 760 "./../src/mycompiler/myparser/JavaParser.jay" { ((InterfaceBody)yyVals[-1+yyTop]).addElement(((Field)yyVals[0+yyTop])); yyVal = ((InterfaceBody)yyVals[-1+yyTop]); } break; -case 62: +case 63: // line 766 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interfaces*/ yyVal = ((UsedId)yyVals[0+yyTop]); } break; -case 63: +case 64: // line 772 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Field)yyVals[0+yyTop]); } break; -case 64: +case 65: // line 777 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Method)yyVals[0+yyTop]); } break; -case 65: +case 66: // line 781 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Field)yyVals[0+yyTop]); } break; -case 66: +case 67: // line 786 "./../src/mycompiler/myparser/JavaParser.jay" { if (((ParaList)yyVals[0+yyTop]) != null) { @@ -1282,42 +1290,42 @@ case 66: yyVal=((UsedId)yyVals[-1+yyTop]); } break; -case 67: +case 68: // line 797 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = null; } break; -case 68: +case 69: // line 799 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = ((ParaList)yyVals[-1+yyTop]); } break; -case 69: +case 70: // line 804 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interfaces, Spezialform Konstantendef.*/ yyVal = ((Constant)yyVals[0+yyTop]); } break; -case 70: +case 71: // line 809 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = ((Method)yyVals[0+yyTop]); } break; -case 71: +case 72: // line 814 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Field)yyVals[0+yyTop]); } break; -case 72: +case 73: // line 818 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Method)yyVals[0+yyTop]); } break; -case 73: +case 74: // line 823 "./../src/mycompiler/myparser/JavaParser.jay" { Method STAT = new Method(((Token)yyVals[-1+yyTop]).getOffset()); @@ -1332,14 +1340,14 @@ case 73: yyVal=STAT; } break; -case 74: +case 75: // line 837 "./../src/mycompiler/myparser/JavaParser.jay" { ((Constructor)yyVals[-1+yyTop]).set_Block(((Block)yyVals[0+yyTop])); yyVal = ((Constructor)yyVals[-1+yyTop]); } break; -case 75: +case 76: // line 842 "./../src/mycompiler/myparser/JavaParser.jay" { ((Constructor)yyVals[-1+yyTop]).set_Block(((Block)yyVals[0+yyTop])); @@ -1347,7 +1355,7 @@ case 75: yyVal = ((Constructor)yyVals[-1+yyTop]); } break; -case 76: +case 77: // line 849 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interface*/ @@ -1357,14 +1365,14 @@ case 76: yyVal = c; } break; -case 77: +case 78: // line 858 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interface*/ yyVal = ((Method)yyVals[-1+yyTop]); } break; -case 78: +case 79: // line 871 "./../src/mycompiler/myparser/JavaParser.jay" { FieldDeclaration ret = new FieldDeclaration(((DeclId)yyVals[-2+yyTop]).getOffset()); @@ -1373,26 +1381,26 @@ case 78: yyVal=ret; } break; -case 79: +case 80: // line 879 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((FieldDeclaration)yyVals[-1+yyTop]); } break; -case 80: +case 81: // line 883 "./../src/mycompiler/myparser/JavaParser.jay" { ((FieldDeclaration)yyVals[0+yyTop]).setType(((Type)yyVals[-1+yyTop])); yyVal=((FieldDeclaration)yyVals[0+yyTop]); } break; -case 81: +case 82: // line 889 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((FieldDeclaration)yyVals[-1+yyTop]); } break; -case 82: +case 83: // line 894 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("T->Parser->fielddeclaration ...: type " + ((Type)yyVals[-2+yyTop])); @@ -1400,7 +1408,7 @@ case 82: yyVal = ((FieldDeclaration)yyVals[-1+yyTop]); } break; -case 83: +case 84: // line 901 "./../src/mycompiler/myparser/JavaParser.jay" { ((FieldDeclaration)yyVals[-1+yyTop]).setType(((Type)yyVals[-2+yyTop])); @@ -1411,27 +1419,27 @@ case 83: yyVal = ((FieldDeclaration)yyVals[-1+yyTop]); } break; -case 84: +case 85: // line 911 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[-1+yyTop]).set_Block(((Block)yyVals[0+yyTop])); yyVal=((Method)yyVals[-1+yyTop]); } break; -case 85: +case 86: // line 918 "./../src/mycompiler/myparser/JavaParser.jay" { Block Bl = new Block(); yyVal=Bl; } break; -case 86: +case 87: // line 924 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Block)yyVals[-1+yyTop]); } break; -case 87: +case 88: // line 929 "./../src/mycompiler/myparser/JavaParser.jay" { Constructor CON = new Constructor(null); /*TODO: Der Parser kann sowieso nicht zwischen einem Konstruktor und einer Methode unterscheiden. Das hier kann wegfallen...*/ @@ -1441,7 +1449,7 @@ case 87: yyVal=CON; } break; -case 88: +case 89: // line 937 "./../src/mycompiler/myparser/JavaParser.jay" { Constructor CONpara = new Constructor(null); @@ -1452,14 +1460,14 @@ case 88: yyVal=CONpara; } break; -case 89: +case 90: // line 947 "./../src/mycompiler/myparser/JavaParser.jay" { Block CBL = new Block(); yyVal=CBL; } break; -case 90: +case 91: // line 952 "./../src/mycompiler/myparser/JavaParser.jay" { Block CBLexpl = new Block(); @@ -1467,13 +1475,13 @@ case 90: yyVal=CBLexpl; } break; -case 91: +case 92: // line 958 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Block)yyVals[-1+yyTop]); } break; -case 92: +case 93: // line 962 "./../src/mycompiler/myparser/JavaParser.jay" { Block CBes = new Block(); @@ -1485,7 +1493,7 @@ case 92: yyVal=CBes; } break; -case 93: +case 94: // line 973 "./../src/mycompiler/myparser/JavaParser.jay" { ExceptionList EL = new ExceptionList(); @@ -1493,13 +1501,13 @@ case 93: yyVal=EL; } break; -case 94: +case 95: // line 980 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = ((GenericTypeVar)yyVals[0+yyTop]); } break; -case 95: +case 96: // line 985 "./../src/mycompiler/myparser/JavaParser.jay" { ParaList p = new ParaList(); @@ -1507,20 +1515,20 @@ case 95: yyVal=p; } break; -case 96: +case 97: // line 991 "./../src/mycompiler/myparser/JavaParser.jay" { ((ParaList)yyVals[-2+yyTop]).add_ParaList(((GenericTypeVar)yyVals[0+yyTop])); yyVal=((ParaList)yyVals[-2+yyTop]); } break; -case 97: +case 98: // line 998 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=new GenericTypeVar(((Token)yyVals[0+yyTop]).getLexem(),((Token)yyVals[0+yyTop]).getOffset()); } break; -case 98: +case 99: // line 1002 "./../src/mycompiler/myparser/JavaParser.jay" { BoundedGenericTypeVar gtv=new BoundedGenericTypeVar(((Token)yyVals[-2+yyTop]).getLexem(),((Token)yyVals[-2+yyTop]).getOffset()); @@ -1528,7 +1536,7 @@ case 98: yyVal=gtv; } break; -case 99: +case 100: // line 1009 "./../src/mycompiler/myparser/JavaParser.jay" { Vector vec=new Vector(); @@ -1537,7 +1545,7 @@ case 99: yyVal=vec; } break; -case 100: +case 101: // line 1016 "./../src/mycompiler/myparser/JavaParser.jay" { ((Vector)yyVals[-2+yyTop]).addElement(((RefType)yyVals[0+yyTop])); @@ -1545,7 +1553,7 @@ case 100: yyVal=((Vector)yyVals[-2+yyTop]); } break; -case 101: +case 102: // line 1023 "./../src/mycompiler/myparser/JavaParser.jay" { Vector vec=new Vector(); @@ -1553,14 +1561,14 @@ case 101: yyVal=vec; } break; -case 102: +case 103: // line 1029 "./../src/mycompiler/myparser/JavaParser.jay" { ((Vector)yyVals[-2+yyTop]).addElement(((GenericTypeVar)yyVals[0+yyTop])); yyVal=((Vector)yyVals[-2+yyTop]); } break; -case 103: +case 104: // line 1037 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[0+yyTop]).setType(((Type)yyVals[-1+yyTop])); @@ -1568,14 +1576,14 @@ case 103: yyVal=((Method)yyVals[0+yyTop]); } break; -case 104: +case 105: // line 1043 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[0+yyTop]).setType(((Type)yyVals[-1+yyTop])); yyVal=((Method)yyVals[0+yyTop]); } break; -case 105: +case 106: // line 1048 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[0+yyTop]).set_Modifiers(((Modifiers)yyVals[-2+yyTop])); @@ -1583,7 +1591,7 @@ case 105: yyVal=((Method)yyVals[0+yyTop]); } break; -case 106: +case 107: // line 1054 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[0+yyTop]).set_Modifiers(((Modifiers)yyVals[-5+yyTop])); @@ -1592,7 +1600,7 @@ case 106: yyVal=((Method)yyVals[0+yyTop]); } break; -case 107: +case 108: // line 1061 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[-1+yyTop]).setType(((Type)yyVals[-2+yyTop])); @@ -1600,7 +1608,7 @@ case 107: yyVal=((Method)yyVals[-1+yyTop]); } break; -case 108: +case 109: // line 1067 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[-1+yyTop]).setGenericMethodParameters(((Vector)yyVals[-4+yyTop])); @@ -1609,7 +1617,7 @@ case 108: yyVal=((Method)yyVals[-1+yyTop]); } break; -case 109: +case 110: // line 1074 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[-1+yyTop]).set_Modifiers(((Modifiers)yyVals[-3+yyTop])); @@ -1618,7 +1626,7 @@ case 109: yyVal=((Method)yyVals[-1+yyTop]); } break; -case 110: +case 111: // line 1081 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[-1+yyTop]).set_Modifiers(((Modifiers)yyVals[-6+yyTop])); @@ -1628,7 +1636,7 @@ case 110: yyVal=((Method)yyVals[-1+yyTop]); } break; -case 111: +case 112: // line 1089 "./../src/mycompiler/myparser/JavaParser.jay" { Void Voit = new Void(((Token)yyVals[-1+yyTop]).getOffset()); @@ -1636,7 +1644,7 @@ case 111: yyVal=((Method)yyVals[0+yyTop]); } break; -case 112: +case 113: // line 1095 "./../src/mycompiler/myparser/JavaParser.jay" { Void voit = new Void(((Token)yyVals[-1+yyTop]).getOffset()); @@ -1645,7 +1653,7 @@ case 112: yyVal=((Method)yyVals[0+yyTop]); } break; -case 113: +case 114: // line 1102 "./../src/mycompiler/myparser/JavaParser.jay" { Void voyt = new Void(((Token)yyVals[-2+yyTop]).getOffset()); @@ -1654,7 +1662,7 @@ case 113: yyVal=((Method)yyVals[-1+yyTop]); } break; -case 114: +case 115: // line 1109 "./../src/mycompiler/myparser/JavaParser.jay" { Void voyd = new Void(((Token)yyVals[-2+yyTop]).getOffset()); @@ -1664,7 +1672,7 @@ case 114: yyVal=((Method)yyVals[-1+yyTop]); } break; -case 115: +case 116: // line 1117 "./../src/mycompiler/myparser/JavaParser.jay" { Void Voit = new Void(((Token)yyVals[-1+yyTop]).getOffset()); @@ -1673,7 +1681,7 @@ case 115: yyVal=((Method)yyVals[0+yyTop]); } break; -case 116: +case 117: // line 1124 "./../src/mycompiler/myparser/JavaParser.jay" { Void voit = new Void(((Token)yyVals[-1+yyTop]).getOffset()); @@ -1683,7 +1691,7 @@ case 116: yyVal=((Method)yyVals[0+yyTop]); } break; -case 117: +case 118: // line 1132 "./../src/mycompiler/myparser/JavaParser.jay" { Void voyt = new Void(((Token)yyVals[-2+yyTop]).getOffset()); @@ -1693,7 +1701,7 @@ case 117: yyVal=((Method)yyVals[-1+yyTop]); } break; -case 118: +case 119: // line 1140 "./../src/mycompiler/myparser/JavaParser.jay" { Void voyd = new Void(((Token)yyVals[-2+yyTop]).getOffset()); @@ -1704,14 +1712,14 @@ case 118: yyVal=((Method)yyVals[-1+yyTop]); } break; -case 119: +case 120: // line 1150 "./../src/mycompiler/myparser/JavaParser.jay" { /*auskommentiert von Andreas Stadelmeier (a10023) $1.setType(TypePlaceholder.fresh()); */ yyVal=((Method)yyVals[0+yyTop]); } break; -case 120: +case 121: // line 1155 "./../src/mycompiler/myparser/JavaParser.jay" { /*auskommentiert von Andreas Stadelmeier (a10023) $4.setType(TypePlaceholder.fresh());*/ @@ -1719,7 +1727,7 @@ case 120: yyVal=((Method)yyVals[0+yyTop]); } break; -case 121: +case 122: // line 1162 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[0+yyTop]).set_Modifiers(((Modifiers)yyVals[-1+yyTop])); @@ -1727,7 +1735,7 @@ case 121: yyVal=((Method)yyVals[0+yyTop]); } break; -case 122: +case 123: // line 1168 "./../src/mycompiler/myparser/JavaParser.jay" { /*auskommentiert von Andreas Stadelmeier (a10023) $1.setType(TypePlaceholder.fresh());*/ @@ -1735,7 +1743,7 @@ case 122: yyVal=((Method)yyVals[-1+yyTop]); } break; -case 123: +case 124: // line 1174 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[-1+yyTop]).set_Modifiers(((Modifiers)yyVals[-2+yyTop])); @@ -1744,31 +1752,31 @@ case 123: yyVal=((Method)yyVals[-1+yyTop]); } break; -case 124: +case 125: // line 1183 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((BaseType)yyVals[0+yyTop]); } break; -case 125: +case 126: // line 1187 "./../src/mycompiler/myparser/JavaParser.jay" { ((BaseType)yyVals[-2+yyTop]).setArray(true); } break; -case 126: +case 127: // line 1191 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((RefType)yyVals[0+yyTop]); } break; -case 127: +case 128: // line 1195 "./../src/mycompiler/myparser/JavaParser.jay" { ((RefType)yyVals[-2+yyTop]).setArray(true); } break; -case 128: +case 129: // line 1199 "./../src/mycompiler/myparser/JavaParser.jay" { FieldDeclaration IVD = new FieldDeclaration(((DeclId)yyVals[0+yyTop]).getOffset()); @@ -1777,20 +1785,20 @@ case 128: yyVal = IVD; } break; -case 129: +case 130: // line 1206 "./../src/mycompiler/myparser/JavaParser.jay" { ((FieldDeclaration)yyVals[-2+yyTop]).getDeclIdVector().addElement(((DeclId)yyVals[0+yyTop])); yyVal=((FieldDeclaration)yyVals[-2+yyTop]); } break; -case 130: +case 131: // line 1212 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Block)yyVals[0+yyTop]); } break; -case 131: +case 132: // line 1217 "./../src/mycompiler/myparser/JavaParser.jay" { Block Blstat = new Block(); @@ -1798,14 +1806,14 @@ case 131: yyVal=Blstat; } break; -case 132: +case 133: // line 1224 "./../src/mycompiler/myparser/JavaParser.jay" { ((Block)yyVals[-1+yyTop]).set_Statement(((Statement)yyVals[0+yyTop])); yyVal=((Block)yyVals[-1+yyTop]); } break; -case 133: +case 134: // line 1230 "./../src/mycompiler/myparser/JavaParser.jay" { ParameterList PL = new ParameterList(); @@ -1813,21 +1821,21 @@ case 133: yyVal = PL; } break; -case 134: +case 135: // line 1236 "./../src/mycompiler/myparser/JavaParser.jay" { ((ParameterList)yyVals[-2+yyTop]).set_AddParameter(((FormalParameter)yyVals[0+yyTop])); yyVal = ((ParameterList)yyVals[-2+yyTop]); } break; -case 135: +case 136: // line 1242 "./../src/mycompiler/myparser/JavaParser.jay" { This THCON = new This(((Token)yyVals[-3+yyTop]).getOffset(),((Token)yyVals[-3+yyTop]).getLexem().length()); yyVal=THCON; } break; -case 136: +case 137: // line 1247 "./../src/mycompiler/myparser/JavaParser.jay" { This THCONargl = new This(((Token)yyVals[-4+yyTop]).getOffset(),((Token)yyVals[-4+yyTop]).getLexem().length()); @@ -1835,7 +1843,7 @@ case 136: yyVal=THCONargl; } break; -case 137: +case 138: // line 1256 "./../src/mycompiler/myparser/JavaParser.jay" { RefType RT = new RefType(-1); @@ -1844,7 +1852,7 @@ case 137: yyVal=RT; } break; -case 138: +case 139: // line 1263 "./../src/mycompiler/myparser/JavaParser.jay" { ((RefType)yyVals[-2+yyTop]).set_UsedId(((UsedId)yyVals[0+yyTop])); @@ -1852,7 +1860,7 @@ case 138: yyVal=((RefType)yyVals[-2+yyTop]); } break; -case 139: +case 140: // line 1270 "./../src/mycompiler/myparser/JavaParser.jay" { Method met = new Method(((Token)yyVals[-2+yyTop]).getOffset()); @@ -1867,7 +1875,7 @@ case 139: yyVal = met; } break; -case 140: +case 141: // line 1283 "./../src/mycompiler/myparser/JavaParser.jay" { Method met_para = new Method(((Token)yyVals[-3+yyTop]).getOffset()); @@ -1883,7 +1891,7 @@ case 140: yyVal = met_para; } break; -case 141: +case 142: // line 1298 "./../src/mycompiler/myparser/JavaParser.jay" { BooleanType BT = new BooleanType(); @@ -1894,13 +1902,13 @@ case 141: yyVal=BT; } break; -case 142: +case 143: // line 1307 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((BaseType)yyVals[0+yyTop]); } break; -case 143: +case 144: // line 1313 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("T->Parser->referenctype: " + ((UsedId)yyVals[0+yyTop])); @@ -1920,25 +1928,25 @@ case 143: yyVal=RT; } break; -case 144: +case 145: // line 1333 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((DeclId)yyVals[0+yyTop]); } break; -case 145: +case 146: // line 1354 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((LocalVarDecl)yyVals[0+yyTop]); } break; -case 146: +case 147: // line 1358 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Statement)yyVals[0+yyTop]); } break; -case 147: +case 148: // line 1363 "./../src/mycompiler/myparser/JavaParser.jay" { FormalParameter FP = new FormalParameter(); @@ -1947,7 +1955,7 @@ case 147: yyVal=FP; } break; -case 148: +case 149: // line 1388 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("\nFunktionsdeklaration mit typlosen Parametern: " + ((DeclId)yyVals[0+yyTop]).name); @@ -1967,7 +1975,7 @@ case 148: yyVal=FP; } break; -case 149: +case 150: // line 1407 "./../src/mycompiler/myparser/JavaParser.jay" { ArgumentList AL = new ArgumentList(); @@ -1975,20 +1983,20 @@ case 149: yyVal=AL; } break; -case 150: +case 151: // line 1413 "./../src/mycompiler/myparser/JavaParser.jay" { ((ArgumentList)yyVals[-2+yyTop]).expr.addElement(((Expr)yyVals[0+yyTop])); yyVal=((ArgumentList)yyVals[-2+yyTop]); } break; -case 151: +case 152: // line 1419 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((BaseType)yyVals[0+yyTop]); } break; -case 152: +case 153: // line 1424 "./../src/mycompiler/myparser/JavaParser.jay" { DeclId DI = new DeclId(); @@ -2001,61 +2009,61 @@ case 152: yyVal=DI; } break; -case 153: +case 154: // line 1436 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 154: +case 155: // line 1441 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((LocalVarDecl)yyVals[-1+yyTop]); } break; -case 155: +case 156: // line 1446 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Statement)yyVals[0+yyTop]); } break; -case 156: +case 157: // line 1450 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((IfStmt)yyVals[0+yyTop]); } break; -case 157: +case 158: // line 1454 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((IfStmt)yyVals[0+yyTop]); } break; -case 158: +case 159: // line 1458 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((WhileStmt)yyVals[0+yyTop]); } break; -case 159: +case 160: // line 1462 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((ForStmt)yyVals[0+yyTop]); } break; -case 160: +case 161: // line 1467 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 161: +case 162: // line 1471 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((NewClass)yyVals[0+yyTop]); } break; -case 162: +case 163: // line 1476 "./../src/mycompiler/myparser/JavaParser.jay" { IntegerType IT = new IntegerType(); @@ -2066,7 +2074,7 @@ case 162: yyVal=IT; } break; -case 163: +case 164: // line 1485 "./../src/mycompiler/myparser/JavaParser.jay" { CharacterType CT = new CharacterType(); @@ -2077,7 +2085,7 @@ case 163: yyVal=CT; } break; -case 164: +case 165: // line 1495 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("P -> Lokale Variable angelegt!"); @@ -2087,7 +2095,7 @@ case 164: yyVal = LVD; } break; -case 165: +case 166: // line 1506 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("P -> Lokale Variable angelegt!"); @@ -2097,31 +2105,31 @@ case 165: yyVal = LVD; } break; -case 166: +case 167: // line 1516 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Block)yyVals[0+yyTop]); } break; -case 167: +case 168: // line 1520 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((EmptyStmt)yyVals[0+yyTop]); } break; -case 168: +case 169: // line 1524 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((ExprStmt)yyVals[0+yyTop]); } break; -case 169: +case 170: // line 1528 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Return)yyVals[0+yyTop]); } break; -case 170: +case 171: // line 1533 "./../src/mycompiler/myparser/JavaParser.jay" { IfStmt Ifst = new IfStmt(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -2130,7 +2138,7 @@ case 170: yyVal=Ifst; } break; -case 171: +case 172: // line 1541 "./../src/mycompiler/myparser/JavaParser.jay" { IfStmt IfstElst = new IfStmt(((Expr)yyVals[-4+yyTop]).getOffset(),((Expr)yyVals[-4+yyTop]).getVariableLength()); @@ -2140,7 +2148,7 @@ case 171: yyVal=IfstElst; } break; -case 172: +case 173: // line 1550 "./../src/mycompiler/myparser/JavaParser.jay" { WhileStmt Whlst = new WhileStmt(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -2149,7 +2157,7 @@ case 172: yyVal=Whlst; } break; -case 173: +case 174: // line 1561 "./../src/mycompiler/myparser/JavaParser.jay" { ForStmt Fst = new ForStmt(((Expr)yyVals[-6+yyTop]).getOffset(),((Expr)yyVals[-6+yyTop]).getVariableLength()); @@ -2162,7 +2170,7 @@ case 173: yyVal = Fst; } break; -case 174: +case 175: // line 1573 "./../src/mycompiler/myparser/JavaParser.jay" { ForStmt Fst = new ForStmt(((Expr)yyVals[-5+yyTop]).getOffset(),((Expr)yyVals[-5+yyTop]).getVariableLength()); @@ -2174,7 +2182,7 @@ case 174: yyVal = Fst; } break; -case 175: +case 176: // line 1584 "./../src/mycompiler/myparser/JavaParser.jay" { ForStmt Fst = new ForStmt(((Expr)yyVals[-5+yyTop]).getOffset(),((Expr)yyVals[-5+yyTop]).getVariableLength()); @@ -2186,7 +2194,7 @@ case 175: yyVal = Fst; } break; -case 176: +case 177: // line 1595 "./../src/mycompiler/myparser/JavaParser.jay" { ForStmt Fst = new ForStmt(((Expr)yyVals[-4+yyTop]).getOffset(),((Expr)yyVals[-4+yyTop]).getVariableLength()); @@ -2198,7 +2206,7 @@ case 176: yyVal = Fst; } break; -case 177: +case 178: // line 1606 "./../src/mycompiler/myparser/JavaParser.jay" { ForStmt Fst = new ForStmt(((Expr)yyVals[-4+yyTop]).getOffset(),((Expr)yyVals[-4+yyTop]).getVariableLength()); @@ -2209,7 +2217,7 @@ case 177: yyVal = Fst; } break; -case 178: +case 179: // line 1616 "./../src/mycompiler/myparser/JavaParser.jay" { ForStmt Fst = new ForStmt(((Expr)yyVals[-3+yyTop]).getOffset(),((Expr)yyVals[-3+yyTop]).getVariableLength()); @@ -2220,7 +2228,7 @@ case 178: yyVal = Fst; } break; -case 179: +case 180: // line 1626 "./../src/mycompiler/myparser/JavaParser.jay" { ForStmt Fst = new ForStmt(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -2231,7 +2239,7 @@ case 179: yyVal = Fst; } break; -case 180: +case 181: // line 1636 "./../src/mycompiler/myparser/JavaParser.jay" { ForStmt Fst = new ForStmt(((Statement)yyVals[0+yyTop]).getOffset(),((Statement)yyVals[0+yyTop]).getVariableLength()); @@ -2241,40 +2249,40 @@ case 180: yyVal = Fst; } break; -case 181: +case 182: // line 1645 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("conditionalexpression"); yyVal=((Expr)yyVals[0+yyTop]); } break; -case 182: +case 183: // line 1650 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Assign)yyVals[0+yyTop]); } break; -case 183: +case 184: // line 1656 "./../src/mycompiler/myparser/JavaParser.jay" { EmptyStmt Empst = new EmptyStmt(); yyVal=Empst; } break; -case 184: +case 185: // line 1662 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[-1+yyTop]); } break; -case 185: +case 186: // line 1667 "./../src/mycompiler/myparser/JavaParser.jay" { Return ret = new Return(-1,-1); yyVal= ret; } break; -case 186: +case 187: // line 1672 "./../src/mycompiler/myparser/JavaParser.jay" { Return retexp = new Return(((Expr)yyVals[-1+yyTop]).getOffset(),((Expr)yyVals[-1+yyTop]).getVariableLength()); @@ -2282,31 +2290,31 @@ case 186: yyVal=retexp; } break; -case 187: +case 188: // line 1679 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Statement)yyVals[0+yyTop]); } break; -case 188: +case 189: // line 1683 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((IfStmt)yyVals[0+yyTop]); } break; -case 189: +case 190: // line 1687 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((WhileStmt)yyVals[0+yyTop]); } break; -case 190: +case 191: // line 1692 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 191: +case 192: // line 1698 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("\nParser --> Zuweisung1!\n"); @@ -2333,7 +2341,7 @@ case 191: yyVal=Ass; } break; -case 192: +case 193: // line 1723 "./../src/mycompiler/myparser/JavaParser.jay" { Assign Ass =new Assign(((UsedId)yyVals[-2+yyTop]).getOffset(),((UsedId)yyVals[-2+yyTop]).getVariableLength()); @@ -2357,43 +2365,43 @@ case 192: yyVal=Ass; } break; -case 193: +case 194: // line 1746 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Assign)yyVals[0+yyTop]); } break; -case 194: +case 195: // line 1750 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 195: +case 196: // line 1754 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 196: +case 197: // line 1758 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 197: +case 198: // line 1762 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 198: +case 199: // line 1766 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((MethodCall)yyVals[0+yyTop]); } break; -case 199: +case 200: // line 1777 "./../src/mycompiler/myparser/JavaParser.jay" { IfStmt IfElno = new IfStmt(((Expr)yyVals[-4+yyTop]).getOffset(),((Expr)yyVals[-4+yyTop]).getVariableLength()); @@ -2403,7 +2411,7 @@ case 199: yyVal=IfElno; } break; -case 200: +case 201: // line 1786 "./../src/mycompiler/myparser/JavaParser.jay" { WhileStmt Whstno = new WhileStmt(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -2412,13 +2420,13 @@ case 200: yyVal=Whstno; } break; -case 201: +case 202: // line 1794 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 202: +case 203: // line 1798 "./../src/mycompiler/myparser/JavaParser.jay" { Binary LogOr = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -2430,19 +2438,19 @@ case 202: yyVal=LogOr; } break; -case 203: +case 204: // line 1811 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=null; } break; -case 204: +case 205: // line 1816 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Block)yyVals[0+yyTop]); } break; -case 205: +case 206: // line 1820 "./../src/mycompiler/myparser/JavaParser.jay" { /*Lambdabody kann auch nur aus einer Expression bestehen. In diesem Fall wird ein Block erstellt, welcher als einziges Statement ein return statment mit der expression hat.*/ @@ -2453,19 +2461,19 @@ case 205: yyVal=ret; } break; -case 206: +case 207: // line 1830 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=null; } break; -case 207: +case 208: // line 1834 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((ParameterList)yyVals[-1+yyTop]); } break; -case 208: +case 209: // line 1839 "./../src/mycompiler/myparser/JavaParser.jay" { LambdaExpression lambda = new LambdaExpression(/*((ParameSterList)$2).getOffset(),((ParameterList)$2).getVariableLength()*/0,0); @@ -2474,54 +2482,54 @@ case 208: yyVal=lambda; } break; -case 209: +case 210: // line 1858 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((UsedId)yyVals[0+yyTop]); } break; -case 210: +case 211: // line 1863 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=null; } break; -case 211: +case 212: // line 1867 "./../src/mycompiler/myparser/JavaParser.jay" { TimesOp TEO = new TimesOp(-1,-1); yyVal=TEO; } break; -case 212: +case 213: // line 1872 "./../src/mycompiler/myparser/JavaParser.jay" { DivideOp DEO = new DivideOp(-1,-1); yyVal=DEO; } break; -case 213: +case 214: // line 1877 "./../src/mycompiler/myparser/JavaParser.jay" { ModuloOp MEO = new ModuloOp(-1,-1); yyVal=MEO; } break; -case 214: +case 215: // line 1882 "./../src/mycompiler/myparser/JavaParser.jay" { PlusOp PEO = new PlusOp(-1,-1); yyVal=PEO; } break; -case 215: +case 216: // line 1887 "./../src/mycompiler/myparser/JavaParser.jay" { MinusOp MEO = new MinusOp(-1,-1); yyVal=MEO; } break; -case 216: +case 217: // line 1899 "./../src/mycompiler/myparser/JavaParser.jay" { PreIncExpr PRINC = new PreIncExpr(((Expr)yyVals[0+yyTop]).getOffset(),((Expr)yyVals[0+yyTop]).getVariableLength()); @@ -2529,7 +2537,7 @@ case 216: yyVal=PRINC; } break; -case 217: +case 218: // line 1906 "./../src/mycompiler/myparser/JavaParser.jay" { PreDecExpr PRDEC = new PreDecExpr(((Expr)yyVals[0+yyTop]).getOffset(),((Expr)yyVals[0+yyTop]).getVariableLength()); @@ -2537,7 +2545,7 @@ case 217: yyVal=PRDEC; } break; -case 218: +case 219: // line 1913 "./../src/mycompiler/myparser/JavaParser.jay" { PostIncExpr PIE = new PostIncExpr(((Expr)yyVals[-1+yyTop]).getOffset(),((Expr)yyVals[-1+yyTop]).getVariableLength()); @@ -2545,7 +2553,7 @@ case 218: yyVal=PIE; } break; -case 219: +case 220: // line 1920 "./../src/mycompiler/myparser/JavaParser.jay" { PostDecExpr PDE = new PostDecExpr(((Expr)yyVals[-1+yyTop]).getOffset(),((Expr)yyVals[-1+yyTop]).getVariableLength()); @@ -2553,7 +2561,7 @@ case 219: yyVal=PDE; } break; -case 220: +case 221: // line 1928 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("M1"); @@ -2585,7 +2593,7 @@ case 220: yyVal=MC; } break; -case 221: +case 222: // line 1958 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("M2"); @@ -2618,7 +2626,7 @@ case 221: yyVal=MCarg; } break; -case 222: +case 223: // line 1989 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("M3"); @@ -2639,7 +2647,7 @@ case 222: yyVal=MCpr; } break; -case 223: +case 224: // line 2008 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("M4"); @@ -2661,7 +2669,7 @@ case 223: yyVal=MCPA; } break; -case 224: +case 225: // line 2031 "./../src/mycompiler/myparser/JavaParser.jay" { NewClass NC = new NewClass(((UsedId)yyVals[-2+yyTop]).getOffset(),((UsedId)yyVals[-2+yyTop]).getVariableLength()); @@ -2671,7 +2679,7 @@ case 224: yyVal=NC; } break; -case 225: +case 226: // line 2039 "./../src/mycompiler/myparser/JavaParser.jay" { NewClass NCarg = new NewClass(((UsedId)yyVals[-3+yyTop]).getOffset(),((UsedId)yyVals[-3+yyTop]).getVariableLength()); @@ -2682,13 +2690,13 @@ case 225: yyVal=NCarg; } break; -case 226: +case 227: // line 2049 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 227: +case 228: // line 2053 "./../src/mycompiler/myparser/JavaParser.jay" { Binary And = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -2700,19 +2708,19 @@ case 227: yyVal=And; } break; -case 228: +case 229: // line 2069 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 229: +case 230: // line 2073 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 230: +case 231: // line 2077 "./../src/mycompiler/myparser/JavaParser.jay" { PositivExpr POSEX=new PositivExpr(((Expr)yyVals[0+yyTop]).getOffset(),((Expr)yyVals[0+yyTop]).getVariableLength()); @@ -2722,7 +2730,7 @@ case 230: yyVal=POSEX; } break; -case 231: +case 232: // line 2085 "./../src/mycompiler/myparser/JavaParser.jay" { NegativeExpr NEGEX=new NegativeExpr(((Expr)yyVals[0+yyTop]).getOffset(),((Expr)yyVals[0+yyTop]).getVariableLength()); @@ -2732,19 +2740,19 @@ case 231: yyVal=NEGEX; } break; -case 232: +case 233: // line 2093 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 233: +case 234: // line 2098 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 234: +case 235: // line 2102 "./../src/mycompiler/myparser/JavaParser.jay" { if (((UsedId)yyVals[0+yyTop]).get_Name().size() > 1) { @@ -2764,37 +2772,37 @@ case 234: } } break; -case 235: +case 236: // line 2120 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 236: +case 237: // line 2124 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 237: +case 238: // line 2129 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 238: +case 239: // line 2134 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 240: +case 241: // line 2140 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Literal)yyVals[0+yyTop]); } break; -case 241: +case 242: // line 2144 "./../src/mycompiler/myparser/JavaParser.jay" { This T = new This(((Token)yyVals[0+yyTop]).getOffset(),((Token)yyVals[0+yyTop]).getLexem().length()); @@ -2804,23 +2812,23 @@ case 241: yyVal=T; } break; -case 242: +case 243: // line 2165 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((MethodCall)yyVals[0+yyTop]); } break; -case 243: +case 244: // line 2169 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 244: +case 245: // line 2174 "./../src/mycompiler/myparser/JavaParser.jay" {yyVal=((Expr)yyVals[0+yyTop]);} break; -case 245: +case 246: // line 2176 "./../src/mycompiler/myparser/JavaParser.jay" {NotExpr NE=new NotExpr(((Expr)yyVals[0+yyTop]).getOffset(),((Expr)yyVals[0+yyTop]).getVariableLength()); UnaryNot UN=new UnaryNot(); @@ -2829,36 +2837,36 @@ case 245: yyVal=NE; } break; -case 246: +case 247: // line 2182 "./../src/mycompiler/myparser/JavaParser.jay" {yyVal=((CastExpr)yyVals[0+yyTop]);} break; -case 247: +case 248: // line 2184 "./../src/mycompiler/myparser/JavaParser.jay" {yyVal=((Expr)yyVals[0+yyTop]);} break; -case 249: +case 250: // line 2189 "./../src/mycompiler/myparser/JavaParser.jay" {IntLiteral IL = new IntLiteral(); IL.set_Int(((Token)yyVals[0+yyTop]).String2Int()); yyVal = IL; } break; -case 250: +case 251: // line 2194 "./../src/mycompiler/myparser/JavaParser.jay" {BoolLiteral BL = new BoolLiteral(); BL.set_Bool(((Token)yyVals[0+yyTop]).String2Bool()); yyVal = BL; } break; -case 251: +case 252: // line 2198 "./../src/mycompiler/myparser/JavaParser.jay" {CharLiteral CL = new CharLiteral(); CL.set_Char(((Token)yyVals[0+yyTop]).CharInString()); yyVal=CL; } break; -case 252: +case 253: // line 2203 "./../src/mycompiler/myparser/JavaParser.jay" { StringLiteral ST = new StringLiteral(); @@ -2866,14 +2874,14 @@ case 252: yyVal=ST; } break; -case 253: +case 254: // line 2208 "./../src/mycompiler/myparser/JavaParser.jay" { LongLiteral LL = new LongLiteral(); LL.set_Long(((Token)yyVals[0+yyTop]).String2Long()); yyVal = LL; } break; -case 254: +case 255: // line 2212 "./../src/mycompiler/myparser/JavaParser.jay" { FloatLiteral FL = new FloatLiteral(); @@ -2881,7 +2889,7 @@ case 254: yyVal = FL; } break; -case 255: +case 256: // line 2217 "./../src/mycompiler/myparser/JavaParser.jay" { DoubleLiteral DL = new DoubleLiteral(); @@ -2889,14 +2897,14 @@ case 255: yyVal = DL; } break; -case 256: +case 257: // line 2223 "./../src/mycompiler/myparser/JavaParser.jay" { Null NN = new Null(); yyVal=NN; } break; -case 257: +case 258: // line 2229 "./../src/mycompiler/myparser/JavaParser.jay" { CastExpr CaEx=new CastExpr(((Expr)yyVals[0+yyTop]).getOffset(),((Expr)yyVals[0+yyTop]).getVariableLength()); @@ -2905,24 +2913,24 @@ case 257: yyVal=CaEx; } break; -case 258: +case 259: // line 2238 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 259: +case 260: // line 2242 "./../src/mycompiler/myparser/JavaParser.jay" { } break; -case 260: +case 261: // line 2246 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 261: +case 262: // line 2250 "./../src/mycompiler/myparser/JavaParser.jay" { Binary EQ = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -2934,7 +2942,7 @@ case 261: yyVal=EQ; } break; -case 262: +case 263: // line 2260 "./../src/mycompiler/myparser/JavaParser.jay" { Binary NEQ = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -2946,13 +2954,13 @@ case 262: yyVal=NEQ; } break; -case 263: +case 264: // line 2271 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 264: +case 265: // line 2275 "./../src/mycompiler/myparser/JavaParser.jay" { Binary LO = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -2964,7 +2972,7 @@ case 264: yyVal=LO; } break; -case 265: +case 266: // line 2285 "./../src/mycompiler/myparser/JavaParser.jay" { Binary GO = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -2976,7 +2984,7 @@ case 265: yyVal=GO; } break; -case 266: +case 267: // line 2295 "./../src/mycompiler/myparser/JavaParser.jay" { Binary LE = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -2988,7 +2996,7 @@ case 266: yyVal=LE; } break; -case 267: +case 268: // line 2305 "./../src/mycompiler/myparser/JavaParser.jay" { Binary GE = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3000,7 +3008,7 @@ case 267: yyVal=GE; } break; -case 268: +case 269: // line 2315 "./../src/mycompiler/myparser/JavaParser.jay" { InstanceOf ISO=new InstanceOf(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3009,19 +3017,19 @@ case 268: yyVal=ISO; } break; -case 269: +case 270: // line 2323 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 270: +case 271: // line 2328 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 271: +case 272: // line 2332 "./../src/mycompiler/myparser/JavaParser.jay" { Binary AD = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3033,7 +3041,7 @@ case 271: yyVal=AD; } break; -case 272: +case 273: // line 2342 "./../src/mycompiler/myparser/JavaParser.jay" { Binary MI = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3045,13 +3053,13 @@ case 272: yyVal=MI; } break; -case 273: +case 274: // line 2353 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 274: +case 275: // line 2357 "./../src/mycompiler/myparser/JavaParser.jay" { Binary ML = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3063,7 +3071,7 @@ case 274: yyVal=ML; } break; -case 275: +case 276: // line 2367 "./../src/mycompiler/myparser/JavaParser.jay" { Binary DV = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3075,7 +3083,7 @@ case 275: yyVal = DV; } break; -case 276: +case 277: // line 2377 "./../src/mycompiler/myparser/JavaParser.jay" { Binary MD = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3087,7 +3095,7 @@ case 276: yyVal =MD; } break; - // line 3091 "-" + // line 3099 "-" } yyTop -= yyLen[yyN]; yyState = yyStates[yyTop]; @@ -3119,991 +3127,1044 @@ case 276: protected static final short yyLhs [] = { -1, 0, 98, 26, 26, 25, 92, 92, 27, 27, 105, - 23, 24, 24, 22, 1, 1, 1, 1, 1, 1, - 1, 1, 9, 9, 8, 8, 2, 2, 2, 2, - 112, 112, 112, 112, 112, 112, 114, 114, 114, 7, - 7, 40, 40, 28, 32, 32, 3, 3, 33, 33, - 15, 15, 41, 41, 41, 41, 41, 41, 29, 4, - 4, 31, 16, 16, 16, 30, 113, 113, 5, 5, - 17, 17, 110, 106, 106, 10, 6, 19, 11, 11, - 11, 11, 11, 13, 42, 42, 107, 107, 108, 108, - 108, 108, 48, 94, 97, 97, 93, 93, 95, 95, - 96, 96, 12, 12, 12, 12, 12, 12, 12, 12, + 105, 23, 24, 24, 22, 1, 1, 1, 1, 1, + 1, 1, 1, 9, 9, 8, 8, 2, 2, 2, + 2, 112, 112, 112, 112, 112, 112, 114, 114, 114, + 7, 7, 40, 40, 28, 32, 32, 3, 3, 33, + 33, 15, 15, 41, 41, 41, 41, 41, 41, 29, + 4, 4, 31, 16, 16, 16, 30, 113, 113, 5, + 5, 17, 17, 110, 106, 106, 10, 6, 19, 11, + 11, 11, 11, 11, 13, 42, 42, 107, 107, 108, + 108, 108, 108, 48, 94, 97, 97, 93, 93, 95, + 95, 96, 96, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, - 12, 12, 12, 39, 39, 39, 39, 18, 18, 43, - 44, 44, 50, 50, 109, 109, 38, 38, 14, 14, - 36, 36, 37, 20, 80, 80, 49, 49, 103, 103, - 35, 21, 78, 46, 81, 81, 81, 81, 81, 71, - 71, 34, 34, 47, 47, 79, 79, 79, 79, 86, - 87, 83, 84, 84, 84, 84, 84, 84, 84, 84, - 69, 69, 89, 77, 90, 90, 82, 82, 82, 68, - 99, 99, 72, 72, 72, 72, 72, 72, 88, 85, - 67, 67, 101, 45, 45, 51, 51, 70, 102, 100, - 100, 100, 100, 100, 100, 73, 74, 75, 76, 104, - 104, 104, 104, 91, 91, 66, 66, 57, 57, 57, - 57, 57, 55, 55, 55, 55, 54, 65, 65, 53, - 53, 53, 53, 56, 56, 56, 64, 64, 52, 52, - 52, 52, 52, 52, 52, 52, 111, 63, 63, 62, - 62, 62, 61, 61, 61, 61, 61, 61, 60, 59, - 59, 59, 58, 58, 58, 58, + 12, 12, 12, 12, 39, 39, 39, 39, 18, 18, + 43, 44, 44, 50, 50, 109, 109, 38, 38, 14, + 14, 36, 36, 37, 20, 80, 80, 49, 49, 103, + 103, 35, 21, 78, 46, 81, 81, 81, 81, 81, + 71, 71, 34, 34, 47, 47, 79, 79, 79, 79, + 86, 87, 83, 84, 84, 84, 84, 84, 84, 84, + 84, 69, 69, 89, 77, 90, 90, 82, 82, 82, + 68, 99, 99, 72, 72, 72, 72, 72, 72, 88, + 85, 67, 67, 101, 45, 45, 51, 51, 70, 102, + 100, 100, 100, 100, 100, 100, 73, 74, 75, 76, + 104, 104, 104, 104, 91, 91, 66, 66, 57, 57, + 57, 57, 57, 55, 55, 55, 55, 54, 65, 65, + 53, 53, 53, 53, 56, 56, 56, 64, 64, 52, + 52, 52, 52, 52, 52, 52, 52, 111, 63, 63, + 62, 62, 62, 61, 61, 61, 61, 61, 61, 60, + 59, 59, 59, 58, 58, 58, 58, }; protected static final short yyLen [] = { 2, 1, 3, 1, 2, 3, 1, 2, 1, 1, 1, - 3, 3, 3, 1, 3, 4, 4, 5, 4, 5, - 5, 6, 1, 4, 1, 4, 3, 4, 4, 5, - 1, 4, 1, 3, 6, 3, 1, 3, 3, 2, - 3, 1, 2, 2, 2, 3, 2, 3, 2, 3, - 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, - 2, 1, 1, 1, 1, 2, 0, 3, 1, 1, - 1, 1, 2, 2, 3, 6, 2, 3, 2, 2, - 2, 3, 4, 2, 2, 3, 3, 4, 2, 3, - 3, 4, 2, 1, 1, 3, 1, 3, 1, 3, - 1, 3, 5, 2, 3, 6, 3, 6, 4, 7, - 2, 3, 3, 4, 5, 6, 6, 7, 1, 4, - 2, 2, 3, 1, 3, 1, 3, 1, 3, 1, - 1, 2, 1, 3, 4, 5, 1, 3, 3, 4, - 1, 1, 1, 1, 1, 1, 2, 1, 1, 3, - 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 2, 1, 1, 1, 1, 1, 5, - 7, 5, 9, 8, 8, 8, 7, 7, 7, 6, - 1, 1, 1, 2, 2, 3, 1, 1, 1, 1, - 3, 3, 1, 1, 1, 1, 1, 1, 7, 5, - 1, 3, 1, 1, 1, 2, 3, 3, 1, 1, - 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, - 4, 5, 6, 4, 5, 1, 3, 1, 1, 2, - 2, 1, 1, 1, 1, 1, 1, 1, 3, 1, - 1, 1, 1, 1, 2, 1, 1, 3, 1, 1, - 1, 1, 1, 1, 1, 1, 4, 1, 3, 1, - 3, 3, 1, 3, 3, 3, 3, 3, 1, 1, - 3, 3, 1, 3, 3, 3, + 1, 3, 3, 3, 1, 3, 4, 4, 5, 4, + 5, 5, 6, 1, 4, 1, 4, 3, 4, 4, + 5, 1, 4, 1, 3, 6, 3, 1, 3, 3, + 2, 3, 1, 2, 2, 2, 3, 2, 3, 2, + 3, 1, 2, 1, 1, 1, 1, 1, 1, 1, + 1, 2, 1, 1, 1, 1, 2, 0, 3, 1, + 1, 1, 1, 2, 2, 3, 6, 2, 3, 2, + 2, 2, 3, 4, 2, 2, 3, 3, 4, 2, + 3, 3, 4, 2, 1, 1, 3, 1, 3, 1, + 3, 1, 3, 5, 2, 3, 6, 3, 6, 4, + 7, 2, 3, 3, 4, 5, 6, 6, 7, 1, + 4, 2, 2, 3, 1, 3, 1, 3, 1, 3, + 1, 1, 2, 1, 3, 4, 5, 1, 3, 3, + 4, 1, 1, 1, 1, 1, 1, 2, 1, 1, + 3, 1, 1, 1, 2, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, + 5, 7, 5, 9, 8, 8, 8, 7, 7, 7, + 6, 1, 1, 1, 2, 2, 3, 1, 1, 1, + 1, 3, 3, 1, 1, 1, 1, 1, 1, 7, + 5, 1, 3, 1, 1, 1, 2, 3, 3, 1, + 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, + 3, 4, 5, 6, 4, 5, 1, 3, 1, 1, + 2, 2, 1, 1, 1, 1, 1, 1, 1, 3, + 1, 1, 1, 1, 1, 2, 1, 1, 3, 1, + 1, 1, 1, 1, 1, 1, 1, 4, 1, 3, + 1, 3, 3, 1, 3, 3, 3, 3, 3, 1, + 1, 3, 3, 1, 3, 3, 3, }; protected static final short yyDefRed [] = { 0, - 57, 0, 58, 55, 54, 53, 56, 0, 10, 0, - 42, 0, 6, 0, 0, 0, 43, 7, 0, 0, - 0, 0, 15, 0, 0, 0, 0, 94, 95, 0, - 14, 0, 44, 59, 62, 45, 141, 163, 162, 0, - 0, 0, 0, 40, 71, 0, 72, 0, 0, 51, - 63, 0, 0, 0, 144, 0, 143, 151, 142, 0, - 0, 0, 0, 65, 0, 64, 17, 0, 0, 19, - 16, 0, 0, 0, 0, 26, 0, 66, 0, 73, - 0, 0, 0, 101, 0, 130, 84, 0, 122, 41, - 52, 0, 81, 79, 0, 0, 0, 0, 0, 0, - 0, 80, 0, 0, 0, 0, 0, 0, 0, 74, - 21, 46, 18, 0, 20, 99, 0, 96, 0, 0, - 0, 33, 0, 0, 0, 241, 0, 249, 253, 255, - 254, 250, 256, 251, 252, 0, 0, 0, 183, 85, - 0, 0, 128, 0, 8, 0, 0, 166, 0, 145, - 0, 0, 240, 237, 0, 0, 243, 0, 194, 195, - 0, 0, 168, 155, 131, 146, 158, 159, 156, 157, - 167, 169, 193, 0, 0, 113, 139, 148, 0, 133, - 0, 0, 0, 137, 0, 152, 129, 0, 0, 0, - 0, 0, 9, 0, 232, 273, 0, 0, 263, 0, - 0, 0, 0, 0, 0, 0, 181, 160, 78, 228, - 229, 235, 236, 161, 182, 242, 246, 87, 0, 125, - 127, 107, 82, 0, 0, 123, 0, 0, 75, 0, - 89, 0, 0, 22, 0, 0, 0, 0, 0, 68, - 0, 0, 185, 0, 0, 0, 216, 217, 206, 0, - 0, 0, 0, 86, 132, 154, 203, 0, 0, 218, - 219, 184, 214, 215, 211, 212, 213, 210, 0, 147, - 0, 140, 102, 0, 120, 0, 0, 0, 0, 230, - 231, 245, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 88, - 114, 0, 109, 83, 0, 91, 90, 0, 100, 0, - 38, 39, 0, 36, 0, 0, 0, 186, 0, 207, - 11, 220, 149, 0, 204, 208, 205, 0, 191, 192, - 134, 0, 0, 138, 0, 0, 274, 275, 276, 0, - 0, 268, 266, 267, 264, 265, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 92, 32, 0, - 0, 0, 0, 0, 0, 0, 221, 0, 117, 108, - 224, 0, 257, 0, 0, 135, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 170, 0, 189, 188, - 172, 150, 222, 0, 225, 118, 110, 136, 35, 180, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 223, - 179, 178, 0, 177, 0, 0, 0, 0, 0, 171, - 176, 175, 174, 0, 0, 0, 173, 0, 200, 0, - 199, - }; - protected static final short yyDgoto [] = { 8, - 9, 0, 0, 0, 0, 0, 23, 15, 0, 0, - 45, 46, 47, 48, 49, 50, 51, 142, 53, 143, - 55, 193, 145, 0, 0, 0, 146, 24, 33, 57, - 36, 25, 0, 58, 59, 60, 61, 185, 147, 10, - 11, 148, 87, 149, 326, 150, 151, 89, 180, 250, - 152, 153, 154, 155, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 157, - 323, 158, 210, 211, 212, 213, 163, 0, 164, 165, - 166, 388, 167, 168, 389, 169, 170, 390, 171, 172, - 214, 12, 28, 29, 117, 85, 30, 0, 173, 269, - 258, 174, 324, 216, 13, 64, 65, 110, 233, 66, - 217, 121, 78, 122, - }; - protected static final short yySindex [] = { 249, - 0, -251, 0, 0, 0, 0, 0, 0, 0, 332, - 0, 249, 0, 9, -104, -251, 0, 0, -241, -208, - -208, 1029, 0, -88, -1, -104, -170, 0, 0, 20, - 0, 100, 0, 0, 0, 0, 0, 0, 0, 33, - -139, 144, -241, 0, 0, 33, 0, -78, 1351, 0, - 0, 70, 137, 155, 0, 25, 0, 0, 0, 114, - 129, -70, 1946, 0, 99, 0, 0, -1, -208, 0, - 0, -88, -1, -208, -241, 0, -59, 0, 3006, 0, - 144, -78, -17, 0, 29, 0, 0, -208, 0, 0, - 0, -55, 0, 0, 941, -14, 165, 204, 144, -78, - 111, 0, -139, 144, -241, -78, -70, 99, 3058, 0, - 0, 0, 0, -1, 0, 0, 269, 0, 252, -73, - 42, 0, 273, 276, 462, 0, 277, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 968, 968, 0, 0, - 34, 275, 0, 100, 0, 61, -55, 0, 3110, 0, - 265, -3, 0, 0, 274, -118, 0, 268, 0, 0, + 58, 0, 59, 56, 55, 54, 0, 57, 0, 10, + 11, 0, 43, 0, 6, 0, 0, 0, 0, 0, + 0, 44, 7, 0, 0, 0, 0, 16, 0, 0, + 0, 0, 0, 28, 0, 0, 0, 0, 95, 96, + 0, 15, 0, 45, 60, 63, 46, 142, 164, 163, + 0, 0, 0, 0, 41, 72, 0, 73, 0, 0, + 52, 64, 0, 0, 0, 145, 0, 144, 152, 143, + 0, 0, 0, 0, 66, 0, 65, 18, 0, 0, + 20, 0, 50, 0, 48, 0, 61, 71, 70, 0, + 0, 0, 0, 30, 17, 0, 0, 29, 0, 0, + 0, 27, 0, 67, 0, 74, 0, 0, 0, 102, + 0, 131, 85, 0, 123, 42, 53, 0, 82, 80, + 0, 0, 0, 0, 0, 0, 0, 81, 0, 0, + 0, 0, 0, 0, 75, 22, 47, 25, 49, 62, + 78, 0, 51, 19, 0, 21, 31, 100, 0, 97, + 0, 0, 0, 34, 0, 0, 0, 242, 0, 250, + 254, 256, 255, 251, 257, 252, 253, 0, 0, 0, + 184, 86, 0, 0, 129, 0, 8, 0, 0, 167, + 0, 146, 0, 0, 241, 238, 0, 0, 244, 0, + 195, 196, 0, 0, 169, 156, 132, 147, 159, 160, + 157, 158, 168, 170, 194, 0, 0, 114, 140, 149, + 0, 134, 0, 0, 0, 138, 0, 153, 130, 0, + 0, 0, 0, 0, 9, 0, 233, 274, 0, 0, + 264, 0, 0, 0, 0, 0, 0, 0, 182, 161, + 79, 229, 230, 236, 237, 162, 183, 243, 247, 88, + 0, 126, 128, 108, 83, 0, 0, 124, 0, 0, + 76, 0, 90, 0, 0, 0, 23, 0, 0, 0, + 0, 0, 69, 0, 0, 186, 0, 0, 0, 217, + 218, 207, 0, 0, 0, 0, 87, 133, 155, 204, + 0, 0, 219, 220, 185, 215, 216, 212, 213, 214, + 211, 0, 148, 0, 141, 103, 0, 121, 0, 0, + 0, 0, 231, 232, 246, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, -44, 0, 0, 0, 0, -55, 0, - 107, -241, -196, 0, 284, 0, 0, -208, 34, 968, - 968, 968, 0, -118, 0, 0, 167, 83, 0, -54, - -120, 291, 237, 208, 26, 36, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 169, 0, - 0, 0, 0, -78, 59, 0, -78, 117, 0, 304, - 0, 3167, 3211, 0, -208, -59, -208, -208, -18, 0, - 579, 941, 0, 290, 941, 61, 0, 0, 0, 177, - 49, 616, 275, 0, 0, 0, 0, 426, 58, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 941, 0, - -93, 0, 0, -139, 0, -139, -208, 321, 5, 0, - 0, 0, 968, 968, 968, 968, 968, -208, 968, 968, - 968, 968, 968, 968, 968, 968, 968, 968, 968, 0, - 0, -128, 0, 0, 633, 0, 0, 3269, 0, 62, - 0, 0, 302, 0, 671, 308, 327, 0, 329, 0, - 0, 0, 0, 189, 0, 0, 0, 331, 0, 0, - 0, -78, -78, 0, 698, 968, 0, 0, 0, 167, - 167, 0, 0, 0, 0, 0, -54, -54, -120, 291, - 237, 208, 26, -139, -139, 314, 191, 0, 0, -59, - 735, 318, 778, 1489, 2205, 941, 0, 805, 0, 0, - 0, 199, 0, -78, -78, 0, 323, 71, 2205, 338, - 822, 849, 325, 340, 345, 0, 0, 119, 0, 0, - 0, 0, 0, 261, 0, 0, 0, 0, 0, 0, - 2205, 2205, 347, 2205, 350, 904, 941, 941, 2205, 0, - 0, 0, 2205, 0, 2205, 2205, 351, 352, 355, 0, - 0, 0, 0, 2205, 1489, 1489, 0, 134, 0, 1489, - 0, + 0, 0, 89, 115, 0, 110, 84, 0, 92, 91, + 0, 0, 101, 0, 39, 40, 0, 37, 0, 0, + 0, 187, 0, 208, 12, 221, 150, 0, 205, 209, + 206, 0, 192, 193, 135, 0, 0, 139, 0, 0, + 275, 276, 277, 0, 0, 269, 267, 268, 265, 266, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 93, 0, 33, 0, 0, 0, 0, 0, 0, + 0, 222, 0, 118, 109, 225, 0, 258, 0, 0, + 136, 0, 77, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 171, 0, 190, 189, 173, 151, 223, 0, + 226, 119, 111, 137, 36, 181, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 224, 180, 179, 0, 178, + 0, 0, 0, 0, 0, 172, 177, 176, 175, 0, + 0, 0, 174, 0, 201, 0, 200, + }; + protected static final short yyDgoto [] = { 9, + 10, 11, 34, 86, 87, 88, 28, 17, 19, 89, + 56, 57, 58, 59, 60, 61, 62, 174, 64, 175, + 66, 225, 177, 0, 0, 0, 178, 29, 44, 68, + 47, 30, 35, 69, 70, 71, 72, 217, 179, 12, + 13, 180, 113, 181, 360, 182, 183, 115, 212, 283, + 184, 185, 186, 187, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, 238, 239, 240, 189, + 357, 190, 242, 243, 244, 245, 195, 0, 196, 197, + 198, 424, 199, 200, 425, 201, 202, 426, 203, 204, + 246, 14, 39, 40, 149, 111, 41, 0, 247, 302, + 291, 206, 358, 248, 15, 75, 76, 135, 265, 77, + 249, 153, 104, 154, + }; + protected static final short yySindex [] = { 499, + 0, -186, 0, 0, 0, 0, -164, 0, 0, 0, + 0, 884, 0, 499, 0, 121, -103, 126, -92, -186, + -164, 0, 0, -154, -109, -109, 330, 0, -97, -6, + -154, -109, 781, 0, 2, -103, -92, -31, 0, 0, + 27, 0, 191, 0, 0, 0, 0, 0, 0, 0, + 138, 28, 303, -154, 0, 0, 138, 0, 59, 1621, + 0, 0, 239, 260, 293, 0, 56, 0, 0, 0, + 272, 277, 68, 460, 0, 249, 0, 0, -6, -109, + 0, 40, 0, 303, 0, 3494, 0, 0, 0, 319, + 28, 460, -109, 0, 0, -97, -6, 0, 2, -109, + -154, 0, -58, 0, 3104, 0, 303, 59, -39, 0, + 110, 0, 0, -109, 0, 0, 0, 82, 0, 0, + 1028, -5, 294, 298, 303, 59, 255, 0, 28, -154, + 59, 68, 249, 3186, 0, 0, 0, 0, 0, 0, + 0, 85, 0, 0, -6, 0, 0, 0, 354, 0, + 333, -115, 150, 0, 359, 362, 492, 0, 363, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1079, 1079, + 0, 0, 23, 373, 0, 191, 0, 67, 82, 0, + 3295, 0, 347, 92, 0, 0, 374, -246, 0, 365, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 94, 0, 0, 0, 0, + 82, 0, 14, -154, 331, 0, 382, 0, 0, -109, + 23, 1079, 1079, 1079, 0, -246, 0, 0, 269, 282, + 0, -28, -217, 393, 338, 311, 137, 142, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 70, 0, 0, 0, 0, 59, 159, 0, 59, 258, + 0, 409, 0, 3349, 3397, 42, 0, -109, -58, -109, + -109, -36, 0, 522, 1028, 0, 391, 1028, 67, 0, + 0, 0, 279, 151, 660, 373, 0, 0, 0, 0, + 687, 160, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1028, 0, -74, 0, 0, 28, 0, 28, -109, + 420, 18, 0, 0, 0, 1079, 1079, 1079, 1079, 1079, + -109, 1079, 1079, 1079, 1079, 1079, 1079, 1079, 1079, 1079, + 1079, 1079, 0, 0, 380, 0, 0, 714, 0, 0, + 3449, 1028, 0, 163, 0, 0, 405, 0, 792, 407, + 426, 0, 427, 0, 0, 0, 0, 290, 0, 0, + 0, 429, 0, 0, 0, 59, 59, 0, 809, 1079, + 0, 0, 0, 269, 269, 0, 0, 0, 0, 0, + -28, -28, -217, 393, 338, 311, 137, 28, 28, 412, + 295, 0, 414, 0, -58, 836, 415, 877, 1140, 1246, + 1028, 0, 930, 0, 0, 0, 301, 0, 59, 59, + 0, 419, 0, 164, 1246, 439, 957, 984, 422, 442, + 443, 0, 0, 218, 0, 0, 0, 0, 0, 308, + 0, 0, 0, 0, 0, 0, 1246, 1246, 445, 1246, + 446, 1001, 1028, 1028, 1246, 0, 0, 0, 1246, 0, + 1246, 1246, 448, 451, 452, 0, 0, 0, 0, 1246, + 1140, 1140, 0, 229, 0, 1140, 0, }; protected static final short yyRindex [] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 403, 0, -89, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 74, 0, 0, 0, - 0, 1123, 0, 0, 0, 0, 0, 0, 0, 2588, - 0, -23, 0, 0, 0, 0, 0, 282, 0, 0, - 0, 0, 0, 139, 0, -84, 0, 0, 0, 106, - 109, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 498, 0, -71, 0, -81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 292, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 91, 293, - 0, 0, 0, -50, 0, 297, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 76, 0, 87, 96, + 0, 0, 0, 0, 0, 0, 0, 172, 0, 0, + 0, 0, 1301, 0, 0, 0, 0, 0, 0, 0, + 2008, 0, -11, 0, 0, 0, 0, 0, 9, 0, + 0, 0, 0, 0, 271, 0, -83, 0, 0, 0, + 68, 202, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 215, 0, 0, 0, 0, - 0, 362, 0, 320, 0, 526, 0, 0, 0, 0, - 0, 0, 0, 0, 1237, 0, 0, 0, 0, 0, - -45, 2, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -43, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, - 0, 0, 0, 2981, 0, 0, 2708, 2152, 0, 2428, - 2254, 1292, 1398, 1543, 1602, 1671, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 301, 0, 0, 305, 0, 0, -41, + 0, 0, 0, 0, 248, 34, 0, 0, 0, 0, + 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 185, 0, + 186, 208, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, + 0, 0, 0, 455, 0, -37, 0, 625, 0, 0, + 0, 0, 0, 0, 0, 0, 1356, 0, 0, 0, + 0, 0, -20, -8, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -42, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 51, 0, 0, 0, + 0, 0, 0, 0, 0, 3240, 0, 0, 2880, 2264, + 0, 2460, 2515, 1410, 1464, 1715, 1769, 1807, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1708, 0, 0, 0, 0, - 0, 0, 380, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 72, 0, 0, 79, 0, + 0, -35, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1844, 0, + 0, 0, 0, 0, 0, 456, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 106, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 68, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 224, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 86, 87, 0, 0, 0, + 0, 0, 0, 2934, 2989, 0, 0, 0, 0, 0, + 2629, 2820, 2569, 1904, 2095, 2155, 2209, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 90, 91, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 3050, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 97, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 317, 324, 0, 0, 0, 0, 0, 0, 2780, - 2870, 0, 0, 0, 0, 0, 2529, 2619, 2343, 1794, - 1879, 1981, 2067, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 328, 333, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1192, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, + 0, 0, 0, 0, 0, 0, 0, }; protected static final short yyGindex [] = { 0, - 0, 0, 0, 0, 0, 0, 558, 398, 0, 0, - 0, 0, 0, -40, 0, 394, 0, -10, 382, 27, - -2, 465, 0, 0, 0, 0, 2657, 420, -77, 11, - 379, 53, 0, 0, 0, 266, -49, 0, -9, 35, - 37, -31, 0, -67, 0, 0, 0, -80, 187, -25, - 0, 0, 0, 0, -79, 0, -82, 3, 0, 143, - -56, 170, 164, 179, 182, 163, 0, 0, 214, 0, - 196, 0, -61, -26, -7, 48, 0, 0, -313, -116, - 944, -202, 0, 0, 0, 0, 0, 0, 0, 0, - 219, 0, -15, 402, 0, 388, 0, 0, 184, 0, - 0, 0, -276, 66, 472, 0, 431, 389, 0, 0, - 0, -192, 0, 259, + 0, 0, 30, 0, 418, 0, 434, 487, 489, 0, + 0, 11, 0, -51, 0, 461, 0, 26, 449, 10, + -22, 543, 0, 0, 0, 0, 1467, 480, -86, -19, + 135, 37, 491, 0, 0, 313, -88, 0, -17, 136, + 44, -32, 0, -113, 0, 0, 0, 4, 220, 84, + 0, 0, 0, 0, -105, 0, 372, -78, 0, 118, + 33, 201, 207, 209, 212, 206, 0, 0, 238, 0, + 184, 0, -87, -33, -15, 39, 0, 0, -339, -166, + 1876, -222, 0, 0, 0, 0, 0, 0, 0, 0, + 242, 0, -24, 444, 0, 416, 516, 0, 57, 0, + 0, 0, -261, 112, 534, 0, 479, 421, 0, 0, + 0, -234, 0, 284, }; - protected static final short yyTable [] = { 156, - 82, 176, 242, 120, 241, 291, 67, 292, 80, 14, - 184, 52, 62, 196, 86, 198, 268, 159, 22, 222, - 152, 100, 106, 177, 116, 226, 218, 84, 357, 156, - 34, 35, 255, 25, 22, 152, 14, 152, 52, 62, - 14, 232, 69, 310, 120, 336, 17, 159, 54, 14, - 386, 101, 160, 107, 247, 248, 63, 181, 372, 27, - 197, 37, 224, 75, 96, 38, 227, 14, 19, 156, - 219, 161, 182, 179, 249, 54, 68, 39, 73, 35, - 178, 76, 160, 63, 77, 239, 179, 159, 54, 84, - 183, 394, 31, 178, 274, 97, 228, 74, 34, 17, - 252, 161, 182, 240, 104, 239, 251, 280, 281, 282, - 278, 386, 386, 92, 239, 255, 386, 97, 187, 98, - 302, 22, 160, 359, 114, 286, 162, 287, 93, 37, - 31, 179, 399, 38, 152, 97, 253, 98, 178, 37, - 34, 161, 275, 301, 175, 39, 303, 272, 31, 152, - 271, 152, 156, 156, 92, 79, 162, 37, 34, 77, - 92, 81, 354, 20, 37, 308, 273, 378, 38, 223, - 159, 159, 31, 276, 175, 304, 270, 21, 25, 179, - 39, 293, 128, 83, 294, 309, 178, 311, 312, 260, - 261, 255, 25, 21, 237, 94, 162, 128, 34, 334, - 337, 338, 339, 285, 97, 160, 160, 136, 283, 300, - 88, 238, 271, 284, 175, 95, 67, 320, 288, 98, - 271, 109, 428, 429, 161, 161, 325, 431, 156, 367, - 99, 377, 366, 332, 366, 333, 347, 348, 342, 395, - 37, 119, 366, 37, 38, 186, 159, 38, 289, 290, - 14, 369, 370, 373, 14, 152, 39, 220, 152, 39, - 14, 179, 235, 235, 242, 242, 241, 241, 178, 263, - 264, 265, 266, 152, 14, 14, 267, 14, 215, 162, - 162, 160, 313, 136, 156, 156, 136, 34, 340, 341, - 209, 37, 355, 396, 397, 38, 221, 175, 175, 156, - 161, 410, 159, 159, 366, 14, 235, 39, 215, 236, - 236, 236, 241, 374, 375, 242, 245, 159, 92, 259, - 244, 156, 156, 256, 156, 257, 262, 277, 295, 156, - 296, 297, 298, 156, 136, 156, 156, 160, 160, 159, - 159, 299, 159, 305, 156, 156, 156, 159, 318, 321, - 156, 159, 160, 159, 159, 162, 161, 161, 328, 9, - 335, 360, 159, 159, 159, 9, 363, 364, 159, 365, - 368, 161, 376, 175, 160, 160, 381, 160, 401, 407, - 9, 398, 160, 406, 408, 409, 160, 413, 160, 160, - 415, 424, 425, 161, 161, 426, 161, 160, 160, 160, - 430, 161, 1, 160, 119, 161, 124, 161, 161, 126, - 67, 162, 162, 26, 111, 104, 161, 161, 161, 121, - 165, 93, 161, 112, 215, 215, 162, 105, 215, 175, - 175, 343, 344, 345, 346, 215, 316, 317, 164, 115, - 319, 215, 91, 102, 175, 72, 103, 112, 162, 162, - 116, 162, 215, 327, 279, 106, 162, 331, 192, 350, - 162, 353, 162, 162, 349, 189, 175, 175, 190, 175, - 191, 162, 162, 162, 175, 351, 118, 162, 175, 352, - 175, 175, 329, 18, 32, 32, 56, 330, 215, 175, - 175, 175, 225, 108, 192, 175, 229, 314, 215, 0, - 0, 189, 0, 0, 190, 1, 191, 0, 0, 0, - 362, 2, 0, 56, 0, 14, 0, 3, 215, 0, - 243, 0, 14, 14, 4, 5, 6, 56, 14, 14, - 14, 14, 7, 32, 0, 14, 0, 0, 32, 0, - 0, 0, 0, 144, 215, 0, 215, 32, 79, 215, - 0, 215, 32, 0, 0, 0, 380, 0, 383, 0, - 32, 392, 234, 234, 215, 215, 234, 234, 234, 234, - 234, 0, 234, 144, 0, 0, 403, 405, 0, 0, - 0, 67, 70, 71, 234, 234, 209, 234, 1, 215, - 215, 215, 0, 0, 16, 0, 0, 0, 0, 0, - 3, 417, 418, 419, 0, 32, 0, 4, 5, 6, - 0, 192, 0, 144, 0, 7, 0, 0, 189, 234, - 67, 190, 0, 191, 0, 111, 0, 9, 9, 113, - 115, 0, 0, 9, 9, 9, 9, 315, 0, 0, - 9, 0, 0, 0, 0, 0, 0, 32, 192, 234, - 234, 0, 32, 32, 0, 189, 322, 0, 190, 0, - 191, 0, 0, 0, 0, 192, 0, 0, 0, 0, - 0, 234, 189, 356, 0, 190, 0, 191, 0, 0, + protected static final short yyTable [] = { 188, + 108, 209, 9, 243, 152, 45, 46, 68, 9, 73, + 242, 148, 46, 15, 288, 91, 199, 191, 106, 27, + 264, 126, 131, 9, 112, 27, 152, 216, 188, 110, + 33, 324, 153, 325, 344, 250, 65, 80, 197, 126, + 131, 24, 73, 90, 15, 93, 191, 153, 15, 153, + 198, 26, 63, 68, 305, 22, 132, 304, 370, 422, + 46, 293, 294, 282, 94, 79, 98, 120, 91, 65, + 101, 192, 97, 46, 142, 188, 391, 256, 112, 15, + 259, 109, 65, 101, 326, 63, 210, 327, 102, 193, + 259, 211, 105, 191, 45, 122, 90, 288, 127, 210, + 192, 138, 342, 122, 211, 110, 285, 407, 123, 94, + 333, 208, 284, 304, 16, 103, 27, 22, 193, 15, + 153, 422, 422, 153, 33, 15, 422, 219, 147, 254, + 113, 120, 145, 311, 258, 22, 18, 106, 153, 15, + 15, 430, 112, 194, 116, 104, 38, 192, 117, 107, + 210, 341, 270, 214, 301, 211, 105, 260, 188, 188, + 414, 205, 74, 308, 25, 193, 83, 122, 92, 271, + 15, 215, 194, 94, 288, 32, 191, 191, 26, 343, + 24, 345, 346, 48, 26, 31, 24, 49, 303, 306, + 205, 42, 213, 272, 113, 74, 26, 309, 210, 50, + 45, 106, 214, 211, 286, 251, 272, 272, 116, 104, + 26, 273, 117, 107, 137, 98, 207, 68, 48, 194, + 335, 92, 49, 368, 394, 435, 168, 143, 99, 32, + 192, 192, 376, 98, 50, 188, 100, 205, 464, 465, + 374, 375, 151, 467, 321, 207, 99, 32, 193, 193, + 103, 38, 48, 191, 15, 366, 49, 367, 359, 334, + 105, 168, 336, 68, 347, 243, 243, 35, 50, 38, + 9, 9, 242, 242, 322, 323, 9, 9, 9, 9, + 48, 210, 118, 9, 49, 35, 211, 236, 236, 15, + 45, 153, 207, 188, 188, 168, 50, 119, 118, 237, + 237, 118, 194, 194, 241, 318, 153, 192, 153, 188, + 316, 191, 191, 255, 129, 317, 337, 389, 120, 354, + 205, 205, 304, 168, 319, 193, 320, 191, 107, 129, + 402, 188, 188, 401, 188, 412, 409, 410, 401, 188, + 277, 431, 109, 188, 401, 188, 188, 114, 446, 191, + 191, 401, 191, 121, 188, 188, 188, 191, 381, 382, + 188, 191, 123, 191, 191, 192, 192, 124, 125, 404, + 405, 134, 191, 191, 191, 207, 207, 141, 191, 194, + 15, 192, 218, 193, 193, 266, 252, 15, 15, 54, + 253, 268, 269, 15, 15, 15, 15, 205, 274, 193, + 15, 275, 278, 192, 192, 289, 192, 296, 297, 298, + 299, 192, 432, 433, 300, 192, 118, 192, 192, 292, + 290, 193, 193, 295, 193, 310, 192, 192, 192, 193, + 328, 329, 192, 193, 330, 193, 193, 194, 194, 377, + 378, 379, 380, 331, 193, 193, 193, 332, 338, 352, + 193, 355, 207, 194, 55, 205, 205, 350, 351, 369, + 362, 353, 78, 81, 395, 398, 399, 400, 403, 95, + 411, 205, 413, 417, 361, 194, 194, 434, 194, 437, + 442, 443, 444, 194, 445, 449, 451, 194, 460, 194, + 194, 461, 462, 205, 205, 466, 205, 1, 194, 194, + 194, 205, 127, 140, 194, 205, 36, 205, 205, 37, + 207, 207, 136, 166, 165, 96, 205, 205, 205, 130, + 117, 128, 205, 365, 224, 393, 207, 99, 383, 144, + 146, 221, 397, 312, 222, 384, 223, 387, 385, 363, + 280, 281, 386, 364, 150, 257, 82, 23, 207, 207, + 276, 207, 133, 261, 224, 348, 207, 0, 0, 0, + 207, 221, 207, 207, 222, 0, 223, 43, 43, 67, + 0, 207, 207, 207, 43, 43, 0, 207, 267, 416, + 349, 419, 0, 0, 428, 0, 1, 48, 48, 0, + 0, 49, 49, 313, 314, 315, 0, 0, 3, 0, + 439, 441, 67, 50, 50, 4, 5, 6, 0, 0, + 0, 0, 0, 51, 0, 0, 67, 0, 0, 0, + 52, 307, 43, 0, 0, 453, 454, 455, 43, 0, + 53, 84, 0, 0, 43, 43, 0, 48, 0, 0, + 0, 49, 43, 0, 0, 0, 0, 176, 0, 0, + 0, 43, 0, 50, 0, 0, 43, 0, 0, 0, + 0, 235, 235, 0, 43, 235, 235, 235, 235, 235, + 388, 235, 0, 0, 0, 0, 176, 0, 0, 0, + 42, 0, 0, 235, 235, 210, 235, 371, 372, 373, + 0, 0, 224, 0, 0, 0, 0, 0, 0, 221, + 356, 0, 222, 0, 223, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 43, 1, 48, 235, 224, + 0, 49, 0, 176, 0, 0, 221, 0, 3, 222, + 0, 223, 0, 50, 0, 4, 5, 6, 0, 0, + 0, 408, 0, 8, 0, 0, 224, 0, 235, 235, + 129, 0, 0, 221, 390, 1, 222, 43, 223, 0, + 84, 2, 43, 43, 0, 0, 220, 3, 0, 0, + 0, 0, 0, 0, 4, 5, 6, 0, 158, 7, + 0, 0, 8, 0, 160, 161, 162, 163, 164, 165, + 166, 167, 42, 0, 0, 0, 220, 0, 0, 169, + 170, 0, 0, 0, 0, 0, 176, 176, 158, 105, + 43, 0, 43, 43, 160, 161, 162, 163, 164, 165, + 166, 167, 42, 0, 224, 0, 0, 0, 0, 169, + 170, 221, 0, 0, 222, 0, 223, 0, 0, 0, + 54, 224, 0, 0, 0, 0, 43, 0, 221, 406, + 396, 222, 43, 223, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 43, 0, 0, 0, 0, 224, 0, + 0, 0, 0, 0, 0, 221, 415, 43, 222, 0, + 223, 235, 235, 176, 0, 0, 235, 0, 0, 0, + 0, 0, 0, 235, 0, 0, 0, 235, 235, 0, + 235, 235, 235, 0, 0, 85, 0, 0, 235, 224, + 0, 0, 0, 0, 0, 235, 221, 0, 0, 222, + 0, 223, 0, 0, 0, 235, 235, 235, 235, 235, + 235, 235, 235, 235, 220, 418, 0, 0, 210, 210, + 210, 210, 0, 0, 0, 210, 158, 0, 0, 0, + 0, 0, 160, 161, 162, 163, 164, 165, 166, 167, + 42, 220, 224, 0, 0, 0, 0, 169, 170, 221, + 429, 0, 222, 158, 223, 0, 0, 0, 0, 160, + 161, 162, 163, 164, 165, 166, 167, 42, 220, 224, + 0, 0, 0, 0, 169, 170, 221, 438, 0, 222, + 158, 223, 0, 0, 0, 0, 160, 161, 162, 163, + 164, 165, 166, 167, 42, 0, 224, 0, 0, 0, + 0, 169, 170, 221, 440, 0, 222, 0, 223, 0, + 0, 0, 0, 224, 0, 0, 0, 1, 48, 0, + 221, 452, 49, 222, 0, 223, 0, 0, 0, 3, + 0, 0, 0, 0, 50, 0, 4, 5, 6, 0, + 224, 0, 0, 0, 8, 0, 220, 221, 0, 0, + 222, 52, 223, 0, 0, 0, 0, 0, 158, 0, + 0, 84, 0, 220, 160, 161, 162, 163, 164, 165, + 166, 167, 42, 0, 0, 158, 0, 0, 0, 169, + 170, 160, 161, 162, 163, 164, 165, 166, 167, 42, + 220, 224, 0, 0, 0, 0, 169, 170, 221, 0, + 0, 222, 158, 223, 0, 0, 0, 0, 160, 161, + 162, 163, 164, 165, 166, 167, 42, 0, 0, 0, + 1, 0, 0, 169, 170, 0, 20, 0, 0, 0, + 0, 220, 3, 0, 0, 0, 0, 0, 0, 4, + 5, 6, 0, 158, 21, 0, 0, 8, 0, 160, + 161, 162, 163, 164, 165, 166, 167, 42, 0, 173, + 0, 0, 0, 0, 169, 170, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 171, 0, + 0, 0, 0, 0, 220, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 158, 0, 0, 0, + 0, 0, 160, 161, 162, 163, 164, 165, 166, 167, + 42, 220, 0, 0, 0, 0, 0, 169, 170, 0, + 0, 0, 0, 158, 0, 0, 0, 0, 0, 160, + 161, 162, 163, 164, 165, 166, 167, 42, 220, 0, + 0, 0, 105, 0, 169, 170, 0, 0, 0, 0, + 158, 0, 0, 0, 0, 220, 160, 161, 162, 163, + 164, 165, 166, 167, 42, 173, 0, 158, 0, 0, + 0, 169, 170, 160, 161, 162, 163, 164, 165, 166, + 167, 42, 220, 0, 171, 0, 0, 0, 169, 170, + 0, 0, 0, 0, 158, 0, 0, 0, 0, 0, + 160, 161, 162, 163, 164, 165, 166, 167, 42, 0, + 0, 0, 0, 0, 0, 169, 170, 68, 68, 0, + 68, 68, 68, 68, 68, 68, 68, 68, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, + 0, 0, 68, 0, 0, 158, 0, 0, 105, 0, + 0, 160, 161, 162, 163, 164, 165, 166, 167, 42, + 0, 0, 0, 0, 0, 0, 169, 170, 0, 0, + 0, 68, 234, 234, 68, 0, 234, 234, 234, 234, + 234, 0, 234, 0, 0, 0, 0, 0, 0, 0, + 155, 420, 0, 0, 234, 234, 0, 234, 0, 0, + 0, 0, 157, 68, 68, 68, 158, 0, 0, 0, + 0, 421, 160, 161, 162, 163, 164, 165, 166, 167, + 42, 0, 0, 0, 0, 0, 248, 169, 170, 234, + 248, 248, 248, 248, 248, 248, 248, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 248, 248, + 0, 248, 0, 0, 0, 0, 0, 0, 0, 234, + 234, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 144, 144, 0, 32, - 188, 32, 32, 192, 0, 0, 0, 0, 0, 0, - 189, 0, 126, 190, 0, 191, 0, 0, 128, 129, - 130, 131, 132, 133, 134, 135, 31, 0, 0, 361, - 192, 0, 0, 137, 138, 32, 188, 189, 371, 0, - 190, 32, 191, 0, 0, 0, 0, 0, 126, 0, - 0, 0, 32, 0, 128, 129, 130, 131, 132, 133, - 134, 135, 31, 0, 0, 0, 32, 192, 0, 137, - 138, 0, 144, 0, 189, 379, 0, 190, 0, 191, + 239, 239, 0, 248, 239, 239, 239, 239, 239, 239, + 239, 0, 0, 0, 0, 0, 155, 156, 0, 0, + 0, 0, 239, 239, 0, 239, 0, 0, 157, 0, + 0, 0, 158, 248, 248, 0, 0, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 42, 0, 0, 0, + 0, 0, 0, 169, 170, 0, 0, 68, 68, 0, + 0, 0, 68, 0, 0, 0, 0, 0, 0, 68, + 0, 0, 0, 68, 68, 0, 68, 68, 68, 0, + 0, 0, 68, 0, 68, 0, 0, 239, 239, 0, + 0, 68, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 68, 68, 68, 68, 68, 68, 68, 68, 68, 0, 0, 234, 234, 0, 0, 0, 234, 0, 0, 0, 0, 0, 0, 234, 0, 0, 0, 234, 234, - 0, 234, 234, 234, 0, 0, 0, 0, 0, 234, - 192, 0, 0, 0, 0, 0, 234, 189, 0, 0, - 190, 0, 191, 0, 0, 0, 234, 234, 234, 234, - 234, 234, 234, 234, 234, 0, 382, 192, 0, 209, - 209, 209, 209, 0, 189, 393, 209, 190, 0, 191, - 0, 0, 0, 188, 192, 0, 0, 0, 0, 0, - 0, 189, 402, 0, 190, 126, 191, 0, 0, 0, - 0, 128, 129, 130, 131, 132, 133, 134, 135, 31, - 0, 192, 0, 0, 0, 0, 137, 138, 189, 404, - 188, 190, 0, 191, 0, 0, 0, 0, 0, 0, - 0, 0, 126, 0, 0, 0, 0, 188, 128, 129, - 130, 131, 132, 133, 134, 135, 31, 0, 0, 126, - 0, 0, 0, 137, 138, 128, 129, 130, 131, 132, - 133, 134, 135, 31, 0, 0, 192, 0, 0, 0, - 137, 138, 0, 189, 416, 188, 190, 0, 191, 0, - 0, 0, 0, 0, 0, 0, 0, 126, 0, 0, - 0, 0, 0, 128, 129, 130, 131, 132, 133, 134, - 135, 31, 188, 192, 0, 0, 0, 0, 137, 138, - 189, 0, 0, 190, 126, 191, 0, 0, 0, 0, - 128, 129, 130, 131, 132, 133, 134, 135, 31, 0, - 192, 0, 0, 0, 0, 137, 138, 189, 0, 188, - 190, 0, 191, 0, 0, 0, 0, 0, 0, 0, - 0, 126, 0, 0, 0, 0, 0, 128, 129, 130, - 131, 132, 133, 134, 135, 31, 0, 0, 0, 0, - 0, 0, 137, 138, 0, 0, 0, 0, 0, 0, - 0, 0, 188, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 126, 0, 0, 0, 0, 0, - 128, 129, 130, 131, 132, 133, 134, 135, 31, 188, - 0, 0, 0, 0, 0, 137, 138, 0, 43, 0, - 0, 126, 0, 0, 0, 0, 188, 128, 129, 130, - 131, 132, 133, 134, 135, 31, 0, 0, 126, 0, - 0, 0, 137, 138, 128, 129, 130, 131, 132, 133, - 134, 135, 31, 188, 0, 0, 0, 0, 0, 137, - 138, 0, 0, 0, 0, 126, 0, 0, 0, 0, - 0, 128, 129, 130, 131, 132, 133, 134, 135, 31, - 0, 0, 0, 44, 0, 0, 137, 138, 0, 67, - 67, 0, 67, 67, 67, 67, 67, 67, 67, 67, - 0, 0, 0, 0, 0, 0, 0, 0, 188, 0, - 0, 67, 0, 0, 67, 0, 0, 0, 0, 0, - 126, 0, 0, 0, 0, 0, 128, 129, 130, 131, - 132, 133, 134, 135, 31, 0, 0, 0, 0, 0, - 0, 137, 138, 67, 0, 188, 67, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 126, 0, 0, - 0, 155, 0, 128, 129, 130, 131, 132, 133, 134, - 135, 31, 0, 0, 0, 67, 67, 67, 137, 138, - 155, 0, 0, 0, 126, 0, 0, 0, 0, 0, - 128, 129, 130, 131, 132, 133, 134, 135, 31, 0, - 0, 0, 0, 233, 233, 137, 138, 233, 233, 233, - 233, 233, 0, 233, 0, 1, 37, 0, 0, 0, - 38, 0, 0, 0, 0, 233, 233, 3, 233, 0, - 0, 0, 39, 0, 4, 5, 6, 387, 391, 0, - 0, 0, 40, 0, 155, 0, 155, 0, 0, 41, - 0, 0, 400, 0, 0, 0, 0, 0, 247, 42, - 233, 0, 247, 247, 247, 247, 247, 247, 247, 0, - 0, 0, 0, 0, 411, 412, 0, 414, 0, 0, - 247, 247, 420, 247, 0, 0, 421, 0, 422, 423, - 233, 233, 0, 0, 0, 0, 0, 427, 387, 391, - 0, 0, 0, 420, 0, 0, 0, 0, 0, 67, - 67, 0, 0, 0, 67, 247, 0, 0, 0, 0, - 0, 67, 0, 0, 0, 67, 67, 0, 67, 67, - 67, 0, 0, 0, 67, 0, 67, 0, 0, 0, - 43, 0, 0, 67, 0, 247, 247, 0, 0, 0, - 0, 0, 0, 67, 67, 67, 67, 67, 67, 67, - 67, 67, 0, 0, 238, 238, 0, 0, 238, 238, - 238, 238, 238, 238, 238, 0, 0, 0, 0, 155, - 0, 0, 0, 155, 0, 0, 238, 238, 187, 238, - 0, 0, 155, 155, 0, 155, 0, 0, 0, 0, - 0, 0, 0, 0, 155, 90, 0, 0, 155, 0, - 0, 0, 0, 155, 155, 155, 155, 155, 155, 155, - 155, 155, 155, 233, 233, 0, 0, 0, 233, 155, - 155, 0, 0, 0, 0, 233, 0, 0, 0, 233, - 233, 0, 233, 233, 233, 0, 0, 0, 0, 0, - 233, 238, 238, 0, 0, 0, 0, 233, 141, 0, - 0, 0, 0, 0, 0, 0, 0, 233, 233, 233, - 233, 233, 233, 233, 233, 233, 0, 139, 247, 247, - 0, 0, 0, 247, 0, 0, 0, 0, 0, 0, - 247, 0, 0, 0, 247, 247, 0, 247, 247, 247, - 0, 0, 0, 0, 0, 247, 0, 0, 0, 226, - 226, 0, 247, 226, 226, 226, 226, 226, 226, 226, - 0, 0, 247, 247, 247, 247, 247, 247, 247, 247, - 247, 226, 226, 0, 226, 0, 0, 1, 37, 0, - 0, 79, 38, 0, 0, 0, 0, 0, 0, 3, - 0, 0, 0, 0, 39, 0, 4, 5, 6, 0, - 0, 0, 0, 0, 40, 0, 226, 0, 201, 201, - 0, 41, 201, 201, 201, 201, 201, 201, 201, 0, - 0, 42, 0, 0, 238, 238, 0, 0, 0, 238, - 201, 201, 0, 201, 0, 0, 238, 226, 0, 0, - 238, 238, 0, 238, 238, 238, 0, 0, 0, 0, - 0, 238, 0, 0, 0, 0, 0, 0, 238, 0, - 0, 0, 0, 0, 0, 201, 0, 0, 238, 238, - 238, 238, 238, 238, 238, 238, 238, 190, 190, 0, - 0, 190, 190, 190, 190, 190, 190, 190, 0, 0, - 0, 0, 0, 0, 0, 201, 201, 0, 0, 190, - 190, 0, 190, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 234, 234, 0, 0, 234, 234, - 234, 234, 234, 0, 234, 0, 0, 0, 0, 123, - 384, 0, 0, 0, 190, 0, 234, 234, 0, 234, - 0, 125, 0, 0, 0, 126, 0, 0, 0, 0, - 385, 128, 129, 130, 131, 132, 133, 134, 135, 31, - 0, 0, 0, 0, 190, 190, 137, 138, 0, 226, - 226, 234, 0, 0, 226, 0, 0, 0, 0, 0, - 0, 226, 0, 0, 0, 226, 226, 0, 226, 226, - 226, 0, 0, 0, 0, 0, 226, 0, 0, 0, - 248, 234, 234, 226, 248, 248, 248, 248, 248, 248, - 248, 0, 0, 226, 226, 226, 226, 226, 226, 226, - 226, 226, 248, 248, 0, 248, 0, 0, 201, 201, - 0, 0, 0, 201, 0, 0, 0, 0, 0, 0, - 201, 0, 0, 0, 201, 201, 0, 201, 201, 201, - 0, 0, 0, 0, 0, 201, 0, 248, 0, 0, - 0, 0, 201, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 201, 201, 201, 201, 201, 201, 0, 201, - 201, 0, 0, 0, 0, 239, 239, 248, 248, 239, - 239, 239, 239, 239, 239, 239, 0, 190, 190, 0, - 0, 0, 190, 0, 0, 0, 0, 239, 239, 190, - 239, 0, 0, 190, 190, 0, 190, 190, 190, 0, - 0, 0, 0, 0, 190, 0, 0, 0, 0, 0, - 0, 190, 0, 0, 234, 234, 0, 0, 0, 234, - 0, 190, 190, 190, 190, 190, 234, 190, 190, 190, - 234, 234, 0, 234, 234, 234, 0, 0, 0, 0, - 0, 234, 0, 0, 0, 0, 0, 0, 234, 0, - 0, 0, 239, 239, 0, 105, 0, 0, 234, 234, - 234, 234, 234, 234, 234, 234, 234, 227, 227, 0, - 0, 227, 227, 227, 227, 227, 227, 227, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 227, - 227, 0, 227, 0, 0, 0, 0, 0, 0, 0, - 248, 248, 0, 0, 0, 248, 0, 0, 0, 0, - 0, 0, 248, 0, 0, 0, 248, 248, 0, 248, - 248, 248, 0, 0, 227, 0, 0, 248, 0, 0, - 0, 0, 0, 0, 248, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 248, 248, 248, 248, 248, 248, - 248, 248, 248, 202, 202, 227, 0, 202, 202, 202, - 202, 202, 202, 202, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 202, 202, 0, 202, 0, - 0, 0, 0, 0, 0, 239, 239, 0, 0, 0, - 239, 0, 0, 0, 0, 0, 0, 239, 0, 0, - 0, 239, 239, 0, 239, 239, 239, 0, 0, 0, - 202, 0, 239, 0, 0, 0, 0, 0, 0, 239, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 269, 269, - 202, 202, 269, 269, 0, 269, 0, 269, 269, 0, - 0, 0, 1, 37, 0, 0, 0, 38, 0, 0, - 269, 269, 0, 269, 3, 0, 0, 0, 0, 39, - 0, 4, 5, 6, 0, 0, 0, 0, 0, 7, - 0, 0, 0, 0, 0, 0, 103, 227, 227, 0, - 0, 0, 227, 0, 141, 269, 104, 0, 0, 227, - 0, 0, 0, 227, 227, 0, 227, 227, 227, 0, - 0, 0, 0, 139, 227, 0, 0, 0, 0, 0, - 0, 227, 0, 0, 0, 269, 269, 0, 0, 0, - 0, 227, 227, 227, 227, 227, 227, 227, 227, 227, - 258, 258, 0, 0, 258, 258, 258, 258, 258, 258, - 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 258, 258, 0, 258, 0, 0, 0, 0, - 0, 0, 0, 202, 202, 0, 0, 79, 202, 0, - 0, 0, 0, 0, 0, 202, 0, 0, 0, 202, - 202, 0, 202, 202, 202, 0, 0, 258, 0, 0, + 0, 234, 234, 234, 0, 279, 279, 0, 0, 234, + 0, 0, 0, 0, 0, 0, 234, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 234, 234, 234, 234, + 234, 234, 234, 234, 234, 0, 248, 248, 0, 0, + 0, 248, 0, 0, 0, 0, 0, 0, 248, 0, + 54, 0, 248, 248, 0, 248, 248, 248, 279, 279, + 279, 0, 0, 248, 0, 0, 0, 0, 0, 0, + 248, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 248, 248, 248, 248, 248, 248, 248, 248, 248, 0, + 239, 239, 0, 0, 0, 239, 0, 0, 0, 0, + 0, 0, 239, 0, 0, 0, 239, 239, 0, 239, + 239, 239, 0, 0, 0, 116, 0, 239, 0, 0, + 0, 227, 227, 0, 239, 227, 227, 227, 227, 227, + 227, 227, 0, 0, 239, 239, 239, 239, 239, 239, + 239, 239, 239, 227, 227, 0, 227, 0, 0, 0, + 0, 0, 279, 279, 279, 279, 279, 0, 279, 279, + 279, 279, 279, 279, 279, 279, 279, 279, 279, 0, + 0, 0, 0, 0, 0, 202, 202, 0, 227, 202, + 202, 202, 202, 202, 202, 202, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 202, 202, 0, + 202, 0, 0, 0, 0, 0, 279, 0, 0, 227, + 0, 0, 0, 191, 191, 0, 0, 191, 191, 191, + 191, 191, 191, 191, 0, 0, 0, 0, 0, 0, + 0, 0, 202, 0, 0, 191, 191, 0, 191, 0, + 0, 0, 0, 0, 0, 0, 0, 1, 48, 0, + 235, 235, 49, 0, 235, 235, 235, 235, 235, 3, + 235, 0, 202, 202, 50, 0, 4, 5, 6, 0, + 191, 0, 235, 235, 51, 235, 0, 0, 0, 0, + 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 53, 0, 0, 0, 0, 0, 0, 0, 0, + 191, 191, 0, 0, 0, 0, 0, 235, 0, 0, + 249, 0, 0, 0, 249, 249, 249, 249, 249, 249, + 249, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 249, 249, 0, 249, 0, 235, 235, 0, + 0, 227, 227, 0, 0, 0, 227, 0, 0, 0, + 0, 0, 0, 227, 0, 0, 0, 227, 227, 0, + 227, 227, 227, 0, 0, 0, 0, 249, 227, 0, + 0, 0, 0, 0, 0, 227, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 227, 227, 227, 227, 227, + 227, 227, 227, 227, 0, 202, 202, 249, 249, 0, 202, 0, 0, 0, 0, 0, 0, 202, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 202, 202, 202, - 202, 202, 202, 0, 202, 202, 0, 258, 258, 259, - 259, 0, 0, 259, 259, 259, 259, 259, 259, 259, + 0, 202, 202, 0, 202, 202, 202, 0, 0, 0, + 0, 0, 202, 0, 0, 0, 0, 0, 0, 202, + 0, 0, 0, 191, 191, 0, 0, 57, 191, 202, + 202, 202, 202, 202, 202, 191, 202, 202, 0, 191, + 191, 0, 191, 191, 191, 0, 0, 0, 0, 0, + 191, 0, 0, 0, 0, 0, 0, 191, 0, 0, + 235, 235, 0, 0, 0, 235, 0, 191, 191, 191, + 191, 191, 235, 191, 191, 191, 235, 235, 0, 235, + 235, 235, 0, 0, 0, 0, 0, 235, 0, 0, + 0, 240, 240, 0, 235, 240, 240, 240, 240, 240, + 240, 240, 0, 0, 235, 235, 235, 235, 235, 235, + 235, 235, 235, 240, 240, 0, 240, 0, 0, 0, + 249, 249, 0, 0, 0, 249, 0, 0, 0, 0, + 0, 0, 249, 0, 0, 0, 249, 249, 0, 249, + 249, 249, 0, 0, 0, 0, 0, 249, 0, 0, + 0, 228, 228, 0, 249, 228, 228, 228, 228, 228, + 228, 228, 0, 0, 249, 249, 249, 249, 249, 249, + 249, 249, 249, 228, 228, 0, 228, 0, 240, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 259, 259, 0, 259, 0, 0, 0, 269, 269, - 0, 0, 0, 269, 0, 0, 0, 0, 0, 0, - 269, 0, 0, 0, 269, 269, 0, 269, 269, 269, - 0, 0, 0, 0, 0, 269, 259, 0, 0, 0, - 0, 0, 269, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 269, 269, 269, 269, 269, 269, 269, 269, - 269, 0, 0, 0, 260, 260, 259, 259, 260, 260, - 260, 260, 260, 260, 260, 123, 124, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 260, 125, 0, 0, - 0, 126, 0, 0, 0, 0, 127, 128, 129, 130, - 131, 132, 133, 134, 135, 31, 0, 0, 0, 0, - 258, 258, 137, 138, 0, 258, 0, 0, 0, 0, - 0, 260, 258, 0, 0, 0, 258, 258, 0, 258, - 258, 258, 0, 0, 0, 0, 0, 258, 0, 0, - 0, 0, 0, 0, 258, 0, 0, 0, 0, 0, - 0, 260, 260, 0, 258, 0, 258, 258, 0, 258, - 258, 258, 258, 0, 0, 261, 261, 0, 0, 261, - 261, 261, 261, 261, 261, 261, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 261, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 259, - 259, 0, 0, 0, 259, 0, 0, 0, 0, 0, - 0, 259, 0, 0, 0, 259, 259, 0, 259, 259, - 259, 0, 261, 0, 0, 0, 259, 0, 0, 0, - 0, 0, 0, 259, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 259, 0, 259, 259, 56, 259, 259, - 259, 259, 261, 261, 0, 262, 262, 0, 0, 262, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 203, 203, 0, 228, 203, + 203, 203, 203, 203, 203, 203, 0, 0, 0, 0, + 0, 0, 0, 0, 57, 57, 0, 203, 203, 57, + 203, 0, 0, 0, 423, 427, 57, 0, 0, 228, + 0, 57, 0, 57, 57, 57, 0, 0, 0, 0, + 436, 57, 0, 0, 0, 0, 0, 0, 57, 0, + 270, 270, 203, 0, 270, 270, 0, 270, 57, 270, + 270, 0, 447, 448, 0, 450, 0, 0, 0, 0, + 456, 0, 270, 270, 457, 270, 458, 459, 0, 0, + 0, 0, 203, 203, 0, 463, 423, 427, 0, 0, + 0, 456, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 240, 240, 0, 0, 0, 240, 270, 0, 0, + 0, 0, 0, 240, 0, 0, 0, 240, 240, 0, + 240, 240, 240, 0, 0, 0, 0, 0, 240, 0, + 0, 0, 0, 0, 0, 240, 0, 270, 270, 0, + 0, 0, 0, 0, 0, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 0, 0, 0, 0, 0, 0, + 0, 228, 228, 0, 0, 0, 228, 0, 0, 0, + 0, 0, 0, 228, 0, 0, 0, 228, 228, 0, + 228, 228, 228, 0, 0, 0, 0, 0, 228, 0, + 0, 0, 0, 0, 0, 228, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 0, 203, 203, 0, 0, 0, + 203, 0, 0, 0, 0, 0, 0, 203, 0, 0, + 0, 203, 203, 0, 203, 203, 203, 0, 0, 0, + 0, 0, 203, 0, 0, 0, 261, 261, 0, 203, + 261, 261, 261, 261, 261, 261, 261, 0, 0, 203, + 203, 203, 203, 203, 203, 0, 203, 203, 261, 0, + 270, 270, 0, 0, 0, 270, 0, 0, 0, 0, + 0, 0, 270, 0, 0, 0, 270, 270, 0, 270, + 270, 270, 0, 0, 0, 0, 0, 270, 0, 0, + 0, 259, 259, 261, 270, 259, 259, 259, 259, 259, + 259, 259, 0, 0, 270, 270, 270, 270, 270, 270, + 270, 270, 270, 259, 259, 0, 259, 0, 0, 0, + 0, 0, 0, 261, 261, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 260, 260, 0, 259, 260, + 260, 260, 260, 260, 260, 260, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 260, 260, 0, + 260, 0, 0, 0, 0, 0, 0, 0, 259, 259, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 260, 0, 0, 262, 262, 0, 0, 262, 262, 262, 262, 262, 262, 262, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 262, 0, 0, - 0, 0, 0, 0, 260, 260, 0, 0, 0, 260, - 0, 0, 0, 0, 0, 0, 260, 0, 0, 0, - 0, 260, 0, 260, 260, 260, 0, 0, 0, 0, - 0, 260, 262, 0, 0, 0, 0, 0, 260, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 260, 260, - 0, 0, 260, 260, 260, 260, 260, 0, 0, 0, - 0, 0, 262, 262, 0, 270, 0, 0, 270, 0, - 270, 270, 270, 270, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 270, 270, 0, 270, + 0, 0, 260, 260, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 261, 261, 0, 0, 0, - 261, 0, 0, 246, 246, 0, 0, 261, 0, 0, - 0, 270, 261, 0, 261, 261, 261, 0, 0, 0, - 0, 0, 261, 0, 0, 0, 0, 271, 0, 261, - 271, 0, 271, 271, 271, 271, 0, 0, 0, 261, - 261, 270, 270, 261, 261, 261, 261, 261, 271, 271, - 0, 271, 0, 0, 56, 56, 246, 246, 246, 56, - 0, 0, 0, 0, 0, 0, 56, 0, 0, 0, - 0, 56, 0, 56, 56, 56, 0, 0, 0, 0, - 0, 56, 0, 271, 0, 262, 262, 0, 56, 0, - 262, 0, 0, 0, 0, 0, 0, 262, 56, 0, + 0, 0, 0, 0, 0, 0, 261, 261, 0, 0, + 0, 261, 262, 0, 0, 0, 0, 0, 261, 0, + 0, 0, 0, 261, 0, 261, 261, 261, 0, 0, + 0, 0, 0, 261, 0, 0, 0, 0, 0, 0, + 261, 0, 262, 262, 0, 0, 0, 0, 0, 0, + 261, 261, 0, 0, 261, 261, 261, 261, 261, 0, + 0, 259, 259, 0, 0, 0, 259, 0, 0, 0, + 0, 0, 0, 259, 0, 0, 0, 259, 259, 0, + 259, 259, 259, 0, 0, 0, 0, 0, 259, 0, + 0, 0, 0, 0, 0, 259, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 259, 0, 259, 259, 0, + 259, 259, 259, 259, 0, 260, 260, 0, 0, 0, + 260, 0, 0, 0, 0, 0, 0, 260, 0, 0, + 0, 260, 260, 0, 260, 260, 260, 0, 0, 0, + 0, 0, 260, 0, 0, 0, 263, 263, 0, 260, + 263, 263, 263, 263, 263, 263, 263, 0, 0, 260, + 0, 260, 260, 0, 260, 260, 260, 260, 263, 0, + 0, 0, 0, 0, 0, 262, 262, 0, 0, 0, + 262, 0, 0, 0, 0, 0, 0, 262, 0, 0, 0, 0, 262, 0, 262, 262, 262, 0, 0, 0, - 0, 0, 262, 271, 271, 0, 0, 272, 0, 262, - 272, 0, 272, 272, 272, 272, 0, 0, 0, 262, - 262, 0, 0, 262, 262, 262, 262, 262, 272, 272, - 0, 272, 0, 0, 0, 0, 0, 0, 0, 246, - 246, 246, 246, 246, 0, 246, 246, 246, 246, 246, - 246, 246, 246, 246, 246, 246, 0, 0, 0, 0, - 0, 0, 0, 272, 270, 270, 0, 0, 0, 270, - 0, 0, 0, 0, 0, 0, 270, 0, 0, 0, - 270, 270, 0, 270, 270, 270, 0, 0, 0, 0, - 0, 270, 246, 272, 272, 0, 0, 0, 270, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 270, 270, - 270, 270, 270, 270, 270, 270, 270, 244, 244, 0, - 0, 244, 244, 244, 244, 244, 244, 244, 0, 0, - 0, 0, 0, 0, 0, 0, 271, 271, 0, 244, - 244, 271, 244, 0, 0, 141, 0, 0, 271, 0, + 0, 0, 262, 263, 0, 0, 0, 271, 0, 262, + 271, 0, 271, 271, 271, 271, 0, 0, 0, 262, + 262, 0, 0, 262, 262, 262, 262, 262, 271, 271, + 0, 271, 0, 263, 263, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 272, 0, 271, 272, 0, 272, 272, 272, 272, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 272, 272, 0, 272, 0, 0, 0, 0, + 0, 0, 0, 271, 271, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 273, 272, 0, 273, + 0, 273, 273, 273, 273, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 273, 273, 0, + 273, 0, 0, 0, 0, 0, 0, 272, 272, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 263, 263, 0, 0, + 0, 263, 273, 0, 0, 0, 0, 0, 263, 156, + 0, 0, 0, 263, 0, 263, 263, 263, 0, 0, + 0, 0, 0, 263, 0, 0, 0, 0, 156, 0, + 263, 0, 273, 273, 0, 0, 0, 0, 0, 0, + 263, 263, 0, 0, 263, 263, 263, 263, 263, 0, + 0, 0, 0, 0, 0, 0, 271, 271, 0, 0, + 0, 271, 0, 173, 0, 0, 0, 0, 271, 0, 0, 0, 271, 271, 0, 271, 271, 271, 0, 0, - 0, 0, 0, 271, 139, 0, 0, 0, 0, 0, - 271, 0, 0, 0, 244, 0, 0, 0, 0, 0, + 0, 0, 171, 271, 0, 0, 0, 0, 0, 0, + 271, 0, 156, 0, 156, 0, 0, 0, 0, 0, 271, 271, 271, 271, 271, 271, 271, 271, 271, 0, - 0, 0, 0, 0, 0, 0, 0, 141, 0, 0, - 0, 0, 0, 0, 244, 244, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 139, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 272, 272, 79, 0, - 140, 272, 0, 0, 0, 0, 0, 0, 272, 0, - 0, 0, 272, 272, 0, 272, 272, 272, 0, 141, - 0, 0, 0, 272, 0, 0, 0, 0, 0, 0, - 272, 0, 0, 0, 0, 0, 0, 0, 139, 0, - 272, 272, 272, 272, 272, 272, 272, 272, 272, 0, - 79, 0, 231, 0, 0, 0, 0, 0, 0, 0, + 272, 272, 0, 0, 0, 272, 0, 0, 0, 0, + 0, 0, 272, 0, 0, 0, 272, 272, 0, 272, + 272, 272, 0, 0, 0, 0, 0, 272, 0, 0, + 0, 0, 0, 0, 272, 173, 105, 0, 172, 0, + 0, 0, 0, 0, 272, 272, 272, 272, 272, 272, + 272, 272, 272, 0, 171, 273, 273, 0, 0, 0, + 273, 0, 0, 0, 0, 0, 0, 273, 0, 0, + 0, 273, 273, 0, 273, 273, 273, 0, 0, 0, + 0, 0, 273, 0, 0, 0, 245, 245, 0, 273, + 245, 245, 245, 245, 245, 245, 245, 0, 0, 273, + 273, 273, 273, 273, 273, 273, 273, 273, 245, 245, + 0, 245, 0, 0, 0, 0, 0, 156, 105, 0, + 263, 156, 0, 0, 0, 0, 188, 0, 0, 0, + 156, 156, 0, 156, 0, 0, 0, 0, 0, 0, + 0, 0, 156, 245, 173, 0, 156, 0, 0, 0, + 0, 156, 156, 156, 156, 156, 156, 156, 156, 156, + 156, 0, 0, 171, 0, 0, 0, 156, 156, 0, + 0, 48, 0, 245, 245, 49, 0, 0, 0, 0, + 0, 0, 0, 0, 155, 156, 0, 50, 0, 0, + 0, 0, 0, 0, 0, 0, 157, 0, 173, 0, + 158, 0, 0, 0, 0, 159, 160, 161, 162, 163, + 164, 165, 166, 167, 168, 0, 0, 171, 0, 0, + 0, 169, 170, 0, 0, 0, 0, 105, 0, 287, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 141, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 139, 0, 0, 0, 0, - 0, 0, 79, 0, 254, 0, 0, 244, 244, 0, - 0, 0, 244, 0, 0, 0, 0, 0, 0, 244, - 141, 0, 0, 244, 244, 0, 244, 244, 244, 0, - 0, 0, 0, 37, 244, 0, 0, 38, 0, 139, - 0, 244, 0, 0, 0, 0, 123, 124, 0, 39, - 0, 244, 244, 244, 244, 244, 244, 244, 125, 79, - 0, 306, 126, 0, 0, 0, 0, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 0, 141, 0, - 0, 0, 0, 137, 138, 37, 0, 0, 0, 38, - 0, 0, 0, 0, 0, 0, 0, 139, 123, 124, - 0, 39, 0, 79, 0, 307, 0, 0, 0, 0, - 125, 0, 0, 0, 230, 0, 0, 0, 0, 127, - 128, 129, 130, 131, 132, 133, 134, 135, 136, 0, - 0, 0, 0, 0, 0, 137, 138, 37, 0, 0, - 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, - 123, 124, 0, 39, 0, 0, 0, 0, 0, 0, - 0, 79, 125, 358, 0, 0, 126, 0, 0, 0, - 0, 127, 128, 129, 130, 131, 132, 133, 134, 135, - 136, 0, 0, 0, 0, 0, 0, 137, 138, 0, - 0, 0, 0, 0, 37, 0, 0, 0, 38, 0, - 0, 0, 0, 0, 0, 0, 0, 123, 124, 0, - 39, 0, 0, 0, 0, 0, 0, 0, 0, 125, - 0, 0, 0, 126, 0, 0, 0, 0, 127, 128, - 129, 130, 131, 132, 133, 134, 135, 136, 37, 0, - 0, 0, 38, 0, 137, 138, 0, 0, 0, 0, - 0, 123, 124, 0, 39, 0, 0, 0, 0, 0, - 0, 0, 0, 125, 0, 0, 0, 126, 0, 0, - 0, 0, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 0, 0, 0, 0, 0, 0, 137, 138, - 0, 0, 0, 0, 0, 0, 37, 0, 0, 0, - 38, 0, 0, 0, 0, 0, 0, 0, 0, 123, - 124, 0, 39, 0, 0, 0, 0, 0, 0, 0, - 0, 125, 0, 0, 0, 126, 0, 0, 0, 0, - 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 0, 0, 0, 0, 0, 0, 137, 138, + 0, 0, 0, 0, 0, 0, 173, 0, 0, 0, + 0, 0, 0, 48, 0, 0, 0, 49, 0, 0, + 0, 0, 0, 0, 0, 171, 155, 156, 0, 50, + 0, 0, 0, 0, 0, 0, 0, 0, 157, 0, + 0, 105, 262, 339, 0, 0, 0, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, 0, 173, 0, + 0, 0, 0, 169, 170, 0, 245, 245, 0, 0, + 0, 245, 0, 0, 0, 0, 0, 171, 245, 0, + 0, 0, 245, 245, 0, 245, 245, 245, 0, 105, + 0, 340, 0, 245, 0, 0, 0, 0, 0, 0, + 245, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 245, 245, 245, 245, 245, 245, 245, 0, 0, 0, + 0, 0, 48, 54, 0, 0, 49, 0, 0, 0, + 0, 0, 0, 0, 0, 155, 156, 0, 50, 0, + 0, 105, 0, 392, 0, 0, 0, 157, 0, 0, + 0, 158, 0, 0, 0, 0, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, 0, 0, 0, 0, + 0, 0, 169, 170, 0, 0, 48, 0, 0, 0, + 49, 0, 0, 0, 0, 0, 0, 0, 139, 155, + 156, 0, 50, 0, 0, 0, 0, 0, 0, 0, + 0, 157, 0, 0, 0, 158, 0, 0, 0, 0, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + 0, 0, 0, 0, 48, 0, 169, 170, 49, 0, + 0, 0, 0, 0, 0, 0, 0, 155, 156, 0, + 50, 0, 0, 0, 0, 0, 0, 0, 0, 157, + 0, 0, 0, 158, 0, 0, 0, 0, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, 0, 0, + 0, 0, 0, 0, 169, 170, 48, 0, 0, 0, + 49, 0, 0, 0, 0, 0, 0, 0, 0, 155, + 156, 0, 50, 0, 0, 0, 0, 0, 0, 0, + 0, 157, 0, 0, 0, 158, 0, 0, 0, 0, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + 1, 48, 0, 0, 0, 49, 169, 170, 0, 0, + 0, 0, 3, 0, 0, 0, 0, 50, 0, 4, + 5, 6, 0, 0, 0, 0, 0, 8, 0, 0, + 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 84, }; - protected short yyCheck[] = new short[3579]; + protected short yyCheck[] = new short[3796]; } class yyCheck0 { - protected static final short yyCheck0 [] = { 79, - 41, 82, 46, 63, 46, 60, 91, 62, 40, 60, - 88, 22, 22, 59, 46, 59, 61, 79, 123, 100, - 44, 62, 63, 41, 74, 106, 41, 43, 305, 109, - 20, 21, 149, 123, 123, 59, 60, 61, 49, 49, - 91, 109, 44, 236, 63, 41, 10, 109, 22, 301, - 364, 62, 79, 63, 137, 138, 22, 83, 335, 301, - 59, 258, 103, 44, 40, 262, 107, 91, 60, 149, - 96, 79, 44, 83, 41, 49, 24, 274, 26, 69, - 83, 62, 109, 49, 60, 44, 96, 149, 62, 105, - 62, 368, 301, 96, 291, 91, 107, 268, 88, 63, - 40, 109, 44, 62, 301, 44, 46, 190, 191, 192, - 188, 425, 426, 44, 44, 232, 430, 44, 92, 44, - 62, 123, 149, 62, 72, 43, 79, 45, 59, 258, - 44, 141, 62, 262, 44, 62, 147, 62, 141, 44, - 44, 149, 183, 224, 79, 274, 227, 41, 62, 59, - 44, 61, 232, 233, 44, 123, 109, 62, 62, 60, - 44, 301, 291, 268, 258, 233, 182, 360, 262, 59, - 232, 233, 301, 183, 109, 59, 179, 282, 268, 189, - 274, 302, 44, 40, 305, 235, 189, 237, 238, 308, - 309, 308, 282, 282, 268, 59, 149, 59, 188, 277, - 283, 284, 285, 37, 91, 232, 233, 301, 42, 41, - 289, 285, 44, 47, 149, 61, 301, 41, 273, 91, - 44, 123, 425, 426, 232, 233, 258, 430, 308, 41, - 301, 41, 44, 274, 44, 276, 293, 294, 288, 41, - 258, 301, 44, 258, 262, 301, 308, 262, 303, 304, - 301, 332, 333, 336, 40, 41, 274, 93, 44, 274, - 46, 271, 308, 309, 308, 309, 308, 309, 271, 314, - 315, 316, 317, 59, 60, 61, 321, 301, 95, 232, - 233, 308, 301, 301, 364, 365, 301, 277, 286, 287, - 95, 258, 302, 374, 375, 262, 93, 232, 233, 379, - 308, 41, 364, 365, 44, 91, 38, 274, 125, 308, - 309, 60, 40, 354, 355, 40, 40, 379, 44, 46, - 125, 401, 402, 59, 404, 329, 59, 44, 38, 409, - 94, 124, 307, 413, 301, 415, 416, 364, 365, 401, - 402, 306, 404, 40, 424, 425, 426, 409, 59, 301, - 430, 413, 379, 415, 416, 308, 364, 365, 301, 40, - 40, 60, 424, 425, 426, 46, 59, 41, 430, 41, - 40, 379, 59, 308, 401, 402, 59, 404, 41, 40, - 61, 59, 409, 59, 40, 267, 413, 41, 415, 416, - 41, 41, 41, 401, 402, 41, 404, 424, 425, 426, - 267, 409, 0, 430, 123, 413, 301, 415, 416, 301, - 91, 364, 365, 16, 123, 123, 424, 425, 426, 123, - 59, 123, 430, 123, 241, 242, 379, 123, 245, 364, - 365, 289, 290, 291, 292, 252, 241, 242, 59, 123, - 245, 258, 49, 62, 379, 26, 123, 69, 401, 402, - 123, 404, 269, 258, 189, 123, 409, 271, 33, 296, - 413, 299, 415, 416, 295, 40, 401, 402, 43, 404, - 45, 424, 425, 426, 409, 297, 75, 430, 413, 298, - 415, 416, 269, 12, 20, 21, 22, 269, 305, 424, - 425, 426, 105, 63, 33, 430, 108, 239, 315, -1, - -1, 40, -1, -1, 43, 257, 45, -1, -1, -1, - 315, 263, -1, 49, -1, 301, -1, 269, 335, -1, - 59, -1, 308, 309, 276, 277, 278, 63, 314, 315, - 316, 317, 284, 69, -1, 321, -1, -1, 74, -1, - -1, -1, -1, 79, 361, -1, 363, 83, 123, 366, - -1, 368, 88, -1, -1, -1, 361, -1, 363, -1, - 96, 366, 37, 38, 381, 382, 41, 42, 43, 44, - 45, -1, 47, 109, -1, -1, 381, 382, -1, -1, - -1, 24, 25, 26, 59, 60, 61, 62, 257, 406, - 407, 408, -1, -1, 263, -1, -1, -1, -1, -1, - 269, 406, 407, 408, -1, 141, -1, 276, 277, 278, - -1, 33, -1, 149, -1, 284, -1, -1, 40, 94, - 301, 43, -1, 45, -1, 68, -1, 308, 309, 72, - 73, -1, -1, 314, 315, 316, 317, 59, -1, -1, - 321, -1, -1, -1, -1, -1, -1, 183, 33, 124, - 125, -1, 188, 189, -1, 40, 41, -1, 43, -1, - 45, -1, -1, -1, -1, 33, -1, -1, -1, -1, - -1, 114, 40, 41, -1, 43, -1, 45, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 232, 233, -1, 235, - 275, 237, 238, 33, -1, -1, -1, -1, -1, -1, - 40, -1, 287, 43, -1, 45, -1, -1, 293, 294, - 295, 296, 297, 298, 299, 300, 301, -1, -1, 59, - 33, -1, -1, 308, 309, 271, 275, 40, 41, -1, - 43, 277, 45, -1, -1, -1, -1, -1, 287, -1, - -1, -1, 288, -1, 293, 294, 295, 296, 297, 298, - 299, 300, 301, -1, -1, -1, 302, 33, -1, 308, - 309, -1, 308, -1, 40, 41, -1, 43, -1, 45, - -1, -1, 257, 258, -1, -1, -1, 262, -1, -1, - -1, -1, -1, -1, 269, -1, -1, -1, 273, 274, - -1, 276, 277, 278, -1, -1, -1, -1, -1, 284, - 33, -1, -1, -1, -1, -1, 291, 40, -1, -1, - 43, -1, 45, -1, -1, -1, 301, 302, 303, 304, - 305, 306, 307, 308, 309, -1, 59, 33, -1, 314, - 315, 316, 317, -1, 40, 41, 321, 43, -1, 45, - -1, -1, -1, 275, 33, -1, -1, -1, -1, -1, - -1, 40, 41, -1, 43, 287, 45, -1, -1, -1, - -1, 293, 294, 295, 296, 297, 298, 299, 300, 301, - -1, 33, -1, -1, -1, -1, 308, 309, 40, 41, - 275, 43, -1, 45, -1, -1, -1, -1, -1, -1, - -1, -1, 287, -1, -1, -1, -1, 275, 293, 294, - 295, 296, 297, 298, 299, 300, 301, -1, -1, 287, - -1, -1, -1, 308, 309, 293, 294, 295, 296, 297, - 298, 299, 300, 301, -1, -1, 33, -1, -1, -1, - 308, 309, -1, 40, 41, 275, 43, -1, 45, -1, - -1, -1, -1, -1, -1, -1, -1, 287, -1, -1, - -1, -1, -1, 293, 294, 295, 296, 297, 298, 299, - 300, 301, 275, 33, -1, -1, -1, -1, 308, 309, - 40, -1, -1, 43, 287, 45, -1, -1, -1, -1, - 293, 294, 295, 296, 297, 298, 299, 300, 301, -1, + protected static final short yyCheck0 [] = { 105, + 52, 41, 40, 46, 63, 25, 26, 91, 46, 27, + 46, 100, 32, 60, 181, 33, 59, 105, 51, 123, + 134, 73, 74, 61, 57, 123, 63, 114, 134, 54, + 123, 60, 44, 62, 269, 41, 27, 44, 59, 91, + 92, 123, 60, 33, 91, 44, 134, 59, 60, 61, + 59, 123, 27, 91, 41, 12, 74, 44, 41, 399, + 80, 308, 309, 41, 35, 29, 37, 59, 86, 60, + 44, 105, 36, 93, 92, 181, 338, 129, 59, 91, + 132, 40, 73, 44, 302, 60, 109, 305, 62, 105, + 142, 109, 59, 181, 114, 40, 86, 264, 73, 122, + 134, 62, 61, 59, 122, 130, 40, 369, 91, 59, + 41, 108, 46, 44, 301, 60, 123, 74, 134, 40, + 41, 461, 462, 44, 123, 46, 466, 118, 99, 126, + 59, 123, 96, 220, 131, 92, 301, 59, 59, 60, + 61, 403, 123, 105, 59, 59, 301, 181, 59, 59, + 173, 265, 268, 44, 61, 173, 123, 132, 264, 265, + 395, 105, 27, 215, 268, 181, 32, 123, 33, 285, + 91, 62, 134, 123, 341, 268, 264, 265, 282, 268, + 60, 270, 271, 258, 282, 60, 268, 262, 211, 214, + 134, 301, 109, 44, 123, 60, 268, 215, 221, 274, + 220, 123, 44, 221, 179, 122, 44, 44, 123, 123, + 282, 62, 123, 123, 80, 44, 105, 301, 258, 181, + 62, 86, 262, 310, 62, 62, 301, 93, 44, 44, + 264, 265, 321, 62, 274, 341, 268, 181, 461, 462, + 319, 320, 301, 466, 273, 134, 62, 62, 264, 265, + 60, 44, 258, 341, 301, 307, 262, 309, 291, 256, + 123, 301, 259, 301, 301, 308, 309, 44, 274, 62, + 308, 309, 308, 309, 303, 304, 314, 315, 316, 317, + 258, 304, 44, 321, 262, 62, 304, 308, 309, 301, + 310, 44, 181, 399, 400, 301, 274, 59, 44, 308, + 309, 44, 264, 265, 121, 37, 59, 341, 61, 415, + 42, 399, 400, 59, 44, 47, 59, 335, 59, 41, + 264, 265, 44, 301, 43, 341, 45, 415, 301, 59, + 41, 437, 438, 44, 440, 41, 388, 389, 44, 445, + 157, 41, 40, 449, 44, 451, 452, 289, 41, 437, + 438, 44, 440, 61, 460, 461, 462, 445, 326, 327, + 466, 449, 91, 451, 452, 399, 400, 91, 301, 366, + 367, 123, 460, 461, 462, 264, 265, 59, 466, 341, + 301, 415, 301, 399, 400, 301, 93, 308, 309, 60, + 93, 38, 60, 314, 315, 316, 317, 341, 40, 415, + 321, 40, 40, 437, 438, 59, 440, 314, 315, 316, + 317, 445, 409, 410, 321, 449, 44, 451, 452, 46, + 329, 437, 438, 59, 440, 44, 460, 461, 462, 445, + 38, 94, 466, 449, 124, 451, 452, 399, 400, 322, + 323, 324, 325, 307, 460, 461, 462, 306, 40, 59, + 466, 301, 341, 415, 125, 399, 400, 274, 275, 40, + 301, 278, 29, 30, 60, 59, 41, 41, 40, 36, + 59, 415, 59, 59, 291, 437, 438, 59, 440, 41, + 59, 40, 40, 445, 267, 41, 41, 449, 41, 451, + 452, 41, 41, 437, 438, 267, 440, 0, 460, 461, + 462, 445, 301, 86, 466, 449, 20, 451, 452, 21, + 399, 400, 79, 59, 59, 36, 460, 461, 462, 60, + 60, 73, 466, 304, 33, 342, 415, 37, 328, 96, + 97, 40, 349, 221, 43, 329, 45, 332, 330, 302, + 169, 170, 331, 302, 101, 130, 31, 14, 437, 438, + 59, 440, 74, 133, 33, 272, 445, -1, -1, -1, + 449, 40, 451, 452, 43, -1, 45, 25, 26, 27, + -1, 460, 461, 462, 32, 33, -1, 466, 145, 396, + 59, 398, -1, -1, 401, -1, 257, 258, 258, -1, + -1, 262, 262, 222, 223, 224, -1, -1, 269, -1, + 417, 418, 60, 274, 274, 276, 277, 278, -1, -1, + -1, -1, -1, 284, -1, -1, 74, -1, -1, -1, + 291, 291, 80, -1, -1, 442, 443, 444, 86, -1, + 301, 301, -1, -1, 92, 93, -1, 258, -1, -1, + -1, 262, 100, -1, -1, -1, -1, 105, -1, -1, + -1, 109, -1, 274, -1, -1, 114, -1, -1, -1, + -1, 37, 38, -1, 122, 41, 42, 43, 44, 45, + 291, 47, -1, -1, -1, -1, 134, -1, -1, -1, + 301, -1, -1, 59, 60, 61, 62, 316, 317, 318, + -1, -1, 33, -1, -1, -1, -1, -1, -1, 40, + 41, -1, 43, -1, 45, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 173, 257, 258, 94, 33, + -1, 262, -1, 181, -1, -1, 40, -1, 269, 43, + -1, 45, -1, 274, -1, 276, 277, 278, -1, -1, + -1, 370, -1, 284, -1, -1, 33, -1, 124, 125, + 291, -1, -1, 40, 41, 257, 43, 215, 45, -1, + 301, 263, 220, 221, -1, -1, 275, 269, -1, -1, + -1, -1, -1, -1, 276, 277, 278, -1, 287, 281, + -1, -1, 284, -1, 293, 294, 295, 296, 297, 298, + 299, 300, 301, -1, -1, -1, 275, -1, -1, 308, + 309, -1, -1, -1, -1, -1, 264, 265, 287, 123, + 268, -1, 270, 271, 293, 294, 295, 296, 297, 298, + 299, 300, 301, -1, 33, -1, -1, -1, -1, 308, + 309, 40, -1, -1, 43, -1, 45, -1, -1, -1, + 60, 33, -1, -1, -1, -1, 304, -1, 40, 41, + 59, 43, 310, 45, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 321, -1, -1, -1, -1, 33, -1, + -1, -1, -1, -1, -1, 40, 41, 335, 43, -1, + 45, 257, 258, 341, -1, -1, 262, -1, -1, -1, + -1, -1, -1, 269, -1, -1, -1, 273, 274, -1, + 276, 277, 278, -1, -1, 125, -1, -1, 284, 33, + -1, -1, -1, -1, -1, 291, 40, -1, -1, 43, + -1, 45, -1, -1, -1, 301, 302, 303, 304, 305, + 306, 307, 308, 309, 275, 59, -1, -1, 314, 315, + 316, 317, -1, -1, -1, 321, 287, -1, -1, -1, + -1, -1, 293, 294, 295, 296, 297, 298, 299, 300, + 301, 275, 33, -1, -1, -1, -1, 308, 309, 40, + 41, -1, 43, 287, 45, -1, -1, -1, -1, 293, + 294, 295, 296, 297, 298, 299, 300, 301, 275, 33, + -1, -1, -1, -1, 308, 309, 40, 41, -1, 43, }; } class yyCheck1 { - protected static final short yyCheck1 [] = { 33, - -1, -1, -1, -1, 308, 309, 40, -1, 275, 43, - -1, 45, -1, -1, -1, -1, -1, -1, -1, -1, - 287, -1, -1, -1, -1, -1, 293, 294, 295, 296, - 297, 298, 299, 300, 301, -1, -1, -1, -1, -1, - -1, 308, 309, -1, -1, -1, -1, -1, -1, -1, - -1, 275, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 287, -1, -1, -1, -1, -1, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 275, -1, - -1, -1, -1, -1, 308, 309, -1, 60, -1, -1, - 287, -1, -1, -1, -1, 275, 293, 294, 295, 296, - 297, 298, 299, 300, 301, -1, -1, 287, -1, -1, - -1, 308, 309, 293, 294, 295, 296, 297, 298, 299, - 300, 301, 275, -1, -1, -1, -1, -1, 308, 309, - -1, -1, -1, -1, 287, -1, -1, -1, -1, -1, - 293, 294, 295, 296, 297, 298, 299, 300, 301, -1, - -1, -1, 125, -1, -1, 308, 309, -1, 37, 38, - -1, 40, 41, 42, 43, 44, 45, 46, 47, -1, - -1, -1, -1, -1, -1, -1, -1, 275, -1, -1, - 59, -1, -1, 62, -1, -1, -1, -1, -1, 287, - -1, -1, -1, -1, -1, 293, 294, 295, 296, 297, - 298, 299, 300, 301, -1, -1, -1, -1, -1, -1, - 308, 309, 91, -1, 275, 94, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 287, -1, -1, -1, - 40, -1, 293, 294, 295, 296, 297, 298, 299, 300, - 301, -1, -1, -1, 123, 124, 125, 308, 309, 59, + protected static final short yyCheck1 [] = { 287, + 45, -1, -1, -1, -1, 293, 294, 295, 296, 297, + 298, 299, 300, 301, -1, 33, -1, -1, -1, -1, + 308, 309, 40, 41, -1, 43, -1, 45, -1, -1, + -1, -1, 33, -1, -1, -1, 257, 258, -1, 40, + 41, 262, 43, -1, 45, -1, -1, -1, 269, -1, + -1, -1, -1, 274, -1, 276, 277, 278, -1, 33, + -1, -1, -1, 284, -1, 275, 40, -1, -1, 43, + 291, 45, -1, -1, -1, -1, -1, 287, -1, -1, + 301, -1, 275, 293, 294, 295, 296, 297, 298, 299, + 300, 301, -1, -1, 287, -1, -1, -1, 308, 309, + 293, 294, 295, 296, 297, 298, 299, 300, 301, 275, + 33, -1, -1, -1, -1, 308, 309, 40, -1, -1, + 43, 287, 45, -1, -1, -1, -1, 293, 294, 295, + 296, 297, 298, 299, 300, 301, -1, -1, -1, 257, + -1, -1, 308, 309, -1, 263, -1, -1, -1, -1, + 275, 269, -1, -1, -1, -1, -1, -1, 276, 277, + 278, -1, 287, 281, -1, -1, 284, -1, 293, 294, + 295, 296, 297, 298, 299, 300, 301, -1, 40, -1, + -1, -1, -1, 308, 309, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 59, -1, -1, + -1, -1, -1, 275, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 287, -1, -1, -1, -1, + -1, 293, 294, 295, 296, 297, 298, 299, 300, 301, + 275, -1, -1, -1, -1, -1, 308, 309, -1, -1, + -1, -1, 287, -1, -1, -1, -1, -1, 293, 294, + 295, 296, 297, 298, 299, 300, 301, 275, -1, -1, + -1, 123, -1, 308, 309, -1, -1, -1, -1, 287, + -1, -1, -1, -1, 275, 293, 294, 295, 296, 297, + 298, 299, 300, 301, 40, -1, 287, -1, -1, -1, + 308, 309, 293, 294, 295, 296, 297, 298, 299, 300, + 301, 275, -1, 59, -1, -1, -1, 308, 309, -1, -1, -1, -1, 287, -1, -1, -1, -1, -1, 293, 294, 295, 296, 297, 298, 299, 300, 301, -1, -1, - -1, -1, 37, 38, 308, 309, 41, 42, 43, 44, - 45, -1, 47, -1, 257, 258, -1, -1, -1, 262, - -1, -1, -1, -1, 59, 60, 269, 62, -1, -1, - -1, 274, -1, 276, 277, 278, 364, 365, -1, -1, - -1, 284, -1, 123, -1, 125, -1, -1, 291, -1, - -1, 379, -1, -1, -1, -1, -1, 37, 301, 94, - -1, 41, 42, 43, 44, 45, 46, 47, -1, -1, - -1, -1, -1, 401, 402, -1, 404, -1, -1, 59, - 60, 409, 62, -1, -1, 413, -1, 415, 416, 124, - 125, -1, -1, -1, -1, -1, 424, 425, 426, -1, - -1, -1, 430, -1, -1, -1, -1, -1, 257, 258, - -1, -1, -1, 262, 94, -1, -1, -1, -1, -1, - 269, -1, -1, -1, 273, 274, -1, 276, 277, 278, - -1, -1, -1, 282, -1, 284, -1, -1, -1, 60, - -1, -1, 291, -1, 124, 125, -1, -1, -1, -1, - -1, -1, 301, 302, 303, 304, 305, 306, 307, 308, - 309, -1, -1, 37, 38, -1, -1, 41, 42, 43, - 44, 45, 46, 47, -1, -1, -1, -1, 258, -1, - -1, -1, 262, -1, -1, 59, 60, 267, 62, -1, - -1, 271, 272, -1, 274, -1, -1, -1, -1, -1, - -1, -1, -1, 283, 125, -1, -1, 287, -1, -1, - -1, -1, 292, 293, 294, 295, 296, 297, 298, 299, - 300, 301, 257, 258, -1, -1, -1, 262, 308, 309, - -1, -1, -1, -1, 269, -1, -1, -1, 273, 274, - -1, 276, 277, 278, -1, -1, -1, -1, -1, 284, - 124, 125, -1, -1, -1, -1, 291, 40, -1, -1, - -1, -1, -1, -1, -1, -1, 301, 302, 303, 304, - 305, 306, 307, 308, 309, -1, 59, 257, 258, -1, - -1, -1, 262, -1, -1, -1, -1, -1, -1, 269, - -1, -1, -1, 273, 274, -1, 276, 277, 278, -1, - -1, -1, -1, -1, 284, -1, -1, -1, 37, 38, - -1, 291, 41, 42, 43, 44, 45, 46, 47, -1, - -1, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 59, 60, -1, 62, -1, -1, 257, 258, -1, -1, - 123, 262, -1, -1, -1, -1, -1, -1, 269, -1, - -1, -1, -1, 274, -1, 276, 277, 278, -1, -1, - -1, -1, -1, 284, -1, 94, -1, 37, 38, -1, - 291, 41, 42, 43, 44, 45, 46, 47, -1, -1, - 301, -1, -1, 257, 258, -1, -1, -1, 262, 59, - 60, -1, 62, -1, -1, 269, 125, -1, -1, 273, - 274, -1, 276, 277, 278, -1, -1, -1, -1, -1, - 284, -1, -1, -1, -1, -1, -1, 291, -1, -1, - -1, -1, -1, -1, 94, -1, -1, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 37, 38, -1, -1, + -1, -1, -1, -1, 308, 309, 37, 38, -1, 40, 41, 42, 43, 44, 45, 46, 47, -1, -1, -1, - -1, -1, -1, -1, 124, 125, -1, -1, 59, 60, - -1, 62, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 37, 38, -1, -1, 41, 42, 43, - 44, 45, -1, 47, -1, -1, -1, -1, 271, 272, - -1, -1, -1, 94, -1, 59, 60, -1, 62, -1, - 283, -1, -1, -1, 287, -1, -1, -1, -1, 292, + -1, -1, -1, -1, -1, -1, -1, -1, 59, -1, + -1, 62, -1, -1, 287, -1, -1, 123, -1, -1, 293, 294, 295, 296, 297, 298, 299, 300, 301, -1, - -1, -1, -1, 124, 125, 308, 309, -1, 257, 258, - 94, -1, -1, 262, -1, -1, -1, -1, -1, -1, - 269, -1, -1, -1, 273, 274, -1, 276, 277, 278, - -1, -1, -1, -1, -1, 284, -1, -1, -1, 37, - 124, 125, 291, 41, 42, 43, 44, 45, 46, 47, - -1, -1, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 59, 60, -1, 62, -1, -1, 257, 258, -1, - -1, -1, 262, -1, -1, -1, -1, -1, -1, 269, - -1, -1, -1, 273, 274, -1, 276, 277, 278, -1, - -1, -1, -1, -1, 284, -1, 94, -1, -1, -1, - -1, 291, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 301, 302, 303, 304, 305, 306, -1, 308, 309, - -1, -1, -1, -1, 37, 38, 124, 125, 41, 42, - 43, 44, 45, 46, 47, -1, 257, 258, -1, -1, - -1, 262, -1, -1, -1, -1, 59, 60, 269, 62, + -1, -1, -1, -1, -1, 308, 309, -1, -1, -1, + 91, 37, 38, 94, -1, 41, 42, 43, 44, 45, + -1, 47, -1, -1, -1, -1, -1, -1, -1, 271, + 272, -1, -1, 59, 60, -1, 62, -1, -1, -1, + -1, 283, 123, 124, 125, 287, -1, -1, -1, -1, + 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, + -1, -1, -1, -1, -1, 37, 308, 309, 94, 41, + 42, 43, 44, 45, 46, 47, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 59, 60, -1, + 62, -1, -1, -1, -1, -1, -1, -1, 124, 125, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 37, + 38, -1, 94, 41, 42, 43, 44, 45, 46, 47, + -1, -1, -1, -1, -1, 271, 272, -1, -1, -1, + -1, 59, 60, -1, 62, -1, -1, 283, -1, -1, + -1, 287, 124, 125, -1, -1, 292, 293, 294, 295, + 296, 297, 298, 299, 300, 301, -1, -1, -1, -1, + -1, -1, 308, 309, -1, -1, 257, 258, -1, -1, + -1, 262, -1, -1, -1, -1, -1, -1, 269, -1, -1, -1, 273, 274, -1, 276, 277, 278, -1, -1, - -1, -1, -1, 284, -1, -1, -1, -1, -1, -1, - 291, -1, -1, 257, 258, -1, -1, -1, 262, -1, - 301, 302, 303, 304, 305, 269, 307, 308, 309, 273, - 274, -1, 276, 277, 278, -1, -1, -1, -1, -1, - 284, -1, -1, -1, -1, -1, -1, 291, -1, -1, + -1, 282, -1, 284, -1, -1, 124, 125, -1, -1, + 291, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 301, 302, 303, 304, 305, 306, 307, 308, 309, -1, + -1, 257, 258, -1, -1, -1, 262, -1, -1, -1, + -1, -1, -1, 269, -1, -1, -1, 273, 274, -1, + 276, 277, 278, -1, 169, 170, -1, -1, 284, -1, + -1, -1, -1, -1, -1, 291, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 301, 302, 303, 304, 305, + 306, 307, 308, 309, -1, 257, 258, -1, -1, -1, + 262, -1, -1, -1, -1, -1, -1, 269, -1, 60, + -1, 273, 274, -1, 276, 277, 278, 222, 223, 224, + -1, -1, 284, -1, -1, -1, -1, -1, -1, 291, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 301, + 302, 303, 304, 305, 306, 307, 308, 309, -1, 257, + 258, -1, -1, -1, 262, -1, -1, -1, -1, -1, + -1, 269, -1, -1, -1, 273, 274, -1, 276, 277, + 278, -1, -1, -1, 125, -1, 284, -1, -1, -1, + 37, 38, -1, 291, 41, 42, 43, 44, 45, 46, + 47, -1, -1, 301, 302, 303, 304, 305, 306, 307, + 308, 309, 59, 60, -1, 62, -1, -1, -1, -1, + -1, 316, 317, 318, 319, 320, -1, 322, 323, 324, + 325, 326, 327, 328, 329, 330, 331, 332, -1, -1, + -1, -1, -1, -1, 37, 38, -1, 94, 41, 42, + 43, 44, 45, 46, 47, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 59, 60, -1, 62, + -1, -1, -1, -1, -1, 370, -1, -1, 125, -1, + -1, -1, 37, 38, -1, -1, 41, 42, 43, 44, + 45, 46, 47, -1, -1, -1, -1, -1, -1, -1, + -1, 94, -1, -1, 59, 60, -1, 62, -1, -1, + -1, -1, -1, -1, -1, -1, 257, 258, -1, 37, + 38, 262, -1, 41, 42, 43, 44, 45, 269, 47, + -1, 124, 125, 274, -1, 276, 277, 278, -1, 94, + -1, 59, 60, 284, 62, -1, -1, -1, -1, -1, + 291, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 301, -1, -1, -1, -1, -1, -1, -1, -1, 124, + 125, -1, -1, -1, -1, -1, 94, -1, -1, 37, + -1, -1, -1, 41, 42, 43, 44, 45, 46, 47, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 59, 60, -1, 62, -1, 124, 125, -1, -1, + 257, 258, -1, -1, -1, 262, -1, -1, -1, -1, + -1, -1, 269, -1, -1, -1, 273, 274, -1, 276, + 277, 278, -1, -1, -1, -1, 94, 284, -1, -1, }; } class yyCheck2 { protected static final short yyCheck2 [] = { -1, - 124, 125, -1, 60, -1, -1, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 37, 38, -1, -1, 41, - 42, 43, 44, 45, 46, 47, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 59, 60, -1, - 62, -1, -1, -1, -1, -1, -1, -1, 257, 258, + -1, -1, -1, 291, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 301, 302, 303, 304, 305, 306, 307, + 308, 309, -1, 257, 258, 124, 125, -1, 262, -1, + -1, -1, -1, -1, -1, 269, -1, -1, -1, 273, + 274, -1, 276, 277, 278, -1, -1, -1, -1, -1, + 284, -1, -1, -1, -1, -1, -1, 291, -1, -1, + -1, 257, 258, -1, -1, 60, 262, 301, 302, 303, + 304, 305, 306, 269, 308, 309, -1, 273, 274, -1, + 276, 277, 278, -1, -1, -1, -1, -1, 284, -1, + -1, -1, -1, -1, -1, 291, -1, -1, 257, 258, + -1, -1, -1, 262, -1, 301, 302, 303, 304, 305, + 269, 307, 308, 309, 273, 274, -1, 276, 277, 278, + -1, -1, -1, -1, -1, 284, -1, -1, -1, 37, + 38, -1, 291, 41, 42, 43, 44, 45, 46, 47, + -1, -1, 301, 302, 303, 304, 305, 306, 307, 308, + 309, 59, 60, -1, 62, -1, -1, -1, 257, 258, -1, -1, -1, 262, -1, -1, -1, -1, -1, -1, 269, -1, -1, -1, 273, 274, -1, 276, 277, 278, - -1, -1, 94, -1, -1, 284, -1, -1, -1, -1, - -1, -1, 291, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 284, -1, -1, -1, 37, + 38, -1, 291, 41, 42, 43, 44, 45, 46, 47, -1, -1, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 37, 38, 125, -1, 41, 42, 43, 44, 45, - 46, 47, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 59, 60, -1, 62, -1, -1, -1, - -1, -1, -1, 257, 258, -1, -1, -1, 262, -1, + 309, 59, 60, -1, 62, -1, 124, 125, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 37, 38, -1, 94, 41, 42, 43, + 44, 45, 46, 47, -1, -1, -1, -1, -1, -1, + -1, -1, 257, 258, -1, 59, 60, 262, 62, -1, + -1, -1, 399, 400, 269, -1, -1, 125, -1, 274, + -1, 276, 277, 278, -1, -1, -1, -1, 415, 284, + -1, -1, -1, -1, -1, -1, 291, -1, 37, 38, + 94, -1, 41, 42, -1, 44, 301, 46, 47, -1, + 437, 438, -1, 440, -1, -1, -1, -1, 445, -1, + 59, 60, 449, 62, 451, 452, -1, -1, -1, -1, + 124, 125, -1, 460, 461, 462, -1, -1, -1, 466, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 257, + 258, -1, -1, -1, 262, 94, -1, -1, -1, -1, + -1, 269, -1, -1, -1, 273, 274, -1, 276, 277, + 278, -1, -1, -1, -1, -1, 284, -1, -1, -1, + -1, -1, -1, 291, -1, 124, 125, -1, -1, -1, + -1, -1, -1, 301, 302, 303, 304, 305, 306, 307, + 308, 309, -1, -1, -1, -1, -1, -1, -1, 257, + 258, -1, -1, -1, 262, -1, -1, -1, -1, -1, + -1, 269, -1, -1, -1, 273, 274, -1, 276, 277, + 278, -1, -1, -1, -1, -1, 284, -1, -1, -1, + -1, -1, -1, 291, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 301, 302, 303, 304, 305, 306, 307, + 308, 309, -1, 257, 258, -1, -1, -1, 262, -1, -1, -1, -1, -1, -1, 269, -1, -1, -1, 273, - 274, -1, 276, 277, 278, -1, -1, -1, 94, -1, - 284, -1, -1, -1, -1, -1, -1, 291, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 37, 38, 124, 125, - 41, 42, -1, 44, -1, 46, 47, -1, -1, -1, - 257, 258, -1, -1, -1, 262, -1, -1, 59, 60, - -1, 62, 269, -1, -1, -1, -1, 274, -1, 276, - 277, 278, -1, -1, -1, -1, -1, 284, -1, -1, - -1, -1, -1, -1, 291, 257, 258, -1, -1, -1, - 262, -1, 40, 94, 301, -1, -1, 269, -1, -1, - -1, 273, 274, -1, 276, 277, 278, -1, -1, -1, - -1, 59, 284, -1, -1, -1, -1, -1, -1, 291, - -1, -1, -1, 124, 125, -1, -1, -1, -1, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 37, 38, - -1, -1, 41, 42, 43, 44, 45, 46, 47, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 59, 60, -1, 62, -1, -1, -1, -1, -1, -1, - -1, 257, 258, -1, -1, 123, 262, -1, -1, -1, - -1, -1, -1, 269, -1, -1, -1, 273, 274, -1, - 276, 277, 278, -1, -1, 94, -1, -1, 284, -1, - -1, -1, -1, -1, -1, 291, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 301, 302, 303, 304, 305, - 306, -1, 308, 309, -1, 124, 125, 37, 38, -1, - -1, 41, 42, 43, 44, 45, 46, 47, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 59, - 60, -1, 62, -1, -1, -1, 257, 258, -1, -1, - -1, 262, -1, -1, -1, -1, -1, -1, 269, -1, - -1, -1, 273, 274, -1, 276, 277, 278, -1, -1, - -1, -1, -1, 284, 94, -1, -1, -1, -1, -1, - 291, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 301, 302, 303, 304, 305, 306, 307, 308, 309, -1, - -1, -1, 37, 38, 124, 125, 41, 42, 43, 44, - 45, 46, 47, 271, 272, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 59, 283, -1, -1, -1, 287, - -1, -1, -1, -1, 292, 293, 294, 295, 296, 297, - 298, 299, 300, 301, -1, -1, -1, -1, 257, 258, - 308, 309, -1, 262, -1, -1, -1, -1, -1, 94, + 274, -1, 276, 277, 278, -1, -1, -1, -1, -1, + 284, -1, -1, -1, 37, 38, -1, 291, 41, 42, + 43, 44, 45, 46, 47, -1, -1, 301, 302, 303, + 304, 305, 306, -1, 308, 309, 59, -1, 257, 258, + -1, -1, -1, 262, -1, -1, -1, -1, -1, -1, 269, -1, -1, -1, 273, 274, -1, 276, 277, 278, - -1, -1, -1, -1, -1, 284, -1, -1, -1, -1, - -1, -1, 291, -1, -1, -1, -1, -1, -1, 124, - 125, -1, 301, -1, 303, 304, -1, 306, 307, 308, - 309, -1, -1, 37, 38, -1, -1, 41, 42, 43, - 44, 45, 46, 47, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 59, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 257, 258, -1, - -1, -1, 262, -1, -1, -1, -1, -1, -1, 269, - -1, -1, -1, 273, 274, -1, 276, 277, 278, -1, - 94, -1, -1, -1, 284, -1, -1, -1, -1, -1, - -1, 291, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 301, -1, 303, 304, 60, 306, 307, 308, 309, - 124, 125, -1, 37, 38, -1, -1, 41, 42, 43, - 44, 45, 46, 47, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 59, -1, -1, -1, -1, - -1, -1, 257, 258, -1, -1, -1, 262, -1, -1, - -1, -1, -1, -1, 269, -1, -1, -1, -1, 274, - -1, 276, 277, 278, -1, -1, -1, -1, -1, 284, - 94, -1, -1, -1, -1, -1, 291, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 301, 302, -1, -1, - 305, 306, 307, 308, 309, -1, -1, -1, -1, -1, - 124, 125, -1, 38, -1, -1, 41, -1, 43, 44, - 45, 46, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 59, 60, -1, 62, -1, -1, + -1, -1, -1, -1, -1, 284, -1, -1, -1, 37, + 38, 94, 291, 41, 42, 43, 44, 45, 46, 47, + -1, -1, 301, 302, 303, 304, 305, 306, 307, 308, + 309, 59, 60, -1, 62, -1, -1, -1, -1, -1, + -1, 124, 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 37, 38, -1, 94, 41, 42, 43, + 44, 45, 46, 47, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 59, 60, -1, 62, -1, + -1, -1, -1, -1, -1, -1, 124, 125, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 94, -1, -1, 37, 38, -1, -1, 41, 42, 43, + 44, 45, 46, 47, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 59, -1, -1, -1, -1, + 124, 125, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 257, 258, -1, -1, -1, 262, + 94, -1, -1, -1, -1, -1, 269, -1, -1, -1, + -1, 274, -1, 276, 277, 278, -1, -1, -1, -1, + -1, 284, -1, -1, -1, -1, -1, -1, 291, -1, + 124, 125, -1, -1, -1, -1, -1, -1, 301, 302, + -1, -1, 305, 306, 307, 308, 309, -1, -1, 257, + 258, -1, -1, -1, 262, -1, -1, -1, -1, -1, + -1, 269, -1, -1, -1, 273, 274, -1, 276, 277, + 278, -1, -1, -1, -1, -1, 284, -1, -1, -1, + -1, -1, -1, 291, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 301, -1, 303, 304, -1, 306, 307, + 308, 309, -1, 257, 258, -1, -1, -1, 262, -1, + -1, -1, -1, -1, -1, 269, -1, -1, -1, 273, + 274, -1, 276, 277, 278, -1, -1, -1, -1, -1, + 284, -1, -1, -1, 37, 38, -1, 291, 41, 42, + 43, 44, 45, 46, 47, -1, -1, 301, -1, 303, + 304, -1, 306, 307, 308, 309, 59, -1, -1, -1, -1, -1, -1, 257, 258, -1, -1, -1, 262, -1, - -1, 137, 138, -1, -1, 269, -1, -1, -1, 94, + -1, -1, -1, -1, -1, 269, -1, -1, -1, -1, 274, -1, 276, 277, 278, -1, -1, -1, -1, -1, - 284, -1, -1, -1, -1, 38, -1, 291, 41, -1, - 43, 44, 45, 46, -1, -1, -1, 301, 302, 124, - 125, 305, 306, 307, 308, 309, 59, 60, -1, 62, - -1, -1, 257, 258, 190, 191, 192, 262, -1, -1, - -1, -1, -1, -1, 269, -1, -1, -1, -1, 274, - -1, 276, 277, 278, -1, -1, -1, -1, -1, 284, - -1, 94, -1, 257, 258, -1, 291, -1, 262, -1, - -1, -1, -1, -1, -1, 269, 301, -1, -1, -1, - 274, -1, 276, 277, 278, -1, -1, -1, -1, -1, - 284, 124, 125, -1, -1, 38, -1, 291, 41, -1, + 284, 94, -1, -1, -1, 38, -1, 291, 41, -1, 43, 44, 45, 46, -1, -1, -1, 301, 302, -1, -1, 305, 306, 307, 308, 309, 59, 60, -1, 62, - -1, -1, -1, -1, -1, -1, -1, 283, 284, 285, - 286, 287, -1, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 299, -1, -1, -1, -1, -1, -1, - -1, 94, 257, 258, -1, -1, -1, 262, -1, -1, - -1, -1, -1, -1, 269, -1, -1, -1, 273, 274, - -1, 276, 277, 278, -1, -1, -1, -1, -1, 284, - 336, 124, 125, -1, -1, -1, 291, -1, -1, -1, + -1, 124, 125, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 38, + -1, 94, 41, -1, 43, 44, 45, 46, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 59, 60, -1, 62, -1, -1, -1, -1, -1, -1, }; } class yyCheck3 { protected static final short yyCheck3 [] = { -1, - -1, -1, -1, -1, -1, 301, 302, 303, 304, 305, - 306, 307, 308, 309, 37, 38, -1, -1, 41, 42, - 43, 44, 45, 46, 47, -1, -1, -1, -1, -1, - -1, -1, -1, 257, 258, -1, 59, 60, 262, 62, - -1, -1, 40, -1, -1, 269, -1, -1, -1, 273, - 274, -1, 276, 277, 278, -1, -1, -1, -1, -1, - 284, 59, -1, -1, -1, -1, -1, 291, -1, -1, - -1, 94, -1, -1, -1, -1, -1, 301, 302, 303, - 304, 305, 306, 307, 308, 309, -1, -1, -1, -1, - -1, -1, -1, -1, 40, -1, -1, -1, -1, -1, - -1, 124, 125, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 59, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 257, 258, 123, -1, 125, 262, -1, - -1, -1, -1, -1, -1, 269, -1, -1, -1, 273, - 274, -1, 276, 277, 278, -1, 40, -1, -1, -1, - 284, -1, -1, -1, -1, -1, -1, 291, -1, -1, - -1, -1, -1, -1, -1, 59, -1, 301, 302, 303, - 304, 305, 306, 307, 308, 309, -1, 123, -1, 125, + 124, 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 38, 94, -1, 41, -1, 43, 44, + 45, 46, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 59, 60, -1, 62, -1, -1, + -1, -1, -1, -1, 124, 125, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 257, 258, -1, -1, -1, 262, 94, + -1, -1, -1, -1, -1, 269, 40, -1, -1, -1, + 274, -1, 276, 277, 278, -1, -1, -1, -1, -1, + 284, -1, -1, -1, -1, 59, -1, 291, -1, 124, + 125, -1, -1, -1, -1, -1, -1, 301, 302, -1, + -1, 305, 306, 307, 308, 309, -1, -1, -1, -1, + -1, -1, -1, 257, 258, -1, -1, -1, 262, -1, + 40, -1, -1, -1, -1, 269, -1, -1, -1, 273, + 274, -1, 276, 277, 278, -1, -1, -1, -1, 59, + 284, -1, -1, -1, -1, -1, -1, 291, -1, 123, + -1, 125, -1, -1, -1, -1, -1, 301, 302, 303, + 304, 305, 306, 307, 308, 309, -1, 257, 258, -1, + -1, -1, 262, -1, -1, -1, -1, -1, -1, 269, + -1, -1, -1, 273, 274, -1, 276, 277, 278, -1, + -1, -1, -1, -1, 284, -1, -1, -1, -1, -1, + -1, 291, 40, 123, -1, 125, -1, -1, -1, -1, + -1, 301, 302, 303, 304, 305, 306, 307, 308, 309, + -1, 59, 257, 258, -1, -1, -1, 262, -1, -1, + -1, -1, -1, -1, 269, -1, -1, -1, 273, 274, + -1, 276, 277, 278, -1, -1, -1, -1, -1, 284, + -1, -1, -1, 37, 38, -1, 291, 41, 42, 43, + 44, 45, 46, 47, -1, -1, 301, 302, 303, 304, + 305, 306, 307, 308, 309, 59, 60, -1, 62, -1, + -1, -1, -1, -1, 258, 123, -1, 125, 262, -1, + -1, -1, -1, 267, -1, -1, -1, 271, 272, -1, + 274, -1, -1, -1, -1, -1, -1, -1, -1, 283, + 94, 40, -1, 287, -1, -1, -1, -1, 292, 293, + 294, 295, 296, 297, 298, 299, 300, 301, -1, -1, + 59, -1, -1, -1, 308, 309, -1, -1, 258, -1, + 124, 125, 262, -1, -1, -1, -1, -1, -1, -1, + -1, 271, 272, -1, 274, -1, -1, -1, -1, -1, + -1, -1, -1, 283, -1, 40, -1, 287, -1, -1, + -1, -1, 292, 293, 294, 295, 296, 297, 298, 299, + 300, 301, -1, -1, 59, -1, -1, -1, 308, 309, + -1, -1, -1, -1, 123, -1, 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 40, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 59, -1, -1, -1, -1, -1, -1, 123, - -1, 125, -1, -1, 257, 258, -1, -1, -1, 262, - -1, -1, -1, -1, -1, -1, 269, 40, -1, -1, - 273, 274, -1, 276, 277, 278, -1, -1, -1, -1, - 258, 284, -1, -1, 262, -1, 59, -1, 291, -1, - -1, -1, -1, 271, 272, -1, 274, -1, 301, 302, - 303, 304, 305, 306, 307, 283, 123, -1, 125, 287, - -1, -1, -1, -1, 292, 293, 294, 295, 296, 297, + 258, -1, -1, -1, 262, -1, -1, -1, -1, -1, + -1, -1, 59, 271, 272, -1, 274, -1, -1, -1, + -1, -1, -1, -1, -1, 283, -1, -1, 123, 287, + 125, -1, -1, -1, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, -1, 40, -1, -1, -1, -1, - 308, 309, 258, -1, -1, -1, 262, -1, -1, -1, - -1, -1, -1, -1, 59, 271, 272, -1, 274, -1, - 123, -1, 125, -1, -1, -1, -1, 283, -1, -1, - -1, 287, -1, -1, -1, -1, 292, 293, 294, 295, - 296, 297, 298, 299, 300, 301, -1, -1, -1, -1, - -1, -1, 308, 309, 258, -1, -1, -1, 262, -1, - -1, -1, -1, -1, -1, -1, -1, 271, 272, -1, - 274, -1, -1, -1, -1, -1, -1, -1, 123, 283, - 125, -1, -1, 287, -1, -1, -1, -1, 292, 293, - 294, 295, 296, 297, 298, 299, 300, 301, -1, -1, - -1, -1, -1, -1, 308, 309, -1, -1, -1, -1, - -1, 258, -1, -1, -1, 262, -1, -1, -1, -1, - -1, -1, -1, -1, 271, 272, -1, 274, -1, -1, - -1, -1, -1, -1, -1, -1, 283, -1, -1, -1, - 287, -1, -1, -1, -1, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 258, -1, -1, -1, 262, - -1, 308, 309, -1, -1, -1, -1, -1, 271, 272, - -1, 274, -1, -1, -1, -1, -1, -1, -1, -1, - 283, -1, -1, -1, 287, -1, -1, -1, -1, 292, - 293, 294, 295, 296, 297, 298, 299, 300, 301, -1, - -1, -1, -1, -1, -1, 308, 309, -1, -1, -1, - -1, -1, -1, 258, -1, -1, -1, 262, -1, -1, - -1, -1, -1, -1, -1, -1, 271, 272, -1, 274, + 308, 309, -1, 257, 258, -1, -1, -1, 262, -1, + -1, -1, -1, -1, 59, 269, -1, -1, -1, 273, + 274, -1, 276, 277, 278, -1, 123, -1, 125, -1, + 284, -1, -1, -1, -1, -1, -1, 291, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 301, 302, 303, + 304, 305, 306, 307, -1, -1, -1, -1, -1, 258, + 60, -1, -1, 262, -1, -1, -1, -1, -1, -1, + -1, -1, 271, 272, -1, 274, -1, -1, 123, -1, + 125, -1, -1, -1, 283, -1, -1, -1, 287, -1, + -1, -1, -1, 292, 293, 294, 295, 296, 297, 298, + 299, 300, 301, -1, -1, -1, -1, -1, -1, 308, + 309, -1, -1, 258, -1, -1, -1, 262, -1, -1, + -1, -1, -1, -1, -1, 125, 271, 272, -1, 274, -1, -1, -1, -1, -1, -1, -1, -1, 283, -1, -1, -1, 287, -1, -1, -1, -1, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, -1, -1, -1, - -1, -1, -1, 308, 309, + -1, 258, -1, 308, 309, 262, -1, -1, -1, -1, + -1, -1, -1, -1, 271, 272, -1, 274, -1, -1, + -1, -1, -1, -1, -1, -1, 283, -1, -1, -1, + 287, -1, -1, -1, -1, 292, 293, 294, 295, 296, + 297, 298, 299, 300, 301, -1, -1, -1, -1, -1, + -1, 308, 309, 258, -1, -1, -1, 262, -1, -1, + -1, -1, -1, -1, -1, -1, 271, 272, -1, 274, + -1, -1, -1, -1, -1, -1, -1, -1, 283, -1, + -1, -1, 287, -1, -1, -1, -1, 292, 293, 294, + 295, 296, 297, 298, 299, 300, 301, 257, 258, -1, + -1, -1, 262, 308, 309, -1, -1, -1, -1, 269, + -1, -1, -1, -1, 274, -1, 276, 277, 278, -1, + -1, -1, -1, -1, 284, -1, -1, -1, -1, -1, + -1, 291, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 301, }; } class yyCheckInit { - static short[] yyCheck = new short[3579]; + static short[] yyCheck = new short[3796]; protected static void yyCheckInit () { int numyycheck; int yyCheckerun = 0; for (numyycheck = 0; numyycheck <= 1000; numyycheck++) { - if (yyCheckerun < 3579) { + if (yyCheckerun < 3796) { yyCheck[yyCheckerun] = yyCheck0.yyCheck0[numyycheck]; yyCheckerun++; } } for (numyycheck = 0; numyycheck <= 1000; numyycheck++) { - if (yyCheckerun < 3579) { + if (yyCheckerun < 3796) { yyCheck[yyCheckerun] = yyCheck1.yyCheck1[numyycheck]; yyCheckerun++; } } for (numyycheck = 0; numyycheck <= 1000; numyycheck++) { - if (yyCheckerun < 3579) { + if (yyCheckerun < 3796) { yyCheck[yyCheckerun] = yyCheck2.yyCheck2[numyycheck]; yyCheckerun++; } } for (numyycheck = 0; numyycheck <= 1000; numyycheck++) { - if (yyCheckerun < 3579) { + if (yyCheckerun < 3796) { yyCheck[yyCheckerun] = yyCheck3.yyCheck3[numyycheck]; yyCheckerun++; } diff --git a/src/mycompiler/myparser/JavaParser.jay b/src/mycompiler/myparser/JavaParser.jay index 8b53e82f..27d756b1 100755 --- a/src/mycompiler/myparser/JavaParser.jay +++ b/src/mycompiler/myparser/JavaParser.jay @@ -394,12 +394,12 @@ typedeclaration :classdeclaration { $$=$1; } -/* | interfacedeclaration + | interfacedeclaration { // SCJU: Interface $$=$1; } -*/ + qualifiedname : name '.' IDENTIFIER { diff --git a/test/mycompiler/test/lambda/testResults/LambdaTest.log b/test/mycompiler/test/lambda/testResults/LambdaTest.log index 4aa85c5a..216cffbe 100644 --- a/test/mycompiler/test/lambda/testResults/LambdaTest.log +++ b/test/mycompiler/test/lambda/testResults/LambdaTest.log @@ -1,85 +1,123 @@ -Class DEBUG [Typeinference] Erstellte Assumptions: this: ConstructorTest1Method Assumptions: -[MethodAssumption: ConstructorTest1 null { [no type [var], (var = int 1)]] +Class DEBUG [Typeinference] Erstellte Assumptions: this: MatrixMethod Assumptions: +[MethodAssumption: Matrix null { []] FieldVar Assumptions: -[] +[typinferenz.assumptions.FieldAssumption@fefb1c0] LocalVar Assumptions: [] Parameter Assumptions: [] -Block DEBUG [Typeinference] Prozessing statement: no type [var] -Block DEBUG [Typeinference] Prozessing statement: (var = int 1) -Block DEBUG [Typeinference] Prozessing statement: void(var: TPH D = int 1) -Block DEBUG [Typeinference] Prozessing statement: TPH D [var] -Class DEBUG [Typeinference] Erstellte Constraints: int < TPH D -TPH D < TPH E +Block DEBUG [Typeinference] Prozessing statement: null Return null (( [ f, ]) -> null { [null Return null (f.apply( [ null (this(null)), m, ]))]) +Block DEBUG [Typeinference] Prozessing statement: null Return null (f.apply( [ null (this(null)), m, ])) +Block DEBUG [Typeinference] Prozessing statement: TPH CJ Return TPH CF (f: TPH CD.apply( [ Matrix (this(null)), m: TPH CB, ])) +Block DEBUG [Typeinference] Prozessing statement: TPH CK Return TPH CE (( [ TPH CD f, ]) -> TPH CJ { [TPH CJ Return TPH CF (f: TPH CD.apply( [ Matrix (this(null)), m: TPH CB, ]))]) +Class DEBUG [Typeinference] Erstellte Constraints: TPH BZ < TPH BZ +[(TPH CG <. TPH CF), (Matrix <. TPH CH), (TPH CB <. TPH CI), (TPH CD <. FunN), ] +TPH CF < TPH CJ +Fun1< TPH CJ, TPH CD > < TPH CE +TPH CE < TPH CK +Fun1< TPH CK, TPH CB > < TPH CC +TPH CC < TPH BZ -SourceFile DEBUG [Typeinference] Karthesisches Produkt der Constraints: [[(int <. TPH D), (TPH D <. TPH E)]] -SourceFile DEBUG [Typeinference] Unifiziertes Ergebnis: [[(TPH E = int), (TPH D = int)]] +SourceFile DEBUG [Typeinference] Karthesisches Produkt der Constraints: [[(TPH BZ <. TPH BZ), (TPH CG <. TPH CF), (Matrix <. TPH CH), (TPH CB <. TPH CI), (TPH CD <. FunN), (TPH CF <. TPH CJ), (Fun1< TPH CJ, TPH CD > <. TPH CE), (TPH CE <. TPH CK), (Fun1< TPH CK, TPH CB > <. TPH CC), (TPH CC <. TPH BZ)]] +SourceFile DEBUG [Typeinference] Unifiziertes Ergebnis: [[(TPH CG <. TPH CF), (TPH CB <. TPH CI), (TPH CF <. TPH CJ), (TPH CK = Fun1< TPH CJ, FunN >), (TPH BZ = Fun1< Fun1< TPH CJ, FunN >, TPH CB >), (TPH CH = Matrix), (TPH CD = FunN), (TPH CE = Fun1< TPH CJ, FunN >), (TPH CC = Fun1< Fun1< TPH CJ, FunN >, TPH CB >)], [(TPH CG <. TPH CF), (TPH CB <. TPH CI), (TPH CF <. TPH CJ), (TPH CK = Fun1< TPH CJ, FunN >), (TPH BZ = Fun1< Fun1< TPH CJ, FunN >, TPH CB >), (TPH CH = Vector< Vector< GTV Integer > >), (TPH CD = FunN), (TPH CE = Fun1< TPH CJ, FunN >), (TPH CC = Fun1< Fun1< TPH CJ, FunN >, TPH CB >)], [(TPH CG <. TPH CF), (TPH CB <. TPH CI), (TPH CF <. TPH CJ), (TPH CK = Fun1< TPH CJ, FunN >), (TPH BZ = Fun1< Fun1< TPH CJ, FunN >, TPH CB >), (TPH CH = Vector< ? extends Vector< GTV Integer > >), (TPH CD = FunN), (TPH CE = Fun1< TPH CJ, FunN >), (TPH CC = Fun1< Fun1< TPH CJ, FunN >, TPH CB >)], [(TPH CG <. TPH CF), (TPH CB <. TPH CI), (TPH CF <. TPH CJ), (TPH CK = Fun1< TPH CJ, FunN >), (TPH BZ = Fun1< Fun1< TPH CJ, FunN >, TPH CB >), (TPH CH = Vector< ? extends Vector< ? extends GTV Integer > >), (TPH CD = FunN), (TPH CE = Fun1< TPH CJ, FunN >), (TPH CC = Fun1< Fun1< TPH CJ, FunN >, TPH CB >)], [(TPH CG <. TPH CF), (TPH CB <. TPH CI), (TPH CF <. TPH CJ), (TPH CK = Fun1< TPH CJ, FunN >), (TPH BZ = Fun1< Fun1< TPH CJ, FunN >, TPH CB >), (TPH CH = Vector< ? extends Vector< ? super GTV Integer > >), (TPH CD = FunN), (TPH CE = Fun1< TPH CJ, FunN >), (TPH CC = Fun1< Fun1< TPH CJ, FunN >, TPH CB >)], [(TPH CG <. TPH CF), (TPH CB <. TPH CI), (TPH CF <. TPH CJ), (TPH CK = Fun1< TPH CJ, FunN >), (TPH BZ = Fun1< Fun1< TPH CJ, FunN >, TPH CB >), (TPH CH = Vector< ? super Vector< GTV Integer > >), (TPH CD = FunN), (TPH CE = Fun1< TPH CJ, FunN >), (TPH CC = Fun1< Fun1< TPH CJ, FunN >, TPH CB >)], [(TPH CG <. TPH CF), (TPH CB <. TPH CI), (TPH CF <. TPH CJ), (TPH CK = Fun1< TPH CJ, FunN >), (TPH BZ = Fun1< Fun1< TPH CJ, FunN >, TPH CB >), (TPH CH = Vector< ? super Matrix >), (TPH CD = FunN), (TPH CE = Fun1< TPH CJ, FunN >), (TPH CC = Fun1< Fun1< TPH CJ, FunN >, TPH CB >)]] SourceFile DEBUG [Typeinference] JavaFiles: -SourceFile DEBUG [Typeinference] JavaFile für ResultSet Unified Constraints: [(TPH E = int), (TPH D = int)] +SourceFile DEBUG [Typeinference] JavaFile für ResultSet Unified Constraints: [(TPH CG <. TPH CF), (TPH CB <. TPH CI), (TPH CF <. TPH CJ), (TPH CK = Fun1< TPH CJ, FunN >), (TPH BZ = Fun1< Fun1< TPH CJ, FunN >, TPH CB >), (TPH CH = Matrix), (TPH CD = FunN), (TPH CE = Fun1< TPH CJ, FunN >), (TPH CC = Fun1< Fun1< TPH CJ, FunN >, TPH CB >)] -SourceFile DEBUG [Typeinference] class ConstructorTest1 extends Object +SourceFile DEBUG [Typeinference] class Matrix extends Vector> { -ConstructorTest1 ConstructorTest1() -{ -int var; -var = 1; -} -} - -Class DEBUG [Typeinference] Erstellte Assumptions: this: ConstructorTest2Method Assumptions: -[MethodAssumption: void void { [(var = NEW ConstructorTest1)], MethodAssumption: ConstructorTest2 null { []] -FieldVar Assumptions: -[typinferenz.assumptions.FieldAssumption@27beded] -LocalVar Assumptions: -[] -Parameter Assumptions: -[] - -Block DEBUG [Typeinference] Prozessing statement: (var = NEW ConstructorTest1) -Block DEBUG [Typeinference] Prozessing statement: void(var: TPH B = NEW ConstructorTest1) -Class DEBUG [Typeinference] Erstellte Constraints: TPH B < TPH B -[(ConstructorTest1 <. ConstructorTest1), (ConstructorTest1 <. ConstructorTest1), ] -ConstructorTest1 < TPH B -TPH B < TPH G -void < void - -SourceFile DEBUG [Typeinference] Karthesisches Produkt der Constraints: [[(TPH B <. TPH B), (ConstructorTest1 <. ConstructorTest1), (ConstructorTest1 <. TPH B), (TPH B <. TPH G), (void <. void)], [(TPH B <. TPH B), (ConstructorTest1 <. ConstructorTest1), (ConstructorTest1 <. TPH B), (TPH B <. TPH G), (void <. void)]] -SourceFile DEBUG [Typeinference] Unifiziertes Ergebnis: [[(TPH G = ConstructorTest1), (TPH B = ConstructorTest1)]] -SourceFile DEBUG [Typeinference] -JavaFiles: - -SourceFile DEBUG [Typeinference] JavaFile für ResultSet Unified Constraints: [(TPH G = ConstructorTest1), (TPH B = ConstructorTest1)] - -SourceFile DEBUG [Typeinference] class ConstructorTest2 extends Object -{ -ConstructorTest1 var; -void method() -{ -var = new ConstructorTest1(); -} -ConstructorTest2 ConstructorTest2() +Fun1, CB> op = (CB m) -> { +return (FunN f) -> { +return f.apply(this, m);; +}; +}; +Matrix Matrix() { } } -SourceFile DEBUG [Typeinference] Unifiziertes Ergebnis: [[(TPH G = ConstructorTest1), (TPH B = ConstructorTest1)]] -SourceFile DEBUG [Typeinference] -JavaFiles: +SourceFile DEBUG [Typeinference] JavaFile für ResultSet Unified Constraints: [(TPH CG <. TPH CF), (TPH CB <. TPH CI), (TPH CF <. TPH CJ), (TPH CK = Fun1< TPH CJ, FunN >), (TPH BZ = Fun1< Fun1< TPH CJ, FunN >, TPH CB >), (TPH CH = Vector< Vector< GTV Integer > >), (TPH CD = FunN), (TPH CE = Fun1< TPH CJ, FunN >), (TPH CC = Fun1< Fun1< TPH CJ, FunN >, TPH CB >)] -SourceFile DEBUG [Typeinference] JavaFile für ResultSet Unified Constraints: [(TPH G = ConstructorTest1), (TPH B = ConstructorTest1)] - -SourceFile DEBUG [Typeinference] class ConstructorTest2 extends Object +SourceFile DEBUG [Typeinference] class Matrix extends Vector> { -ConstructorTest1 var; -void method() -{ -var = new ConstructorTest1(); -} -ConstructorTest2 ConstructorTest2() +Fun1, CB> op = (CB m) -> { +return (FunN f) -> { +return f.apply(this, m);; +}; +}; +Matrix Matrix() +{ +} +} + +SourceFile DEBUG [Typeinference] JavaFile für ResultSet Unified Constraints: [(TPH CG <. TPH CF), (TPH CB <. TPH CI), (TPH CF <. TPH CJ), (TPH CK = Fun1< TPH CJ, FunN >), (TPH BZ = Fun1< Fun1< TPH CJ, FunN >, TPH CB >), (TPH CH = Vector< ? extends Vector< GTV Integer > >), (TPH CD = FunN), (TPH CE = Fun1< TPH CJ, FunN >), (TPH CC = Fun1< Fun1< TPH CJ, FunN >, TPH CB >)] + +SourceFile DEBUG [Typeinference] class Matrix extends Vector> +{ +Fun1, CB> op = (CB m) -> { +return (FunN f) -> { +return f.apply(this, m);; +}; +}; +Matrix Matrix() +{ +} +} + +SourceFile DEBUG [Typeinference] JavaFile für ResultSet Unified Constraints: [(TPH CG <. TPH CF), (TPH CB <. TPH CI), (TPH CF <. TPH CJ), (TPH CK = Fun1< TPH CJ, FunN >), (TPH BZ = Fun1< Fun1< TPH CJ, FunN >, TPH CB >), (TPH CH = Vector< ? extends Vector< ? extends GTV Integer > >), (TPH CD = FunN), (TPH CE = Fun1< TPH CJ, FunN >), (TPH CC = Fun1< Fun1< TPH CJ, FunN >, TPH CB >)] + +SourceFile DEBUG [Typeinference] class Matrix extends Vector> +{ +Fun1, CB> op = (CB m) -> { +return (FunN f) -> { +return f.apply(this, m);; +}; +}; +Matrix Matrix() +{ +} +} + +SourceFile DEBUG [Typeinference] JavaFile für ResultSet Unified Constraints: [(TPH CG <. TPH CF), (TPH CB <. TPH CI), (TPH CF <. TPH CJ), (TPH CK = Fun1< TPH CJ, FunN >), (TPH BZ = Fun1< Fun1< TPH CJ, FunN >, TPH CB >), (TPH CH = Vector< ? extends Vector< ? super GTV Integer > >), (TPH CD = FunN), (TPH CE = Fun1< TPH CJ, FunN >), (TPH CC = Fun1< Fun1< TPH CJ, FunN >, TPH CB >)] + +SourceFile DEBUG [Typeinference] class Matrix extends Vector> +{ +Fun1, CB> op = (CB m) -> { +return (FunN f) -> { +return f.apply(this, m);; +}; +}; +Matrix Matrix() +{ +} +} + +SourceFile DEBUG [Typeinference] JavaFile für ResultSet Unified Constraints: [(TPH CG <. TPH CF), (TPH CB <. TPH CI), (TPH CF <. TPH CJ), (TPH CK = Fun1< TPH CJ, FunN >), (TPH BZ = Fun1< Fun1< TPH CJ, FunN >, TPH CB >), (TPH CH = Vector< ? super Vector< GTV Integer > >), (TPH CD = FunN), (TPH CE = Fun1< TPH CJ, FunN >), (TPH CC = Fun1< Fun1< TPH CJ, FunN >, TPH CB >)] + +SourceFile DEBUG [Typeinference] class Matrix extends Vector> +{ +Fun1, CB> op = (CB m) -> { +return (FunN f) -> { +return f.apply(this, m);; +}; +}; +Matrix Matrix() +{ +} +} + +SourceFile DEBUG [Typeinference] JavaFile für ResultSet Unified Constraints: [(TPH CG <. TPH CF), (TPH CB <. TPH CI), (TPH CF <. TPH CJ), (TPH CK = Fun1< TPH CJ, FunN >), (TPH BZ = Fun1< Fun1< TPH CJ, FunN >, TPH CB >), (TPH CH = Vector< ? super Matrix >), (TPH CD = FunN), (TPH CE = Fun1< TPH CJ, FunN >), (TPH CC = Fun1< Fun1< TPH CJ, FunN >, TPH CB >)] + +SourceFile DEBUG [Typeinference] class Matrix extends Vector> +{ +Fun1, CB> op = (CB m) -> { +return (FunN f) -> { +return f.apply(this, m);; +}; +}; +Matrix Matrix() { } } diff --git a/tools/y.output b/tools/y.output index 048aeef5..44c17bac 100644 --- a/tools/y.output +++ b/tools/y.output @@ -16,380 +16,381 @@ 9 | simplename 10 typedeclaration : classdeclaration + 11 | interfacedeclaration - 11 qualifiedname : name '.' IDENTIFIER + 12 qualifiedname : name '.' IDENTIFIER - 12 importqualifiedname : name '.' IDENTIFIER - 13 | name '.' '*' + 13 importqualifiedname : name '.' IDENTIFIER + 14 | name '.' '*' - 14 simplename : IDENTIFIER + 15 simplename : IDENTIFIER - 15 classdeclaration : CLASS classidentifier classbody - 16 | modifiers CLASS classidentifier classbody - 17 | CLASS classidentifier super classbody - 18 | modifiers CLASS classidentifier super classbody - 19 | CLASS classidentifier interfaces classbody - 20 | modifiers CLASS classidentifier interfaces classbody - 21 | CLASS classidentifier super interfaces classbody - 22 | modifiers CLASS classidentifier super interfaces classbody + 16 classdeclaration : CLASS classidentifier classbody + 17 | modifiers CLASS classidentifier classbody + 18 | CLASS classidentifier super classbody + 19 | modifiers CLASS classidentifier super classbody + 20 | CLASS classidentifier interfaces classbody + 21 | modifiers CLASS classidentifier interfaces classbody + 22 | CLASS classidentifier super interfaces classbody + 23 | modifiers CLASS classidentifier super interfaces classbody - 23 interfaceidentifier : IDENTIFIER - 24 | IDENTIFIER '<' boundedClassParameters '>' + 24 interfaceidentifier : IDENTIFIER + 25 | IDENTIFIER '<' boundedClassParameters '>' - 25 classidentifier : IDENTIFIER - 26 | IDENTIFIER '<' boundedClassParameters '>' + 26 classidentifier : IDENTIFIER + 27 | IDENTIFIER '<' boundedClassParameters '>' - 27 interfacedeclaration : INTERFACE interfaceidentifier interfacebody - 28 | modifiers INTERFACE interfaceidentifier interfacebody - 29 | INTERFACE interfaceidentifier extendsinterfaces interfacebody - 30 | modifiers INTERFACE interfaceidentifier extendsinterfaces interfacebody + 28 interfacedeclaration : INTERFACE interfaceidentifier interfacebody + 29 | modifiers INTERFACE interfaceidentifier interfacebody + 30 | INTERFACE interfaceidentifier extendsinterfaces interfacebody + 31 | modifiers INTERFACE interfaceidentifier extendsinterfaces interfacebody - 31 paralist : IDENTIFIER - 32 | IDENTIFIER '<' paralist '>' - 33 | wildcardparameter - 34 | paralist ',' IDENTIFIER - 35 | paralist ',' IDENTIFIER '<' paralist '>' - 36 | paralist ',' wildcardparameter + 32 paralist : IDENTIFIER + 33 | IDENTIFIER '<' paralist '>' + 34 | wildcardparameter + 35 | paralist ',' IDENTIFIER + 36 | paralist ',' IDENTIFIER '<' paralist '>' + 37 | paralist ',' wildcardparameter - 37 wildcardparameter : '?' - 38 | '?' EXTENDS referencetype - 39 | '?' SUPER referencetype + 38 wildcardparameter : '?' + 39 | '?' EXTENDS referencetype + 40 | '?' SUPER referencetype - 40 classbody : '{' '}' - 41 | '{' classbodydeclarations '}' + 41 classbody : '{' '}' + 42 | '{' classbodydeclarations '}' - 42 modifiers : modifier - 43 | modifiers modifier + 43 modifiers : modifier + 44 | modifiers modifier - 44 super : EXTENDS classtype + 45 super : EXTENDS classtype - 45 interfaces : IMPLEMENTS interfacetype - 46 | interfaces ',' interfacetype + 46 interfaces : IMPLEMENTS interfacetype + 47 | interfaces ',' interfacetype - 47 interfacebody : '{' '}' - 48 | '{' interfacememberdeclarations '}' + 48 interfacebody : '{' '}' + 49 | '{' interfacememberdeclarations '}' - 49 extendsinterfaces : EXTENDS interfacetype - 50 | extendsinterfaces ',' interfacetype + 50 extendsinterfaces : EXTENDS interfacetype + 51 | extendsinterfaces ',' interfacetype - 51 classbodydeclarations : classbodydeclaration - 52 | classbodydeclarations classbodydeclaration + 52 classbodydeclarations : classbodydeclaration + 53 | classbodydeclarations classbodydeclaration - 53 modifier : PUBLIC - 54 | PROTECTED - 55 | PRIVATE - 56 | STATIC - 57 | ABSTRACT - 58 | FINAL + 54 modifier : PUBLIC + 55 | PROTECTED + 56 | PRIVATE + 57 | STATIC + 58 | ABSTRACT + 59 | FINAL - 59 classtype : classorinterfacetype + 60 classtype : classorinterfacetype - 60 interfacememberdeclarations : interfacememberdeclaration - 61 | interfacememberdeclarations interfacememberdeclaration + 61 interfacememberdeclarations : interfacememberdeclaration + 62 | interfacememberdeclarations interfacememberdeclaration - 62 interfacetype : classorinterfacetype + 63 interfacetype : classorinterfacetype - 63 classbodydeclaration : classmemberdeclaration - 64 | staticinitializer - 65 | constructordeclaration + 64 classbodydeclaration : classmemberdeclaration + 65 | staticinitializer + 66 | constructordeclaration - 66 classorinterfacetype : simplename parameter + 67 classorinterfacetype : simplename parameter - 67 parameter : - 68 | '<' paralist '>' + 68 parameter : + 69 | '<' paralist '>' - 69 interfacememberdeclaration : constantdeclaration - 70 | abstractmethoddeclaration + 70 interfacememberdeclaration : constantdeclaration + 71 | abstractmethoddeclaration - 71 classmemberdeclaration : fielddeclaration - 72 | methoddeclaration + 72 classmemberdeclaration : fielddeclaration + 73 | methoddeclaration - 73 staticinitializer : STATIC block + 74 staticinitializer : STATIC block - 74 constructordeclaration : constructordeclarator constructorbody - 75 | modifiers constructordeclarator constructorbody + 75 constructordeclaration : constructordeclarator constructorbody + 76 | modifiers constructordeclarator constructorbody - 76 constantdeclaration : modifiers type IDENTIFIER '=' expression ';' + 77 constantdeclaration : modifiers type IDENTIFIER '=' expression ';' - 77 abstractmethoddeclaration : methodheader ';' + 78 abstractmethoddeclaration : methodheader ';' - 78 fielddeclarator : variabledeclarator '=' expression + 79 fielddeclarator : variabledeclarator '=' expression - 79 fielddeclaration : fielddeclarator ';' - 80 | type fielddeclarator - 81 | variabledeclarators ';' - 82 | type variabledeclarators ';' - 83 | modifiers type variabledeclarators ';' + 80 fielddeclaration : fielddeclarator ';' + 81 | type fielddeclarator + 82 | variabledeclarators ';' + 83 | type variabledeclarators ';' + 84 | modifiers type variabledeclarators ';' - 84 methoddeclaration : methodheader methodbody + 85 methoddeclaration : methodheader methodbody - 85 block : '{' '}' - 86 | '{' blockstatements '}' + 86 block : '{' '}' + 87 | '{' blockstatements '}' - 87 constructordeclarator : simplename '(' ')' - 88 | simplename '(' formalparameterlist ')' + 88 constructordeclarator : simplename '(' ')' + 89 | simplename '(' formalparameterlist ')' - 89 constructorbody : '{' '}' - 90 | '{' explicitconstructorinvocation '}' - 91 | '{' blockstatements '}' - 92 | '{' explicitconstructorinvocation blockstatements '}' + 90 constructorbody : '{' '}' + 91 | '{' explicitconstructorinvocation '}' + 92 | '{' blockstatements '}' + 93 | '{' explicitconstructorinvocation blockstatements '}' - 93 throws : THROWS classtypelist + 94 throws : THROWS classtypelist - 94 boundedClassParameter : boundedMethodParameter + 95 boundedClassParameter : boundedMethodParameter - 95 boundedClassParameters : boundedClassParameter - 96 | boundedClassParameters ',' boundedClassParameter + 96 boundedClassParameters : boundedClassParameter + 97 | boundedClassParameters ',' boundedClassParameter - 97 boundedMethodParameter : IDENTIFIER - 98 | IDENTIFIER EXTENDS boundedclassidentifierlist + 98 boundedMethodParameter : IDENTIFIER + 99 | IDENTIFIER EXTENDS boundedclassidentifierlist - 99 boundedclassidentifierlist : referencetype - 100 | boundedclassidentifierlist '&' referencetype + 100 boundedclassidentifierlist : referencetype + 101 | boundedclassidentifierlist '&' referencetype - 101 boundedMethodParameters : boundedMethodParameter - 102 | boundedMethodParameters ',' boundedMethodParameter + 102 boundedMethodParameters : boundedMethodParameter + 103 | boundedMethodParameters ',' boundedMethodParameter - 103 methodheader : '<' boundedMethodParameters '>' type methoddeclarator - 104 | type methoddeclarator - 105 | modifiers type methoddeclarator - 106 | modifiers '<' boundedMethodParameters '>' type methoddeclarator - 107 | type methoddeclarator throws - 108 | '<' boundedMethodParameters '>' type methoddeclarator throws - 109 | modifiers type methoddeclarator throws - 110 | modifiers '<' boundedMethodParameters '>' type methoddeclarator throws - 111 | VOID methoddeclarator - 112 | modifiers VOID methoddeclarator - 113 | VOID methoddeclarator throws - 114 | modifiers VOID methoddeclarator throws - 115 | '<' boundedMethodParameters '>' VOID methoddeclarator - 116 | modifiers '<' boundedMethodParameters '>' VOID methoddeclarator - 117 | '<' boundedMethodParameters '>' VOID methoddeclarator throws - 118 | modifiers '<' boundedMethodParameters '>' VOID methoddeclarator throws - 119 | methoddeclarator - 120 | '<' boundedMethodParameters '>' methoddeclarator - 121 | modifiers methoddeclarator - 122 | methoddeclarator throws - 123 | modifiers methoddeclarator throws + 104 methodheader : '<' boundedMethodParameters '>' type methoddeclarator + 105 | type methoddeclarator + 106 | modifiers type methoddeclarator + 107 | modifiers '<' boundedMethodParameters '>' type methoddeclarator + 108 | type methoddeclarator throws + 109 | '<' boundedMethodParameters '>' type methoddeclarator throws + 110 | modifiers type methoddeclarator throws + 111 | modifiers '<' boundedMethodParameters '>' type methoddeclarator throws + 112 | VOID methoddeclarator + 113 | modifiers VOID methoddeclarator + 114 | VOID methoddeclarator throws + 115 | modifiers VOID methoddeclarator throws + 116 | '<' boundedMethodParameters '>' VOID methoddeclarator + 117 | modifiers '<' boundedMethodParameters '>' VOID methoddeclarator + 118 | '<' boundedMethodParameters '>' VOID methoddeclarator throws + 119 | modifiers '<' boundedMethodParameters '>' VOID methoddeclarator throws + 120 | methoddeclarator + 121 | '<' boundedMethodParameters '>' methoddeclarator + 122 | modifiers methoddeclarator + 123 | methoddeclarator throws + 124 | modifiers methoddeclarator throws - 124 type : primitivetype - 125 | primitivetype '[' ']' - 126 | referencetype - 127 | referencetype '[' ']' + 125 type : primitivetype + 126 | primitivetype '[' ']' + 127 | referencetype + 128 | referencetype '[' ']' - 128 variabledeclarators : variabledeclarator - 129 | variabledeclarators ',' variabledeclarator + 129 variabledeclarators : variabledeclarator + 130 | variabledeclarators ',' variabledeclarator - 130 methodbody : block + 131 methodbody : block - 131 blockstatements : blockstatement - 132 | blockstatements blockstatement + 132 blockstatements : blockstatement + 133 | blockstatements blockstatement - 133 formalparameterlist : formalparameter - 134 | formalparameterlist ',' formalparameter + 134 formalparameterlist : formalparameter + 135 | formalparameterlist ',' formalparameter - 135 explicitconstructorinvocation : THIS '(' ')' ';' - 136 | THIS '(' argumentlist ')' ';' + 136 explicitconstructorinvocation : THIS '(' ')' ';' + 137 | THIS '(' argumentlist ')' ';' - 137 classtypelist : classtype - 138 | classtypelist ',' classtype + 138 classtypelist : classtype + 139 | classtypelist ',' classtype - 139 methoddeclarator : IDENTIFIER '(' ')' - 140 | IDENTIFIER '(' formalparameterlist ')' + 140 methoddeclarator : IDENTIFIER '(' ')' + 141 | IDENTIFIER '(' formalparameterlist ')' - 141 primitivetype : BOOLEAN - 142 | numerictype + 142 primitivetype : BOOLEAN + 143 | numerictype - 143 referencetype : classorinterfacetype + 144 referencetype : classorinterfacetype - 144 variabledeclarator : variabledeclaratorid + 145 variabledeclarator : variabledeclaratorid - 145 blockstatement : localvariabledeclarationstatement - 146 | statement + 146 blockstatement : localvariabledeclarationstatement + 147 | statement - 147 formalparameter : type variabledeclaratorid - 148 | variabledeclaratorid + 148 formalparameter : type variabledeclaratorid + 149 | variabledeclaratorid - 149 argumentlist : expression - 150 | argumentlist ',' expression + 150 argumentlist : expression + 151 | argumentlist ',' expression - 151 numerictype : integraltype + 152 numerictype : integraltype - 152 variabledeclaratorid : IDENTIFIER + 153 variabledeclaratorid : IDENTIFIER - 153 variableinitializer : expression + 154 variableinitializer : expression - 154 localvariabledeclarationstatement : localvariabledeclaration ';' + 155 localvariabledeclarationstatement : localvariabledeclaration ';' - 155 statement : statementwithouttrailingsubstatement - 156 | ifthenstatement - 157 | ifthenelsestatement - 158 | whilestatement - 159 | forstatement + 156 statement : statementwithouttrailingsubstatement + 157 | ifthenstatement + 158 | ifthenelsestatement + 159 | whilestatement + 160 | forstatement - 160 expression : assignmentexpression - 161 | classinstancecreationexpression + 161 expression : assignmentexpression + 162 | classinstancecreationexpression - 162 integraltype : INT - 163 | CHAR + 163 integraltype : INT + 164 | CHAR - 164 localvariabledeclaration : type variabledeclarators - 165 | variabledeclarators + 165 localvariabledeclaration : type variabledeclarators + 166 | variabledeclarators - 166 statementwithouttrailingsubstatement : block - 167 | emptystatement - 168 | expressionstatement - 169 | returnstatement + 167 statementwithouttrailingsubstatement : block + 168 | emptystatement + 169 | expressionstatement + 170 | returnstatement - 170 ifthenstatement : IF '(' expression ')' statement + 171 ifthenstatement : IF '(' expression ')' statement - 171 ifthenelsestatement : IF '(' expression ')' statementnoshortif ELSE statement + 172 ifthenelsestatement : IF '(' expression ')' statementnoshortif ELSE statement - 172 whilestatement : WHILE '(' expression ')' statement + 173 whilestatement : WHILE '(' expression ')' statement - 173 forstatement : FOR '(' expression ';' expression ';' expression ')' statement - 174 | FOR '(' expression ';' expression ';' ')' statement - 175 | FOR '(' expression ';' ';' expression ')' statement - 176 | FOR '(' ';' expression ';' expression ')' statement - 177 | FOR '(' expression ';' ';' ')' statement - 178 | FOR '(' ';' expression ';' ')' statement - 179 | FOR '(' ';' ';' expression ')' statement - 180 | FOR '(' ';' ';' ')' statement + 174 forstatement : FOR '(' expression ';' expression ';' expression ')' statement + 175 | FOR '(' expression ';' expression ';' ')' statement + 176 | FOR '(' expression ';' ';' expression ')' statement + 177 | FOR '(' ';' expression ';' expression ')' statement + 178 | FOR '(' expression ';' ';' ')' statement + 179 | FOR '(' ';' expression ';' ')' statement + 180 | FOR '(' ';' ';' expression ')' statement + 181 | FOR '(' ';' ';' ')' statement - 181 assignmentexpression : conditionalexpression - 182 | assignment + 182 assignmentexpression : conditionalexpression + 183 | assignment - 183 emptystatement : ';' + 184 emptystatement : ';' - 184 expressionstatement : statementexpression ';' + 185 expressionstatement : statementexpression ';' - 185 returnstatement : RETURN ';' - 186 | RETURN expression ';' + 186 returnstatement : RETURN ';' + 187 | RETURN expression ';' - 187 statementnoshortif : statementwithouttrailingsubstatement - 188 | ifthenelsestatementnoshortif - 189 | whilestatementnoshortif + 188 statementnoshortif : statementwithouttrailingsubstatement + 189 | ifthenelsestatementnoshortif + 190 | whilestatementnoshortif - 190 conditionalexpression : conditionalorexpression + 191 conditionalexpression : conditionalorexpression - 191 assignment : lefthandside assignmentoperator assignmentexpression - 192 | lefthandside assignmentoperator classinstancecreationexpression + 192 assignment : lefthandside assignmentoperator assignmentexpression + 193 | lefthandside assignmentoperator classinstancecreationexpression - 193 statementexpression : assignment - 194 | preincrementexpression - 195 | predecrementexpression - 196 | postincrementexpression - 197 | postdecrementexpression - 198 | methodinvocation + 194 statementexpression : assignment + 195 | preincrementexpression + 196 | predecrementexpression + 197 | postincrementexpression + 198 | postdecrementexpression + 199 | methodinvocation - 199 ifthenelsestatementnoshortif : IF '(' expression ')' statementnoshortif ELSE statementnoshortif + 200 ifthenelsestatementnoshortif : IF '(' expression ')' statementnoshortif ELSE statementnoshortif - 200 whilestatementnoshortif : WHILE '(' expression ')' statementnoshortif + 201 whilestatementnoshortif : WHILE '(' expression ')' statementnoshortif - 201 conditionalorexpression : conditionalandexpression - 202 | conditionalorexpression LOGICALOR conditionalandexpression + 202 conditionalorexpression : conditionalandexpression + 203 | conditionalorexpression LOGICALOR conditionalandexpression - 203 lambdaassignmentoperator : LAMBDAASSIGNMENT + 204 lambdaassignmentoperator : LAMBDAASSIGNMENT - 204 lambdabody : block - 205 | expression + 205 lambdabody : block + 206 | expression - 206 lambdaexpressionparameter : '(' ')' - 207 | '(' formalparameterlist ')' + 207 lambdaexpressionparameter : '(' ')' + 208 | '(' formalparameterlist ')' - 208 lambdaexpression : lambdaexpressionparameter lambdaassignmentoperator lambdabody + 209 lambdaexpression : lambdaexpressionparameter lambdaassignmentoperator lambdabody - 209 lefthandside : name + 210 lefthandside : name - 210 assignmentoperator : '=' - 211 | TIMESEQUAL - 212 | DIVIDEEQUAL - 213 | MODULOEQUAL - 214 | PLUSEQUAL - 215 | MINUSEQUAL + 211 assignmentoperator : '=' + 212 | TIMESEQUAL + 213 | DIVIDEEQUAL + 214 | MODULOEQUAL + 215 | PLUSEQUAL + 216 | MINUSEQUAL - 216 preincrementexpression : INCREMENT unaryexpression + 217 preincrementexpression : INCREMENT unaryexpression - 217 predecrementexpression : DECREMENT unaryexpression + 218 predecrementexpression : DECREMENT unaryexpression - 218 postincrementexpression : postfixexpression INCREMENT + 219 postincrementexpression : postfixexpression INCREMENT - 219 postdecrementexpression : postfixexpression DECREMENT + 220 postdecrementexpression : postfixexpression DECREMENT - 220 methodinvocation : name '(' ')' - 221 | name '(' argumentlist ')' - 222 | primary '.' IDENTIFIER '(' ')' - 223 | primary '.' IDENTIFIER '(' argumentlist ')' + 221 methodinvocation : name '(' ')' + 222 | name '(' argumentlist ')' + 223 | primary '.' IDENTIFIER '(' ')' + 224 | primary '.' IDENTIFIER '(' argumentlist ')' - 224 classinstancecreationexpression : NEW classtype '(' ')' - 225 | NEW classtype '(' argumentlist ')' + 225 classinstancecreationexpression : NEW classtype '(' ')' + 226 | NEW classtype '(' argumentlist ')' - 226 conditionalandexpression : inclusiveorexpression - 227 | conditionalandexpression LOGICALAND inclusiveorexpression + 227 conditionalandexpression : inclusiveorexpression + 228 | conditionalandexpression LOGICALAND inclusiveorexpression - 228 unaryexpression : preincrementexpression - 229 | predecrementexpression - 230 | '+' unaryexpression - 231 | '-' unaryexpression - 232 | unaryexpressionnotplusminus + 229 unaryexpression : preincrementexpression + 230 | predecrementexpression + 231 | '+' unaryexpression + 232 | '-' unaryexpression + 233 | unaryexpressionnotplusminus - 233 postfixexpression : primary - 234 | name - 235 | postincrementexpression - 236 | postdecrementexpression + 234 postfixexpression : primary + 235 | name + 236 | postincrementexpression + 237 | postdecrementexpression - 237 primary : primarynonewarray + 238 primary : primarynonewarray - 238 inclusiveorexpression : exclusiveorexpression - 239 | inclusiveorexpression '|' exclusiveorexpression + 239 inclusiveorexpression : exclusiveorexpression + 240 | inclusiveorexpression '|' exclusiveorexpression - 240 primarynonewarray : literal - 241 | THIS - 242 | methodinvocation - 243 | lambdaexpression + 241 primarynonewarray : literal + 242 | THIS + 243 | methodinvocation + 244 | lambdaexpression - 244 unaryexpressionnotplusminus : postfixexpression - 245 | '!' unaryexpression - 246 | castexpression + 245 unaryexpressionnotplusminus : postfixexpression + 246 | '!' unaryexpression + 247 | castexpression - 247 exclusiveorexpression : andexpression - 248 | exclusiveorexpression '^' andexpression + 248 exclusiveorexpression : andexpression + 249 | exclusiveorexpression '^' andexpression - 249 literal : INTLITERAL - 250 | BOOLLITERAL - 251 | CHARLITERAL - 252 | STRINGLITERAL - 253 | LONGLITERAL - 254 | FLOATLITERAL - 255 | DOUBLELITERAL - 256 | JNULL + 250 literal : INTLITERAL + 251 | BOOLLITERAL + 252 | CHARLITERAL + 253 | STRINGLITERAL + 254 | LONGLITERAL + 255 | FLOATLITERAL + 256 | DOUBLELITERAL + 257 | JNULL - 257 castexpression : '(' primitivetype ')' unaryexpression + 258 castexpression : '(' primitivetype ')' unaryexpression - 258 andexpression : equalityexpression - 259 | andexpression '&' equalityexpression + 259 andexpression : equalityexpression + 260 | andexpression '&' equalityexpression - 260 equalityexpression : relationalexpression - 261 | equalityexpression EQUAL relationalexpression - 262 | equalityexpression NOTEQUAL relationalexpression + 261 equalityexpression : relationalexpression + 262 | equalityexpression EQUAL relationalexpression + 263 | equalityexpression NOTEQUAL relationalexpression - 263 relationalexpression : shiftexpression - 264 | relationalexpression '<' shiftexpression - 265 | relationalexpression '>' shiftexpression - 266 | relationalexpression LESSEQUAL shiftexpression - 267 | relationalexpression GREATEREQUAL shiftexpression - 268 | relationalexpression INSTANCEOF referencetype + 264 relationalexpression : shiftexpression + 265 | relationalexpression '<' shiftexpression + 266 | relationalexpression '>' shiftexpression + 267 | relationalexpression LESSEQUAL shiftexpression + 268 | relationalexpression GREATEREQUAL shiftexpression + 269 | relationalexpression INSTANCEOF referencetype - 269 shiftexpression : additiveexpression + 270 shiftexpression : additiveexpression - 270 additiveexpression : multiplicativeexpression - 271 | additiveexpression '+' multiplicativeexpression - 272 | additiveexpression '-' multiplicativeexpression + 271 additiveexpression : multiplicativeexpression + 272 | additiveexpression '+' multiplicativeexpression + 273 | additiveexpression '-' multiplicativeexpression - 273 multiplicativeexpression : unaryexpression - 274 | multiplicativeexpression '*' unaryexpression - 275 | multiplicativeexpression '/' unaryexpression - 276 | multiplicativeexpression '%' unaryexpression + 274 multiplicativeexpression : unaryexpression + 275 | multiplicativeexpression '*' unaryexpression + 276 | multiplicativeexpression '/' unaryexpression + 277 | multiplicativeexpression '%' unaryexpression state 0 $accept : . compilationunit $end (0) @@ -400,103 +401,124 @@ state 0 PRIVATE shift 4 PROTECTED shift 5 PUBLIC shift 6 - STATIC shift 7 + INTERFACE shift 7 + STATIC shift 8 . error - compilationunit goto 8 - classdeclaration goto 9 - modifiers goto 10 - modifier goto 11 - typedeclarations goto 12 - typedeclaration goto 13 + compilationunit goto 9 + classdeclaration goto 10 + interfacedeclaration goto 11 + modifiers goto 12 + modifier goto 13 + typedeclarations goto 14 + typedeclaration goto 15 state 1 - modifier : ABSTRACT . (57) - - . reduce 57 - - -state 2 - classdeclaration : CLASS . classidentifier classbody (15) - classdeclaration : CLASS . classidentifier super classbody (17) - classdeclaration : CLASS . classidentifier interfaces classbody (19) - classdeclaration : CLASS . classidentifier super interfaces classbody (21) - - IDENTIFIER shift 14 - . error - - classidentifier goto 15 - - -state 3 - modifier : FINAL . (58) + modifier : ABSTRACT . (58) . reduce 58 +state 2 + classdeclaration : CLASS . classidentifier classbody (16) + classdeclaration : CLASS . classidentifier super classbody (18) + classdeclaration : CLASS . classidentifier interfaces classbody (20) + classdeclaration : CLASS . classidentifier super interfaces classbody (22) + + IDENTIFIER shift 16 + . error + + classidentifier goto 17 + + +state 3 + modifier : FINAL . (59) + + . reduce 59 + + state 4 - modifier : PRIVATE . (55) - - . reduce 55 - - -state 5 - modifier : PROTECTED . (54) - - . reduce 54 - - -state 6 - modifier : PUBLIC . (53) - - . reduce 53 - - -state 7 - modifier : STATIC . (56) + modifier : PRIVATE . (56) . reduce 56 +state 5 + modifier : PROTECTED . (55) + + . reduce 55 + + +state 6 + modifier : PUBLIC . (54) + + . reduce 54 + + +state 7 + interfacedeclaration : INTERFACE . interfaceidentifier interfacebody (28) + interfacedeclaration : INTERFACE . interfaceidentifier extendsinterfaces interfacebody (30) + + IDENTIFIER shift 18 + . error + + interfaceidentifier goto 19 + + state 8 + modifier : STATIC . (57) + + . reduce 57 + + +state 9 $accept : compilationunit . $end (0) $end accept -state 9 +state 10 typedeclaration : classdeclaration . (10) . reduce 10 -state 10 - classdeclaration : modifiers . CLASS classidentifier classbody (16) - classdeclaration : modifiers . CLASS classidentifier super classbody (18) - classdeclaration : modifiers . CLASS classidentifier interfaces classbody (20) - classdeclaration : modifiers . CLASS classidentifier super interfaces classbody (22) - modifiers : modifiers . modifier (43) +state 11 + typedeclaration : interfacedeclaration . (11) + + . reduce 11 + + +state 12 + classdeclaration : modifiers . CLASS classidentifier classbody (17) + classdeclaration : modifiers . CLASS classidentifier super classbody (19) + classdeclaration : modifiers . CLASS classidentifier interfaces classbody (21) + classdeclaration : modifiers . CLASS classidentifier super interfaces classbody (23) + interfacedeclaration : modifiers . INTERFACE interfaceidentifier interfacebody (29) + interfacedeclaration : modifiers . INTERFACE interfaceidentifier extendsinterfaces interfacebody (31) + modifiers : modifiers . modifier (44) ABSTRACT shift 1 - CLASS shift 16 + CLASS shift 20 FINAL shift 3 PRIVATE shift 4 PROTECTED shift 5 PUBLIC shift 6 - STATIC shift 7 + INTERFACE shift 21 + STATIC shift 8 . error - modifier goto 17 + modifier goto 22 -state 11 - modifiers : modifier . (42) +state 13 + modifiers : modifier . (43) - . reduce 42 + . reduce 43 -state 12 +state 14 compilationunit : typedeclarations . (1) typedeclarations : typedeclarations . typedeclaration (7) @@ -506,1610 +528,1945 @@ state 12 PRIVATE shift 4 PROTECTED shift 5 PUBLIC shift 6 - STATIC shift 7 + INTERFACE shift 7 + STATIC shift 8 $end reduce 1 - classdeclaration goto 9 - modifiers goto 10 - modifier goto 11 - typedeclaration goto 18 + classdeclaration goto 10 + interfacedeclaration goto 11 + modifiers goto 12 + modifier goto 13 + typedeclaration goto 23 -state 13 +state 15 typedeclarations : typedeclaration . (6) . reduce 6 -state 14 - classidentifier : IDENTIFIER . (25) - classidentifier : IDENTIFIER . '<' boundedClassParameters '>' (26) - - '<' shift 19 - EXTENDS reduce 25 - IMPLEMENTS reduce 25 - '{' reduce 25 - - -state 15 - classdeclaration : CLASS classidentifier . classbody (15) - classdeclaration : CLASS classidentifier . super classbody (17) - classdeclaration : CLASS classidentifier . interfaces classbody (19) - classdeclaration : CLASS classidentifier . super interfaces classbody (21) - - EXTENDS shift 20 - IMPLEMENTS shift 21 - '{' shift 22 - . error - - classbody goto 23 - super goto 24 - interfaces goto 25 - - state 16 - classdeclaration : modifiers CLASS . classidentifier classbody (16) - classdeclaration : modifiers CLASS . classidentifier super classbody (18) - classdeclaration : modifiers CLASS . classidentifier interfaces classbody (20) - classdeclaration : modifiers CLASS . classidentifier super interfaces classbody (22) + classidentifier : IDENTIFIER . (26) + classidentifier : IDENTIFIER . '<' boundedClassParameters '>' (27) - IDENTIFIER shift 14 - . error - - classidentifier goto 26 + '<' shift 24 + EXTENDS reduce 26 + IMPLEMENTS reduce 26 + '{' reduce 26 state 17 - modifiers : modifiers modifier . (43) + classdeclaration : CLASS classidentifier . classbody (16) + classdeclaration : CLASS classidentifier . super classbody (18) + classdeclaration : CLASS classidentifier . interfaces classbody (20) + classdeclaration : CLASS classidentifier . super interfaces classbody (22) - . reduce 43 + EXTENDS shift 25 + IMPLEMENTS shift 26 + '{' shift 27 + . error + + classbody goto 28 + super goto 29 + interfaces goto 30 state 18 + interfaceidentifier : IDENTIFIER . (24) + interfaceidentifier : IDENTIFIER . '<' boundedClassParameters '>' (25) + + '<' shift 31 + EXTENDS reduce 24 + '{' reduce 24 + + +state 19 + interfacedeclaration : INTERFACE interfaceidentifier . interfacebody (28) + interfacedeclaration : INTERFACE interfaceidentifier . extendsinterfaces interfacebody (30) + + EXTENDS shift 32 + '{' shift 33 + . error + + interfacebody goto 34 + extendsinterfaces goto 35 + + +state 20 + classdeclaration : modifiers CLASS . classidentifier classbody (17) + classdeclaration : modifiers CLASS . classidentifier super classbody (19) + classdeclaration : modifiers CLASS . classidentifier interfaces classbody (21) + classdeclaration : modifiers CLASS . classidentifier super interfaces classbody (23) + + IDENTIFIER shift 16 + . error + + classidentifier goto 36 + + +state 21 + interfacedeclaration : modifiers INTERFACE . interfaceidentifier interfacebody (29) + interfacedeclaration : modifiers INTERFACE . interfaceidentifier extendsinterfaces interfacebody (31) + + IDENTIFIER shift 18 + . error + + interfaceidentifier goto 37 + + +state 22 + modifiers : modifiers modifier . (44) + + . reduce 44 + + +state 23 typedeclarations : typedeclarations typedeclaration . (7) . reduce 7 -state 19 - classidentifier : IDENTIFIER '<' . boundedClassParameters '>' (26) - - IDENTIFIER shift 27 - . error - - boundedMethodParameter goto 28 - boundedClassParameter goto 29 - boundedClassParameters goto 30 - - -state 20 - super : EXTENDS . classtype (44) - - IDENTIFIER shift 31 - . error - - simplename goto 32 - classtype goto 33 - classorinterfacetype goto 34 - - -state 21 - interfaces : IMPLEMENTS . interfacetype (45) - - IDENTIFIER shift 31 - . error - - simplename goto 32 - classorinterfacetype goto 35 - interfacetype goto 36 - - -state 22 - classbody : '{' . '}' (40) - classbody : '{' . classbodydeclarations '}' (41) - - ABSTRACT shift 1 - BOOLEAN shift 37 - CHAR shift 38 - FINAL shift 3 - INT shift 39 - PRIVATE shift 4 - PROTECTED shift 5 - PUBLIC shift 6 - STATIC shift 40 - VOID shift 41 - IDENTIFIER shift 42 - '<' shift 43 - '}' shift 44 - . error - - fielddeclaration goto 45 - methodheader goto 46 - methoddeclaration goto 47 - methoddeclarator goto 48 - classbodydeclarations goto 49 - classbodydeclaration goto 50 - classmemberdeclaration goto 51 - variabledeclarators goto 52 - fielddeclarator goto 53 - variabledeclarator goto 54 - variabledeclaratorid goto 55 - simplename goto 56 - classorinterfacetype goto 57 - integraltype goto 58 - numerictype goto 59 - primitivetype goto 60 - referencetype goto 61 - type goto 62 - modifiers goto 63 - modifier goto 11 - constructordeclaration goto 64 - constructordeclarator goto 65 - staticinitializer goto 66 - - -state 23 - classdeclaration : CLASS classidentifier classbody . (15) - - . reduce 15 - - state 24 - classdeclaration : CLASS classidentifier super . classbody (17) - classdeclaration : CLASS classidentifier super . interfaces classbody (21) + classidentifier : IDENTIFIER '<' . boundedClassParameters '>' (27) - IMPLEMENTS shift 21 - '{' shift 22 + IDENTIFIER shift 38 . error - classbody goto 67 - interfaces goto 68 + boundedMethodParameter goto 39 + boundedClassParameter goto 40 + boundedClassParameters goto 41 state 25 - classdeclaration : CLASS classidentifier interfaces . classbody (19) - interfaces : interfaces . ',' interfacetype (46) + super : EXTENDS . classtype (45) - ',' shift 69 - '{' shift 22 + IDENTIFIER shift 42 . error - classbody goto 70 + simplename goto 43 + classtype goto 44 + classorinterfacetype goto 45 state 26 - classdeclaration : modifiers CLASS classidentifier . classbody (16) - classdeclaration : modifiers CLASS classidentifier . super classbody (18) - classdeclaration : modifiers CLASS classidentifier . interfaces classbody (20) - classdeclaration : modifiers CLASS classidentifier . super interfaces classbody (22) + interfaces : IMPLEMENTS . interfacetype (46) - EXTENDS shift 20 - IMPLEMENTS shift 21 - '{' shift 22 + IDENTIFIER shift 42 . error - classbody goto 71 - super goto 72 - interfaces goto 73 + simplename goto 43 + classorinterfacetype goto 46 + interfacetype goto 47 state 27 - boundedMethodParameter : IDENTIFIER . (97) - boundedMethodParameter : IDENTIFIER . EXTENDS boundedclassidentifierlist (98) + classbody : '{' . '}' (41) + classbody : '{' . classbodydeclarations '}' (42) - EXTENDS shift 74 - ',' reduce 97 - '>' reduce 97 + ABSTRACT shift 1 + BOOLEAN shift 48 + CHAR shift 49 + FINAL shift 3 + INT shift 50 + PRIVATE shift 4 + PROTECTED shift 5 + PUBLIC shift 6 + STATIC shift 51 + VOID shift 52 + IDENTIFIER shift 53 + '<' shift 54 + '}' shift 55 + . error + + fielddeclaration goto 56 + methodheader goto 57 + methoddeclaration goto 58 + methoddeclarator goto 59 + classbodydeclarations goto 60 + classbodydeclaration goto 61 + classmemberdeclaration goto 62 + variabledeclarators goto 63 + fielddeclarator goto 64 + variabledeclarator goto 65 + variabledeclaratorid goto 66 + simplename goto 67 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 + type goto 73 + modifiers goto 74 + modifier goto 13 + constructordeclaration goto 75 + constructordeclarator goto 76 + staticinitializer goto 77 state 28 - boundedClassParameter : boundedMethodParameter . (94) - - . reduce 94 - - -state 29 - boundedClassParameters : boundedClassParameter . (95) - - . reduce 95 - - -state 30 - classidentifier : IDENTIFIER '<' boundedClassParameters . '>' (26) - boundedClassParameters : boundedClassParameters . ',' boundedClassParameter (96) - - ',' shift 75 - '>' shift 76 - . error - - -state 31 - simplename : IDENTIFIER . (14) - - . reduce 14 - - -32: shift/reduce conflict (shift 77, reduce 67) on '<' -state 32 - classorinterfacetype : simplename . parameter (66) - parameter : . (67) - - '<' shift 77 - ABSTRACT reduce 67 - BOOLEAN reduce 67 - CHAR reduce 67 - FINAL reduce 67 - INSTANCEOF reduce 67 - INT reduce 67 - PRIVATE reduce 67 - PROTECTED reduce 67 - PUBLIC reduce 67 - IMPLEMENTS reduce 67 - STATIC reduce 67 - VOID reduce 67 - IDENTIFIER reduce 67 - EQUAL reduce 67 - LESSEQUAL reduce 67 - GREATEREQUAL reduce 67 - NOTEQUAL reduce 67 - LOGICALOR reduce 67 - LOGICALAND reduce 67 - INCREMENT reduce 67 - DECREMENT reduce 67 - ',' reduce 67 - ';' reduce 67 - '.' reduce 67 - '*' reduce 67 - '>' reduce 67 - '{' reduce 67 - '}' reduce 67 - '(' reduce 67 - ')' reduce 67 - '&' reduce 67 - '[' reduce 67 - '+' reduce 67 - '-' reduce 67 - '|' reduce 67 - '^' reduce 67 - '/' reduce 67 - '%' reduce 67 - - parameter goto 78 - - -state 33 - super : EXTENDS classtype . (44) - - . reduce 44 - - -state 34 - classtype : classorinterfacetype . (59) - - . reduce 59 - - -state 35 - interfacetype : classorinterfacetype . (62) - - . reduce 62 - - -state 36 - interfaces : IMPLEMENTS interfacetype . (45) - - . reduce 45 - - -state 37 - primitivetype : BOOLEAN . (141) - - . reduce 141 - - -state 38 - integraltype : CHAR . (163) - - . reduce 163 - - -state 39 - integraltype : INT . (162) - - . reduce 162 - - -state 40 - modifier : STATIC . (56) - staticinitializer : STATIC . block (73) - - '{' shift 79 - ABSTRACT reduce 56 - BOOLEAN reduce 56 - CHAR reduce 56 - FINAL reduce 56 - INT reduce 56 - PRIVATE reduce 56 - PROTECTED reduce 56 - PUBLIC reduce 56 - STATIC reduce 56 - VOID reduce 56 - IDENTIFIER reduce 56 - '<' reduce 56 - - block goto 80 - - -state 41 - methodheader : VOID . methoddeclarator (111) - methodheader : VOID . methoddeclarator throws (113) - - IDENTIFIER shift 81 - . error - - methoddeclarator goto 82 - - -42: shift/reduce conflict (shift 83, reduce 14) on '(' -state 42 - simplename : IDENTIFIER . (14) - methoddeclarator : IDENTIFIER . '(' ')' (139) - methoddeclarator : IDENTIFIER . '(' formalparameterlist ')' (140) - variabledeclaratorid : IDENTIFIER . (152) - - '(' shift 83 - IDENTIFIER reduce 14 - ',' reduce 152 - ';' reduce 152 - '<' reduce 14 - '=' reduce 152 - '[' reduce 14 - - -state 43 - methodheader : '<' . boundedMethodParameters '>' type methoddeclarator (103) - methodheader : '<' . boundedMethodParameters '>' type methoddeclarator throws (108) - methodheader : '<' . boundedMethodParameters '>' VOID methoddeclarator (115) - methodheader : '<' . boundedMethodParameters '>' VOID methoddeclarator throws (117) - methodheader : '<' . boundedMethodParameters '>' methoddeclarator (120) - - IDENTIFIER shift 27 - . error - - boundedMethodParameter goto 84 - boundedMethodParameters goto 85 - - -state 44 - classbody : '{' '}' . (40) - - . reduce 40 - - -state 45 - classmemberdeclaration : fielddeclaration . (71) - - . reduce 71 - - -state 46 - methoddeclaration : methodheader . methodbody (84) - - '{' shift 79 - . error - - block goto 86 - methodbody goto 87 - - -state 47 - classmemberdeclaration : methoddeclaration . (72) - - . reduce 72 - - -state 48 - methodheader : methoddeclarator . (119) - methodheader : methoddeclarator . throws (122) - - THROWS shift 88 - '{' reduce 119 - - throws goto 89 - - -state 49 - classbody : '{' classbodydeclarations . '}' (41) - classbodydeclarations : classbodydeclarations . classbodydeclaration (52) - - ABSTRACT shift 1 - BOOLEAN shift 37 - CHAR shift 38 - FINAL shift 3 - INT shift 39 - PRIVATE shift 4 - PROTECTED shift 5 - PUBLIC shift 6 - STATIC shift 40 - VOID shift 41 - IDENTIFIER shift 42 - '<' shift 43 - '}' shift 90 - . error - - fielddeclaration goto 45 - methodheader goto 46 - methoddeclaration goto 47 - methoddeclarator goto 48 - classbodydeclaration goto 91 - classmemberdeclaration goto 51 - variabledeclarators goto 52 - fielddeclarator goto 53 - variabledeclarator goto 54 - variabledeclaratorid goto 55 - simplename goto 56 - classorinterfacetype goto 57 - integraltype goto 58 - numerictype goto 59 - primitivetype goto 60 - referencetype goto 61 - type goto 62 - modifiers goto 63 - modifier goto 11 - constructordeclaration goto 64 - constructordeclarator goto 65 - staticinitializer goto 66 - - -state 50 - classbodydeclarations : classbodydeclaration . (51) - - . reduce 51 - - -state 51 - classbodydeclaration : classmemberdeclaration . (63) - - . reduce 63 - - -state 52 - fielddeclaration : variabledeclarators . ';' (81) - variabledeclarators : variabledeclarators . ',' variabledeclarator (129) - - ',' shift 92 - ';' shift 93 - . error - - -state 53 - fielddeclaration : fielddeclarator . ';' (79) - - ';' shift 94 - . error - - -state 54 - fielddeclarator : variabledeclarator . '=' expression (78) - variabledeclarators : variabledeclarator . (128) - - '=' shift 95 - ',' reduce 128 - ';' reduce 128 - - -state 55 - variabledeclarator : variabledeclaratorid . (144) - - . reduce 144 - - -state 56 - classorinterfacetype : simplename . parameter (66) - constructordeclarator : simplename . '(' ')' (87) - constructordeclarator : simplename . '(' formalparameterlist ')' (88) - parameter : . (67) - - '<' shift 77 - '(' shift 96 - IDENTIFIER reduce 67 - '[' reduce 67 - - parameter goto 78 - - -state 57 - referencetype : classorinterfacetype . (143) - - . reduce 143 - - -state 58 - numerictype : integraltype . (151) - - . reduce 151 - - -state 59 - primitivetype : numerictype . (142) - - . reduce 142 - - -state 60 - type : primitivetype . (124) - type : primitivetype . '[' ']' (125) - - '[' shift 97 - IDENTIFIER reduce 124 - - -state 61 - type : referencetype . (126) - type : referencetype . '[' ']' (127) - - '[' shift 98 - IDENTIFIER reduce 126 - - -state 62 - fielddeclaration : type . fielddeclarator (80) - fielddeclaration : type . variabledeclarators ';' (82) - methodheader : type . methoddeclarator (104) - methodheader : type . methoddeclarator throws (107) - - IDENTIFIER shift 99 - . error - - methoddeclarator goto 100 - variabledeclarators goto 101 - fielddeclarator goto 102 - variabledeclarator goto 54 - variabledeclaratorid goto 55 - - -state 63 - modifiers : modifiers . modifier (43) - constructordeclaration : modifiers . constructordeclarator constructorbody (75) - fielddeclaration : modifiers . type variabledeclarators ';' (83) - methodheader : modifiers . type methoddeclarator (105) - methodheader : modifiers . '<' boundedMethodParameters '>' type methoddeclarator (106) - methodheader : modifiers . type methoddeclarator throws (109) - methodheader : modifiers . '<' boundedMethodParameters '>' type methoddeclarator throws (110) - methodheader : modifiers . VOID methoddeclarator (112) - methodheader : modifiers . VOID methoddeclarator throws (114) - methodheader : modifiers . '<' boundedMethodParameters '>' VOID methoddeclarator (116) - methodheader : modifiers . '<' boundedMethodParameters '>' VOID methoddeclarator throws (118) - methodheader : modifiers . methoddeclarator (121) - methodheader : modifiers . methoddeclarator throws (123) - - ABSTRACT shift 1 - BOOLEAN shift 37 - CHAR shift 38 - FINAL shift 3 - INT shift 39 - PRIVATE shift 4 - PROTECTED shift 5 - PUBLIC shift 6 - STATIC shift 7 - VOID shift 103 - IDENTIFIER shift 104 - '<' shift 105 - . error - - methoddeclarator goto 106 - simplename goto 56 - classorinterfacetype goto 57 - integraltype goto 58 - numerictype goto 59 - primitivetype goto 60 - referencetype goto 61 - type goto 107 - modifier goto 17 - constructordeclarator goto 108 - - -state 64 - classbodydeclaration : constructordeclaration . (65) - - . reduce 65 - - -state 65 - constructordeclaration : constructordeclarator . constructorbody (74) - - '{' shift 109 - . error - - constructorbody goto 110 - - -state 66 - classbodydeclaration : staticinitializer . (64) - - . reduce 64 - - -state 67 - classdeclaration : CLASS classidentifier super classbody . (17) - - . reduce 17 - - -state 68 - classdeclaration : CLASS classidentifier super interfaces . classbody (21) - interfaces : interfaces . ',' interfacetype (46) - - ',' shift 69 - '{' shift 22 - . error - - classbody goto 111 - - -state 69 - interfaces : interfaces ',' . interfacetype (46) - - IDENTIFIER shift 31 - . error - - simplename goto 32 - classorinterfacetype goto 35 - interfacetype goto 112 - - -state 70 - classdeclaration : CLASS classidentifier interfaces classbody . (19) - - . reduce 19 - - -state 71 - classdeclaration : modifiers CLASS classidentifier classbody . (16) + classdeclaration : CLASS classidentifier classbody . (16) . reduce 16 -state 72 - classdeclaration : modifiers CLASS classidentifier super . classbody (18) - classdeclaration : modifiers CLASS classidentifier super . interfaces classbody (22) +state 29 + classdeclaration : CLASS classidentifier super . classbody (18) + classdeclaration : CLASS classidentifier super . interfaces classbody (22) - IMPLEMENTS shift 21 - '{' shift 22 + IMPLEMENTS shift 26 + '{' shift 27 . error - classbody goto 113 - interfaces goto 114 + classbody goto 78 + interfaces goto 79 -state 73 - classdeclaration : modifiers CLASS classidentifier interfaces . classbody (20) - interfaces : interfaces . ',' interfacetype (46) +state 30 + classdeclaration : CLASS classidentifier interfaces . classbody (20) + interfaces : interfaces . ',' interfacetype (47) - ',' shift 69 - '{' shift 22 + ',' shift 80 + '{' shift 27 . error - classbody goto 115 + classbody goto 81 -state 74 - boundedMethodParameter : IDENTIFIER EXTENDS . boundedclassidentifierlist (98) +state 31 + interfaceidentifier : IDENTIFIER '<' . boundedClassParameters '>' (25) - IDENTIFIER shift 31 + IDENTIFIER shift 38 . error - simplename goto 32 - classorinterfacetype goto 57 - referencetype goto 116 - boundedclassidentifierlist goto 117 + boundedMethodParameter goto 39 + boundedClassParameter goto 40 + boundedClassParameters goto 82 -state 75 - boundedClassParameters : boundedClassParameters ',' . boundedClassParameter (96) +state 32 + extendsinterfaces : EXTENDS . interfacetype (50) - IDENTIFIER shift 27 + IDENTIFIER shift 42 . error - boundedMethodParameter goto 28 - boundedClassParameter goto 118 + simplename goto 43 + classorinterfacetype goto 46 + interfacetype goto 83 -state 76 - classidentifier : IDENTIFIER '<' boundedClassParameters '>' . (26) +state 33 + interfacebody : '{' . '}' (48) + interfacebody : '{' . interfacememberdeclarations '}' (49) - . reduce 26 - - -state 77 - parameter : '<' . paralist '>' (68) - - IDENTIFIER shift 119 - '?' shift 120 + ABSTRACT shift 1 + BOOLEAN shift 48 + CHAR shift 49 + FINAL shift 3 + INT shift 50 + PRIVATE shift 4 + PROTECTED shift 5 + PUBLIC shift 6 + STATIC shift 8 + VOID shift 52 + IDENTIFIER shift 84 + '<' shift 54 + '}' shift 85 . error - paralist goto 121 - wildcardparameter goto 122 + interfacememberdeclarations goto 86 + interfacememberdeclaration goto 87 + abstractmethoddeclaration goto 88 + constantdeclaration goto 89 + methodheader goto 90 + methoddeclarator goto 59 + simplename goto 43 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 + type goto 91 + modifiers goto 92 + modifier goto 13 -state 78 - classorinterfacetype : simplename parameter . (66) +state 34 + interfacedeclaration : INTERFACE interfaceidentifier interfacebody . (28) - . reduce 66 + . reduce 28 -state 79 - block : '{' . '}' (85) - block : '{' . blockstatements '}' (86) +state 35 + interfacedeclaration : INTERFACE interfaceidentifier extendsinterfaces . interfacebody (30) + extendsinterfaces : extendsinterfaces . ',' interfacetype (51) - BOOLEAN shift 37 - CHAR shift 38 - FOR shift 123 - IF shift 124 - INT shift 39 - RETURN shift 125 - THIS shift 126 - WHILE shift 127 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 136 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '}' shift 140 - '(' shift 141 + ',' shift 93 + '{' shift 33 . error - variabledeclarators goto 142 - variabledeclarator goto 143 - variabledeclaratorid goto 55 - simplename goto 144 - qualifiedname goto 145 - name goto 146 - classorinterfacetype goto 57 - integraltype goto 58 - numerictype goto 59 - primitivetype goto 60 - referencetype goto 61 - type goto 147 - block goto 148 - blockstatements goto 149 - localvariabledeclarationstatement goto 150 - localvariabledeclaration goto 151 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 164 - blockstatement goto 165 - statement goto 166 - whilestatement goto 167 - forstatement goto 168 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 + interfacebody goto 94 -state 80 - staticinitializer : STATIC block . (73) +state 36 + classdeclaration : modifiers CLASS classidentifier . classbody (17) + classdeclaration : modifiers CLASS classidentifier . super classbody (19) + classdeclaration : modifiers CLASS classidentifier . interfaces classbody (21) + classdeclaration : modifiers CLASS classidentifier . super interfaces classbody (23) - . reduce 73 - - -state 81 - methoddeclarator : IDENTIFIER . '(' ')' (139) - methoddeclarator : IDENTIFIER . '(' formalparameterlist ')' (140) - - '(' shift 83 + EXTENDS shift 25 + IMPLEMENTS shift 26 + '{' shift 27 . error - -state 82 - methodheader : VOID methoddeclarator . (111) - methodheader : VOID methoddeclarator . throws (113) - - THROWS shift 88 - '{' reduce 111 - - throws goto 176 + classbody goto 95 + super goto 96 + interfaces goto 97 -state 83 - methoddeclarator : IDENTIFIER '(' . ')' (139) - methoddeclarator : IDENTIFIER '(' . formalparameterlist ')' (140) +state 37 + interfacedeclaration : modifiers INTERFACE interfaceidentifier . interfacebody (29) + interfacedeclaration : modifiers INTERFACE interfaceidentifier . extendsinterfaces interfacebody (31) - BOOLEAN shift 37 - CHAR shift 38 - INT shift 39 - IDENTIFIER shift 136 - ')' shift 177 + EXTENDS shift 32 + '{' shift 33 . error - variabledeclaratorid goto 178 - simplename goto 32 - classorinterfacetype goto 57 - integraltype goto 58 - numerictype goto 59 - primitivetype goto 60 - referencetype goto 61 - type goto 179 - formalparameter goto 180 - formalparameterlist goto 181 + interfacebody goto 98 + extendsinterfaces goto 99 -state 84 - boundedMethodParameters : boundedMethodParameter . (101) +state 38 + boundedMethodParameter : IDENTIFIER . (98) + boundedMethodParameter : IDENTIFIER . EXTENDS boundedclassidentifierlist (99) - . reduce 101 - - -state 85 - boundedMethodParameters : boundedMethodParameters . ',' boundedMethodParameter (102) - methodheader : '<' boundedMethodParameters . '>' type methoddeclarator (103) - methodheader : '<' boundedMethodParameters . '>' type methoddeclarator throws (108) - methodheader : '<' boundedMethodParameters . '>' VOID methoddeclarator (115) - methodheader : '<' boundedMethodParameters . '>' VOID methoddeclarator throws (117) - methodheader : '<' boundedMethodParameters . '>' methoddeclarator (120) - - ',' shift 182 - '>' shift 183 - . error - - -state 86 - methodbody : block . (130) - - . reduce 130 - - -state 87 - methoddeclaration : methodheader methodbody . (84) - - . reduce 84 - - -state 88 - throws : THROWS . classtypelist (93) - - IDENTIFIER shift 31 - . error - - simplename goto 32 - classtype goto 184 - classorinterfacetype goto 34 - classtypelist goto 185 - - -state 89 - methodheader : methoddeclarator throws . (122) - - . reduce 122 - - -state 90 - classbody : '{' classbodydeclarations '}' . (41) - - . reduce 41 - - -state 91 - classbodydeclarations : classbodydeclarations classbodydeclaration . (52) - - . reduce 52 - - -state 92 - variabledeclarators : variabledeclarators ',' . variabledeclarator (129) - - IDENTIFIER shift 186 - . error - - variabledeclarator goto 187 - variabledeclaratorid goto 55 - - -state 93 - fielddeclaration : variabledeclarators ';' . (81) - - . reduce 81 - - -state 94 - fielddeclaration : fielddeclarator ';' . (79) - - . reduce 79 - - -state 95 - fielddeclarator : variabledeclarator '=' . expression (78) - - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 209 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - methodinvocation goto 216 - castexpression goto 217 - - -state 96 - constructordeclarator : simplename '(' . ')' (87) - constructordeclarator : simplename '(' . formalparameterlist ')' (88) - - BOOLEAN shift 37 - CHAR shift 38 - INT shift 39 - IDENTIFIER shift 136 - ')' shift 218 - . error - - variabledeclaratorid goto 178 - simplename goto 32 - classorinterfacetype goto 57 - integraltype goto 58 - numerictype goto 59 - primitivetype goto 60 - referencetype goto 61 - type goto 179 - formalparameter goto 180 - formalparameterlist goto 219 - - -state 97 - type : primitivetype '[' . ']' (125) - - ']' shift 220 - . error - - -state 98 - type : referencetype '[' . ']' (127) - - ']' shift 221 - . error - - -state 99 - methoddeclarator : IDENTIFIER . '(' ')' (139) - methoddeclarator : IDENTIFIER . '(' formalparameterlist ')' (140) - variabledeclaratorid : IDENTIFIER . (152) - - '(' shift 83 - ',' reduce 152 - ';' reduce 152 - '=' reduce 152 - - -state 100 - methodheader : type methoddeclarator . (104) - methodheader : type methoddeclarator . throws (107) - - THROWS shift 88 - '{' reduce 104 - - throws goto 222 - - -state 101 - fielddeclaration : type variabledeclarators . ';' (82) - variabledeclarators : variabledeclarators . ',' variabledeclarator (129) - - ',' shift 92 - ';' shift 223 - . error - - -state 102 - fielddeclaration : type fielddeclarator . (80) - - . reduce 80 - - -state 103 - methodheader : modifiers VOID . methoddeclarator (112) - methodheader : modifiers VOID . methoddeclarator throws (114) - - IDENTIFIER shift 81 - . error - - methoddeclarator goto 224 - - -104: shift/reduce conflict (shift 83, reduce 14) on '(' -state 104 - simplename : IDENTIFIER . (14) - methoddeclarator : IDENTIFIER . '(' ')' (139) - methoddeclarator : IDENTIFIER . '(' formalparameterlist ')' (140) - - '(' shift 83 - IDENTIFIER reduce 14 - '<' reduce 14 - '[' reduce 14 - - -state 105 - methodheader : modifiers '<' . boundedMethodParameters '>' type methoddeclarator (106) - methodheader : modifiers '<' . boundedMethodParameters '>' type methoddeclarator throws (110) - methodheader : modifiers '<' . boundedMethodParameters '>' VOID methoddeclarator (116) - methodheader : modifiers '<' . boundedMethodParameters '>' VOID methoddeclarator throws (118) - - IDENTIFIER shift 27 - . error - - boundedMethodParameter goto 84 - boundedMethodParameters goto 225 - - -state 106 - methodheader : modifiers methoddeclarator . (121) - methodheader : modifiers methoddeclarator . throws (123) - - THROWS shift 88 - '{' reduce 121 - - throws goto 226 - - -state 107 - fielddeclaration : modifiers type . variabledeclarators ';' (83) - methodheader : modifiers type . methoddeclarator (105) - methodheader : modifiers type . methoddeclarator throws (109) - - IDENTIFIER shift 99 - . error - - methoddeclarator goto 227 - variabledeclarators goto 228 - variabledeclarator goto 143 - variabledeclaratorid goto 55 - - -state 108 - constructordeclaration : modifiers constructordeclarator . constructorbody (75) - - '{' shift 109 - . error - - constructorbody goto 229 - - -state 109 - constructorbody : '{' . '}' (89) - constructorbody : '{' . explicitconstructorinvocation '}' (90) - constructorbody : '{' . blockstatements '}' (91) - constructorbody : '{' . explicitconstructorinvocation blockstatements '}' (92) - - BOOLEAN shift 37 - CHAR shift 38 - FOR shift 123 - IF shift 124 - INT shift 39 - RETURN shift 125 - THIS shift 230 - WHILE shift 127 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 136 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '}' shift 231 - '(' shift 141 - . error - - variabledeclarators goto 142 - variabledeclarator goto 143 - variabledeclaratorid goto 55 - simplename goto 144 - qualifiedname goto 145 - name goto 146 - classorinterfacetype goto 57 - integraltype goto 58 - numerictype goto 59 - primitivetype goto 60 - referencetype goto 61 - type goto 147 - block goto 148 - blockstatements goto 232 - localvariabledeclarationstatement goto 150 - localvariabledeclaration goto 151 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 164 - blockstatement goto 165 - statement goto 166 - whilestatement goto 167 - forstatement goto 168 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 - explicitconstructorinvocation goto 233 - - -state 110 - constructordeclaration : constructordeclarator constructorbody . (74) - - . reduce 74 - - -state 111 - classdeclaration : CLASS classidentifier super interfaces classbody . (21) - - . reduce 21 - - -state 112 - interfaces : interfaces ',' interfacetype . (46) - - . reduce 46 - - -state 113 - classdeclaration : modifiers CLASS classidentifier super classbody . (18) - - . reduce 18 - - -state 114 - classdeclaration : modifiers CLASS classidentifier super interfaces . classbody (22) - interfaces : interfaces . ',' interfacetype (46) - - ',' shift 69 - '{' shift 22 - . error - - classbody goto 234 - - -state 115 - classdeclaration : modifiers CLASS classidentifier interfaces classbody . (20) - - . reduce 20 - - -state 116 - boundedclassidentifierlist : referencetype . (99) - - . reduce 99 - - -state 117 - boundedMethodParameter : IDENTIFIER EXTENDS boundedclassidentifierlist . (98) - boundedclassidentifierlist : boundedclassidentifierlist . '&' referencetype (100) - - '&' shift 235 + EXTENDS shift 100 ',' reduce 98 '>' reduce 98 -state 118 - boundedClassParameters : boundedClassParameters ',' boundedClassParameter . (96) +state 39 + boundedClassParameter : boundedMethodParameter . (95) + + . reduce 95 + + +state 40 + boundedClassParameters : boundedClassParameter . (96) . reduce 96 -state 119 - paralist : IDENTIFIER . (31) - paralist : IDENTIFIER . '<' paralist '>' (32) +state 41 + classidentifier : IDENTIFIER '<' boundedClassParameters . '>' (27) + boundedClassParameters : boundedClassParameters . ',' boundedClassParameter (97) - '<' shift 236 - ',' reduce 31 - '>' reduce 31 - - -state 120 - wildcardparameter : '?' . (37) - wildcardparameter : '?' . EXTENDS referencetype (38) - wildcardparameter : '?' . SUPER referencetype (39) - - EXTENDS shift 237 - SUPER shift 238 - ',' reduce 37 - '>' reduce 37 - - -state 121 - paralist : paralist . ',' IDENTIFIER (34) - paralist : paralist . ',' IDENTIFIER '<' paralist '>' (35) - paralist : paralist . ',' wildcardparameter (36) - parameter : '<' paralist . '>' (68) - - ',' shift 239 - '>' shift 240 + ',' shift 101 + '>' shift 102 . error -state 122 - paralist : wildcardparameter . (33) +state 42 + simplename : IDENTIFIER . (15) - . reduce 33 + . reduce 15 -state 123 - forstatement : FOR . '(' expression ';' expression ';' expression ')' statement (173) - forstatement : FOR . '(' expression ';' expression ';' ')' statement (174) - forstatement : FOR . '(' expression ';' ';' expression ')' statement (175) - forstatement : FOR . '(' ';' expression ';' expression ')' statement (176) - forstatement : FOR . '(' expression ';' ';' ')' statement (177) - forstatement : FOR . '(' ';' expression ';' ')' statement (178) - forstatement : FOR . '(' ';' ';' expression ')' statement (179) - forstatement : FOR . '(' ';' ';' ')' statement (180) +43: shift/reduce conflict (shift 103, reduce 68) on '<' +state 43 + classorinterfacetype : simplename . parameter (67) + parameter : . (68) - '(' shift 241 + '<' shift 103 + ABSTRACT reduce 68 + BOOLEAN reduce 68 + CHAR reduce 68 + FINAL reduce 68 + INSTANCEOF reduce 68 + INT reduce 68 + PRIVATE reduce 68 + PROTECTED reduce 68 + PUBLIC reduce 68 + IMPLEMENTS reduce 68 + STATIC reduce 68 + VOID reduce 68 + IDENTIFIER reduce 68 + EQUAL reduce 68 + LESSEQUAL reduce 68 + GREATEREQUAL reduce 68 + NOTEQUAL reduce 68 + LOGICALOR reduce 68 + LOGICALAND reduce 68 + INCREMENT reduce 68 + DECREMENT reduce 68 + ',' reduce 68 + ';' reduce 68 + '.' reduce 68 + '*' reduce 68 + '>' reduce 68 + '{' reduce 68 + '}' reduce 68 + '(' reduce 68 + ')' reduce 68 + '&' reduce 68 + '[' reduce 68 + '+' reduce 68 + '-' reduce 68 + '|' reduce 68 + '^' reduce 68 + '/' reduce 68 + '%' reduce 68 + + parameter goto 104 + + +state 44 + super : EXTENDS classtype . (45) + + . reduce 45 + + +state 45 + classtype : classorinterfacetype . (60) + + . reduce 60 + + +state 46 + interfacetype : classorinterfacetype . (63) + + . reduce 63 + + +state 47 + interfaces : IMPLEMENTS interfacetype . (46) + + . reduce 46 + + +state 48 + primitivetype : BOOLEAN . (142) + + . reduce 142 + + +state 49 + integraltype : CHAR . (164) + + . reduce 164 + + +state 50 + integraltype : INT . (163) + + . reduce 163 + + +state 51 + modifier : STATIC . (57) + staticinitializer : STATIC . block (74) + + '{' shift 105 + ABSTRACT reduce 57 + BOOLEAN reduce 57 + CHAR reduce 57 + FINAL reduce 57 + INT reduce 57 + PRIVATE reduce 57 + PROTECTED reduce 57 + PUBLIC reduce 57 + STATIC reduce 57 + VOID reduce 57 + IDENTIFIER reduce 57 + '<' reduce 57 + + block goto 106 + + +state 52 + methodheader : VOID . methoddeclarator (112) + methodheader : VOID . methoddeclarator throws (114) + + IDENTIFIER shift 107 + . error + + methoddeclarator goto 108 + + +53: shift/reduce conflict (shift 109, reduce 15) on '(' +state 53 + simplename : IDENTIFIER . (15) + methoddeclarator : IDENTIFIER . '(' ')' (140) + methoddeclarator : IDENTIFIER . '(' formalparameterlist ')' (141) + variabledeclaratorid : IDENTIFIER . (153) + + '(' shift 109 + IDENTIFIER reduce 15 + ',' reduce 153 + ';' reduce 153 + '<' reduce 15 + '=' reduce 153 + '[' reduce 15 + + +state 54 + methodheader : '<' . boundedMethodParameters '>' type methoddeclarator (104) + methodheader : '<' . boundedMethodParameters '>' type methoddeclarator throws (109) + methodheader : '<' . boundedMethodParameters '>' VOID methoddeclarator (116) + methodheader : '<' . boundedMethodParameters '>' VOID methoddeclarator throws (118) + methodheader : '<' . boundedMethodParameters '>' methoddeclarator (121) + + IDENTIFIER shift 38 + . error + + boundedMethodParameter goto 110 + boundedMethodParameters goto 111 + + +state 55 + classbody : '{' '}' . (41) + + . reduce 41 + + +state 56 + classmemberdeclaration : fielddeclaration . (72) + + . reduce 72 + + +state 57 + methoddeclaration : methodheader . methodbody (85) + + '{' shift 105 + . error + + block goto 112 + methodbody goto 113 + + +state 58 + classmemberdeclaration : methoddeclaration . (73) + + . reduce 73 + + +state 59 + methodheader : methoddeclarator . (120) + methodheader : methoddeclarator . throws (123) + + THROWS shift 114 + ';' reduce 120 + '{' reduce 120 + + throws goto 115 + + +state 60 + classbody : '{' classbodydeclarations . '}' (42) + classbodydeclarations : classbodydeclarations . classbodydeclaration (53) + + ABSTRACT shift 1 + BOOLEAN shift 48 + CHAR shift 49 + FINAL shift 3 + INT shift 50 + PRIVATE shift 4 + PROTECTED shift 5 + PUBLIC shift 6 + STATIC shift 51 + VOID shift 52 + IDENTIFIER shift 53 + '<' shift 54 + '}' shift 116 + . error + + fielddeclaration goto 56 + methodheader goto 57 + methoddeclaration goto 58 + methoddeclarator goto 59 + classbodydeclaration goto 117 + classmemberdeclaration goto 62 + variabledeclarators goto 63 + fielddeclarator goto 64 + variabledeclarator goto 65 + variabledeclaratorid goto 66 + simplename goto 67 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 + type goto 73 + modifiers goto 74 + modifier goto 13 + constructordeclaration goto 75 + constructordeclarator goto 76 + staticinitializer goto 77 + + +state 61 + classbodydeclarations : classbodydeclaration . (52) + + . reduce 52 + + +state 62 + classbodydeclaration : classmemberdeclaration . (64) + + . reduce 64 + + +state 63 + fielddeclaration : variabledeclarators . ';' (82) + variabledeclarators : variabledeclarators . ',' variabledeclarator (130) + + ',' shift 118 + ';' shift 119 . error -state 124 - ifthenstatement : IF . '(' expression ')' statement (170) - ifthenelsestatement : IF . '(' expression ')' statementnoshortif ELSE statement (171) +state 64 + fielddeclaration : fielddeclarator . ';' (80) - '(' shift 242 + ';' shift 120 . error -state 125 - returnstatement : RETURN . ';' (185) - returnstatement : RETURN . expression ';' (186) +state 65 + fielddeclarator : variabledeclarator . '=' expression (79) + variabledeclarators : variabledeclarator . (129) - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 243 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 + '=' shift 121 + ',' reduce 129 + ';' reduce 129 + + +state 66 + variabledeclarator : variabledeclaratorid . (145) + + . reduce 145 + + +state 67 + classorinterfacetype : simplename . parameter (67) + constructordeclarator : simplename . '(' ')' (88) + constructordeclarator : simplename . '(' formalparameterlist ')' (89) + parameter : . (68) + + '<' shift 103 + '(' shift 122 + IDENTIFIER reduce 68 + '[' reduce 68 + + parameter goto 104 + + +state 68 + referencetype : classorinterfacetype . (144) + + . reduce 144 + + +state 69 + numerictype : integraltype . (152) + + . reduce 152 + + +state 70 + primitivetype : numerictype . (143) + + . reduce 143 + + +state 71 + type : primitivetype . (125) + type : primitivetype . '[' ']' (126) + + '[' shift 123 + IDENTIFIER reduce 125 + + +state 72 + type : referencetype . (127) + type : referencetype . '[' ']' (128) + + '[' shift 124 + IDENTIFIER reduce 127 + + +state 73 + fielddeclaration : type . fielddeclarator (81) + fielddeclaration : type . variabledeclarators ';' (83) + methodheader : type . methoddeclarator (105) + methodheader : type . methoddeclarator throws (108) + + IDENTIFIER shift 125 . error - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 244 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - methodinvocation goto 216 - castexpression goto 217 + methoddeclarator goto 126 + variabledeclarators goto 127 + fielddeclarator goto 128 + variabledeclarator goto 65 + variabledeclaratorid goto 66 -state 126 - primarynonewarray : THIS . (241) +state 74 + modifiers : modifiers . modifier (44) + constructordeclaration : modifiers . constructordeclarator constructorbody (76) + fielddeclaration : modifiers . type variabledeclarators ';' (84) + methodheader : modifiers . type methoddeclarator (106) + methodheader : modifiers . '<' boundedMethodParameters '>' type methoddeclarator (107) + methodheader : modifiers . type methoddeclarator throws (110) + methodheader : modifiers . '<' boundedMethodParameters '>' type methoddeclarator throws (111) + methodheader : modifiers . VOID methoddeclarator (113) + methodheader : modifiers . VOID methoddeclarator throws (115) + methodheader : modifiers . '<' boundedMethodParameters '>' VOID methoddeclarator (117) + methodheader : modifiers . '<' boundedMethodParameters '>' VOID methoddeclarator throws (119) + methodheader : modifiers . methoddeclarator (122) + methodheader : modifiers . methoddeclarator throws (124) - . reduce 241 + ABSTRACT shift 1 + BOOLEAN shift 48 + CHAR shift 49 + FINAL shift 3 + INT shift 50 + PRIVATE shift 4 + PROTECTED shift 5 + PUBLIC shift 6 + STATIC shift 8 + VOID shift 129 + IDENTIFIER shift 84 + '<' shift 130 + . error + + methoddeclarator goto 131 + simplename goto 67 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 + type goto 132 + modifier goto 22 + constructordeclarator goto 133 -state 127 - whilestatement : WHILE . '(' expression ')' statement (172) +state 75 + classbodydeclaration : constructordeclaration . (66) - '(' shift 245 + . reduce 66 + + +state 76 + constructordeclaration : constructordeclarator . constructorbody (75) + + '{' shift 134 + . error + + constructorbody goto 135 + + +state 77 + classbodydeclaration : staticinitializer . (65) + + . reduce 65 + + +state 78 + classdeclaration : CLASS classidentifier super classbody . (18) + + . reduce 18 + + +state 79 + classdeclaration : CLASS classidentifier super interfaces . classbody (22) + interfaces : interfaces . ',' interfacetype (47) + + ',' shift 80 + '{' shift 27 + . error + + classbody goto 136 + + +state 80 + interfaces : interfaces ',' . interfacetype (47) + + IDENTIFIER shift 42 + . error + + simplename goto 43 + classorinterfacetype goto 46 + interfacetype goto 137 + + +state 81 + classdeclaration : CLASS classidentifier interfaces classbody . (20) + + . reduce 20 + + +state 82 + interfaceidentifier : IDENTIFIER '<' boundedClassParameters . '>' (25) + boundedClassParameters : boundedClassParameters . ',' boundedClassParameter (97) + + ',' shift 101 + '>' shift 138 . error -state 128 - literal : INTLITERAL . (249) +state 83 + extendsinterfaces : EXTENDS interfacetype . (50) - . reduce 249 + . reduce 50 -state 129 - literal : LONGLITERAL . (253) +84: shift/reduce conflict (shift 109, reduce 15) on '(' +state 84 + simplename : IDENTIFIER . (15) + methoddeclarator : IDENTIFIER . '(' ')' (140) + methoddeclarator : IDENTIFIER . '(' formalparameterlist ')' (141) - . reduce 253 + '(' shift 109 + IDENTIFIER reduce 15 + '<' reduce 15 + '[' reduce 15 -state 130 - literal : DOUBLELITERAL . (255) +state 85 + interfacebody : '{' '}' . (48) - . reduce 255 + . reduce 48 -state 131 - literal : FLOATLITERAL . (254) +state 86 + interfacebody : '{' interfacememberdeclarations . '}' (49) + interfacememberdeclarations : interfacememberdeclarations . interfacememberdeclaration (62) - . reduce 254 - - -state 132 - literal : BOOLLITERAL . (250) - - . reduce 250 - - -state 133 - literal : JNULL . (256) - - . reduce 256 - - -state 134 - literal : CHARLITERAL . (251) - - . reduce 251 - - -state 135 - literal : STRINGLITERAL . (252) - - . reduce 252 - - -state 136 - simplename : IDENTIFIER . (14) - variabledeclaratorid : IDENTIFIER . (152) - - IDENTIFIER reduce 14 - INCREMENT reduce 14 - DECREMENT reduce 14 - PLUSEQUAL reduce 14 - MINUSEQUAL reduce 14 - TIMESEQUAL reduce 14 - DIVIDEEQUAL reduce 14 - MODULOEQUAL reduce 14 - ',' reduce 152 - ';' reduce 152 - '.' reduce 14 - '<' reduce 14 - '=' reduce 14 - '(' reduce 14 - ')' reduce 152 - '[' reduce 14 - - -state 137 - preincrementexpression : INCREMENT . unaryexpression (216) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 + ABSTRACT shift 1 + BOOLEAN shift 48 + CHAR shift 49 + FINAL shift 3 + INT shift 50 + PRIVATE shift 4 + PROTECTED shift 5 + PUBLIC shift 6 + STATIC shift 8 + VOID shift 52 + IDENTIFIER shift 84 + '<' shift 54 + '}' shift 139 . error - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 247 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 + interfacememberdeclaration goto 140 + abstractmethoddeclaration goto 88 + constantdeclaration goto 89 + methodheader goto 90 + methoddeclarator goto 59 + simplename goto 43 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 + type goto 91 + modifiers goto 92 + modifier goto 13 -state 138 - predecrementexpression : DECREMENT . unaryexpression (217) +state 87 + interfacememberdeclarations : interfacememberdeclaration . (61) - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 + . reduce 61 + + +state 88 + interfacememberdeclaration : abstractmethoddeclaration . (71) + + . reduce 71 + + +state 89 + interfacememberdeclaration : constantdeclaration . (70) + + . reduce 70 + + +state 90 + abstractmethoddeclaration : methodheader . ';' (78) + + ';' shift 141 . error - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 248 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 + +state 91 + methodheader : type . methoddeclarator (105) + methodheader : type . methoddeclarator throws (108) + + IDENTIFIER shift 107 + . error + + methoddeclarator goto 126 -state 139 - emptystatement : ';' . (183) +state 92 + modifiers : modifiers . modifier (44) + constantdeclaration : modifiers . type IDENTIFIER '=' expression ';' (77) + methodheader : modifiers . type methoddeclarator (106) + methodheader : modifiers . '<' boundedMethodParameters '>' type methoddeclarator (107) + methodheader : modifiers . type methoddeclarator throws (110) + methodheader : modifiers . '<' boundedMethodParameters '>' type methoddeclarator throws (111) + methodheader : modifiers . VOID methoddeclarator (113) + methodheader : modifiers . VOID methoddeclarator throws (115) + methodheader : modifiers . '<' boundedMethodParameters '>' VOID methoddeclarator (117) + methodheader : modifiers . '<' boundedMethodParameters '>' VOID methoddeclarator throws (119) + methodheader : modifiers . methoddeclarator (122) + methodheader : modifiers . methoddeclarator throws (124) - . reduce 183 + ABSTRACT shift 1 + BOOLEAN shift 48 + CHAR shift 49 + FINAL shift 3 + INT shift 50 + PRIVATE shift 4 + PROTECTED shift 5 + PUBLIC shift 6 + STATIC shift 8 + VOID shift 129 + IDENTIFIER shift 84 + '<' shift 130 + . error + + methoddeclarator goto 131 + simplename goto 43 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 + type goto 142 + modifier goto 22 -state 140 - block : '{' '}' . (85) +state 93 + extendsinterfaces : extendsinterfaces ',' . interfacetype (51) + + IDENTIFIER shift 42 + . error + + simplename goto 43 + classorinterfacetype goto 46 + interfacetype goto 143 + + +state 94 + interfacedeclaration : INTERFACE interfaceidentifier extendsinterfaces interfacebody . (30) + + . reduce 30 + + +state 95 + classdeclaration : modifiers CLASS classidentifier classbody . (17) + + . reduce 17 + + +state 96 + classdeclaration : modifiers CLASS classidentifier super . classbody (19) + classdeclaration : modifiers CLASS classidentifier super . interfaces classbody (23) + + IMPLEMENTS shift 26 + '{' shift 27 + . error + + classbody goto 144 + interfaces goto 145 + + +state 97 + classdeclaration : modifiers CLASS classidentifier interfaces . classbody (21) + interfaces : interfaces . ',' interfacetype (47) + + ',' shift 80 + '{' shift 27 + . error + + classbody goto 146 + + +state 98 + interfacedeclaration : modifiers INTERFACE interfaceidentifier interfacebody . (29) + + . reduce 29 + + +state 99 + interfacedeclaration : modifiers INTERFACE interfaceidentifier extendsinterfaces . interfacebody (31) + extendsinterfaces : extendsinterfaces . ',' interfacetype (51) + + ',' shift 93 + '{' shift 33 + . error + + interfacebody goto 147 + + +state 100 + boundedMethodParameter : IDENTIFIER EXTENDS . boundedclassidentifierlist (99) + + IDENTIFIER shift 42 + . error + + simplename goto 43 + classorinterfacetype goto 68 + referencetype goto 148 + boundedclassidentifierlist goto 149 + + +state 101 + boundedClassParameters : boundedClassParameters ',' . boundedClassParameter (97) + + IDENTIFIER shift 38 + . error + + boundedMethodParameter goto 39 + boundedClassParameter goto 150 + + +state 102 + classidentifier : IDENTIFIER '<' boundedClassParameters '>' . (27) + + . reduce 27 + + +state 103 + parameter : '<' . paralist '>' (69) + + IDENTIFIER shift 151 + '?' shift 152 + . error + + paralist goto 153 + wildcardparameter goto 154 + + +state 104 + classorinterfacetype : simplename parameter . (67) + + . reduce 67 + + +state 105 + block : '{' . '}' (86) + block : '{' . blockstatements '}' (87) + + BOOLEAN shift 48 + CHAR shift 49 + FOR shift 155 + IF shift 156 + INT shift 50 + RETURN shift 157 + THIS shift 158 + WHILE shift 159 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 168 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '}' shift 172 + '(' shift 173 + . error + + variabledeclarators goto 174 + variabledeclarator goto 175 + variabledeclaratorid goto 66 + simplename goto 176 + qualifiedname goto 177 + name goto 178 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 + type goto 179 + block goto 180 + blockstatements goto 181 + localvariabledeclarationstatement goto 182 + localvariabledeclaration goto 183 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 196 + blockstatement goto 197 + statement goto 198 + whilestatement goto 199 + forstatement goto 200 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 106 + staticinitializer : STATIC block . (74) + + . reduce 74 + + +state 107 + methoddeclarator : IDENTIFIER . '(' ')' (140) + methoddeclarator : IDENTIFIER . '(' formalparameterlist ')' (141) + + '(' shift 109 + . error + + +state 108 + methodheader : VOID methoddeclarator . (112) + methodheader : VOID methoddeclarator . throws (114) + + THROWS shift 114 + ';' reduce 112 + '{' reduce 112 + + throws goto 208 + + +state 109 + methoddeclarator : IDENTIFIER '(' . ')' (140) + methoddeclarator : IDENTIFIER '(' . formalparameterlist ')' (141) + + BOOLEAN shift 48 + CHAR shift 49 + INT shift 50 + IDENTIFIER shift 168 + ')' shift 209 + . error + + variabledeclaratorid goto 210 + simplename goto 43 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 + type goto 211 + formalparameter goto 212 + formalparameterlist goto 213 + + +state 110 + boundedMethodParameters : boundedMethodParameter . (102) + + . reduce 102 + + +state 111 + boundedMethodParameters : boundedMethodParameters . ',' boundedMethodParameter (103) + methodheader : '<' boundedMethodParameters . '>' type methoddeclarator (104) + methodheader : '<' boundedMethodParameters . '>' type methoddeclarator throws (109) + methodheader : '<' boundedMethodParameters . '>' VOID methoddeclarator (116) + methodheader : '<' boundedMethodParameters . '>' VOID methoddeclarator throws (118) + methodheader : '<' boundedMethodParameters . '>' methoddeclarator (121) + + ',' shift 214 + '>' shift 215 + . error + + +state 112 + methodbody : block . (131) + + . reduce 131 + + +state 113 + methoddeclaration : methodheader methodbody . (85) . reduce 85 -state 141 - lambdaexpressionparameter : '(' . ')' (206) - lambdaexpressionparameter : '(' . formalparameterlist ')' (207) +state 114 + throws : THROWS . classtypelist (94) - BOOLEAN shift 37 - CHAR shift 38 - INT shift 39 - IDENTIFIER shift 136 - ')' shift 249 + IDENTIFIER shift 42 . error - variabledeclaratorid goto 178 - simplename goto 32 - classorinterfacetype goto 57 - integraltype goto 58 - numerictype goto 59 - primitivetype goto 60 - referencetype goto 61 + simplename goto 43 + classtype goto 216 + classorinterfacetype goto 45 + classtypelist goto 217 + + +state 115 + methodheader : methoddeclarator throws . (123) + + . reduce 123 + + +state 116 + classbody : '{' classbodydeclarations '}' . (42) + + . reduce 42 + + +state 117 + classbodydeclarations : classbodydeclarations classbodydeclaration . (53) + + . reduce 53 + + +state 118 + variabledeclarators : variabledeclarators ',' . variabledeclarator (130) + + IDENTIFIER shift 218 + . error + + variabledeclarator goto 219 + variabledeclaratorid goto 66 + + +state 119 + fielddeclaration : variabledeclarators ';' . (82) + + . reduce 82 + + +state 120 + fielddeclaration : fielddeclarator ';' . (80) + + . reduce 80 + + +state 121 + fielddeclarator : variabledeclarator '=' . expression (79) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 241 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + methodinvocation goto 248 + castexpression goto 249 + + +state 122 + constructordeclarator : simplename '(' . ')' (88) + constructordeclarator : simplename '(' . formalparameterlist ')' (89) + + BOOLEAN shift 48 + CHAR shift 49 + INT shift 50 + IDENTIFIER shift 168 + ')' shift 250 + . error + + variabledeclaratorid goto 210 + simplename goto 43 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 + type goto 211 + formalparameter goto 212 + formalparameterlist goto 251 + + +state 123 + type : primitivetype '[' . ']' (126) + + ']' shift 252 + . error + + +state 124 + type : referencetype '[' . ']' (128) + + ']' shift 253 + . error + + +state 125 + methoddeclarator : IDENTIFIER . '(' ')' (140) + methoddeclarator : IDENTIFIER . '(' formalparameterlist ')' (141) + variabledeclaratorid : IDENTIFIER . (153) + + '(' shift 109 + ',' reduce 153 + ';' reduce 153 + '=' reduce 153 + + +state 126 + methodheader : type methoddeclarator . (105) + methodheader : type methoddeclarator . throws (108) + + THROWS shift 114 + ';' reduce 105 + '{' reduce 105 + + throws goto 254 + + +state 127 + fielddeclaration : type variabledeclarators . ';' (83) + variabledeclarators : variabledeclarators . ',' variabledeclarator (130) + + ',' shift 118 + ';' shift 255 + . error + + +state 128 + fielddeclaration : type fielddeclarator . (81) + + . reduce 81 + + +state 129 + methodheader : modifiers VOID . methoddeclarator (113) + methodheader : modifiers VOID . methoddeclarator throws (115) + + IDENTIFIER shift 107 + . error + + methoddeclarator goto 256 + + +state 130 + methodheader : modifiers '<' . boundedMethodParameters '>' type methoddeclarator (107) + methodheader : modifiers '<' . boundedMethodParameters '>' type methoddeclarator throws (111) + methodheader : modifiers '<' . boundedMethodParameters '>' VOID methoddeclarator (117) + methodheader : modifiers '<' . boundedMethodParameters '>' VOID methoddeclarator throws (119) + + IDENTIFIER shift 38 + . error + + boundedMethodParameter goto 110 + boundedMethodParameters goto 257 + + +state 131 + methodheader : modifiers methoddeclarator . (122) + methodheader : modifiers methoddeclarator . throws (124) + + THROWS shift 114 + ';' reduce 122 + '{' reduce 122 + + throws goto 258 + + +state 132 + fielddeclaration : modifiers type . variabledeclarators ';' (84) + methodheader : modifiers type . methoddeclarator (106) + methodheader : modifiers type . methoddeclarator throws (110) + + IDENTIFIER shift 125 + . error + + methoddeclarator goto 259 + variabledeclarators goto 260 + variabledeclarator goto 175 + variabledeclaratorid goto 66 + + +state 133 + constructordeclaration : modifiers constructordeclarator . constructorbody (76) + + '{' shift 134 + . error + + constructorbody goto 261 + + +state 134 + constructorbody : '{' . '}' (90) + constructorbody : '{' . explicitconstructorinvocation '}' (91) + constructorbody : '{' . blockstatements '}' (92) + constructorbody : '{' . explicitconstructorinvocation blockstatements '}' (93) + + BOOLEAN shift 48 + CHAR shift 49 + FOR shift 155 + IF shift 156 + INT shift 50 + RETURN shift 157 + THIS shift 262 + WHILE shift 159 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 168 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '}' shift 263 + '(' shift 173 + . error + + variabledeclarators goto 174 + variabledeclarator goto 175 + variabledeclaratorid goto 66 + simplename goto 176 + qualifiedname goto 177 + name goto 178 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 type goto 179 - formalparameter goto 180 - formalparameterlist goto 250 + block goto 180 + blockstatements goto 264 + localvariabledeclarationstatement goto 182 + localvariabledeclaration goto 183 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 196 + blockstatement goto 197 + statement goto 198 + whilestatement goto 199 + forstatement goto 200 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + explicitconstructorinvocation goto 265 + + +state 135 + constructordeclaration : constructordeclarator constructorbody . (75) + + . reduce 75 + + +state 136 + classdeclaration : CLASS classidentifier super interfaces classbody . (22) + + . reduce 22 + + +state 137 + interfaces : interfaces ',' interfacetype . (47) + + . reduce 47 + + +state 138 + interfaceidentifier : IDENTIFIER '<' boundedClassParameters '>' . (25) + + . reduce 25 + + +state 139 + interfacebody : '{' interfacememberdeclarations '}' . (49) + + . reduce 49 + + +state 140 + interfacememberdeclarations : interfacememberdeclarations interfacememberdeclaration . (62) + + . reduce 62 + + +state 141 + abstractmethoddeclaration : methodheader ';' . (78) + + . reduce 78 state 142 - variabledeclarators : variabledeclarators . ',' variabledeclarator (129) - localvariabledeclaration : variabledeclarators . (165) + constantdeclaration : modifiers type . IDENTIFIER '=' expression ';' (77) + methodheader : modifiers type . methoddeclarator (106) + methodheader : modifiers type . methoddeclarator throws (110) - ',' shift 92 - ';' reduce 165 + IDENTIFIER shift 266 + . error + + methoddeclarator goto 259 state 143 - variabledeclarators : variabledeclarator . (128) + extendsinterfaces : extendsinterfaces ',' interfacetype . (51) - . reduce 128 + . reduce 51 state 144 - name : simplename . (9) - classorinterfacetype : simplename . parameter (66) - parameter : . (67) + classdeclaration : modifiers CLASS classidentifier super classbody . (19) - '<' shift 77 - IDENTIFIER reduce 67 + . reduce 19 + + +state 145 + classdeclaration : modifiers CLASS classidentifier super interfaces . classbody (23) + interfaces : interfaces . ',' interfacetype (47) + + ',' shift 80 + '{' shift 27 + . error + + classbody goto 267 + + +state 146 + classdeclaration : modifiers CLASS classidentifier interfaces classbody . (21) + + . reduce 21 + + +state 147 + interfacedeclaration : modifiers INTERFACE interfaceidentifier extendsinterfaces interfacebody . (31) + + . reduce 31 + + +state 148 + boundedclassidentifierlist : referencetype . (100) + + . reduce 100 + + +state 149 + boundedMethodParameter : IDENTIFIER EXTENDS boundedclassidentifierlist . (99) + boundedclassidentifierlist : boundedclassidentifierlist . '&' referencetype (101) + + '&' shift 268 + ',' reduce 99 + '>' reduce 99 + + +state 150 + boundedClassParameters : boundedClassParameters ',' boundedClassParameter . (97) + + . reduce 97 + + +state 151 + paralist : IDENTIFIER . (32) + paralist : IDENTIFIER . '<' paralist '>' (33) + + '<' shift 269 + ',' reduce 32 + '>' reduce 32 + + +state 152 + wildcardparameter : '?' . (38) + wildcardparameter : '?' . EXTENDS referencetype (39) + wildcardparameter : '?' . SUPER referencetype (40) + + EXTENDS shift 270 + SUPER shift 271 + ',' reduce 38 + '>' reduce 38 + + +state 153 + paralist : paralist . ',' IDENTIFIER (35) + paralist : paralist . ',' IDENTIFIER '<' paralist '>' (36) + paralist : paralist . ',' wildcardparameter (37) + parameter : '<' paralist . '>' (69) + + ',' shift 272 + '>' shift 273 + . error + + +state 154 + paralist : wildcardparameter . (34) + + . reduce 34 + + +state 155 + forstatement : FOR . '(' expression ';' expression ';' expression ')' statement (174) + forstatement : FOR . '(' expression ';' expression ';' ')' statement (175) + forstatement : FOR . '(' expression ';' ';' expression ')' statement (176) + forstatement : FOR . '(' ';' expression ';' expression ')' statement (177) + forstatement : FOR . '(' expression ';' ';' ')' statement (178) + forstatement : FOR . '(' ';' expression ';' ')' statement (179) + forstatement : FOR . '(' ';' ';' expression ')' statement (180) + forstatement : FOR . '(' ';' ';' ')' statement (181) + + '(' shift 274 + . error + + +state 156 + ifthenstatement : IF . '(' expression ')' statement (171) + ifthenelsestatement : IF . '(' expression ')' statementnoshortif ELSE statement (172) + + '(' shift 275 + . error + + +state 157 + returnstatement : RETURN . ';' (186) + returnstatement : RETURN . expression ';' (187) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 276 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 277 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + methodinvocation goto 248 + castexpression goto 249 + + +state 158 + primarynonewarray : THIS . (242) + + . reduce 242 + + +state 159 + whilestatement : WHILE . '(' expression ')' statement (173) + + '(' shift 278 + . error + + +state 160 + literal : INTLITERAL . (250) + + . reduce 250 + + +state 161 + literal : LONGLITERAL . (254) + + . reduce 254 + + +state 162 + literal : DOUBLELITERAL . (256) + + . reduce 256 + + +state 163 + literal : FLOATLITERAL . (255) + + . reduce 255 + + +state 164 + literal : BOOLLITERAL . (251) + + . reduce 251 + + +state 165 + literal : JNULL . (257) + + . reduce 257 + + +state 166 + literal : CHARLITERAL . (252) + + . reduce 252 + + +state 167 + literal : STRINGLITERAL . (253) + + . reduce 253 + + +state 168 + simplename : IDENTIFIER . (15) + variabledeclaratorid : IDENTIFIER . (153) + + IDENTIFIER reduce 15 + INCREMENT reduce 15 + DECREMENT reduce 15 + PLUSEQUAL reduce 15 + MINUSEQUAL reduce 15 + TIMESEQUAL reduce 15 + DIVIDEEQUAL reduce 15 + MODULOEQUAL reduce 15 + ',' reduce 153 + ';' reduce 153 + '.' reduce 15 + '<' reduce 15 + '=' reduce 15 + '(' reduce 15 + ')' reduce 153 + '[' reduce 15 + + +state 169 + preincrementexpression : INCREMENT . unaryexpression (217) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 280 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 170 + predecrementexpression : DECREMENT . unaryexpression (218) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 281 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 171 + emptystatement : ';' . (184) + + . reduce 184 + + +state 172 + block : '{' '}' . (86) + + . reduce 86 + + +state 173 + lambdaexpressionparameter : '(' . ')' (207) + lambdaexpressionparameter : '(' . formalparameterlist ')' (208) + + BOOLEAN shift 48 + CHAR shift 49 + INT shift 50 + IDENTIFIER shift 168 + ')' shift 282 + . error + + variabledeclaratorid goto 210 + simplename goto 43 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 + type goto 211 + formalparameter goto 212 + formalparameterlist goto 283 + + +state 174 + variabledeclarators : variabledeclarators . ',' variabledeclarator (130) + localvariabledeclaration : variabledeclarators . (166) + + ',' shift 118 + ';' reduce 166 + + +state 175 + variabledeclarators : variabledeclarator . (129) + + . reduce 129 + + +state 176 + name : simplename . (9) + classorinterfacetype : simplename . parameter (67) + parameter : . (68) + + '<' shift 103 + IDENTIFIER reduce 68 INCREMENT reduce 9 DECREMENT reduce 9 PLUSEQUAL reduce 9 @@ -2120,27 +2477,197 @@ state 144 '.' reduce 9 '=' reduce 9 '(' reduce 9 - '[' reduce 67 + '[' reduce 68 - parameter goto 78 + parameter goto 104 -state 145 +state 177 name : qualifiedname . (8) . reduce 8 -146: shift/reduce conflict (shift 251, reduce 234) on '.' -state 146 - qualifiedname : name . '.' IDENTIFIER (11) - lefthandside : name . (209) - methodinvocation : name . '(' ')' (220) - methodinvocation : name . '(' argumentlist ')' (221) - postfixexpression : name . (234) +178: shift/reduce conflict (shift 284, reduce 235) on '.' +state 178 + qualifiedname : name . '.' IDENTIFIER (12) + lefthandside : name . (210) + methodinvocation : name . '(' ')' (221) + methodinvocation : name . '(' argumentlist ')' (222) + postfixexpression : name . (235) - '.' shift 251 - '(' shift 252 + '.' shift 284 + '(' shift 285 + ABSTRACT reduce 235 + BOOLEAN reduce 235 + CHAR reduce 235 + FINAL reduce 235 + INSTANCEOF reduce 235 + INT reduce 235 + PRIVATE reduce 235 + PROTECTED reduce 235 + PUBLIC reduce 235 + STATIC reduce 235 + VOID reduce 235 + IDENTIFIER reduce 235 + EQUAL reduce 235 + LESSEQUAL reduce 235 + GREATEREQUAL reduce 235 + NOTEQUAL reduce 235 + LOGICALOR reduce 235 + LOGICALAND reduce 235 + INCREMENT reduce 235 + DECREMENT reduce 235 + PLUSEQUAL reduce 210 + MINUSEQUAL reduce 210 + TIMESEQUAL reduce 210 + DIVIDEEQUAL reduce 210 + MODULOEQUAL reduce 210 + ',' reduce 235 + ';' reduce 235 + '*' reduce 235 + '<' reduce 235 + '>' reduce 235 + '}' reduce 235 + '=' reduce 210 + ')' reduce 235 + '&' reduce 235 + '+' reduce 235 + '-' reduce 235 + '|' reduce 235 + '^' reduce 235 + '/' reduce 235 + '%' reduce 235 + + +state 179 + localvariabledeclaration : type . variabledeclarators (165) + + IDENTIFIER shift 218 + . error + + variabledeclarators goto 286 + variabledeclarator goto 175 + variabledeclaratorid goto 66 + + +state 180 + statementwithouttrailingsubstatement : block . (167) + + . reduce 167 + + +state 181 + block : '{' blockstatements . '}' (87) + blockstatements : blockstatements . blockstatement (133) + + BOOLEAN shift 48 + CHAR shift 49 + FOR shift 155 + IF shift 156 + INT shift 50 + RETURN shift 157 + THIS shift 158 + WHILE shift 159 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 168 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '}' shift 287 + '(' shift 173 + . error + + variabledeclarators goto 174 + variabledeclarator goto 175 + variabledeclaratorid goto 66 + simplename goto 176 + qualifiedname goto 177 + name goto 178 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 + type goto 179 + block goto 180 + localvariabledeclarationstatement goto 182 + localvariabledeclaration goto 183 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 196 + blockstatement goto 288 + statement goto 198 + whilestatement goto 199 + forstatement goto 200 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 182 + blockstatement : localvariabledeclarationstatement . (146) + + . reduce 146 + + +state 183 + localvariabledeclarationstatement : localvariabledeclaration . ';' (155) + + ';' shift 289 + . error + + +state 184 + lambdaexpression : lambdaexpressionparameter . lambdaassignmentoperator lambdabody (209) + + LAMBDAASSIGNMENT shift 290 + . error + + lambdaassignmentoperator goto 291 + + +state 185 + primarynonewarray : literal . (241) + + . reduce 241 + + +state 186 + primary : primarynonewarray . (238) + + . reduce 238 + + +187: shift/reduce conflict (shift 292, reduce 234) on '.' +state 187 + methodinvocation : primary . '.' IDENTIFIER '(' ')' (223) + methodinvocation : primary . '.' IDENTIFIER '(' argumentlist ')' (224) + postfixexpression : primary . (234) + + '.' shift 292 ABSTRACT reduce 234 BOOLEAN reduce 234 CHAR reduce 234 @@ -2161,18 +2688,12 @@ state 146 LOGICALAND reduce 234 INCREMENT reduce 234 DECREMENT reduce 234 - PLUSEQUAL reduce 209 - MINUSEQUAL reduce 209 - TIMESEQUAL reduce 209 - DIVIDEEQUAL reduce 209 - MODULOEQUAL reduce 209 ',' reduce 234 ';' reduce 234 '*' reduce 234 '<' reduce 234 '>' reduce 234 '}' reduce 234 - '=' reduce 209 ')' reduce 234 '&' reduce 234 '+' reduce 234 @@ -2183,3335 +2704,481 @@ state 146 '%' reduce 234 -state 147 - localvariabledeclaration : type . variabledeclarators (164) +state 188 + postincrementexpression : postfixexpression . INCREMENT (219) + postdecrementexpression : postfixexpression . DECREMENT (220) - IDENTIFIER shift 186 - . error - - variabledeclarators goto 253 - variabledeclarator goto 143 - variabledeclaratorid goto 55 - - -state 148 - statementwithouttrailingsubstatement : block . (166) - - . reduce 166 - - -state 149 - block : '{' blockstatements . '}' (86) - blockstatements : blockstatements . blockstatement (132) - - BOOLEAN shift 37 - CHAR shift 38 - FOR shift 123 - IF shift 124 - INT shift 39 - RETURN shift 125 - THIS shift 126 - WHILE shift 127 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 136 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '}' shift 254 - '(' shift 141 - . error - - variabledeclarators goto 142 - variabledeclarator goto 143 - variabledeclaratorid goto 55 - simplename goto 144 - qualifiedname goto 145 - name goto 146 - classorinterfacetype goto 57 - integraltype goto 58 - numerictype goto 59 - primitivetype goto 60 - referencetype goto 61 - type goto 147 - block goto 148 - localvariabledeclarationstatement goto 150 - localvariabledeclaration goto 151 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 164 - blockstatement goto 255 - statement goto 166 - whilestatement goto 167 - forstatement goto 168 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 - - -state 150 - blockstatement : localvariabledeclarationstatement . (145) - - . reduce 145 - - -state 151 - localvariabledeclarationstatement : localvariabledeclaration . ';' (154) - - ';' shift 256 + INCREMENT shift 293 + DECREMENT shift 294 . error -state 152 - lambdaexpression : lambdaexpressionparameter . lambdaassignmentoperator lambdabody (208) +state 189 + primarynonewarray : lambdaexpression . (244) - LAMBDAASSIGNMENT shift 257 - . error - - lambdaassignmentoperator goto 258 + . reduce 244 -state 153 - primarynonewarray : literal . (240) +state 190 + expressionstatement : statementexpression . ';' (185) - . reduce 240 - - -state 154 - primary : primarynonewarray . (237) - - . reduce 237 - - -155: shift/reduce conflict (shift 259, reduce 233) on '.' -state 155 - methodinvocation : primary . '.' IDENTIFIER '(' ')' (222) - methodinvocation : primary . '.' IDENTIFIER '(' argumentlist ')' (223) - postfixexpression : primary . (233) - - '.' shift 259 - ABSTRACT reduce 233 - BOOLEAN reduce 233 - CHAR reduce 233 - FINAL reduce 233 - INSTANCEOF reduce 233 - INT reduce 233 - PRIVATE reduce 233 - PROTECTED reduce 233 - PUBLIC reduce 233 - STATIC reduce 233 - VOID reduce 233 - IDENTIFIER reduce 233 - EQUAL reduce 233 - LESSEQUAL reduce 233 - GREATEREQUAL reduce 233 - NOTEQUAL reduce 233 - LOGICALOR reduce 233 - LOGICALAND reduce 233 - INCREMENT reduce 233 - DECREMENT reduce 233 - ',' reduce 233 - ';' reduce 233 - '*' reduce 233 - '<' reduce 233 - '>' reduce 233 - '}' reduce 233 - ')' reduce 233 - '&' reduce 233 - '+' reduce 233 - '-' reduce 233 - '|' reduce 233 - '^' reduce 233 - '/' reduce 233 - '%' reduce 233 - - -state 156 - postincrementexpression : postfixexpression . INCREMENT (218) - postdecrementexpression : postfixexpression . DECREMENT (219) - - INCREMENT shift 260 - DECREMENT shift 261 + ';' shift 295 . error -state 157 - primarynonewarray : lambdaexpression . (243) - - . reduce 243 - - -state 158 - expressionstatement : statementexpression . ';' (184) - - ';' shift 262 - . error - - -state 159 - statementexpression : preincrementexpression . (194) - - . reduce 194 - - -state 160 - statementexpression : predecrementexpression . (195) +state 191 + statementexpression : preincrementexpression . (195) . reduce 195 -state 161 - statementexpression : postincrementexpression . (196) - postfixexpression : postincrementexpression . (235) +state 192 + statementexpression : predecrementexpression . (196) - INCREMENT reduce 235 - DECREMENT reduce 235 - ';' reduce 196 + . reduce 196 -state 162 - statementexpression : postdecrementexpression . (197) - postfixexpression : postdecrementexpression . (236) +state 193 + statementexpression : postincrementexpression . (197) + postfixexpression : postincrementexpression . (236) INCREMENT reduce 236 DECREMENT reduce 236 ';' reduce 197 -state 163 - statementwithouttrailingsubstatement : expressionstatement . (168) +state 194 + statementexpression : postdecrementexpression . (198) + postfixexpression : postdecrementexpression . (237) - . reduce 168 + INCREMENT reduce 237 + DECREMENT reduce 237 + ';' reduce 198 -state 164 - statement : statementwithouttrailingsubstatement . (155) - - . reduce 155 - - -state 165 - blockstatements : blockstatement . (131) - - . reduce 131 - - -state 166 - blockstatement : statement . (146) - - . reduce 146 - - -state 167 - statement : whilestatement . (158) - - . reduce 158 - - -state 168 - statement : forstatement . (159) - - . reduce 159 - - -state 169 - statement : ifthenstatement . (156) - - . reduce 156 - - -state 170 - statement : ifthenelsestatement . (157) - - . reduce 157 - - -state 171 - statementwithouttrailingsubstatement : emptystatement . (167) - - . reduce 167 - - -state 172 - statementwithouttrailingsubstatement : returnstatement . (169) +state 195 + statementwithouttrailingsubstatement : expressionstatement . (169) . reduce 169 -state 173 - statementexpression : assignment . (193) +state 196 + statement : statementwithouttrailingsubstatement . (156) - . reduce 193 + . reduce 156 -state 174 - assignment : lefthandside . assignmentoperator assignmentexpression (191) - assignment : lefthandside . assignmentoperator classinstancecreationexpression (192) +state 197 + blockstatements : blockstatement . (132) - PLUSEQUAL shift 263 - MINUSEQUAL shift 264 - TIMESEQUAL shift 265 - DIVIDEEQUAL shift 266 - MODULOEQUAL shift 267 - '=' shift 268 + . reduce 132 + + +state 198 + blockstatement : statement . (147) + + . reduce 147 + + +state 199 + statement : whilestatement . (159) + + . reduce 159 + + +state 200 + statement : forstatement . (160) + + . reduce 160 + + +state 201 + statement : ifthenstatement . (157) + + . reduce 157 + + +state 202 + statement : ifthenelsestatement . (158) + + . reduce 158 + + +state 203 + statementwithouttrailingsubstatement : emptystatement . (168) + + . reduce 168 + + +state 204 + statementwithouttrailingsubstatement : returnstatement . (170) + + . reduce 170 + + +state 205 + statementexpression : assignment . (194) + + . reduce 194 + + +state 206 + assignment : lefthandside . assignmentoperator assignmentexpression (192) + assignment : lefthandside . assignmentoperator classinstancecreationexpression (193) + + PLUSEQUAL shift 296 + MINUSEQUAL shift 297 + TIMESEQUAL shift 298 + DIVIDEEQUAL shift 299 + MODULOEQUAL shift 300 + '=' shift 301 . error - assignmentoperator goto 269 + assignmentoperator goto 302 -state 175 - statementexpression : methodinvocation . (198) - primarynonewarray : methodinvocation . (242) +state 207 + statementexpression : methodinvocation . (199) + primarynonewarray : methodinvocation . (243) - INCREMENT reduce 242 - DECREMENT reduce 242 - ';' reduce 198 - '.' reduce 242 + INCREMENT reduce 243 + DECREMENT reduce 243 + ';' reduce 199 + '.' reduce 243 -state 176 - methodheader : VOID methoddeclarator throws . (113) +state 208 + methodheader : VOID methoddeclarator throws . (114) - . reduce 113 + . reduce 114 -state 177 - methoddeclarator : IDENTIFIER '(' ')' . (139) +state 209 + methoddeclarator : IDENTIFIER '(' ')' . (140) - . reduce 139 + . reduce 140 -state 178 - formalparameter : variabledeclaratorid . (148) +state 210 + formalparameter : variabledeclaratorid . (149) - . reduce 148 + . reduce 149 -state 179 - formalparameter : type . variabledeclaratorid (147) +state 211 + formalparameter : type . variabledeclaratorid (148) - IDENTIFIER shift 186 + IDENTIFIER shift 218 . error - variabledeclaratorid goto 270 + variabledeclaratorid goto 303 -state 180 - formalparameterlist : formalparameter . (133) +state 212 + formalparameterlist : formalparameter . (134) - . reduce 133 + . reduce 134 -state 181 - formalparameterlist : formalparameterlist . ',' formalparameter (134) - methoddeclarator : IDENTIFIER '(' formalparameterlist . ')' (140) +state 213 + formalparameterlist : formalparameterlist . ',' formalparameter (135) + methoddeclarator : IDENTIFIER '(' formalparameterlist . ')' (141) - ',' shift 271 - ')' shift 272 + ',' shift 304 + ')' shift 305 . error -state 182 - boundedMethodParameters : boundedMethodParameters ',' . boundedMethodParameter (102) +state 214 + boundedMethodParameters : boundedMethodParameters ',' . boundedMethodParameter (103) - IDENTIFIER shift 27 + IDENTIFIER shift 38 . error - boundedMethodParameter goto 273 + boundedMethodParameter goto 306 -state 183 - methodheader : '<' boundedMethodParameters '>' . type methoddeclarator (103) - methodheader : '<' boundedMethodParameters '>' . type methoddeclarator throws (108) - methodheader : '<' boundedMethodParameters '>' . VOID methoddeclarator (115) - methodheader : '<' boundedMethodParameters '>' . VOID methoddeclarator throws (117) - methodheader : '<' boundedMethodParameters '>' . methoddeclarator (120) +state 215 + methodheader : '<' boundedMethodParameters '>' . type methoddeclarator (104) + methodheader : '<' boundedMethodParameters '>' . type methoddeclarator throws (109) + methodheader : '<' boundedMethodParameters '>' . VOID methoddeclarator (116) + methodheader : '<' boundedMethodParameters '>' . VOID methoddeclarator throws (118) + methodheader : '<' boundedMethodParameters '>' . methoddeclarator (121) - BOOLEAN shift 37 - CHAR shift 38 - INT shift 39 - VOID shift 274 - IDENTIFIER shift 104 + BOOLEAN shift 48 + CHAR shift 49 + INT shift 50 + VOID shift 307 + IDENTIFIER shift 84 . error - methoddeclarator goto 275 - simplename goto 32 - classorinterfacetype goto 57 - integraltype goto 58 - numerictype goto 59 - primitivetype goto 60 - referencetype goto 61 - type goto 276 + methoddeclarator goto 308 + simplename goto 43 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 + type goto 309 -state 184 - classtypelist : classtype . (137) +state 216 + classtypelist : classtype . (138) - . reduce 137 + . reduce 138 -state 185 - throws : THROWS classtypelist . (93) - classtypelist : classtypelist . ',' classtype (138) +state 217 + throws : THROWS classtypelist . (94) + classtypelist : classtypelist . ',' classtype (139) - ',' shift 277 - '{' reduce 93 + ',' shift 310 + ';' reduce 94 + '{' reduce 94 -state 186 - variabledeclaratorid : IDENTIFIER . (152) +state 218 + variabledeclaratorid : IDENTIFIER . (153) - . reduce 152 + . reduce 153 -state 187 - variabledeclarators : variabledeclarators ',' variabledeclarator . (129) +state 219 + variabledeclarators : variabledeclarators ',' variabledeclarator . (130) - . reduce 129 + . reduce 130 -state 188 - classinstancecreationexpression : NEW . classtype '(' ')' (224) - classinstancecreationexpression : NEW . classtype '(' argumentlist ')' (225) +state 220 + classinstancecreationexpression : NEW . classtype '(' ')' (225) + classinstancecreationexpression : NEW . classtype '(' argumentlist ')' (226) - IDENTIFIER shift 31 + IDENTIFIER shift 42 . error - simplename goto 32 - classtype goto 278 - classorinterfacetype goto 34 + simplename goto 43 + classtype goto 311 + classorinterfacetype goto 45 -state 189 - lambdaexpressionparameter : '(' . ')' (206) - lambdaexpressionparameter : '(' . formalparameterlist ')' (207) - castexpression : '(' . primitivetype ')' unaryexpression (257) +state 221 + lambdaexpressionparameter : '(' . ')' (207) + lambdaexpressionparameter : '(' . formalparameterlist ')' (208) + castexpression : '(' . primitivetype ')' unaryexpression (258) - BOOLEAN shift 37 - CHAR shift 38 - INT shift 39 - IDENTIFIER shift 136 - ')' shift 249 + BOOLEAN shift 48 + CHAR shift 49 + INT shift 50 + IDENTIFIER shift 168 + ')' shift 282 . error - variabledeclaratorid goto 178 - simplename goto 32 - classorinterfacetype goto 57 - integraltype goto 58 - numerictype goto 59 - primitivetype goto 279 - referencetype goto 61 - type goto 179 - formalparameter goto 180 - formalparameterlist goto 250 + variabledeclaratorid goto 210 + simplename goto 43 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 312 + referencetype goto 72 + type goto 211 + formalparameter goto 212 + formalparameterlist goto 283 -state 190 - unaryexpression : '+' . unaryexpression (230) +state 222 + unaryexpression : '+' . unaryexpression (231) - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 . error - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 280 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 313 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 -state 191 - unaryexpression : '-' . unaryexpression (231) +state 223 + unaryexpression : '-' . unaryexpression (232) - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 . error - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 281 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 314 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 -state 192 - unaryexpressionnotplusminus : '!' . unaryexpression (245) +state 224 + unaryexpressionnotplusminus : '!' . unaryexpression (246) - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 . error - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 282 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 315 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 -state 193 +state 225 name : simplename . (9) . reduce 9 -194: shift/reduce conflict (shift 260, reduce 244) on INCREMENT -194: shift/reduce conflict (shift 261, reduce 244) on DECREMENT -state 194 - postincrementexpression : postfixexpression . INCREMENT (218) - postdecrementexpression : postfixexpression . DECREMENT (219) - unaryexpressionnotplusminus : postfixexpression . (244) - - INCREMENT shift 260 - DECREMENT shift 261 - ABSTRACT reduce 244 - BOOLEAN reduce 244 - CHAR reduce 244 - FINAL reduce 244 - INSTANCEOF reduce 244 - INT reduce 244 - PRIVATE reduce 244 - PROTECTED reduce 244 - PUBLIC reduce 244 - STATIC reduce 244 - VOID reduce 244 - IDENTIFIER reduce 244 - EQUAL reduce 244 - LESSEQUAL reduce 244 - GREATEREQUAL reduce 244 - NOTEQUAL reduce 244 - LOGICALOR reduce 244 - LOGICALAND reduce 244 - ',' reduce 244 - ';' reduce 244 - '.' reduce 244 - '*' reduce 244 - '<' reduce 244 - '>' reduce 244 - '}' reduce 244 - ')' reduce 244 - '&' reduce 244 - '+' reduce 244 - '-' reduce 244 - '|' reduce 244 - '^' reduce 244 - '/' reduce 244 - '%' reduce 244 - - -state 195 - unaryexpression : unaryexpressionnotplusminus . (232) - - . reduce 232 - - -state 196 - multiplicativeexpression : unaryexpression . (273) - - . reduce 273 - - -197: shift/reduce conflict (shift 283, reduce 270) on '*' -197: shift/reduce conflict (shift 284, reduce 270) on '/' -197: shift/reduce conflict (shift 285, reduce 270) on '%' -state 197 - additiveexpression : multiplicativeexpression . (270) - multiplicativeexpression : multiplicativeexpression . '*' unaryexpression (274) - multiplicativeexpression : multiplicativeexpression . '/' unaryexpression (275) - multiplicativeexpression : multiplicativeexpression . '%' unaryexpression (276) - - '*' shift 283 - '/' shift 284 - '%' shift 285 - ABSTRACT reduce 270 - BOOLEAN reduce 270 - CHAR reduce 270 - FINAL reduce 270 - INSTANCEOF reduce 270 - INT reduce 270 - PRIVATE reduce 270 - PROTECTED reduce 270 - PUBLIC reduce 270 - STATIC reduce 270 - VOID reduce 270 - IDENTIFIER reduce 270 - EQUAL reduce 270 - LESSEQUAL reduce 270 - GREATEREQUAL reduce 270 - NOTEQUAL reduce 270 - LOGICALOR reduce 270 - LOGICALAND reduce 270 - INCREMENT reduce 270 - DECREMENT reduce 270 - ',' reduce 270 - ';' reduce 270 - '.' reduce 270 - '<' reduce 270 - '>' reduce 270 - '}' reduce 270 - ')' reduce 270 - '&' reduce 270 - '+' reduce 270 - '-' reduce 270 - '|' reduce 270 - '^' reduce 270 - - -198: shift/reduce conflict (shift 286, reduce 269) on '+' -198: shift/reduce conflict (shift 287, reduce 269) on '-' -state 198 - shiftexpression : additiveexpression . (269) - additiveexpression : additiveexpression . '+' multiplicativeexpression (271) - additiveexpression : additiveexpression . '-' multiplicativeexpression (272) - - '+' shift 286 - '-' shift 287 - ABSTRACT reduce 269 - BOOLEAN reduce 269 - CHAR reduce 269 - FINAL reduce 269 - INSTANCEOF reduce 269 - INT reduce 269 - PRIVATE reduce 269 - PROTECTED reduce 269 - PUBLIC reduce 269 - STATIC reduce 269 - VOID reduce 269 - IDENTIFIER reduce 269 - EQUAL reduce 269 - LESSEQUAL reduce 269 - GREATEREQUAL reduce 269 - NOTEQUAL reduce 269 - LOGICALOR reduce 269 - LOGICALAND reduce 269 - INCREMENT reduce 269 - DECREMENT reduce 269 - ',' reduce 269 - ';' reduce 269 - '.' reduce 269 - '*' reduce 269 - '<' reduce 269 - '>' reduce 269 - '}' reduce 269 - ')' reduce 269 - '&' reduce 269 - '|' reduce 269 - '^' reduce 269 - '/' reduce 269 - '%' reduce 269 - - -state 199 - relationalexpression : shiftexpression . (263) - - . reduce 263 - - -200: shift/reduce conflict (shift 288, reduce 260) on INSTANCEOF -200: shift/reduce conflict (shift 289, reduce 260) on LESSEQUAL -200: shift/reduce conflict (shift 290, reduce 260) on GREATEREQUAL -200: shift/reduce conflict (shift 291, reduce 260) on '<' -200: shift/reduce conflict (shift 292, reduce 260) on '>' -state 200 - equalityexpression : relationalexpression . (260) - relationalexpression : relationalexpression . '<' shiftexpression (264) - relationalexpression : relationalexpression . '>' shiftexpression (265) - relationalexpression : relationalexpression . LESSEQUAL shiftexpression (266) - relationalexpression : relationalexpression . GREATEREQUAL shiftexpression (267) - relationalexpression : relationalexpression . INSTANCEOF referencetype (268) - - INSTANCEOF shift 288 - LESSEQUAL shift 289 - GREATEREQUAL shift 290 - '<' shift 291 - '>' shift 292 - ABSTRACT reduce 260 - BOOLEAN reduce 260 - CHAR reduce 260 - FINAL reduce 260 - INT reduce 260 - PRIVATE reduce 260 - PROTECTED reduce 260 - PUBLIC reduce 260 - STATIC reduce 260 - VOID reduce 260 - IDENTIFIER reduce 260 - EQUAL reduce 260 - NOTEQUAL reduce 260 - LOGICALOR reduce 260 - LOGICALAND reduce 260 - INCREMENT reduce 260 - DECREMENT reduce 260 - ',' reduce 260 - ';' reduce 260 - '.' reduce 260 - '*' reduce 260 - '}' reduce 260 - ')' reduce 260 - '&' reduce 260 - '+' reduce 260 - '-' reduce 260 - '|' reduce 260 - '^' reduce 260 - '/' reduce 260 - '%' reduce 260 - - -201: shift/reduce conflict (shift 293, reduce 258) on EQUAL -201: shift/reduce conflict (shift 294, reduce 258) on NOTEQUAL -state 201 - andexpression : equalityexpression . (258) - equalityexpression : equalityexpression . EQUAL relationalexpression (261) - equalityexpression : equalityexpression . NOTEQUAL relationalexpression (262) - - EQUAL shift 293 - NOTEQUAL shift 294 - ABSTRACT reduce 258 - BOOLEAN reduce 258 - CHAR reduce 258 - FINAL reduce 258 - INSTANCEOF reduce 258 - INT reduce 258 - PRIVATE reduce 258 - PROTECTED reduce 258 - PUBLIC reduce 258 - STATIC reduce 258 - VOID reduce 258 - IDENTIFIER reduce 258 - LESSEQUAL reduce 258 - GREATEREQUAL reduce 258 - LOGICALOR reduce 258 - LOGICALAND reduce 258 - INCREMENT reduce 258 - DECREMENT reduce 258 - ',' reduce 258 - ';' reduce 258 - '.' reduce 258 - '*' reduce 258 - '<' reduce 258 - '>' reduce 258 - '}' reduce 258 - ')' reduce 258 - '&' reduce 258 - '+' reduce 258 - '-' reduce 258 - '|' reduce 258 - '^' reduce 258 - '/' reduce 258 - '%' reduce 258 - - -202: shift/reduce conflict (shift 295, reduce 247) on '&' -state 202 - exclusiveorexpression : andexpression . (247) - andexpression : andexpression . '&' equalityexpression (259) - - '&' shift 295 - ABSTRACT reduce 247 - BOOLEAN reduce 247 - CHAR reduce 247 - FINAL reduce 247 - INSTANCEOF reduce 247 - INT reduce 247 - PRIVATE reduce 247 - PROTECTED reduce 247 - PUBLIC reduce 247 - STATIC reduce 247 - VOID reduce 247 - IDENTIFIER reduce 247 - EQUAL reduce 247 - LESSEQUAL reduce 247 - GREATEREQUAL reduce 247 - NOTEQUAL reduce 247 - LOGICALOR reduce 247 - LOGICALAND reduce 247 - INCREMENT reduce 247 - DECREMENT reduce 247 - ',' reduce 247 - ';' reduce 247 - '.' reduce 247 - '*' reduce 247 - '<' reduce 247 - '>' reduce 247 - '}' reduce 247 - ')' reduce 247 - '+' reduce 247 - '-' reduce 247 - '|' reduce 247 - '^' reduce 247 - '/' reduce 247 - '%' reduce 247 - - -203: shift/reduce conflict (shift 296, reduce 238) on '^' -state 203 - inclusiveorexpression : exclusiveorexpression . (238) - exclusiveorexpression : exclusiveorexpression . '^' andexpression (248) - - '^' shift 296 - ABSTRACT reduce 238 - BOOLEAN reduce 238 - CHAR reduce 238 - FINAL reduce 238 - INSTANCEOF reduce 238 - INT reduce 238 - PRIVATE reduce 238 - PROTECTED reduce 238 - PUBLIC reduce 238 - STATIC reduce 238 - VOID reduce 238 - IDENTIFIER reduce 238 - EQUAL reduce 238 - LESSEQUAL reduce 238 - GREATEREQUAL reduce 238 - NOTEQUAL reduce 238 - LOGICALOR reduce 238 - LOGICALAND reduce 238 - INCREMENT reduce 238 - DECREMENT reduce 238 - ',' reduce 238 - ';' reduce 238 - '.' reduce 238 - '*' reduce 238 - '<' reduce 238 - '>' reduce 238 - '}' reduce 238 - ')' reduce 238 - '&' reduce 238 - '+' reduce 238 - '-' reduce 238 - '|' reduce 238 - '/' reduce 238 - '%' reduce 238 - - -204: shift/reduce conflict (shift 297, reduce 226) on '|' -state 204 - conditionalandexpression : inclusiveorexpression . (226) - inclusiveorexpression : inclusiveorexpression . '|' exclusiveorexpression (239) - - '|' shift 297 - ABSTRACT reduce 226 - BOOLEAN reduce 226 - CHAR reduce 226 - FINAL reduce 226 - INSTANCEOF reduce 226 - INT reduce 226 - PRIVATE reduce 226 - PROTECTED reduce 226 - PUBLIC reduce 226 - STATIC reduce 226 - VOID reduce 226 - IDENTIFIER reduce 226 - EQUAL reduce 226 - LESSEQUAL reduce 226 - GREATEREQUAL reduce 226 - NOTEQUAL reduce 226 - LOGICALOR reduce 226 - LOGICALAND reduce 226 - INCREMENT reduce 226 - DECREMENT reduce 226 - ',' reduce 226 - ';' reduce 226 - '.' reduce 226 - '*' reduce 226 - '<' reduce 226 - '>' reduce 226 - '}' reduce 226 - ')' reduce 226 - '&' reduce 226 - '+' reduce 226 - '-' reduce 226 - '^' reduce 226 - '/' reduce 226 - '%' reduce 226 - - -205: shift/reduce conflict (shift 298, reduce 201) on LOGICALAND -state 205 - conditionalorexpression : conditionalandexpression . (201) - conditionalandexpression : conditionalandexpression . LOGICALAND inclusiveorexpression (227) - - LOGICALAND shift 298 - ABSTRACT reduce 201 - BOOLEAN reduce 201 - CHAR reduce 201 - FINAL reduce 201 - INSTANCEOF reduce 201 - INT reduce 201 - PRIVATE reduce 201 - PROTECTED reduce 201 - PUBLIC reduce 201 - STATIC reduce 201 - VOID reduce 201 - IDENTIFIER reduce 201 - EQUAL reduce 201 - LESSEQUAL reduce 201 - GREATEREQUAL reduce 201 - NOTEQUAL reduce 201 - LOGICALOR reduce 201 - INCREMENT reduce 201 - DECREMENT reduce 201 - ',' reduce 201 - ';' reduce 201 - '.' reduce 201 - '*' reduce 201 - '<' reduce 201 - '>' reduce 201 - '}' reduce 201 - ')' reduce 201 - '&' reduce 201 - '+' reduce 201 - '-' reduce 201 - '|' reduce 201 - '^' reduce 201 - '/' reduce 201 - '%' reduce 201 - - -206: shift/reduce conflict (shift 299, reduce 190) on LOGICALOR -state 206 - conditionalexpression : conditionalorexpression . (190) - conditionalorexpression : conditionalorexpression . LOGICALOR conditionalandexpression (202) - - LOGICALOR shift 299 - ABSTRACT reduce 190 - BOOLEAN reduce 190 - CHAR reduce 190 - FINAL reduce 190 - INSTANCEOF reduce 190 - INT reduce 190 - PRIVATE reduce 190 - PROTECTED reduce 190 - PUBLIC reduce 190 - STATIC reduce 190 - VOID reduce 190 - IDENTIFIER reduce 190 - EQUAL reduce 190 - LESSEQUAL reduce 190 - GREATEREQUAL reduce 190 - NOTEQUAL reduce 190 - LOGICALAND reduce 190 - INCREMENT reduce 190 - DECREMENT reduce 190 - ',' reduce 190 - ';' reduce 190 - '.' reduce 190 - '*' reduce 190 - '<' reduce 190 - '>' reduce 190 - '}' reduce 190 - ')' reduce 190 - '&' reduce 190 - '+' reduce 190 - '-' reduce 190 - '|' reduce 190 - '^' reduce 190 - '/' reduce 190 - '%' reduce 190 - - -state 207 - assignmentexpression : conditionalexpression . (181) - - . reduce 181 - - -state 208 - expression : assignmentexpression . (160) - - . reduce 160 - - -state 209 - fielddeclarator : variabledeclarator '=' expression . (78) - - . reduce 78 - - -state 210 - unaryexpression : preincrementexpression . (228) - - . reduce 228 - - -state 211 - unaryexpression : predecrementexpression . (229) - - . reduce 229 - - -state 212 - postfixexpression : postincrementexpression . (235) - - . reduce 235 - - -state 213 - postfixexpression : postdecrementexpression . (236) - - . reduce 236 - - -state 214 - expression : classinstancecreationexpression . (161) - - . reduce 161 - - -state 215 - assignmentexpression : assignment . (182) - - . reduce 182 - - -state 216 - primarynonewarray : methodinvocation . (242) - - . reduce 242 - - -state 217 - unaryexpressionnotplusminus : castexpression . (246) - - . reduce 246 - - -state 218 - constructordeclarator : simplename '(' ')' . (87) - - . reduce 87 - - -state 219 - constructordeclarator : simplename '(' formalparameterlist . ')' (88) - formalparameterlist : formalparameterlist . ',' formalparameter (134) - - ',' shift 271 - ')' shift 300 - . error - - -state 220 - type : primitivetype '[' ']' . (125) - - . reduce 125 - - -state 221 - type : referencetype '[' ']' . (127) - - . reduce 127 - - -state 222 - methodheader : type methoddeclarator throws . (107) - - . reduce 107 - - -state 223 - fielddeclaration : type variabledeclarators ';' . (82) - - . reduce 82 - - -state 224 - methodheader : modifiers VOID methoddeclarator . (112) - methodheader : modifiers VOID methoddeclarator . throws (114) - - THROWS shift 88 - '{' reduce 112 - - throws goto 301 - - -state 225 - boundedMethodParameters : boundedMethodParameters . ',' boundedMethodParameter (102) - methodheader : modifiers '<' boundedMethodParameters . '>' type methoddeclarator (106) - methodheader : modifiers '<' boundedMethodParameters . '>' type methoddeclarator throws (110) - methodheader : modifiers '<' boundedMethodParameters . '>' VOID methoddeclarator (116) - methodheader : modifiers '<' boundedMethodParameters . '>' VOID methoddeclarator throws (118) - - ',' shift 182 - '>' shift 302 - . error - - +226: shift/reduce conflict (shift 293, reduce 245) on INCREMENT +226: shift/reduce conflict (shift 294, reduce 245) on DECREMENT state 226 - methodheader : modifiers methoddeclarator throws . (123) + postincrementexpression : postfixexpression . INCREMENT (219) + postdecrementexpression : postfixexpression . DECREMENT (220) + unaryexpressionnotplusminus : postfixexpression . (245) - . reduce 123 + INCREMENT shift 293 + DECREMENT shift 294 + ABSTRACT reduce 245 + BOOLEAN reduce 245 + CHAR reduce 245 + FINAL reduce 245 + INSTANCEOF reduce 245 + INT reduce 245 + PRIVATE reduce 245 + PROTECTED reduce 245 + PUBLIC reduce 245 + STATIC reduce 245 + VOID reduce 245 + IDENTIFIER reduce 245 + EQUAL reduce 245 + LESSEQUAL reduce 245 + GREATEREQUAL reduce 245 + NOTEQUAL reduce 245 + LOGICALOR reduce 245 + LOGICALAND reduce 245 + ',' reduce 245 + ';' reduce 245 + '.' reduce 245 + '*' reduce 245 + '<' reduce 245 + '>' reduce 245 + '}' reduce 245 + ')' reduce 245 + '&' reduce 245 + '+' reduce 245 + '-' reduce 245 + '|' reduce 245 + '^' reduce 245 + '/' reduce 245 + '%' reduce 245 state 227 - methodheader : modifiers type methoddeclarator . (105) - methodheader : modifiers type methoddeclarator . throws (109) + unaryexpression : unaryexpressionnotplusminus . (233) - THROWS shift 88 - '{' reduce 105 - - throws goto 303 + . reduce 233 state 228 - fielddeclaration : modifiers type variabledeclarators . ';' (83) - variabledeclarators : variabledeclarators . ',' variabledeclarator (129) - - ',' shift 92 - ';' shift 304 - . error - - -state 229 - constructordeclaration : modifiers constructordeclarator constructorbody . (75) - - . reduce 75 - - -state 230 - explicitconstructorinvocation : THIS . '(' ')' ';' (135) - explicitconstructorinvocation : THIS . '(' argumentlist ')' ';' (136) - primarynonewarray : THIS . (241) - - '(' shift 305 - INCREMENT reduce 241 - DECREMENT reduce 241 - '.' reduce 241 - - -state 231 - constructorbody : '{' '}' . (89) - - . reduce 89 - - -state 232 - constructorbody : '{' blockstatements . '}' (91) - blockstatements : blockstatements . blockstatement (132) - - BOOLEAN shift 37 - CHAR shift 38 - FOR shift 123 - IF shift 124 - INT shift 39 - RETURN shift 125 - THIS shift 126 - WHILE shift 127 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 136 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '}' shift 306 - '(' shift 141 - . error - - variabledeclarators goto 142 - variabledeclarator goto 143 - variabledeclaratorid goto 55 - simplename goto 144 - qualifiedname goto 145 - name goto 146 - classorinterfacetype goto 57 - integraltype goto 58 - numerictype goto 59 - primitivetype goto 60 - referencetype goto 61 - type goto 147 - block goto 148 - localvariabledeclarationstatement goto 150 - localvariabledeclaration goto 151 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 164 - blockstatement goto 255 - statement goto 166 - whilestatement goto 167 - forstatement goto 168 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 - - -state 233 - constructorbody : '{' explicitconstructorinvocation . '}' (90) - constructorbody : '{' explicitconstructorinvocation . blockstatements '}' (92) - - BOOLEAN shift 37 - CHAR shift 38 - FOR shift 123 - IF shift 124 - INT shift 39 - RETURN shift 125 - THIS shift 126 - WHILE shift 127 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 136 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '}' shift 307 - '(' shift 141 - . error - - variabledeclarators goto 142 - variabledeclarator goto 143 - variabledeclaratorid goto 55 - simplename goto 144 - qualifiedname goto 145 - name goto 146 - classorinterfacetype goto 57 - integraltype goto 58 - numerictype goto 59 - primitivetype goto 60 - referencetype goto 61 - type goto 147 - block goto 148 - blockstatements goto 308 - localvariabledeclarationstatement goto 150 - localvariabledeclaration goto 151 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 164 - blockstatement goto 165 - statement goto 166 - whilestatement goto 167 - forstatement goto 168 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 - - -state 234 - classdeclaration : modifiers CLASS classidentifier super interfaces classbody . (22) - - . reduce 22 - - -state 235 - boundedclassidentifierlist : boundedclassidentifierlist '&' . referencetype (100) - - IDENTIFIER shift 31 - . error - - simplename goto 32 - classorinterfacetype goto 57 - referencetype goto 309 - - -state 236 - paralist : IDENTIFIER '<' . paralist '>' (32) - - IDENTIFIER shift 119 - '?' shift 120 - . error - - paralist goto 310 - wildcardparameter goto 122 - - -state 237 - wildcardparameter : '?' EXTENDS . referencetype (38) - - IDENTIFIER shift 31 - . error - - simplename goto 32 - classorinterfacetype goto 57 - referencetype goto 311 - - -state 238 - wildcardparameter : '?' SUPER . referencetype (39) - - IDENTIFIER shift 31 - . error - - simplename goto 32 - classorinterfacetype goto 57 - referencetype goto 312 - - -state 239 - paralist : paralist ',' . IDENTIFIER (34) - paralist : paralist ',' . IDENTIFIER '<' paralist '>' (35) - paralist : paralist ',' . wildcardparameter (36) - - IDENTIFIER shift 313 - '?' shift 120 - . error - - wildcardparameter goto 314 - - -state 240 - parameter : '<' paralist '>' . (68) - - . reduce 68 - - -state 241 - forstatement : FOR '(' . expression ';' expression ';' expression ')' statement (173) - forstatement : FOR '(' . expression ';' expression ';' ')' statement (174) - forstatement : FOR '(' . expression ';' ';' expression ')' statement (175) - forstatement : FOR '(' . ';' expression ';' expression ')' statement (176) - forstatement : FOR '(' . expression ';' ';' ')' statement (177) - forstatement : FOR '(' . ';' expression ';' ')' statement (178) - forstatement : FOR '(' . ';' ';' expression ')' statement (179) - forstatement : FOR '(' . ';' ';' ')' statement (180) - - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 315 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 316 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - methodinvocation goto 216 - castexpression goto 217 - - -state 242 - ifthenstatement : IF '(' . expression ')' statement (170) - ifthenelsestatement : IF '(' . expression ')' statementnoshortif ELSE statement (171) - - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 317 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - methodinvocation goto 216 - castexpression goto 217 - - -state 243 - returnstatement : RETURN ';' . (185) - - . reduce 185 - - -state 244 - returnstatement : RETURN expression . ';' (186) - - ';' shift 318 - . error - - -state 245 - whilestatement : WHILE '(' . expression ')' statement (172) - - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 319 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - methodinvocation goto 216 - castexpression goto 217 - - -246: shift/reduce conflict (shift 251, reduce 234) on '.' -state 246 - qualifiedname : name . '.' IDENTIFIER (11) - methodinvocation : name . '(' ')' (220) - methodinvocation : name . '(' argumentlist ')' (221) - postfixexpression : name . (234) - - '.' shift 251 - '(' shift 252 - ABSTRACT reduce 234 - BOOLEAN reduce 234 - CHAR reduce 234 - FINAL reduce 234 - INSTANCEOF reduce 234 - INT reduce 234 - PRIVATE reduce 234 - PROTECTED reduce 234 - PUBLIC reduce 234 - STATIC reduce 234 - VOID reduce 234 - IDENTIFIER reduce 234 - EQUAL reduce 234 - LESSEQUAL reduce 234 - GREATEREQUAL reduce 234 - NOTEQUAL reduce 234 - LOGICALOR reduce 234 - LOGICALAND reduce 234 - INCREMENT reduce 234 - DECREMENT reduce 234 - ',' reduce 234 - ';' reduce 234 - '*' reduce 234 - '<' reduce 234 - '>' reduce 234 - '}' reduce 234 - ')' reduce 234 - '&' reduce 234 - '+' reduce 234 - '-' reduce 234 - '|' reduce 234 - '^' reduce 234 - '/' reduce 234 - '%' reduce 234 - - -state 247 - preincrementexpression : INCREMENT unaryexpression . (216) - - . reduce 216 - - -state 248 - predecrementexpression : DECREMENT unaryexpression . (217) - - . reduce 217 - - -state 249 - lambdaexpressionparameter : '(' ')' . (206) - - . reduce 206 - - -state 250 - formalparameterlist : formalparameterlist . ',' formalparameter (134) - lambdaexpressionparameter : '(' formalparameterlist . ')' (207) - - ',' shift 271 - ')' shift 320 - . error - - -state 251 - qualifiedname : name '.' . IDENTIFIER (11) - - IDENTIFIER shift 321 - . error - - -state 252 - methodinvocation : name '(' . ')' (220) - methodinvocation : name '(' . argumentlist ')' (221) - - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - ')' shift 322 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 323 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - argumentlist goto 324 - methodinvocation goto 216 - castexpression goto 217 - - -state 253 - variabledeclarators : variabledeclarators . ',' variabledeclarator (129) - localvariabledeclaration : type variabledeclarators . (164) - - ',' shift 92 - ';' reduce 164 - - -state 254 - block : '{' blockstatements '}' . (86) - - . reduce 86 - - -state 255 - blockstatements : blockstatements blockstatement . (132) - - . reduce 132 - - -state 256 - localvariabledeclarationstatement : localvariabledeclaration ';' . (154) - - . reduce 154 - - -state 257 - lambdaassignmentoperator : LAMBDAASSIGNMENT . (203) - - . reduce 203 - - -state 258 - lambdaexpression : lambdaexpressionparameter lambdaassignmentoperator . lambdabody (208) - - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '{' shift 79 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - block goto 325 - lambdabody goto 326 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 327 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - methodinvocation goto 216 - castexpression goto 217 - - -state 259 - methodinvocation : primary '.' . IDENTIFIER '(' ')' (222) - methodinvocation : primary '.' . IDENTIFIER '(' argumentlist ')' (223) - - IDENTIFIER shift 328 - . error - - -state 260 - postincrementexpression : postfixexpression INCREMENT . (218) - - . reduce 218 - - -state 261 - postdecrementexpression : postfixexpression DECREMENT . (219) - - . reduce 219 - - -state 262 - expressionstatement : statementexpression ';' . (184) - - . reduce 184 - - -state 263 - assignmentoperator : PLUSEQUAL . (214) - - . reduce 214 - - -state 264 - assignmentoperator : MINUSEQUAL . (215) - - . reduce 215 - - -state 265 - assignmentoperator : TIMESEQUAL . (211) - - . reduce 211 - - -state 266 - assignmentoperator : DIVIDEEQUAL . (212) - - . reduce 212 - - -state 267 - assignmentoperator : MODULOEQUAL . (213) - - . reduce 213 - - -state 268 - assignmentoperator : '=' . (210) - - . reduce 210 - - -state 269 - assignment : lefthandside assignmentoperator . assignmentexpression (191) - assignment : lefthandside assignmentoperator . classinstancecreationexpression (192) - - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 329 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 330 - assignment goto 215 - lefthandside goto 174 - methodinvocation goto 216 - castexpression goto 217 - - -state 270 - formalparameter : type variabledeclaratorid . (147) - - . reduce 147 - - -state 271 - formalparameterlist : formalparameterlist ',' . formalparameter (134) - - BOOLEAN shift 37 - CHAR shift 38 - INT shift 39 - IDENTIFIER shift 136 - . error - - variabledeclaratorid goto 178 - simplename goto 32 - classorinterfacetype goto 57 - integraltype goto 58 - numerictype goto 59 - primitivetype goto 60 - referencetype goto 61 - type goto 179 - formalparameter goto 331 - - -state 272 - methoddeclarator : IDENTIFIER '(' formalparameterlist ')' . (140) - - . reduce 140 - - -state 273 - boundedMethodParameters : boundedMethodParameters ',' boundedMethodParameter . (102) - - . reduce 102 - - -state 274 - methodheader : '<' boundedMethodParameters '>' VOID . methoddeclarator (115) - methodheader : '<' boundedMethodParameters '>' VOID . methoddeclarator throws (117) - - IDENTIFIER shift 81 - . error - - methoddeclarator goto 332 - - -state 275 - methodheader : '<' boundedMethodParameters '>' methoddeclarator . (120) - - . reduce 120 - - -state 276 - methodheader : '<' boundedMethodParameters '>' type . methoddeclarator (103) - methodheader : '<' boundedMethodParameters '>' type . methoddeclarator throws (108) - - IDENTIFIER shift 81 - . error - - methoddeclarator goto 333 - - -state 277 - classtypelist : classtypelist ',' . classtype (138) - - IDENTIFIER shift 31 - . error - - simplename goto 32 - classtype goto 334 - classorinterfacetype goto 34 - - -state 278 - classinstancecreationexpression : NEW classtype . '(' ')' (224) - classinstancecreationexpression : NEW classtype . '(' argumentlist ')' (225) - - '(' shift 335 - . error - - -state 279 - type : primitivetype . (124) - type : primitivetype . '[' ']' (125) - castexpression : '(' primitivetype . ')' unaryexpression (257) - - ')' shift 336 - '[' shift 97 - IDENTIFIER reduce 124 - - -state 280 - unaryexpression : '+' unaryexpression . (230) - - . reduce 230 - - -state 281 - unaryexpression : '-' unaryexpression . (231) - - . reduce 231 - - -state 282 - unaryexpressionnotplusminus : '!' unaryexpression . (245) - - . reduce 245 - - -state 283 - multiplicativeexpression : multiplicativeexpression '*' . unaryexpression (274) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 337 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 - - -state 284 - multiplicativeexpression : multiplicativeexpression '/' . unaryexpression (275) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 338 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 - - -state 285 - multiplicativeexpression : multiplicativeexpression '%' . unaryexpression (276) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 339 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 - - -state 286 - additiveexpression : additiveexpression '+' . multiplicativeexpression (271) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 340 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 - - -state 287 - additiveexpression : additiveexpression '-' . multiplicativeexpression (272) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 341 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 - - -state 288 - relationalexpression : relationalexpression INSTANCEOF . referencetype (268) - - IDENTIFIER shift 31 - . error - - simplename goto 32 - classorinterfacetype goto 57 - referencetype goto 342 - - -state 289 - relationalexpression : relationalexpression LESSEQUAL . shiftexpression (266) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 343 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 - - -state 290 - relationalexpression : relationalexpression GREATEREQUAL . shiftexpression (267) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 344 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 - - -state 291 - relationalexpression : relationalexpression '<' . shiftexpression (264) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 345 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 - - -state 292 - relationalexpression : relationalexpression '>' . shiftexpression (265) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 346 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 - - -state 293 - equalityexpression : equalityexpression EQUAL . relationalexpression (261) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 347 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 - - -state 294 - equalityexpression : equalityexpression NOTEQUAL . relationalexpression (262) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 348 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 - - -state 295 - andexpression : andexpression '&' . equalityexpression (259) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 349 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 - - -state 296 - exclusiveorexpression : exclusiveorexpression '^' . andexpression (248) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 350 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 - - -state 297 - inclusiveorexpression : inclusiveorexpression '|' . exclusiveorexpression (239) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 351 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 - - -state 298 - conditionalandexpression : conditionalandexpression LOGICALAND . inclusiveorexpression (227) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 352 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 - - -state 299 - conditionalorexpression : conditionalorexpression LOGICALOR . conditionalandexpression (202) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 353 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 - - -state 300 - constructordeclarator : simplename '(' formalparameterlist ')' . (88) - - . reduce 88 - - -state 301 - methodheader : modifiers VOID methoddeclarator throws . (114) - - . reduce 114 - - -state 302 - methodheader : modifiers '<' boundedMethodParameters '>' . type methoddeclarator (106) - methodheader : modifiers '<' boundedMethodParameters '>' . type methoddeclarator throws (110) - methodheader : modifiers '<' boundedMethodParameters '>' . VOID methoddeclarator (116) - methodheader : modifiers '<' boundedMethodParameters '>' . VOID methoddeclarator throws (118) - - BOOLEAN shift 37 - CHAR shift 38 - INT shift 39 - VOID shift 354 - IDENTIFIER shift 31 - . error - - simplename goto 32 - classorinterfacetype goto 57 - integraltype goto 58 - numerictype goto 59 - primitivetype goto 60 - referencetype goto 61 - type goto 355 - - -state 303 - methodheader : modifiers type methoddeclarator throws . (109) - - . reduce 109 - - -state 304 - fielddeclaration : modifiers type variabledeclarators ';' . (83) - - . reduce 83 - - -state 305 - explicitconstructorinvocation : THIS '(' . ')' ';' (135) - explicitconstructorinvocation : THIS '(' . argumentlist ')' ';' (136) - - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - ')' shift 356 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 323 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - argumentlist goto 357 - methodinvocation goto 216 - castexpression goto 217 - - -state 306 - constructorbody : '{' blockstatements '}' . (91) - - . reduce 91 - - -state 307 - constructorbody : '{' explicitconstructorinvocation '}' . (90) - - . reduce 90 - - -state 308 - constructorbody : '{' explicitconstructorinvocation blockstatements . '}' (92) - blockstatements : blockstatements . blockstatement (132) - - BOOLEAN shift 37 - CHAR shift 38 - FOR shift 123 - IF shift 124 - INT shift 39 - RETURN shift 125 - THIS shift 126 - WHILE shift 127 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 136 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '}' shift 358 - '(' shift 141 - . error - - variabledeclarators goto 142 - variabledeclarator goto 143 - variabledeclaratorid goto 55 - simplename goto 144 - qualifiedname goto 145 - name goto 146 - classorinterfacetype goto 57 - integraltype goto 58 - numerictype goto 59 - primitivetype goto 60 - referencetype goto 61 - type goto 147 - block goto 148 - localvariabledeclarationstatement goto 150 - localvariabledeclaration goto 151 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 164 - blockstatement goto 255 - statement goto 166 - whilestatement goto 167 - forstatement goto 168 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 - - -state 309 - boundedclassidentifierlist : boundedclassidentifierlist '&' referencetype . (100) - - . reduce 100 - - -state 310 - paralist : IDENTIFIER '<' paralist . '>' (32) - paralist : paralist . ',' IDENTIFIER (34) - paralist : paralist . ',' IDENTIFIER '<' paralist '>' (35) - paralist : paralist . ',' wildcardparameter (36) - - ',' shift 239 - '>' shift 359 - . error - - -state 311 - wildcardparameter : '?' EXTENDS referencetype . (38) - - . reduce 38 - - -state 312 - wildcardparameter : '?' SUPER referencetype . (39) - - . reduce 39 - - -state 313 - paralist : paralist ',' IDENTIFIER . (34) - paralist : paralist ',' IDENTIFIER . '<' paralist '>' (35) - - '<' shift 360 - ',' reduce 34 - '>' reduce 34 - - -state 314 - paralist : paralist ',' wildcardparameter . (36) - - . reduce 36 - - -state 315 - forstatement : FOR '(' ';' . expression ';' expression ')' statement (176) - forstatement : FOR '(' ';' . expression ';' ')' statement (178) - forstatement : FOR '(' ';' . ';' expression ')' statement (179) - forstatement : FOR '(' ';' . ';' ')' statement (180) - - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 361 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 362 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - methodinvocation goto 216 - castexpression goto 217 - - -state 316 - forstatement : FOR '(' expression . ';' expression ';' expression ')' statement (173) - forstatement : FOR '(' expression . ';' expression ';' ')' statement (174) - forstatement : FOR '(' expression . ';' ';' expression ')' statement (175) - forstatement : FOR '(' expression . ';' ';' ')' statement (177) - - ';' shift 363 - . error - - -state 317 - ifthenstatement : IF '(' expression . ')' statement (170) - ifthenelsestatement : IF '(' expression . ')' statementnoshortif ELSE statement (171) - - ')' shift 364 - . error - - -state 318 - returnstatement : RETURN expression ';' . (186) - - . reduce 186 - - -state 319 - whilestatement : WHILE '(' expression . ')' statement (172) - - ')' shift 365 - . error - - -state 320 - lambdaexpressionparameter : '(' formalparameterlist ')' . (207) - - . reduce 207 - - -state 321 - qualifiedname : name '.' IDENTIFIER . (11) - - . reduce 11 - - -state 322 - methodinvocation : name '(' ')' . (220) - - . reduce 220 - - -state 323 - argumentlist : expression . (149) - - . reduce 149 - - -state 324 - argumentlist : argumentlist . ',' expression (150) - methodinvocation : name '(' argumentlist . ')' (221) - - ',' shift 366 - ')' shift 367 - . error - - -state 325 - lambdabody : block . (204) - - . reduce 204 - - -state 326 - lambdaexpression : lambdaexpressionparameter lambdaassignmentoperator lambdabody . (208) - - . reduce 208 - - -state 327 - lambdabody : expression . (205) - - . reduce 205 - - -state 328 - methodinvocation : primary '.' IDENTIFIER . '(' ')' (222) - methodinvocation : primary '.' IDENTIFIER . '(' argumentlist ')' (223) - - '(' shift 368 - . error - - -state 329 - assignment : lefthandside assignmentoperator assignmentexpression . (191) - - . reduce 191 - - -state 330 - assignment : lefthandside assignmentoperator classinstancecreationexpression . (192) - - . reduce 192 - - -state 331 - formalparameterlist : formalparameterlist ',' formalparameter . (134) - - . reduce 134 - - -state 332 - methodheader : '<' boundedMethodParameters '>' VOID methoddeclarator . (115) - methodheader : '<' boundedMethodParameters '>' VOID methoddeclarator . throws (117) - - THROWS shift 88 - '{' reduce 115 - - throws goto 369 - - -state 333 - methodheader : '<' boundedMethodParameters '>' type methoddeclarator . (103) - methodheader : '<' boundedMethodParameters '>' type methoddeclarator . throws (108) - - THROWS shift 88 - '{' reduce 103 - - throws goto 370 - - -state 334 - classtypelist : classtypelist ',' classtype . (138) - - . reduce 138 - - -state 335 - classinstancecreationexpression : NEW classtype '(' . ')' (224) - classinstancecreationexpression : NEW classtype '(' . argumentlist ')' (225) - - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - ')' shift 371 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 323 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - argumentlist goto 372 - methodinvocation goto 216 - castexpression goto 217 - - -state 336 - castexpression : '(' primitivetype ')' . unaryexpression (257) - - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 246 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 373 - lambdaexpression goto 157 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - methodinvocation goto 216 - castexpression goto 217 - - -state 337 - multiplicativeexpression : multiplicativeexpression '*' unaryexpression . (274) + multiplicativeexpression : unaryexpression . (274) . reduce 274 -state 338 - multiplicativeexpression : multiplicativeexpression '/' unaryexpression . (275) +229: shift/reduce conflict (shift 316, reduce 271) on '*' +229: shift/reduce conflict (shift 317, reduce 271) on '/' +229: shift/reduce conflict (shift 318, reduce 271) on '%' +state 229 + additiveexpression : multiplicativeexpression . (271) + multiplicativeexpression : multiplicativeexpression . '*' unaryexpression (275) + multiplicativeexpression : multiplicativeexpression . '/' unaryexpression (276) + multiplicativeexpression : multiplicativeexpression . '%' unaryexpression (277) - . reduce 275 - - -state 339 - multiplicativeexpression : multiplicativeexpression '%' unaryexpression . (276) - - . reduce 276 - - -340: shift/reduce conflict (shift 283, reduce 271) on '*' -340: shift/reduce conflict (shift 284, reduce 271) on '/' -340: shift/reduce conflict (shift 285, reduce 271) on '%' -state 340 - additiveexpression : additiveexpression '+' multiplicativeexpression . (271) - multiplicativeexpression : multiplicativeexpression . '*' unaryexpression (274) - multiplicativeexpression : multiplicativeexpression . '/' unaryexpression (275) - multiplicativeexpression : multiplicativeexpression . '%' unaryexpression (276) - - '*' shift 283 - '/' shift 284 - '%' shift 285 + '*' shift 316 + '/' shift 317 + '%' shift 318 ABSTRACT reduce 271 BOOLEAN reduce 271 CHAR reduce 271 @@ -5546,100 +3213,74 @@ state 340 '^' reduce 271 -341: shift/reduce conflict (shift 283, reduce 272) on '*' -341: shift/reduce conflict (shift 284, reduce 272) on '/' -341: shift/reduce conflict (shift 285, reduce 272) on '%' -state 341 - additiveexpression : additiveexpression '-' multiplicativeexpression . (272) - multiplicativeexpression : multiplicativeexpression . '*' unaryexpression (274) - multiplicativeexpression : multiplicativeexpression . '/' unaryexpression (275) - multiplicativeexpression : multiplicativeexpression . '%' unaryexpression (276) +230: shift/reduce conflict (shift 319, reduce 270) on '+' +230: shift/reduce conflict (shift 320, reduce 270) on '-' +state 230 + shiftexpression : additiveexpression . (270) + additiveexpression : additiveexpression . '+' multiplicativeexpression (272) + additiveexpression : additiveexpression . '-' multiplicativeexpression (273) - '*' shift 283 - '/' shift 284 - '%' shift 285 - ABSTRACT reduce 272 - BOOLEAN reduce 272 - CHAR reduce 272 - FINAL reduce 272 - INSTANCEOF reduce 272 - INT reduce 272 - PRIVATE reduce 272 - PROTECTED reduce 272 - PUBLIC reduce 272 - STATIC reduce 272 - VOID reduce 272 - IDENTIFIER reduce 272 - EQUAL reduce 272 - LESSEQUAL reduce 272 - GREATEREQUAL reduce 272 - NOTEQUAL reduce 272 - LOGICALOR reduce 272 - LOGICALAND reduce 272 - INCREMENT reduce 272 - DECREMENT reduce 272 - ',' reduce 272 - ';' reduce 272 - '.' reduce 272 - '<' reduce 272 - '>' reduce 272 - '}' reduce 272 - ')' reduce 272 - '&' reduce 272 - '+' reduce 272 - '-' reduce 272 - '|' reduce 272 - '^' reduce 272 + '+' shift 319 + '-' shift 320 + ABSTRACT reduce 270 + BOOLEAN reduce 270 + CHAR reduce 270 + FINAL reduce 270 + INSTANCEOF reduce 270 + INT reduce 270 + PRIVATE reduce 270 + PROTECTED reduce 270 + PUBLIC reduce 270 + STATIC reduce 270 + VOID reduce 270 + IDENTIFIER reduce 270 + EQUAL reduce 270 + LESSEQUAL reduce 270 + GREATEREQUAL reduce 270 + NOTEQUAL reduce 270 + LOGICALOR reduce 270 + LOGICALAND reduce 270 + INCREMENT reduce 270 + DECREMENT reduce 270 + ',' reduce 270 + ';' reduce 270 + '.' reduce 270 + '*' reduce 270 + '<' reduce 270 + '>' reduce 270 + '}' reduce 270 + ')' reduce 270 + '&' reduce 270 + '|' reduce 270 + '^' reduce 270 + '/' reduce 270 + '%' reduce 270 -state 342 - relationalexpression : relationalexpression INSTANCEOF referencetype . (268) - - . reduce 268 - - -state 343 - relationalexpression : relationalexpression LESSEQUAL shiftexpression . (266) - - . reduce 266 - - -state 344 - relationalexpression : relationalexpression GREATEREQUAL shiftexpression . (267) - - . reduce 267 - - -state 345 - relationalexpression : relationalexpression '<' shiftexpression . (264) +state 231 + relationalexpression : shiftexpression . (264) . reduce 264 -state 346 - relationalexpression : relationalexpression '>' shiftexpression . (265) +232: shift/reduce conflict (shift 321, reduce 261) on INSTANCEOF +232: shift/reduce conflict (shift 322, reduce 261) on LESSEQUAL +232: shift/reduce conflict (shift 323, reduce 261) on GREATEREQUAL +232: shift/reduce conflict (shift 324, reduce 261) on '<' +232: shift/reduce conflict (shift 325, reduce 261) on '>' +state 232 + equalityexpression : relationalexpression . (261) + relationalexpression : relationalexpression . '<' shiftexpression (265) + relationalexpression : relationalexpression . '>' shiftexpression (266) + relationalexpression : relationalexpression . LESSEQUAL shiftexpression (267) + relationalexpression : relationalexpression . GREATEREQUAL shiftexpression (268) + relationalexpression : relationalexpression . INSTANCEOF referencetype (269) - . reduce 265 - - -347: shift/reduce conflict (shift 288, reduce 261) on INSTANCEOF -347: shift/reduce conflict (shift 289, reduce 261) on LESSEQUAL -347: shift/reduce conflict (shift 290, reduce 261) on GREATEREQUAL -347: shift/reduce conflict (shift 291, reduce 261) on '<' -347: shift/reduce conflict (shift 292, reduce 261) on '>' -state 347 - equalityexpression : equalityexpression EQUAL relationalexpression . (261) - relationalexpression : relationalexpression . '<' shiftexpression (264) - relationalexpression : relationalexpression . '>' shiftexpression (265) - relationalexpression : relationalexpression . LESSEQUAL shiftexpression (266) - relationalexpression : relationalexpression . GREATEREQUAL shiftexpression (267) - relationalexpression : relationalexpression . INSTANCEOF referencetype (268) - - INSTANCEOF shift 288 - LESSEQUAL shift 289 - GREATEREQUAL shift 290 - '<' shift 291 - '>' shift 292 + INSTANCEOF shift 321 + LESSEQUAL shift 322 + GREATEREQUAL shift 323 + '<' shift 324 + '>' shift 325 ABSTRACT reduce 261 BOOLEAN reduce 261 CHAR reduce 261 @@ -5672,65 +3313,15 @@ state 347 '%' reduce 261 -348: shift/reduce conflict (shift 288, reduce 262) on INSTANCEOF -348: shift/reduce conflict (shift 289, reduce 262) on LESSEQUAL -348: shift/reduce conflict (shift 290, reduce 262) on GREATEREQUAL -348: shift/reduce conflict (shift 291, reduce 262) on '<' -348: shift/reduce conflict (shift 292, reduce 262) on '>' -state 348 - equalityexpression : equalityexpression NOTEQUAL relationalexpression . (262) - relationalexpression : relationalexpression . '<' shiftexpression (264) - relationalexpression : relationalexpression . '>' shiftexpression (265) - relationalexpression : relationalexpression . LESSEQUAL shiftexpression (266) - relationalexpression : relationalexpression . GREATEREQUAL shiftexpression (267) - relationalexpression : relationalexpression . INSTANCEOF referencetype (268) +233: shift/reduce conflict (shift 326, reduce 259) on EQUAL +233: shift/reduce conflict (shift 327, reduce 259) on NOTEQUAL +state 233 + andexpression : equalityexpression . (259) + equalityexpression : equalityexpression . EQUAL relationalexpression (262) + equalityexpression : equalityexpression . NOTEQUAL relationalexpression (263) - INSTANCEOF shift 288 - LESSEQUAL shift 289 - GREATEREQUAL shift 290 - '<' shift 291 - '>' shift 292 - ABSTRACT reduce 262 - BOOLEAN reduce 262 - CHAR reduce 262 - FINAL reduce 262 - INT reduce 262 - PRIVATE reduce 262 - PROTECTED reduce 262 - PUBLIC reduce 262 - STATIC reduce 262 - VOID reduce 262 - IDENTIFIER reduce 262 - EQUAL reduce 262 - NOTEQUAL reduce 262 - LOGICALOR reduce 262 - LOGICALAND reduce 262 - INCREMENT reduce 262 - DECREMENT reduce 262 - ',' reduce 262 - ';' reduce 262 - '.' reduce 262 - '*' reduce 262 - '}' reduce 262 - ')' reduce 262 - '&' reduce 262 - '+' reduce 262 - '-' reduce 262 - '|' reduce 262 - '^' reduce 262 - '/' reduce 262 - '%' reduce 262 - - -349: shift/reduce conflict (shift 293, reduce 259) on EQUAL -349: shift/reduce conflict (shift 294, reduce 259) on NOTEQUAL -state 349 - andexpression : andexpression '&' equalityexpression . (259) - equalityexpression : equalityexpression . EQUAL relationalexpression (261) - equalityexpression : equalityexpression . NOTEQUAL relationalexpression (262) - - EQUAL shift 293 - NOTEQUAL shift 294 + EQUAL shift 326 + NOTEQUAL shift 327 ABSTRACT reduce 259 BOOLEAN reduce 259 CHAR reduce 259 @@ -5766,12 +3357,12 @@ state 349 '%' reduce 259 -350: shift/reduce conflict (shift 295, reduce 248) on '&' -state 350 - exclusiveorexpression : exclusiveorexpression '^' andexpression . (248) - andexpression : andexpression . '&' equalityexpression (259) +234: shift/reduce conflict (shift 328, reduce 248) on '&' +state 234 + exclusiveorexpression : andexpression . (248) + andexpression : andexpression . '&' equalityexpression (260) - '&' shift 295 + '&' shift 328 ABSTRACT reduce 248 BOOLEAN reduce 248 CHAR reduce 248 @@ -5808,12 +3399,12 @@ state 350 '%' reduce 248 -351: shift/reduce conflict (shift 296, reduce 239) on '^' -state 351 - inclusiveorexpression : inclusiveorexpression '|' exclusiveorexpression . (239) - exclusiveorexpression : exclusiveorexpression . '^' andexpression (248) +235: shift/reduce conflict (shift 329, reduce 239) on '^' +state 235 + inclusiveorexpression : exclusiveorexpression . (239) + exclusiveorexpression : exclusiveorexpression . '^' andexpression (249) - '^' shift 296 + '^' shift 329 ABSTRACT reduce 239 BOOLEAN reduce 239 CHAR reduce 239 @@ -5850,12 +3441,12 @@ state 351 '%' reduce 239 -352: shift/reduce conflict (shift 297, reduce 227) on '|' -state 352 - conditionalandexpression : conditionalandexpression LOGICALAND inclusiveorexpression . (227) - inclusiveorexpression : inclusiveorexpression . '|' exclusiveorexpression (239) +236: shift/reduce conflict (shift 330, reduce 227) on '|' +state 236 + conditionalandexpression : inclusiveorexpression . (227) + inclusiveorexpression : inclusiveorexpression . '|' exclusiveorexpression (240) - '|' shift 297 + '|' shift 330 ABSTRACT reduce 227 BOOLEAN reduce 227 CHAR reduce 227 @@ -5892,12 +3483,12 @@ state 352 '%' reduce 227 -353: shift/reduce conflict (shift 298, reduce 202) on LOGICALAND -state 353 - conditionalorexpression : conditionalorexpression LOGICALOR conditionalandexpression . (202) - conditionalandexpression : conditionalandexpression . LOGICALAND inclusiveorexpression (227) +237: shift/reduce conflict (shift 331, reduce 202) on LOGICALAND +state 237 + conditionalorexpression : conditionalandexpression . (202) + conditionalandexpression : conditionalandexpression . LOGICALAND inclusiveorexpression (228) - LOGICALAND shift 298 + LOGICALAND shift 331 ABSTRACT reduce 202 BOOLEAN reduce 202 CHAR reduce 202 @@ -5934,1706 +3525,4559 @@ state 353 '%' reduce 202 -state 354 - methodheader : modifiers '<' boundedMethodParameters '>' VOID . methoddeclarator (116) - methodheader : modifiers '<' boundedMethodParameters '>' VOID . methoddeclarator throws (118) +238: shift/reduce conflict (shift 332, reduce 191) on LOGICALOR +state 238 + conditionalexpression : conditionalorexpression . (191) + conditionalorexpression : conditionalorexpression . LOGICALOR conditionalandexpression (203) - IDENTIFIER shift 81 - . error - - methoddeclarator goto 374 + LOGICALOR shift 332 + ABSTRACT reduce 191 + BOOLEAN reduce 191 + CHAR reduce 191 + FINAL reduce 191 + INSTANCEOF reduce 191 + INT reduce 191 + PRIVATE reduce 191 + PROTECTED reduce 191 + PUBLIC reduce 191 + STATIC reduce 191 + VOID reduce 191 + IDENTIFIER reduce 191 + EQUAL reduce 191 + LESSEQUAL reduce 191 + GREATEREQUAL reduce 191 + NOTEQUAL reduce 191 + LOGICALAND reduce 191 + INCREMENT reduce 191 + DECREMENT reduce 191 + ',' reduce 191 + ';' reduce 191 + '.' reduce 191 + '*' reduce 191 + '<' reduce 191 + '>' reduce 191 + '}' reduce 191 + ')' reduce 191 + '&' reduce 191 + '+' reduce 191 + '-' reduce 191 + '|' reduce 191 + '^' reduce 191 + '/' reduce 191 + '%' reduce 191 -state 355 - methodheader : modifiers '<' boundedMethodParameters '>' type . methoddeclarator (106) - methodheader : modifiers '<' boundedMethodParameters '>' type . methoddeclarator throws (110) +state 239 + assignmentexpression : conditionalexpression . (182) - IDENTIFIER shift 81 - . error - - methoddeclarator goto 375 + . reduce 182 -state 356 - explicitconstructorinvocation : THIS '(' ')' . ';' (135) +state 240 + expression : assignmentexpression . (161) - ';' shift 376 + . reduce 161 + + +state 241 + fielddeclarator : variabledeclarator '=' expression . (79) + + . reduce 79 + + +state 242 + unaryexpression : preincrementexpression . (229) + + . reduce 229 + + +state 243 + unaryexpression : predecrementexpression . (230) + + . reduce 230 + + +state 244 + postfixexpression : postincrementexpression . (236) + + . reduce 236 + + +state 245 + postfixexpression : postdecrementexpression . (237) + + . reduce 237 + + +state 246 + expression : classinstancecreationexpression . (162) + + . reduce 162 + + +state 247 + assignmentexpression : assignment . (183) + + . reduce 183 + + +state 248 + primarynonewarray : methodinvocation . (243) + + . reduce 243 + + +state 249 + unaryexpressionnotplusminus : castexpression . (247) + + . reduce 247 + + +state 250 + constructordeclarator : simplename '(' ')' . (88) + + . reduce 88 + + +state 251 + constructordeclarator : simplename '(' formalparameterlist . ')' (89) + formalparameterlist : formalparameterlist . ',' formalparameter (135) + + ',' shift 304 + ')' shift 333 . error -state 357 - explicitconstructorinvocation : THIS '(' argumentlist . ')' ';' (136) - argumentlist : argumentlist . ',' expression (150) +state 252 + type : primitivetype '[' ']' . (126) - ',' shift 366 - ')' shift 377 - . error + . reduce 126 -state 358 - constructorbody : '{' explicitconstructorinvocation blockstatements '}' . (92) +state 253 + type : referencetype '[' ']' . (128) - . reduce 92 + . reduce 128 -state 359 - paralist : IDENTIFIER '<' paralist '>' . (32) - - . reduce 32 - - -state 360 - paralist : paralist ',' IDENTIFIER '<' . paralist '>' (35) - - IDENTIFIER shift 119 - '?' shift 120 - . error - - paralist goto 378 - wildcardparameter goto 122 - - -state 361 - forstatement : FOR '(' ';' ';' . expression ')' statement (179) - forstatement : FOR '(' ';' ';' . ')' statement (180) - - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - ')' shift 379 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 380 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - methodinvocation goto 216 - castexpression goto 217 - - -state 362 - forstatement : FOR '(' ';' expression . ';' expression ')' statement (176) - forstatement : FOR '(' ';' expression . ';' ')' statement (178) - - ';' shift 381 - . error - - -state 363 - forstatement : FOR '(' expression ';' . expression ';' expression ')' statement (173) - forstatement : FOR '(' expression ';' . expression ';' ')' statement (174) - forstatement : FOR '(' expression ';' . ';' expression ')' statement (175) - forstatement : FOR '(' expression ';' . ';' ')' statement (177) - - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 382 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 383 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - methodinvocation goto 216 - castexpression goto 217 - - -state 364 - ifthenstatement : IF '(' expression ')' . statement (170) - ifthenelsestatement : IF '(' expression ')' . statementnoshortif ELSE statement (171) - - FOR shift 123 - IF shift 384 - RETURN shift 125 - THIS shift 126 - WHILE shift 385 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '(' shift 141 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - block goto 148 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 386 - statement goto 387 - statementnoshortif goto 388 - whilestatement goto 167 - forstatement goto 168 - whilestatementnoshortif goto 389 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - ifthenelsestatementnoshortif goto 390 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 - - -state 365 - whilestatement : WHILE '(' expression ')' . statement (172) - - FOR shift 123 - IF shift 124 - RETURN shift 125 - THIS shift 126 - WHILE shift 127 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '(' shift 141 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - block goto 148 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 164 - statement goto 391 - whilestatement goto 167 - forstatement goto 168 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 - - -state 366 - argumentlist : argumentlist ',' . expression (150) - - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 392 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - methodinvocation goto 216 - castexpression goto 217 - - -state 367 - methodinvocation : name '(' argumentlist ')' . (221) - - . reduce 221 - - -state 368 - methodinvocation : primary '.' IDENTIFIER '(' . ')' (222) - methodinvocation : primary '.' IDENTIFIER '(' . argumentlist ')' (223) - - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - ')' shift 393 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 323 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - argumentlist goto 394 - methodinvocation goto 216 - castexpression goto 217 - - -state 369 - methodheader : '<' boundedMethodParameters '>' VOID methoddeclarator throws . (117) - - . reduce 117 - - -state 370 - methodheader : '<' boundedMethodParameters '>' type methoddeclarator throws . (108) +state 254 + methodheader : type methoddeclarator throws . (108) . reduce 108 -state 371 - classinstancecreationexpression : NEW classtype '(' ')' . (224) +state 255 + fielddeclaration : type variabledeclarators ';' . (83) - . reduce 224 + . reduce 83 -state 372 - argumentlist : argumentlist . ',' expression (150) - classinstancecreationexpression : NEW classtype '(' argumentlist . ')' (225) +state 256 + methodheader : modifiers VOID methoddeclarator . (113) + methodheader : modifiers VOID methoddeclarator . throws (115) - ',' shift 366 - ')' shift 395 + THROWS shift 114 + ';' reduce 113 + '{' reduce 113 + + throws goto 334 + + +state 257 + boundedMethodParameters : boundedMethodParameters . ',' boundedMethodParameter (103) + methodheader : modifiers '<' boundedMethodParameters . '>' type methoddeclarator (107) + methodheader : modifiers '<' boundedMethodParameters . '>' type methoddeclarator throws (111) + methodheader : modifiers '<' boundedMethodParameters . '>' VOID methoddeclarator (117) + methodheader : modifiers '<' boundedMethodParameters . '>' VOID methoddeclarator throws (119) + + ',' shift 214 + '>' shift 335 . error -state 373 - castexpression : '(' primitivetype ')' unaryexpression . (257) +state 258 + methodheader : modifiers methoddeclarator throws . (124) - . reduce 257 + . reduce 124 -state 374 - methodheader : modifiers '<' boundedMethodParameters '>' VOID methoddeclarator . (116) - methodheader : modifiers '<' boundedMethodParameters '>' VOID methoddeclarator . throws (118) +state 259 + methodheader : modifiers type methoddeclarator . (106) + methodheader : modifiers type methoddeclarator . throws (110) - THROWS shift 88 - '{' reduce 116 - - throws goto 396 - - -state 375 - methodheader : modifiers '<' boundedMethodParameters '>' type methoddeclarator . (106) - methodheader : modifiers '<' boundedMethodParameters '>' type methoddeclarator . throws (110) - - THROWS shift 88 + THROWS shift 114 + ';' reduce 106 '{' reduce 106 - throws goto 397 + throws goto 336 -state 376 - explicitconstructorinvocation : THIS '(' ')' ';' . (135) +state 260 + fielddeclaration : modifiers type variabledeclarators . ';' (84) + variabledeclarators : variabledeclarators . ',' variabledeclarator (130) - . reduce 135 + ',' shift 118 + ';' shift 337 + . error -state 377 - explicitconstructorinvocation : THIS '(' argumentlist ')' . ';' (136) +state 261 + constructordeclaration : modifiers constructordeclarator constructorbody . (76) + + . reduce 76 + + +state 262 + explicitconstructorinvocation : THIS . '(' ')' ';' (136) + explicitconstructorinvocation : THIS . '(' argumentlist ')' ';' (137) + primarynonewarray : THIS . (242) + + '(' shift 338 + INCREMENT reduce 242 + DECREMENT reduce 242 + '.' reduce 242 + + +state 263 + constructorbody : '{' '}' . (90) + + . reduce 90 + + +state 264 + constructorbody : '{' blockstatements . '}' (92) + blockstatements : blockstatements . blockstatement (133) + + BOOLEAN shift 48 + CHAR shift 49 + FOR shift 155 + IF shift 156 + INT shift 50 + RETURN shift 157 + THIS shift 158 + WHILE shift 159 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 168 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '}' shift 339 + '(' shift 173 + . error + + variabledeclarators goto 174 + variabledeclarator goto 175 + variabledeclaratorid goto 66 + simplename goto 176 + qualifiedname goto 177 + name goto 178 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 + type goto 179 + block goto 180 + localvariabledeclarationstatement goto 182 + localvariabledeclaration goto 183 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 196 + blockstatement goto 288 + statement goto 198 + whilestatement goto 199 + forstatement goto 200 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 265 + constructorbody : '{' explicitconstructorinvocation . '}' (91) + constructorbody : '{' explicitconstructorinvocation . blockstatements '}' (93) + + BOOLEAN shift 48 + CHAR shift 49 + FOR shift 155 + IF shift 156 + INT shift 50 + RETURN shift 157 + THIS shift 158 + WHILE shift 159 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 168 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '}' shift 340 + '(' shift 173 + . error + + variabledeclarators goto 174 + variabledeclarator goto 175 + variabledeclaratorid goto 66 + simplename goto 176 + qualifiedname goto 177 + name goto 178 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 + type goto 179 + block goto 180 + blockstatements goto 341 + localvariabledeclarationstatement goto 182 + localvariabledeclaration goto 183 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 196 + blockstatement goto 197 + statement goto 198 + whilestatement goto 199 + forstatement goto 200 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 266 + constantdeclaration : modifiers type IDENTIFIER . '=' expression ';' (77) + methoddeclarator : IDENTIFIER . '(' ')' (140) + methoddeclarator : IDENTIFIER . '(' formalparameterlist ')' (141) + + '=' shift 342 + '(' shift 109 + . error + + +state 267 + classdeclaration : modifiers CLASS classidentifier super interfaces classbody . (23) + + . reduce 23 + + +state 268 + boundedclassidentifierlist : boundedclassidentifierlist '&' . referencetype (101) + + IDENTIFIER shift 42 + . error + + simplename goto 43 + classorinterfacetype goto 68 + referencetype goto 343 + + +state 269 + paralist : IDENTIFIER '<' . paralist '>' (33) + + IDENTIFIER shift 151 + '?' shift 152 + . error + + paralist goto 344 + wildcardparameter goto 154 + + +state 270 + wildcardparameter : '?' EXTENDS . referencetype (39) + + IDENTIFIER shift 42 + . error + + simplename goto 43 + classorinterfacetype goto 68 + referencetype goto 345 + + +state 271 + wildcardparameter : '?' SUPER . referencetype (40) + + IDENTIFIER shift 42 + . error + + simplename goto 43 + classorinterfacetype goto 68 + referencetype goto 346 + + +state 272 + paralist : paralist ',' . IDENTIFIER (35) + paralist : paralist ',' . IDENTIFIER '<' paralist '>' (36) + paralist : paralist ',' . wildcardparameter (37) + + IDENTIFIER shift 347 + '?' shift 152 + . error + + wildcardparameter goto 348 + + +state 273 + parameter : '<' paralist '>' . (69) + + . reduce 69 + + +state 274 + forstatement : FOR '(' . expression ';' expression ';' expression ')' statement (174) + forstatement : FOR '(' . expression ';' expression ';' ')' statement (175) + forstatement : FOR '(' . expression ';' ';' expression ')' statement (176) + forstatement : FOR '(' . ';' expression ';' expression ')' statement (177) + forstatement : FOR '(' . expression ';' ';' ')' statement (178) + forstatement : FOR '(' . ';' expression ';' ')' statement (179) + forstatement : FOR '(' . ';' ';' expression ')' statement (180) + forstatement : FOR '(' . ';' ';' ')' statement (181) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 349 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 350 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + methodinvocation goto 248 + castexpression goto 249 + + +state 275 + ifthenstatement : IF '(' . expression ')' statement (171) + ifthenelsestatement : IF '(' . expression ')' statementnoshortif ELSE statement (172) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 351 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + methodinvocation goto 248 + castexpression goto 249 + + +state 276 + returnstatement : RETURN ';' . (186) + + . reduce 186 + + +state 277 + returnstatement : RETURN expression . ';' (187) + + ';' shift 352 + . error + + +state 278 + whilestatement : WHILE '(' . expression ')' statement (173) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 353 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + methodinvocation goto 248 + castexpression goto 249 + + +279: shift/reduce conflict (shift 284, reduce 235) on '.' +state 279 + qualifiedname : name . '.' IDENTIFIER (12) + methodinvocation : name . '(' ')' (221) + methodinvocation : name . '(' argumentlist ')' (222) + postfixexpression : name . (235) + + '.' shift 284 + '(' shift 285 + ABSTRACT reduce 235 + BOOLEAN reduce 235 + CHAR reduce 235 + FINAL reduce 235 + INSTANCEOF reduce 235 + INT reduce 235 + PRIVATE reduce 235 + PROTECTED reduce 235 + PUBLIC reduce 235 + STATIC reduce 235 + VOID reduce 235 + IDENTIFIER reduce 235 + EQUAL reduce 235 + LESSEQUAL reduce 235 + GREATEREQUAL reduce 235 + NOTEQUAL reduce 235 + LOGICALOR reduce 235 + LOGICALAND reduce 235 + INCREMENT reduce 235 + DECREMENT reduce 235 + ',' reduce 235 + ';' reduce 235 + '*' reduce 235 + '<' reduce 235 + '>' reduce 235 + '}' reduce 235 + ')' reduce 235 + '&' reduce 235 + '+' reduce 235 + '-' reduce 235 + '|' reduce 235 + '^' reduce 235 + '/' reduce 235 + '%' reduce 235 + + +state 280 + preincrementexpression : INCREMENT unaryexpression . (217) + + . reduce 217 + + +state 281 + predecrementexpression : DECREMENT unaryexpression . (218) + + . reduce 218 + + +state 282 + lambdaexpressionparameter : '(' ')' . (207) + + . reduce 207 + + +state 283 + formalparameterlist : formalparameterlist . ',' formalparameter (135) + lambdaexpressionparameter : '(' formalparameterlist . ')' (208) + + ',' shift 304 + ')' shift 354 + . error + + +state 284 + qualifiedname : name '.' . IDENTIFIER (12) + + IDENTIFIER shift 355 + . error + + +state 285 + methodinvocation : name '(' . ')' (221) + methodinvocation : name '(' . argumentlist ')' (222) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + ')' shift 356 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 357 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + argumentlist goto 358 + methodinvocation goto 248 + castexpression goto 249 + + +state 286 + variabledeclarators : variabledeclarators . ',' variabledeclarator (130) + localvariabledeclaration : type variabledeclarators . (165) + + ',' shift 118 + ';' reduce 165 + + +state 287 + block : '{' blockstatements '}' . (87) + + . reduce 87 + + +state 288 + blockstatements : blockstatements blockstatement . (133) + + . reduce 133 + + +state 289 + localvariabledeclarationstatement : localvariabledeclaration ';' . (155) + + . reduce 155 + + +state 290 + lambdaassignmentoperator : LAMBDAASSIGNMENT . (204) + + . reduce 204 + + +state 291 + lambdaexpression : lambdaexpressionparameter lambdaassignmentoperator . lambdabody (209) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '{' shift 105 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + block goto 359 + lambdabody goto 360 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 361 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + methodinvocation goto 248 + castexpression goto 249 + + +state 292 + methodinvocation : primary '.' . IDENTIFIER '(' ')' (223) + methodinvocation : primary '.' . IDENTIFIER '(' argumentlist ')' (224) + + IDENTIFIER shift 362 + . error + + +state 293 + postincrementexpression : postfixexpression INCREMENT . (219) + + . reduce 219 + + +state 294 + postdecrementexpression : postfixexpression DECREMENT . (220) + + . reduce 220 + + +state 295 + expressionstatement : statementexpression ';' . (185) + + . reduce 185 + + +state 296 + assignmentoperator : PLUSEQUAL . (215) + + . reduce 215 + + +state 297 + assignmentoperator : MINUSEQUAL . (216) + + . reduce 216 + + +state 298 + assignmentoperator : TIMESEQUAL . (212) + + . reduce 212 + + +state 299 + assignmentoperator : DIVIDEEQUAL . (213) + + . reduce 213 + + +state 300 + assignmentoperator : MODULOEQUAL . (214) + + . reduce 214 + + +state 301 + assignmentoperator : '=' . (211) + + . reduce 211 + + +state 302 + assignment : lefthandside assignmentoperator . assignmentexpression (192) + assignment : lefthandside assignmentoperator . classinstancecreationexpression (193) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 363 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 364 + assignment goto 247 + lefthandside goto 206 + methodinvocation goto 248 + castexpression goto 249 + + +state 303 + formalparameter : type variabledeclaratorid . (148) + + . reduce 148 + + +state 304 + formalparameterlist : formalparameterlist ',' . formalparameter (135) + + BOOLEAN shift 48 + CHAR shift 49 + INT shift 50 + IDENTIFIER shift 168 + . error + + variabledeclaratorid goto 210 + simplename goto 43 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 + type goto 211 + formalparameter goto 365 + + +state 305 + methoddeclarator : IDENTIFIER '(' formalparameterlist ')' . (141) + + . reduce 141 + + +state 306 + boundedMethodParameters : boundedMethodParameters ',' boundedMethodParameter . (103) + + . reduce 103 + + +state 307 + methodheader : '<' boundedMethodParameters '>' VOID . methoddeclarator (116) + methodheader : '<' boundedMethodParameters '>' VOID . methoddeclarator throws (118) + + IDENTIFIER shift 107 + . error + + methoddeclarator goto 366 + + +state 308 + methodheader : '<' boundedMethodParameters '>' methoddeclarator . (121) + + . reduce 121 + + +state 309 + methodheader : '<' boundedMethodParameters '>' type . methoddeclarator (104) + methodheader : '<' boundedMethodParameters '>' type . methoddeclarator throws (109) + + IDENTIFIER shift 107 + . error + + methoddeclarator goto 367 + + +state 310 + classtypelist : classtypelist ',' . classtype (139) + + IDENTIFIER shift 42 + . error + + simplename goto 43 + classtype goto 368 + classorinterfacetype goto 45 + + +state 311 + classinstancecreationexpression : NEW classtype . '(' ')' (225) + classinstancecreationexpression : NEW classtype . '(' argumentlist ')' (226) + + '(' shift 369 + . error + + +state 312 + type : primitivetype . (125) + type : primitivetype . '[' ']' (126) + castexpression : '(' primitivetype . ')' unaryexpression (258) + + ')' shift 370 + '[' shift 123 + IDENTIFIER reduce 125 + + +state 313 + unaryexpression : '+' unaryexpression . (231) + + . reduce 231 + + +state 314 + unaryexpression : '-' unaryexpression . (232) + + . reduce 232 + + +state 315 + unaryexpressionnotplusminus : '!' unaryexpression . (246) + + . reduce 246 + + +state 316 + multiplicativeexpression : multiplicativeexpression '*' . unaryexpression (275) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 371 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 317 + multiplicativeexpression : multiplicativeexpression '/' . unaryexpression (276) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 372 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 318 + multiplicativeexpression : multiplicativeexpression '%' . unaryexpression (277) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 373 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 319 + additiveexpression : additiveexpression '+' . multiplicativeexpression (272) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 374 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 320 + additiveexpression : additiveexpression '-' . multiplicativeexpression (273) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 375 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 321 + relationalexpression : relationalexpression INSTANCEOF . referencetype (269) + + IDENTIFIER shift 42 + . error + + simplename goto 43 + classorinterfacetype goto 68 + referencetype goto 376 + + +state 322 + relationalexpression : relationalexpression LESSEQUAL . shiftexpression (267) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 377 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 323 + relationalexpression : relationalexpression GREATEREQUAL . shiftexpression (268) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 378 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 324 + relationalexpression : relationalexpression '<' . shiftexpression (265) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 379 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 325 + relationalexpression : relationalexpression '>' . shiftexpression (266) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 380 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 326 + equalityexpression : equalityexpression EQUAL . relationalexpression (262) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 381 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 327 + equalityexpression : equalityexpression NOTEQUAL . relationalexpression (263) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 382 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 328 + andexpression : andexpression '&' . equalityexpression (260) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 383 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 329 + exclusiveorexpression : exclusiveorexpression '^' . andexpression (249) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 384 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 330 + inclusiveorexpression : inclusiveorexpression '|' . exclusiveorexpression (240) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 385 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 331 + conditionalandexpression : conditionalandexpression LOGICALAND . inclusiveorexpression (228) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 386 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 332 + conditionalorexpression : conditionalorexpression LOGICALOR . conditionalandexpression (203) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 387 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 333 + constructordeclarator : simplename '(' formalparameterlist ')' . (89) + + . reduce 89 + + +state 334 + methodheader : modifiers VOID methoddeclarator throws . (115) + + . reduce 115 + + +state 335 + methodheader : modifiers '<' boundedMethodParameters '>' . type methoddeclarator (107) + methodheader : modifiers '<' boundedMethodParameters '>' . type methoddeclarator throws (111) + methodheader : modifiers '<' boundedMethodParameters '>' . VOID methoddeclarator (117) + methodheader : modifiers '<' boundedMethodParameters '>' . VOID methoddeclarator throws (119) + + BOOLEAN shift 48 + CHAR shift 49 + INT shift 50 + VOID shift 388 + IDENTIFIER shift 42 + . error + + simplename goto 43 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 + type goto 389 + + +state 336 + methodheader : modifiers type methoddeclarator throws . (110) + + . reduce 110 + + +state 337 + fielddeclaration : modifiers type variabledeclarators ';' . (84) + + . reduce 84 + + +state 338 + explicitconstructorinvocation : THIS '(' . ')' ';' (136) + explicitconstructorinvocation : THIS '(' . argumentlist ')' ';' (137) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + ')' shift 390 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 357 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + argumentlist goto 391 + methodinvocation goto 248 + castexpression goto 249 + + +state 339 + constructorbody : '{' blockstatements '}' . (92) + + . reduce 92 + + +state 340 + constructorbody : '{' explicitconstructorinvocation '}' . (91) + + . reduce 91 + + +state 341 + constructorbody : '{' explicitconstructorinvocation blockstatements . '}' (93) + blockstatements : blockstatements . blockstatement (133) + + BOOLEAN shift 48 + CHAR shift 49 + FOR shift 155 + IF shift 156 + INT shift 50 + RETURN shift 157 + THIS shift 158 + WHILE shift 159 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 168 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '}' shift 392 + '(' shift 173 + . error + + variabledeclarators goto 174 + variabledeclarator goto 175 + variabledeclaratorid goto 66 + simplename goto 176 + qualifiedname goto 177 + name goto 178 + classorinterfacetype goto 68 + integraltype goto 69 + numerictype goto 70 + primitivetype goto 71 + referencetype goto 72 + type goto 179 + block goto 180 + localvariabledeclarationstatement goto 182 + localvariabledeclaration goto 183 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 196 + blockstatement goto 288 + statement goto 198 + whilestatement goto 199 + forstatement goto 200 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 342 + constantdeclaration : modifiers type IDENTIFIER '=' . expression ';' (77) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 393 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + methodinvocation goto 248 + castexpression goto 249 + + +state 343 + boundedclassidentifierlist : boundedclassidentifierlist '&' referencetype . (101) + + . reduce 101 + + +state 344 + paralist : IDENTIFIER '<' paralist . '>' (33) + paralist : paralist . ',' IDENTIFIER (35) + paralist : paralist . ',' IDENTIFIER '<' paralist '>' (36) + paralist : paralist . ',' wildcardparameter (37) + + ',' shift 272 + '>' shift 394 + . error + + +state 345 + wildcardparameter : '?' EXTENDS referencetype . (39) + + . reduce 39 + + +state 346 + wildcardparameter : '?' SUPER referencetype . (40) + + . reduce 40 + + +state 347 + paralist : paralist ',' IDENTIFIER . (35) + paralist : paralist ',' IDENTIFIER . '<' paralist '>' (36) + + '<' shift 395 + ',' reduce 35 + '>' reduce 35 + + +state 348 + paralist : paralist ',' wildcardparameter . (37) + + . reduce 37 + + +state 349 + forstatement : FOR '(' ';' . expression ';' expression ')' statement (177) + forstatement : FOR '(' ';' . expression ';' ')' statement (179) + forstatement : FOR '(' ';' . ';' expression ')' statement (180) + forstatement : FOR '(' ';' . ';' ')' statement (181) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 396 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 397 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + methodinvocation goto 248 + castexpression goto 249 + + +state 350 + forstatement : FOR '(' expression . ';' expression ';' expression ')' statement (174) + forstatement : FOR '(' expression . ';' expression ';' ')' statement (175) + forstatement : FOR '(' expression . ';' ';' expression ')' statement (176) + forstatement : FOR '(' expression . ';' ';' ')' statement (178) ';' shift 398 . error -state 378 - paralist : paralist . ',' IDENTIFIER (34) - paralist : paralist . ',' IDENTIFIER '<' paralist '>' (35) - paralist : paralist ',' IDENTIFIER '<' paralist . '>' (35) - paralist : paralist . ',' wildcardparameter (36) +state 351 + ifthenstatement : IF '(' expression . ')' statement (171) + ifthenelsestatement : IF '(' expression . ')' statementnoshortif ELSE statement (172) - ',' shift 239 - '>' shift 399 + ')' shift 399 . error -state 379 - forstatement : FOR '(' ';' ';' ')' . statement (180) +state 352 + returnstatement : RETURN expression ';' . (187) - FOR shift 123 - IF shift 124 - RETURN shift 125 - THIS shift 126 - WHILE shift 127 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '(' shift 141 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - block goto 148 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 164 - statement goto 400 - whilestatement goto 167 - forstatement goto 168 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 + . reduce 187 -state 380 - forstatement : FOR '(' ';' ';' expression . ')' statement (179) +state 353 + whilestatement : WHILE '(' expression . ')' statement (173) - ')' shift 401 + ')' shift 400 . error -state 381 - forstatement : FOR '(' ';' expression ';' . expression ')' statement (176) - forstatement : FOR '(' ';' expression ';' . ')' statement (178) +state 354 + lambdaexpressionparameter : '(' formalparameterlist ')' . (208) - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - ')' shift 402 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 403 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - methodinvocation goto 216 - castexpression goto 217 + . reduce 208 -state 382 - forstatement : FOR '(' expression ';' ';' . expression ')' statement (175) - forstatement : FOR '(' expression ';' ';' . ')' statement (177) +state 355 + qualifiedname : name '.' IDENTIFIER . (12) - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - ')' shift 404 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 405 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - methodinvocation goto 216 - castexpression goto 217 + . reduce 12 -state 383 - forstatement : FOR '(' expression ';' expression . ';' expression ')' statement (173) - forstatement : FOR '(' expression ';' expression . ';' ')' statement (174) +state 356 + methodinvocation : name '(' ')' . (221) - ';' shift 406 - . error + . reduce 221 -state 384 - ifthenstatement : IF . '(' expression ')' statement (170) - ifthenelsestatement : IF . '(' expression ')' statementnoshortif ELSE statement (171) - ifthenelsestatementnoshortif : IF . '(' expression ')' statementnoshortif ELSE statementnoshortif (199) - - '(' shift 407 - . error - - -state 385 - whilestatement : WHILE . '(' expression ')' statement (172) - whilestatementnoshortif : WHILE . '(' expression ')' statementnoshortif (200) - - '(' shift 408 - . error - - -state 386 - statement : statementwithouttrailingsubstatement . (155) - statementnoshortif : statementwithouttrailingsubstatement . (187) - - BOOLEAN reduce 155 - CHAR reduce 155 - ELSE reduce 187 - FOR reduce 155 - IF reduce 155 - INT reduce 155 - RETURN reduce 155 - THIS reduce 155 - WHILE reduce 155 - INTLITERAL reduce 155 - LONGLITERAL reduce 155 - DOUBLELITERAL reduce 155 - FLOATLITERAL reduce 155 - BOOLLITERAL reduce 155 - JNULL reduce 155 - CHARLITERAL reduce 155 - STRINGLITERAL reduce 155 - IDENTIFIER reduce 155 - INCREMENT reduce 155 - DECREMENT reduce 155 - ';' reduce 155 - '{' reduce 155 - '}' reduce 155 - '(' reduce 155 - - -state 387 - ifthenstatement : IF '(' expression ')' statement . (170) - - . reduce 170 - - -state 388 - ifthenelsestatement : IF '(' expression ')' statementnoshortif . ELSE statement (171) - - ELSE shift 409 - . error - - -state 389 - statementnoshortif : whilestatementnoshortif . (189) - - . reduce 189 - - -state 390 - statementnoshortif : ifthenelsestatementnoshortif . (188) - - . reduce 188 - - -state 391 - whilestatement : WHILE '(' expression ')' statement . (172) - - . reduce 172 - - -state 392 - argumentlist : argumentlist ',' expression . (150) +state 357 + argumentlist : expression . (150) . reduce 150 +state 358 + argumentlist : argumentlist . ',' expression (151) + methodinvocation : name '(' argumentlist . ')' (222) + + ',' shift 401 + ')' shift 402 + . error + + +state 359 + lambdabody : block . (205) + + . reduce 205 + + +state 360 + lambdaexpression : lambdaexpressionparameter lambdaassignmentoperator lambdabody . (209) + + . reduce 209 + + +state 361 + lambdabody : expression . (206) + + . reduce 206 + + +state 362 + methodinvocation : primary '.' IDENTIFIER . '(' ')' (223) + methodinvocation : primary '.' IDENTIFIER . '(' argumentlist ')' (224) + + '(' shift 403 + . error + + +state 363 + assignment : lefthandside assignmentoperator assignmentexpression . (192) + + . reduce 192 + + +state 364 + assignment : lefthandside assignmentoperator classinstancecreationexpression . (193) + + . reduce 193 + + +state 365 + formalparameterlist : formalparameterlist ',' formalparameter . (135) + + . reduce 135 + + +state 366 + methodheader : '<' boundedMethodParameters '>' VOID methoddeclarator . (116) + methodheader : '<' boundedMethodParameters '>' VOID methoddeclarator . throws (118) + + THROWS shift 114 + ';' reduce 116 + '{' reduce 116 + + throws goto 404 + + +state 367 + methodheader : '<' boundedMethodParameters '>' type methoddeclarator . (104) + methodheader : '<' boundedMethodParameters '>' type methoddeclarator . throws (109) + + THROWS shift 114 + ';' reduce 104 + '{' reduce 104 + + throws goto 405 + + +state 368 + classtypelist : classtypelist ',' classtype . (139) + + . reduce 139 + + +state 369 + classinstancecreationexpression : NEW classtype '(' . ')' (225) + classinstancecreationexpression : NEW classtype '(' . argumentlist ')' (226) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + ')' shift 406 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 357 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + argumentlist goto 407 + methodinvocation goto 248 + castexpression goto 249 + + +state 370 + castexpression : '(' primitivetype ')' . unaryexpression (258) + + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 279 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 408 + lambdaexpression goto 189 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + methodinvocation goto 248 + castexpression goto 249 + + +state 371 + multiplicativeexpression : multiplicativeexpression '*' unaryexpression . (275) + + . reduce 275 + + +state 372 + multiplicativeexpression : multiplicativeexpression '/' unaryexpression . (276) + + . reduce 276 + + +state 373 + multiplicativeexpression : multiplicativeexpression '%' unaryexpression . (277) + + . reduce 277 + + +374: shift/reduce conflict (shift 316, reduce 272) on '*' +374: shift/reduce conflict (shift 317, reduce 272) on '/' +374: shift/reduce conflict (shift 318, reduce 272) on '%' +state 374 + additiveexpression : additiveexpression '+' multiplicativeexpression . (272) + multiplicativeexpression : multiplicativeexpression . '*' unaryexpression (275) + multiplicativeexpression : multiplicativeexpression . '/' unaryexpression (276) + multiplicativeexpression : multiplicativeexpression . '%' unaryexpression (277) + + '*' shift 316 + '/' shift 317 + '%' shift 318 + ABSTRACT reduce 272 + BOOLEAN reduce 272 + CHAR reduce 272 + FINAL reduce 272 + INSTANCEOF reduce 272 + INT reduce 272 + PRIVATE reduce 272 + PROTECTED reduce 272 + PUBLIC reduce 272 + STATIC reduce 272 + VOID reduce 272 + IDENTIFIER reduce 272 + EQUAL reduce 272 + LESSEQUAL reduce 272 + GREATEREQUAL reduce 272 + NOTEQUAL reduce 272 + LOGICALOR reduce 272 + LOGICALAND reduce 272 + INCREMENT reduce 272 + DECREMENT reduce 272 + ',' reduce 272 + ';' reduce 272 + '.' reduce 272 + '<' reduce 272 + '>' reduce 272 + '}' reduce 272 + ')' reduce 272 + '&' reduce 272 + '+' reduce 272 + '-' reduce 272 + '|' reduce 272 + '^' reduce 272 + + +375: shift/reduce conflict (shift 316, reduce 273) on '*' +375: shift/reduce conflict (shift 317, reduce 273) on '/' +375: shift/reduce conflict (shift 318, reduce 273) on '%' +state 375 + additiveexpression : additiveexpression '-' multiplicativeexpression . (273) + multiplicativeexpression : multiplicativeexpression . '*' unaryexpression (275) + multiplicativeexpression : multiplicativeexpression . '/' unaryexpression (276) + multiplicativeexpression : multiplicativeexpression . '%' unaryexpression (277) + + '*' shift 316 + '/' shift 317 + '%' shift 318 + ABSTRACT reduce 273 + BOOLEAN reduce 273 + CHAR reduce 273 + FINAL reduce 273 + INSTANCEOF reduce 273 + INT reduce 273 + PRIVATE reduce 273 + PROTECTED reduce 273 + PUBLIC reduce 273 + STATIC reduce 273 + VOID reduce 273 + IDENTIFIER reduce 273 + EQUAL reduce 273 + LESSEQUAL reduce 273 + GREATEREQUAL reduce 273 + NOTEQUAL reduce 273 + LOGICALOR reduce 273 + LOGICALAND reduce 273 + INCREMENT reduce 273 + DECREMENT reduce 273 + ',' reduce 273 + ';' reduce 273 + '.' reduce 273 + '<' reduce 273 + '>' reduce 273 + '}' reduce 273 + ')' reduce 273 + '&' reduce 273 + '+' reduce 273 + '-' reduce 273 + '|' reduce 273 + '^' reduce 273 + + +state 376 + relationalexpression : relationalexpression INSTANCEOF referencetype . (269) + + . reduce 269 + + +state 377 + relationalexpression : relationalexpression LESSEQUAL shiftexpression . (267) + + . reduce 267 + + +state 378 + relationalexpression : relationalexpression GREATEREQUAL shiftexpression . (268) + + . reduce 268 + + +state 379 + relationalexpression : relationalexpression '<' shiftexpression . (265) + + . reduce 265 + + +state 380 + relationalexpression : relationalexpression '>' shiftexpression . (266) + + . reduce 266 + + +381: shift/reduce conflict (shift 321, reduce 262) on INSTANCEOF +381: shift/reduce conflict (shift 322, reduce 262) on LESSEQUAL +381: shift/reduce conflict (shift 323, reduce 262) on GREATEREQUAL +381: shift/reduce conflict (shift 324, reduce 262) on '<' +381: shift/reduce conflict (shift 325, reduce 262) on '>' +state 381 + equalityexpression : equalityexpression EQUAL relationalexpression . (262) + relationalexpression : relationalexpression . '<' shiftexpression (265) + relationalexpression : relationalexpression . '>' shiftexpression (266) + relationalexpression : relationalexpression . LESSEQUAL shiftexpression (267) + relationalexpression : relationalexpression . GREATEREQUAL shiftexpression (268) + relationalexpression : relationalexpression . INSTANCEOF referencetype (269) + + INSTANCEOF shift 321 + LESSEQUAL shift 322 + GREATEREQUAL shift 323 + '<' shift 324 + '>' shift 325 + ABSTRACT reduce 262 + BOOLEAN reduce 262 + CHAR reduce 262 + FINAL reduce 262 + INT reduce 262 + PRIVATE reduce 262 + PROTECTED reduce 262 + PUBLIC reduce 262 + STATIC reduce 262 + VOID reduce 262 + IDENTIFIER reduce 262 + EQUAL reduce 262 + NOTEQUAL reduce 262 + LOGICALOR reduce 262 + LOGICALAND reduce 262 + INCREMENT reduce 262 + DECREMENT reduce 262 + ',' reduce 262 + ';' reduce 262 + '.' reduce 262 + '*' reduce 262 + '}' reduce 262 + ')' reduce 262 + '&' reduce 262 + '+' reduce 262 + '-' reduce 262 + '|' reduce 262 + '^' reduce 262 + '/' reduce 262 + '%' reduce 262 + + +382: shift/reduce conflict (shift 321, reduce 263) on INSTANCEOF +382: shift/reduce conflict (shift 322, reduce 263) on LESSEQUAL +382: shift/reduce conflict (shift 323, reduce 263) on GREATEREQUAL +382: shift/reduce conflict (shift 324, reduce 263) on '<' +382: shift/reduce conflict (shift 325, reduce 263) on '>' +state 382 + equalityexpression : equalityexpression NOTEQUAL relationalexpression . (263) + relationalexpression : relationalexpression . '<' shiftexpression (265) + relationalexpression : relationalexpression . '>' shiftexpression (266) + relationalexpression : relationalexpression . LESSEQUAL shiftexpression (267) + relationalexpression : relationalexpression . GREATEREQUAL shiftexpression (268) + relationalexpression : relationalexpression . INSTANCEOF referencetype (269) + + INSTANCEOF shift 321 + LESSEQUAL shift 322 + GREATEREQUAL shift 323 + '<' shift 324 + '>' shift 325 + ABSTRACT reduce 263 + BOOLEAN reduce 263 + CHAR reduce 263 + FINAL reduce 263 + INT reduce 263 + PRIVATE reduce 263 + PROTECTED reduce 263 + PUBLIC reduce 263 + STATIC reduce 263 + VOID reduce 263 + IDENTIFIER reduce 263 + EQUAL reduce 263 + NOTEQUAL reduce 263 + LOGICALOR reduce 263 + LOGICALAND reduce 263 + INCREMENT reduce 263 + DECREMENT reduce 263 + ',' reduce 263 + ';' reduce 263 + '.' reduce 263 + '*' reduce 263 + '}' reduce 263 + ')' reduce 263 + '&' reduce 263 + '+' reduce 263 + '-' reduce 263 + '|' reduce 263 + '^' reduce 263 + '/' reduce 263 + '%' reduce 263 + + +383: shift/reduce conflict (shift 326, reduce 260) on EQUAL +383: shift/reduce conflict (shift 327, reduce 260) on NOTEQUAL +state 383 + andexpression : andexpression '&' equalityexpression . (260) + equalityexpression : equalityexpression . EQUAL relationalexpression (262) + equalityexpression : equalityexpression . NOTEQUAL relationalexpression (263) + + EQUAL shift 326 + NOTEQUAL shift 327 + ABSTRACT reduce 260 + BOOLEAN reduce 260 + CHAR reduce 260 + FINAL reduce 260 + INSTANCEOF reduce 260 + INT reduce 260 + PRIVATE reduce 260 + PROTECTED reduce 260 + PUBLIC reduce 260 + STATIC reduce 260 + VOID reduce 260 + IDENTIFIER reduce 260 + LESSEQUAL reduce 260 + GREATEREQUAL reduce 260 + LOGICALOR reduce 260 + LOGICALAND reduce 260 + INCREMENT reduce 260 + DECREMENT reduce 260 + ',' reduce 260 + ';' reduce 260 + '.' reduce 260 + '*' reduce 260 + '<' reduce 260 + '>' reduce 260 + '}' reduce 260 + ')' reduce 260 + '&' reduce 260 + '+' reduce 260 + '-' reduce 260 + '|' reduce 260 + '^' reduce 260 + '/' reduce 260 + '%' reduce 260 + + +384: shift/reduce conflict (shift 328, reduce 249) on '&' +state 384 + exclusiveorexpression : exclusiveorexpression '^' andexpression . (249) + andexpression : andexpression . '&' equalityexpression (260) + + '&' shift 328 + ABSTRACT reduce 249 + BOOLEAN reduce 249 + CHAR reduce 249 + FINAL reduce 249 + INSTANCEOF reduce 249 + INT reduce 249 + PRIVATE reduce 249 + PROTECTED reduce 249 + PUBLIC reduce 249 + STATIC reduce 249 + VOID reduce 249 + IDENTIFIER reduce 249 + EQUAL reduce 249 + LESSEQUAL reduce 249 + GREATEREQUAL reduce 249 + NOTEQUAL reduce 249 + LOGICALOR reduce 249 + LOGICALAND reduce 249 + INCREMENT reduce 249 + DECREMENT reduce 249 + ',' reduce 249 + ';' reduce 249 + '.' reduce 249 + '*' reduce 249 + '<' reduce 249 + '>' reduce 249 + '}' reduce 249 + ')' reduce 249 + '+' reduce 249 + '-' reduce 249 + '|' reduce 249 + '^' reduce 249 + '/' reduce 249 + '%' reduce 249 + + +385: shift/reduce conflict (shift 329, reduce 240) on '^' +state 385 + inclusiveorexpression : inclusiveorexpression '|' exclusiveorexpression . (240) + exclusiveorexpression : exclusiveorexpression . '^' andexpression (249) + + '^' shift 329 + ABSTRACT reduce 240 + BOOLEAN reduce 240 + CHAR reduce 240 + FINAL reduce 240 + INSTANCEOF reduce 240 + INT reduce 240 + PRIVATE reduce 240 + PROTECTED reduce 240 + PUBLIC reduce 240 + STATIC reduce 240 + VOID reduce 240 + IDENTIFIER reduce 240 + EQUAL reduce 240 + LESSEQUAL reduce 240 + GREATEREQUAL reduce 240 + NOTEQUAL reduce 240 + LOGICALOR reduce 240 + LOGICALAND reduce 240 + INCREMENT reduce 240 + DECREMENT reduce 240 + ',' reduce 240 + ';' reduce 240 + '.' reduce 240 + '*' reduce 240 + '<' reduce 240 + '>' reduce 240 + '}' reduce 240 + ')' reduce 240 + '&' reduce 240 + '+' reduce 240 + '-' reduce 240 + '|' reduce 240 + '/' reduce 240 + '%' reduce 240 + + +386: shift/reduce conflict (shift 330, reduce 228) on '|' +state 386 + conditionalandexpression : conditionalandexpression LOGICALAND inclusiveorexpression . (228) + inclusiveorexpression : inclusiveorexpression . '|' exclusiveorexpression (240) + + '|' shift 330 + ABSTRACT reduce 228 + BOOLEAN reduce 228 + CHAR reduce 228 + FINAL reduce 228 + INSTANCEOF reduce 228 + INT reduce 228 + PRIVATE reduce 228 + PROTECTED reduce 228 + PUBLIC reduce 228 + STATIC reduce 228 + VOID reduce 228 + IDENTIFIER reduce 228 + EQUAL reduce 228 + LESSEQUAL reduce 228 + GREATEREQUAL reduce 228 + NOTEQUAL reduce 228 + LOGICALOR reduce 228 + LOGICALAND reduce 228 + INCREMENT reduce 228 + DECREMENT reduce 228 + ',' reduce 228 + ';' reduce 228 + '.' reduce 228 + '*' reduce 228 + '<' reduce 228 + '>' reduce 228 + '}' reduce 228 + ')' reduce 228 + '&' reduce 228 + '+' reduce 228 + '-' reduce 228 + '^' reduce 228 + '/' reduce 228 + '%' reduce 228 + + +387: shift/reduce conflict (shift 331, reduce 203) on LOGICALAND +state 387 + conditionalorexpression : conditionalorexpression LOGICALOR conditionalandexpression . (203) + conditionalandexpression : conditionalandexpression . LOGICALAND inclusiveorexpression (228) + + LOGICALAND shift 331 + ABSTRACT reduce 203 + BOOLEAN reduce 203 + CHAR reduce 203 + FINAL reduce 203 + INSTANCEOF reduce 203 + INT reduce 203 + PRIVATE reduce 203 + PROTECTED reduce 203 + PUBLIC reduce 203 + STATIC reduce 203 + VOID reduce 203 + IDENTIFIER reduce 203 + EQUAL reduce 203 + LESSEQUAL reduce 203 + GREATEREQUAL reduce 203 + NOTEQUAL reduce 203 + LOGICALOR reduce 203 + INCREMENT reduce 203 + DECREMENT reduce 203 + ',' reduce 203 + ';' reduce 203 + '.' reduce 203 + '*' reduce 203 + '<' reduce 203 + '>' reduce 203 + '}' reduce 203 + ')' reduce 203 + '&' reduce 203 + '+' reduce 203 + '-' reduce 203 + '|' reduce 203 + '^' reduce 203 + '/' reduce 203 + '%' reduce 203 + + +state 388 + methodheader : modifiers '<' boundedMethodParameters '>' VOID . methoddeclarator (117) + methodheader : modifiers '<' boundedMethodParameters '>' VOID . methoddeclarator throws (119) + + IDENTIFIER shift 107 + . error + + methoddeclarator goto 409 + + +state 389 + methodheader : modifiers '<' boundedMethodParameters '>' type . methoddeclarator (107) + methodheader : modifiers '<' boundedMethodParameters '>' type . methoddeclarator throws (111) + + IDENTIFIER shift 107 + . error + + methoddeclarator goto 410 + + +state 390 + explicitconstructorinvocation : THIS '(' ')' . ';' (136) + + ';' shift 411 + . error + + +state 391 + explicitconstructorinvocation : THIS '(' argumentlist . ')' ';' (137) + argumentlist : argumentlist . ',' expression (151) + + ',' shift 401 + ')' shift 412 + . error + + +state 392 + constructorbody : '{' explicitconstructorinvocation blockstatements '}' . (93) + + . reduce 93 + + state 393 - methodinvocation : primary '.' IDENTIFIER '(' ')' . (222) + constantdeclaration : modifiers type IDENTIFIER '=' expression . ';' (77) + + ';' shift 413 + . error + + +state 394 + paralist : IDENTIFIER '<' paralist '>' . (33) + + . reduce 33 + + +state 395 + paralist : paralist ',' IDENTIFIER '<' . paralist '>' (36) + + IDENTIFIER shift 151 + '?' shift 152 + . error + + paralist goto 414 + wildcardparameter goto 154 + + +state 396 + forstatement : FOR '(' ';' ';' . expression ')' statement (180) + forstatement : FOR '(' ';' ';' . ')' statement (181) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + ')' shift 415 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 416 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + methodinvocation goto 248 + castexpression goto 249 + + +state 397 + forstatement : FOR '(' ';' expression . ';' expression ')' statement (177) + forstatement : FOR '(' ';' expression . ';' ')' statement (179) + + ';' shift 417 + . error + + +state 398 + forstatement : FOR '(' expression ';' . expression ';' expression ')' statement (174) + forstatement : FOR '(' expression ';' . expression ';' ')' statement (175) + forstatement : FOR '(' expression ';' . ';' expression ')' statement (176) + forstatement : FOR '(' expression ';' . ';' ')' statement (178) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 418 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 419 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + methodinvocation goto 248 + castexpression goto 249 + + +state 399 + ifthenstatement : IF '(' expression ')' . statement (171) + ifthenelsestatement : IF '(' expression ')' . statementnoshortif ELSE statement (172) + + FOR shift 155 + IF shift 420 + RETURN shift 157 + THIS shift 158 + WHILE shift 421 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '(' shift 173 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + block goto 180 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 422 + statement goto 423 + statementnoshortif goto 424 + whilestatement goto 199 + forstatement goto 200 + whilestatementnoshortif goto 425 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + ifthenelsestatementnoshortif goto 426 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 400 + whilestatement : WHILE '(' expression ')' . statement (173) + + FOR shift 155 + IF shift 156 + RETURN shift 157 + THIS shift 158 + WHILE shift 159 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '(' shift 173 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + block goto 180 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 196 + statement goto 427 + whilestatement goto 199 + forstatement goto 200 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 401 + argumentlist : argumentlist ',' . expression (151) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 428 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + methodinvocation goto 248 + castexpression goto 249 + + +state 402 + methodinvocation : name '(' argumentlist ')' . (222) . reduce 222 -state 394 - argumentlist : argumentlist . ',' expression (150) - methodinvocation : primary '.' IDENTIFIER '(' argumentlist . ')' (223) +state 403 + methodinvocation : primary '.' IDENTIFIER '(' . ')' (223) + methodinvocation : primary '.' IDENTIFIER '(' . argumentlist ')' (224) - ',' shift 366 - ')' shift 410 + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + ')' shift 429 + '+' shift 222 + '-' shift 223 + '!' shift 224 . error - -state 395 - classinstancecreationexpression : NEW classtype '(' argumentlist ')' . (225) - - . reduce 225 + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 357 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + argumentlist goto 430 + methodinvocation goto 248 + castexpression goto 249 -state 396 - methodheader : modifiers '<' boundedMethodParameters '>' VOID methoddeclarator throws . (118) +state 404 + methodheader : '<' boundedMethodParameters '>' VOID methoddeclarator throws . (118) . reduce 118 -state 397 - methodheader : modifiers '<' boundedMethodParameters '>' type methoddeclarator throws . (110) +state 405 + methodheader : '<' boundedMethodParameters '>' type methoddeclarator throws . (109) - . reduce 110 + . reduce 109 -state 398 - explicitconstructorinvocation : THIS '(' argumentlist ')' ';' . (136) +state 406 + classinstancecreationexpression : NEW classtype '(' ')' . (225) + + . reduce 225 + + +state 407 + argumentlist : argumentlist . ',' expression (151) + classinstancecreationexpression : NEW classtype '(' argumentlist . ')' (226) + + ',' shift 401 + ')' shift 431 + . error + + +state 408 + castexpression : '(' primitivetype ')' unaryexpression . (258) + + . reduce 258 + + +state 409 + methodheader : modifiers '<' boundedMethodParameters '>' VOID methoddeclarator . (117) + methodheader : modifiers '<' boundedMethodParameters '>' VOID methoddeclarator . throws (119) + + THROWS shift 114 + ';' reduce 117 + '{' reduce 117 + + throws goto 432 + + +state 410 + methodheader : modifiers '<' boundedMethodParameters '>' type methoddeclarator . (107) + methodheader : modifiers '<' boundedMethodParameters '>' type methoddeclarator . throws (111) + + THROWS shift 114 + ';' reduce 107 + '{' reduce 107 + + throws goto 433 + + +state 411 + explicitconstructorinvocation : THIS '(' ')' ';' . (136) . reduce 136 -state 399 - paralist : paralist ',' IDENTIFIER '<' paralist '>' . (35) - - . reduce 35 - - -state 400 - forstatement : FOR '(' ';' ';' ')' statement . (180) - - . reduce 180 - - -state 401 - forstatement : FOR '(' ';' ';' expression ')' . statement (179) - - FOR shift 123 - IF shift 124 - RETURN shift 125 - THIS shift 126 - WHILE shift 127 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '(' shift 141 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - block goto 148 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 164 - statement goto 411 - whilestatement goto 167 - forstatement goto 168 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 - - -state 402 - forstatement : FOR '(' ';' expression ';' ')' . statement (178) - - FOR shift 123 - IF shift 124 - RETURN shift 125 - THIS shift 126 - WHILE shift 127 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '(' shift 141 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - block goto 148 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 164 - statement goto 412 - whilestatement goto 167 - forstatement goto 168 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 - - -state 403 - forstatement : FOR '(' ';' expression ';' expression . ')' statement (176) - - ')' shift 413 - . error - - -state 404 - forstatement : FOR '(' expression ';' ';' ')' . statement (177) - - FOR shift 123 - IF shift 124 - RETURN shift 125 - THIS shift 126 - WHILE shift 127 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '(' shift 141 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - block goto 148 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 164 - statement goto 414 - whilestatement goto 167 - forstatement goto 168 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 - - -state 405 - forstatement : FOR '(' expression ';' ';' expression . ')' statement (175) - - ')' shift 415 - . error - - -state 406 - forstatement : FOR '(' expression ';' expression ';' . expression ')' statement (173) - forstatement : FOR '(' expression ';' expression ';' . ')' statement (174) - - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - ')' shift 416 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 417 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - methodinvocation goto 216 - castexpression goto 217 - - -state 407 - ifthenstatement : IF '(' . expression ')' statement (170) - ifthenelsestatement : IF '(' . expression ')' statementnoshortif ELSE statement (171) - ifthenelsestatementnoshortif : IF '(' . expression ')' statementnoshortif ELSE statementnoshortif (199) - - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 418 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - methodinvocation goto 216 - castexpression goto 217 - - -state 408 - whilestatement : WHILE '(' . expression ')' statement (172) - whilestatementnoshortif : WHILE '(' . expression ')' statementnoshortif (200) - - NEW shift 188 - THIS shift 126 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - '(' shift 189 - '+' shift 190 - '-' shift 191 - '!' shift 192 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 194 - unaryexpressionnotplusminus goto 195 - unaryexpression goto 196 - multiplicativeexpression goto 197 - additiveexpression goto 198 - shiftexpression goto 199 - relationalexpression goto 200 - equalityexpression goto 201 - andexpression goto 202 - exclusiveorexpression goto 203 - inclusiveorexpression goto 204 - conditionalandexpression goto 205 - conditionalorexpression goto 206 - conditionalexpression goto 207 - assignmentexpression goto 208 - lambdaexpression goto 157 - expression goto 419 - preincrementexpression goto 210 - predecrementexpression goto 211 - postincrementexpression goto 212 - postdecrementexpression goto 213 - classinstancecreationexpression goto 214 - assignment goto 215 - lefthandside goto 174 - methodinvocation goto 216 - castexpression goto 217 - - -state 409 - ifthenelsestatement : IF '(' expression ')' statementnoshortif ELSE . statement (171) - - FOR shift 123 - IF shift 124 - RETURN shift 125 - THIS shift 126 - WHILE shift 127 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '(' shift 141 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - block goto 148 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 164 - statement goto 420 - whilestatement goto 167 - forstatement goto 168 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 - - -state 410 - methodinvocation : primary '.' IDENTIFIER '(' argumentlist ')' . (223) - - . reduce 223 - - -state 411 - forstatement : FOR '(' ';' ';' expression ')' statement . (179) - - . reduce 179 - - state 412 - forstatement : FOR '(' ';' expression ';' ')' statement . (178) + explicitconstructorinvocation : THIS '(' argumentlist ')' . ';' (137) - . reduce 178 + ';' shift 434 + . error state 413 - forstatement : FOR '(' ';' expression ';' expression ')' . statement (176) + constantdeclaration : modifiers type IDENTIFIER '=' expression ';' . (77) - FOR shift 123 - IF shift 124 - RETURN shift 125 - THIS shift 126 - WHILE shift 127 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '(' shift 141 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - block goto 148 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 164 - statement goto 421 - whilestatement goto 167 - forstatement goto 168 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 + . reduce 77 state 414 - forstatement : FOR '(' expression ';' ';' ')' statement . (177) + paralist : paralist . ',' IDENTIFIER (35) + paralist : paralist . ',' IDENTIFIER '<' paralist '>' (36) + paralist : paralist ',' IDENTIFIER '<' paralist . '>' (36) + paralist : paralist . ',' wildcardparameter (37) - . reduce 177 + ',' shift 272 + '>' shift 435 + . error state 415 - forstatement : FOR '(' expression ';' ';' expression ')' . statement (175) + forstatement : FOR '(' ';' ';' ')' . statement (181) - FOR shift 123 - IF shift 124 - RETURN shift 125 - THIS shift 126 - WHILE shift 127 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '(' shift 141 + FOR shift 155 + IF shift 156 + RETURN shift 157 + THIS shift 158 + WHILE shift 159 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '(' shift 173 . error - simplename goto 193 - qualifiedname goto 145 - name goto 146 - block goto 148 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 164 - statement goto 422 - whilestatement goto 167 - forstatement goto 168 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 + simplename goto 225 + qualifiedname goto 177 + name goto 178 + block goto 180 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 196 + statement goto 436 + whilestatement goto 199 + forstatement goto 200 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 state 416 - forstatement : FOR '(' expression ';' expression ';' ')' . statement (174) + forstatement : FOR '(' ';' ';' expression . ')' statement (180) - FOR shift 123 - IF shift 124 - RETURN shift 125 - THIS shift 126 - WHILE shift 127 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '(' shift 141 + ')' shift 437 . error - simplename goto 193 - qualifiedname goto 145 - name goto 146 - block goto 148 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 164 - statement goto 423 - whilestatement goto 167 - forstatement goto 168 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 - state 417 - forstatement : FOR '(' expression ';' expression ';' expression . ')' statement (173) + forstatement : FOR '(' ';' expression ';' . expression ')' statement (177) + forstatement : FOR '(' ';' expression ';' . ')' statement (179) - ')' shift 424 + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + ')' shift 438 + '+' shift 222 + '-' shift 223 + '!' shift 224 . error + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 439 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + methodinvocation goto 248 + castexpression goto 249 + state 418 - ifthenstatement : IF '(' expression . ')' statement (170) - ifthenelsestatement : IF '(' expression . ')' statementnoshortif ELSE statement (171) - ifthenelsestatementnoshortif : IF '(' expression . ')' statementnoshortif ELSE statementnoshortif (199) + forstatement : FOR '(' expression ';' ';' . expression ')' statement (176) + forstatement : FOR '(' expression ';' ';' . ')' statement (178) - ')' shift 425 + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + ')' shift 440 + '+' shift 222 + '-' shift 223 + '!' shift 224 . error + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 441 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + methodinvocation goto 248 + castexpression goto 249 + state 419 - whilestatement : WHILE '(' expression . ')' statement (172) - whilestatementnoshortif : WHILE '(' expression . ')' statementnoshortif (200) + forstatement : FOR '(' expression ';' expression . ';' expression ')' statement (174) + forstatement : FOR '(' expression ';' expression . ';' ')' statement (175) - ')' shift 426 + ';' shift 442 . error state 420 - ifthenelsestatement : IF '(' expression ')' statementnoshortif ELSE statement . (171) + ifthenstatement : IF . '(' expression ')' statement (171) + ifthenelsestatement : IF . '(' expression ')' statementnoshortif ELSE statement (172) + ifthenelsestatementnoshortif : IF . '(' expression ')' statementnoshortif ELSE statementnoshortif (200) + + '(' shift 443 + . error + + +state 421 + whilestatement : WHILE . '(' expression ')' statement (173) + whilestatementnoshortif : WHILE . '(' expression ')' statementnoshortif (201) + + '(' shift 444 + . error + + +state 422 + statement : statementwithouttrailingsubstatement . (156) + statementnoshortif : statementwithouttrailingsubstatement . (188) + + BOOLEAN reduce 156 + CHAR reduce 156 + ELSE reduce 188 + FOR reduce 156 + IF reduce 156 + INT reduce 156 + RETURN reduce 156 + THIS reduce 156 + WHILE reduce 156 + INTLITERAL reduce 156 + LONGLITERAL reduce 156 + DOUBLELITERAL reduce 156 + FLOATLITERAL reduce 156 + BOOLLITERAL reduce 156 + JNULL reduce 156 + CHARLITERAL reduce 156 + STRINGLITERAL reduce 156 + IDENTIFIER reduce 156 + INCREMENT reduce 156 + DECREMENT reduce 156 + ';' reduce 156 + '{' reduce 156 + '}' reduce 156 + '(' reduce 156 + + +state 423 + ifthenstatement : IF '(' expression ')' statement . (171) . reduce 171 -state 421 - forstatement : FOR '(' ';' expression ';' expression ')' statement . (176) - - . reduce 176 - - -state 422 - forstatement : FOR '(' expression ';' ';' expression ')' statement . (175) - - . reduce 175 - - -state 423 - forstatement : FOR '(' expression ';' expression ';' ')' statement . (174) - - . reduce 174 - - state 424 - forstatement : FOR '(' expression ';' expression ';' expression ')' . statement (173) + ifthenelsestatement : IF '(' expression ')' statementnoshortif . ELSE statement (172) - FOR shift 123 - IF shift 124 - RETURN shift 125 - THIS shift 126 - WHILE shift 127 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '(' shift 141 + ELSE shift 445 . error - simplename goto 193 - qualifiedname goto 145 - name goto 146 - block goto 148 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 164 - statement goto 427 - whilestatement goto 167 - forstatement goto 168 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 - state 425 - ifthenstatement : IF '(' expression ')' . statement (170) - ifthenelsestatement : IF '(' expression ')' . statementnoshortif ELSE statement (171) - ifthenelsestatementnoshortif : IF '(' expression ')' . statementnoshortif ELSE statementnoshortif (199) + statementnoshortif : whilestatementnoshortif . (190) - FOR shift 123 - IF shift 384 - RETURN shift 125 - THIS shift 126 - WHILE shift 385 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '(' shift 141 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - block goto 148 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 386 - statement goto 387 - statementnoshortif goto 428 - whilestatement goto 167 - forstatement goto 168 - whilestatementnoshortif goto 389 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - ifthenelsestatementnoshortif goto 390 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 + . reduce 190 state 426 - whilestatement : WHILE '(' expression ')' . statement (172) - whilestatementnoshortif : WHILE '(' expression ')' . statementnoshortif (200) + statementnoshortif : ifthenelsestatementnoshortif . (189) - FOR shift 123 - IF shift 384 - RETURN shift 125 - THIS shift 126 - WHILE shift 385 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '(' shift 141 - . error - - simplename goto 193 - qualifiedname goto 145 - name goto 146 - block goto 148 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 386 - statement goto 391 - statementnoshortif goto 429 - whilestatement goto 167 - forstatement goto 168 - whilestatementnoshortif goto 389 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - ifthenelsestatementnoshortif goto 390 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 + . reduce 189 state 427 - forstatement : FOR '(' expression ';' expression ';' expression ')' statement . (173) + whilestatement : WHILE '(' expression ')' statement . (173) . reduce 173 state 428 - ifthenelsestatement : IF '(' expression ')' statementnoshortif . ELSE statement (171) - ifthenelsestatementnoshortif : IF '(' expression ')' statementnoshortif . ELSE statementnoshortif (199) + argumentlist : argumentlist ',' expression . (151) - ELSE shift 430 - . error + . reduce 151 state 429 - whilestatementnoshortif : WHILE '(' expression ')' statementnoshortif . (200) + methodinvocation : primary '.' IDENTIFIER '(' ')' . (223) - . reduce 200 + . reduce 223 state 430 - ifthenelsestatement : IF '(' expression ')' statementnoshortif ELSE . statement (171) - ifthenelsestatementnoshortif : IF '(' expression ')' statementnoshortif ELSE . statementnoshortif (199) + argumentlist : argumentlist . ',' expression (151) + methodinvocation : primary '.' IDENTIFIER '(' argumentlist . ')' (224) - FOR shift 123 - IF shift 384 - RETURN shift 125 - THIS shift 126 - WHILE shift 385 - INTLITERAL shift 128 - LONGLITERAL shift 129 - DOUBLELITERAL shift 130 - FLOATLITERAL shift 131 - BOOLLITERAL shift 132 - JNULL shift 133 - CHARLITERAL shift 134 - STRINGLITERAL shift 135 - IDENTIFIER shift 31 - INCREMENT shift 137 - DECREMENT shift 138 - ';' shift 139 - '{' shift 79 - '(' shift 141 + ',' shift 401 + ')' shift 446 . error - simplename goto 193 - qualifiedname goto 145 - name goto 146 - block goto 148 - lambdaexpressionparameter goto 152 - literal goto 153 - primarynonewarray goto 154 - primary goto 155 - postfixexpression goto 156 - lambdaexpression goto 157 - statementexpression goto 158 - preincrementexpression goto 159 - predecrementexpression goto 160 - postincrementexpression goto 161 - postdecrementexpression goto 162 - expressionstatement goto 163 - statementwithouttrailingsubstatement goto 386 - statement goto 420 - statementnoshortif goto 431 - whilestatement goto 167 - forstatement goto 168 - whilestatementnoshortif goto 389 - ifthenstatement goto 169 - ifthenelsestatement goto 170 - ifthenelsestatementnoshortif goto 390 - emptystatement goto 171 - returnstatement goto 172 - assignment goto 173 - lefthandside goto 174 - methodinvocation goto 175 - state 431 - ifthenelsestatementnoshortif : IF '(' expression ')' statementnoshortif ELSE statementnoshortif . (199) + classinstancecreationexpression : NEW classtype '(' argumentlist ')' . (226) - . reduce 199 + . reduce 226 + + +state 432 + methodheader : modifiers '<' boundedMethodParameters '>' VOID methoddeclarator throws . (119) + + . reduce 119 + + +state 433 + methodheader : modifiers '<' boundedMethodParameters '>' type methoddeclarator throws . (111) + + . reduce 111 + + +state 434 + explicitconstructorinvocation : THIS '(' argumentlist ')' ';' . (137) + + . reduce 137 + + +state 435 + paralist : paralist ',' IDENTIFIER '<' paralist '>' . (36) + + . reduce 36 + + +state 436 + forstatement : FOR '(' ';' ';' ')' statement . (181) + + . reduce 181 + + +state 437 + forstatement : FOR '(' ';' ';' expression ')' . statement (180) + + FOR shift 155 + IF shift 156 + RETURN shift 157 + THIS shift 158 + WHILE shift 159 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '(' shift 173 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + block goto 180 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 196 + statement goto 447 + whilestatement goto 199 + forstatement goto 200 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 438 + forstatement : FOR '(' ';' expression ';' ')' . statement (179) + + FOR shift 155 + IF shift 156 + RETURN shift 157 + THIS shift 158 + WHILE shift 159 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '(' shift 173 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + block goto 180 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 196 + statement goto 448 + whilestatement goto 199 + forstatement goto 200 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 439 + forstatement : FOR '(' ';' expression ';' expression . ')' statement (177) + + ')' shift 449 + . error + + +state 440 + forstatement : FOR '(' expression ';' ';' ')' . statement (178) + + FOR shift 155 + IF shift 156 + RETURN shift 157 + THIS shift 158 + WHILE shift 159 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '(' shift 173 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + block goto 180 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 196 + statement goto 450 + whilestatement goto 199 + forstatement goto 200 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 441 + forstatement : FOR '(' expression ';' ';' expression . ')' statement (176) + + ')' shift 451 + . error + + +state 442 + forstatement : FOR '(' expression ';' expression ';' . expression ')' statement (174) + forstatement : FOR '(' expression ';' expression ';' . ')' statement (175) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + ')' shift 452 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 453 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + methodinvocation goto 248 + castexpression goto 249 + + +state 443 + ifthenstatement : IF '(' . expression ')' statement (171) + ifthenelsestatement : IF '(' . expression ')' statementnoshortif ELSE statement (172) + ifthenelsestatementnoshortif : IF '(' . expression ')' statementnoshortif ELSE statementnoshortif (200) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 454 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + methodinvocation goto 248 + castexpression goto 249 + + +state 444 + whilestatement : WHILE '(' . expression ')' statement (173) + whilestatementnoshortif : WHILE '(' . expression ')' statementnoshortif (201) + + NEW shift 220 + THIS shift 158 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + '(' shift 221 + '+' shift 222 + '-' shift 223 + '!' shift 224 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 226 + unaryexpressionnotplusminus goto 227 + unaryexpression goto 228 + multiplicativeexpression goto 229 + additiveexpression goto 230 + shiftexpression goto 231 + relationalexpression goto 232 + equalityexpression goto 233 + andexpression goto 234 + exclusiveorexpression goto 235 + inclusiveorexpression goto 236 + conditionalandexpression goto 237 + conditionalorexpression goto 238 + conditionalexpression goto 239 + assignmentexpression goto 240 + lambdaexpression goto 189 + expression goto 455 + preincrementexpression goto 242 + predecrementexpression goto 243 + postincrementexpression goto 244 + postdecrementexpression goto 245 + classinstancecreationexpression goto 246 + assignment goto 247 + lefthandside goto 206 + methodinvocation goto 248 + castexpression goto 249 + + +state 445 + ifthenelsestatement : IF '(' expression ')' statementnoshortif ELSE . statement (172) + + FOR shift 155 + IF shift 156 + RETURN shift 157 + THIS shift 158 + WHILE shift 159 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '(' shift 173 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + block goto 180 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 196 + statement goto 456 + whilestatement goto 199 + forstatement goto 200 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 446 + methodinvocation : primary '.' IDENTIFIER '(' argumentlist ')' . (224) + + . reduce 224 + + +state 447 + forstatement : FOR '(' ';' ';' expression ')' statement . (180) + + . reduce 180 + + +state 448 + forstatement : FOR '(' ';' expression ';' ')' statement . (179) + + . reduce 179 + + +state 449 + forstatement : FOR '(' ';' expression ';' expression ')' . statement (177) + + FOR shift 155 + IF shift 156 + RETURN shift 157 + THIS shift 158 + WHILE shift 159 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '(' shift 173 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + block goto 180 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 196 + statement goto 457 + whilestatement goto 199 + forstatement goto 200 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 450 + forstatement : FOR '(' expression ';' ';' ')' statement . (178) + + . reduce 178 + + +state 451 + forstatement : FOR '(' expression ';' ';' expression ')' . statement (176) + + FOR shift 155 + IF shift 156 + RETURN shift 157 + THIS shift 158 + WHILE shift 159 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '(' shift 173 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + block goto 180 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 196 + statement goto 458 + whilestatement goto 199 + forstatement goto 200 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 452 + forstatement : FOR '(' expression ';' expression ';' ')' . statement (175) + + FOR shift 155 + IF shift 156 + RETURN shift 157 + THIS shift 158 + WHILE shift 159 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '(' shift 173 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + block goto 180 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 196 + statement goto 459 + whilestatement goto 199 + forstatement goto 200 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 453 + forstatement : FOR '(' expression ';' expression ';' expression . ')' statement (174) + + ')' shift 460 + . error + + +state 454 + ifthenstatement : IF '(' expression . ')' statement (171) + ifthenelsestatement : IF '(' expression . ')' statementnoshortif ELSE statement (172) + ifthenelsestatementnoshortif : IF '(' expression . ')' statementnoshortif ELSE statementnoshortif (200) + + ')' shift 461 + . error + + +state 455 + whilestatement : WHILE '(' expression . ')' statement (173) + whilestatementnoshortif : WHILE '(' expression . ')' statementnoshortif (201) + + ')' shift 462 + . error + + +state 456 + ifthenelsestatement : IF '(' expression ')' statementnoshortif ELSE statement . (172) + + . reduce 172 + + +state 457 + forstatement : FOR '(' ';' expression ';' expression ')' statement . (177) + + . reduce 177 + + +state 458 + forstatement : FOR '(' expression ';' ';' expression ')' statement . (176) + + . reduce 176 + + +state 459 + forstatement : FOR '(' expression ';' expression ';' ')' statement . (175) + + . reduce 175 + + +state 460 + forstatement : FOR '(' expression ';' expression ';' expression ')' . statement (174) + + FOR shift 155 + IF shift 156 + RETURN shift 157 + THIS shift 158 + WHILE shift 159 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '(' shift 173 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + block goto 180 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 196 + statement goto 463 + whilestatement goto 199 + forstatement goto 200 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 461 + ifthenstatement : IF '(' expression ')' . statement (171) + ifthenelsestatement : IF '(' expression ')' . statementnoshortif ELSE statement (172) + ifthenelsestatementnoshortif : IF '(' expression ')' . statementnoshortif ELSE statementnoshortif (200) + + FOR shift 155 + IF shift 420 + RETURN shift 157 + THIS shift 158 + WHILE shift 421 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '(' shift 173 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + block goto 180 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 422 + statement goto 423 + statementnoshortif goto 464 + whilestatement goto 199 + forstatement goto 200 + whilestatementnoshortif goto 425 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + ifthenelsestatementnoshortif goto 426 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 462 + whilestatement : WHILE '(' expression ')' . statement (173) + whilestatementnoshortif : WHILE '(' expression ')' . statementnoshortif (201) + + FOR shift 155 + IF shift 420 + RETURN shift 157 + THIS shift 158 + WHILE shift 421 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '(' shift 173 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + block goto 180 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 422 + statement goto 427 + statementnoshortif goto 465 + whilestatement goto 199 + forstatement goto 200 + whilestatementnoshortif goto 425 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + ifthenelsestatementnoshortif goto 426 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 463 + forstatement : FOR '(' expression ';' expression ';' expression ')' statement . (174) + + . reduce 174 + + +state 464 + ifthenelsestatement : IF '(' expression ')' statementnoshortif . ELSE statement (172) + ifthenelsestatementnoshortif : IF '(' expression ')' statementnoshortif . ELSE statementnoshortif (200) + + ELSE shift 466 + . error + + +state 465 + whilestatementnoshortif : WHILE '(' expression ')' statementnoshortif . (201) + + . reduce 201 + + +state 466 + ifthenelsestatement : IF '(' expression ')' statementnoshortif ELSE . statement (172) + ifthenelsestatementnoshortif : IF '(' expression ')' statementnoshortif ELSE . statementnoshortif (200) + + FOR shift 155 + IF shift 420 + RETURN shift 157 + THIS shift 158 + WHILE shift 421 + INTLITERAL shift 160 + LONGLITERAL shift 161 + DOUBLELITERAL shift 162 + FLOATLITERAL shift 163 + BOOLLITERAL shift 164 + JNULL shift 165 + CHARLITERAL shift 166 + STRINGLITERAL shift 167 + IDENTIFIER shift 42 + INCREMENT shift 169 + DECREMENT shift 170 + ';' shift 171 + '{' shift 105 + '(' shift 173 + . error + + simplename goto 225 + qualifiedname goto 177 + name goto 178 + block goto 180 + lambdaexpressionparameter goto 184 + literal goto 185 + primarynonewarray goto 186 + primary goto 187 + postfixexpression goto 188 + lambdaexpression goto 189 + statementexpression goto 190 + preincrementexpression goto 191 + predecrementexpression goto 192 + postincrementexpression goto 193 + postdecrementexpression goto 194 + expressionstatement goto 195 + statementwithouttrailingsubstatement goto 422 + statement goto 456 + statementnoshortif goto 467 + whilestatement goto 199 + forstatement goto 200 + whilestatementnoshortif goto 425 + ifthenstatement goto 201 + ifthenelsestatement goto 202 + ifthenelsestatementnoshortif goto 426 + emptystatement goto 203 + returnstatement goto 204 + assignment goto 205 + lefthandside goto 206 + methodinvocation goto 207 + + +state 467 + ifthenelsestatementnoshortif : IF '(' expression ')' statementnoshortif ELSE statementnoshortif . (200) + + . reduce 200 Rules never reduced: @@ -7641,53 +8085,37 @@ Rules never reduced: importdeclarations : importdeclaration (3) importdeclarations : importdeclarations importdeclaration (4) importdeclaration : IMPORT importqualifiedname ';' (5) - importqualifiedname : name '.' IDENTIFIER (12) - importqualifiedname : name '.' '*' (13) - interfaceidentifier : IDENTIFIER (23) - interfaceidentifier : IDENTIFIER '<' boundedClassParameters '>' (24) - interfacedeclaration : INTERFACE interfaceidentifier interfacebody (27) - interfacedeclaration : modifiers INTERFACE interfaceidentifier interfacebody (28) - interfacedeclaration : INTERFACE interfaceidentifier extendsinterfaces interfacebody (29) - interfacedeclaration : modifiers INTERFACE interfaceidentifier extendsinterfaces interfacebody (30) - interfacebody : '{' '}' (47) - interfacebody : '{' interfacememberdeclarations '}' (48) - extendsinterfaces : EXTENDS interfacetype (49) - extendsinterfaces : extendsinterfaces ',' interfacetype (50) - interfacememberdeclarations : interfacememberdeclaration (60) - interfacememberdeclarations : interfacememberdeclarations interfacememberdeclaration (61) - interfacememberdeclaration : constantdeclaration (69) - interfacememberdeclaration : abstractmethoddeclaration (70) - constantdeclaration : modifiers type IDENTIFIER '=' expression ';' (76) - abstractmethoddeclaration : methodheader ';' (77) - variableinitializer : expression (153) + importqualifiedname : name '.' IDENTIFIER (13) + importqualifiedname : name '.' '*' (14) + variableinitializer : expression (154) -State 32 contains 1 shift/reduce conflict. -State 42 contains 1 shift/reduce conflict. -State 104 contains 1 shift/reduce conflict. -State 146 contains 1 shift/reduce conflict. -State 155 contains 1 shift/reduce conflict. -State 194 contains 2 shift/reduce conflicts. -State 197 contains 3 shift/reduce conflicts. -State 198 contains 2 shift/reduce conflicts. -State 200 contains 5 shift/reduce conflicts. -State 201 contains 2 shift/reduce conflicts. -State 202 contains 1 shift/reduce conflict. -State 203 contains 1 shift/reduce conflict. -State 204 contains 1 shift/reduce conflict. -State 205 contains 1 shift/reduce conflict. -State 206 contains 1 shift/reduce conflict. -State 246 contains 1 shift/reduce conflict. -State 340 contains 3 shift/reduce conflicts. -State 341 contains 3 shift/reduce conflicts. -State 347 contains 5 shift/reduce conflicts. -State 348 contains 5 shift/reduce conflicts. -State 349 contains 2 shift/reduce conflicts. -State 350 contains 1 shift/reduce conflict. -State 351 contains 1 shift/reduce conflict. -State 352 contains 1 shift/reduce conflict. -State 353 contains 1 shift/reduce conflict. +State 43 contains 1 shift/reduce conflict. +State 53 contains 1 shift/reduce conflict. +State 84 contains 1 shift/reduce conflict. +State 178 contains 1 shift/reduce conflict. +State 187 contains 1 shift/reduce conflict. +State 226 contains 2 shift/reduce conflicts. +State 229 contains 3 shift/reduce conflicts. +State 230 contains 2 shift/reduce conflicts. +State 232 contains 5 shift/reduce conflicts. +State 233 contains 2 shift/reduce conflicts. +State 234 contains 1 shift/reduce conflict. +State 235 contains 1 shift/reduce conflict. +State 236 contains 1 shift/reduce conflict. +State 237 contains 1 shift/reduce conflict. +State 238 contains 1 shift/reduce conflict. +State 279 contains 1 shift/reduce conflict. +State 374 contains 3 shift/reduce conflicts. +State 375 contains 3 shift/reduce conflicts. +State 381 contains 5 shift/reduce conflicts. +State 382 contains 5 shift/reduce conflicts. +State 383 contains 2 shift/reduce conflicts. +State 384 contains 1 shift/reduce conflict. +State 385 contains 1 shift/reduce conflict. +State 386 contains 1 shift/reduce conflict. +State 387 contains 1 shift/reduce conflict. 97 terminals, 116 nonterminals -277 grammar rules, 432 states +278 grammar rules, 468 states