diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCParser.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCParser.g index 1c9da0f3cda..0ee401193c4 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCParser.g +++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCParser.g @@ -25,6 +25,13 @@ $Import $End +-- Tokens used by GCC but not part of the C99 spec +$Terminals + + asm + +$End + -- Hook the extensions into the main grammar. $Rules diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/gnu/GNUExtensions.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/gnu/GNUExtensions.g index 2fde7e397bf..03b9362004e 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/gnu/GNUExtensions.g +++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/gnu/GNUExtensions.g @@ -15,8 +15,15 @@ $Terminals + -- additional GCC only tokens as defined in IGCCToken + + typeof + __alignof__ + MAX + MIN __attribute__ __declspec + $End @@ -29,6 +36,7 @@ $Rules attribute_or_decl_specifier ::= attribute_specifier | decl_specifier + | asm_label attribute_or_decl_specifier_seq ::= attribute_or_decl_specifier @@ -80,4 +88,17 @@ extended_decl_modifier | 'identifier' '(' ')' | 'identifier' '(' 'identifier' ')' -$End \ No newline at end of file + +------------------------------------------------------------------------------------ +-- Other stuff +------------------------------------------------------------------------------------ + +asm_label + ::= 'asm' '(' 'stringlit' ')' + +asm_label_opt + ::= asm_label + | $empty + +$End + diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPBuildASTParserAction.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPBuildASTParserAction.java index 637ce072bb4..1860a180329 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPBuildASTParserAction.java +++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPBuildASTParserAction.java @@ -1136,7 +1136,6 @@ public class CPPBuildASTParserAction extends BuildASTParserAction { // * declaration_specifiers ::= type_name_declaration_specifiers // */ public void consumeDeclarationSpecifiersTypeName() { - System.out.println("consumeDeclarationSpecifiersTypeName"); List topScope = astStack.closeScope(); // There's a name somewhere on the stack, find it IASTName typeName = findFirstAndRemove(topScope, IASTName.class); diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gcc/DOMToGCCTokenMap.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gcc/DOMToGCCTokenMap.java index af1ddb2fe83..83822b5786c 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gcc/DOMToGCCTokenMap.java +++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gcc/DOMToGCCTokenMap.java @@ -138,7 +138,16 @@ public final class DOMToGCCTokenMap implements IDOMTokenMap { case tEOC : return TK_EndOfCompletion; case tEND_OF_INPUT : return TK_EOF_TOKEN; + + case IGCCToken.t_typeof : return TK_typeof; + case IGCCToken.t___alignof__ : return TK___alignof__; + case IGCCToken.tMAX : return TK_MAX; + case IGCCToken.tMIN : return TK_MIN; case IGCCToken.t__attribute__ : return TK___attribute__; + case IGCCToken.t__declspec : return TK___declspec; + + case t_asm: return TK_asm; + default: assert false : "token not recognized by the GCC parser: " + token.getType(); //$NON-NLS-1$ diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gpp/DOMToGPPTokenMap.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gpp/DOMToGPPTokenMap.java index fd11952c827..2a606e21e0f 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gpp/DOMToGPPTokenMap.java +++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/gpp/DOMToGPPTokenMap.java @@ -169,8 +169,13 @@ public class DOMToGPPTokenMap implements IDOMTokenMap { case tEOC : return TK_EndOfCompletion; case tEND_OF_INPUT : return TK_EOF_TOKEN; + case IGCCToken.t_typeof : return TK_typeof; + case IGCCToken.t___alignof__ : return TK___alignof__; + case IGCCToken.tMAX : return TK_MAX; + case IGCCToken.tMIN : return TK_MIN; case IGCCToken.t__attribute__ : return TK___attribute__; - + case IGCCToken.t__declspec : return TK___declspec; + default: assert false : "token not recognized by the GPP parser: " + token.getType(); //$NON-NLS-1$ return TK_Invalid; diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParser.java index f65f83b055b..4c722f2ebd1 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParser.java +++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParser.java @@ -1257,9 +1257,9 @@ public GCCParser(String[] mapFrom) { // constructor } // - // Rule 330: attribute_parameter ::= assignment_expression + // Rule 331: attribute_parameter ::= assignment_expression // - case 330: { action. consumeIgnore(); break; + case 331: { action. consumeIgnore(); break; } diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParserprs.java index 8e763dbedbf..fa8185c63a7 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParserprs.java +++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParserprs.java @@ -26,7 +26,7 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym 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 }; }; public final static byte isKeyword[] = IsKeyword.isKeyword; @@ -65,241 +65,256 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym 4,5,1,7,3,0,0,1,1,3, 3,4,1,1,2,3,2,3,2,1, 0,1,2,1,1,1,1,1,2,4, - 3,6,2,4,1,1,1,2,6,3, - 1,3,1,4,0,1,1,1,3,1, - 0,4,1,0,1,2,1,3,4,1, - 2,2,3,2,2,3,1,1,1,1, - 1,-89,-2,0,0,0,0,0,0,0, + 3,6,2,4,1,1,1,1,2,6, + 3,1,3,1,4,0,1,1,1,3, + 1,0,4,1,0,1,2,1,3,4, + 4,1,0,1,2,2,3,2,2,3, + 1,1,1,1,1,-92,-29,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-40,-43,0,0,-58,0,-99, - 0,0,-290,-167,0,0,0,0,0,0, - 0,0,-74,0,-25,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-6,-25, + 0,0,-2,-102,0,0,0,-214,-297,0, + 0,0,0,0,0,0,0,-45,0,-8, + -42,0,0,0,0,0,0,0,-12,0, + 0,0,0,0,0,-3,0,-9,0,0, + 0,0,0,-27,0,0,0,0,0,0, + 0,0,0,0,0,0,-31,-26,0,0, + 0,0,0,0,-10,0,0,-269,0,0, + 0,0,0,0,-58,-131,-105,0,0,0, + 0,0,-22,0,0,0,0,0,0,0, + 0,0,0,-157,0,-109,0,0,0,0, + 0,0,0,-313,0,0,0,-23,0,-106, + 0,0,0,0,0,-33,0,-28,0,0, + 0,0,0,0,0,0,-219,0,0,0, + 0,0,0,0,0,0,-30,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -3,0,0,0,0,0,-154,0,0,0, + 0,0,0,0,0,0,-166,0,0,0, + 0,0,0,0,-271,0,0,0,0,0, + 0,0,0,0,-237,-34,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -6,-100,0,0,0,0,0,0,0,0, - 0,-24,0,0,0,0,-45,-207,0,0, - 0,0,0,0,0,0,0,-8,0,0, - 0,0,0,0,0,0,0,-111,0,0, - 0,0,0,0,0,-27,0,-106,0,0, - 0,0,0,0,0,0,0,0,0,-189, - 0,0,0,0,0,0,0,0,-29,-9, - 0,0,0,-268,0,0,0,0,0,0, - 0,0,0,-31,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-303, + 0,-46,-306,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,-44,0,0,0,0,0,0,0,0, - 0,0,-128,-198,0,0,0,0,0,0, - 0,0,0,0,0,-28,-84,0,-63,-21, - 0,-4,0,-22,0,0,0,0,0,0, - 0,0,0,-196,0,0,0,0,0,0, - 0,0,0,0,0,-32,0,0,-294,0, - 0,0,0,0,-163,0,0,0,0,-60, - 0,0,0,0,0,0,0,-36,0,-48, - 0,-30,0,0,-33,0,0,0,0,0, + 0,0,0,0,0,-11,0,-114,0,0, 0,0,0,0,0,0,0,0,0,0, - -306,0,0,0,0,0,0,0,0,0, - 0,0,-19,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-65,0,0,0, - 0,0,0,0,0,0,0,-38,0,0, - 0,0,0,0,0,0,0,0,-88,0, - -206,0,0,0,0,0,0,0,0,0, - 0,0,-49,0,0,0,0,0,-77,0, - 0,0,-71,0,0,0,0,0,0,0, + -35,0,0,-133,0,-293,0,0,0,0, + 0,0,0,0,0,0,0,-61,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-156,0,0,0, - 0,0,0,0,0,0,-42,0,-54,0, - 0,0,0,0,0,0,0,0,-160,0, - -208,0,0,0,0,0,0,0,0,0, - 0,-75,0,0,0,0,0,0,0,0, - 0,-51,-318,0,0,0,0,0,0,0, - 0,0,-41,0,-39,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-101,0, - 0,0,0,0,0,0,0,0,-55,-56, + 0,0,0,-43,0,0,0,-38,0,0, + 0,0,0,-63,0,-50,-309,0,0,0, + 0,0,0,0,0,0,0,0,-80,0, + 0,0,0,0,0,0,0,0,0,-87, + 0,0,0,-68,0,0,0,0,0,0, + 0,0,0,-65,0,0,0,0,0,0, + 0,0,0,0,0,0,-51,-77,0,0, + -53,-210,-57,0,0,0,0,0,0,0, + 0,-62,-55,-60,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-40,-74,0, + 0,0,0,0,0,0,0,0,-194,0, 0,0,0,0,0,0,0,0,0,0, - -64,0,-200,0,0,0,0,0,0,0, - 0,0,0,0,-26,0,0,-59,0,0, - -97,0,-61,0,0,-139,-76,0,0,0, - 0,0,0,0,0,-264,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-171, + 0,0,-56,-159,0,0,0,0,0,0, + 0,0,0,0,-173,-145,0,0,0,0, + 0,0,0,0,0,0,0,-64,-209,0, + 0,0,0,0,0,0,0,0,-4,0, + 0,-81,0,0,0,0,0,0,-59,-321, + 0,0,0,0,0,0,0,0,0,-99, 0,0,0,0,0,0,0,0,0,0, - -62,0,0,0,0,0,0,0,0,0, - 0,-20,0,-275,0,0,0,0,0,0, - 0,0,0,-96,0,-83,0,0,0,0, - 0,0,0,0,0,-78,0,-79,0,-23, - 0,-234,0,-81,0,0,0,0,-34,0, - 0,0,-90,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-82,0,0,-186, - 0,-212,0,0,0,-113,0,0,0,0, - 0,0,0,0,0,0,0,0,-86,0, - 0,0,0,0,0,0,0,0,-142,0, - -102,0,0,0,0,0,0,0,0,0, - -201,-92,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-85,0,0,0, - 0,0,0,0,0,0,-87,-114,0,0, - 0,0,0,0,0,-91,0,0,-173,0, - 0,0,0,0,0,0,0,0,-98,0, + 0,0,0,0,0,0,-101,0,-24,0, + -243,0,0,0,0,0,0,0,0,0, + 0,0,-211,0,0,0,0,0,0,0, + 0,0,-82,-172,0,0,0,0,0,0, + 0,0,0,0,0,-234,0,0,-84,-164, + 0,0,0,0,0,0,-91,0,0,0, + -21,0,-162,0,0,0,-104,0,0,0, + 0,0,0,0,0,0,-135,0,0,0, + 0,0,0,0,0,0,0,0,0,-14, + -85,-93,0,-88,0,0,0,0,0,0, + 0,0,0,-95,0,0,0,0,0,0, + -90,0,0,0,0,0,0,-142,0,0, + 0,0,0,0,0,0,0,0,-44,0, 0,0,0,0,0,0,0,0,0,0, - -126,-155,-174,0,0,0,0,0,0,0, - 0,0,-132,0,-138,0,0,0,0,0, - 0,0,0,0,0,0,-175,0,0,0, - 0,0,0,0,0,0,0,-157,-140,0, - 0,0,0,0,0,0,0,0,-158,0, - -176,0,0,0,0,0,0,0,0,0, - 0,0,-168,0,0,0,0,0,0,0, - 0,0,-159,-170,-177,0,0,0,0,0, - 0,0,0,0,-184,-185,0,0,0,0, - 0,0,0,0,0,0,-217,-190,-178,0, + 0,0,-174,0,0,0,0,0,0,0, + 0,0,0,-67,0,-94,0,0,0,0, + 0,0,0,0,0,-161,0,-278,0,0, + 0,0,0,0,0,0,0,0,-267,0, 0,0,0,0,0,0,0,0,0,0, - -93,0,0,0,0,0,0,0,0,0, - 0,0,-179,0,0,0,0,0,0,0, - 0,0,-218,0,-220,0,0,0,0,0, - 0,0,0,0,-221,0,-180,0,0,0, - 0,0,0,0,0,0,0,-223,-224,0, - 0,0,0,0,0,0,0,0,0,-228, - -181,0,0,0,0,0,0,0,0,0, - -231,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-182,0,0,0,0,0, - 0,0,0,0,-244,-245,-246,0,0,0, - 0,0,0,0,0,0,-232,-239,-183,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -276,-104,-227,0,0,0,0,0,0,0, - 0,0,0,-191,0,0,0,0,0,0, - 0,0,0,0,0,0,-233,0,0,0, - 0,0,0,0,0,0,0,-115,-269,0, - 0,0,0,0,0,0,0,0,-237,0, - 0,0,0,0,0,0,0,0,-265,-247, - 0,0,0,0,0,0,0,0,0,0, - -282,-292,-238,0,0,0,0,0,0,0, - 0,0,0,-283,0,0,0,0,0,0, - 0,0,0,0,-284,0,-278,0,0,0, - 0,0,0,0,0,0,0,-277,-116,0, - 0,0,0,0,0,0,0,0,-300,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -117,0,-309,-118,0,0,0,0,0,0, - 0,0,-285,0,0,0,0,0,0,0, - 0,0,0,0,-321,-166,0,0,0,0, - 0,0,0,0,-161,0,0,0,0,0, - 0,0,0,0,0,0,-267,-53,-119,-297, - -213,-243,0,-37,0,0,0,0,0,-16, - 0,-120,0,0,0,0,-18,-121,-310,0, - 0,0,0,0,-122,0,0,0,0,0, - 0,0,0,-1,0,0,-123,-172,-69,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-304,0,0,-162,0,0,0, - 0,0,0,0,0,0,0,0,-7,0, - 0,0,0,-52,0,0,-13,0,0,0, - 0,0,0,0,0,0,0,0,0,-235, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-317,-296,0,-308,0,0,0, - 0,0,0,0,0,0,-73,0,0,0, - -305,0,0,0,0,0,0,0,0,-127, - 0,-124,-125,0,0,-129,0,-133,0,0, - 0,0,-135,0,0,0,0,0,0,0, - -130,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-136,0,0, - -311,0,0,0,0,0,-146,0,0,0, - 0,-107,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-94,-141,0,0,0, - -219,0,0,0,0,0,0,0,0,0, - -150,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-313,0,0,0,-293, - -137,0,-316,-214,0,-240,0,0,0,0, - 0,0,0,0,0,0,-320,0,0,0, - -143,0,-131,0,0,0,0,0,-319,-302, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-148,0,0,-151,0,0,0,0, - -225,0,0,0,0,-199,-323,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -152,0,0,0,0,0,-324,0,0,0, - 0,-153,0,0,-230,0,0,0,0,0, - 0,0,0,-164,0,0,0,-165,-325,0, - -222,-108,0,0,0,0,0,0,0,-109, - 0,0,0,0,0,0,0,0,0,0, - -236,-68,0,0,-248,0,-249,0,0,0, - 0,0,0,0,0,-209,-250,0,0,0, - 0,0,0,0,0,0,-251,0,0,0, - 0,0,0,-252,0,0,0,-66,0,-253, - -254,-255,-315,-256,0,0,0,0,-257,-258, - -259,0,0,0,0,-211,0,0,0,0, - 0,0,0,0,0,0,0,-260,0,0, - 0,0,0,0,0,-299,0,-261,-262,-263, - -279,-288,0,-289,-298,0,0,0,-46,0, - 0,-307,0,-280,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-47,0,0,0,-216,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -144,0,-50,0,0,0,0,0,0,-72, - -105,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-80,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-147,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-35,0,0, - 0,0,-149,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-226,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -271,0,0,0,0,0,0,0,0,0, + 0,-96,-89,0,0,0,0,0,0,0, + 0,0,0,-163,0,-47,0,0,0,0, + 0,0,0,0,0,0,-176,-78,0,0, + 0,0,0,0,0,0,0,-107,0,-79, 0,0,0,0,0,0,0,0,0,-215, - 0,0,0,0,-273,0,0,0,0,0, + 0,-177,0,0,0,0,0,0,0,0, + 0,0,0,-118,-129,0,0,0,0,0, + 0,0,0,0,-216,-221,0,0,-178,-86, + 0,0,0,0,0,0,0,0,0,-158, + 0,-141,0,0,0,0,0,0,0,0, + 0,0,0,-179,0,0,0,0,0,0, + 0,0,0,0,0,-143,-160,0,0,0, + 0,0,0,0,0,0,0,-171,-180,0, + 0,0,0,0,0,0,0,0,0,-187, + 0,-188,0,0,0,0,0,0,0,0, + 0,0,-220,-181,0,0,0,0,0,0, + 0,0,0,0,-224,0,-223,0,0,0, + 0,0,0,0,0,0,-235,-226,-182,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-70,0,0,0,0,-274,0, + -227,-231,0,0,0,0,0,0,0,0, + 0,0,0,-183,0,0,0,0,0,0, + 0,0,0,-119,0,0,-242,0,0,0, + 0,0,0,0,0,0,0,-247,-184,0, + 0,0,0,0,0,0,0,0,-120,-248, + -250,-279,0,0,0,0,0,0,0,0, + 0,0,-249,-185,0,0,0,0,0,0, + 0,0,0,0,0,-192,-193,0,0,0, + 0,0,0,0,0,0,0,-268,-186,0, + 0,0,0,0,0,0,0,0,0,-285, + -272,0,0,0,0,0,0,0,0,0, + 0,0,-296,-230,0,0,0,0,0,0, + 0,0,0,0,-121,-280,-286,0,0,0, + 0,0,0,0,0,0,-287,-122,-236,0, + 0,0,0,0,0,0,0,0,0,0, + -288,0,0,0,0,0,0,0,0,0, + 0,-240,-123,0,0,0,0,0,0,0, + 0,0,0,-299,0,0,0,0,0,0, + 0,0,0,0,0,0,-241,0,0,0, + 0,0,0,0,0,0,0,0,-320,-124, + 0,0,0,0,0,0,0,0,0,-270, + -295,-110,0,0,0,0,0,0,0,0, + 0,0,0,-212,-316,0,0,0,0,0, + 0,0,0,-125,0,-300,0,0,0,0, + 0,0,-311,0,0,0,-116,0,0,0, + 0,0,0,0,0,0,0,-170,0,0, + -199,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-281,-126,0,0,0, + 0,0,0,0,0,-307,-314,0,0,0, + 0,0,0,0,0,0,0,0,-303,-127, + 0,0,0,0,0,0,0,0,-326,0, + 0,-128,0,0,0,0,0,0,0,0, + 0,-312,0,0,0,0,0,0,0,0, + 0,-132,0,-136,0,0,0,0,0,0, + 0,0,0,0,-324,-319,0,0,0,0, + 0,0,0,0,-138,-139,-308,0,0,0, + 0,0,0,0,0,0,0,-140,-146,-175, + -200,-19,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-153,0,-111,-151,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-7,-117,0,0,0,0, + 0,0,0,-323,0,0,0,0,0,0, + 0,0,-154,-155,-322,0,0,0,0,0, + 0,0,0,-238,0,0,0,-156,0,-167, + 0,0,-233,0,-327,-168,0,0,0,0, + 0,-328,0,0,0,0,-225,-239,0,0, + 0,0,-251,0,0,-252,-253,-54,0,0, + -48,0,0,0,0,0,0,0,0,-254, + 0,0,0,0,-255,0,0,0,0,0, + 0,-256,0,0,0,0,0,0,-257,0, + 0,-258,-71,0,0,0,0,0,0,0, + 0,-259,0,0,0,0,-260,-261,-262,-203, + 0,0,0,0,0,0,0,0,0,0, + -263,-76,0,0,0,0,0,0,0,-264, + -265,0,-266,-282,-291,0,0,0,0,0, + -292,-130,0,0,0,-301,0,-147,0,0, + 0,0,-310,0,0,0,0,-17,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-169,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-149,0,0,0, + -13,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-217,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-73,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,-314,0,0,0,0,0,-5,0, - 0,-11,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-322,0,0,0, + 0,0,0,0,0,-228,0,0,0,-112, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-10,0,0,0,0, - -326,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-266, + 0,0,0,0,-70,0,-100,0,0,0, + 0,0,0,0,0,0,0,0,0,-302, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-148,0,0,-283, + 0,0,0,-246,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,-15, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-98,0,0, + 0,-49,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,-66,-195, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-287,0,0,-286,0,0,0, + 0,0,0,0,0,0,-75,0,-165,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-12,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-197,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-83,0,0,-20,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-150,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-32,0,-152,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,-229,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-36,0,-274,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,-276,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + -39,0,-277,0,0,0,0,0,0,0, + 0,0,0,0,0,-189,0,0,0,0, + 0,0,0,0,0,0,0,0,-213,0, + 0,-317,0,0,0,0,-290,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,-15,0,0,0,-17,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-202, + 0,0,0,0,0,-325,0,0,0,0, + 0,0,0,0,-201,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-203,0,0,0, + 0,-329,0,0,0,0,0,0,0,-289, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-5,0,0, + 0,0,0,0,0,-16,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-275,0,0,-222,0,0,-18,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-204,0,0,0,0,0,0,0, - 0,0,-95,0,-205,0,0,0,0,0, - 0,0,0,0,0,0,-110,0,0,0, - 0,0,0,0,-187,0,-188,0,0,-112, - 0,0,0,0,0,0,0,-134,0,0, + 0,-1,0,0,0,0,0,0,0,0, + 0,0,0,-204,0,0,0,0,0,0, + 0,0,0,0,0,-37,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-205, 0,0,0,0,0,0,0,0,0,0, - -229,0,0,0,0,0,0,0,0,0, - -193,0,0,0,0,0,0,0,-194,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-195,0,0,0,0,0, - 0,0,-241,0,0,0,0,0,0,0, - -242,0,0,0,-14,0,-103,0,-57,0, - 0,0,0,-169,0,0,0,0,0,0, - 0,-291,0,0,-67,0,0,-281,0,0, - 0,-270,0,0,0,0,0,0,0,0, - 0,0,0,0,-295,0,0,0,0,0, - 0,0,0,0,0,-312,0,0,-301,0, - 0,0,0,0,-145,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-192, - 0,0,-210,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-272,0, + 0,0,-206,0,0,0,0,0,0,0, + 0,0,0,0,0,-207,0,0,0,0, + 0,0,0,0,0,0,0,0,-208,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-41,0,0,0,0,0,-52,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-103,0,0,0,0,0,0,0, + 0,0,0,-202,0,0,0,0,0,0, + 0,0,-218,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-108,0,0, + -245,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-113,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-144,0,-190,0,0,-115, + 0,0,0,0,0,0,0,0,-137,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-191, + 0,-196,0,0,0,0,0,0,0,0, + 0,-232,0,0,-69,0,-197,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-198,0,0,0,0,0,0,0, + 0,0,0,0,0,-284,0,-244,0,0, + 0,0,0,0,0,0,0,0,0,0, + -294,0,0,-273,0,0,-304,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-72,0,0,0, + -298,0,0,0,-97,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-134,0,-315,0,0,0, + 0,0,0,-305,0,0,0,0,0,0, + 0,0,-318,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,0,0,0,0,0, - 0,0,0,0,0 + 0,0,0,0 }; }; public final static short baseCheck[] = BaseCheck.baseCheck; @@ -309,281 +324,298 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface BaseAction { public final static char baseAction[] = { - 114,1,47,47,24,24,49,49,22,22, + 115,1,48,48,24,24,50,50,23,23, 2,2,2,2,3,3,3,4,4,5, - 5,5,5,5,5,5,5,72,72,95, - 95,6,6,6,6,6,6,6,6,6, + 5,5,5,5,5,5,5,73,73,96, + 96,6,6,6,6,6,6,6,6,6, 6,6,7,7,8,8,8,8,9,9, - 9,13,13,13,14,14,14,14,14,15, - 15,15,16,16,17,17,18,18,19,19, - 20,20,21,21,25,25,25,25,25,25, - 25,25,25,25,25,25,36,31,23,115, - 115,97,97,58,37,37,37,37,37,37, - 37,38,38,38,32,32,98,98,73,73, - 39,39,40,40,40,65,65,41,41,41, - 41,42,42,42,42,42,52,52,28,28, - 28,28,28,53,53,53,87,87,82,82, - 82,82,83,83,83,84,84,84,85,85, - 85,86,86,86,99,99,88,88,89,54, - 56,56,56,56,56,66,68,68,68,68, - 68,68,68,68,68,68,68,68,77,77, - 27,27,74,74,116,117,78,78,75,75, - 75,90,100,100,101,101,91,91,91,59, - 118,118,102,92,92,92,76,76,119,103, - 103,104,104,93,93,29,30,30,30,55, - 50,50,43,43,43,43,33,33,34,44, - 44,45,35,35,105,105,46,121,121,120, - 120,51,51,51,51,51,51,51,51,51, - 106,57,57,57,57,48,79,79,69,69, - 69,70,70,60,60,122,122,81,81,80, - 80,80,61,61,61,62,63,63,63,64, - 64,64,64,67,67,67,71,123,96,96, - 96,96,94,124,125,125,126,126,127,127, - 114,114,128,128,107,107,107,107,129,129, - 108,108,108,109,109,10,10,26,26,11, - 11,130,130,110,110,110,111,111,131,131, - 112,112,12,132,132,133,133,113,113,113, - 53,89,89,89,102,102,102,119,116,117, - 48,90,307,579,14,19,15,1338,1302,44, - 1409,1444,340,315,316,1441,1502,1489,1515,1508, - 1622,1527,1623,74,1150,168,2525,91,168,2403, - 1292,134,215,1470,1337,14,19,15,1338,42, - 44,1409,1444,901,856,1188,1441,1502,1489,1515, - 1508,1622,1527,1623,73,136,133,135,159,256, - 215,1050,653,257,215,124,87,1343,138,320, - 165,340,315,316,1075,229,142,145,148,151, - 2182,341,1557,553,1559,2216,2284,2332,2336,1507, - 134,215,384,1564,574,226,234,435,1470,1766, - 14,19,15,1338,42,44,1409,1444,409,384, - 1620,1441,1502,1891,136,133,135,159,1269,127, - 14,19,15,1338,42,35,1121,138,1512,165, - 14,19,15,1338,40,142,145,148,151,2182, - 1672,313,261,1559,2216,2284,2332,2336,1507,1626, - 608,1061,1626,2509,1407,599,14,19,15,1338, - 1302,44,1409,1444,1626,248,431,1441,1502,1489, - 1515,1508,1622,1527,1623,74,189,322,1036,283, - 1428,599,14,19,15,1338,1302,44,1409,1444, - 311,188,341,1441,1502,1489,1515,1508,1622,1527, - 1623,74,1123,1110,1470,283,14,19,15,1338, - 42,44,1857,340,315,316,1341,384,1667,685, - 863,288,901,930,1061,1628,318,315,316,317, - 315,316,134,215,1470,23,14,19,15,1338, - 42,44,1409,1845,126,1494,1304,288,289,543, - 1720,1628,374,226,231,1687,136,133,135,159, - 168,851,221,793,223,225,104,853,463,138, - 106,165,1609,848,289,1626,1723,142,145,148, - 151,2182,318,315,316,1559,2216,2284,2332,2336, - 1507,1248,599,14,19,15,1338,1302,44,1409, - 1444,310,190,1303,1441,1502,1489,1515,1508,1622, - 1527,1623,74,317,315,316,283,1206,2507,14, - 19,15,1338,1302,44,1409,1444,1277,990,1494, - 1441,1502,1489,1515,1508,1622,1527,1623,74,901, - 1701,1470,991,14,19,15,1338,42,44,1409, - 1444,618,227,518,1441,1502,1489,1890,290,1626, - 2048,126,1628,1365,241,14,19,15,1338,1302, - 44,1409,1444,1932,1509,294,1441,1502,1489,1515, - 1508,1622,1527,1623,74,291,1099,1554,283,14, - 19,15,1338,1302,44,1409,1444,1290,1878,990, - 1441,1502,1489,1515,1508,1622,1527,1623,74,901, - 1805,1470,330,14,19,15,1338,42,44,1409, - 1444,233,1211,332,1441,1502,1489,1515,1508,1908, - 157,197,1120,1449,1628,14,19,15,1338,1302, - 44,1409,1444,670,123,1303,1441,1502,1489,1515, - 1508,1622,1527,1623,74,317,315,316,283,1491, - 2514,14,19,15,1338,1302,44,1409,1444,1141, - 230,1494,1441,1502,1489,1515,1508,1622,1527,1623, - 74,1290,432,1470,1134,14,19,15,1338,42, - 44,1409,1444,618,230,44,1441,1874,729,328, - 292,1656,569,790,1628,233,1470,1211,14,19, - 15,1338,1302,44,1409,1444,1290,2522,1230,1441, - 1502,1489,1515,1508,1622,1527,1623,74,1814,122, - 1227,91,14,19,15,1338,1302,44,1409,1444, - 280,1036,380,1441,1502,1489,1515,1508,1622,1527, - 1623,74,338,795,1554,1278,14,19,15,1338, - 1302,44,1409,1444,168,1547,1211,1441,1502,1489, - 1515,1508,1622,1527,1623,74,1431,242,1452,330, - 346,1983,1626,336,1576,374,226,231,111,856, - 317,315,316,1591,211,220,793,223,225,318, - 315,316,678,1766,605,1818,1953,1664,335,1814, - 903,2501,1410,374,226,703,1533,1062,14,19, - 15,1338,33,220,793,223,782,749,820,1470, - 1929,14,19,15,1338,42,44,1409,1444,168, - 856,1660,1441,1502,1489,1515,1508,1622,1527,1623, - 93,1470,986,14,19,15,1338,42,44,1409, - 1444,276,87,278,1441,1880,329,61,154,620, - 1205,269,962,1491,274,212,338,501,1533,447, - 14,19,15,1338,32,542,1722,1763,243,1470, - 268,14,19,15,1338,1302,44,1409,1444,1070, - 1466,375,1441,1502,1489,1515,1508,1622,1527,1623, - 74,990,990,1470,85,14,19,15,1338,1302, - 44,1409,1444,168,1157,1211,1441,1502,1489,1515, - 1508,1622,1527,1623,74,232,319,1470,84,14, - 19,15,1338,1302,44,1409,1444,125,990,1211, - 1441,1502,1489,1515,1508,1622,1527,1623,74,168, - 2451,1470,83,14,19,15,1338,1302,44,1409, - 1444,121,339,1617,1441,1502,1489,1515,1508,1622, - 1527,1623,74,1274,1660,1470,82,14,19,15, - 1338,1302,44,1409,1444,990,990,236,1441,1502, - 1489,1515,1508,1622,1527,1623,74,1274,1672,1470, - 81,14,19,15,1338,1302,44,1409,1444,2493, - 16,899,1441,1502,1489,1515,1508,1622,1527,1623, - 74,245,182,1470,80,14,19,15,1338,1302, - 44,1409,1444,168,504,1211,1441,1502,1489,1515, - 1508,1622,1527,1623,74,990,285,1470,79,14, - 19,15,1338,1302,44,1409,1444,2532,990,990, - 1441,1502,1489,1515,1508,1622,1527,1623,74,2101, - 1621,1470,78,14,19,15,1338,1302,44,1409, - 1444,1687,2125,2149,1441,1502,1489,1515,1508,1622, - 1527,1623,74,22,324,1470,77,14,19,15, - 1338,1302,44,1409,1444,990,990,990,1441,1502, - 1489,1515,1508,1622,1527,1623,74,1274,1660,1470, - 76,14,19,15,1338,1302,44,1409,1444,1922, - 1924,21,1441,1502,1489,1515,1508,1622,1527,1623, - 74,1274,1496,1470,75,14,19,15,1338,1302, - 44,1409,1444,1371,1679,856,1441,1502,1489,1515, - 1508,1622,1527,1623,74,244,206,1470,92,14, - 19,15,1338,42,44,1409,1444,89,1606,1211, - 1441,1502,1489,1515,1508,1622,1527,1623,93,1470, - 183,14,19,15,1338,1302,44,1409,1444,990, - 1660,2545,1441,1502,1489,1515,1508,1622,1527,1623, - 74,1274,990,1470,1384,14,19,15,1338,1302, - 44,1409,1444,275,1660,214,1441,1502,1489,1515, - 1508,1622,1527,1623,74,1660,281,1470,1395,14, - 19,15,1338,42,44,1409,1444,20,1517,942, - 1441,1502,1489,1515,1508,1622,1527,1623,93,1470, - 207,14,19,15,1338,42,44,1409,1444,1267, - 196,246,1441,1502,1489,1515,1508,1622,1527,1623, - 93,818,247,1470,1659,14,19,15,1338,42, - 44,1409,1444,168,530,204,1441,1502,1489,1515, - 1508,1622,1527,1623,93,1470,1292,14,19,15, - 1338,42,44,1409,1444,646,553,205,1441,1502, - 1489,1515,1508,1622,1527,1623,93,602,1343,688, - 990,796,948,2264,1625,256,215,317,315,316, - 762,1749,488,199,318,315,316,1110,107,585, - 317,315,316,1494,1716,1647,279,340,315,316, - 374,226,231,1819,367,411,939,447,1340,1641, - 221,793,223,225,759,853,134,215,276,318, - 315,316,277,276,990,1580,306,1656,271,962, - 1491,274,572,269,962,1491,274,257,215,1149, - 137,133,135,159,187,352,195,552,282,340, - 315,316,1359,139,1814,165,305,317,315,316, - 1368,143,146,149,152,2182,110,86,134,215, - 625,1027,689,622,310,1211,95,1626,321,1036, - 916,108,94,96,97,98,99,1,352,257, - 215,1274,141,133,135,159,109,2556,943,596, - 342,2120,331,471,297,140,840,165,1126,110, - 86,302,304,1607,1027,689,295,106,353,95, - 211,1029,553,916,108,94,96,97,98,99, - 1241,1818,2179,374,226,231,314,499,1686,109, - 1594,990,1607,220,793,223,225,247,352,689, - 265,276,1470,312,14,19,15,1338,42,39, - 107,269,962,1491,274,2197,1650,1592,352,110, - 86,1592,856,309,1027,689,318,315,316,95, - 266,346,795,916,108,94,96,97,98,99, - 87,317,315,316,87,689,1211,284,115,109, - 1712,63,115,1712,770,2240,1269,1953,14,19, - 15,1338,42,35,374,226,231,1626,117,1691, - 106,680,263,1671,220,793,223,225,279,1660, - 1703,1929,1195,318,315,316,1339,374,226,231, - 318,315,316,864,299,1771,908,220,793,223, - 225,125,352,249,678,276,1470,990,14,19, - 15,1338,42,44,1867,269,962,1491,274,154, - 620,1295,1611,110,86,1797,296,1274,1027,689, - 447,2221,1326,95,1359,375,795,916,108,94, - 96,97,98,99,706,317,315,316,1700,1660, - 105,1726,1470,109,14,19,15,1338,42,38, - 1470,1934,14,19,15,1338,42,37,374,226, - 231,290,346,795,107,1680,26,1683,220,793, - 223,225,317,315,316,1921,1470,1112,14,19, - 15,1338,42,44,1409,1444,298,1615,1953,1441, - 1502,1489,1515,1918,1074,374,226,231,315,553, - 1113,1053,1473,1706,1634,220,793,223,225,1640, - 1721,1642,1929,318,315,316,1470,2528,14,19, - 15,1338,42,44,1409,1444,1620,200,1253,1441, - 1502,1489,1515,1508,1622,1920,489,795,1515,1068, - 1709,1432,1717,1408,1729,1713,317,315,316,1633, - 155,620,1411,2741,375,795,2741,2741,261,317, - 315,316,1934,2741,318,315,316,1061,1626,374, - 226,231,2741,346,795,1529,2741,1291,553,220, - 793,223,225,318,315,316,1921,374,226,231, - 2741,2741,2741,2741,2741,2741,2741,220,793,223, - 225,168,856,1303,1921,1620,374,226,231,2741, - 685,168,352,317,315,316,220,793,223,225, - 317,315,316,2144,87,497,856,2741,2528,1494, - 2741,2741,1218,2741,87,2741,1494,262,201,199, - 2741,2741,1146,374,226,1658,2559,110,86,581, - 856,618,1027,221,793,223,1633,95,853,2741, - 1990,916,1741,94,96,97,98,99,685,2741, - 960,110,86,624,856,2741,1027,2741,317,315, - 316,95,2741,2741,2741,916,103,94,96,97, - 98,99,1145,2741,1494,110,86,708,856,2741, - 1027,574,226,235,2741,95,2741,2741,2741,916, - 101,94,96,97,98,99,853,2741,2741,110, - 86,792,856,2741,1027,2741,2741,2741,2741,95, - 2741,2741,2741,916,102,94,96,97,98,99, - 1303,2741,2741,110,86,835,856,2741,1027,2741, - 317,315,316,95,2741,2741,2741,916,118,94, - 96,97,98,99,1648,2741,1494,110,86,878, - 856,2741,1027,2741,317,315,316,95,2741,2741, - 2741,916,114,94,96,97,98,99,618,2741, - 1743,110,86,921,856,2741,1027,1487,2741,427, - 411,95,436,2741,2741,916,1925,94,96,97, - 98,99,317,315,316,110,86,964,856,2741, - 1027,306,2741,2741,2741,95,2741,572,566,916, - 113,94,96,97,98,99,378,2741,2741,110, - 86,1007,856,2741,1027,2741,340,315,316,95, - 2741,305,2741,916,120,94,96,97,98,99, - 1028,553,2741,110,86,134,215,2741,1027,2741, - 317,315,316,95,2741,2741,2741,916,119,94, - 96,97,98,99,1062,553,1494,815,1620,144, - 133,135,159,2741,317,315,316,317,315,316, - 2741,2741,2741,2741,439,2741,303,304,618,2741, - 1494,2741,1620,1494,340,315,316,1487,476,1470, - 261,14,19,15,1338,42,44,1409,1847,1372, - 1626,2741,618,134,215,853,2741,2741,276,2741, - 2741,2267,2741,2741,261,2741,2741,2741,271,962, - 1491,274,1060,1372,1626,2741,1575,147,133,135, - 159,2741,340,315,316,2741,340,315,316,2741, - 1470,2741,14,19,15,1338,42,44,1409,1444, - 2741,134,215,1881,2741,134,215,1470,2741,14, - 19,15,1338,42,44,1409,1444,2741,2741,2741, - 1882,2741,2741,2741,2741,150,133,135,159,153, - 133,135,159,1470,2741,14,19,15,1338,42, - 44,1409,1444,519,553,1470,1884,14,19,15, - 1338,42,44,1409,1444,2741,2741,1470,1889,14, - 19,15,1338,42,36,168,352,168,352,2741, - 1470,199,14,19,15,1338,42,34,1470,2741, - 14,19,15,1338,42,35,2741,2741,87,2741, - 87,730,553,199,2741,199,1146,2741,1146,2741, - 2741,1470,759,14,19,15,1338,42,47,1470, - 2741,14,19,15,1338,42,46,2741,2741,199, - 2741,2741,2741,2741,960,1470,960,14,19,15, - 1338,42,45,1386,194,14,19,15,1338,42, - 43,1303,2741,1133,1475,678,1265,1292,1266,1639, - 759,317,315,316,1292,317,315,316,2741,317, - 315,316,315,553,2741,168,553,1494,1691,2741, - 2741,622,1592,856,2741,1686,256,215,317,315, - 316,2741,194,256,215,1592,856,2741,2741,618, - 1620,1301,1475,689,1750,87,1592,856,2267,1697, - 2741,2741,2741,115,2741,168,856,2741,87,317, - 315,316,2741,2741,2741,2741,115,308,2741,87, - 168,856,261,168,856,1883,1528,115,87,2741, - 2741,1544,1626,1528,2741,514,1219,1595,2741,168, - 856,2741,2741,87,2741,2741,87,2741,2741,2741, - 1661,1360,2741,880,1919,2741,2741,2741,2741,2741, - 1349,1777,87,2741,2741,2741,1171,2741,2741,2741, - 1490,2741,2741,2741,2741,2741,2741,2741,2741,2741, - 2741,2741,2741,2741,2741,2741,2741,2741,2741,2741, - 2741,2741,2741,2741,1641,2741,0,1,458,0, - 1,500,0,458,128,0,500,128,0,458, - 129,0,500,129,0,458,130,0,500,130, - 0,500,187,0,458,187,0,187,191,0, - 500,186,0,458,186,0,186,191,0,458, - 131,0,500,131,0,458,132,0,500,132, - 0,179,228,0,2748,1,0,225,237,0, - 1,2980,0,225,238,0,7,9,0,179, - 17,0,178,18,0,1,2969,0,112,2173, - 0 + 9,14,14,14,15,15,15,15,15,16, + 16,16,17,17,18,18,19,19,20,20, + 21,21,22,22,26,26,26,26,26,26, + 26,26,26,26,26,26,37,32,25,116, + 116,98,98,59,38,38,38,38,38,38, + 38,39,39,39,33,33,99,99,74,74, + 40,40,41,41,41,66,66,42,42,42, + 42,43,43,43,43,43,53,53,29,29, + 29,29,29,54,54,54,88,88,83,83, + 83,83,84,84,84,85,85,85,86,86, + 86,87,87,87,100,100,89,89,90,55, + 57,57,57,57,57,67,69,69,69,69, + 69,69,69,69,69,69,69,69,78,78, + 28,28,75,75,117,118,79,79,76,76, + 76,91,101,101,102,102,92,92,92,60, + 119,119,103,93,93,93,77,77,120,104, + 104,105,105,94,94,30,31,31,31,56, + 51,51,44,44,44,44,34,34,35,45, + 45,46,36,36,106,106,47,122,122,121, + 121,52,52,52,52,52,52,52,52,52, + 107,58,58,58,58,49,80,80,70,70, + 70,71,71,61,61,123,123,82,82,81, + 81,81,62,62,62,63,64,64,64,65, + 65,65,65,68,68,68,72,124,97,97, + 97,97,95,125,126,126,127,127,128,128, + 115,115,129,129,108,108,108,108,130,130, + 109,109,109,110,110,10,10,10,27,27, + 11,11,131,131,111,111,111,112,112,132, + 132,113,113,12,133,133,134,134,114,114, + 114,13,136,136,54,90,90,90,103,103, + 103,120,117,118,49,91,312,385,14,19, + 15,1084,1058,44,1234,1335,344,315,316,317, + 1259,1373,1348,1444,1410,1510,1487,1522,74,409, + 505,1678,91,444,1062,724,134,215,1552,821, + 14,19,15,1084,42,44,1234,1335,171,1905, + 713,688,1259,1373,1348,1444,1410,1510,1753,1241, + 136,133,135,159,256,215,1102,2075,845,318, + 315,316,317,138,45,165,344,315,316,317, + 313,142,145,148,151,409,517,447,1489,1615, + 596,1821,2346,2368,1582,952,134,215,1300,456, + 488,226,234,229,1633,234,1163,1602,318,315, + 316,317,321,996,1468,189,344,315,316,317, + 136,133,135,159,1041,2211,1596,1762,14,19, + 15,1084,40,138,866,165,134,215,1203,311, + 1062,142,145,148,151,409,447,648,337,1615, + 596,1821,2346,2368,1582,243,1420,1513,456,261, + 136,133,135,159,1773,484,294,1435,1421,1542, + 256,215,379,138,188,165,357,319,315,316, + 317,142,145,148,151,409,1762,1134,336,1615, + 596,1821,2346,2368,1582,1486,389,14,19,15, + 1084,1058,44,1234,1335,447,1665,763,455,1259, + 1373,1348,1444,1410,1510,1487,1522,74,262,337, + 1580,283,409,1508,389,14,19,15,1084,1058, + 44,1234,1335,1650,722,323,986,1259,1373,1348, + 1444,1410,1510,1487,1522,74,384,973,1402,283, + 14,19,15,1084,42,35,344,315,316,317, + 1197,447,295,288,1166,456,1552,1544,14,19, + 15,1084,42,44,1234,1335,134,215,171,1988, + 1259,1373,1348,1444,1410,1510,1487,1522,73,190, + 289,288,1323,887,539,1544,248,312,471,212, + 144,133,135,159,171,1907,108,1380,389,14, + 19,15,1084,1058,44,1234,1335,309,289,447, + 1556,1259,1373,1348,1444,1410,1510,1487,1522,74, + 505,1817,310,283,1260,490,14,19,15,1084, + 1058,44,1234,1335,642,384,230,1136,1259,1373, + 1348,1444,1410,1510,1487,1522,74,637,503,948, + 457,1140,1552,1283,14,19,15,1084,42,44, + 1234,1335,970,1041,1686,290,1259,1373,1729,1544, + 104,124,241,87,318,315,316,317,1759,1436, + 1112,14,19,15,1084,1058,44,1234,1335,1768, + 948,2715,291,1259,1373,1348,1444,1410,1510,1487, + 1522,74,227,1759,1640,283,14,19,15,1084, + 1058,44,1234,1335,89,1602,171,948,1259,1373, + 1348,1444,1410,1510,1487,1522,74,333,623,1552, + 331,14,19,15,1084,42,44,1234,1335,503, + 839,87,1351,1259,1373,1348,1728,157,1185,1759, + 1530,1544,14,19,15,1084,1058,44,1234,1335, + 171,2049,126,245,1259,1373,1348,1444,1410,1510, + 1487,1522,74,341,322,986,283,754,1799,838, + 2498,1402,1022,14,19,15,1084,42,35,318, + 315,316,317,1552,922,14,19,15,1084,42, + 44,1234,1335,1458,1062,1273,1992,1259,1373,1348, + 1444,1410,1741,401,226,707,1134,329,292,1459, + 558,456,1544,220,644,223,711,503,1596,249, + 1681,570,2492,1764,256,215,1212,1574,864,14, + 19,15,1084,1058,44,1234,1335,171,1173,199, + 126,1259,1373,1348,1444,1410,1510,1487,1522,74, + 629,1735,1704,775,62,401,226,231,154,656, + 318,315,316,317,1511,220,644,223,225,1036, + 1034,497,738,182,1580,572,1110,2117,1552,1310, + 14,19,15,1084,1058,44,1234,1335,339,1763, + 2635,398,1259,1373,1348,1444,1410,1510,1487,1522, + 74,1372,195,1358,91,14,19,15,1084,1058, + 44,1234,1335,233,1763,2513,1773,1259,1373,1348, + 1444,1410,1510,1487,1522,74,171,2632,1640,1237, + 14,19,15,1084,1058,44,1234,1335,233,1763, + 2681,437,1259,1373,1348,1444,1410,1510,1487,1522, + 74,242,1058,1552,331,14,19,15,1084,42, + 44,1234,1335,280,503,1653,1621,1259,1373,1348, + 1444,1410,1510,1487,1522,93,1633,1552,1171,14, + 19,15,1084,1058,44,1234,1335,197,568,127, + 1171,1259,1373,1348,1444,1410,1510,1487,1522,74, + 820,123,1552,85,14,19,15,1084,1058,44, + 1234,1335,1599,122,1662,1759,1259,1373,1348,1444, + 1410,1510,1487,1522,74,689,171,545,84,1552, + 1171,14,19,15,1084,1058,44,1234,1335,232, + 1759,330,1171,1259,1373,1348,1444,1410,1510,1487, + 1522,74,278,111,1552,83,14,19,15,1084, + 1058,44,1234,1335,320,125,1171,1759,1259,1373, + 1348,1444,1410,1510,1487,1522,74,277,1715,1552, + 82,14,19,15,1084,1058,44,1234,1335,121, + 1759,340,1759,1259,1373,1348,1444,1410,1510,1487, + 1522,74,236,1764,1552,81,14,19,15,1084, + 1058,44,1234,1335,2668,1759,16,1171,1259,1373, + 1348,1444,1410,1510,1487,1522,74,1764,1759,1552, + 80,14,19,15,1084,1058,44,1234,1335,2166, + 2684,1759,1716,1259,1373,1348,1444,1410,1510,1487, + 1522,74,2192,285,1552,79,14,19,15,1084, + 1058,44,1234,1335,346,2213,325,1602,1259,1373, + 1348,1444,1410,1510,1487,1522,74,206,1759,1552, + 78,14,19,15,1084,1058,44,1234,1335,1557, + 1759,1602,1764,1259,1373,1348,1444,1410,1510,1487, + 1522,74,1755,1759,1552,77,14,19,15,1084, + 1058,44,1234,1335,1761,244,1014,1014,1259,1373, + 1348,1444,1410,1510,1487,1522,74,21,1759,1552, + 76,14,19,15,1084,1058,44,1234,1335,20, + 1764,1171,183,1259,1373,1348,1444,1410,1510,1487, + 1522,74,275,1748,1552,75,14,19,15,1084, + 1058,44,1234,1335,2711,1172,1721,1602,1259,1373, + 1348,1444,1410,1510,1487,1522,74,1602,1330,1552, + 92,14,19,15,1084,42,44,1234,1335,196, + 207,171,573,1259,1373,1348,1444,1410,1510,1487, + 1522,93,1552,504,14,19,15,1084,1058,44, + 1234,1335,23,22,1171,246,1259,1373,1348,1444, + 1410,1510,1487,1522,74,247,1567,1552,1337,14, + 19,15,1084,1058,44,1234,1335,2737,214,295, + 109,1259,1373,1348,1444,1410,1510,1487,1522,74, + 347,1759,1552,1347,14,19,15,1084,42,39, + 318,315,316,317,1552,1171,14,19,15,1084, + 42,44,1234,1335,344,281,1759,2211,1259,1373, + 1348,1444,1750,447,401,226,231,1618,117,14, + 19,15,1084,33,221,644,223,225,1577,788, + 1435,1552,276,14,19,15,1084,42,44,1234, + 1673,297,271,1070,1095,274,1552,601,14,19, + 15,1084,42,44,1234,1335,1759,1759,257,215, + 1259,1373,1348,1444,1410,1510,1487,1522,93,1552, + 387,14,19,15,1084,42,44,1234,1335,1759, + 282,2286,1340,1259,1373,1348,1444,1410,1510,1487, + 1522,93,1552,284,14,19,15,1084,42,44, + 1234,1335,296,2312,1227,204,1259,1373,1348,1444, + 1410,1510,1487,1522,93,1552,1748,14,19,15, + 1084,42,44,1234,1335,1173,1298,1764,205,1259, + 1373,1348,1444,1410,1510,1487,1522,93,64,1269, + 1703,1552,1163,14,19,15,1084,42,44,1234, + 1676,1635,344,315,316,317,838,2492,1552,556, + 14,19,15,1084,42,38,318,315,316,317, + 257,215,134,215,1662,1202,1618,1409,14,19, + 15,1084,32,1992,447,344,315,316,317,1655, + 401,226,231,1127,1287,1602,137,133,135,159, + 220,644,223,225,1717,134,215,1681,1319,139, + 933,165,299,1238,2492,1764,1736,143,146,149, + 152,409,1602,318,315,316,317,1778,802,141, + 133,135,159,1326,257,215,1684,445,190,356, + 1940,1683,140,296,165,154,656,401,226,231, + 532,318,315,316,317,566,1036,220,644,223, + 225,110,1282,86,1754,26,941,887,2707,1579, + 298,95,1720,838,2492,1100,108,94,96,97, + 98,99,1722,318,315,316,317,1729,443,1723, + 1552,109,14,19,15,1084,42,44,1234,1335, + 1992,514,1,356,1259,1695,2666,401,226,231, + 1678,846,106,1184,953,1770,200,220,644,223, + 225,1774,1136,2533,1681,110,1303,86,171,948, + 941,887,1336,1235,2914,95,2914,1742,794,1100, + 108,94,96,97,98,99,2914,2914,318,315, + 316,317,314,87,2914,109,401,226,231,1062, + 1198,2914,155,656,2914,2164,220,644,223,225, + 2914,2914,2914,265,276,2914,107,251,356,2914, + 2914,446,2914,2914,269,1070,1095,274,2914,256, + 215,344,315,316,317,2914,2914,974,448,2914, + 110,2914,86,266,2914,941,887,2914,2914,2914, + 95,134,215,1696,1100,108,94,96,97,98, + 99,279,2914,318,315,316,317,2914,2914,611, + 109,401,226,231,2914,147,133,135,159,1644, + 2735,220,644,223,225,263,127,356,738,276, + 1552,106,14,19,15,1084,42,37,556,269, + 1070,1095,274,2914,2914,171,456,971,2914,110, + 2914,86,2914,2914,941,887,1886,2914,1298,95, + 1427,2492,2914,1100,108,94,96,97,98,99, + 318,315,316,317,887,1650,105,171,948,109, + 1238,2492,2914,2914,1294,2247,2914,1940,2914,2914, + 319,315,316,317,401,226,231,2914,308,2914, + 107,2914,87,2914,220,644,223,225,279,1211, + 751,1754,2914,2914,401,226,231,2914,2914,2914, + 318,315,316,317,220,644,223,225,495,456, + 2914,1754,838,2492,2914,2914,276,2117,2914,2914, + 2914,211,319,315,316,317,269,1070,1095,274, + 2914,537,1656,2666,2914,2914,2914,199,2914,926, + 171,948,2914,201,2914,1298,401,226,231,318, + 315,316,317,2687,2914,614,220,644,223,225, + 2914,2914,2914,1853,2914,87,2211,926,1034,971, + 2914,2914,1261,401,226,231,2914,318,315,316, + 317,496,2914,221,644,223,225,2914,788,2914, + 2914,2914,684,948,2211,1329,2914,1650,2914,2914, + 194,401,226,1566,2914,318,315,316,317,893, + 880,221,644,223,1565,110,788,86,728,948, + 941,2914,2211,2914,2914,95,2914,2914,2914,1100, + 1579,94,96,97,98,99,2914,1463,2914,772, + 948,110,2914,86,648,2914,941,319,315,316, + 317,95,2914,2416,2914,1100,103,94,96,97, + 98,99,110,211,86,816,948,941,2914,2914, + 2914,2914,95,876,1656,2914,1100,101,94,96, + 97,98,99,2914,882,2914,860,948,110,2914, + 86,2914,2914,941,319,315,316,317,95,2914, + 2914,2914,1100,102,94,96,97,98,99,110, + 2914,86,904,948,941,2914,2914,2914,2914,95, + 2914,2914,2914,1100,118,94,96,97,98,99, + 2914,1675,2914,948,948,110,2914,86,2914,2914, + 941,319,315,316,317,95,1020,2551,2914,1100, + 114,94,96,97,98,99,110,2914,86,171, + 948,941,992,948,2914,2914,95,1663,456,2914, + 1100,1766,94,96,97,98,99,318,315,316, + 317,2914,2914,2914,87,110,2914,86,2914,2914, + 941,1751,2914,2914,2211,95,1762,2914,276,1100, + 113,94,96,97,98,99,1036,948,269,1070, + 1095,274,2914,2914,2914,1552,648,14,19,15, + 1084,42,44,1677,2914,2320,2914,268,261,110, + 2914,86,1080,948,941,2914,2914,1421,1542,95, + 706,2914,2914,1100,120,94,96,97,98,99, + 318,315,316,317,2914,110,2914,86,434,416, + 941,2914,2914,2914,2914,95,507,2211,2914,1100, + 119,94,96,97,98,99,344,315,316,317, + 2914,306,171,948,2914,1533,948,799,569,788, + 2914,2914,276,2914,2914,2914,134,215,344,315, + 316,317,271,1070,1095,274,2914,87,2914,2914, + 87,305,373,416,1446,2914,2914,115,134,215, + 150,133,135,159,1552,2914,14,19,15,1084, + 42,44,1234,1335,2914,306,926,2914,1259,1702, + 2914,799,153,133,135,159,318,315,316,317, + 1552,1311,14,19,15,1084,42,44,1234,1335, + 2914,2914,2914,2211,1709,305,303,304,2914,2914, + 488,226,235,1552,2914,14,19,15,1084,42, + 44,1234,1335,2914,2914,788,1552,1712,14,19, + 15,1084,42,44,1234,1335,2914,2914,2914,1552, + 1722,14,19,15,1084,42,44,1234,1335,2914, + 2914,2914,1329,1727,2914,2914,2914,2914,1329,2914, + 302,304,318,315,316,317,2914,383,318,315, + 316,317,2914,1199,456,2914,2914,2914,2914,2211, + 2914,2338,2914,2914,1552,2211,14,19,15,1084, + 42,44,1690,1329,2914,2914,2914,2914,2914,2914, + 2914,648,1762,318,315,316,317,648,171,356, + 2019,1329,2914,2914,2914,2914,2047,2914,2914,2914, + 2211,318,315,316,317,1552,2914,14,19,15, + 1084,42,36,87,261,2914,2914,199,2211,2914, + 1162,2914,648,1085,1542,1533,356,171,356,2914, + 1552,1420,14,19,15,1084,42,34,2914,1552, + 648,14,19,15,1084,42,35,2914,2226,2320, + 87,2914,87,2914,887,2914,199,115,2914,1162, + 171,356,1552,2914,14,19,15,1084,42,47, + 1160,2914,621,456,1148,315,456,1552,2365,14, + 19,15,1084,42,46,87,2914,2226,2914,199, + 2914,1187,1162,1552,2914,14,19,15,1084,42, + 45,199,2914,2914,1762,2914,1728,2914,1464,1248, + 14,19,15,1084,42,43,318,315,316,317, + 2226,315,456,2914,1533,948,2914,1738,2914,2914, + 2914,2914,1034,2744,2914,2914,261,318,315,316, + 317,2914,1260,2914,2914,1085,1542,1693,2914,87, + 1762,1533,948,2914,2753,1705,115,319,315,316, + 317,2914,2914,2914,194,319,315,316,317,2914, + 2914,2914,2914,1262,880,1708,87,1533,948,2914, + 2914,2914,261,115,1747,319,315,316,317,2914, + 1384,1496,1542,1750,319,315,316,317,2914,2914, + 2914,2914,87,319,315,316,317,2914,2914,115, + 2914,2914,2914,2914,2914,2914,2914,1497,2914,2914, + 2914,2914,2914,2914,2914,2914,2914,2914,2914,2914, + 2914,2914,2914,2914,2914,2914,2914,2914,2914,2914, + 2914,2914,2914,1519,2914,0,1,400,0,1, + 418,0,1,445,0,400,128,0,418,128, + 0,445,128,0,400,129,0,418,129,0, + 445,129,0,400,130,0,418,130,0,445, + 130,0,445,187,0,418,187,0,400,187, + 0,187,191,0,445,186,0,418,186,0, + 400,186,0,186,191,0,400,131,0,418, + 131,0,445,131,0,400,132,0,418,132, + 0,445,132,0,179,228,0,2921,1,0, + 225,237,0,1,3153,0,225,238,0,7, + 9,0,179,17,0,178,18,0,1,3142, + 0,112,2242,0 }; }; public final static char baseAction[] = BaseAction.baseAction; @@ -597,185 +629,191 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym 10,11,12,13,14,15,16,17,18,19, 20,21,22,23,24,25,26,27,28,29, 30,31,32,33,34,35,36,37,38,39, - 40,41,42,0,1,45,46,47,48,49, + 40,41,42,43,0,1,46,47,48,49, 50,51,52,53,54,55,56,57,58,59, - 0,61,0,1,2,3,4,5,6,7, - 8,9,10,11,12,13,14,15,16,17, - 18,19,20,21,22,23,24,25,26,27, - 28,29,30,31,32,33,34,35,36,37, - 38,39,40,41,42,0,0,45,46,47, - 48,49,50,51,52,53,54,55,56,57, - 58,59,62,61,0,1,2,3,4,5, - 6,7,8,9,10,11,12,13,14,15, - 16,17,18,19,20,21,22,23,24,25, - 26,27,28,29,30,31,32,33,34,35, - 36,37,38,39,40,41,42,0,63,45, - 46,47,48,49,50,51,52,53,54,55, - 56,57,58,59,78,61,0,1,2,3, + 60,0,62,0,1,2,3,4,5,6, + 7,8,9,10,11,12,13,14,15,16, + 17,18,19,20,21,22,23,24,25,26, + 27,28,29,30,31,32,33,34,35,36, + 37,38,39,40,41,42,43,0,0,46, + 47,48,49,50,51,52,53,54,55,56, + 57,58,59,60,63,62,0,1,2,3, 4,5,6,7,8,9,10,11,12,13, 14,15,16,17,18,19,20,21,22,23, 24,25,26,27,28,29,30,31,32,33, - 34,35,36,37,38,39,40,41,42,0, - 1,45,46,47,48,49,50,51,52,53, - 54,55,56,57,58,59,0,1,2,3, - 4,5,6,7,8,9,10,11,12,13, - 14,15,16,17,18,19,20,21,22,23, - 24,25,26,27,28,29,30,31,32,33, - 34,35,36,37,38,39,40,41,42,0, - 1,45,46,47,48,49,50,51,52,53, - 54,55,56,57,58,59,0,1,2,0, - 4,5,6,7,0,9,10,11,12,13, - 14,15,16,17,18,19,20,21,22,23, - 0,25,26,27,28,29,30,0,1,2, - 0,0,1,2,3,0,1,2,8,4, - 5,45,46,47,48,49,50,51,52,53, - 54,55,56,57,58,59,0,1,2,3, - 4,5,6,7,0,1,2,0,4,5, - 66,4,5,0,43,44,3,21,22,23, - 24,25,26,27,28,29,30,31,21,22, - 23,60,25,26,27,28,29,30,0,79, - 2,45,46,47,48,49,50,51,52,53, - 54,55,56,57,58,59,0,1,2,3, - 4,5,6,7,0,0,62,3,0,4, - 5,75,4,5,61,0,0,21,22,23, - 24,25,26,27,28,29,30,31,24,21, - 22,23,0,25,26,27,28,29,30,7, - 0,45,46,47,48,49,50,51,52,53, - 54,55,56,57,58,59,0,0,0,1, - 2,0,4,5,60,0,0,1,2,3, - 0,75,6,7,8,9,10,11,12,13, - 14,15,16,17,18,19,20,0,0,1, - 24,3,4,5,6,8,80,31,32,33, - 34,35,36,37,38,39,40,41,42,21, - 22,23,0,25,26,27,28,29,30,31, - 62,0,1,83,84,4,5,6,71,72, - 73,74,62,45,46,47,48,49,50,51, - 52,53,54,55,56,57,58,59,0,61, - 0,1,2,3,0,43,6,7,8,9, - 10,11,12,13,14,15,16,17,18,19, - 20,0,1,2,24,4,5,0,7,2, - 68,31,32,33,34,35,36,37,38,39, - 40,41,42,0,1,2,3,43,0,6, - 7,8,9,10,11,12,13,14,15,16, - 17,18,19,20,43,0,1,24,3,4, - 5,6,68,75,31,32,33,34,35,36, - 37,38,39,40,41,42,21,22,23,0, - 25,26,27,28,29,30,31,0,1,0, - 0,4,5,6,0,1,2,0,4,5, - 45,46,47,48,49,50,51,52,53,54, - 55,56,57,58,59,0,61,0,1,2, - 3,32,43,6,7,8,9,10,11,12, - 13,14,15,16,17,18,19,20,0,0, - 1,24,3,4,5,6,8,0,31,32, - 33,34,35,36,37,38,39,40,41,42, - 21,22,23,0,25,26,27,28,29,30, - 31,0,1,76,77,4,5,6,63,0, - 1,2,3,0,45,46,47,48,49,50, - 51,52,53,54,55,56,57,58,59,0, - 61,0,1,2,3,0,7,6,7,8, - 9,10,11,12,13,14,15,16,17,18, - 19,20,43,44,0,24,2,0,4,5, - 0,7,31,32,33,34,35,36,37,38, - 39,40,41,42,0,1,2,3,43,0, - 6,7,8,9,10,11,12,13,14,15, - 16,17,18,19,20,0,1,43,24,4, - 5,6,0,0,2,31,32,33,34,35, - 36,37,38,39,40,41,42,0,1,2, - 3,64,65,6,7,8,9,10,11,12, - 13,14,15,16,17,18,19,20,0,60, - 0,24,0,3,2,3,8,0,31,32, - 33,34,35,36,37,38,39,40,41,42, - 0,1,2,3,24,62,6,7,8,9, - 10,11,12,13,14,15,16,17,18,19, - 20,0,0,0,24,43,44,0,7,2, - 3,31,32,33,34,35,36,37,38,39, - 40,41,42,0,1,2,3,60,0,6, - 7,8,9,10,11,12,13,14,15,16, - 17,18,19,20,0,0,1,24,3,0, - 43,44,3,0,31,32,33,34,35,36, - 37,38,39,40,41,42,0,1,2,3, - 69,70,6,7,8,9,10,11,12,13, - 14,15,16,17,18,19,20,0,0,44, - 24,4,5,44,7,0,8,31,32,33, - 34,35,36,37,38,39,40,41,42,0, - 1,2,0,4,5,6,21,22,23,0, - 0,0,2,4,5,4,5,0,7,0, - 21,22,23,0,25,26,27,28,29,30, - 21,22,23,0,25,26,27,28,29,30, - 21,22,23,66,45,46,47,48,49,50, - 51,52,53,54,55,56,57,58,59,0, - 1,0,0,4,5,6,64,65,7,0, - 0,1,3,4,5,0,6,66,8,62, - 21,22,23,8,25,26,27,28,29,30, - 0,0,2,24,71,72,73,74,0,0, - 0,2,4,5,45,46,47,48,49,50, - 51,52,53,54,55,56,57,58,59,21, - 22,23,0,25,26,27,28,29,30,60, - 69,70,63,71,72,73,74,0,0,2, - 3,0,43,45,46,47,48,49,50,51, - 52,53,54,55,56,0,1,2,3,0, - 0,6,7,3,9,10,11,12,13,14, - 15,16,17,18,19,20,0,1,2,3, - 25,44,6,7,24,9,10,11,12,13, - 14,15,16,17,18,19,20,0,1,2, - 3,25,0,6,7,8,9,10,11,12, - 13,14,15,16,17,18,19,20,0,1, - 2,3,67,0,6,7,3,9,10,11, - 12,13,14,15,16,17,18,19,20,0, - 0,0,3,67,0,1,2,3,4,5, - 0,7,0,0,1,0,4,5,61,6, - 0,8,21,22,23,21,22,23,24,25, - 26,27,28,29,30,0,1,2,3,4, - 5,79,7,44,61,67,0,43,44,0, - 0,0,0,1,4,5,21,22,23,24, - 25,26,27,28,29,30,66,21,22,23, - 21,22,23,21,0,1,2,0,43,44, - 6,7,8,9,10,11,12,13,14,15, - 16,17,18,19,20,0,1,2,21,22, - 23,6,7,8,9,10,11,12,13,14, - 15,16,17,18,19,20,0,1,2,0, - 0,2,6,7,8,9,10,11,12,13, - 14,15,16,17,18,19,20,0,1,2, - 0,0,2,6,7,8,9,10,11,12, - 13,14,15,16,17,18,19,20,0,1, - 2,0,43,2,6,7,8,9,10,11, - 12,13,14,15,16,17,18,19,20,0, - 1,2,0,63,0,6,7,3,9,10, + 34,35,36,37,38,39,40,41,42,43, + 0,64,46,47,48,49,50,51,52,53, + 54,55,56,57,58,59,60,79,62,0, + 1,2,3,4,5,6,7,8,9,10, 11,12,13,14,15,16,17,18,19,20, - 0,1,2,62,0,0,6,7,0,9, + 21,22,23,24,25,26,27,28,29,30, + 31,32,33,34,35,36,37,38,39,40, + 41,42,43,0,1,46,47,48,49,50, + 51,52,53,54,55,56,57,58,59,60, + 0,1,2,3,4,5,6,7,8,9, 10,11,12,13,14,15,16,17,18,19, - 20,0,1,2,0,0,0,6,7,3, + 20,21,22,23,24,25,26,27,28,29, + 30,31,32,33,34,35,36,37,38,39, + 40,41,42,43,0,0,46,47,48,49, + 50,51,52,53,54,55,56,57,58,59, + 60,0,1,2,0,4,5,6,7,8, + 0,10,11,12,13,14,15,16,17,18, + 19,20,21,22,23,24,0,26,27,28, + 29,30,31,0,0,0,0,1,2,13, + 4,5,6,8,8,12,61,46,47,48, + 49,50,51,52,53,54,55,56,57,58, + 59,60,0,1,2,3,4,5,6,7, + 8,67,0,0,0,1,0,4,5,6, + 44,7,0,9,22,23,24,25,26,27, + 28,29,30,31,32,22,23,24,0,26, + 27,28,29,30,31,70,71,9,46,47, + 48,49,50,51,52,53,54,55,56,57, + 58,59,60,0,1,2,3,4,5,6, + 7,8,0,0,0,0,0,1,76,4, + 5,6,8,7,12,22,23,24,25,26, + 27,28,29,30,31,32,80,22,23,24, + 0,26,27,28,29,30,31,0,8,46, + 47,48,49,50,51,52,53,54,55,56, + 57,58,59,60,0,1,0,3,4,5, + 6,7,0,0,0,3,0,3,0,76, + 4,5,6,0,70,71,22,23,24,76, + 26,27,28,29,30,31,32,25,22,23, + 24,0,26,27,28,29,30,31,0,8, + 46,47,48,49,50,51,52,53,54,55, + 56,57,58,59,60,0,62,0,1,63, + 3,4,5,6,7,0,62,0,0,0, + 1,2,4,5,6,72,73,74,75,22, + 23,24,44,26,27,28,29,30,31,32, + 22,23,24,80,26,27,28,29,30,31, + 0,70,71,46,47,48,49,50,51,52, + 53,54,55,56,57,58,59,60,63,62, + 0,1,0,3,4,5,6,7,0,1, + 8,64,4,5,6,7,0,72,73,74, + 75,0,22,23,24,9,26,27,28,29, + 30,31,32,86,87,88,89,90,91,92, + 93,94,95,22,23,24,46,47,48,49, + 50,51,52,53,54,55,56,57,58,59, + 60,81,62,0,1,2,3,0,0,2, + 7,8,9,10,11,12,13,14,15,16, + 17,18,19,20,21,0,0,2,25,4, + 5,6,0,8,2,32,33,34,35,36, + 37,38,39,40,41,42,43,0,1,2, + 3,44,44,0,7,8,9,10,11,12, + 13,14,15,16,17,18,19,20,21,44, + 0,1,25,0,4,5,6,7,0,32, + 33,34,35,36,37,38,39,40,41,42, + 43,0,1,2,3,22,23,24,7,8, 9,10,11,12,13,14,15,16,17,18, - 19,20,0,1,2,61,64,65,6,7, - 24,9,10,11,12,13,14,15,16,17, - 18,19,20,0,1,2,0,1,63,6, - 7,0,9,10,11,12,13,14,15,16, - 17,18,19,20,0,0,60,2,4,5, - 85,86,87,88,89,90,91,92,93,94, - 0,0,78,3,3,21,22,23,0,25, - 26,27,28,29,30,0,0,2,0,3, - 4,5,4,5,0,24,0,12,13,3, - 0,7,66,3,0,0,1,0,4,5, - 24,6,0,0,44,44,4,5,0,0, - 0,0,4,5,4,5,0,0,43,0, - 60,4,5,4,5,0,1,11,0,0, - 44,6,3,0,44,2,60,9,10,63, - 0,0,1,68,4,5,60,6,0,0, - 60,3,0,69,70,0,0,82,9,10, - 0,9,10,8,4,5,0,64,65,0, - 4,5,0,64,65,0,4,5,0,4, - 5,0,0,0,1,0,0,76,77,6, - 0,0,44,2,8,0,67,2,0,0, - 0,11,0,0,0,0,8,8,8,0, - 0,0,0,0,0,0,60,0,0,0, - 0,0,0,0,0,0,0,0,0,60, + 19,20,21,0,1,0,25,4,5,6, + 7,0,1,32,33,34,35,36,37,38, + 39,40,41,42,43,0,1,2,3,0, + 0,2,7,8,9,10,11,12,13,14, + 15,16,17,18,19,20,21,0,1,2, + 25,4,5,6,0,0,2,32,33,34, + 35,36,37,38,39,40,41,42,43,0, + 1,2,3,44,44,0,7,8,9,10, + 11,12,13,14,15,16,17,18,19,20, + 21,0,1,0,25,4,5,6,7,69, + 0,32,33,34,35,36,37,38,39,40, + 41,42,43,0,1,2,3,0,63,44, + 7,8,9,10,11,12,13,14,15,16, + 17,18,19,20,21,0,1,2,25,4, + 5,6,0,0,69,32,33,34,35,36, + 37,38,39,40,41,42,43,0,1,2, + 3,0,0,2,7,8,9,10,11,12, + 13,14,15,16,17,18,19,20,21,0, + 0,1,25,0,1,2,3,7,9,32, + 33,34,35,36,37,38,39,40,41,42, + 43,0,1,2,3,0,64,2,7,8, + 9,10,11,12,13,14,15,16,17,18, + 19,20,21,0,1,63,25,44,45,0, + 7,2,3,32,33,34,35,36,37,38, + 39,40,41,42,43,0,1,2,3,0, + 0,1,7,8,9,10,11,12,13,14, + 15,16,17,18,19,20,21,0,0,1, + 25,0,22,44,45,7,9,32,33,34, + 35,36,37,38,39,40,41,42,43,0, + 1,2,3,22,23,24,7,8,9,10, + 11,12,13,14,15,16,17,18,19,20, + 21,0,1,2,25,4,5,6,7,0, + 0,32,33,34,35,36,37,38,39,40, + 41,42,43,22,23,24,0,26,27,28, + 29,30,31,0,0,0,1,2,3,0, + 0,0,3,4,5,6,0,46,47,48, + 49,50,51,52,53,54,55,56,57,58, + 59,60,0,1,25,0,4,5,6,7, + 0,0,0,3,9,3,4,5,6,44, + 45,10,11,0,22,23,24,61,26,27, + 28,29,30,31,61,25,61,25,0,1, + 61,0,0,64,2,4,5,6,46,47, + 48,49,50,51,52,53,54,55,56,57, + 58,59,60,22,23,24,0,26,27,28, + 29,30,31,61,0,9,64,0,1,2, + 0,4,5,6,4,5,6,46,47,48, + 49,50,51,52,53,54,55,56,57,0, + 1,2,3,0,81,67,7,8,0,10, + 11,12,13,14,15,16,17,18,19,20, + 21,0,0,0,2,26,0,1,2,3, + 4,5,6,0,8,2,3,0,64,0, + 63,33,0,4,5,6,9,8,22,23, + 24,25,26,27,28,29,30,31,0,1, + 2,3,4,5,6,0,8,68,0,0, + 44,45,4,5,6,10,11,44,45,0, + 22,23,24,25,26,27,28,29,30,31, + 0,0,2,72,73,74,75,0,1,2, + 3,0,44,45,7,8,67,10,11,12, + 13,14,15,16,17,18,19,20,21,0, + 1,2,3,26,82,0,7,8,9,10, + 11,12,13,14,15,16,17,18,19,20, + 21,0,1,2,3,0,77,78,7,8, + 0,10,11,12,13,14,15,16,17,18, + 19,20,21,84,85,68,0,1,2,0, + 4,5,6,0,0,0,1,2,4,5, + 6,62,7,8,9,10,11,12,13,14, + 15,16,17,18,19,20,21,0,0,2, + 2,0,0,0,1,2,4,5,6,68, + 7,8,9,10,11,12,13,14,15,16, + 17,18,19,20,21,0,1,2,0,63, + 2,3,7,8,9,10,11,12,13,14, + 15,16,17,18,19,20,21,0,1,2, + 0,1,0,3,7,8,9,10,11,12, + 13,14,15,16,17,18,19,20,21,0, + 1,2,0,45,0,3,7,8,9,10, + 11,12,13,14,15,16,17,18,19,20, + 21,0,1,2,0,45,0,25,7,8, + 0,10,11,12,13,14,15,16,17,18, + 19,20,21,0,1,2,0,45,0,67, + 7,8,0,10,11,12,13,14,15,16, + 17,18,19,20,21,0,1,2,22,23, + 24,0,7,8,3,10,11,12,13,14, + 15,16,17,18,19,20,21,0,1,2, + 0,65,66,3,7,8,0,10,11,12, + 13,14,15,16,17,18,19,20,21,0, + 1,2,0,65,66,25,7,8,0,10, + 11,12,13,14,15,16,17,18,19,20, + 21,0,0,2,0,1,4,5,6,68, + 8,7,0,9,0,14,15,0,4,5, + 6,61,0,0,0,0,4,5,6,4, + 5,6,0,10,11,0,4,5,6,4, + 5,6,0,0,0,44,3,0,4,5, + 6,4,5,6,0,0,0,3,3,0, + 0,0,0,3,22,23,24,0,0,67, + 69,4,5,6,0,0,2,0,22,23, + 24,4,5,6,83,25,0,0,45,0, + 4,5,6,4,5,6,79,0,0,45, + 45,3,0,0,61,3,3,0,0,0, + 3,3,0,0,2,61,61,0,9,2, + 0,61,9,0,65,66,65,66,0,9, + 0,0,9,65,66,0,61,0,0,77, + 78,0,0,45,0,0,0,45,61,0, + 0,0,45,0,0,0,0,0,0,0, + 63,0,0,0,0,62,0,0,0,0, + 62,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,60,0,0,0,0,0,62,0,0, - 0,0,0,0,0,0,0,0,80,0, - 0,0,0,81,62,0,0,0,0,0, + 0,63,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 }; }; public final static byte termCheck[] = TermCheck.termCheck; @@ -783,186 +821,192 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface TermAction { public final static char termAction[] = {0, - 2741,4825,1,1721,1,1,4808,1,567,1, + 2914,5058,1,1578,1,1,1,5027,1,680, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,2749,1,1,1,1,1, - 1,2841,928,772,979,857,1017,2005,926,709, - 957,393,934,334,819,1,1,1,1,1, + 1,1,1,1,1,2922,1,1,1,1, + 1,1,3014,863,1048,1023,1060,924,2072,802, + 669,921,708,879,335,713,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 2741,2747,7,2726,2726,2726,2726,2726,2726,2726, - 2726,2726,2726,2726,2726,2726,2726,2726,2726,2726, - 2726,2726,2726,2726,2726,2726,2726,2726,2726,2726, - 2726,2726,2726,2726,2726,2726,2726,2726,2726,2726, - 2726,2726,2726,2726,2726,156,66,2726,2726,2726, - 2726,2726,2726,2726,2726,2726,2726,2726,2726,2726, - 2726,2726,2029,2726,2741,4825,1,1721,1,1, - 4808,1,567,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,2749,1, - 1,1,1,1,1,2841,928,772,979,857, - 1017,2005,926,709,957,393,934,1,713,1, + 1,2914,2920,7,2899,2899,2899,2899,2899,2899, + 2899,2899,2899,2899,2899,2899,2899,2899,2899,2899, + 2899,2899,2899,2899,2899,2899,2899,2899,2899,2899, + 2899,2899,2899,2899,2899,2899,2899,2899,2899,2899, + 2899,2899,2899,2899,2899,2899,2899,156,66,2899, + 2899,2899,2899,2899,2899,2899,2899,2899,2899,2899, + 2899,2899,2899,2899,2098,2899,2914,5058,1,1578, + 1,1,1,5027,1,680,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,691,2747,2741,4825,1,2750, - 1,1,4808,1,567,1,1,1,1,1, + 1,2922,1,1,1,1,1,1,3014,863, + 1048,1023,1060,924,2072,802,669,921,708,879, + 1,739,1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,789,2920,2914, + 5058,1,2923,1,1,1,5027,1,680,1, 1,1,1,1,1,1,1,1,1,1, - 2749,1,1,1,1,1,1,2841,928,772, - 979,857,1017,2005,926,709,957,393,934,333, - 819,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,2741,4825,1,2750, - 1,1,4808,1,567,1,1,1,1,1, + 1,1,1,1,2922,1,1,1,1,1, + 1,3014,863,1048,1023,1060,924,2072,802,669, + 921,708,879,334,713,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 2749,1,1,1,1,1,1,2841,928,772, - 979,857,1017,2005,926,709,957,393,934,2741, - 2981,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,2741,1791,1991,287, - 458,500,1802,2438,1,2417,1830,2430,1028,966, - 478,2751,2752,2753,2754,1822,1672,2957,2958,2959, - 68,2903,2904,2902,2960,2905,2901,1,2969,902, - 2741,1,2969,1724,264,1,2969,902,442,2657, - 2660,2908,2913,2912,2910,2911,2909,2914,2915,2907, - 2916,2917,2918,1500,2505,1567,2741,1,1,2750, - 1,1,1,1,1,2969,902,129,2657,2660, - 3001,2669,2672,1,667,264,2714,1,1,1, - 2749,1,1,1,1,1,1,3048,2957,2958, - 2959,264,2903,2904,2902,2960,2905,2901,2741,1856, - 395,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,2741,1,1,2750, - 1,1,1,1,2741,184,1397,2750,130,458, - 500,301,2675,2678,2747,2741,70,1,1,1, - 2749,1,1,1,1,1,1,3048,2749,2957, - 2958,2959,2741,2903,2904,2902,2960,2905,2901,891, - 72,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,2741,59,1,2969, - 902,2741,2657,2660,1842,2741,2741,4825,1,2750, - 2741,300,4808,1,567,1,1,1,1,1, - 1,1,1,1,1,1,1,231,2741,1, - 2749,193,1,1,1,234,761,2841,928,772, - 979,857,1017,2005,926,709,957,393,934,1, - 1,1,2741,1,1,1,1,1,1,2939, - 1397,187,2687,1896,2583,2684,2681,2687,2405,2393, - 2367,2350,2053,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,2741,193, - 2741,4825,1,2750,293,1443,4808,1,567,1, + 2914,5058,1,2923,1,1,1,5027,1,680, 1,1,1,1,1,1,1,1,1,1, - 1,270,2969,1724,2749,458,500,2741,255,845, - 1597,2841,928,772,979,857,1017,2005,926,709, - 957,393,934,2741,4825,1,2750,1465,2741,4808, - 1,567,1,1,1,1,1,1,1,1, - 1,1,1,1,667,2741,1,2749,192,1, - 1,1,1737,2656,2841,928,772,979,857,1017, - 2005,926,709,957,393,934,1,1,1,222, - 1,1,1,1,1,1,2939,186,2696,2741, - 2741,2693,2690,2696,255,2969,902,62,458,500, + 1,1,1,1,1,2922,1,1,1,1, + 1,1,3014,863,1048,1023,1060,924,2072,802, + 669,921,708,879,287,258,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,213,192,2741,4825,1, - 2750,1821,667,4808,1,567,1,1,1,1, - 1,1,1,1,1,1,1,1,2741,2741, - 1,2749,193,1,1,1,914,2741,2841,928, - 772,979,857,1017,2005,926,709,957,393,934, - 1,1,1,2741,1,1,1,1,1,1, - 2939,208,4822,1001,833,458,500,4822,1327,1, - 2735,1724,2746,2741,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,2741, - 193,2741,4825,1,2750,273,1049,4808,1,567, + 1,2914,1634,2548,1,400,418,445,1648,2599, + 2914,2565,1890,2590,2927,1616,1457,476,2924,2925, + 2926,1598,1422,3130,3131,3132,2914,3076,3077,3075, + 3133,3078,3074,64,2914,48,270,3142,1837,809, + 400,418,445,2653,255,712,507,3081,3086,3085, + 3083,3084,3082,3087,3088,3080,3089,3090,3091,1778, + 1970,920,2914,1,1,2923,1,1,1,1, + 1,3174,2914,129,2914,3094,68,2824,2827,2830, + 684,3095,2914,628,1,1,1,2922,1,1, + 1,1,1,1,3221,3130,3131,3132,2914,3076, + 3077,3075,3133,3078,3074,2637,2622,380,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,667,2745,270,2749,1492,54,458,500, - 2741,255,2841,928,772,979,857,1017,2005,926, - 709,957,393,934,2741,4825,1,2750,667,258, - 4808,1,567,1,1,1,1,1,1,1, - 1,1,1,1,1,347,4823,667,2749,458, - 500,4823,179,2741,2711,2841,928,772,979,857, - 1017,2005,926,709,957,393,934,2741,4825,1, - 2750,584,2299,4808,1,567,1,1,1,1, - 1,1,1,1,1,1,1,1,2741,1957, - 1,2749,1,2750,1492,267,1109,88,2841,928, - 772,979,857,1017,2005,926,709,957,393,934, - 2741,4825,1,2750,2749,2077,4808,1,567,1, + 1,1,1,2914,1,1,2923,1,1,1, + 1,1,65,2914,50,130,2914,3094,301,2833, + 2836,2839,2653,3095,712,1,1,1,2922,1, + 1,1,1,1,1,3221,1434,3130,3131,3132, + 2914,3076,3077,3075,3133,3078,3074,2914,694,1, 1,1,1,1,1,1,1,1,1,1, - 1,48,2741,2741,2749,667,267,1,2485,1492, - 2746,2841,928,772,979,857,1017,2005,926,709, - 957,393,934,2741,4825,1,2750,1303,2741,4808, - 1,567,1,1,1,1,1,1,1,1, - 1,1,1,1,2741,2741,1098,2749,2746,2741, - 667,2745,2746,2741,2841,928,772,979,857,1017, - 2005,926,709,957,393,934,2741,4825,1,2750, - 2469,2461,4808,1,567,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,2745, - 2749,2657,2660,2745,255,251,567,2841,928,772, - 979,857,1017,2005,926,709,957,393,934,1, - 570,902,58,2657,2660,2919,1,1,1,131, - 2741,1,747,2699,2702,2657,2660,2741,255,252, - 2957,2958,2959,61,2903,2904,2902,2960,2905,2901, - 2957,2958,2959,2741,2903,2904,2902,2960,2905,2901, - 1,1,1,3001,2908,2913,2912,2910,2911,2909, - 2914,2915,2907,2916,2917,2918,1500,2505,1567,2741, - 2920,50,60,458,500,2919,584,2299,2485,237, - 2741,2921,225,2717,2717,2741,2922,3001,378,383, - 2957,2958,2959,1193,2903,2904,2902,2960,2905,2901, - 337,2741,1002,225,2405,2393,2367,2350,128,224, - 2741,831,2663,2666,2908,2913,2912,2910,2911,2909, - 2914,2915,2907,2916,2917,2918,1500,2505,1567,2957, - 2958,2959,2741,2903,2904,2902,2960,2905,2901,225, - 2469,2461,225,2405,2393,2367,2350,2741,2741,1488, - 2746,2741,667,2908,2913,2912,2910,2911,2909,2914, - 2915,2907,2916,2917,2918,1,2758,1991,2744,2741, - 2741,2759,468,2750,2417,1830,2430,1028,966,478, - 2751,2752,2753,2754,1822,1672,2741,2758,1991,2744, - 809,2745,2759,1726,2749,2417,1830,2430,1028,966, - 478,2751,2752,2753,2754,1822,1672,1,2758,1991, - 27,1373,69,2759,2438,4567,2417,1830,2430,1028, - 966,478,2751,2752,2753,2754,1822,1672,2741,2758, - 1991,2744,2743,2741,2759,2438,2748,2417,1830,2430, - 1028,966,478,2751,2752,2753,2754,1822,1672,1, - 1,2741,2746,2743,17,179,2729,2729,179,179, - 2741,2729,255,2741,2921,2741,458,500,27,2922, - 2741,610,2957,2958,2959,179,179,179,2729,179, - 179,179,179,179,179,18,178,2732,2732,178, - 178,1856,2732,2745,2747,2743,253,2729,2729,250, - 348,2741,325,3067,458,500,178,178,178,2732, - 178,178,178,178,178,178,3000,2957,2958,2959, - 2957,2958,2959,3068,2741,2758,1991,254,2732,2732, - 2759,2438,4567,2417,1830,2430,1028,966,478,2751, - 2752,2753,2754,1822,1672,2741,2758,1991,2957,2958, - 2959,2759,2438,1453,2417,1830,2430,1028,966,478, - 2751,2752,2753,2754,1822,1672,1,2758,1991,272, - 2741,866,2759,2438,4567,2417,1830,2430,1028,966, - 478,2751,2752,2753,2754,1822,1672,1,2758,1991, - 2741,203,1687,2759,2438,4567,2417,1830,2430,1028, - 966,478,2751,2752,2753,2754,1822,1672,2741,2758, - 1991,2741,667,989,2759,2438,4567,2417,1830,2430, - 1028,966,478,2751,2752,2753,2754,1822,1672,2741, - 2758,1991,57,783,286,2759,2438,1073,2417,1830, - 2430,1028,966,478,2751,2752,2753,2754,1822,1672, - 1,2758,1991,1419,2741,42,2759,2438,2741,2417, - 1830,2430,1028,966,478,2751,2752,2753,2754,1822, - 1672,2741,2758,2425,67,2741,2741,2759,2438,2750, - 2417,1830,2430,1028,966,478,2751,2752,2753,2754, - 1822,1672,2741,2758,2427,1073,584,2299,2759,2438, - 2749,2417,1830,2430,1028,966,478,2751,2752,2753, - 2754,1822,1672,331,2758,1991,1,2720,1279,2759, - 2438,2741,2417,1830,2430,1028,966,478,2751,2752, - 2753,2754,1822,1672,132,2741,1916,1981,2705,2708, - 1255,1231,1207,1183,1159,1111,1135,1087,1063,1039, - 2741,1,691,2746,116,2957,2958,2959,2741,2903, - 2904,2902,2960,2905,2901,31,238,1314,351,225, - 2723,2723,458,500,49,116,2741,2765,2766,2746, - 2741,2485,3001,2746,350,2741,2921,2741,458,500, - 225,2922,158,56,2745,116,458,500,185,55, - 342,63,458,500,458,500,64,341,2580,349, - 417,458,500,458,500,210,2921,448,51,2741, - 2745,2922,2744,2741,2745,2565,225,1776,554,225, - 343,2741,2770,1158,458,500,1841,2771,1,53, - 904,90,52,2469,2461,231,28,490,1776,554, - 202,1776,554,235,458,500,344,584,2299,209, - 458,500,345,584,2299,346,458,500,71,458, - 500,28,112,209,932,1,41,1001,833,932, - 65,323,90,737,1453,2741,2743,2599,2741,191, - 351,448,1,2741,2741,2741,1453,208,347,2741, - 2741,2741,2741,2741,2741,2741,2768,2741,2741,2741, - 2741,2741,2741,2741,2741,2741,2741,2741,2741,4806, - 2741,2741,2741,2741,2741,2741,2741,2741,2741,2741, - 2741,641,2741,2741,2741,2741,2741,2922,2741,2741, - 2741,2741,2741,2741,2741,2741,2741,2741,761,2741, - 2741,2741,2741,2738,2921 + 1,1,1,1,2914,1,2914,193,1,1, + 1,1,1,59,1,2923,131,2887,2914,300, + 2866,2869,2872,69,2637,2622,1,1,1,2805, + 1,1,1,1,1,1,3112,2922,3130,3131, + 3132,49,3076,3077,3075,3133,3078,3074,222,2653, + 1,1,1,1,1,1,1,1,1,1, + 1,1,1,1,1,2914,193,2914,1,2119, + 192,1,1,1,1,61,2920,42,132,1, + 3142,891,2875,2878,2881,2479,2466,2453,2430,1, + 1,1,684,1,1,1,1,1,1,3112, + 3130,3131,3132,1434,3076,3077,3075,3133,3078,3074, + 70,2637,2622,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,2145,192, + 2914,1,2914,193,1,1,1,1,187,2851, + 837,1299,2848,2845,2842,2851,231,2479,2466,2453, + 2430,251,1,1,1,234,1,1,1,1, + 1,1,3112,1274,1249,1224,1199,1174,1124,1149, + 1099,1072,1047,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,1,1, + 1,853,193,2914,5058,1,2923,224,273,984, + 5027,1,680,1,1,1,1,1,1,1, + 1,1,1,1,1,270,2914,1944,2922,400, + 418,445,2914,255,438,3014,863,1048,1023,1060, + 924,2072,802,669,921,708,879,2914,5058,1, + 2923,684,684,2914,5027,1,680,1,1,1, + 1,1,1,1,1,1,1,1,1,684, + 186,2863,2922,252,2860,2857,2854,2863,2914,3014, + 863,1048,1023,1060,924,2072,802,669,921,708, + 879,2914,5058,1,2923,1,1,1,5027,1, + 680,1,1,1,1,1,1,1,1,1, + 1,1,1,208,5050,2914,2922,400,418,445, + 5050,2914,3154,3014,863,1048,1023,1060,924,2072, + 802,669,921,708,879,2914,5058,1,2923,272, + 2914,1009,5027,1,680,1,1,1,1,1, + 1,1,1,1,1,1,1,1,3142,891, + 2922,2806,2809,2812,2914,2914,424,3014,863,1048, + 1023,1060,924,2072,802,669,921,708,879,2914, + 5058,1,2923,684,1532,293,5027,1,680,1, + 1,1,1,1,1,1,1,1,1,1, + 1,351,5053,2914,2922,400,418,445,5053,1453, + 2914,3014,863,1048,1023,1060,924,2072,802,669, + 921,708,879,2914,5058,1,2923,2914,616,1555, + 5027,1,680,1,1,1,1,1,1,1, + 1,1,1,1,1,255,3142,891,2922,400, + 418,445,213,2914,1624,3014,863,1048,1023,1060, + 924,2072,802,669,921,708,879,2914,5058,1, + 2923,2914,203,498,5027,1,680,1,1,1, + 1,1,1,1,1,1,1,1,1,2914, + 210,3094,2922,1,2908,1837,2919,3095,820,3014, + 863,1048,1023,1060,924,2072,802,669,921,708, + 879,2914,5058,1,2923,179,1349,2884,5027,1, + 680,1,1,1,1,1,1,1,1,1, + 1,1,1,2914,2943,1509,2922,684,2918,1, + 2944,1944,267,3014,863,1048,1023,1060,924,2072, + 802,669,921,708,879,2914,5058,1,2923,2914, + 326,3241,5027,1,680,1,1,1,1,1, + 1,1,1,1,1,1,1,2914,209,555, + 2922,2914,3242,684,267,555,996,3014,863,1048, + 1023,1060,924,2072,802,669,921,708,879,2914, + 5058,1,2923,3130,3131,3132,5027,1,680,1, + 1,1,1,1,1,1,1,1,1,1, + 1,1,463,891,2922,2806,2809,2812,3092,2914, + 2914,3014,863,1048,1023,1060,924,2072,802,669, + 921,708,879,3130,3131,3132,88,3076,3077,3075, + 3133,3078,3074,28,2914,1,3142,1837,264,237, + 2914,2914,225,2890,2890,2890,2914,3081,3086,3085, + 3083,3084,3082,3087,3088,3080,3089,3090,3091,1778, + 1970,920,2914,3093,225,1,400,418,445,3092, + 2914,51,238,2923,680,225,2896,2896,2896,684, + 264,2524,2295,71,3130,3131,3132,1324,3076,3077, + 3075,3133,3078,3074,2941,2922,264,225,1,2893, + 225,128,2914,225,959,2815,2818,2821,3081,3086, + 3085,3083,3084,3082,3087,3088,3080,3089,3090,3091, + 1778,1970,920,3130,3131,3132,2914,3076,3077,3075, + 3133,3078,3074,225,2914,1096,225,1,3142,891, + 184,2806,2809,2812,400,418,445,3081,3086,3085, + 3083,3084,3082,3087,3088,3080,3089,3090,3091,1, + 2931,2548,2917,2914,853,3174,2932,598,2914,2565, + 1890,2590,2927,1616,1457,476,2924,2925,2926,1598, + 1422,60,338,2914,934,897,17,179,2902,2902, + 179,179,179,1,2902,1944,2919,231,810,1, + 1486,1667,112,2806,2809,2812,235,255,179,179, + 179,2902,179,179,179,179,179,179,18,178, + 2905,2905,178,178,178,53,2905,2916,255,62, + 2902,2902,400,418,445,2524,2295,684,2918,72, + 178,178,178,2905,178,178,178,178,178,178, + 2914,2914,2585,2479,2466,2453,2430,2914,2931,2548, + 2917,2914,2905,2905,2932,841,3174,2565,1890,2590, + 2927,1616,1457,476,2924,2925,2926,1598,1422,1, + 2931,2548,27,1397,2911,2914,2932,2599,5038,2565, + 1890,2590,2927,1616,1457,476,2924,2925,2926,1598, + 1422,2914,2931,2548,2917,2914,2404,1730,2932,2599, + 2914,2565,1890,2590,2927,1616,1457,476,2924,2925, + 2926,1598,1422,388,2239,2916,1,3142,891,2914, + 2806,2809,2812,2914,352,2914,2931,2548,400,418, + 445,27,2932,2599,5038,2565,1890,2590,2927,1616, + 1457,476,2924,2925,2926,1598,1422,2914,2914,776, + 1768,2914,355,2914,2931,2548,400,418,445,2916, + 2932,2599,1361,2565,1890,2590,2927,1616,1457,476, + 2924,2925,2926,1598,1422,1,2931,2548,2914,1486, + 723,2919,2932,2599,5038,2565,1890,2590,2927,1616, + 1457,476,2924,2925,2926,1598,1422,1,2931,2548, + 2914,1137,1,2919,2932,2599,5038,2565,1890,2590, + 2927,1616,1457,476,2924,2925,2926,1598,1422,2914, + 2931,2548,1,2918,2914,116,2932,2599,5038,2565, + 1890,2590,2927,1616,1457,476,2924,2925,2926,1598, + 1422,2914,2931,2548,2914,2918,54,116,2932,2599, + 2914,2565,1890,2590,2927,1616,1457,476,2924,2925, + 2926,1598,1422,1,2931,2548,253,116,58,3173, + 2932,2599,2914,2565,1890,2590,2927,1616,1457,476, + 2924,2925,2926,1598,1422,2914,2931,2587,3130,3131, + 3132,2914,2932,2599,2917,2565,1890,2590,2927,1616, + 1457,476,2924,2925,2926,1598,1422,2914,2931,2620, + 2914,1471,1581,2923,2932,2599,2914,2565,1890,2590, + 2927,1616,1457,476,2924,2925,2926,1598,1422,332, + 2931,2548,2914,1471,1581,2922,2932,2599,2914,2565, + 1890,2590,2927,1616,1457,476,2924,2925,2926,1598, + 1422,31,1,749,2914,3094,2806,2809,2812,2916, + 255,3095,2914,654,354,2938,2939,67,400,418, + 445,1713,158,52,2914,185,400,418,445,400, + 418,445,346,2524,2295,345,400,418,445,400, + 418,445,250,2914,353,2020,2919,347,400,418, + 445,400,418,445,2914,2914,254,2919,2919,57, + 2914,56,63,2923,3130,3131,3132,202,55,3174, + 1287,400,418,445,2914,209,1937,348,3130,3131, + 3132,400,418,445,1286,2922,349,28,2918,350, + 400,418,445,400,418,445,789,1,2914,2918, + 2918,2919,1,2914,474,2919,2921,1,286,41, + 90,907,324,2914,764,1668,998,2914,1361,2362, + 191,1920,1361,355,1471,1581,1471,1581,1,208, + 2914,2914,351,1471,1581,2914,4328,2914,2914,2404, + 1730,2914,2914,2918,2914,2914,2914,2918,657,2914, + 2914,2914,90,2914,2914,2914,2914,2914,2914,2914, + 3095,2914,2914,2914,2914,2920,2914,2914,2914,2914, + 907,2914,2914,2914,2914,2914,2914,2914,2914,2914, + 2914,2914,2914,2914,2914,2914,2914,2914,2914,2914, + 2914,3094 }; }; public final static char termAction[] = TermAction.termAction; @@ -970,39 +1014,39 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface Asb { public final static char asb[] = {0, - 249,1,382,495,249,350,284,282,282,296, - 346,296,346,346,296,346,296,384,499,497, - 486,282,497,354,313,121,70,346,410,408, - 410,70,410,346,497,501,499,236,499,3, - 4,416,384,350,545,160,497,162,97,499, - 134,355,239,236,120,121,348,14,350,46, - 501,304,497,416,74,418,384,497,160,160, - 56,497,354,562,546,546,410,282,282,549, - 282,282,546,354,132,564,132,495,370,235, - 188,121,350,348,14,46,46,304,444,418, - 167,94,444,201,370,564,564,564,564,564, - 78,564,564,564,193,520,525,523,531,527, - 534,533,536,535,537,236,307,384,235,322, - 160,43,350,564,134,97,352,546,564,546, - 368,564,448,564,564,355,549,132,549,497, - 232,450,450,239,236,105,236,14,43,125, - 14,46,48,503,48,444,304,235,444,94, - 77,74,564,564,564,564,564,564,564,564, - 564,564,564,236,236,309,370,370,410,410, - 106,564,564,564,564,564,564,564,564,564, - 564,564,564,564,564,564,564,564,564,564, - 564,187,9,413,499,418,43,54,562,546, - 236,282,236,236,354,549,564,235,14,127, - 48,43,564,410,304,411,564,564,94,78, - 56,499,413,236,236,236,94,523,523,520, - 520,527,527,525,525,525,525,533,531,535, - 534,132,536,416,236,581,307,54,546,562, - 549,564,549,549,105,43,545,564,542,127, - 543,43,94,94,54,309,581,508,350,564, - 418,236,48,246,106,546,236,353,127,564, - 543,543,54,236,43,52,165,410,564,245, - 236,106,546,549,543,48,317,56,94,410, - 564,549,236,43,94,549 + 590,1,353,466,590,80,387,624,624,624, + 399,75,399,75,75,399,75,399,355,470, + 468,457,624,468,325,417,231,588,139,75, + 382,379,382,139,382,75,468,473,470,315, + 470,3,4,525,355,80,518,201,468,204, + 166,470,175,326,209,315,230,231,315,77, + 82,80,115,473,407,468,525,143,527,355, + 468,201,201,125,468,325,571,519,519,382, + 624,624,558,624,624,519,325,263,573,263, + 466,341,314,266,231,80,77,82,115,115, + 407,554,527,235,163,554,280,341,573,573, + 573,573,573,147,573,573,573,271,492,497, + 495,503,499,506,505,508,507,509,315,410, + 355,314,51,201,112,80,573,175,166,323, + 519,573,519,339,573,385,573,573,326,558, + 263,558,468,311,421,421,209,315,215,315, + 82,112,255,82,115,117,475,117,554,407, + 314,554,163,146,143,573,573,573,573,573, + 573,573,573,573,573,573,315,315,412,341, + 341,382,382,216,573,573,573,573,573,573, + 573,573,573,573,573,573,573,573,573,573, + 573,573,573,573,265,10,522,470,527,112, + 123,571,519,315,624,315,315,325,558,573, + 314,82,257,117,112,573,382,407,383,573, + 573,163,147,125,470,522,315,315,315,163, + 495,495,492,492,499,499,497,497,497,497, + 505,503,507,506,263,508,525,315,15,410, + 123,519,571,558,573,558,558,215,112,518, + 573,514,257,515,112,163,163,123,412,15, + 480,80,573,527,315,117,48,216,519,315, + 324,257,573,515,515,123,315,112,121,207, + 382,573,47,315,216,519,558,515,117,318, + 125,163,382,573,558,315,112,163,558 }; }; public final static char asb[] = Asb.asb; @@ -1010,68 +1054,69 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface Asr { public final static byte asr[] = {0, - 75,0,2,62,63,24,4,5,3,60, - 44,43,0,26,45,21,46,57,27,47, - 28,48,49,29,22,50,51,25,58,30, - 59,52,53,23,54,55,56,1,6,4, - 5,31,3,61,0,1,6,3,61,60, - 0,3,61,43,68,2,15,16,17,18, - 12,13,11,7,9,10,19,20,14,1, - 6,8,0,21,22,23,25,12,13,11, - 7,9,10,19,20,14,2,1,6,15, - 16,17,18,67,3,0,8,3,63,60, - 24,4,5,0,60,14,15,16,17,18, - 6,12,13,11,7,9,10,19,20,2, - 3,44,1,0,24,3,7,1,2,5, - 4,62,0,21,46,57,27,47,28,48, - 49,29,22,50,51,25,58,30,59,52, - 53,23,54,55,56,1,6,45,26,4, - 5,3,60,24,63,0,21,22,23,12, - 13,11,7,9,10,19,20,14,2,1, - 6,15,16,17,18,0,43,3,60,44, - 2,0,4,5,43,2,68,82,12,13, - 11,7,9,10,69,70,64,65,71,72, - 73,74,76,77,78,79,80,83,84,61, - 63,85,86,87,88,89,91,90,92,93, - 94,62,67,24,60,44,3,0,3,60, - 44,1,21,0,63,43,68,0,75,26, - 45,21,46,57,27,47,28,48,49,29, - 22,50,51,25,58,30,59,52,53,23, - 54,55,56,1,6,7,4,5,24,3, - 31,2,0,53,45,50,48,49,47,46, - 51,52,54,55,56,62,24,30,27,25, - 26,29,28,21,22,23,60,1,7,4, - 5,43,44,3,2,0,3,60,61,24, - 0,26,45,21,46,57,27,47,28,48, - 49,29,22,50,51,25,58,30,59,52, - 53,23,54,55,56,1,6,4,5,8, - 0,75,81,61,34,36,8,40,42,37, - 32,38,39,35,33,41,31,3,24,15, - 16,17,18,12,13,11,9,10,19,20, - 14,7,2,57,58,59,53,45,50,48, - 49,47,46,51,52,54,55,56,30,27, - 25,26,29,21,22,23,28,4,5,6, - 1,0,7,2,43,44,3,26,45,46, - 57,27,47,28,48,49,29,50,51,25, - 58,30,59,52,53,54,55,56,1,6, - 4,5,66,21,22,23,0,32,0,68, - 82,12,13,11,9,10,69,70,64,65, - 71,72,73,74,76,77,78,79,80,83, - 84,63,85,86,87,88,89,90,91,92, - 93,94,60,43,44,26,21,27,28,29, - 22,25,30,23,24,3,2,1,4,5, - 7,0,3,60,61,63,0,63,85,86, - 87,88,89,90,91,92,93,94,8,7, - 69,70,9,10,65,64,71,72,73,74, - 76,77,11,78,79,80,67,44,61,83, - 84,62,4,5,60,24,3,0,34,36, - 8,40,42,37,32,38,39,35,33,41, - 31,24,3,12,13,11,7,9,10,19, - 20,14,2,1,6,15,16,17,18,0, - 7,26,45,21,46,57,27,47,28,48, - 49,29,22,50,51,25,58,30,59,52, - 53,23,54,55,56,1,6,66,5,4, - 0 + 76,0,2,63,64,25,4,5,6,3, + 61,45,44,0,8,27,46,22,47,58, + 28,48,29,49,50,30,23,51,52,26, + 59,31,60,53,54,24,55,56,57,1, + 7,67,6,5,4,0,64,44,69,0, + 27,46,22,47,58,28,48,29,49,50, + 30,23,51,52,26,59,31,60,53,54, + 24,55,56,57,1,7,4,5,6,9, + 0,27,46,22,47,58,28,48,29,49, + 50,30,23,51,52,26,59,31,60,53, + 54,24,55,56,57,1,7,4,5,6, + 32,3,62,0,1,7,3,62,61,0, + 3,62,44,69,2,17,18,19,13,14, + 15,12,8,10,11,20,21,16,1,7, + 9,0,22,23,24,26,14,15,12,8, + 10,11,20,21,16,2,1,7,17,18, + 19,13,68,3,0,9,3,64,61,25, + 4,5,6,0,47,58,28,48,29,49, + 50,30,23,51,52,26,59,31,60,53, + 54,24,55,56,57,1,7,22,46,27, + 4,5,6,3,61,25,64,0,3,61, + 45,1,22,0,61,16,17,18,19,13, + 7,14,15,12,8,10,11,20,21,2, + 3,45,1,0,22,23,24,14,15,12, + 8,10,11,20,21,16,2,1,7,17, + 18,19,13,0,25,3,8,1,2,6, + 5,4,63,0,44,3,61,45,2,0, + 4,5,6,44,2,69,83,14,15,12, + 8,10,11,70,71,65,66,72,73,74, + 75,77,78,79,80,81,84,85,62,64, + 86,87,88,89,90,92,91,93,94,95, + 63,68,25,61,45,3,0,3,61,62, + 25,0,76,82,62,35,37,9,41,43, + 38,33,39,40,36,34,42,32,3,25, + 17,18,19,13,14,15,12,10,11,20, + 21,16,8,2,58,59,60,54,46,51, + 49,50,48,47,52,53,55,56,57,31, + 28,26,27,30,22,23,24,29,4,5, + 6,7,1,0,33,0,54,46,51,49, + 50,48,47,52,53,55,56,57,63,25, + 31,28,26,27,30,29,22,23,24,61, + 1,8,4,5,6,44,45,3,2,0, + 69,83,14,15,12,10,11,70,71,65, + 66,72,73,74,75,77,78,79,80,81, + 84,85,64,86,87,88,89,90,91,92, + 93,94,95,61,44,45,27,22,28,29, + 30,23,26,31,24,25,3,2,1,4, + 5,6,8,0,3,61,62,64,0,64, + 86,87,88,89,90,91,92,93,94,95, + 9,8,70,71,10,11,66,65,72,73, + 74,75,77,78,12,79,80,81,68,45, + 62,84,85,63,4,5,6,61,25,3, + 0,8,2,44,45,3,27,46,47,58, + 28,48,29,49,50,30,51,52,26,59, + 31,60,53,54,55,56,57,1,7,4, + 5,6,67,22,23,24,0,35,37,9, + 41,43,38,33,39,40,36,34,42,32, + 25,3,14,15,12,8,10,11,20,21, + 16,2,1,7,17,18,19,13,0,76, + 27,46,22,47,58,28,48,29,49,50, + 30,23,51,52,26,59,31,60,53,54, + 24,55,56,57,1,7,8,4,5,6, + 25,3,32,2,0 }; }; public final static byte asr[] = Asr.asr; @@ -1079,39 +1124,39 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface Nasb { public final static char nasb[] = {0, - 99,30,20,17,158,31,94,30,30,95, - 67,95,67,67,95,67,95,89,164,136, - 30,30,62,37,87,60,107,143,107,143, - 107,107,107,143,154,30,143,87,164,10, - 10,86,133,31,18,67,140,30,30,164, - 30,103,82,87,30,58,67,133,30,133, - 30,133,65,86,51,115,171,135,143,67, - 55,63,111,16,18,18,107,30,30,149, - 30,30,18,37,30,8,30,17,1,87, - 30,87,30,143,167,133,107,133,12,33, - 48,53,12,30,145,8,8,8,8,8, - 52,8,8,8,30,30,30,30,30,30, - 30,30,30,30,30,87,129,23,30,118, - 143,133,30,8,30,30,30,18,8,18, - 123,146,30,146,146,103,149,30,149,135, - 30,30,30,82,87,8,87,133,38,17, - 72,107,44,30,30,12,14,87,12,53, - 52,14,8,8,8,8,8,8,8,8, - 8,8,8,87,87,131,145,145,40,40, - 69,146,8,8,8,8,8,8,8,8, - 8,8,8,8,8,8,8,8,8,146, - 8,10,10,128,164,115,38,133,125,18, - 87,30,87,87,111,149,8,87,167,135, - 44,38,8,107,14,30,8,8,53,52, - 8,164,84,87,87,87,53,30,30,30, - 30,30,30,30,30,30,30,30,30,30, - 30,30,30,86,87,162,76,47,18,125, - 149,146,149,149,8,38,18,8,30,140, - 67,38,53,53,133,78,162,30,30,8, - 115,87,44,42,125,18,87,30,135,8, - 67,143,47,87,38,46,30,107,8,97, - 87,125,18,149,143,44,109,55,53,107, - 8,149,87,38,53,149 + 154,31,21,60,150,10,99,31,31,31, + 100,76,100,76,76,100,76,100,94,36, + 109,31,31,71,12,134,32,31,106,143, + 106,143,106,106,106,143,158,31,143,134, + 36,19,19,133,125,10,61,76,140,31, + 31,36,31,102,63,134,31,39,134,76, + 125,31,125,31,125,74,133,55,117,127, + 108,143,76,65,72,113,59,61,61,106, + 31,31,145,31,31,61,12,31,8,31, + 60,1,134,31,134,31,143,136,125,106, + 125,15,162,52,57,15,31,166,8,8, + 8,8,8,56,8,8,8,31,31,31, + 31,31,31,31,31,31,31,31,134,121, + 24,31,45,143,125,31,8,31,31,31, + 61,8,61,170,167,31,167,167,102,145, + 31,145,108,31,31,31,63,134,8,134, + 125,13,60,78,106,43,31,31,15,92, + 134,15,57,56,92,8,8,8,8,8, + 8,8,8,8,8,8,134,134,123,166, + 166,82,82,68,167,8,8,8,8,8, + 8,8,8,8,8,8,8,8,8,8, + 8,8,167,8,19,19,120,36,117,13, + 125,172,61,134,31,134,134,113,145,8, + 134,136,108,43,13,8,106,92,31,8, + 8,57,56,8,36,131,134,134,134,57, + 31,31,31,31,31,31,31,31,31,31, + 31,31,31,31,31,31,133,134,34,86, + 51,61,172,145,167,145,145,8,13,61, + 8,31,140,76,13,57,57,125,88,34, + 31,31,8,117,134,43,17,172,61,134, + 31,108,8,76,143,51,134,13,50,31, + 106,8,41,134,172,61,145,143,43,84, + 65,57,106,8,145,134,13,57,145 }; }; public final static char nasb[] = Nasb.nasb; @@ -1119,24 +1164,24 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface Nasr { public final static char nasr[] = {0, - 87,86,85,84,78,83,82,5,0,51, - 0,79,0,29,0,31,1,22,0,33, - 1,105,87,86,85,84,78,83,82,0, - 109,0,120,1,28,0,1,49,0,95, - 0,125,0,72,0,94,71,5,1,0, - 1,5,47,0,5,71,0,113,0,133, - 0,1,35,46,33,44,26,0,1,115, - 0,1,59,91,0,33,44,63,62,26, - 0,111,0,62,63,1,24,0,78,74, - 75,76,77,66,53,0,127,0,128,28, - 1,0,1,28,36,98,27,0,123,0, - 36,27,73,49,1,28,0,1,28,52, - 32,0,28,52,1,65,0,24,33,44, - 62,63,1,0,26,44,33,1,0,44, - 33,1,10,0,59,1,31,0,27,36, - 1,37,0,26,33,35,0,28,1,107, - 0,1,28,26,57,0,101,1,59,0, - 28,1,129,0 + 88,87,86,85,79,84,83,5,0,110, + 0,1,50,0,80,0,126,0,52,0, + 34,1,106,88,87,86,85,79,84,83, + 0,134,0,1,29,27,58,0,114,0, + 128,0,73,0,1,29,53,33,0,95, + 72,5,1,0,1,5,48,0,32,1, + 23,0,112,0,5,72,0,1,116,0, + 1,36,47,34,45,27,0,1,60,92, + 0,96,0,124,0,34,45,64,63,27, + 0,30,0,79,75,76,77,78,67,54, + 0,1,29,37,99,28,0,27,45,34, + 1,0,37,28,74,50,1,29,0,24, + 34,45,63,64,1,0,29,1,130,0, + 63,64,1,24,0,102,1,60,0,45, + 34,1,10,0,28,37,1,38,0,29, + 1,108,0,129,29,1,0,27,34,36, + 0,121,1,29,0,60,1,32,0,29, + 53,1,66,0 }; }; public final static char nasr[] = Nasr.nasr; @@ -1144,16 +1189,16 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface TerminalIndex { public final static char terminalIndex[] = {0, - 85,2,87,93,94,86,9,3,10,11, - 8,6,7,68,81,82,83,84,12,13, - 48,64,76,92,69,44,55,60,63,72, - 95,77,45,46,49,50,51,57,58,59, - 65,71,1,90,47,52,56,61,62,66, - 67,74,75,78,79,80,54,70,73,42, - 91,29,31,16,17,30,89,4,14,15, - 18,19,20,21,96,22,23,24,25,26, - 53,5,27,28,32,33,34,35,36,37, - 38,39,40,41,88 + 85,2,87,97,98,99,86,9,3,10, + 11,8,84,6,7,68,81,82,83,12, + 13,48,64,76,92,69,44,55,60,63, + 72,100,77,45,46,49,50,51,57,58, + 59,65,71,1,90,47,52,56,61,62, + 66,67,74,75,78,79,80,54,70,73, + 42,91,29,31,16,17,30,89,4,14, + 15,18,19,20,21,101,22,23,24,25, + 26,53,5,27,28,32,33,34,35,36, + 37,38,39,40,41,88,93,94,95,96 }; }; public final static char terminalIndex[] = TerminalIndex.terminalIndex; @@ -1161,20 +1206,20 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface NonterminalIndex { public final static char nonterminalIndex[] = {0, - 0,0,0,0,102,106,107,108,109,185, - 0,0,110,111,112,113,114,115,116,117, - 118,100,0,98,119,186,125,129,137,0, - 101,124,160,0,163,120,123,0,0,0, - 0,0,157,159,0,161,97,0,99,147, - 162,128,136,0,0,0,158,122,151,171, - 174,175,176,0,0,139,146,0,164,170, - 0,0,127,140,141,142,143,148,169,173, - 104,131,132,133,134,135,138,144,145,0, - 150,154,156,177,103,105,121,126,130,0, - 149,153,0,155,165,168,182,0,184,0, - 187,0,189,0,0,0,0,152,0,166, - 167,172,0,178,179,0,180,181,183,0, - 0,0,188,0 + 0,0,0,0,107,111,112,113,114,190, + 0,0,0,115,116,117,118,119,120,121, + 122,123,105,103,0,124,191,130,134,142, + 0,106,129,165,0,168,125,128,0,0, + 0,0,0,162,164,0,166,102,0,104, + 152,167,133,141,0,0,0,163,127,156, + 176,179,180,181,0,0,144,151,0,169, + 175,0,0,132,145,146,147,148,153,174, + 178,109,136,137,138,139,140,143,149,150, + 0,155,159,161,182,108,110,126,131,135, + 0,154,158,0,160,170,173,187,0,189, + 0,192,0,194,0,0,0,0,157,0, + 171,172,177,0,183,184,0,185,186,188, + 0,0,0,193,0,0 }; }; public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex; @@ -1208,12 +1253,12 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface ScopeLhs { public final static char scopeLhs[] = { - 76,74,5,76,51,51,74,67,40,64, - 51,35,11,74,110,64,51,91,32,6, - 5,5,21,102,127,126,62,80,57,51, - 33,50,75,75,75,3,94,91,7,57, - 74,76,41,76,74,5,102,57,91,86, - 85,84,83,82,102,35,57,46,35 + 77,75,5,77,52,52,75,68,41,65, + 52,36,11,75,111,65,52,92,33,6, + 5,5,22,103,128,127,63,81,58,52, + 34,51,76,76,76,3,95,92,7,58, + 75,77,42,77,75,5,103,58,92,87, + 86,85,84,83,103,36,58,47,36 }; }; public final static char scopeLhs[] = ScopeLhs.scopeLhs; @@ -1221,12 +1266,12 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface ScopeLa { public final static byte scopeLa[] = { - 61,61,61,61,67,67,61,61,81,44, - 67,44,44,8,44,44,67,24,61,44, - 44,67,62,4,67,67,44,2,7,67, - 44,1,1,1,1,44,63,1,44,7, - 8,8,32,1,1,44,1,7,24,6, - 57,58,58,53,1,2,7,2,2 + 62,62,62,62,68,68,62,62,82,45, + 68,45,45,9,45,45,68,25,62,45, + 45,68,63,4,68,68,45,2,8,68, + 45,1,1,1,1,45,64,1,45,8, + 9,9,33,1,1,45,1,8,25,7, + 58,59,59,54,1,2,8,2,2 }; }; public final static byte scopeLa[] = ScopeLa.scopeLa; @@ -1247,35 +1292,35 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface ScopeRhs { public final static char scopeRhs[] = {0, - 187,121,0,186,0,121,0,154,186,0, - 154,0,226,2,206,0,98,0,225,2, - 2,4,0,98,98,0,153,43,0,97, - 0,219,96,0,31,146,0,167,191,96, - 8,166,0,99,0,0,164,96,2,157, - 0,164,96,2,0,175,2,0,152,96, - 0,174,0,143,152,0,9,0,169,0, - 143,0,9,0,120,25,201,96,43,0, - 120,201,96,25,43,0,120,25,43,0, - 120,201,96,43,0,120,43,0,128,0, - 2,0,166,98,0,2,98,0,164,96, - 2,128,0,2,0,164,98,0,145,2, - 0,157,0,167,198,96,8,122,214,57, - 0,99,0,214,57,0,125,3,0,0, - 0,99,0,167,198,96,8,214,57,0, - 3,0,0,0,99,0,154,0,100,0, - 213,96,154,0,96,154,0,152,100,0, - 185,57,0,125,0,185,59,0,185,58, - 0,195,96,8,212,122,211,173,0,212, - 122,211,173,0,3,0,0,99,0,211, - 173,0,125,0,3,0,0,99,0,195, - 96,8,211,173,0,182,0,143,0,142, - 0,141,0,140,0,139,0,132,37,0, - 77,2,101,98,100,0,132,119,126,2, - 40,0,53,123,0,193,96,8,0,126, - 84,115,0,29,118,0,176,2,0,98, - 107,0,176,2,14,0,167,191,96,8, - 119,176,2,0,98,3,0,105,0,99, - 0,210,2,100,0,126,43,100,0,126, + 193,127,0,191,0,127,0,159,191,0, + 159,0,232,2,212,0,103,0,231,2, + 2,4,0,103,103,0,159,44,0,102, + 0,225,101,0,31,151,0,173,197,101, + 9,172,0,104,0,0,170,101,2,163, + 0,170,101,2,0,181,2,0,158,101, + 0,179,0,149,158,0,9,0,174,0, + 149,0,9,0,126,26,207,101,44,0, + 126,207,101,26,44,0,126,26,44,0, + 126,207,101,44,0,126,44,0,134,0, + 2,0,171,103,0,2,103,0,170,101, + 2,134,0,2,0,169,103,0,151,2, + 0,162,0,173,204,101,9,128,220,58, + 0,104,0,220,58,0,130,3,0,0, + 0,104,0,173,204,101,9,220,58,0, + 3,0,0,0,104,0,160,0,105,0, + 219,101,160,0,101,160,0,157,105,0, + 191,58,0,130,0,191,60,0,191,59, + 0,201,101,9,218,128,217,179,0,218, + 128,217,179,0,3,0,0,104,0,217, + 179,0,130,0,3,0,0,104,0,201, + 101,9,217,179,0,188,0,148,0,147, + 0,146,0,145,0,144,0,138,38,0, + 77,2,106,103,105,0,138,124,132,2, + 41,0,53,128,0,199,101,9,0,132, + 85,121,0,29,123,0,182,2,0,103, + 112,0,182,2,16,0,173,197,101,9, + 124,182,2,0,103,3,0,110,0,104, + 0,216,2,105,0,132,44,105,0,132, 2,0 }; }; @@ -1284,23 +1329,23 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface ScopeState { public final static char scopeState[] = {0, - 1509,0,599,0,2451,1475,2403,0,1028,966, - 478,2493,1726,1896,1856,761,448,691,2405,2393, - 2367,2350,1001,833,1776,554,2299,584,2485,2469, - 2461,2438,2430,468,2417,1830,1822,1672,1465,1443, - 1419,383,1397,904,1373,1349,1327,1303,1279,1255, - 1231,1207,1183,1159,1135,1111,1087,1063,1039,880, - 737,856,809,352,979,667,783,713,641,530, - 504,0,417,1488,0,1641,2221,2197,2173,2149, - 2125,2101,2077,1771,2053,2029,1667,2005,1607,1564, - 0,1491,962,793,374,2267,1487,1492,1724,960, - 1620,0,2048,411,1487,1990,569,1934,1724,1701, - 1620,1842,1953,930,902,1916,1805,0,1507,553, - 352,411,0,1883,1750,2559,1916,2267,2528,1934, - 1487,1805,1701,1743,553,1686,352,1990,2144,1529, - 1842,569,2509,1953,1929,1494,2048,939,622,566, - 930,1507,2336,1500,2332,2505,1567,2284,2182,2216, - 1559,411,2264,2240,2501,2120,1983,795,653,0 + 484,0,389,0,2632,880,1988,0,1616,1457, + 476,2668,841,388,1434,853,712,789,2479,2466, + 2453,2430,2404,1730,2524,2295,1581,1471,2653,2637, + 2622,2599,2590,598,2565,1890,1598,1422,1555,1532, + 1509,616,1486,998,1397,1372,1349,1324,1299,1274, + 1249,1224,1199,1174,1149,1124,1099,1072,1047,973, + 764,948,897,356,1023,684,810,739,657,573, + 545,0,474,723,0,614,2312,2286,2242,2213, + 2192,2166,2145,1886,2119,2098,1817,2072,1742,1678, + 0,1095,1070,644,401,2320,1420,1944,1837,2226, + 1762,0,2416,416,1420,2047,2019,1940,1837,1596, + 1762,1713,1992,839,891,1920,1653,0,1582,456, + 356,416,0,2753,2744,2687,1920,2320,2666,1940, + 1420,1653,1596,2735,456,2715,356,2047,1853,2707, + 1713,2019,724,1992,1681,2211,2416,2164,2117,517, + 839,1582,2368,1778,2346,1970,920,1821,409,596, + 1615,416,2247,448,2551,2533,2498,2492,2075,0 }; }; public final static char scopeState[] = ScopeState.scopeState; @@ -1308,39 +1353,39 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface InSymb { public final static char inSymb[] = {0, - 0,209,96,123,223,200,177,4,5,178, - 173,179,59,58,180,57,181,182,96,2, - 1,128,96,8,2,2,211,121,185,121, - 185,214,185,121,152,143,121,145,96,128, - 139,2,216,200,194,145,121,184,130,96, - 141,96,2,227,1,228,122,8,122,8, - 143,7,152,2,43,96,96,60,121,145, - 63,152,193,41,33,35,39,38,32,37, - 42,40,131,8,36,34,122,123,96,225, - 206,2,212,121,96,8,96,7,96,96, - 25,120,96,101,2,14,20,19,10,9, - 7,11,13,12,100,103,108,104,110,109, - 112,111,114,113,115,164,123,96,165,224, - 121,8,166,7,141,130,3,126,96,122, - 2,2,132,2,2,96,62,153,62,96, - 192,1,6,60,119,2,1,8,195,154, - 196,96,198,122,199,96,174,215,96,120, - 201,174,94,93,92,90,91,89,88,87, - 86,85,63,176,126,154,2,2,82,68, - 2,43,70,69,7,64,65,10,9,77, - 76,74,73,72,71,78,11,80,79,84, - 83,157,158,2,96,60,96,8,147,160, - 126,32,126,126,193,62,60,226,96,96, - 198,167,63,60,174,60,201,25,120,7, - 119,96,2,176,176,210,126,104,104,103, - 103,109,109,108,108,108,108,111,110,113, - 112,126,114,2,175,96,152,96,160,117, - 119,2,119,119,60,195,213,62,145,121, - 187,167,120,120,8,152,96,119,119,62, - 96,164,191,96,117,160,126,132,60,62, - 187,121,96,164,167,60,219,68,43,220, - 160,117,119,81,121,191,144,63,153,68, - 43,119,160,167,153,119 + 0,215,101,129,229,206,183,4,5,6, + 184,179,185,60,59,186,58,187,188,101, + 2,1,134,101,9,2,2,2,217,127, + 191,127,191,220,191,127,158,149,127,151, + 101,134,145,2,222,206,200,151,127,190, + 136,101,147,101,2,233,1,234,13,128, + 9,128,9,149,8,158,2,44,101,101, + 61,127,151,64,158,199,42,34,36,40, + 39,33,38,43,41,137,9,37,35,128, + 129,101,231,212,2,218,127,101,9,101, + 8,101,101,26,126,101,106,2,16,21, + 20,11,10,8,12,15,14,105,108,114, + 109,116,115,118,117,120,119,121,170,129, + 101,171,230,127,9,172,8,147,136,3, + 132,101,128,2,2,138,2,2,101,63, + 159,63,101,198,1,7,61,124,2,1, + 9,201,160,202,101,204,128,205,101,180, + 221,101,126,207,180,95,94,93,91,92, + 90,89,88,87,86,64,182,132,160,2, + 2,83,69,2,44,71,70,8,65,66, + 11,10,78,77,75,74,73,72,79,12, + 81,80,85,84,163,164,2,101,61,101, + 9,153,166,132,33,132,132,199,63,61, + 232,101,101,204,173,64,61,180,61,207, + 26,126,8,124,101,2,182,182,216,132, + 109,109,108,108,115,115,114,114,114,114, + 117,116,119,118,132,120,2,181,101,158, + 101,166,123,124,2,124,124,61,201,219, + 63,151,127,193,173,126,126,9,158,101, + 124,124,63,101,170,197,101,123,166,132, + 138,61,63,193,127,101,170,173,61,225, + 69,44,226,166,123,124,82,127,197,150, + 64,159,69,44,124,166,173,159,124 }; }; public final static char inSymb[] = InSymb.inSymb; @@ -1441,8 +1486,13 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym "RightParen", "RightBrace", "SemiColon", + "typeof", + "__alignof__", + "MAX", + "MIN", "__attribute__", "__declspec", + "asm", "ERROR_TOKEN", "EOF_TOKEN", "]", @@ -1550,7 +1600,7 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public final String name(int index) { return name[index]; } public final static int - ERROR_SYMBOL = 31, + ERROR_SYMBOL = 32, SCOPE_UBOUND = 58, SCOPE_SIZE = 59, MAX_NAME_LENGTH = 38; @@ -1561,20 +1611,20 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public final int getMaxNameLength() { return MAX_NAME_LENGTH; } public final static int - NUM_STATES = 326, - NT_OFFSET = 95, - LA_STATE_OFFSET = 3092, + NUM_STATES = 329, + NT_OFFSET = 100, + LA_STATE_OFFSET = 3269, MAX_LA = 2147483647, - NUM_RULES = 351, - NUM_NONTERMINALS = 134, - NUM_SYMBOLS = 229, + NUM_RULES = 355, + NUM_NONTERMINALS = 136, + NUM_SYMBOLS = 236, SEGMENT_SIZE = 8192, - START_STATE = 1524, + START_STATE = 2392, IDENTIFIER_SYMBOL = 0, - EOFT_SYMBOL = 75, - EOLT_SYMBOL = 75, - ACCEPT_ACTION = 2656, - ERROR_ACTION = 2741; + EOFT_SYMBOL = 76, + EOLT_SYMBOL = 76, + ACCEPT_ACTION = 2805, + ERROR_ACTION = 2914; public final static boolean BACKTRACK = true; diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParsersym.java index ec71d436f7c..fa23f1ba53e 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParsersym.java +++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParsersym.java @@ -15,101 +15,106 @@ package org.eclipse.cdt.internal.core.dom.lrparser.gcc; public interface GCCParsersym { public final static int - TK_auto = 26, - TK_break = 33, - TK_case = 34, - TK_char = 45, - TK_const = 21, - TK_continue = 35, - TK_default = 36, - TK_do = 37, - TK_double = 46, - TK_else = 81, - TK_enum = 57, - TK_extern = 27, - TK_float = 47, - TK_for = 38, - TK_goto = 39, - TK_if = 40, - TK_inline = 28, - TK_int = 48, - TK_long = 49, - TK_register = 29, - TK_restrict = 22, - TK_return = 41, - TK_short = 50, - TK_signed = 51, - TK_sizeof = 14, - TK_static = 25, - TK_struct = 58, - TK_switch = 42, - TK_typedef = 30, - TK_union = 59, - TK_unsigned = 52, - TK_void = 53, - TK_volatile = 23, - TK_while = 32, - TK__Bool = 54, - TK__Complex = 55, - TK__Imaginary = 56, - TK_integer = 15, - TK_floating = 16, - TK_charconst = 17, - TK_stringlit = 18, + TK_auto = 27, + TK_break = 34, + TK_case = 35, + TK_char = 46, + TK_const = 22, + TK_continue = 36, + TK_default = 37, + TK_do = 38, + TK_double = 47, + TK_else = 82, + TK_enum = 58, + TK_extern = 28, + TK_float = 48, + TK_for = 39, + TK_goto = 40, + TK_if = 41, + TK_inline = 29, + TK_int = 49, + TK_long = 50, + TK_register = 30, + TK_restrict = 23, + TK_return = 42, + TK_short = 51, + TK_signed = 52, + TK_sizeof = 16, + TK_static = 26, + TK_struct = 59, + TK_switch = 43, + TK_typedef = 31, + TK_union = 60, + TK_unsigned = 53, + TK_void = 54, + TK_volatile = 24, + TK_while = 33, + TK__Bool = 55, + TK__Complex = 56, + TK__Imaginary = 57, + TK_integer = 17, + TK_floating = 18, + TK_charconst = 19, + TK_stringlit = 13, TK_identifier = 1, - TK_Completion = 6, + TK_Completion = 7, TK_EndOfCompletion = 3, - TK_Invalid = 95, - TK_LeftBracket = 43, + TK_Invalid = 96, + TK_LeftBracket = 44, TK_LeftParen = 2, - TK_LeftBrace = 8, - TK_Dot = 68, - TK_Arrow = 82, - TK_PlusPlus = 12, - TK_MinusMinus = 13, - TK_And = 11, - TK_Star = 7, - TK_Plus = 9, - TK_Minus = 10, - TK_Tilde = 19, - TK_Bang = 20, - TK_Slash = 69, - TK_Percent = 70, - TK_RightShift = 64, - TK_LeftShift = 65, - TK_LT = 71, - TK_GT = 72, - TK_LE = 73, - TK_GE = 74, - TK_EQ = 76, - TK_NE = 77, - TK_Caret = 78, - TK_Or = 79, - TK_AndAnd = 80, - TK_OrOr = 83, - TK_Question = 84, - TK_Colon = 62, - TK_DotDotDot = 66, - TK_Assign = 63, - TK_StarAssign = 85, - TK_SlashAssign = 86, - TK_PercentAssign = 87, - TK_PlusAssign = 88, - TK_MinusAssign = 89, - TK_RightShiftAssign = 90, - TK_LeftShiftAssign = 91, - TK_AndAssign = 92, - TK_CaretAssign = 93, - TK_OrAssign = 94, - TK_Comma = 60, - TK_RightBracket = 67, - TK_RightParen = 44, - TK_RightBrace = 61, - TK_SemiColon = 24, + TK_LeftBrace = 9, + TK_Dot = 69, + TK_Arrow = 83, + TK_PlusPlus = 14, + TK_MinusMinus = 15, + TK_And = 12, + TK_Star = 8, + TK_Plus = 10, + TK_Minus = 11, + TK_Tilde = 20, + TK_Bang = 21, + TK_Slash = 70, + TK_Percent = 71, + TK_RightShift = 65, + TK_LeftShift = 66, + TK_LT = 72, + TK_GT = 73, + TK_LE = 74, + TK_GE = 75, + TK_EQ = 77, + TK_NE = 78, + TK_Caret = 79, + TK_Or = 80, + TK_AndAnd = 81, + TK_OrOr = 84, + TK_Question = 85, + TK_Colon = 63, + TK_DotDotDot = 67, + TK_Assign = 64, + TK_StarAssign = 86, + TK_SlashAssign = 87, + TK_PercentAssign = 88, + TK_PlusAssign = 89, + TK_MinusAssign = 90, + TK_RightShiftAssign = 91, + TK_LeftShiftAssign = 92, + TK_AndAssign = 93, + TK_CaretAssign = 94, + TK_OrAssign = 95, + TK_Comma = 61, + TK_RightBracket = 68, + TK_RightParen = 45, + TK_RightBrace = 62, + TK_SemiColon = 25, + TK_typeof = 97, + TK___alignof__ = 98, + TK_MAX = 99, + TK_MIN = 100, TK___attribute__ = 4, TK___declspec = 5, - TK_ERROR_TOKEN = 31, - TK_EOF_TOKEN = 75; + TK_asm = 6, + TK_ERROR_TOKEN = 32, + TK_EOF_TOKEN = 76; public final static String orderedTerminalSymbols[] = { "", @@ -118,19 +123,20 @@ public interface GCCParsersym { "EndOfCompletion", "__attribute__", "__declspec", + "asm", "Completion", "Star", "LeftBrace", "Plus", "Minus", "And", + "stringlit", "PlusPlus", "MinusMinus", "sizeof", "integer", "floating", "charconst", - "stringlit", "Tilde", "Bang", "const", @@ -207,7 +213,11 @@ public interface GCCParsersym { "AndAssign", "CaretAssign", "OrAssign", - "Invalid" + "Invalid", + "typeof", + "__alignof__", + "MAX", + "MIN" }; public final static boolean isValidForParser = true; diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParser.java index dcb4b4aa15f..854eba5efd2 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParser.java +++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParser.java @@ -1972,9 +1972,9 @@ public GPPParser(String[] mapFrom) { // constructor } // - // Rule 551: attribute_parameter ::= assignment_expression + // Rule 552: attribute_parameter ::= assignment_expression // - case 551: { action. consumeIgnore(); break; + case 552: { action. consumeIgnore(); break; } diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParserprs.java index b158265d6eb..63e98fbcbad 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParserprs.java +++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParserprs.java @@ -29,7 +29,7 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym 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 }; }; public final static byte isKeyword[] = IsKeyword.isKeyword; @@ -90,520 +90,530 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym 1,0,1,3,1,1,2,4,2,4, 7,9,5,1,3,1,0,1,1,2, 4,4,1,2,5,5,3,3,1,4, - 3,1,0,1,3,1,1,1,2,6, - 3,1,3,1,4,0,1,1,1,3, - 1,0,4,1,0,1,2,1,3,4, - 1,2,2,3,2,2,3,1,1,1, - 1,1,-260,0,0,0,-19,0,0,0, + 3,1,0,1,3,1,1,1,1,2, + 6,3,1,3,1,4,0,1,1,1, + 3,1,0,4,1,0,1,2,1,3, + 4,4,1,0,1,2,2,3,2,2, + 3,1,1,1,1,1,-263,0,0,0, + -2,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-4, + 0,0,0,0,0,0,0,-66,0,0, + 0,0,0,-56,0,0,0,0,-28,0, + 0,0,0,0,-157,0,0,0,0,0, + 0,0,0,0,0,0,0,-7,0,0, + 0,0,-505,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-2,0,0,0,0, - 0,0,-4,0,0,0,0,0,-67,0, - 0,0,0,-10,0,0,0,0,-120,0, + 0,0,0,0,0,-453,0,0,0,0, + 0,0,0,-432,0,0,0,0,0,0, + 0,0,0,0,0,0,-9,0,0,0, + -33,0,0,0,-3,-14,0,0,0,0, + 0,0,0,0,0,0,-37,0,0,0, + -107,0,0,0,0,0,-269,0,0,0, + -16,0,0,0,0,0,0,0,0,0, + -72,0,0,0,0,0,0,-115,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,-27,0,0,0,0,0,0, - 0,0,0,0,-29,0,0,0,0,0, - -3,-55,0,0,0,0,-60,0,0,0, - -272,0,0,0,0,0,0,0,0,0, + 0,0,-51,-121,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-48,0,0,0,0, - 0,-68,-483,0,0,0,0,0,-80,0, - -266,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-361,0,0,0,0,0, + 0,-99,0,0,0,-403,0,0,0,0, + 0,0,0,-133,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-112,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-17,-59, + -43,-20,0,0,0,0,0,0,0,0, + -18,0,0,0,-117,0,0,0,0,0, + -167,0,0,0,0,0,0,0,0,0, + -27,-57,0,0,-138,0,0,0,0,-67, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-118,0,0, + -34,-134,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-113,0,0,0,0,-164,0, - 0,0,-267,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-130,0,0, + 0,0,0,0,0,0,-35,-122,0,-38, + 0,0,0,0,0,0,0,0,-206,0, + 0,0,0,0,-355,0,0,0,-120,-407, + 0,0,0,0,0,0,-166,0,0,0, + 0,-82,0,-45,0,0,0,-305,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-54,0,-133,0,0,-7,0,0, - 0,0,0,-217,0,0,0,-36,0,0, - 0,0,0,0,-9,0,0,0,0,0, - -203,-252,-14,0,0,0,0,-571,0,0, + 0,0,0,0,-447,0,0,0,0,0, + 0,0,0,0,-127,0,0,0,0,-125, + 0,0,0,0,0,0,-235,0,-101,-574, 0,0,0,0,0,0,0,0,0,0, - 0,0,-450,0,0,-131,0,0,0,0, + 0,0,0,0,0,0,0,0,-30,-12, + 0,0,0,0,0,-411,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-40,0, + -202,0,0,0,0,0,-41,0,0,0, + 0,0,-13,0,0,0,0,0,0,0, + 0,0,0,-128,0,0,0,-42,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,-43,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-338,-352,0,0, - 0,0,0,-16,0,-161,0,0,0,-163, - 0,0,0,0,-65,0,0,0,0,0, - -302,0,0,0,0,0,0,0,0,0, + -81,-335,0,0,0,0,0,0,0,0, + -46,0,0,0,-245,0,0,0,0,0, + 0,-367,0,0,0,-52,0,0,0,0, + 0,0,0,0,-237,0,0,0,-63,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-57,-341,0,0,0, - -388,0,0,0,0,0,0,0,0,0, - -104,0,0,0,0,0,-535,0,-12,0, - 0,0,0,0,0,0,0,-151,0,0, - -364,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-49,-70,0,-17,-408,0, + 0,0,0,0,0,0,0,-521,0,-64, + 0,0,0,0,0,-100,0,0,0,0, + 0,-145,0,0,0,0,0,0,0,0, + 0,-69,-104,-214,0,0,0,-408,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,-79,0,0,0,0,0,0,-26,0, - 0,0,0,0,-13,0,0,0,0,0, - 0,0,0,0,0,-502,0,0,0,-33, + 0,-391,0,0,0,0,0,0,0,0, + 0,0,0,0,-10,0,0,-73,0,0, + -318,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-77,-154,0,0,0, + 0,-489,0,0,0,0,0,0,0,0, + 0,0,-98,0,0,0,0,-55,-414,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,-162,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-331, 0,0,0,0,0,0,0,0,0,0, - 0,-51,0,0,0,0,-44,0,0,0, - 0,0,-125,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-58,0,0,0,0, - 0,0,-518,0,0,0,0,0,-34,0, - 0,0,0,0,0,-50,0,0,0,-234, - 0,0,0,-98,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-37,0,-96,0,0,0,0,-39, - 0,0,0,0,0,-63,0,0,0,0, - 0,0,-320,0,0,0,0,0,-366,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-211,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-53,0,0,0, - 0,0,0,0,0,0,0,-332,0,0, - 0,-114,0,0,0,0,0,-315,0,0, - 0,-109,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-213,0,0,0,0,0,0,0, - 0,0,0,-117,0,0,0,-199,0,0, - 0,0,0,-411,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-70,-142,-415, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -87,0,0,-64,0,0,0,0,0,0, - 0,0,0,-32,0,0,0,0,0,0, - 0,0,0,0,0,0,-501,0,0,-242, - 0,0,0,0,-412,0,0,0,-405,0, + 0,0,-44,0,0,0,0,0,0,0, + -112,0,0,0,0,0,-58,0,0,0, + 0,0,-84,0,0,0,-421,0,0,0, + -555,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,-40,0,-41, - -42,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-437,0,0,0,0,0, - -418,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-216,0,0,0,0,0, + 0,0,0,0,0,0,0,-440,0,0, + 0,0,0,-123,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-56,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -484,0,0,0,0,0,-196,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-45, - 0,-231,0,0,0,0,-102,0,0,0, - 0,0,-77,0,0,0,0,-116,0,0, - 0,0,-289,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-358,0,0, - 0,0,0,0,0,0,0,0,-61,0, - 0,0,-489,0,0,0,0,0,-290,0, - 0,0,-552,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-62,0,-438,0,0,0,0,-134,0, - 0,0,0,0,-124,0,0,0,0,-500, - 0,0,0,0,-291,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-95, - 0,-71,0,0,0,0,0,0,0,0, - -75,0,0,0,-490,0,0,0,0,0, - -292,0,0,0,-553,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-429,0,0,0, - 0,0,0,0,0,0,-82,0,0,0, - -516,0,0,0,0,0,-293,0,0,0, + 0,0,0,0,0,0,0,0,-234,0, + 0,0,0,0,-85,0,0,0,0,0, + -341,0,0,0,0,0,-97,-199,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-444,-142,0,0,0,0,0,0, - 0,0,-362,0,0,0,0,-400,0,-76, - 0,0,-294,0,0,0,-83,0,0,0, + -175,0,-230,0,0,0,0,0,-86,0, + 0,0,0,0,-260,0,0,0,0,-87, + -365,0,0,0,0,-146,-292,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-556, + 0,0,-441,0,0,0,0,0,0,0, + 0,0,0,-136,0,0,0,0,0,0, + -504,0,0,-293,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-487,0, + 0,0,0,0,-252,0,0,0,0,0, + -53,0,0,0,0,0,0,0,0,0, + -294,0,0,0,-243,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-492,0,0,0,0, + 0,0,0,0,0,0,0,-103,0,0, + 0,-493,0,0,0,0,0,-295,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-564,0,0,0,0,0,-84,0, - 0,0,0,-81,-85,-262,0,0,-295,0, - 0,0,-101,0,0,0,0,0,0,0, + 0,0,-519,0,0,0,0,0,-110,0, + 0,0,0,0,-148,0,0,0,-49,-344, + 0,-503,0,0,-296,0,0,0,-205,0, 0,0,0,0,0,0,0,0,0,0, - 0,-78,0,0,-88,0,0,0,0,0, - 0,0,0,0,-89,0,0,0,0,-100, - -107,-139,0,0,-296,0,0,0,-145,0, + 0,0,0,0,0,0,0,-431,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-92,0,0, - -94,0,0,0,0,0,0,0,0,0, - -110,0,0,0,0,-144,-150,0,0,0, - -297,0,0,0,-147,0,0,0,0,0, + 0,-153,0,0,0,-50,-78,-155,-83,0, + 0,-297,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-129,0,0,0, - 0,0,0,0,0,0,-152,0,0,0, - 0,-146,-210,0,0,0,-298,0,0,0, + 0,0,0,0,0,0,0,0,-60,0, + 0,0,0,0,0,0,0,0,-65,0, + 0,0,0,-168,-170,-102,0,0,-298,0, + 0,0,-244,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-79,0,-171,0,0,0,0,0,0, + 0,0,0,0,0,-80,0,0,0,0, + -105,-172,-147,0,0,-299,0,0,0,-339, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-173,0, + 0,0,-89,0,0,0,0,0,0,0, + 0,0,-90,0,0,0,0,-149,-538,-150, + 0,0,-300,0,0,0,-340,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-174,0,-232,0,0, + -156,0,0,0,0,0,0,0,0,-91, + 0,0,0,0,-213,-176,-224,0,0,-301, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-233,0,0,0,0,0, + 0,0,0,0,0,0,-94,0,0,0, + 0,-236,-188,-238,0,0,-302,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-189, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-96,0,0,0,0,-261,-190, + -247,0,0,-410,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-113,0,-313,0, + 0,-191,0,0,-137,0,0,0,0,0, + -132,0,0,0,0,-262,-192,-330,0,0, + -452,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-342,0,-152,0,0, + 0,-253,0,0,0,0,0,-271,0,0, + 0,0,-346,-210,-349,0,0,-558,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,-363,0, + 0,0,0,0,-161,0,0,0,0,-193, + -239,-194,0,0,-333,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-310, + 0,0,0,0,0,-195,0,0,0,0, + 0,0,0,0,0,-343,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-139,0, + 0,0,0,-196,0,0,0,0,0,0, + 0,0,-163,0,0,0,0,-477,0,0, + 0,0,-539,-508,0,0,0,-394,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + -197,0,-543,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-424,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-218,0,0,0,-165,-198,0,0,0, + 0,0,0,0,0,-215,0,0,0,0, + 0,0,0,-116,0,0,0,0,0,0, + -425,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-200,0,-265,-246,0,-550,0, + 0,-525,0,0,0,0,0,-201,0,0, + 0,-552,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-231,0,0,-203, + 0,0,0,0,0,0,0,0,-426,0, + 0,0,-31,0,0,0,0,0,0,0, + 0,0,0,0,0,-207,-329,0,-350,-61, + 0,0,0,0,0,0,0,0,0,0, + 0,-32,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-270,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-404, + 0,0,-209,0,-211,0,0,-240,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-468,0,0,-219,0, + 0,0,0,0,0,0,0,-392,0,0, + -241,0,0,0,0,-369,0,0,0,0, + 0,0,0,0,0,0,0,0,-242,0, + 0,-266,0,0,0,0,0,0,0,0, + 0,0,-221,-364,0,0,0,0,-307,-108, + 0,0,0,-314,0,-222,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-119, + -443,-225,0,0,0,0,0,0,-332,0, + 0,0,0,0,0,0,0,0,-227,-118, + -315,0,0,0,0,0,0,0,-304,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-62,0,0,0,0,0,-554, + 0,0,0,0,0,-228,0,-291,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-451,-229,0,0,0,0,-356,0, + 0,0,0,0,-248,0,-289,0,0,0, -249,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-165, - 0,0,0,-143,0,0,0,0,0,0, - 0,0,-172,0,0,0,-149,0,0,-221, - 0,0,-299,0,0,0,-167,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-168,-158,0, + 0,-126,0,0,0,0,0,-268,0,0, + 0,0,-417,0,0,0,-312,0,0,0, + 0,0,0,0,0,-366,0,-220,0,-29, 0,0,0,0,0,0,0,0,0,0, - 0,0,-522,-207,-169,0,0,0,-407,0, - 0,0,-229,0,0,0,0,0,0,0, + 0,-319,0,0,-320,-151,0,0,0,0, + 0,-560,-306,0,0,0,0,-535,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,-160,0,-232,-162,0,0,0,0,0, - 0,0,0,0,-470,0,0,0,-551,0, - -170,-230,0,0,-449,0,0,0,-171,0, + 0,0,0,0,0,0,0,0,0,-327, + 0,-396,0,0,0,0,0,-371,0,-542, + 0,0,-328,0,0,0,0,0,0,0, + -334,-475,-5,0,0,0,0,0,-336,-15, + 0,0,0,0,-19,0,0,0,0,0, + 0,-317,0,0,0,0,0,0,0,0, + 0,0,0,-476,0,0,0,0,0,0, + 0,0,0,0,-290,0,0,0,-405,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-212,0,-173, - -503,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-536,-227,0,0,0,0, - -555,0,0,0,-244,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-238,-326,0,0, - 0,0,0,0,0,0,-257,0,0,0, - 0,-153,-185,-233,0,0,-330,0,0,0, + 0,0,0,0,0,0,0,-326,0,-316, + -351,0,0,0,0,0,0,0,0,0, + -544,0,0,0,0,-370,-352,-472,0,0, + 0,0,-24,-353,0,0,0,0,0,-354, + -358,0,0,0,0,0,0,0,0,-359, + -360,0,0,0,0,0,0,0,0,0, + 0,0,0,-178,0,0,0,0,0,0, + 0,0,-348,-272,0,-506,0,0,0,0, + 0,-129,0,0,0,0,0,0,0,0, + 0,0,0,0,-372,-567,-373,0,0,0, + 0,0,0,-374,0,-375,0,0,0,0, + 0,0,0,0,0,-376,-553,0,-377,-179, 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,-378,-286,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-186,0,0,0,-340,0,0,0, - -187,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, - -188,-235,0,0,0,0,0,0,-391,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,-239,-189,0,0,0,0, - 0,0,0,0,-190,0,0,0,-421,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-304,0,-191,0,0,0,0,-486,0, - 0,0,0,0,-192,0,0,0,-135,0, - 0,0,-193,-236,0,0,0,0,0,-194, - -422,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-195,0,-197,-311,-250,0,0, - 0,0,0,0,0,0,-198,0,0,0, - -549,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-306,0,0,0,0, - 0,0,0,0,0,0,-119,0,0,0, - -30,0,0,0,0,0,0,0,0,0, - 0,0,0,-228,0,0,0,-59,0,0, - 0,0,0,0,-122,0,0,0,-328,0, - 0,0,0,-310,0,0,0,0,0,-404, - 0,0,-240,-248,-99,0,-200,0,0,0, - 0,0,-86,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-547,0,0,-301, - 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,-263,-66,0,0,-159, - 0,0,0,0,0,0,0,-204,-237,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-206, - 0,0,0,0,0,0,-208,0,-243,0, - 0,0,0,0,-115,-339,-312,-216,0,0, - 0,-560,-314,0,0,0,0,-218,0,0, - 0,0,0,-219,0,0,0,0,0,0, - 0,0,-222,-258,0,0,0,-288,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,-225,0,0, - 0,0,0,0,0,0,0,0,-307,0, - 0,0,0,0,-226,0,0,0,-286,0, - 0,0,-245,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-539,0,0,0,0,0,0, - 0,0,0,-287,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-246,0,0,0, - -215,0,0,-259,0,0,0,-265,-309,0, - 0,-414,0,0,0,0,0,0,0,0, - 0,0,0,0,-327,0,0,0,-474,0, - 0,0,-343,0,-23,-241,0,0,0,-532, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-316,0,-505,0,0,0,0, - 0,0,0,-562,0,0,0,0,0,0, - 0,0,0,0,0,0,-572,0,0,-323, - 0,-321,-345,0,-443,0,0,-346,0,-5, - 0,0,0,-15,0,0,0,0,0,0, - 0,0,0,-317,0,-324,0,0,0,0, - 0,0,-325,-331,0,0,0,0,0,0, - 0,-201,0,0,0,-283,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-379, + 0,-380,-406,-303,-381,0,0,0,0,0, + -338,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-382,-569,-383,-54,0,0, + 0,-164,0,0,0,0,0,0,0,0, + 0,-384,0,0,0,0,-446,0,0,-467, + 0,-385,0,0,0,-423,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-21,0, - -333,0,-127,0,0,0,0,0,0,-401, - -347,0,0,0,-123,0,0,0,0,0, - 0,0,-423,0,0,0,0,0,0,0, - 0,0,0,-268,0,0,0,0,-360,0, + 0,0,0,0,-428,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-88,0, + 0,0,0,0,0,0,0,-565,-422,0, + 0,0,0,0,0,0,0,0,0,-409, + -386,-251,-387,-469,0,0,0,0,0,0, + 0,-478,-169,-388,-389,0,0,-434,-448,0, + -390,-393,0,0,0,0,0,0,0,-479, + 0,0,0,0,-226,0,0,0,0,0, + 0,0,0,0,0,0,0,-395,0,0, + 0,0,0,0,0,0,-287,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-397, + 0,0,0,0,0,0,0,0,0,-68, + -486,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-575,-500,-398,0,-399,0, + 0,0,0,0,0,0,0,0,0,-400, + 0,0,-309,0,0,-480,-402,0,-429,0, + 0,0,0,0,0,0,-288,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-311, + 0,0,0,0,-430,0,0,-436,0,0, + -321,0,0,0,0,0,0,0,0,0, + 0,0,0,-497,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-280,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + -488,0,-496,-464,-465,-437,0,0,0,0, + 0,0,0,0,0,-438,-512,-23,0,0, + 0,-439,0,0,0,0,0,0,-454,-455, + -520,0,0,0,0,-473,0,-534,-457,-462, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-281,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-498,0,0,0,0, + 0,0,0,-282,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-502,0, + 0,0,0,0,-283,0,0,0,-466,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-308,0,0, + -561,0,0,0,0,-6,0,0,0,0, + 0,0,0,0,0,0,0,0,-470,-572, + 0,-557,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-255,-513,-484,-530,0, + 0,0,0,0,0,-485,-491,-514,0,0, + 0,0,0,0,0,0,-545,-566,0,-501, + 0,0,0,0,0,0,0,0,0,0, + -515,0,0,0,0,0,0,0,0,-516, + 0,0,0,0,0,0,-74,0,0,0, + 0,0,0,0,0,0,0,0,0,-507, + 0,0,-522,-39,0,0,0,0,-526,-527, + 0,0,0,0,0,-532,-540,-541,-549,0, + 0,0,0,-559,-564,0,0,0,0,0, + -124,0,0,0,-22,0,0,0,0,0, + 0,0,0,-528,0,0,0,0,0,0, + 0,0,0,-109,0,0,0,0,0,0, + 0,0,0,-435,0,-323,-529,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,-284, + 0,0,0,-412,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-285,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-401,0,0, + 0,0,0,0,0,-130,0,0,-547,0, + -25,0,-548,0,0,0,0,0,0,0, + 0,0,0,0,-481,0,0,0,0,-562, 0,0,0,0,0,0,0,0,0,0, - -329,0,0,0,0,0,-166,-348,-336,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-368,-313,-469,0,0,-126,0,0, - 0,0,0,0,0,0,0,0,0,0, - -353,-349,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-223,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-350, - 0,-72,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -351,0,0,-355,-334,0,0,0,0,-28, - 0,0,0,0,0,0,0,-363,0,0, - -356,0,0,0,0,0,0,0,-464,0, - 0,0,0,0,0,-465,0,0,0,0, - 0,0,0,0,0,0,-428,0,0,0, - 0,0,-393,-357,0,-402,0,0,-540,0, - 0,0,0,0,0,0,-367,0,0,0, - 0,-284,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,-369,0,-285,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-337,0,-370,-371, - -18,0,0,-409,0,-318,0,0,0,0, - 0,0,0,0,0,0,0,0,-541,0, - 0,0,-202,-372,-303,0,0,0,0,-403, - -550,-277,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-373,0,-419,-472,0,0, - 0,-440,0,0,0,0,0,0,0,0, - -20,0,0,0,-335,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-566,-374, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-406,-466, - 0,-431,0,0,-448,0,0,0,-420,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-375,0,0, - -209,0,0,0,0,0,-425,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -361,0,0,0,0,0,0,0,0,0, - -445,0,0,0,-376,0,0,0,0,0, - 0,0,-377,0,0,-473,0,0,-378,0, - 0,0,0,0,-475,-497,-379,-509,0,0, - 0,0,-461,0,0,0,0,0,0,0, - -278,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-380,0,0,0,0,0,0, - -274,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,-279,0,0,0, - -476,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-517, - 0,-485,-381,0,0,0,-280,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-305, - 0,0,-308,0,0,0,0,-424,-382,-6, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-383,0,-384,-385,-493,-495,-462, - -499,-386,0,0,0,0,-527,-387,0,-390, - 0,0,0,-389,-392,0,-531,0,0,0, - 0,0,0,0,0,0,0,0,0,-542, - 0,-35,-510,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -394,-511,-512,-513,0,0,0,-563,0,0, - -395,0,0,0,0,0,0,0,0,0, - 0,-396,-397,0,-399,-426,-427,-433,0,-434, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-554,0,0,0,0,0,0, - 0,0,0,0,0,0,-281,0,0,0, - -525,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-435, - 0,-436,-451,-452,0,-454,-459,-463,-467,-481, - 0,-482,-488,-498,0,-558,-569,-504,-519,-523, - -524,0,0,0,0,0,0,-176,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-38, - 0,0,0,-46,0,0,0,0,0,-529, - 0,0,0,0,-282,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-398,0,0, - -537,0,0,0,-538,-468,0,0,-526,-22, - 0,0,-544,0,-137,0,-546,-556,0,-561, - 0,-447,0,0,0,0,0,-545,-559,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-453,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-24,-136,0,0,0, - 0,0,0,0,0,0,0,0,0,-565, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-455,-410,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-415,-568,0,0,0,0,0, - 0,0,0,-570,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-492, - -508,0,-543,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,-528,-514,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-432,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,-530,-515,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-548,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-534,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,-567,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -491,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,-573, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-105,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-1,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,0, - 0,0,0,0,-47,0,0,0,0,-52, - 0,0,0,-121,0,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, - 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,-273,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-73,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -174,0,0,0,0,-93,0,0,0,0, - 0,0,0,0,0,0,-138,0,0,0, - 0,0,0,0,0,0,0,-140,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, - 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,-156,0, - 0,0,0,0,0,0,0,-214,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-269,0,0, - 0,0,0,0,0,-275,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-74,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-276,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-25,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, - -177,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,-178, - 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,-179,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,-180,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-181, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-182,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-183,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-184,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-261,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-270, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-271,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-354,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-441,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-8,0,-157, - -300,0,-477,-478,0,0,0,0,-11,0, - 0,0,0,0,0,0,0,0,0,-90, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-128,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,0,0,0,0,0,0, - 0,0,0,0,0,0,-91,0,0,0, - 0,0,-479,0,0,0,0,-322,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-108,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,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,-31,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-494,0,0,0,0,0,0,0,0, - 0,0,0,0,-103,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-155,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, - -154,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-344,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-496, - 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,-413,0,0, - 0,0,0,-458,-253,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-36,0, + 0,0,0,0,0,0,0,-458,-511,0, + -546,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,-254, - 0,-342,0,0,0,0,0,0,0,0, - -111,0,0,0,0,0,0,-251,0,0, + 0,-517,0,0,0,0,0,0,0,0, + 0,0,0,-324,0,-568,-571,0,0,0, + 0,0,-495,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-494,0,-573, 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,-531,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,-69,0,0,0,0, - 0,0,0,0,0,0,0,-132,0,0, - 0,0,0,-247,0,0,0,0,0,-319, + 0,-518,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,-487,0,0,0,0,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,-521,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-205,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-220,0,0,0,0,0,-359,0, - 0,0,-365,0,0,0,0,0,-557,0, - 0,-480,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-430,0,0,0,-471, - 0,0,0,0,-506,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-255,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,-507,0,0,0,-148,0,0, - 0,0,0,0,0,0,-175,0,0,0, - 0,0,0,0,0,-256,0,0,0,0, - 0,-520,0,0,-264,0,0,0,0,-439, - 0,0,0,0,0,-457,0,0,-460,0, - 0,0,0,0,0,0,0,0,0,-446, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-416,0, - 0,0,0,0,0,-417,0,0,0,0, - 0,0,0,0,0,0,-442,0,0,0, - 0,0,0,0,0,-574,0,0,0,0, 0,0,-533,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,-551,0, + 0,0,0,0,0,0,0,-537,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,-570,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,-576,-482,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,-1,0,0,0,0,0,-337, + 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,0,0,-204,0,0,0,0,0, + -75,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,-450,0,0, + 0,0,0,0,0,-217,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,-275,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,-47, + 0,0,0,0,0,0,0,-276,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-26,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,-95,0,0,0,0,0,-483,0,0, + 0,0,0,0,0,0,0,0,0,0, + -180,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,-48,0,0,0, + 0,0,0,0,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,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-159,0,0,0,0, + 0,0,-143,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,-76,0, + 0,0,-111,0,0,0,-131,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,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-277,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-278,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-279, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-181,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-182,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-183,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-184,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + -185,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-186,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-187,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-264,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-273,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + -274,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-357,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-444,0,0,0,-212,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-8,0,-160,0, + 0,0,0,0,0,0,0,-11,-140,0, + 0,0,0,0,0,0,0,0,-92,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,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,-93,0,0,0, + 0,0,0,0,0,0,0,-325,-418,0, + 0,0,0,0,0,0,0,0,-106,0, + 0,0,0,0,0,0,-114,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,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,-459,0,0,0, + 0,-158,0,-347,0,0,0,0,0,0, + 0,0,-177,0,0,0,0,0,0,0, + -144,0,0,0,0,0,0,0,0,0, + 0,0,-416,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,-523,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,-345,0,0, + 0,0,0,0,0,0,-71,0,0,0, + 0,0,0,0,-461,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, + -135,0,0,0,0,0,-536,0,0,-256, + 0,0,-250,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + -322,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, + -490,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-499,-524,0, + 0,0,0,0,-223,0,0,0,0,0, + -208,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-362,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-368,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-563,0,0, + 0,0,0,0,0,0,0,0,0,-433, + 0,0,0,0,0,-474,0,0,0,0, + 0,0,0,0,-509,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-510,0, + 0,0,0,0,-254,0,0,0,0,0, + 0,-259,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + -267,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-442,0,0,0,0, + 0,-449,0,0,0,0,-257,0,-460,0, + 0,-463,0,0,0,0,0,0,0,0, + 0,0,0,-258,-419,0,0,0,0,0, + 0,0,0,0,0,0,0,-427,0,0, + 0,-471,0,0,0,0,0,0,0,0, + 0,0,0,-420,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-445,-577,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,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0 }; }; public final static short baseCheck[] = BaseCheck.baseCheck; @@ -613,619 +623,634 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym public interface BaseAction { public final static char baseAction[] = { - 182,4,143,87,87,30,30,72,72,42, - 42,46,46,182,1,1,15,15,15,15, + 183,4,144,88,88,31,31,73,73,43, + 43,47,47,183,1,1,15,15,15,15, 15,15,15,15,16,16,16,14,11,11, - 6,6,6,6,6,6,2,70,70,5, - 5,12,12,48,48,144,144,145,66,66, - 47,17,17,17,17,17,17,17,17,17, + 6,6,6,6,6,6,2,71,71,5, + 5,12,12,49,49,145,145,146,67,67, + 48,17,17,17,17,17,17,17,17,17, 17,17,17,17,17,17,17,17,17,17, - 17,146,146,146,123,123,18,18,18,18, + 17,147,147,147,124,124,18,18,18,18, 18,18,18,18,18,18,18,18,18,19, - 19,183,183,184,184,185,149,149,150,150, - 147,147,151,148,148,20,20,21,21,22, - 22,22,24,24,24,24,28,28,28,29, - 29,29,31,31,31,31,31,32,32,32, - 33,33,34,34,35,35,37,37,38,38, - 39,39,45,45,44,44,44,44,44,44, - 44,44,44,44,44,44,44,43,36,152, - 152,101,101,186,186,96,212,212,73,73, - 73,73,73,73,73,73,73,74,74,74, - 71,71,65,65,187,187,75,75,75,108, - 108,188,188,76,76,76,189,189,77,77, - 77,77,77,78,78,88,88,88,88,88, - 88,88,88,53,53,53,53,53,109,109, - 107,107,54,190,23,23,23,23,23,52, - 52,91,91,91,91,91,159,159,154,154, - 154,154,154,155,155,155,156,156,156,157, - 157,157,158,158,158,92,92,92,92,92, - 93,93,93,13,13,13,13,13,13,13, - 13,13,13,13,102,127,127,127,127,127, - 127,125,125,125,160,126,126,191,162,162, - 161,161,129,129,110,82,82,83,84,56, - 51,163,163,57,55,90,90,164,164,153, - 153,130,131,131,132,68,68,165,165,61, - 61,61,59,59,58,62,62,85,85,67, - 67,67,63,94,94,104,103,103,69,69, - 60,60,64,64,49,105,105,105,97,97, - 97,98,98,99,99,99,100,100,111,111, - 111,113,113,112,112,213,213,95,95,193, - 193,193,193,193,134,50,50,167,192,192, - 135,135,135,135,136,169,194,194,40,40, - 124,137,137,137,137,196,115,114,114,128, - 128,128,170,171,171,171,171,171,171,171, - 171,171,171,171,198,198,195,195,197,197, - 117,118,118,118,118,119,199,120,116,116, - 200,200,172,172,172,172,106,106,106,201, - 201,8,8,9,202,202,203,173,166,166, - 174,174,175,176,176,7,7,10,204,204, - 204,204,204,204,204,204,204,204,204,204, - 204,204,204,204,204,204,204,204,204,204, - 204,204,204,204,204,204,204,204,204,204, - 204,204,204,204,204,204,204,204,204,204, - 80,86,86,177,177,139,139,140,140,140, - 140,140,140,3,141,141,138,138,121,121, - 89,81,79,168,168,122,122,205,205,205, - 142,142,133,133,206,206,25,25,41,41, - 26,26,207,207,178,178,178,179,179,208, - 208,180,180,27,209,209,210,210,181,181, - 181,91,132,132,132,117,117,117,191,196, - 115,63,160,1158,36,3054,3021,2536,5409,28, - 31,32,1149,1070,27,29,3004,26,24,51, - 2153,107,77,78,109,2193,1139,2241,561,536, - 537,2201,2285,157,2276,2325,2314,2340,2333,1566, - 2364,2366,144,274,2426,1490,294,159,145,2959, - 36,1183,33,1102,5507,28,31,32,1149,1070, - 27,29,2090,26,24,51,2153,107,77,78, - 109,2193,233,2241,1259,36,280,2201,2285,2438, - 2276,2325,2314,2340,2333,875,2364,2557,165,1344, - 902,1483,2426,1272,236,231,232,163,36,1049, - 389,3372,36,1183,33,275,5507,28,31,32, - 1149,1070,27,29,2090,26,24,51,2153,107, - 77,78,109,2193,325,3102,62,243,246,249, - 252,2859,1621,3080,36,278,328,274,1871,2373, - 577,2564,36,1183,33,2014,5413,28,31,32, - 1149,1070,58,29,1107,2719,1164,2804,3131,3201, - 3710,3756,4485,2466,36,1183,33,2800,5507,28, - 31,32,1149,1070,27,29,2090,26,24,51, - 2153,107,77,78,109,2193,344,2241,1259,36, - 454,2201,2285,5385,2276,2325,2314,2340,2333,276, - 2364,2366,144,1691,1432,36,278,518,145,163, - 36,283,2917,2598,36,1183,33,326,5413,28, - 31,32,1149,1070,57,29,499,519,2466,36, - 1183,33,2800,5507,28,31,32,1149,1070,27, - 29,2090,26,24,51,2153,107,77,78,109, - 2193,344,2241,2490,1055,2373,2201,2285,1279,2276, - 2325,2314,2340,2333,44,2364,2366,144,163,1785, - 1779,35,518,145,1308,1521,1584,2917,539,536, - 537,2462,335,1625,514,3450,2800,62,2377,36, - 1183,33,519,5550,28,31,32,1149,1070,27, - 29,1950,512,2898,2377,344,2466,36,1183,33, - 2800,5507,28,31,32,1149,1070,27,29,2090, - 26,24,51,2153,107,77,78,109,2193,344, - 2241,2917,335,2934,2201,2285,4266,2276,2325,2314, - 2340,2333,461,2364,2366,144,2918,3058,2883,514, - 518,145,5436,183,246,2917,1432,36,281,61, - 1705,2653,447,2528,2550,2154,2578,329,336,2377, - 519,2823,36,1183,33,2800,5507,28,31,32, - 1149,1070,27,29,2090,26,24,51,2153,107, - 77,78,109,2193,344,2241,2005,163,2653,2201, - 2285,2745,2276,2325,2314,2340,2333,222,2364,2366, - 144,163,36,4840,4389,518,145,3224,1415,691, - 2917,539,536,537,3664,524,1370,514,2426,36, - 294,2368,36,1183,33,519,5550,28,31,32, - 1149,1070,60,29,2584,2785,1509,2377,780,2893, - 36,1183,33,3047,5507,28,31,32,1149,1070, - 27,29,2090,26,24,51,2153,107,77,78, - 109,2193,1804,2241,902,541,5298,2201,2285,784, - 2276,2325,2314,2340,2333,691,2364,2366,144,288, - 4145,1584,515,380,145,2088,2540,36,1183,33, - 873,5507,28,31,32,1149,1070,27,29,2090, - 26,24,51,2153,107,77,78,109,2193,430, - 2241,2115,2707,523,2201,2285,289,2276,2325,2314, - 2340,2333,335,2364,2366,144,5075,2536,1107,524, - 380,145,2088,2617,36,1183,33,3557,5507,28, - 31,32,1149,1070,27,29,2090,26,24,51, - 2153,107,77,78,109,2193,335,2241,2105,873, - 733,2201,2285,3339,2276,2325,2314,2340,2333,962, - 2364,2366,144,1861,386,1293,964,380,145,2088, - 2753,36,1183,33,2154,5507,28,31,32,1149, - 1070,27,29,2090,26,24,51,2153,107,77, - 78,109,2193,1051,2241,163,36,294,2201,2285, - 1140,2276,2325,2314,2340,2333,335,2364,2366,144, - 1508,387,1293,2899,551,145,304,2800,313,2368, - 36,1183,33,3036,5550,28,31,32,1149,1070, - 59,29,3137,36,1183,33,2966,5507,28,31, - 32,1149,1070,27,29,2090,26,24,51,2153, - 107,77,78,109,2193,444,2241,691,378,1293, - 2201,2285,4977,2276,2325,2314,2340,2333,3023,2364, - 2366,144,163,36,1779,277,159,145,3137,36, - 1183,33,2536,5507,28,31,32,1149,1070,27, - 29,2090,26,24,51,2153,107,77,78,109, - 2193,89,2241,2536,103,1724,2201,2285,362,2276, - 2325,2314,2340,2333,2536,2364,2366,144,163,36, - 1779,279,374,145,3137,36,1183,33,2045,5507, - 28,31,32,1149,1070,27,29,2090,26,24, - 51,2153,107,77,78,109,2193,556,2241,2367, - 549,1324,2201,2285,789,2276,2325,2314,2340,2333, - 851,2364,2366,144,2524,36,1183,33,374,145, - 42,31,32,1149,1070,1830,1497,341,2735,377, - 163,36,1779,282,2719,3137,36,1183,33,2536, - 5507,28,31,32,1149,1070,27,29,2090,26, - 24,51,2153,107,77,78,109,2193,1430,2241, - 1219,2919,373,2201,2285,4947,2276,2325,2314,2340, - 2333,2329,2364,2366,144,163,36,1779,3620,374, - 145,2753,36,1183,33,851,5507,28,31,32, - 1149,1070,27,29,2090,26,24,51,2153,107, - 77,78,109,2193,3029,2241,691,1858,372,2201, - 2285,5231,2276,2325,2314,2340,2333,422,2364,2366, - 144,1975,36,1779,277,551,145,2683,36,1183, - 33,375,5507,28,31,32,1149,1070,27,29, - 2090,26,24,51,2153,107,77,78,109,2193, - 1903,2241,163,36,294,2201,2285,1053,2276,2325, - 2314,2340,2333,335,2364,2366,144,798,789,370, - 1304,143,145,3137,36,1183,33,448,5507,28, - 31,32,1149,1070,27,29,2090,26,24,51, - 2153,107,77,78,109,2193,382,2241,1293,36, - 280,2201,2285,5530,2276,2325,2314,2340,2333,1892, - 2364,2366,144,163,3630,1779,75,156,145,3137, - 36,1183,33,2536,5507,28,31,32,1149,1070, - 27,29,2090,26,24,51,2153,107,77,78, - 109,2193,1401,2241,163,36,3622,2201,2285,2373, - 2276,2325,2314,2340,2333,335,2364,2366,144,1222, - 2745,550,2138,155,145,3137,36,1183,33,851, - 5507,28,31,32,1149,1070,27,29,2090,26, - 24,51,2153,107,77,78,109,2193,526,2241, - 691,1923,1760,2201,2285,5354,2276,2325,2314,2340, - 2333,1391,2364,2366,144,1975,36,1779,3631,154, - 145,3137,36,1183,33,2536,5507,28,31,32, - 1149,1070,27,29,2090,26,24,51,2153,107, - 77,78,109,2193,3153,2241,460,1371,557,2201, - 2285,448,2276,2325,2314,2340,2333,2283,2364,2366, - 144,163,36,1779,3717,153,145,3137,36,1183, - 33,851,5507,28,31,32,1149,1070,27,29, - 2090,26,24,51,2153,107,77,78,109,2193, - 525,2241,523,2251,2154,2201,2285,5333,2276,2325, - 2314,2340,2333,335,2364,2366,144,1222,163,3333, - 62,152,145,3137,36,1183,33,2537,5507,28, - 31,32,1149,1070,27,29,2090,26,24,51, - 2153,107,77,78,109,2193,303,2241,987,3301, - 323,2201,2285,3339,2276,2325,2314,2340,2333,2647, - 2364,2366,144,439,62,1479,2679,151,145,3137, - 36,1183,33,1508,5507,28,31,32,1149,1070, - 27,29,2090,26,24,51,2153,107,77,78, - 109,2193,335,2241,498,335,876,2201,2285,3757, - 2276,2325,2314,2340,2333,335,2364,2366,144,3715, - 62,517,1510,150,145,3137,36,1183,33,1538, - 5507,28,31,32,1149,1070,27,29,2090,26, - 24,51,2153,107,77,78,109,2193,335,2241, - 553,335,4277,2201,2285,4288,2276,2325,2314,2340, - 2333,335,2364,2366,144,930,1994,2024,3316,149, - 145,3137,36,1183,33,1510,5507,28,31,32, - 1149,1070,27,29,2090,26,24,51,2153,107, - 77,78,109,2193,298,2241,2154,335,94,2201, - 2285,834,2276,2325,2314,2340,2333,2648,2364,2366, - 144,90,2748,62,103,148,145,3137,36,1183, - 33,2815,5507,28,31,32,1149,1070,27,29, - 2090,26,24,51,2153,107,77,78,109,2193, - 2653,2241,559,379,2154,2201,2285,390,2276,2325, - 2314,2340,2333,691,2364,2366,144,2244,5516,3291, - 62,147,145,3137,36,1183,33,1888,5507,28, - 31,32,1149,1070,27,29,2090,26,24,51, - 2153,107,77,78,109,2193,300,2241,2681,335, - 2573,2201,2285,2463,2276,2325,2314,2340,2333,405, - 2364,2366,144,2567,2373,2750,354,146,145,3137, - 36,1183,33,1510,5507,28,31,32,1149,1070, - 27,29,2090,26,24,51,2153,107,77,78, - 109,2193,335,2241,1144,335,2746,2201,2285,2559, - 2276,2325,2314,2340,2333,3058,2364,2366,144,2567, - 5436,2859,1510,160,145,3137,36,1183,33,2922, - 5507,28,31,32,1149,1070,27,29,2090,26, - 24,51,2153,107,77,78,109,2193,335,2241, - 1901,3059,2454,2201,2285,305,2276,2325,2314,2340, - 2333,327,2364,2366,144,341,786,36,397,141, - 145,3256,36,1183,33,1510,5507,28,31,32, - 1149,1070,27,29,2090,26,24,51,2153,107, - 77,78,109,2193,297,2241,71,335,2154,2201, - 2285,2919,2276,2325,2314,2340,2333,151,2364,2366, - 144,1222,1130,2461,62,190,145,3372,36,1183, - 33,3047,5507,28,31,32,1149,1070,27,29, - 2090,26,24,51,2153,107,77,78,109,2193, - 299,2241,72,161,540,2201,2285,285,2276,2325, - 2314,2340,2333,1184,2364,2557,165,3372,36,1183, - 33,1779,5507,28,31,32,1149,1070,27,29, - 2090,26,24,51,2153,107,77,78,109,2193, - 2816,2241,543,1839,324,2201,2285,431,2276,2325, - 2314,2340,2333,532,2364,2557,165,2642,36,1183, - 33,424,62,1954,31,32,1149,1070,2951,3372, - 36,1183,33,424,5507,28,31,32,1149,1070, - 27,29,2090,26,24,51,2153,107,77,78, - 109,2193,560,2241,381,335,2615,2201,2285,3127, - 2276,2325,2314,2340,2333,1396,2364,2557,165,3372, - 36,1183,33,293,5507,28,31,32,1149,1070, - 27,29,2090,26,24,51,2153,107,77,78, - 109,2193,335,2241,1987,1055,971,2201,2285,3103, - 2276,2325,2314,2340,2333,1662,2364,2557,165,2642, - 36,1183,33,774,2295,41,31,32,1149,1070, - 1567,3372,36,1183,33,3616,5507,28,31,32, - 1149,1070,27,29,2090,26,24,51,2153,107, - 77,78,109,2193,1515,2241,1568,335,2291,2201, - 2285,1019,2276,2325,2314,2340,2333,2012,2364,2557, - 165,3430,36,1183,33,423,5507,28,31,32, - 1149,1070,27,29,2090,26,24,51,2153,107, - 77,78,109,2193,2449,2241,1259,36,454,2201, - 2285,5385,2276,2325,2314,2340,2333,961,2364,2557, - 165,1266,36,1183,33,5286,4449,28,31,32, - 1149,1070,340,29,786,36,397,426,163,36, - 1049,389,539,536,537,1050,538,536,537,2642, - 36,1183,33,355,1510,3187,31,32,1149,1070, - 163,3618,4247,2280,2715,1144,1143,1632,5145,3629, - 539,536,537,163,36,1049,389,3219,50,320, - 702,322,315,609,1641,1582,774,3103,333,2517, - 3372,36,1183,33,352,5507,28,31,32,1149, - 1070,27,29,2090,26,24,51,2153,107,77, - 78,109,2193,274,2241,2982,2295,694,2201,2285, - 1602,2276,2325,2314,2340,2333,383,3488,2178,1914, - 36,2861,33,5286,4449,28,31,32,1149,1070, - 340,29,538,536,537,539,536,537,2823,353, - 2334,307,311,1016,538,536,537,2155,2417,1705, - 2653,345,2368,1931,350,1522,1510,335,507,2743, - 3205,3134,418,335,935,341,2800,3787,2714,391, - 451,2528,2550,428,2780,1632,2329,320,702,322, - 315,609,1641,2582,62,344,333,1258,3372,36, - 1183,33,531,5507,28,31,32,1149,1070,27, - 29,2090,26,24,51,2153,107,77,78,109, - 2193,2917,2241,2982,4794,2279,2201,2285,1814,2276, - 2325,2314,2340,3477,1773,2832,534,3629,286,163, - 36,1049,389,542,1839,2957,3005,420,2824,3372, - 36,1183,33,2812,5507,28,31,32,1149,1070, - 27,29,2090,26,24,51,2153,107,77,78, - 109,2193,1876,2241,786,36,397,2201,2285,453, - 2276,2325,2314,3474,3372,36,1183,33,288,5507, - 28,31,32,1149,1070,27,29,2090,26,24, - 51,2153,107,77,78,109,2193,2380,2241,43, - 2467,2360,2201,2285,62,2276,2325,3476,1600,2432, - 2566,2707,2104,36,1183,33,2911,4449,28,31, - 32,1149,1070,340,29,2818,539,536,537,163, - 36,1049,389,62,25,1894,2280,538,536,537, - 2071,36,1183,33,5286,3660,28,31,32,1149, - 1070,340,29,2445,2954,545,163,36,1049,389, - 538,536,537,351,3059,538,536,537,3814,432, - 320,702,322,316,609,1641,966,3059,3720,334, - 335,4398,2952,335,3804,335,2800,3889,62,2319, - 3488,36,1049,389,3585,3010,435,353,320,702, - 322,315,609,238,3001,2966,3021,240,2517,347, - 2368,1931,350,3022,2471,561,536,537,70,561, - 536,537,163,36,1049,389,3372,36,1183,33, - 274,5507,28,31,32,1149,1070,27,29,2090, - 26,24,51,2153,107,77,78,109,2193,2454, - 2241,1323,392,1283,2201,2285,428,2276,3364,233, - 3228,62,50,233,1222,163,36,1049,389,47, - 307,311,1016,2778,538,536,537,506,538,536, - 537,236,231,232,151,241,231,232,1222,2373, - 823,69,275,3626,2711,1446,157,357,539,536, - 537,2855,201,3480,1632,50,532,2364,2850,2280, - 356,5304,1582,3271,243,246,249,252,2859,532, - 161,504,505,2373,44,3025,662,577,1407,36, - 1183,33,5286,3660,28,31,32,1149,1070,340, - 29,62,2851,403,2804,3131,3201,3710,3756,4485, - 539,536,537,538,536,537,1818,36,1183,33, - 5310,3660,28,31,32,1149,1070,340,29,4398, - 3038,54,1299,36,1183,33,4816,4449,28,31, - 32,1149,1070,340,29,3067,320,702,322,315, - 609,3053,353,2934,2955,2570,2517,538,536,537, - 74,36,1049,389,345,2368,1931,350,62,1247, - 52,3039,343,2445,320,702,322,315,609,335, - 538,536,537,1600,2814,394,2917,335,336,428, - 320,702,322,318,609,1641,2883,1786,88,334, - 50,353,5440,2154,1767,4150,2154,1582,1549,163, - 36,1049,389,345,2368,1931,350,62,308,311, - 1016,2764,3372,36,1183,33,667,5507,28,31, - 32,1149,1070,27,29,2090,26,24,51,2153, - 107,77,78,109,2193,180,2241,53,199,434, - 2201,2285,513,3423,3372,36,1183,33,1367,5507, - 28,31,32,1149,1070,27,29,2090,26,24, - 51,2153,107,77,78,109,2193,2280,2241,602, - 1974,1285,2201,2285,44,3459,2274,36,1183,33, - 5188,3660,28,31,32,1149,1070,340,29,163, - 36,1049,389,2536,2169,1843,561,536,537,367, - 2154,2373,3372,36,1183,33,352,5507,28,31, - 32,1149,1070,27,29,2090,26,24,51,2153, - 107,77,78,109,2193,2371,2241,2154,691,433, - 2201,3220,2984,5445,320,702,322,315,609,851, - 233,1393,198,2934,1740,2014,36,2861,33,5286, - 3660,28,31,32,1149,1070,340,29,377,2373, - 1993,353,245,231,232,2832,561,536,537,407, - 3556,536,537,345,2368,1931,350,331,336,62, - 335,2743,62,393,2091,2847,3277,428,98,1926, - 36,2861,33,5286,3660,28,31,32,1149,1070, - 340,29,2329,320,702,322,315,609,2067,452, - 233,2168,3325,1258,538,536,537,2184,36,2861, - 33,5286,3660,28,31,32,1149,1070,340,29, - 3277,3034,248,231,232,2800,538,536,537,45, - 2467,62,3556,536,537,2156,99,320,702,322, - 315,609,2445,2245,344,2329,691,1258,3277,2614, - 2312,5494,3458,420,2824,335,335,2622,335,3831, - 2750,91,3833,2154,2568,320,702,322,315,609, - 1723,3372,36,1183,33,1258,5507,28,31,32, - 1149,1070,27,29,2090,26,24,51,2153,107, - 77,78,109,2193,1664,2241,3706,420,2824,2201, - 3268,3372,36,1183,33,202,5507,28,31,32, - 1149,1070,27,29,2090,26,24,51,2153,107, - 77,78,109,3130,3458,420,2824,3372,36,1183, - 33,62,5507,28,31,32,1149,1070,27,29, - 2090,26,24,51,2153,107,77,78,109,2193, - 335,2241,62,2646,2487,2201,3305,3372,36,1183, - 33,3328,5507,28,31,32,1149,1070,27,29, - 2090,26,24,51,2153,107,77,78,109,2193, - 268,2241,3420,151,573,2201,3313,1222,2852,2716, - 1556,36,1183,33,2421,3660,28,31,32,1149, - 1070,340,29,229,2935,2795,3089,2102,62,62, - 2154,62,3099,538,536,537,157,240,1807,161, - 3105,3574,181,3053,1,3147,851,2154,573,2935, - 204,216,3460,203,213,214,215,217,3874,3918, - 335,3962,3017,62,2774,170,2800,229,317,1190, - 322,169,200,184,168,171,172,173,174,175, - 157,90,62,62,62,344,181,3053,335,5419, - 851,3166,2787,68,204,216,3460,203,213,214, - 215,217,3168,3219,3239,3220,2194,2623,3226,170, - 3280,1042,67,66,65,169,182,185,168,171, - 172,173,174,175,2285,36,1183,33,5310,3660, - 28,31,32,1149,1070,340,29,3372,36,1183, - 33,62,5507,28,31,32,1149,1070,27,29, - 2090,26,24,51,2153,107,77,78,109,2193, - 3281,2241,3282,3286,179,3319,3225,1308,3180,2457, - 3287,1563,3288,1780,3338,655,2154,2154,2382,3340, - 3205,2829,320,702,322,315,609,3494,3314,36, - 1183,33,527,5507,28,31,32,1149,1070,27, - 29,2090,26,24,51,2153,87,77,78,353, - 74,36,1049,389,252,36,1049,389,223,194, - 3382,345,2368,1931,350,3372,36,1183,33,528, - 5507,28,31,32,1149,1070,27,29,2090,26, - 24,51,2153,107,77,78,109,2193,357,2241, - 50,3091,573,3327,50,3343,3088,1582,1341,62, - 1501,1582,48,62,443,2952,457,3344,2936,2800, - 3397,229,1492,36,1049,389,2473,6128,62,62, - 1185,538,536,537,157,561,536,537,2966,1655, - 181,3053,446,56,851,6128,573,2883,204,216, - 3460,203,213,214,215,217,1617,3227,55,3627, - 6128,2800,274,170,6128,229,6128,6128,6128,169, - 62,3617,168,171,172,173,174,175,157,233, - 2966,561,536,537,181,3053,535,44,851,6128, - 573,6128,204,216,3460,203,213,214,215,217, - 102,251,231,232,2990,62,6128,170,2800,229, - 506,6128,6128,169,2918,179,168,171,172,173, - 174,175,157,6128,3623,233,6128,2966,181,3053, - 624,44,851,44,573,4050,204,216,3460,203, - 213,214,215,217,530,73,6128,254,231,232, - 6128,170,361,229,503,505,2934,169,6128,177, - 168,171,172,173,174,175,157,6128,1970,2593, - 2625,6128,181,3053,713,151,851,6128,573,1222, - 204,216,3460,203,213,214,215,217,6128,3227, - 3240,336,2628,2800,6128,170,6128,229,6128,506, - 2934,169,2934,178,168,171,172,173,174,175, - 157,161,2966,6128,6128,6128,181,3053,802,151, - 851,6128,573,1222,204,216,3460,203,213,214, - 215,217,6128,6128,3510,336,3538,336,6128,170, - 6128,229,151,503,505,169,1222,188,168,171, - 172,173,174,175,157,161,6128,6128,6128,6128, - 181,3053,891,6128,851,6128,573,6128,204,216, - 3460,203,213,214,215,217,3713,6128,161,6128, - 6128,3619,6128,170,361,229,6128,6128,6128,169, - 6128,3718,168,171,172,173,174,175,157,6128, - 3401,2593,2625,6128,181,3053,980,6128,851,6128, - 573,6128,204,216,3460,203,213,214,215,217, - 3728,3231,6128,6128,6128,2800,6128,170,6128,229, - 6128,6128,6128,169,6128,193,168,171,172,173, - 174,175,157,3770,344,6128,6128,6128,181,3053, - 1069,6128,851,6128,573,6128,204,216,3460,203, - 213,214,215,217,6128,6128,6128,6128,6128,6128, - 3487,170,872,229,6128,6128,6128,169,6128,187, - 168,171,172,173,174,175,157,1723,6128,6128, - 6128,2800,181,3053,6128,6128,851,538,536,537, - 204,216,3460,203,213,214,215,217,6128,6128, - 229,6128,6128,2520,6128,170,6128,6128,6128,6128, - 6128,169,6128,195,168,171,172,173,174,175, - 6128,6128,6128,6128,6128,6128,6128,206,216,3460, - 205,213,214,215,217,430,36,1049,389,6128, - 786,36,1831,4178,1299,36,1183,33,6128,4449, - 28,31,32,1149,1070,340,29,207,209,211, - 295,296,6128,828,6128,218,208,210,338,538, - 536,537,6128,6128,6128,50,6128,1999,6128,6128, - 50,6128,1582,48,13,2445,4849,1582,981,6128, - 6128,6128,6128,538,536,537,6128,6128,6128,6128, - 6128,2237,320,702,322,316,609,1641,6128,2520, - 6128,334,3372,36,1183,33,3709,5507,28,31, - 32,1149,1070,27,29,2090,26,24,51,2153, - 107,77,78,109,2193,6128,3129,1374,36,1183, - 33,5286,3660,28,31,32,1149,1070,340,29, - 6128,335,6128,6128,4072,573,1937,6128,6128,596, - 2800,6128,539,536,537,6128,6128,2027,6128,6128, - 6128,2800,6128,6128,344,6128,6128,6128,2117,229, - 6128,6128,2800,2042,6128,6128,6128,157,6128,6128, - 229,6128,6128,6128,2714,320,702,322,315,609, - 2917,229,6128,6128,6128,2863,206,216,3460,205, - 213,214,215,217,6128,2594,6128,206,216,3460, - 205,213,214,215,217,6128,6128,6128,206,216, - 3460,205,213,214,215,217,207,209,211,295, - 296,6128,828,6128,218,208,210,207,209,211, - 295,296,6128,828,6128,218,208,210,207,209, - 211,295,296,1832,828,4849,218,208,210,6128, - 6128,6128,6128,6128,2023,6128,4849,6128,6128,872, - 6128,6128,6128,6128,6128,2062,6128,4849,1407,36, - 1183,33,5286,3660,28,31,32,1149,1070,340, - 29,6128,6128,6128,538,536,537,6128,335,6128, - 6128,6128,1222,539,536,537,3372,36,1183,33, - 2520,5507,28,31,32,1149,1070,27,29,2090, - 26,24,51,2153,107,77,78,109,3154,74, - 36,1049,389,6128,157,6128,320,702,322,315, - 609,2933,3372,36,1183,33,2863,5507,28,31, - 32,1149,1070,27,29,2090,26,24,51,2153, - 107,77,78,109,3185,3537,36,1049,389,50, - 3010,6128,6128,6128,6128,6128,1582,4882,239,6128, - 6128,6128,6128,6128,2137,6128,6128,6128,6128,6128, - 561,536,537,6128,6128,2473,6128,6128,6128,6128, - 6128,3372,36,1183,33,274,5507,28,31,32, - 1149,1070,27,29,2090,26,24,51,2153,107, - 77,78,86,6128,6128,6128,6128,6128,6128,6128, - 3372,1785,1183,2718,233,5507,28,31,32,1149, - 1070,27,29,2090,26,24,51,2153,107,77, - 78,85,6128,6128,6128,6128,237,231,232,6128, - 6128,6128,6128,3372,36,1183,33,275,5507,28, - 31,32,1149,1070,27,29,2090,26,24,51, - 2153,107,77,78,84,6128,6128,6128,6128,244, - 247,250,253,2859,6128,6128,6128,6128,3372,36, - 1183,33,577,5507,28,31,32,1149,1070,27, - 29,2090,26,24,51,2153,107,77,78,83, - 3372,36,1183,33,6128,5507,28,31,32,1149, - 1070,27,29,2090,26,24,51,2153,107,77, - 78,82,3372,36,1183,33,6128,5507,28,31, - 32,1149,1070,27,29,2090,26,24,51,2153, - 107,77,78,81,3372,36,1183,33,6128,5507, - 28,31,32,1149,1070,27,29,2090,26,24, - 51,2153,107,77,78,80,3372,36,1183,33, - 6128,5507,28,31,32,1149,1070,27,29,2090, - 26,24,51,2153,107,77,78,79,3195,36, - 1183,33,6128,5507,28,31,32,1149,1070,27, - 29,2090,26,24,51,2153,107,77,78,105, - 3372,36,1183,33,6128,5507,28,31,32,1149, - 1070,27,29,2090,26,24,51,2153,107,77, - 78,111,3372,36,1183,33,6128,5507,28,31, - 32,1149,1070,27,29,2090,26,24,51,2153, - 107,77,78,110,3372,36,1183,33,6128,5507, - 28,31,32,1149,1070,27,29,2090,26,24, - 51,2153,107,77,78,108,3372,36,1183,33, - 6128,5507,28,31,32,1149,1070,27,29,2090, - 26,24,51,2153,107,77,78,106,1847,6128, - 2438,335,2800,335,335,1222,6128,1222,1222,1438, - 6128,6128,6128,2800,6128,6128,6128,6128,6128,6128, - 2207,229,6128,6128,2800,538,536,537,6128,6128, - 6128,6128,229,6128,6128,6128,6128,157,6128,157, - 157,2520,1542,229,3482,6128,3513,3532,206,216, - 3460,205,213,214,215,217,6128,6128,6128,206, - 216,3460,205,213,214,215,217,538,536,537, - 206,216,3460,205,213,214,215,217,207,209, - 211,295,296,2445,828,6128,520,208,210,207, - 209,211,295,296,6128,828,6128,219,208,210, - 207,209,211,295,296,2568,828,2297,521,208, - 210,2800,2329,335,6128,2275,6128,1222,2387,6128, - 6128,6128,2800,6128,6128,6128,6128,6128,6128,6128, - 229,6128,6128,6128,6128,6128,6128,430,36,1049, - 389,229,6128,335,6128,6128,6128,573,6128,157, - 6128,6128,6128,6128,6128,6128,3533,206,216,3460, - 205,213,214,215,217,6128,344,6128,206,216, - 3460,205,213,214,215,217,6128,50,6128,157, - 6128,6128,6128,6128,1582,48,189,207,209,211, - 295,296,5062,828,6128,306,208,210,207,209, - 211,295,296,926,828,6128,500,208,210,1612, - 36,1183,33,5286,3660,28,31,32,1149,1070, - 340,29,1627,36,1183,33,5286,3660,28,31, - 32,1149,1070,340,29,1222,6128,6128,6128,2800, - 5498,6128,6128,6128,6128,6128,6128,6128,6128,6128, - 6128,3478,6128,6128,6128,6128,1330,6128,229,6128, - 2800,5498,6128,6128,6128,6128,6128,320,702,322, - 315,609,6128,6128,6128,6128,6128,1740,6128,229, - 320,702,322,315,609,1967,408,5131,6128,6128, - 3670,1982,36,1183,33,2529,3660,28,31,32, - 1149,1070,340,29,6128,1831,1967,408,5131,2800, - 2875,6128,6128,6128,6128,409,410,411,295,296, - 3622,828,6128,6128,573,6128,6128,6128,2966,6128, - 538,536,537,404,6128,6128,409,410,411,295, - 296,1877,828,344,6128,6128,2445,6128,1831,317, - 1190,322,2800,2875,3228,335,157,6128,573,2800, - 6128,6128,1877,189,6128,6128,6128,6128,1641,5062, - 6128,2966,333,538,536,537,6128,3326,344,6128, - 335,6128,1654,6128,2800,6128,6128,2875,6128,2445, - 157,74,36,1049,389,6128,181,3053,335,5222, - 361,6128,573,344,2917,412,414,538,536,537, - 6128,1641,6128,6128,6128,333,3242,2593,2625,2952, - 6128,344,6128,2445,6128,196,412,415,191,2917, - 1885,50,6128,5096,157,6128,6128,6128,1582,48, - 6128,2871,2722,361,2980,1641,2090,2917,6128,334, - 6128,2875,6128,6128,6128,6128,655,779,2090,3242, - 2593,2625,2798,2875,2090,6128,6128,353,6128,2875, - 2090,538,536,537,6128,2875,6128,6128,6128,347, - 2368,1931,350,538,536,537,6128,2445,6128,538, - 536,537,6128,2090,6128,538,536,537,2875,2445, - 6128,6128,6128,6128,6128,2445,6128,6128,3497,1641, - 6128,2445,6128,333,1368,36,1049,389,538,536, - 537,1641,6128,6128,2342,333,6128,1641,6128,2875, - 6128,333,6128,1641,2445,6128,6128,333,6128,6128, - 4154,6128,6128,5160,197,74,36,1049,389,538, - 536,537,5403,6128,50,6128,1641,6128,5222,6128, - 5364,1582,48,2161,2722,2445,6128,6128,2875,2609, - 36,1049,389,430,36,1049,389,6128,6128,329, - 1492,6128,335,1222,6128,50,1222,1641,538,536, - 537,5364,1582,48,6128,6128,74,36,1049,389, - 74,36,1049,389,2445,74,36,1049,389,50, - 6128,2639,6128,50,6128,157,1582,3192,157,6128, - 1582,3245,163,335,6128,3534,1641,2800,6128,6128, - 334,6128,6128,6128,6128,667,50,6128,6128,3722, - 50,6128,95,1582,48,50,344,1582,48,6128, - 6128,6128,1582,48,74,36,1049,389,163,36, - 1049,389,2739,6128,6128,6128,2766,2440,36,1049, - 389,3059,2917,97,6128,6128,163,36,1049,389, - 6128,6128,335,6128,6128,335,1222,3001,6128,573, - 163,36,1049,389,50,6128,335,6128,50,335, - 573,1582,48,573,6128,1582,2334,50,344,6128, - 163,36,1049,389,1582,2516,50,6128,157,344, - 3149,157,344,1582,918,3161,6128,6128,2714,335, - 50,6128,157,2800,2917,157,335,1582,703,189, - 2800,6128,189,6128,6128,5062,6128,335,5062,3018, - 50,2800,344,6128,6128,6128,335,1582,2516,344, - 2800,6128,6128,335,6128,3805,6128,1222,6128,6128, - 344,6128,6128,6128,6128,6128,6128,6128,2917,344, - 6128,6128,6128,6128,6128,2917,6128,6128,6128,6128, - 6128,6128,6128,510,6128,6128,2917,6128,6128,157, - 508,6128,6128,6128,3479,2917,3729,3481,6128,6128, - 6128,3422,6128,6128,6128,6128,6128,6128,6128,6128, - 535,6128,0,502,4838,0,1,230,0,40, - 6143,0,40,6142,0,1,5049,0,1354,1, - 0,40,1,6143,0,40,1,6142,0,1, - 3512,0,1,838,0,230,220,0,924,224, - 0,1018,224,0,924,225,0,1018,225,0, - 924,226,0,1018,226,0,1018,395,0,924, - 395,0,284,395,0,924,227,0,1018,227, - 0,284,287,0,924,228,0,1018,228,0, - 6363,242,0,6362,242,0,924,242,0,1018, - 242,0,6467,242,0,6466,242,0,6390,242, - 0,6389,242,0,6388,242,0,6387,242,0, - 6386,242,0,6385,242,0,6384,242,0,6383, - 242,0,6401,242,0,6400,242,0,6399,242, - 0,6398,242,0,6397,242,0,6396,242,0, - 6395,242,0,6394,242,0,6393,242,0,6392, - 242,0,6391,242,0,40,242,6143,0,40, - 242,6142,0,6167,242,0,1136,388,0,6143, - 49,0,6142,49,0,1,1018,0,1,924, - 0,1,332,0,39,838,0,39,6143,0, - 39,6142,0,455,1503,0,441,1812,0,1136, - 30,0,6140,1,0,1018,569,0,924,569, - 0,572,569,0,572,568,0,1815,319,0, - 1,571,0,1,445,0,459,825,0,458, - 1589,0,36,34,0,48,38,0,230,221, - 0,502,1917,0,6167,1,230,0,40,1, - 230,0,230,417,0,1,1963,0,1,6401, - 0,1,6400,0,1,6399,0,1,6398,0, - 1,6397,0,1,6396,0,1,6395,0,1, - 6394,0,1,6393,0,1,6392,0,1,6391, - 0,6143,38,0,6142,38,0,44,6165,0, - 44,38,0,6140,384,0,6139,384,0,1, - 2106,0,1,2434,0,6138,406,0,6137,406, - 0,230,416,0,3397,127,0,6136,1,0, - 1018,446,0,924,446,0,332,446,0,6134, - 1,0,6133,1,0,1733,92,0,33,35, - 0,40,838,0,6165,46,0,38,46,0, - 1,230,3495,0,6137,230,0,3531,230,0, - 6167,1,0,40,1,0,238,2147,0,389, - 33,0,388,30,0,3397,129,0,3397,128, - 0,3614,230,0,10,12,0,1018,566,0, - 924,566,0,1018,565,0,924,565,0,538, - 539,0,1,93,0,8,10,12,0,1018, - 566,567,0,924,566,567,0,566,567,0, - 6143,2,38,0,6142,2,38,0,6143,37, - 0,6142,37,0,3701,384,0,1018,96,0, - 924,96,0,332,96,0,36,74,0,8, - 12,0,279,3875,0,186,4006,0 + 19,184,184,185,185,186,150,150,151,151, + 148,148,152,149,149,20,20,21,21,22, + 22,22,24,24,24,24,29,29,29,30, + 30,30,32,32,32,32,32,33,33,33, + 34,34,35,35,36,36,38,38,39,39, + 40,40,46,46,45,45,45,45,45,45, + 45,45,45,45,45,45,45,44,37,153, + 153,102,102,187,187,97,213,213,74,74, + 74,74,74,74,74,74,74,75,75,75, + 72,72,66,66,188,188,76,76,76,109, + 109,189,189,77,77,77,190,190,78,78, + 78,78,78,79,79,89,89,89,89,89, + 89,89,89,54,54,54,54,54,110,110, + 108,108,55,191,23,23,23,23,23,53, + 53,92,92,92,92,92,160,160,155,155, + 155,155,155,156,156,156,157,157,157,158, + 158,158,159,159,159,93,93,93,93,93, + 94,94,94,13,13,13,13,13,13,13, + 13,13,13,13,103,128,128,128,128,128, + 128,126,126,126,161,127,127,192,163,163, + 162,162,130,130,111,83,83,84,85,57, + 52,164,164,58,56,91,91,165,165,154, + 154,131,132,132,133,69,69,166,166,62, + 62,62,60,60,59,63,63,86,86,68, + 68,68,64,95,95,105,104,104,70,70, + 61,61,65,65,50,106,106,106,98,98, + 98,99,99,100,100,100,101,101,112,112, + 112,114,114,113,113,214,214,96,96,194, + 194,194,194,194,135,51,51,168,193,193, + 136,136,136,136,137,170,195,195,41,41, + 125,138,138,138,138,197,116,115,115,129, + 129,129,171,172,172,172,172,172,172,172, + 172,172,172,172,199,199,196,196,198,198, + 118,119,119,119,119,120,200,121,117,117, + 201,201,173,173,173,173,107,107,107,202, + 202,8,8,9,203,203,204,174,167,167, + 175,175,176,177,177,7,7,10,205,205, + 205,205,205,205,205,205,205,205,205,205, + 205,205,205,205,205,205,205,205,205,205, + 205,205,205,205,205,205,205,205,205,205, + 205,205,205,205,205,205,205,205,205,205, + 81,87,87,178,178,140,140,141,141,141, + 141,141,141,3,142,142,139,139,122,122, + 90,82,80,169,169,123,123,206,206,206, + 143,143,134,134,207,207,25,25,25,42, + 42,26,26,208,208,179,179,179,180,180, + 209,209,181,181,27,210,210,211,211,182, + 182,182,28,215,215,92,133,133,133,118, + 118,118,192,197,116,64,161,1158,36,2961, + 2960,1139,5486,28,31,32,907,881,27,29, + 2951,26,24,51,1993,107,77,78,109,2020, + 513,2072,565,536,537,538,2040,2180,1507,2087, + 2216,2182,2301,2254,2584,2347,2394,144,274,71, + 36,280,159,145,2470,3597,36,910,33,2528, + 3664,28,31,32,907,881,340,29,1220,540, + 536,537,538,2557,36,910,33,233,2974,28, + 31,32,907,881,27,29,1946,26,24,51, + 1993,107,77,78,109,2020,3129,2072,404,236, + 231,232,2040,2180,2761,2087,2216,2182,2301,2254, + 275,2347,2394,144,317,1049,322,1145,380,145, + 2356,1401,36,910,33,1433,1615,42,31,32, + 907,881,243,246,249,252,3695,338,1520,1509, + 35,338,36,4999,4546,832,2273,3180,36,910, + 33,1293,5503,28,31,32,907,881,58,29, + 2767,1323,2860,2865,3159,3438,3821,4413,2484,36, + 910,33,2853,2974,28,31,32,907,881,27, + 29,1946,26,24,51,1993,107,77,78,109, + 2020,344,2072,1054,71,36,454,2040,2180,5461, + 2087,2216,2182,2301,2254,929,2347,2394,144,387, + 1415,439,448,518,145,160,36,280,3213,524, + 5616,1019,2592,36,910,33,338,3424,1526,31, + 32,907,881,519,2484,36,910,33,2853,2974, + 28,31,32,907,881,27,29,1946,26,24, + 51,1993,107,77,78,109,2020,344,2072,1672, + 2035,2734,1406,2040,2180,5107,2087,2216,2182,2301, + 2254,2084,2347,2394,144,338,36,1509,277,518, + 145,338,36,283,3213,540,536,537,538,1063, + 514,1372,2622,1371,62,2592,36,910,33,519, + 2189,41,31,32,907,881,2884,1804,1987,1611, + 2408,1441,2484,36,910,33,2853,2974,28,31, + 32,907,881,27,29,1946,26,24,51,1993, + 107,77,78,109,2020,344,2072,1539,2006,2067, + 1779,2040,2180,222,2087,2216,2182,2301,2254,2009, + 2347,2394,144,3558,313,2969,514,518,145,1406, + 338,3539,3213,540,536,537,538,694,2725,447, + 2466,2523,1442,2593,1406,557,2408,519,2840,36, + 910,33,2853,2974,28,31,32,907,881,27, + 29,1946,26,24,51,1993,107,77,78,109, + 2020,344,2072,1806,1183,2090,919,2040,2180,5431, + 2087,2216,2182,2301,2254,45,2347,2394,144,1184, + 2275,2034,183,518,145,377,1428,1143,3213,1143, + 2363,36,910,33,514,5622,28,31,32,907, + 881,27,29,519,512,540,536,537,538,253, + 607,2606,1945,608,2408,4380,2910,36,910,33, + 499,2974,28,31,32,907,881,27,29,1946, + 26,24,51,1993,107,77,78,109,2020,2100, + 2072,338,36,1509,279,2040,2180,1780,2087,2216, + 2182,2301,2254,607,2347,2394,144,288,4487,1553, + 515,380,145,2356,2634,36,910,33,2043,2974, + 28,31,32,907,881,27,29,1946,26,24, + 51,1993,107,77,78,109,2020,375,2072,2041, + 2731,1417,3361,2040,2180,5371,2087,2216,2182,2301, + 2254,967,2347,2394,144,338,36,1509,282,380, + 145,2356,1550,36,910,33,2183,5622,28,31, + 32,907,881,60,29,2770,36,910,33,1395, + 2974,28,31,32,907,881,27,29,1946,26, + 24,51,1993,107,77,78,109,2020,3555,2072, + 2116,94,386,1415,2040,2180,2189,2087,2216,2182, + 2301,2254,2189,2347,2394,144,544,1705,543,1705, + 552,145,2710,1599,3155,36,910,33,1406,2974, + 28,31,32,907,881,27,29,1946,26,24, + 51,1993,107,77,78,109,2020,1853,2072,304, + 378,1415,2519,2040,2180,303,2087,2216,2182,2301, + 2254,2546,2347,2394,144,2622,1111,294,1940,159, + 145,3155,36,910,33,919,2974,28,31,32, + 907,881,27,29,1946,26,24,51,1993,107, + 77,78,109,2020,3130,2072,1939,2622,36,294, + 2040,2180,3301,2087,2216,2182,2301,2254,325,2347, + 2394,144,1363,338,36,294,374,145,607,3155, + 36,910,33,4583,2974,28,31,32,907,881, + 27,29,1946,26,24,51,1993,107,77,78, + 109,2020,422,2072,1363,444,2620,89,2040,2180, + 103,2087,2216,2182,2301,2254,550,2347,2394,144, + 2592,36,910,33,374,145,3189,31,32,907, + 881,540,536,537,538,523,944,2767,2310,2007, + 3155,36,910,33,2088,2974,28,31,32,907, + 881,27,29,1946,26,24,51,1993,107,77, + 78,109,2020,45,2072,558,373,4442,944,2040, + 2180,1406,2087,2216,2182,2301,2254,607,2347,2394, + 144,666,5137,2729,1172,374,145,2770,36,910, + 33,1406,2974,28,31,32,907,881,27,29, + 1946,26,24,51,1993,107,77,78,109,2020, + 1158,2072,298,3663,372,1406,2040,2180,2346,2087, + 2216,2182,2301,2254,326,2347,2394,144,338,36, + 1509,3598,552,145,2976,36,910,33,919,2974, + 28,31,32,907,881,27,29,1946,26,24, + 51,1993,107,77,78,109,2020,526,2072,338, + 36,294,2604,2040,2180,2735,2087,2216,2182,2301, + 2254,2457,2347,2525,165,370,5530,607,2700,36, + 910,33,5241,2974,28,31,32,907,881,27, + 29,1946,26,24,51,1993,107,77,78,109, + 2020,607,2072,431,36,397,5572,2040,2180,2311, + 2087,2216,2182,2301,2254,775,2347,2394,144,1184, + 1373,45,328,143,145,1184,2189,3155,36,910, + 33,2134,2974,28,31,32,907,881,27,29, + 1946,26,24,51,1993,107,77,78,109,2020, + 1406,2072,161,338,36,3606,2040,2180,3219,2087, + 2216,2182,2301,2254,1442,2347,2394,144,551,300, + 2467,68,156,145,3155,36,910,33,1738,2974, + 28,31,32,907,881,27,29,1946,26,24, + 51,1993,107,77,78,109,2020,919,2072,787, + 36,1509,277,2040,2180,2762,2087,2216,2182,2301, + 2254,45,2347,2394,144,5129,525,2719,2830,155, + 145,3155,36,910,33,2202,2974,28,31,32, + 907,881,27,29,1946,26,24,51,1993,107, + 77,78,109,2020,430,2072,338,3669,1509,75, + 2040,2180,461,2087,2216,2182,2301,2254,2190,2347, + 2394,144,787,36,1509,3670,154,145,3155,36, + 910,33,3365,2974,28,31,32,907,881,27, + 29,1946,26,24,51,1993,107,77,78,109, + 2020,354,2072,338,36,1509,3679,2040,2180,606, + 2087,2216,2182,2301,2254,2398,2347,2394,144,508, + 338,2725,2519,153,145,3155,36,910,33,1406, + 2974,28,31,32,907,881,27,29,1946,26, + 24,51,1993,107,77,78,109,2020,1261,2072, + 1166,382,391,5536,2040,2180,428,2087,2216,2182, + 2301,2254,2099,2347,2394,144,2696,508,2554,508, + 152,145,3155,36,910,33,919,2974,28,31, + 32,907,881,27,29,1946,26,24,51,1993, + 107,77,78,109,2020,377,2072,542,323,45, + 498,2040,2180,738,2087,2216,2182,2301,2254,45, + 2347,2394,144,2620,2397,2450,508,151,145,3155, + 36,910,33,2202,2974,28,31,32,907,881, + 27,29,1946,26,24,51,1993,107,77,78, + 109,2020,45,2072,2697,523,804,554,2040,2180, + 289,2087,2216,2182,2301,2254,45,2347,2394,144, + 882,508,2813,2283,150,145,3155,36,910,33, + 2202,2974,28,31,32,907,881,27,29,1946, + 26,24,51,1993,107,77,78,109,2020,2884, + 2072,1899,562,1905,1992,2040,2180,2599,2087,2216, + 2182,2301,2254,45,2347,2394,144,2249,2727,3487, + 2007,149,145,3155,36,910,33,2202,2974,28, + 31,32,907,881,27,29,1946,26,24,51, + 1993,107,77,78,109,2020,2942,2072,2007,560, + 392,63,2040,2180,428,2087,2216,2182,2301,2254, + 45,2347,2394,144,5009,508,2455,508,148,145, + 3155,36,910,33,865,2974,28,31,32,907, + 881,27,29,1946,26,24,51,1993,107,77, + 78,109,2020,390,2072,2007,379,394,2872,2040, + 2180,428,2087,2216,2182,2301,2254,45,2347,2394, + 144,4511,508,2832,508,147,145,3155,36,910, + 33,305,2974,28,31,32,907,881,27,29, + 1946,26,24,51,1993,107,77,78,109,2020, + 605,2072,524,541,393,561,2040,2180,428,2087, + 2216,2182,2301,2254,45,2347,2394,144,4553,508, + 1824,2007,146,145,3155,36,910,33,297,2974, + 28,31,32,907,881,27,29,1946,26,24, + 51,1993,107,77,78,109,2020,45,2072,2007, + 4953,937,2122,2040,2180,1442,2087,2216,2182,2301, + 2254,45,2347,2394,144,2778,508,3422,2766,160, + 145,3155,36,910,33,1063,2974,28,31,32, + 907,881,27,29,1946,26,24,51,1993,107, + 77,78,109,2020,285,2072,2007,25,2369,546, + 2040,2180,2400,2087,2216,2182,2301,2254,775,2347, + 2394,144,1184,508,1442,508,141,145,3274,36, + 910,33,383,2974,28,31,32,907,881,27, + 29,1946,26,24,51,1993,107,77,78,109, + 2020,405,2072,460,351,161,70,2040,2180,1442, + 2087,2216,2182,2301,2254,45,2347,2394,144,1625, + 783,2265,597,190,145,3392,36,910,33,286, + 2974,28,31,32,907,881,27,29,1946,26, + 24,51,1993,107,77,78,109,2020,355,2072, + 338,36,861,389,2040,2180,1327,2087,2216,2182, + 2301,2254,327,2347,2525,165,3392,36,910,33, + 2936,2974,28,31,32,907,881,27,29,1946, + 26,24,51,1993,107,77,78,109,2020,3069, + 2072,453,1320,2853,152,2040,2180,4975,2087,2216, + 2182,2301,2254,45,2347,2525,165,1813,338,36, + 861,389,3235,68,338,36,861,389,3392,36, + 910,33,424,2974,28,31,32,907,881,27, + 29,1946,26,24,51,1993,107,77,78,109, + 2020,1555,2072,338,36,861,389,2040,2180,432, + 2087,2216,2182,2301,2254,435,2347,2525,165,3392, + 36,910,33,293,2974,28,31,32,907,881, + 27,29,1946,26,24,51,1993,107,77,78, + 109,2020,2865,2072,434,361,45,953,2040,2180, + 2397,2087,2216,2182,2301,2254,45,2347,2525,165, + 2069,1947,2622,2639,2175,36,278,540,536,537, + 538,3392,36,910,33,3459,2974,28,31,32, + 907,881,27,29,1946,26,24,51,1993,107, + 77,78,109,2020,2188,2072,3075,694,2725,3301, + 2040,2180,157,2087,2216,2182,2301,2254,2705,2347, + 2525,165,3451,36,910,33,423,2974,28,31, + 32,907,881,27,29,1946,26,24,51,1993, + 107,77,78,109,2020,1051,2072,431,36,397, + 2795,2040,2180,381,2087,2216,2182,2301,2254,3003, + 2347,2525,165,1268,36,910,33,5327,4579,28, + 31,32,907,881,340,29,2760,2189,426,508, + 338,36,861,389,540,536,537,538,539,536, + 537,538,1993,36,910,33,5327,3664,28,31, + 32,907,881,340,29,4271,3240,36,910,33, + 69,5503,28,31,32,907,881,57,29,3106, + 299,50,320,1338,322,315,1182,1256,1160,2364, + 3604,333,3290,2847,1184,1295,71,288,1662,36, + 2859,33,5327,4579,28,31,32,907,881,340, + 29,320,1338,322,315,1182,3300,3006,3647,1681, + 3663,1757,2843,539,536,537,538,157,1,2116, + 2731,45,577,201,3425,1860,1550,36,910,33, + 3091,5622,28,31,32,907,881,59,29,45, + 2594,229,2265,1907,307,311,731,320,1338,322, + 315,1182,1256,2547,3162,157,333,1102,2853,45, + 1732,181,2832,1212,45,919,2797,870,1026,204, + 216,3566,203,213,214,215,217,344,1228,1571, + 1507,3116,1707,3647,170,539,536,537,538,3045, + 169,182,185,168,171,172,173,174,175,2831, + 2220,45,1306,61,975,3764,4210,420,2851,3392, + 36,910,33,865,2974,28,31,32,907,881, + 27,29,1946,26,24,51,1993,107,77,78, + 109,2020,403,2072,338,36,861,389,2040,2180, + 157,2087,2216,2182,2301,2254,1408,3221,3392,36, + 910,33,865,2974,28,31,32,907,881,27, + 29,1946,26,24,51,1993,107,77,78,109, + 2020,4265,2072,1369,2975,274,2175,2040,2180,508, + 2087,2216,2182,2301,3214,3036,2629,3392,36,910, + 33,2845,2974,28,31,32,907,881,27,29, + 1946,26,24,51,1993,107,77,78,109,2020, + 54,2072,338,36,861,389,2040,2180,1494,2087, + 2216,2182,3201,2659,36,910,33,2883,4579,28, + 31,32,907,881,340,29,508,276,1904,3127, + 249,36,861,389,865,43,2440,1719,539,536, + 537,538,3124,50,448,3198,338,36,861,389, + 1160,4979,3417,2543,72,990,1184,88,1911,36, + 910,33,5327,3664,28,31,32,907,881,340, + 29,50,320,1338,322,316,1182,1256,1160,1139, + 3302,334,2189,539,536,537,538,50,1442,157, + 431,36,397,3343,1160,2181,163,2674,2920,353, + 4316,2555,607,3510,36,861,389,5545,2780,1659, + 1694,347,2122,1605,350,1285,238,320,1338,322, + 315,1182,45,240,4265,180,3878,3290,565,536, + 537,538,329,336,607,565,536,537,538,5559, + 565,536,537,538,274,3392,36,910,33,2189, + 2974,28,31,32,907,881,27,29,1946,26, + 24,51,1993,107,77,78,109,2020,45,2072, + 1904,2947,5119,233,2040,2180,52,2087,2216,3203, + 233,338,36,861,389,233,508,2981,3044,307, + 311,731,199,1854,3070,236,231,232,45,2440, + 3120,3141,241,231,232,3685,275,245,231,232, + 3056,1786,3561,540,536,537,538,53,539,536, + 537,538,433,1228,1781,36,861,389,243,246, + 249,252,3695,45,45,830,3187,3724,1184,3937, + 2920,832,1522,36,910,33,5327,3664,28,31, + 32,907,881,340,29,3095,3555,3537,2860,2865, + 3159,3438,3821,4413,784,50,869,539,536,537, + 538,157,1160,2582,335,336,872,1442,2838,961, + 3333,36,910,33,4316,2974,28,31,32,907, + 881,27,29,1946,26,24,51,1993,87,77, + 78,320,1338,322,315,1182,1050,3392,36,910, + 33,3290,2974,28,31,32,907,881,27,29, + 1946,26,24,51,1993,107,77,78,109,2020, + 1567,2072,1735,2189,45,2489,2040,2180,1184,2087, + 3107,2382,36,2859,33,5327,3664,28,31,32, + 907,881,340,29,1377,2639,1442,2113,431,36, + 1699,3714,2175,36,281,98,3329,536,537,538, + 324,157,3549,308,311,731,198,45,3215,532, + 45,1262,3551,3165,1712,862,2123,36,2859,33, + 5327,3664,28,31,32,907,881,340,29,50, + 320,1338,322,315,1182,90,1160,711,103,1425, + 1102,539,536,537,538,2472,36,2859,33,5327, + 3664,28,31,32,907,881,340,29,3165,338, + 36,861,389,1115,565,536,537,538,3187,2189, + 3329,536,537,538,99,320,1338,322,315,1182, + 508,2801,2392,864,45,1102,5224,3165,2986,5658, + 420,2851,45,2733,2814,3039,3899,5383,508,508, + 274,1278,3476,2600,320,1338,322,315,1182,233, + 508,452,407,352,1102,1933,36,910,33,5401, + 3664,28,31,32,907,881,340,29,3478,3212, + 91,248,231,232,5662,420,2851,3392,36,910, + 33,3437,2974,28,31,32,907,881,27,29, + 1946,26,24,51,1993,107,77,78,109,2020, + 90,2072,341,5658,420,2851,2040,2180,353,3122, + 1697,3358,36,278,320,1338,322,315,1182,353, + 345,2122,1605,350,2795,3187,45,3243,2133,3308, + 2808,345,2122,1605,350,539,536,537,538,343, + 3362,353,357,71,36,454,45,3363,5461,2509, + 1184,532,908,345,2122,1605,350,3392,36,910, + 33,2792,2974,28,31,32,907,881,27,29, + 1946,26,24,51,1993,107,77,78,109,2020, + 775,2072,1693,157,1184,2903,2040,2180,3364,3132, + 3597,2935,36,910,33,5253,3664,28,31,32, + 907,881,340,29,2443,36,910,33,5327,3664, + 28,31,32,907,881,340,29,161,3392,36, + 910,33,352,2974,28,31,32,907,881,27, + 29,1946,26,24,51,1993,107,77,78,109, + 2020,508,2072,508,2189,2189,3420,2040,3029,367, + 320,1338,322,315,1182,1553,3421,45,1512,356, + 1757,3901,3425,320,1338,322,315,1182,532,3426, + 179,45,3451,3676,3988,2399,2457,353,2189,3480, + 3020,5530,3200,565,536,537,538,202,200,345, + 2122,1605,350,3392,36,910,33,2133,2974,28, + 31,32,907,881,27,29,1946,26,24,51, + 1993,107,77,78,109,2020,508,2072,451,2466, + 2523,2802,2040,3056,3392,36,910,33,233,2974, + 28,31,32,907,881,27,29,1946,26,24, + 51,1993,107,77,78,109,2020,4033,2072,508, + 251,231,232,2040,3080,3392,36,910,33,3482, + 2974,28,31,32,907,881,27,29,1946,26, + 24,51,1993,107,77,78,109,2020,268,2072, + 4078,2189,577,1738,2040,3082,1944,36,910,33, + 2453,3664,28,31,32,907,881,340,29,2693, + 2189,229,1843,36,910,33,5401,3664,28,31, + 32,907,881,340,29,157,45,508,3458,3112, + 2853,181,2832,3582,223,919,3483,3001,508,204, + 216,3566,203,213,214,215,217,45,45,344, + 3518,3188,3305,194,170,317,1049,322,68,431, + 169,508,184,168,171,172,173,174,175,67, + 508,320,1338,322,315,1182,3213,1300,36,910, + 33,527,4579,28,31,32,907,881,340,29, + 1520,2921,66,3562,249,36,861,389,353,3245, + 3007,65,539,536,537,538,3567,3109,3625,3627, + 345,2122,1605,350,3398,3568,6279,6279,528,990, + 6279,1300,36,910,33,1509,4579,28,31,32, + 907,881,340,29,508,50,320,1338,322,318, + 1182,1256,1160,1883,1382,334,539,536,537,538, + 539,536,537,538,3069,6279,2368,508,2853,6279, + 2853,3179,1019,990,6279,1391,6279,614,6279,539, + 536,537,538,6279,6279,6279,2558,3235,6279,3235, + 320,1338,322,316,1182,1256,1306,6279,1550,334, + 3392,36,910,33,1904,2974,28,31,32,907, + 881,27,29,1946,26,24,51,1993,107,77, + 78,109,2020,6279,2072,3392,36,910,33,3085, + 2974,28,31,32,907,881,27,29,1946,26, + 24,51,1993,107,77,78,109,2020,357,2072, + 6279,6279,577,6279,3105,6279,2289,6279,6279,508, + 361,1803,362,508,6279,6279,6279,6279,6279,6279, + 2263,229,6279,6279,2920,45,3230,2622,2639,1184, + 508,539,536,537,538,157,565,536,537,538, + 56,181,2832,446,55,919,1278,577,2342,204, + 216,3566,203,213,214,215,217,6279,331,336, + 6279,3580,157,6279,170,6279,229,6279,1904,3608, + 169,6279,3460,168,171,172,173,174,175,3035, + 157,233,3108,2853,6279,6279,181,2832,535,1904, + 919,1904,577,6279,204,216,3566,203,213,214, + 215,217,344,254,231,232,6279,6279,6279,170, + 6279,229,775,6279,6279,169,1184,179,168,171, + 172,173,174,175,1281,157,508,508,2853,1101, + 6279,181,2832,624,6279,919,6279,577,2920,204, + 216,3566,203,213,214,215,217,3235,2490,161, + 3247,6279,2853,6279,170,6279,229,102,4168,2920, + 169,2920,177,168,171,172,173,174,175,6279, + 157,344,3204,336,6279,6279,181,2832,713,6279, + 919,530,577,6279,204,216,3566,203,213,214, + 215,217,6279,3617,336,3618,336,6279,3599,170, + 6279,229,775,6279,6279,169,1184,178,168,171, + 172,173,174,175,3819,157,6279,6279,6279,6279, + 506,181,2832,802,6279,919,6279,577,6279,204, + 216,3566,203,213,214,215,217,6279,6279,161, + 6279,6279,6279,6279,170,6279,229,6279,6279,6279, + 169,6279,188,168,171,172,173,174,175,775, + 157,6279,6279,1184,504,505,181,2832,891,6279, + 919,6279,577,6279,204,216,3566,203,213,214, + 215,217,443,6279,457,6279,6279,6279,6279,170, + 6279,229,6279,6279,6279,169,161,3684,168,171, + 172,173,174,175,3823,157,6279,6279,6279,6279, + 6279,181,2832,980,6279,919,6279,577,6279,204, + 216,3566,203,213,214,215,217,6279,6279,6279, + 6279,6279,6279,6279,170,6279,229,6279,6279,6279, + 169,6279,193,168,171,172,173,174,175,6279, + 157,6279,6279,6279,3727,6279,181,2832,1069,45, + 919,3936,577,1184,204,216,3566,203,213,214, + 215,217,6279,6279,6279,6279,6279,6279,6279,170, + 6279,229,6279,6279,6279,169,6279,187,168,171, + 172,173,174,175,1741,157,157,6279,2853,6279, + 2900,181,2832,3631,6279,919,6279,6279,6279,204, + 216,3566,203,213,214,215,217,229,6279,6279, + 6279,6279,6279,6279,170,539,536,537,538,6279, + 169,6279,195,168,171,172,173,174,175,6279, + 6279,6279,2449,6279,6279,206,216,3566,205,213, + 214,215,217,6279,6279,338,36,861,389,6279, + 6279,1571,36,910,33,5327,3664,28,31,32, + 907,881,340,29,6279,207,209,211,295,296, + 6279,638,6279,218,208,210,540,536,537,538, + 6279,6279,6279,6279,6279,6279,50,6279,3040,36, + 861,389,13,47,5008,6279,1522,36,910,33, + 5327,3664,28,31,32,907,881,340,29,6279, + 320,1338,322,315,1182,6279,6279,6279,6279,6279, + 3816,540,536,537,538,3392,36,910,33,274, + 2974,28,31,32,907,881,27,29,1946,26, + 24,51,1993,107,77,78,109,2020,6279,3005, + 6279,6279,6279,6279,6279,320,1338,322,315,1182, + 342,36,861,389,6279,3816,6279,581,3392,36, + 910,33,6279,2974,28,31,32,907,881,27, + 29,1946,26,24,51,1993,107,77,78,109, + 2020,3607,3007,3559,36,861,389,6279,2780,6279, + 6279,50,6279,6279,6279,6279,239,6279,1160,48, + 6279,6279,73,6279,6279,6279,6279,6279,565,536, + 537,538,1955,6279,6279,6279,2853,1273,45,6279, + 6279,6279,1184,6279,274,6279,6279,6279,6279,6279, + 6279,3392,36,910,33,229,2974,28,31,32, + 907,881,27,29,1946,26,24,51,1993,107, + 77,78,86,233,6279,157,6279,427,36,861, + 389,6279,3640,206,216,3566,205,213,214,215, + 217,6279,6279,6279,6279,237,231,232,6279,6279, + 6279,2045,6279,6279,6279,2853,275,6279,6279,6279, + 6279,6279,6279,207,209,211,295,296,50,638, + 6279,218,208,210,229,1160,48,6279,244,247, + 250,253,3695,6279,6279,6279,1732,6279,6279,6279, + 1339,832,5008,2135,792,6279,6279,2853,6279,6279, + 6279,6279,206,216,3566,205,213,214,215,217, + 6279,539,536,537,538,6279,229,6279,6279,249, + 36,861,389,427,36,861,389,2355,1306,6279, + 6279,6279,207,209,211,295,296,6279,638,6279, + 218,208,210,6279,206,216,3566,205,213,214, + 215,217,539,536,537,538,6279,6279,6279,1928, + 50,5008,6279,6279,50,6279,6279,1160,4587,990, + 6279,1160,48,6279,207,209,211,295,296,6279, + 638,6279,218,208,210,6279,3179,6279,6279,6279, + 3112,2549,6279,6279,6279,6279,6279,6279,865,6279, + 6279,1975,2561,5008,3392,36,910,33,6279,2974, + 28,31,32,907,881,27,29,1946,26,24, + 51,1993,107,77,78,109,3014,3392,36,910, + 33,6279,2974,28,31,32,907,881,27,29, + 1946,26,24,51,1993,107,77,78,109,3016, + 3392,36,910,33,6279,2974,28,31,32,907, + 881,27,29,1946,26,24,51,1993,107,77, + 78,109,3026,3392,1520,910,2758,6279,2974,28, + 31,32,907,881,27,29,1946,26,24,51, + 1993,107,77,78,85,3392,36,910,33,6279, + 2974,28,31,32,907,881,27,29,1946,26, + 24,51,1993,107,77,78,84,3392,36,910, + 33,6279,2974,28,31,32,907,881,27,29, + 1946,26,24,51,1993,107,77,78,83,3392, + 36,910,33,6279,2974,28,31,32,907,881, + 27,29,1946,26,24,51,1993,107,77,78, + 82,3392,36,910,33,6279,2974,28,31,32, + 907,881,27,29,1946,26,24,51,1993,107, + 77,78,81,3392,36,910,33,6279,2974,28, + 31,32,907,881,27,29,1946,26,24,51, + 1993,107,77,78,80,3392,36,910,33,6279, + 2974,28,31,32,907,881,27,29,1946,26, + 24,51,1993,107,77,78,79,3214,36,910, + 33,6279,2974,28,31,32,907,881,27,29, + 1946,26,24,51,1993,107,77,78,105,3392, + 36,910,33,6279,2974,28,31,32,907,881, + 27,29,1946,26,24,51,1993,107,77,78, + 111,3392,36,910,33,6279,2974,28,31,32, + 907,881,27,29,1946,26,24,51,1993,107, + 77,78,110,3392,36,910,33,6279,2974,28, + 31,32,907,881,27,29,1946,26,24,51, + 1993,107,77,78,108,3392,36,910,33,2725, + 2974,28,31,32,907,881,27,29,1946,26, + 24,51,1993,107,77,78,106,1865,6279,2112, + 6279,2853,6279,6279,539,536,537,538,1617,1281, + 6279,6279,2853,2853,6279,6279,6279,6279,6279,2225, + 229,990,6279,2853,539,536,537,538,6279,6279, + 6279,229,3235,6279,6279,6279,6279,6279,6279,6279, + 6279,1306,229,2549,6279,6279,6279,6279,206,216, + 3566,205,213,214,215,217,6279,6279,6279,206, + 216,3566,205,213,214,215,217,6279,6279,6279, + 206,216,3566,205,213,214,215,217,207,209, + 211,295,296,6279,638,6279,520,208,210,207, + 209,211,295,296,6279,638,6279,219,208,210, + 207,209,211,295,296,506,638,2315,521,208, + 210,2853,6279,6279,6279,2579,6279,6279,2405,2833, + 6279,6279,2853,2853,6279,6279,6279,6279,6279,1223, + 229,6279,6279,2853,2796,6279,6279,249,36,861, + 389,229,3235,6279,6279,6279,6279,6279,6279,503, + 505,6279,229,6279,6279,6279,6279,6279,206,216, + 3566,205,213,214,215,217,6279,6279,6279,206, + 216,3566,205,213,214,215,217,6279,50,6279, + 2118,408,625,6279,6279,1160,48,2686,207,209, + 211,295,296,6279,638,6279,306,208,210,207, + 209,211,295,296,851,638,6279,500,208,210, + 409,410,411,295,296,506,638,45,6279,6279, + 6279,577,1331,6279,2022,6279,2853,2796,2853,2752, + 6279,6279,6279,45,6279,6279,1752,577,6279,6279, + 344,520,36,861,389,229,6279,3235,6279,539, + 536,537,538,2022,157,6279,344,2853,2752,503, + 505,189,6279,6279,6279,6279,990,3384,6279,6279, + 157,6279,6279,2118,408,625,3235,2086,539,536, + 537,538,50,3213,6279,6279,6279,45,1256,1160, + 48,1184,333,6279,6279,990,6279,3579,2039,6279, + 412,414,6279,409,410,411,295,296,1459,638, + 6279,6279,6279,6279,6279,6279,6279,1256,2203,5318, + 361,333,6279,2752,157,1900,3423,2267,5222,1752, + 6279,3027,2752,6279,6279,3604,3218,2622,2639,577, + 6279,6279,6279,539,536,537,538,6279,2763,361, + 6279,6279,539,536,537,538,6279,6279,3306,6279, + 990,6279,6279,6279,6279,3218,2622,2639,6279,990, + 6279,2267,157,6279,6279,6279,2752,45,181,2832, + 45,1184,1256,2267,2853,6279,334,6279,2752,6279, + 6279,1256,6279,412,415,333,539,536,537,538, + 6279,2267,6279,344,353,6279,2752,196,539,536, + 537,538,6279,990,157,6279,347,2122,1605,350, + 6279,3840,3691,6279,6279,990,539,536,537,538, + 3213,2267,6279,6279,6279,1256,2752,6279,6279,333, + 6279,6279,6279,990,6279,2937,6279,1256,3612,2180, + 6279,333,577,6279,2752,1684,539,536,537,538, + 2752,249,36,861,389,1256,5455,6279,6279,333, + 6279,344,6279,990,539,536,537,538,5318,6279, + 539,536,537,538,6279,157,2549,36,861,389, + 6279,990,189,6279,6279,1256,2763,990,3384,5449, + 6279,6279,50,427,36,861,389,6279,6279,1160, + 48,6279,6279,1256,6279,6279,6279,5449,3485,1256, + 6279,6279,2853,334,6279,5448,197,50,2210,6279, + 249,36,861,389,1160,2621,249,36,861,389, + 6279,344,6279,6279,50,249,36,861,389,531, + 6279,1160,2713,2674,6279,6279,6279,191,6279,249, + 36,861,389,6279,6279,45,6279,6279,3213,577, + 4308,50,338,36,861,389,6279,50,1160,48, + 6279,95,6279,534,1160,48,50,6279,344,6279, + 6279,45,6279,1160,48,577,6279,2268,6279,97, + 50,6279,157,2274,6279,6279,6279,1160,48,2469, + 6279,6279,2303,50,344,3213,338,36,861,389, + 1160,925,338,36,861,389,2931,45,157,45, + 2135,2853,45,577,6279,2086,577,3458,6279,6279, + 6279,3213,6279,6279,45,45,6279,6279,2853,2853, + 344,6279,344,6279,6279,344,2776,50,3094,6279, + 6279,6279,3299,50,1160,3291,157,344,344,157, + 1160,2582,6279,189,45,6279,189,3213,2853,3384, + 6279,6279,3384,539,536,537,538,539,536,537, + 538,6279,2944,6279,3213,3213,6279,344,45,45, + 2938,6279,2853,2853,2449,6279,6279,6279,6279,2950, + 510,6279,6279,6279,6279,6279,6279,6279,6279,6279, + 6279,344,344,6279,3213,3960,6279,6279,6279,6279, + 6279,6279,6279,6279,6279,6279,6279,6279,3496,508, + 6279,3529,6279,6279,6279,6279,6279,6279,3213,3213, + 6279,6279,6279,6279,6279,6279,6279,6279,6279,6279, + 6279,6279,6279,3421,535,6279,0,1,230,600, + 0,502,4997,0,1,230,0,40,6294,0, + 40,6293,0,1,2482,0,691,1,0,40, + 1,6294,0,40,1,6293,0,1,3889,0, + 1,707,0,230,220,0,721,224,0,829, + 224,0,841,224,0,721,225,0,829,225, + 0,841,225,0,721,226,0,829,226,0, + 841,226,0,841,395,0,829,395,0,721, + 395,0,284,395,0,721,227,0,829,227, + 0,841,227,0,284,287,0,721,228,0, + 829,228,0,841,228,0,6514,242,0,6513, + 242,0,721,242,0,829,242,0,841,242, + 0,6618,242,0,6617,242,0,6541,242,0, + 6540,242,0,6539,242,0,6538,242,0,6537, + 242,0,6536,242,0,6535,242,0,6534,242, + 0,6552,242,0,6551,242,0,6550,242,0, + 6549,242,0,6548,242,0,6547,242,0,6546, + 242,0,6545,242,0,6544,242,0,6543,242, + 0,6542,242,0,40,242,6294,0,40,242, + 6293,0,6318,242,0,1789,388,0,6294,49, + 0,6293,49,0,1,841,0,1,829,0, + 1,721,0,1,332,0,39,707,0,39, + 6294,0,39,6293,0,455,1832,0,441,1846, + 0,1789,30,0,6291,1,0,841,573,0, + 829,573,0,721,573,0,576,573,0,576, + 572,0,1893,319,0,1,575,0,1,445, + 0,459,1564,0,458,2075,0,36,34,0, + 48,38,0,230,221,0,502,1758,0,6318, + 1,230,0,40,1,230,0,230,417,0, + 1,1501,0,1,6552,0,1,6551,0,1, + 6550,0,1,6549,0,1,6548,0,1,6547, + 0,1,6546,0,1,6545,0,1,6544,0, + 1,6543,0,1,6542,0,6294,38,0,6293, + 38,0,44,6316,0,44,38,0,6291,384, + 0,6290,384,0,1,1503,0,1,2437,0, + 6289,406,0,6288,406,0,230,416,0,3504, + 127,0,6287,1,0,841,446,0,829,446, + 0,721,446,0,332,446,0,6285,1,0, + 6284,1,0,1521,92,0,33,35,0,40, + 707,0,6316,46,0,38,46,0,1,230, + 3248,0,6288,230,0,3280,230,0,6318,1, + 0,40,1,0,238,1515,0,389,33,0, + 388,30,0,3504,129,0,3504,128,0,3450, + 230,0,10,12,0,841,570,0,829,570, + 0,721,570,0,841,569,0,829,569,0, + 721,569,0,539,540,0,1,93,0,8, + 10,12,0,841,570,571,0,829,570,571, + 0,721,570,571,0,570,571,0,6294,2, + 38,0,6293,2,38,0,6294,37,0,6293, + 37,0,3677,384,0,841,96,0,829,96, + 0,721,96,0,332,96,0,36,74,0, + 8,12,0,279,3922,0,186,4123,0 }; }; public final static char baseAction[] = BaseAction.baseAction; @@ -1234,372 +1259,372 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym public final int lhs(int index) { return lhs[index]; }; public interface TermCheck { - public final static byte termCheck[] = {0, + public final static char termCheck[] = {0, 0,1,2,3,4,5,6,7,8,9, 10,11,12,13,14,15,16,17,18,19, 20,21,22,23,24,25,26,27,28,29, 30,31,32,33,34,35,36,37,38,39, - 40,41,42,0,44,45,46,47,48,49, + 40,41,42,43,0,45,46,47,48,49, 50,51,52,53,54,55,56,57,58,59, - 60,0,62,63,64,65,66,24,68,69, - 27,10,72,0,1,2,76,77,78,79, + 60,61,0,63,64,65,66,0,68,69, + 0,1,2,73,4,13,76,77,78,79, 80,81,82,83,84,85,86,87,88,0, 1,2,3,4,5,6,7,8,9,10, 11,12,13,14,15,16,17,18,19,20, 21,22,23,24,25,26,27,28,29,30, 31,32,33,34,35,36,37,38,39,40, - 41,42,71,44,45,46,47,48,49,50, + 41,42,43,0,45,46,47,48,49,50, 51,52,53,54,55,56,57,58,59,60, - 0,62,63,64,65,66,0,68,69,3, - 10,72,0,1,2,76,77,78,79,80, + 61,0,63,64,65,66,0,68,69,0, + 1,2,73,4,8,76,77,78,79,80, 81,82,83,84,85,86,87,88,0,1, 2,3,4,5,6,7,8,9,10,11, 12,13,14,15,16,17,18,19,20,21, 22,23,24,25,26,27,28,29,30,31, 32,33,34,35,36,37,38,39,40,41, - 42,71,44,45,46,47,48,49,50,51, - 52,53,54,55,56,57,58,59,60,0, - 62,63,64,65,66,0,68,69,3,10, - 72,0,1,2,76,77,78,79,80,81, + 42,43,0,45,46,47,48,49,50,51, + 52,53,54,55,56,57,58,59,60,61, + 0,63,64,65,66,0,68,69,0,1, + 2,73,0,102,76,77,78,79,80,81, 82,83,84,85,86,87,88,0,1,2, 3,4,5,6,7,8,9,10,11,12, 13,14,15,16,17,18,19,20,21,22, 23,24,25,26,27,28,29,30,31,32, 33,34,35,36,37,38,39,40,41,42, - 71,44,45,46,47,48,49,50,51,52, - 53,54,55,56,57,58,59,60,0,62, - 63,64,65,66,0,68,69,0,10,72, - 0,4,5,6,77,78,79,80,81,82, + 43,0,45,46,47,48,49,50,51,52, + 53,54,55,56,57,58,59,60,61,77, + 63,64,65,66,0,68,69,0,1,2, + 73,0,1,2,77,78,79,80,81,82, 83,84,85,86,87,88,0,1,2,3, 4,5,6,7,8,9,10,11,12,13, 14,15,16,17,18,19,20,21,22,23, 24,25,26,27,28,29,30,31,32,33, - 34,35,36,37,38,39,40,41,42,71, - 44,45,46,47,48,49,50,51,52,53, - 54,55,56,57,58,59,60,0,62,63, - 64,65,66,0,68,69,0,10,72,0, - 1,2,9,77,78,79,80,81,82,83, + 34,35,36,37,38,39,40,41,42,43, + 0,45,46,47,48,49,50,51,52,53, + 54,55,56,57,58,59,60,61,0,63, + 64,65,66,0,68,69,0,1,2,73, + 0,1,2,77,78,79,80,81,82,83, 84,85,86,87,88,0,1,2,3,4, 5,6,7,8,9,10,11,12,13,14, 15,16,17,18,19,20,21,22,23,24, 25,26,27,28,29,30,31,32,33,34, - 35,36,37,38,39,40,41,42,71,44, + 35,36,37,38,39,40,41,42,43,0, 45,46,47,48,49,50,51,52,53,54, - 55,56,57,58,59,60,0,62,63,64, - 65,66,0,68,69,9,0,72,95,96, - 4,9,77,78,79,80,81,82,83,84, + 55,56,57,58,59,60,61,0,63,64, + 65,66,0,68,69,3,0,10,73,0, + 1,2,77,78,79,80,81,82,83,84, 85,86,87,88,0,1,2,3,4,5, 6,7,8,9,10,11,12,13,14,15, 16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,32,33,34,35, - 36,37,38,39,40,41,42,61,44,45, + 36,37,38,39,40,41,42,43,71,45, 46,47,48,49,50,51,52,53,54,55, - 56,57,58,59,60,0,62,63,64,65, - 66,0,68,69,0,0,72,95,96,4, - 9,77,78,79,80,81,82,83,84,85, + 56,57,58,59,60,61,0,63,64,65, + 66,0,68,69,0,0,0,73,12,4, + 4,77,78,79,80,81,82,83,84,85, 86,87,88,0,1,2,3,4,5,6, 7,8,9,10,11,12,13,14,15,16, 17,18,19,20,21,22,23,24,25,26, 27,28,29,30,31,32,33,34,35,36, - 37,38,39,40,41,42,61,44,45,46, + 37,38,39,40,41,42,43,62,45,46, 47,48,49,50,51,52,53,54,55,56, - 57,58,59,60,0,62,63,64,65,66, - 0,68,69,0,4,72,95,96,5,6, + 57,58,59,60,61,0,63,64,65,66, + 0,68,69,0,1,2,73,93,94,0, 77,78,79,80,81,82,83,84,85,86, 87,88,0,1,2,3,4,5,6,7, 8,9,10,11,12,13,14,15,16,17, 18,19,20,21,22,23,24,25,26,27, 28,29,30,31,32,33,34,35,36,37, - 38,39,40,41,42,0,44,45,46,47, + 38,39,40,41,42,43,0,45,46,47, 48,49,50,51,52,53,54,55,56,57, - 58,59,60,0,62,63,64,65,66,0, - 68,69,3,0,72,0,1,2,0,77, + 58,59,60,61,0,63,64,65,66,0, + 68,69,0,0,10,73,0,1,2,77, 78,79,80,81,82,83,84,85,86,87, 88,0,1,2,3,4,5,6,7,8, 9,10,11,12,13,14,15,16,17,18, 19,20,21,22,23,24,25,26,27,28, 29,30,31,32,33,34,35,36,37,38, - 39,40,41,42,61,44,45,46,47,48, + 39,40,41,42,43,71,45,46,47,48, 49,50,51,52,53,54,55,56,57,58, - 59,60,74,62,63,64,65,66,0,68, - 69,0,0,72,0,102,5,6,77,78, + 59,60,61,0,63,64,65,66,0,68, + 69,0,90,91,73,12,93,94,77,78, 79,80,81,82,83,84,85,86,87,88, 0,1,2,3,4,5,6,7,8,9, 10,11,12,13,14,15,16,17,18,19, 20,21,22,23,24,25,26,27,28,29, 30,31,32,33,34,35,36,37,38,39, - 40,41,42,61,44,45,46,47,48,49, + 40,41,42,43,0,45,46,47,48,49, 50,51,52,53,54,55,56,57,58,59, - 60,77,62,63,64,65,66,0,68,69, - 0,0,72,0,1,5,6,77,78,79, + 60,61,0,63,64,65,66,0,68,69, + 0,93,94,73,93,94,0,77,78,79, 80,81,82,83,84,85,86,87,88,0, 1,2,3,4,5,6,7,8,9,10, 11,12,13,14,15,16,17,18,19,20, 21,22,23,24,25,26,27,28,29,30, 31,32,33,34,35,36,37,38,39,40, - 41,42,61,44,45,46,47,48,49,50, + 41,42,43,0,45,46,47,48,49,50, 51,52,53,54,55,56,57,58,59,60, - 0,62,63,64,65,66,0,68,69,0, - 0,72,0,1,5,6,77,78,79,80, + 61,75,63,64,65,66,0,68,69,0, + 90,91,73,0,1,103,77,78,79,80, 81,82,83,84,85,86,87,88,0,1, 2,3,4,5,6,7,8,9,10,11, 12,13,14,15,16,17,18,19,20,21, 22,23,24,25,26,27,28,29,30,31, 32,33,34,35,36,37,38,39,40,41, - 42,61,44,45,46,47,48,49,50,51, - 52,53,54,55,56,57,58,59,60,0, - 62,63,64,65,66,0,68,69,0,0, - 72,12,3,0,1,77,78,79,80,81, + 42,43,0,45,46,47,48,49,50,51, + 52,53,54,55,56,57,58,59,60,61, + 0,63,64,65,66,0,68,69,0,90, + 91,73,0,1,0,77,78,79,80,81, 82,83,84,85,86,87,88,0,1,2, - 3,4,5,6,7,8,9,24,11,12, + 3,4,5,6,7,8,9,25,11,12, 13,14,15,16,17,18,19,20,21,22, - 23,24,25,0,27,28,29,30,31,32, + 23,24,25,26,40,28,29,30,31,32, 33,34,35,36,37,38,39,40,41,42, - 0,44,45,46,47,48,49,50,51,52, - 53,54,55,56,57,58,59,60,0,0, - 63,0,1,2,3,4,5,6,7,8, - 9,10,11,12,13,14,15,16,17,18, - 19,20,21,22,23,24,25,26,27,28, - 29,30,31,32,33,34,35,36,0,1, - 2,123,4,42,43,0,1,2,3,4, - 5,6,7,8,9,92,11,94,0,58, - 59,60,0,62,0,64,65,5,6,5, - 6,73,0,1,2,74,4,76,0,1, - 2,3,4,5,6,7,8,0,24,25, - 89,27,28,29,30,31,32,33,34,35, - 36,43,0,0,1,2,105,106,107,0, - 1,2,3,4,5,6,7,8,9,10, - 11,12,13,14,15,16,17,18,19,20, - 21,22,23,24,25,26,27,28,29,30, - 31,32,33,34,35,36,43,0,1,2, - 0,42,43,0,1,2,3,4,5,6, - 7,8,9,61,11,78,0,58,59,60, - 0,62,0,64,65,0,74,5,6,9, - 0,11,0,74,4,76,0,1,2,3, - 4,5,6,7,8,0,24,25,89,27, - 28,29,30,31,32,33,34,35,36,0, - 0,0,1,2,105,106,107,0,1,2, - 3,4,5,6,7,8,9,10,11,12, - 13,14,15,16,17,18,19,20,21,22, - 23,24,25,26,27,28,29,30,31,32, - 33,34,35,36,43,105,106,107,0,42, - 43,3,0,5,6,90,91,9,10,11, - 61,0,1,2,12,58,59,60,7,62, - 0,64,65,66,26,5,6,0,0,0, - 3,3,0,76,0,37,38,39,40,10, - 0,0,1,2,24,25,89,27,28,29, - 30,31,32,33,34,35,36,0,0,61, - 3,0,1,2,62,67,5,6,70,71, - 9,73,74,75,76,0,1,2,3,4, - 123,41,7,8,43,0,0,0,90,91, - 92,93,94,95,96,97,98,99,100,101, - 102,103,104,75,43,76,108,109,110,111, - 112,113,114,115,116,117,118,119,120,0, - 122,0,3,0,5,6,5,6,9,10, - 11,0,1,2,3,4,0,103,7,8, - 0,5,6,3,0,26,0,1,2,3, - 4,0,67,7,8,4,37,38,39,40, - 24,25,75,27,28,29,30,31,32,33, - 34,35,36,0,1,2,3,4,5,6, - 61,0,9,0,11,41,67,101,0,70, - 71,104,73,74,75,76,109,110,111,112, - 113,114,115,116,117,118,119,67,0,90, - 91,92,93,94,95,96,97,98,99,100, - 101,102,103,104,0,1,2,108,109,110, - 111,112,113,114,115,116,117,118,119,120, - 67,122,0,1,2,3,4,5,6,7, + 43,0,45,46,47,48,49,50,51,52, + 53,54,55,56,57,58,59,60,61,0, + 0,64,0,1,2,3,4,5,6,7, 8,9,10,11,12,13,14,15,16,17, 18,19,20,21,22,23,24,25,26,27, - 28,29,30,31,32,33,34,35,36,0, - 99,100,99,100,42,43,0,1,2,3, - 4,5,6,7,8,9,10,11,0,0, - 58,59,60,4,62,0,64,65,66,4, - 24,25,26,27,28,29,30,31,32,33, - 34,35,36,0,1,2,0,4,5,6, - 25,89,9,0,11,37,38,0,1,2, - 3,4,5,6,7,8,9,61,11,70, - 0,1,2,67,4,5,6,71,0,9, - 10,11,0,1,2,123,0,1,2,3, + 28,29,30,31,32,33,34,35,36,37, + 0,123,0,44,4,43,44,0,1,2, + 3,4,5,6,7,8,9,0,11,12, + 0,59,60,61,0,63,26,65,66,5, + 6,7,0,13,0,3,74,0,76,0, + 1,2,3,4,5,6,7,8,9,25, + 26,89,28,29,30,31,32,33,34,35, + 36,37,0,43,44,3,0,105,106,107, + 0,1,2,3,4,5,6,7,8,9, + 10,11,12,13,14,15,16,17,18,19, + 20,21,22,23,24,25,26,27,28,29, + 30,31,32,33,34,35,36,37,0,1, + 2,0,0,43,44,3,8,5,6,7, + 103,0,10,11,12,4,5,6,7,59, + 60,61,0,63,0,65,66,75,104,27, + 0,1,2,109,74,0,76,0,8,9, + 38,39,44,41,42,10,0,1,2,89, + 4,5,6,7,0,99,100,11,12,5, + 6,7,0,62,62,105,106,107,44,67, + 0,0,70,71,72,13,74,75,76,25, + 26,10,28,29,30,31,32,33,34,35, + 36,37,90,91,92,93,94,95,96,97, + 98,99,100,101,102,103,104,70,73,72, + 108,109,110,111,112,113,114,115,116,117, + 118,119,120,0,122,63,3,0,5,6, + 7,4,62,10,11,12,0,0,0,1, + 2,0,4,5,6,7,5,6,7,0, + 27,0,1,2,3,4,5,6,7,8, + 9,38,39,0,41,42,25,26,0,28, + 29,30,31,32,33,34,35,36,37,0, + 1,2,44,4,0,62,0,8,9,62, + 67,120,43,70,71,72,0,74,75,76, + 0,1,2,3,4,5,6,7,8,9, + 74,11,12,90,91,92,93,94,95,96, + 97,98,99,100,101,102,103,104,0,1, + 62,108,109,110,111,112,113,114,115,116, + 117,118,119,120,0,122,0,1,2,3, 4,5,6,7,8,9,10,11,12,13, 14,15,16,17,18,19,20,21,22,23, 24,25,26,27,28,29,30,31,32,33, - 34,35,36,70,67,43,73,0,42,43, - 3,0,75,0,1,2,0,4,5,6, - 0,71,0,3,58,59,60,61,62,103, - 64,65,66,0,1,2,3,4,5,6, - 7,8,9,93,11,0,1,2,3,4, - 5,6,7,8,43,89,0,1,2,3, - 4,5,6,7,8,9,10,11,12,13, - 14,15,16,17,18,19,20,21,22,23, - 24,25,26,27,28,29,30,31,32,33, - 34,35,36,0,0,1,2,75,42,43, - 0,0,1,2,3,4,0,74,7,8, - 0,10,0,0,58,59,60,11,62,74, - 64,65,66,10,0,1,2,26,4,5, - 6,0,76,0,1,2,3,4,5,6, - 7,8,9,0,11,89,0,1,2,3, - 4,5,6,7,8,9,10,11,12,13, - 14,15,16,17,18,19,20,21,22,23, - 24,25,26,27,28,29,30,31,32,33, - 34,35,36,70,71,92,0,94,42,43, - 0,1,2,3,4,5,6,7,8,0, - 10,70,90,91,58,59,60,74,62,0, - 64,65,66,4,5,6,26,74,9,0, - 11,0,76,0,1,2,3,4,5,6, - 7,8,9,0,11,89,0,1,2,3, - 4,5,6,7,8,9,10,11,12,13, - 14,15,16,17,18,19,20,21,22,23, - 24,25,26,27,28,29,30,31,32,33, - 34,35,36,0,0,0,90,91,42,43, - 0,1,2,10,4,5,6,0,0,9, - 67,11,5,6,58,59,60,0,62,26, - 64,65,66,0,1,2,3,4,5,6, - 7,8,76,0,1,2,3,4,5,6, - 7,8,9,102,11,89,0,1,2,3, - 4,5,6,7,8,9,10,11,12,13, - 14,15,16,17,18,19,20,21,22,23, - 24,25,26,27,28,29,30,31,32,33, - 34,35,36,0,0,90,91,70,42,43, - 0,1,2,10,4,5,6,74,104,9, - 92,11,94,109,58,59,60,74,62,26, - 64,65,66,0,1,2,3,4,0,0, - 7,8,0,10,0,1,2,3,4,0, - 0,7,8,3,0,89,0,1,2,3, - 4,5,6,7,8,9,10,11,12,13, - 14,15,16,17,18,19,20,21,22,23, - 24,25,26,27,28,29,30,31,32,33, - 34,35,36,0,90,91,3,43,42,43, - 67,0,1,2,71,4,5,6,70,67, - 9,67,11,74,58,59,60,67,62,0, - 64,65,66,0,5,6,3,0,1,2, - 0,4,0,10,7,8,0,1,2,0, - 4,0,10,7,8,89,0,1,2,3, - 4,5,6,7,8,9,10,11,12,13, - 14,15,16,17,18,19,20,21,22,23, - 24,25,26,27,28,29,30,31,32,33, - 34,35,36,42,0,0,1,2,42,43, - 67,0,0,70,71,10,73,0,0,0, - 1,2,5,6,58,59,60,0,62,70, - 64,65,66,0,1,2,0,4,5,6, - 0,0,92,3,94,0,1,2,3,4, - 0,10,7,8,9,89,11,12,13,14, - 15,16,17,18,19,20,21,22,23,0, - 1,2,120,4,5,6,43,72,61,39, - 40,70,37,38,39,40,41,68,69,44, - 45,46,47,48,49,50,51,52,53,54, - 55,56,57,0,1,2,70,67,63,73, - 7,8,43,68,69,0,0,76,73,0, - 1,2,3,4,74,10,7,8,9,10, - 11,12,13,14,15,16,17,18,19,20, - 21,22,23,0,1,2,0,4,108,0, - 7,8,0,7,5,6,37,38,39,40, - 41,0,122,44,45,46,47,48,49,50, - 51,52,53,54,55,56,57,0,1,2, - 0,4,63,67,7,8,43,72,0,1, - 2,72,0,0,0,76,0,1,2,3, - 4,0,0,7,8,9,10,11,12,13, - 14,15,16,17,18,19,20,21,22,23, - 43,0,1,2,0,0,0,0,7,8, - 37,38,0,37,38,39,40,41,37,38, - 44,45,46,47,48,49,50,51,52,53, - 54,55,56,57,93,61,68,69,0,63, - 0,3,0,1,2,3,4,73,72,7, - 8,9,70,11,12,13,14,15,16,17, - 18,19,20,21,22,23,61,61,61,0, - 0,97,98,0,0,0,0,3,73,37, - 38,39,40,41,10,73,44,45,46,47, - 48,49,50,51,52,53,54,55,56,57, - 0,61,97,98,0,63,0,0,1,0, - 68,69,0,1,2,3,4,10,0,7, - 8,9,4,11,12,13,14,15,16,17, - 18,19,20,21,22,23,61,0,0,0, - 0,67,5,6,0,71,73,3,73,37, - 38,39,40,41,10,0,44,45,46,47, - 48,49,50,51,52,53,54,55,56,57, - 61,0,97,98,0,63,0,0,71,61, - 68,69,0,1,2,3,4,10,0,7, - 8,9,4,11,12,13,14,15,16,17, - 18,19,20,21,22,23,0,1,2,0, - 0,0,73,7,0,71,5,6,0,37, - 38,39,40,41,10,121,44,45,46,47, - 48,49,50,51,52,53,54,55,56,57, - 26,67,0,1,2,63,75,70,71,43, - 68,69,0,1,2,3,4,0,0,7, - 8,9,10,11,12,13,14,15,16,17, - 18,19,20,21,22,23,0,0,0,61, - 0,0,73,73,70,43,10,10,10,37, - 38,39,40,41,0,0,44,45,46,47, - 48,49,50,51,52,53,54,55,56,57, - 0,0,0,0,0,63,0,3,0,1, - 2,3,4,12,72,7,8,9,10,11, - 12,13,14,15,16,17,18,19,20,21, - 22,23,61,0,1,2,70,70,71,0, - 72,93,76,42,43,37,38,39,40,41, - 0,12,44,45,46,47,48,49,50,51, - 52,53,54,55,56,57,0,61,121,3, - 0,0,0,7,0,9,43,11,75,5, - 6,42,43,0,10,101,3,0,0,1, - 2,3,4,5,6,7,8,9,10,11, - 26,0,0,37,38,39,40,0,0,124, - 44,4,24,25,26,27,28,29,30,31, - 32,33,34,35,36,75,0,61,120,0, - 1,2,25,67,68,69,70,0,0,73, - 0,75,5,6,70,75,75,75,0,11, - 10,0,0,0,0,67,90,91,92,71, - 73,95,96,97,98,99,100,101,102,103, - 104,63,43,0,108,73,110,111,112,113, - 114,115,116,117,118,119,0,1,2,3, - 4,0,41,7,8,9,0,11,12,13, - 14,15,16,17,18,19,20,21,22,23, - 0,0,105,106,107,0,76,0,3,67, - 3,0,74,37,38,39,40,41,74,0, - 44,45,46,47,48,49,50,51,52,53, - 54,55,56,57,0,1,2,3,4,63, - 0,7,8,9,0,11,12,13,14,15, - 16,17,18,19,20,21,22,23,0,0, - 74,3,3,0,0,0,0,0,3,0, - 0,37,38,39,40,41,10,10,44,45, - 46,47,48,49,50,51,52,53,54,55, - 56,57,0,26,75,0,1,2,3,4, - 0,67,7,8,9,61,11,12,13,14, - 15,16,17,18,19,20,21,22,23,0, - 0,0,3,3,3,0,0,0,3,3, - 3,0,37,38,39,40,41,71,74,44, - 45,46,47,48,49,50,51,52,53,54, - 55,56,57,0,1,2,3,4,63,93, - 7,8,9,93,11,12,13,14,15,16, - 17,18,19,20,21,22,23,0,0,0, - 3,3,0,0,121,3,3,0,0,0, - 37,38,39,40,41,0,0,44,45,46, - 47,48,49,50,51,52,53,54,55,56, - 57,0,1,2,3,4,0,0,7,8, - 9,0,11,12,13,14,15,16,17,18, - 19,20,21,22,23,0,0,0,0,0, - 0,0,0,0,0,0,67,0,37,38, - 39,40,41,0,0,44,45,46,47,48, - 49,50,51,52,53,54,55,56,57,0, - 1,2,3,4,0,0,7,8,9,0, - 11,12,13,14,15,16,17,18,19,20, - 21,22,23,0,0,0,75,0,61,0, - 0,0,0,0,0,0,37,38,39,40, - 41,75,0,44,45,46,47,48,49,50, - 51,52,53,54,55,56,57,0,1,2, - 0,4,5,6,0,0,0,0,0,12, - 13,14,15,16,17,18,19,20,21,22, - 23,24,25,0,27,28,29,30,31,32, - 33,34,35,36,0,0,0,0,0,42, - 0,0,0,0,0,0,0,1,2,0, - 4,5,6,0,0,58,59,60,12,13, - 14,15,16,17,18,19,20,21,22,23, - 24,25,0,27,28,29,30,31,32,33, - 34,35,36,0,0,0,0,0,42,0, - 0,0,0,0,0,0,0,0,0,5, - 6,0,0,0,58,59,60,13,14,15, + 34,35,36,37,40,101,90,91,0,43, + 44,0,1,2,3,4,5,6,7,8, + 9,0,11,12,3,59,60,61,0,63, + 0,65,66,0,1,2,0,4,5,6, + 7,11,76,0,11,12,0,0,5,6, + 7,5,6,7,0,89,0,14,15,16, + 17,18,19,20,21,22,23,24,25,26, + 62,28,29,30,31,32,33,34,35,36, + 37,0,74,0,0,74,5,6,7,123, + 0,1,2,3,4,5,6,7,8,9, + 10,11,12,13,14,15,16,17,18,19, + 20,21,22,23,24,25,26,27,28,29, + 30,31,32,33,34,35,36,37,0,0, + 0,1,2,43,44,0,1,2,3,4, + 5,6,7,8,9,10,11,12,92,59, + 60,61,0,63,0,65,66,5,6,7, + 25,26,27,28,29,30,31,32,33,34, + 35,36,37,0,90,91,0,25,26,89, + 28,29,30,31,32,33,34,35,36,37, + 62,62,0,1,2,3,4,62,68,69, + 8,9,67,0,1,2,71,4,5,6, + 7,38,39,123,0,1,2,3,4,5, + 6,7,8,9,10,11,12,13,14,15, 16,17,18,19,20,21,22,23,24,25, - 0,27,28,29,30,31,32,33,34,35, - 36,0,0,0,0,0,0,0,0,0, - 0,10,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,26,0,0, + 26,27,28,29,30,31,32,33,34,35, + 36,37,0,0,0,1,2,43,44,67, + 0,1,2,3,4,5,6,7,8,9, + 10,0,0,59,60,61,62,63,25,65, + 66,28,0,1,2,3,4,27,0,0, + 8,9,10,0,1,2,3,4,44,11, + 12,8,9,89,0,1,2,3,4,5, + 6,7,8,9,10,11,12,13,14,15, + 16,17,18,19,20,21,22,23,24,25, + 26,27,28,29,30,31,32,33,34,35, + 36,37,0,1,2,3,4,43,44,67, + 8,9,70,71,72,0,0,75,0,70, + 5,6,7,59,60,61,10,63,10,65, + 66,0,1,2,92,4,5,6,7,0, + 76,10,11,12,0,1,2,0,4,5, + 6,7,0,89,0,1,2,3,4,5, + 6,7,8,9,10,11,12,13,14,15, + 16,17,18,19,20,21,22,23,24,25, + 26,27,28,29,30,31,32,33,34,35, + 36,37,76,0,76,0,3,43,44,0, + 1,2,71,4,5,6,7,0,0,0, + 11,12,3,59,60,61,0,63,0,65, + 66,0,0,92,72,0,5,6,7,4, + 76,0,0,1,2,3,4,5,6,7, + 8,9,11,89,0,1,2,3,4,5, + 6,7,8,9,10,11,12,13,14,15, + 16,17,18,19,20,21,22,23,24,25, + 26,27,28,29,30,31,32,33,34,35, + 36,37,74,62,0,1,2,43,44,0, + 1,2,0,4,5,6,7,0,0,0, + 11,12,3,59,60,61,74,63,10,65, + 66,0,0,1,2,3,4,5,6,7, + 76,99,100,11,12,27,95,96,44,0, + 1,2,40,89,0,1,2,3,4,5, + 6,7,8,9,10,11,12,13,14,15, + 16,17,18,19,20,21,22,23,24,25, + 26,27,28,29,30,31,32,33,34,35, + 36,37,75,44,0,0,0,43,44,67, + 4,5,6,7,0,74,0,11,12,5, + 6,7,0,59,60,61,0,63,0,65, + 66,104,10,5,6,7,109,110,111,112, + 113,114,115,116,117,118,119,0,44,0, + 0,4,3,89,0,1,2,3,4,5, + 6,7,8,9,10,11,12,13,14,15, + 16,17,18,19,20,21,22,23,24,25, + 26,27,28,29,30,31,32,33,34,35, + 36,37,70,71,0,1,2,43,44,5, + 6,7,0,1,2,11,4,0,0,62, + 8,9,62,59,60,61,67,63,10,65, + 66,0,1,2,3,4,5,6,7,8, + 9,0,11,12,3,27,0,0,44,0, + 3,10,3,89,0,1,2,3,4,5, + 6,7,8,9,10,11,12,13,14,15, + 16,17,18,19,20,21,22,23,24,25, + 26,27,28,29,30,31,32,33,34,35, + 36,37,0,1,2,3,4,43,44,0, + 8,9,3,0,0,74,0,3,67,92, + 4,0,71,59,60,61,67,63,72,65, + 66,0,1,2,3,4,5,6,7,8, + 9,0,26,0,1,2,3,4,0,0, + 0,8,9,89,11,12,13,14,15,16, + 17,18,19,20,21,22,23,24,0,1, + 2,3,4,5,6,7,8,9,0,11, + 12,38,39,40,41,42,38,39,45,46, + 47,48,49,50,51,52,53,54,55,56, + 57,58,0,1,2,74,0,64,0,1, + 2,68,69,0,0,72,0,1,2,3, + 4,105,106,107,8,9,10,11,12,13, + 14,15,16,17,18,19,20,21,22,23, + 24,92,74,0,1,2,44,4,5,6, + 7,0,1,2,38,39,40,41,42,8, + 9,45,46,47,48,49,50,51,52,53, + 54,55,56,57,58,62,68,69,72,0, + 64,0,1,2,5,6,7,44,74,73, + 0,10,76,0,1,2,3,4,0,121, + 0,8,9,10,11,12,13,14,15,16, + 17,18,19,20,21,22,23,24,0,1, + 2,3,4,5,6,7,8,9,0,11, + 12,38,39,40,41,42,38,39,45,46, + 47,48,49,50,51,52,53,54,55,56, + 57,58,0,0,73,0,0,64,3,0, + 1,2,3,4,0,10,73,8,9,0, + 11,12,13,14,15,16,17,18,19,20, + 21,22,23,24,0,67,0,1,0,5, + 6,7,0,0,0,3,10,38,39,40, + 41,42,10,10,45,46,47,48,49,50, + 51,52,53,54,55,56,57,58,62,0, + 0,0,70,64,72,0,71,68,69,0, + 1,2,3,4,70,10,67,8,9,0, + 11,12,13,14,15,16,17,18,19,20, + 21,22,23,24,0,67,0,71,4,67, + 0,67,70,71,72,0,73,38,39,40, + 41,42,0,0,45,46,47,48,49,50, + 51,52,53,54,55,56,57,58,67,70, + 0,0,0,64,3,70,71,68,69,0, + 1,2,3,4,0,13,0,8,9,3, + 11,12,13,14,15,16,17,18,19,20, + 21,22,23,24,0,105,106,107,72,5, + 6,7,41,42,62,43,44,38,39,40, + 41,42,0,0,45,46,47,48,49,50, + 51,52,53,54,55,56,57,58,67,0, + 70,101,0,64,5,6,7,68,69,0, + 1,2,3,4,70,102,0,8,9,10, + 11,12,13,14,15,16,17,18,19,20, + 21,22,23,24,0,1,2,3,4,108, + 0,0,8,9,10,62,0,38,39,40, + 41,42,70,122,45,46,47,48,49,50, + 51,52,53,54,55,56,57,58,0,1, + 2,0,70,64,0,0,1,2,3,4, + 0,0,73,8,9,10,11,12,13,14, + 15,16,17,18,19,20,21,22,23,24, + 0,67,0,62,4,71,0,5,6,7, + 4,40,44,38,39,40,41,42,72,0, + 45,46,47,48,49,50,51,52,53,54, + 55,56,57,58,0,0,62,3,0,0, + 1,2,8,0,0,11,12,8,5,6, + 7,0,72,10,10,0,1,2,3,4, + 5,6,7,8,9,10,11,12,0,0, + 27,27,38,39,0,41,42,3,10,45, + 25,26,27,28,29,30,31,32,33,34, + 35,36,37,0,0,120,62,78,5,6, + 7,67,68,69,70,11,72,0,0,75, + 75,0,74,70,70,0,1,2,10,0, + 0,10,67,0,90,91,71,93,0,95, + 96,97,98,99,100,101,102,103,104,71, + 0,72,108,3,110,111,112,113,114,115, + 116,117,118,119,0,1,2,3,4,44, + 92,0,8,9,3,11,12,13,14,15, + 16,17,18,19,20,21,22,23,24,0, + 1,2,71,4,76,0,0,8,9,95, + 96,72,38,39,40,41,42,0,75,45, + 46,47,48,49,50,51,52,53,54,55, + 56,57,58,0,1,2,3,4,64,0, + 0,8,9,44,11,12,13,14,15,16, + 17,18,19,20,21,22,23,24,0,0, + 1,2,0,4,0,3,0,8,9,121, + 64,38,39,40,41,42,10,0,45,46, + 47,48,49,50,51,52,53,54,55,56, + 57,58,75,0,1,2,3,4,0,0, + 67,8,9,44,11,12,13,14,15,16, + 17,18,19,20,21,22,23,24,0,0, + 0,0,0,5,6,7,62,0,0,10, + 3,38,39,40,41,42,70,71,45,46, + 47,48,49,50,51,52,53,54,55,56, + 57,58,0,1,2,3,4,64,0,0, + 8,9,0,11,12,13,14,15,16,17, + 18,19,20,21,22,23,24,0,1,2, + 0,0,0,0,3,3,3,67,0,70, + 38,39,40,41,42,76,75,45,46,47, + 48,49,50,51,52,53,54,55,56,57, + 58,0,1,2,3,4,0,0,0,8, + 9,44,11,12,13,14,15,16,17,18, + 19,20,21,22,23,24,0,75,0,0, + 0,0,3,3,0,0,10,3,3,38, + 39,40,41,42,0,75,45,46,47,48, + 49,50,51,52,53,54,55,56,57,58, + 0,1,2,3,4,0,0,0,8,9, + 3,11,12,13,14,15,16,17,18,19, + 20,21,22,23,24,0,0,0,0,0, + 62,0,0,62,0,3,0,71,38,39, + 40,41,42,72,10,45,46,47,48,49, + 50,51,52,53,54,55,56,57,58,0, + 1,2,0,4,5,6,7,0,97,98, + 3,124,13,14,15,16,17,18,19,20, + 21,22,23,24,25,26,0,28,29,30, + 31,32,33,34,35,36,37,11,0,74, + 0,74,43,74,0,71,75,3,0,1, + 2,0,4,5,6,7,0,0,59,60, + 61,13,14,15,16,17,18,19,20,21, + 22,23,24,25,26,0,28,29,30,31, + 32,33,34,35,36,37,0,1,2,3, + 4,43,0,0,8,9,10,121,0,0, + 62,0,62,10,0,0,0,59,60,61, + 72,10,72,27,0,0,0,3,67,3, + 27,95,96,0,0,0,0,0,27,0, + 0,75,75,0,0,97,98,97,98,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, @@ -1609,379 +1634,380 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym 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,0 }; }; - public final static byte termCheck[] = TermCheck.termCheck; + public final static char termCheck[] = TermCheck.termCheck; public final int termCheck(int index) { return termCheck[index]; } public interface TermAction { public final static char termAction[] = {0, - 6128,6020,5666,5666,5666,5666,5666,5666,5666,5666, - 6051,5666,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,6024,1,1,1, + 6279,6158,5774,5774,5774,5767,5774,5774,5774,5774, + 6189,5774,5774,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,6162,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,337,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,6128,2460,1,661,6304,603,6466,1,1, - 6467,6134,6139,6128,5832,5829,6135,1379,3555,3160, - 2249,3056,3490,3698,3553,1738,3552,2870,3541,10, - 6054,6054,6054,6054,6054,6054,6054,6054,6054,6054, - 6054,6054,6054,6054,6054,6054,6054,6054,6054,6054, - 6054,6054,6054,6054,6054,6054,6054,6054,6054,6054, - 6054,6054,6054,6054,6054,6054,6054,6054,6054,6054, - 6054,6054,6133,6054,6054,6054,6054,6054,6054,6054, - 6054,6054,6054,6054,6054,6054,6054,6054,6054,6054, - 1,6054,6054,6054,6054,6054,6128,6054,6054,853, - 162,6054,6128,6142,6143,6054,6054,6054,6054,6054, - 6054,6054,6054,6054,6054,6054,6054,6054,8,6075, - 6075,6075,6075,6075,6075,6075,6075,6075,6075,6075, - 6075,6075,6075,6075,6075,6075,6075,6075,6075,6075, - 6075,6075,6075,6075,6075,6075,6075,6075,6075,6075, - 6075,6075,6075,6075,6075,6075,6075,6075,6075,6075, - 6075,162,6075,6075,6075,6075,6075,6075,6075,6075, - 6075,6075,6075,6075,6075,6075,6075,6075,6075,1, - 6075,6075,6075,6075,6075,6128,6075,6075,1015,529, - 6075,6128,9459,7306,6075,6075,6075,6075,6075,6075, - 6075,6075,6075,6075,6075,6075,6075,6128,6020,5666, - 5666,5666,5666,5666,5666,5666,5666,6027,5666,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,6024,1,1,1,1,1,1, + 1,1,302,930,1,695,6455,385,1,1, + 6279,5780,5777,6290,6318,6580,6286,1188,3327,3083, + 2278,2899,3222,3808,3320,796,3309,2520,3307,10, + 6192,6192,6192,6192,6192,6192,6192,6192,6192,6192, + 6192,6192,6192,6192,6192,6192,6192,6192,6192,6192, + 6192,6192,6192,6192,6192,6192,6192,6192,6192,6192, + 6192,6192,6192,6192,6192,6192,6192,6192,6192,6192, + 6192,6192,6192,6279,6192,6192,6192,6192,6192,6192, + 6192,6192,6192,6192,6192,6192,6192,6192,6192,6192, + 6192,136,6192,6192,6192,6192,6279,6192,6192,6279, + 5780,5777,6192,6318,1646,6192,6192,6192,6192,6192, + 6192,6192,6192,6192,6192,6192,6192,6192,8,6219, + 6219,6219,6219,6219,6219,6219,6219,6219,6219,6219, + 6219,6219,6219,6219,6219,6219,6219,6219,6219,6219, + 6219,6219,6219,6219,6219,6219,6219,6219,6219,6219, + 6219,6219,6219,6219,6219,6219,6219,6219,6219,6219, + 6219,6219,6279,6219,6219,6219,6219,6219,6219,6219, + 6219,6219,6219,6219,6219,6219,6219,6219,6219,6219, + 6279,6219,6219,6219,6219,6279,6219,6219,6279,5961, + 5958,6219,1,2727,6219,6219,6219,6219,6219,6219, + 6219,6219,6219,6219,6219,6219,6219,6279,6158,5774, + 5774,5774,5767,5774,5774,5774,5774,6165,5774,5774, 1,1,1,1,1,1,1,1,1,1, - 529,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,2460, - 1,661,6304,603,1,1,1,396,164,6139, - 385,389,924,1018,1379,3555,3160,2249,3056,3490, - 3698,3553,1738,3552,2870,3541,6128,6020,5666,5666, - 5666,5666,5666,5666,5666,5666,6027,5666,1,1, + 1,1,1,1,6162,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,6024,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,164, + 1,6279,1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,1,1799, + 930,1,695,6455,6279,1,1,6279,6293,6294, + 6290,6279,9163,8353,1188,3327,3083,2278,2899,3222, + 3808,3320,796,3309,2520,3307,6279,6158,5774,5774, + 5774,5767,5774,5774,5774,5774,6165,5774,5774,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,2460,1, - 661,6304,603,116,1,1,6128,6134,6139,49, - 5832,5829,4462,1379,3555,3160,2249,3056,3490,3698, - 3553,1738,3552,2870,3541,6128,6020,5666,5666,5666, - 5666,5666,5666,5666,5666,6027,5666,1,1,1, + 1,1,1,6162,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,6024,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,6133,1, + 6279,1,1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,6279,930, + 1,695,6455,6279,1,1,49,5961,5958,6290, + 398,6293,6294,1188,3327,3083,2278,2899,3222,3808, + 3320,796,3309,2520,3307,6279,6158,5774,5774,5774, + 5767,5774,5774,5774,5774,6165,5774,5774,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,6128,2460,1,661, - 6304,603,118,1,1,2567,397,6139,4426,3371, - 388,4462,1379,3555,3160,2249,3056,3490,3698,3553, - 1738,3552,2870,3541,6128,6020,5666,5666,5666,5666, - 5666,5666,5666,5666,6027,5666,1,1,1,1, + 1,1,6162,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,1,6279, 1,1,1,1,1,1,1,1,1,1, - 6024,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1136,1,1, + 1,1,1,1,1,1,1,6279,930,1, + 695,6455,6279,1,1,696,6279,6285,6290,6279, + 9163,8353,1188,3327,3083,2278,2899,3222,3808,3320, + 796,3309,2520,3307,6279,6158,5774,5774,5774,5767, + 5774,5774,5774,5774,6165,5774,5774,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,6128,2460,1,661,6304, - 603,117,1,1,6128,49,6139,4426,3371,6143, - 4462,1379,3555,3160,2249,3056,3490,3698,3553,1738, - 3552,2870,3541,6128,6020,5666,5666,5666,5666,5666, - 5666,5666,5666,6027,5666,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,6024, + 1,6162,1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,6284,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,6143,1,1,1, + 1,1,1,1,1,1,132,930,1,695, + 6455,6279,1,1,112,397,40,6290,3057,388, + 6318,1188,3327,3083,2278,2899,3222,3808,3320,796, + 3309,2520,3307,6279,6158,5774,5774,5774,5767,5774, + 5774,5774,5774,6165,5774,5774,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,6128,2460,1,661,6304,603, - 40,1,1,314,6167,6139,4426,3371,924,1018, - 1379,3555,3160,2249,3056,3490,3698,3553,1738,3552, - 2870,3541,6128,6020,5666,5666,5666,5666,5666,5666, - 5666,5666,6027,5666,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,6024,1, + 6162,1,1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1789,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,6128,1,1,1,1, + 1,1,1,1,1,6279,930,1,695,6455, + 6279,1,1,291,6293,6294,6290,4909,4931,6279, + 1188,3327,3083,2278,2899,3222,3808,3320,796,3309, + 2520,3307,6279,6158,5774,5774,5774,5767,5774,5774, + 5774,5774,6165,5774,5774,1,1,1,1,1, + 1,1,1,1,1,1,1,1,1,6162, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,136,2460,1,661,6304,603,6128, - 1,1,1156,388,6139,398,6142,6143,449,1379, - 3555,3160,2249,3056,3490,3698,3553,1738,3552,2870, - 3541,6128,6020,5666,5666,5666,5666,5666,5666,5666, - 5666,6027,5666,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,6024,1,1, + 1,1,1,1,1,1,6279,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,5826,1,1,1,1,1, + 1,1,1,1,1,930,1,695,6455,6279, + 1,1,122,115,162,6290,37,6249,6246,1188, + 3327,3083,2278,2899,3222,3808,3320,796,3309,2520, + 3307,6279,6158,5774,5774,5774,5767,5774,5774,5774, + 5774,6165,5774,5774,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,6162,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,758,2460,1,661,6304,603,6128,1, - 1,396,455,6139,1,2649,924,1018,1379,3555, - 3160,2249,3056,3490,3698,3553,1738,3552,2870,3541, - 6128,6020,5666,5666,5666,5666,5666,5666,5666,5666, - 6027,5666,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,6024,1,1,1, + 1,1,1,1,1,162,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,5853,1,1,1,1,1,1, + 1,1,1,133,930,1,695,6455,114,1, + 1,113,3760,3785,6290,3057,4909,4931,1188,3327, + 3083,2278,2899,3222,3808,3320,796,3309,2520,3307, + 6279,6158,5774,5774,5774,5767,5774,5774,5774,5774, + 6165,5774,5774,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,6162,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1196,2460,1,661,6304,603,6128,1,1, - 563,441,6139,555,1793,924,1018,1379,3555,3160, - 2249,3056,3490,3698,3553,1738,3552,2870,3541,6128, - 6020,5666,5666,5666,5666,5666,5666,5666,5666,6027, - 5666,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,6024,1,1,1,1, + 1,1,1,1,6279,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,5856,1,1,1,1,1,1,1, + 1,1,138,930,1,695,6455,6279,1,1, + 126,4909,4931,6290,4909,4931,36,1188,3327,3083, + 2278,2899,3222,3808,3320,796,3309,2520,3307,6279, + 6158,5774,5774,5774,5767,5774,5774,5774,5774,6165, + 5774,5774,1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,6162,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 6128,2460,1,661,6304,603,6128,1,1,571, - 30,6139,554,1793,924,1018,1379,3555,3160,2249, - 3056,3490,3698,3553,1738,3552,2870,3541,6128,6020, - 5666,5666,5666,5666,5666,5666,5666,5666,6027,5666, + 1,1,1,6279,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,6024,1,1,1,1,1, + 1,1477,930,1,695,6455,6279,1,1,125, + 3760,3785,6290,556,1658,2688,1188,3327,3083,2278, + 2899,3222,3808,3320,796,3309,2520,3307,6279,6158, + 5774,5774,5774,5767,5774,5774,5774,5774,6165,5774, + 5774,1,1,1,1,1,1,1,1,1, + 1,1,1,1,1,6162,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,5859,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,302, - 2460,1,661,6304,603,6128,1,1,6128,6128, - 6139,6429,1815,546,6675,1379,3555,3160,2249,3056, - 3490,3698,3553,1738,3552,2870,3541,40,5672,5669, - 4261,1354,924,1018,4550,3512,4640,6676,4662,1538, - 6393,6391,6400,6399,6395,6396,6394,6397,6398,6401, - 6392,6466,6389,112,6467,6383,6390,6386,6362,6388, - 6387,6384,6385,6363,4618,4583,4706,4684,6148,6527, - 6128,4521,1998,2069,6150,2015,3638,2061,6151,6149, - 1977,6144,6146,6147,6145,2745,6528,6529,6128,6128, - 1467,6128,5908,5908,230,5904,5666,5666,230,230, - 230,5912,230,1,1,1,1,1,1,1, + 1,1,6279,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,1,1, + 6279,930,1,695,6455,6279,1,1,6279,3760, + 3785,6290,547,6827,6279,1188,3327,3083,2278,2899, + 3222,3808,3320,796,3309,2520,3307,40,5780,5777, + 5233,691,841,721,829,4733,3889,6828,4799,4821, + 785,6544,6542,6551,6550,6546,6547,6545,6548,6549, + 6552,6543,6617,6540,831,6618,6534,6541,6537,6513, + 6539,6538,6535,6536,6514,4777,4755,6299,4865,4843, + 6678,6279,4461,1834,1926,6301,1852,3030,1879,6302, + 6300,1805,6295,6297,6298,6296,2943,6679,6680,6279, + 6279,1478,6279,6043,6043,230,6039,5774,5774,5774, + 230,230,6047,230,230,1,1,1,1,1, + 1,1,1,1,1,1,1,1,1,230, + 1,1,1,1,1,1,1,1,1,1, + 40,5766,6279,1057,6318,1,6036,310,5793,5789, + 2482,5786,5964,5970,5967,707,3889,139,5973,5973, + 1,1,1,1,225,1257,2852,1931,6692,5821, + 5815,5818,6279,6104,140,1756,230,6279,417,332, + 5780,5777,2482,691,841,721,829,707,3889,6617, + 6540,6780,6618,6534,6541,6537,6513,6539,6538,6535, + 6536,6514,312,6107,2714,985,130,6715,6716,6717, + 6279,6043,6043,230,6039,5774,5774,5774,230,230, + 6116,230,230,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,230,1,1, - 1,1,1,1,1,1,1,1,6128,5672, - 5669,5662,6167,1,5901,310,5685,5681,5049,5678, - 5838,5835,838,3512,5841,4750,5841,4772,6128,1, - 1,1,562,998,225,2152,6541,924,1018,5704, - 5707,4860,6128,5672,5669,230,6167,417,332,5672, - 5669,5049,1354,924,1018,838,3512,6128,6466,6389, - 6629,6467,6383,6390,6386,6362,6388,6387,6384,6385, - 6363,1398,30,38,5895,5895,6564,6565,6566,6128, - 5908,5908,230,5904,5666,5666,230,230,230,5981, - 230,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,230,1,1,1,1, - 1,1,1,1,1,1,6165,6128,9459,7306, - 440,1,5901,6128,5685,5681,5049,5678,5838,5835, - 838,3512,5880,1136,5880,3624,6128,1,1,1, - 6128,998,226,2152,6541,122,425,5710,5713,1907, - 6128,6458,6128,230,2565,416,1,5685,5681,5049, - 5678,5838,5835,838,3512,6128,6466,6389,6629,6467, - 6383,6390,6386,6362,6388,6387,6384,6385,6363,6128, - 6128,6128,5954,5951,6564,6565,6566,6128,5666,5666, - 230,5666,5666,5666,230,230,230,5695,230,1, + 1,1,1,1,1,1,1,1,38,6030, + 6030,388,34,1,6036,6027,6030,6027,6027,6027, + 2688,396,6027,6027,6027,389,841,721,829,1, + 1,1,6279,1257,48,1931,6692,1074,2649,6027, + 39,5982,5979,3084,230,6279,416,6279,5976,3889, + 6027,6027,1662,6027,6027,6291,445,1,1,6780, + 1,6018,6018,6018,226,3337,3257,6018,6018,5830, + 5824,5827,302,5955,6027,6715,6716,6717,845,6027, + 455,6279,6027,6027,6027,6580,6027,6027,6027,6617, + 6540,6283,6618,6534,6541,6537,6513,6539,6538,6535, + 6536,6514,6027,6027,6027,6027,6027,6027,6027,6027, + 6027,6027,6027,6027,6027,6027,6027,3934,6290,5118, + 6027,6027,6027,6027,6027,6027,6027,6027,6027,6027, + 6027,6027,6027,6279,6027,1020,6146,49,6146,6146, + 6146,6294,5985,6146,6146,6146,449,6279,395,5842, + 5842,227,284,5833,5839,5836,5851,5845,5848,6279, + 6146,1,5793,5789,2482,5786,5964,5970,5967,707, + 3889,6146,6146,6279,6146,6146,6617,6540,441,6618, + 6534,6541,6537,6513,6539,6538,6535,6536,6514,6279, + 5780,5777,284,691,134,6146,6279,707,3889,6294, + 6146,6282,2840,6146,6146,6146,124,6146,6146,6146, + 6279,5793,5789,2482,5786,5964,5970,5967,707,3889, + 764,6015,6015,6146,6146,6146,6146,6146,6146,6146, + 6146,6146,6146,6146,6146,6146,6146,6146,555,1658, + 5988,6146,6146,6146,6146,6146,6146,6146,6146,6146, + 6146,6146,6146,6146,6279,6146,6279,5774,5774,230, + 5774,5767,5774,5774,230,230,5803,230,230,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,230,1,1,1,9802,1,1, - 1,1,1,1,6165,6564,6565,6566,34,1, - 5663,5892,302,5892,5892,3587,3675,5892,5892,5892, - 1825,6128,6142,6143,6429,1,1,1,1553,614, - 227,661,6340,603,5892,5725,5728,558,312,6128, - 1922,1595,6128,220,138,5892,5892,5892,5892,6136, - 6128,44,5960,5960,6466,6389,6629,6467,6383,6390, - 6386,6362,6388,6387,6384,6385,6363,544,6128,5892, - 1160,38,5895,5895,989,5892,924,1018,5892,5892, - 332,5892,5892,5892,5892,1,5685,5681,5675,5678, - 220,1401,5692,5689,5957,321,134,140,5892,5892, - 5892,5892,5892,5892,5892,5892,5892,5892,5892,5892, - 5892,5892,5892,1113,6165,6135,5892,5892,5892,5892, - 5892,5892,5892,5892,5892,5892,5892,5892,5892,6128, - 5892,570,6008,6128,6008,6008,924,1018,6008,6008, - 6008,1,5685,5681,5049,5678,228,2598,838,3512, - 319,5734,5737,5877,6128,6008,1,5685,5681,5049, - 5678,6128,619,838,3512,3155,6008,6008,6008,6008, - 6466,6389,1973,6467,6383,6390,6386,6362,6388,6387, - 6384,6385,6363,346,40,40,2464,6167,924,1018, - 6008,130,332,131,332,696,6008,2684,6128,6008, - 6008,2490,6008,6008,6008,6008,4841,1927,1881,1835, - 1789,1743,1697,1651,1605,1559,1513,619,6128,6008, - 6008,6008,6008,6008,6008,6008,6008,6008,6008,6008, - 6008,6008,6008,6008,291,6142,6143,6008,6008,6008, - 6008,6008,6008,6008,6008,6008,6008,6008,6008,6008, - 619,6008,6128,5666,5666,230,5666,5666,5666,230, - 230,230,230,230,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,230,1, - 1,1,9802,1,1,1,1,1,1,309, - 3104,3072,3104,3072,1,5663,30,388,388,6042, - 388,388,388,388,388,6042,6042,6042,119,6128, - 1,1,1,2013,614,40,661,6340,603,6167, - 388,388,6042,388,388,388,388,388,388,388, - 388,388,388,445,1,1,139,1,5883,5883, - 3188,6629,5883,6128,5883,4222,671,368,5685,5681, - 3136,5678,1,1,838,3512,1,5859,1,2938, - 1,6033,6033,6042,6030,5838,5835,6042,6128,332, - 364,332,46,6017,6017,221,6128,5666,5666,230, - 5666,5666,5666,230,230,230,230,230,1,1, + 1,1,1,230,1,1,1,9827,1,1, + 1,1,1,1,1709,2895,3760,3785,30,1, + 5771,6279,5793,5789,2482,5786,5964,5970,5967,707, + 3889,6279,5973,5973,763,1,1,1,6279,1225, + 6279,695,6491,446,40,40,6279,6318,6125,6131, + 6128,2641,220,224,6134,6134,314,6279,5812,5806, + 5809,841,721,829,6279,6780,359,6544,6542,6551, + 6550,6546,6547,6545,6548,6549,6552,6543,6617,6540, + 1789,6618,6534,6541,6537,6513,6539,6538,6535,6536, + 6514,396,425,6279,123,2185,841,721,829,220, + 6279,5774,5774,230,5774,5767,5774,5774,230,230, + 230,230,230,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,230,1,1, + 1,9827,1,1,1,1,1,1,30,6279, + 6279,6293,6294,1,5771,30,388,388,6180,388, + 388,388,388,388,388,6180,6180,6180,6637,1, + 1,1,228,1225,6279,695,6491,5863,5857,5860, + 388,388,6180,388,388,388,388,388,388,388, + 388,388,388,119,3760,3785,6279,6617,6540,6780, + 6618,6534,6541,6537,6513,6539,6538,6535,6536,6514, + 5991,1940,1,5793,5789,3371,5786,5991,4887,2396, + 707,3889,6180,287,5854,5854,6180,284,841,721, + 829,4388,4345,221,6279,5774,5774,230,5774,5767, + 5774,5774,230,230,230,230,230,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,230,1,1,1,9802,1,1,1, - 1,1,1,2792,619,6014,4958,6128,1,5663, - 5238,48,1268,287,5731,5731,6128,284,924,1018, - 6128,364,36,2147,1,1,1,1400,614,2598, - 661,6340,603,6128,5685,5681,5049,5678,5838,5835, - 838,3512,5841,364,5841,1,5685,5681,5049,5678, - 5838,5835,838,3512,1262,6629,6128,5666,5666,230, - 5666,5666,5666,230,230,230,5898,230,1,1, + 1,230,1,1,1,9827,1,1,1,1, + 1,1,6279,337,38,6030,6030,1,5771,1434, + 1,5793,5789,2482,5786,5964,5970,5967,707,3889, + 310,6279,6279,1,1,1,1078,1225,6617,695, + 6491,6618,1,5793,5789,3371,5786,310,6279,309, + 707,3889,368,1,5793,5789,5783,5786,6316,2081, + 6609,5800,5797,6780,6279,5774,5774,230,5774,5767, + 5774,5774,230,230,6033,230,230,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,230,1,1,1,9802,1,1,1, - 1,1,1,115,37,6101,6098,1630,1,5663, - 6128,1,5685,5681,5675,5678,132,2157,5692,5689, - 6128,6138,126,6128,1,1,1,2836,614,2157, - 661,6340,603,6134,568,5874,5874,6137,572,924, - 1018,516,221,6128,5685,5681,5049,5678,5838,5835, - 838,3512,5880,6128,5880,6629,6128,5666,5666,230, - 5666,5666,5666,230,230,230,5898,230,1,1, + 1,230,1,1,1,9827,1,1,1,1, + 1,1,1,5793,5789,2482,5786,1,5771,1434, + 707,3889,368,368,368,567,6279,1231,1,2992, + 841,721,829,1,1,1,6287,1225,6122,695, + 6491,1,6171,6171,368,6168,5964,5970,5967,6279, + 221,364,332,332,572,6009,6009,6279,576,841, + 721,829,6279,6780,6279,5774,5774,230,5774,5767, + 5774,5774,230,230,6033,230,230,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,230,1,1,1,9802,1,1,1, - 1,1,1,2044,6133,4750,125,4772,1,5663, - 1,5685,5681,5049,5678,5838,5835,838,3512,6128, - 310,941,3587,3675,1,1,1,2157,614,40, - 661,6340,603,6167,924,1018,310,6530,332,6128, - 332,137,221,346,5672,5669,3136,1354,924,1018, - 838,3512,332,6128,332,6629,6128,5666,5666,230, - 5666,5666,5666,230,230,230,5898,230,1,1, + 1,230,1,1,1,9827,1,1,1,1, + 1,1,6286,6279,6286,6279,1126,1,5771,93, + 1,1,364,1,6216,6216,6216,6279,6279,6279, + 6216,6216,1893,1,1,1,6279,1225,6279,695, + 6491,396,131,364,5019,6279,841,721,829,2640, + 221,116,1,5793,5789,2482,5786,5964,5970,5967, + 707,3889,4710,6780,6279,5774,5774,230,5774,5767, + 5774,5774,230,230,6033,230,230,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,230,1,1,1,9802,1,1,1, - 1,1,1,6128,140,124,3587,3675,1,5663, - 446,40,40,6138,6167,5993,5990,332,114,5996, - 619,5996,924,1018,1,1,1,450,614,6137, - 661,6340,603,1,5685,5681,5049,5678,5838,5835, - 838,3512,221,6128,6069,6069,6069,6069,6069,6069, - 6069,6069,6069,2649,6069,6629,6128,5666,5666,230, - 5666,5666,5666,230,230,230,230,230,1,1, + 1,230,1,1,1,9827,1,1,1,1, + 1,1,6681,1789,6279,6089,6086,1,5771,96, + 40,40,6279,6318,6255,6261,6258,140,6279,559, + 6264,6264,1898,1,1,1,2185,1225,6289,695, + 6491,429,346,40,40,3202,6318,841,721,829, + 221,3337,3257,332,332,6288,4687,4664,6316,44, + 6095,6095,1851,6780,6279,5774,5774,230,5774,5767, + 5774,5774,230,230,230,230,230,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,230,1,1,1,9802,1,1,1, - 1,1,1,406,123,3587,3675,2406,1,5663, - 93,1,1,5975,1,6072,6072,2157,2490,6072, - 4750,6072,4772,4841,1,1,1,6069,614,5978, - 661,6340,603,1,5685,5681,3136,5678,363,429, - 838,3512,459,5999,1,5685,5681,3136,5678,6128, - 348,838,3512,2793,38,6629,6128,5666,5666,230, - 5666,5666,5666,230,230,230,230,230,1,1, + 1,230,1,1,1,9827,1,1,1,1, + 1,1,1997,6092,38,6279,40,1,5771,1434, + 6318,841,721,829,575,1471,6279,332,332,841, + 721,829,6279,1,1,1,6279,1225,566,695, + 6491,2649,6285,841,721,829,3084,1950,1903,1856, + 1809,1762,1715,1668,1621,1574,1527,49,6316,319, + 6279,6293,6012,6780,6279,5774,5774,230,5774,5767, + 5774,5774,230,230,230,230,230,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,230,1,1,1,9802,1,1,1, - 1,1,1,6128,3587,3675,3453,6165,1,5663, - 619,96,40,40,6002,6167,6110,6107,1203,5886, - 6113,619,6113,917,1,1,1,619,614,564, - 661,6340,603,1,924,1018,2464,6128,5672,5669, - 113,1354,6128,342,838,3512,6128,5672,5669,290, - 1354,6128,6132,838,3512,6629,6128,5666,5666,230, - 5666,5666,5666,230,230,230,230,230,1,1, + 1,230,1,1,1,9827,1,1,1,1, + 1,1,997,6284,38,6030,6030,1,5771,841, + 721,829,6279,5780,5777,332,691,1,406,6293, + 707,3889,1789,1,1,1,1434,1225,6110,695, + 6491,6279,5793,5789,2482,5786,5964,5970,5967,707, + 3889,1,6015,6015,3202,6113,6279,545,6316,348, + 1135,6137,2983,6780,6279,5774,5774,230,5774,5767, + 5774,5774,230,230,230,230,230,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,230,1,1,1,9802,1,1,1, - 1,1,1,2674,6128,6128,6142,6143,1,5663, - 619,158,6128,342,342,6140,342,396,6128,6128, - 6142,6143,924,1018,1,1,1,6128,614,967, - 661,6340,603,395,5722,5722,6128,284,5719,5716, - 76,1,4750,2894,4772,1,5685,5681,4261,5678, - 6128,5987,4550,3512,4640,6629,4662,5915,5942,5948, - 5921,5924,5936,5933,5939,5930,5927,5918,5945,569, - 5871,5871,6131,572,5868,5865,284,6139,1136,6191, - 6192,2019,4618,4583,4706,4684,6148,4728,1786,4521, - 1998,2069,6150,2015,3638,2061,6151,6149,1977,6144, - 6146,6147,6145,39,5850,5847,2792,4418,1467,3628, - 5844,3512,572,40,40,6128,458,6135,517,40, - 5672,5669,4261,1354,2289,6140,4550,3512,4640,6104, - 4662,1963,6393,6391,6400,6399,6395,6396,6394,6397, - 6398,6401,6392,6128,5672,5669,6128,1354,711,418, - 6011,3512,6128,1553,924,1018,4618,4583,4706,4684, - 6148,359,783,4521,1998,2069,6150,2015,3638,2061, - 6151,6149,1977,6144,6146,6147,6145,6128,5672,5669, - 6128,1354,1467,5889,6011,3512,1001,6139,6128,5832, - 5829,5966,6128,121,127,6135,40,5672,5669,4261, - 1354,120,427,4550,3512,4640,5963,4662,1963,6393, - 6391,6400,6399,6395,6396,6394,6397,6398,6401,6392, - 1209,6128,6142,6143,6128,129,6128,6128,838,3512, - 4222,671,6128,4618,4583,4706,4684,6148,4222,671, - 4521,1998,2069,6150,2015,3638,2061,6151,6149,1977, - 6144,6146,6147,6145,6486,3427,4728,1786,92,1467, - 6128,6005,142,5672,5669,4261,1354,5984,5966,4550, - 3512,4640,2055,4662,1963,6393,6391,6400,6399,6395, - 6396,6394,6397,6398,6401,6392,3427,1136,1400,6128, - 6128,3341,3162,6128,1,128,6128,2464,6045,4618, - 4583,4706,4684,6148,5999,6641,4521,1998,2069,6150, - 2015,3638,2061,6151,6149,1977,6144,6146,6147,6145, - 6128,852,3341,3162,6128,1467,6128,6128,2242,6128, - 40,40,552,5672,5669,4261,1354,6134,49,4550, - 3512,4640,6142,4662,1963,6393,6391,6400,6399,6395, - 6396,6394,6397,6398,6401,6392,3427,566,6128,6128, - 6128,619,6060,6057,6128,6002,6584,2465,6048,4618, - 4583,4706,4684,6148,6134,6128,4521,1998,2069,6150, - 2015,3638,2061,6151,6149,1977,6144,6146,6147,6145, - 5195,292,3341,3162,349,1467,6128,6128,6133,6142, - 40,40,1,5685,5681,4261,5678,6134,6128,4550, - 3512,4640,2059,4662,5915,5942,5948,5921,5924,5936, - 5933,5939,5930,5927,5918,5945,38,5895,5895,6128, - 6128,565,6570,5895,6128,6133,6066,6063,6128,4618, - 4583,4706,4684,6148,6138,3613,4521,1998,2069,6150, - 2015,3638,2061,6151,6149,1977,6144,6146,6147,6145, - 6137,619,6128,10098,10098,1467,2197,1421,6133,1645, - 40,40,40,5672,5669,4261,1354,376,1,4550, - 3512,4640,5963,4662,1963,6393,6391,6400,6399,6395, - 6396,6394,6397,6398,6401,6392,6128,6128,1,5220, - 6128,6128,3558,3560,3249,6165,6136,6134,5862,4618, - 4583,4706,4684,6148,135,186,4521,1998,2069,6150, - 2015,3638,2061,6151,6149,1977,6144,6146,6147,6145, - 6128,1,6128,371,238,1467,6128,6036,40,5672, - 5669,4261,1354,5969,5966,4550,3512,4640,6132,4662, - 1963,6393,6391,6400,6399,6395,6396,6394,6397,6398, - 6401,6392,5463,38,5895,5895,1066,5596,6133,1, - 6139,6488,6135,5972,2645,4618,4583,4706,4684,6148, - 369,5969,4521,1998,2069,6150,2015,3638,2061,6151, - 6149,1977,6144,6146,6147,6145,1,2790,3613,1784, - 509,507,421,6598,6128,6592,1461,6596,1314,6083, - 6079,5972,2645,1,6087,2684,5587,6128,33,389, - 389,6039,389,389,389,389,389,6039,6039,6039, - 6087,6128,6128,6590,6591,6621,6622,40,533,6125, - 6599,6167,389,389,6039,389,389,389,389,389, - 389,389,389,389,389,1375,6128,6601,6131,6128, - 6094,6090,1677,709,1687,1747,6623,419,133,6602, - 8,6600,924,1018,6087,5569,5576,2341,6128,2836, - 6119,1,101,6128,6128,6039,6612,6611,6624,6039, - 3610,6593,6594,6617,6618,6615,6616,6595,6597,6619, - 6620,3705,6165,6128,6625,3612,6605,6606,6607,6603, - 6604,6613,6614,6609,6608,6610,40,5672,5669,4261, - 1354,6128,845,4550,3512,4640,6128,4662,1963,6393, - 6391,6400,6399,6395,6396,6394,6397,6398,6401,6392, - 6128,6128,6564,6565,6566,6128,6119,6128,4983,5522, - 5536,6128,2065,4618,4583,4706,4684,6148,3742,6128, - 4521,1998,2069,6150,2015,3638,2061,6151,6149,1977, - 6144,6146,6147,6145,40,5672,5669,4261,1354,1467, - 6128,4550,3512,4640,74,4662,1963,6393,6391,6400, - 6399,6395,6396,6394,6397,6398,6401,6392,6128,6128, - 3786,5194,5539,522,6128,6128,1,1,4843,6128, - 1,4618,4583,4706,4684,6148,364,6138,4521,1998, - 2069,6150,2015,3638,2061,6151,6149,1977,6144,6146, - 6147,6145,6128,6137,1630,40,5672,5669,4261,1354, - 6128,2899,4550,3512,4640,6116,4662,1963,6393,6391, - 6400,6399,6395,6396,6394,6397,6398,6401,6392,6128, - 6128,6128,4844,4953,5422,6128,6128,6128,4021,3875, - 3919,6128,4618,4583,4706,4684,6148,364,3830,4521, - 1998,2069,6150,2015,3638,2061,6151,6149,1977,6144, - 6146,6147,6145,40,5672,5669,5525,1354,1467,364, - 4550,3512,4640,3591,4662,1963,6393,6391,6400,6399, - 6395,6396,6394,6397,6398,6401,6392,6128,104,100, - 5603,3942,6128,279,3613,2572,6122,6128,6128,6128, - 4618,4583,4706,4684,6148,6128,6128,4521,1998,2069, - 6150,2015,3638,2061,6151,6149,1977,6144,6146,6147, - 6145,40,5672,5669,4261,1354,6128,6128,4550,3512, - 4640,6128,4662,1963,6393,6391,6400,6399,6395,6396, - 6394,6397,6398,6401,6392,6128,511,2,6128,6128, - 6128,6128,6128,6128,6128,6128,2381,6128,4618,4583, - 4706,4684,6148,6128,6128,4521,1998,2069,6150,2015, - 3638,2061,6151,6149,1977,6144,6146,6147,6145,40, - 5672,5669,4261,1354,6128,6128,4550,3512,4640,6128, - 4662,1963,6393,6391,6400,6399,6395,6396,6394,6397, - 6398,6401,6392,6128,6128,6128,2111,6128,38,6128, - 6128,6128,6128,6128,6128,6128,4618,4583,4706,4684, - 6148,858,6128,4521,1998,2069,6150,2015,3638,2061, - 6151,6149,1977,6144,6146,6147,6145,6128,5672,5669, - 6128,6167,924,1018,6128,6128,6128,6128,6128,644, - 6393,6391,6400,6399,6395,6396,6394,6397,6398,6401, - 6392,6466,6389,6128,6467,6383,6390,6386,6362,6388, - 6387,6384,6385,6363,6128,6128,6128,6128,6128,6527, - 6128,6128,6128,6128,6128,6128,242,5819,5815,6128, - 5823,5746,5749,6128,6128,2745,6528,6529,644,5806, - 5812,5785,5788,5800,5797,5803,5794,5791,5782,5809, - 5755,5761,6128,5752,5779,5758,5770,5743,5764,5767, - 5776,5773,5740,6128,6128,6128,6128,6128,6527,6128, - 6128,6128,6128,6128,224,6128,6128,6128,6128,5698, - 5701,6128,6128,6128,2745,6528,6529,6393,6391,6400, - 6399,6395,6396,6394,6397,6398,6401,6392,6466,6389, - 6128,6467,6383,6390,6386,6362,6388,6387,6384,6385, - 6363,1,6128,6128,6128,6128,6128,6128,6128,6128, - 6128,192,6128,6128,6128,6128,6128,6128,6128,6128, - 6128,6128,6128,6128,6128,6128,6128,192 + 1,230,1,1,1,9827,1,1,1,1, + 1,1,1,5793,5789,2482,5786,1,5771,6279, + 707,3889,5565,6279,6279,2185,40,1515,1434,6639, + 6318,6279,6140,1,1,1,1434,1225,6792,695, + 6491,1,5793,5789,2482,5786,5964,5970,5967,707, + 3889,6279,674,1,5793,5789,5233,5786,121,1, + 6279,4733,3889,6780,4799,4821,6050,6077,6083,6056, + 6059,6071,6068,6074,6065,6062,6053,6080,6279,6213, + 6213,6213,6213,6213,6213,6213,6213,6213,6279,6213, + 6213,4777,4755,6299,4865,4843,4388,4345,4461,1834, + 1926,6301,1852,3030,1879,6302,6300,1805,6295,6297, + 6298,6296,46,6155,6155,2185,6279,1478,6279,5961, + 5958,40,40,6279,6279,517,40,5780,5777,5233, + 691,6715,6716,6717,4733,3889,6252,4799,4821,1501, + 6544,6542,6551,6550,6546,6547,6545,6548,6549,6552, + 6543,3704,6213,573,6006,6006,6152,576,5997,6003, + 6000,6279,6293,6294,4777,4755,6299,4865,4843,707, + 3889,4461,1834,1926,6301,1852,3030,1879,6302,6300, + 1805,6295,6297,6298,6296,1078,4887,2396,6735,574, + 1478,6279,6293,6294,841,721,829,576,2319,6101, + 6279,6291,6286,40,5780,5777,5233,691,120,3449, + 6279,4733,3889,6098,4799,4821,1501,6544,6542,6551, + 6550,6546,6547,6545,6548,6549,6552,6543,346,5780, + 5777,3371,691,841,721,829,707,3889,6279,332, + 332,4777,4755,6299,4865,4843,4388,4345,4461,1834, + 1926,6301,1852,3030,1879,6302,6300,1805,6295,6297, + 6298,6296,6279,6279,6290,6279,6279,1478,999,142, + 5780,5777,5233,691,516,6285,6101,4733,3889,321, + 4799,4821,1501,6544,6542,6551,6550,6546,6547,6545, + 6548,6549,6552,6543,332,1434,6279,1994,459,841, + 721,829,1,1,458,3202,6285,4777,4755,6299, + 4865,4843,342,5994,4461,1834,1926,6301,1852,3030, + 1879,6302,6300,1805,6295,6297,6298,6296,3596,450, + 440,349,3934,1478,3660,6279,6284,40,40,553, + 5780,5777,5233,691,948,6285,1434,4733,3889,6279, + 4799,4821,1501,6544,6542,6551,6550,6546,6547,6545, + 6548,6549,6552,6543,6279,6021,6279,6284,2803,1434, + 135,6024,342,342,342,6279,6290,4777,4755,6299, + 4865,4843,6279,137,4461,1834,1926,6301,1852,3030, + 1879,6302,6300,1805,6295,6297,6298,6296,1434,3323, + 363,76,1,1478,2128,1387,6284,40,40,1, + 5793,5789,5233,5786,290,6104,6279,4733,3889,3360, + 4799,4821,6050,6077,6083,6056,6059,6071,6068,6074, + 6065,6062,6053,6080,568,6715,6716,6717,6721,841, + 721,829,6342,6343,5380,6107,2714,4777,4755,6299, + 4865,4843,158,6279,4461,1834,1926,6301,1852,3030, + 1879,6302,6300,1805,6295,6297,6298,6296,2984,418, + 3726,2895,427,1478,841,721,829,40,40,40, + 5780,5777,5233,691,1710,2727,6279,4733,3889,6098, + 4799,4821,1501,6544,6542,6551,6550,6546,6547,6545, + 6548,6549,6552,6543,1,5793,5789,3371,5786,717, + 6279,6279,707,3889,6137,5627,6279,4777,4755,6299, + 4865,4843,2044,2496,4461,1834,1926,6301,1852,3030, + 1879,6302,6300,1805,6295,6297,6298,6296,6279,10274, + 10274,1,3456,1478,6279,40,5780,5777,5233,691, + 6279,6279,6101,4733,3889,6283,4799,4821,1501,6544, + 6542,6551,6550,6546,6547,6545,6548,6549,6552,6543, + 6279,1434,570,5644,2402,6140,6279,6195,6201,6198, + 2680,687,6316,4777,4755,6299,4865,4843,3368,6279, + 4461,1834,1926,6301,1852,3030,1879,6302,6300,1805, + 6295,6297,6298,6296,1,292,2918,1759,6279,6279, + 6293,6294,6749,6279,6279,6743,6747,1646,6223,6231, + 6227,6279,3426,6235,6289,33,389,389,6177,389, + 389,389,389,389,389,6177,6177,6177,1,6279, + 6235,6288,6741,6742,92,6772,6773,6143,364,6750, + 389,389,6177,389,389,389,389,389,389,389, + 389,389,389,569,118,6282,6752,3620,6204,6210, + 6207,942,1383,1465,6774,4710,6753,6279,8,6751, + 2226,1,2091,6235,3136,38,6030,6030,6270,6279, + 6279,529,6177,371,6763,6762,6177,6775,376,6744, + 6745,6768,6769,6766,6767,6746,6748,6770,6771,364, + 238,3436,6776,6174,6756,6757,6758,6754,6755,6764, + 6765,6760,6759,6761,40,5780,5777,5233,691,1599, + 364,1,4733,3889,5698,4799,4821,1501,6544,6542, + 6551,6550,6546,6547,6545,6548,6549,6552,6543,6279, + 5780,5777,529,691,6270,6279,533,6149,3889,4687, + 4664,3442,4777,4755,6299,4865,4843,369,1279,4461, + 1834,1926,6301,1852,3030,1879,6302,6300,1805,6295, + 6297,6298,6296,40,5780,5777,5233,691,1478,6279, + 6279,4733,3889,1122,4799,4821,1501,6544,6542,6551, + 6550,6546,6547,6545,6548,6549,6552,6543,6279,6279, + 5780,5777,6279,691,74,5217,6279,6149,3889,3449, + 3678,4777,4755,6299,4865,4843,6285,6279,4461,1834, + 1926,6301,1852,3030,1879,6302,6300,1805,6295,6297, + 6298,6296,1340,40,5780,5777,5233,691,6279,6279, + 2169,4733,3889,2566,4799,4821,1501,6544,6542,6551, + 6550,6546,6547,6545,6548,6549,6552,6543,419,6279, + 101,509,6279,841,721,829,6267,6279,6279,6287, + 5629,4777,4755,6299,4865,4843,5699,6284,4461,1834, + 1926,6301,1852,3030,1879,6302,6300,1805,6295,6297, + 6298,6296,40,5780,5777,5591,691,1478,6279,6279, + 4733,3889,507,4799,4821,1501,6544,6542,6551,6550, + 6546,6547,6545,6548,6549,6552,6543,6279,6242,6238, + 421,6279,6279,6279,5335,5632,3326,5287,6279,643, + 4777,4755,6299,4865,4843,6286,5645,4461,1834,1926, + 6301,1852,3030,1879,6302,6300,1805,6295,6297,6298, + 6296,40,5780,5777,5233,691,6279,186,6279,4733, + 3889,6316,4799,4821,1501,6544,6542,6551,6550,6546, + 6547,6545,6548,6549,6552,6543,1,5674,2,6279, + 6279,127,3835,4169,6279,6279,164,4448,3958,4777, + 4755,6299,4865,4843,6279,2371,4461,1834,1926,6301, + 1852,3030,1879,6302,6300,1805,6295,6297,6298,6296, + 40,5780,5777,5233,691,6279,6279,6279,4733,3889, + 3922,4799,4821,1501,6544,6542,6551,6550,6546,6547, + 6545,6548,6549,6552,6543,6279,6279,6279,6279,6279, + 38,6279,6279,3535,1,4012,522,164,4777,4755, + 6299,4865,4843,6119,6285,4461,1834,1926,6301,1852, + 3030,1879,6302,6300,1805,6295,6297,6298,6296,6279, + 5780,5777,6279,6318,841,721,829,6279,3473,3398, + 5377,6276,619,6544,6542,6551,6550,6546,6547,6545, + 6548,6549,6552,6543,6617,6540,117,6618,6534,6541, + 6537,6513,6539,6538,6535,6536,6514,4710,129,3853, + 128,3898,6678,3943,104,6284,1477,4069,242,5948, + 5944,100,5952,5878,5872,5875,6279,511,2943,6679, + 6680,619,5935,5941,5914,5917,5929,5926,5932,5923, + 5920,5911,5938,5884,5890,6279,5881,5908,5887,5899, + 5869,5893,5896,5905,5902,5866,1,5793,5789,5783, + 5786,6678,6279,1,5800,5797,6289,3449,6279,6279, + 3535,1,3535,6289,6279,6279,6279,2943,6679,6680, + 6183,192,6186,6288,6279,6279,279,5518,2412,6273, + 6288,4687,4664,6279,6279,6279,6279,6279,192,6279, + 6279,2138,1000,6279,6279,3473,3398,3473,3398 }; }; public final static char termAction[] = TermAction.termAction; @@ -1989,255 +2015,253 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym public interface Asb { public final static char asb[] = {0, - 896,1,1118,1076,860,1162,260,1078,650,206, - 1126,890,151,650,956,1076,1076,967,208,967, - 586,967,578,967,951,967,890,154,62,1162, - 1024,317,660,660,820,154,660,154,1076,524, - 564,364,1127,208,466,154,152,463,763,462, - 211,588,257,586,206,890,578,262,154,154, - 258,892,592,592,708,10,3,3,1027,601, - 707,1024,1024,154,1172,463,262,262,657,59, - 463,660,660,524,660,154,406,773,227,1128, - 1128,1127,1127,1127,890,154,152,708,539,463, - 461,462,211,154,590,944,518,258,208,526, - 154,262,258,154,403,592,208,890,10,18, - 1024,1030,154,114,166,1024,10,403,653,262, - 262,1027,59,59,152,773,227,1127,361,1127, - 154,708,708,514,513,462,361,154,211,1187, - 206,524,150,1175,211,590,519,592,590,592, - 258,526,526,154,564,504,1076,524,524,524, - 524,890,1076,96,319,115,115,115,115,115, - 115,115,115,115,662,668,673,670,677,675, - 682,680,684,683,685,412,686,563,154,892, - 154,208,76,545,154,1076,59,700,1031,463, - 114,361,208,1024,10,1033,653,564,564,657, - 463,725,711,724,563,524,531,531,361,361, - 154,539,463,420,463,406,1177,592,592,592, - 592,154,526,361,566,360,1027,769,721,720, - 96,860,860,860,860,154,421,463,463,96, - 1035,859,406,96,662,937,937,421,114,115, - 115,115,115,115,115,115,115,115,115,115, - 115,115,115,115,115,115,115,115,114,114, - 114,114,114,114,114,114,114,114,114,114, - 115,96,403,537,77,890,154,421,571,361, - 166,653,652,549,114,722,722,767,1027,324, - 227,1128,227,562,562,708,514,152,707,115, - 1187,11,596,705,1177,592,592,157,361,115, - 154,504,463,771,773,463,463,564,564,564, - 564,258,463,115,729,973,973,890,319,59, - 859,114,463,151,153,151,463,59,670,670, - 668,668,668,675,675,675,675,673,673,680, - 677,677,683,682,684,1187,685,537,76,1187, - 115,1187,708,75,1076,1076,1076,77,1076,154, - 607,708,708,154,208,463,114,166,653,549, - 114,114,771,711,227,860,860,420,708,1177, - 115,115,705,705,1177,1177,545,889,158,154, - 463,773,1076,1076,1076,1076,154,154,154,406, - 115,860,666,470,463,154,153,406,114,67, - 1076,67,77,1187,77,96,96,94,894,96, - 708,708,16,537,360,551,563,705,705,157, - 154,890,890,154,810,463,114,114,114,114, - 1076,1076,258,152,463,666,1027,892,154,152, - 324,77,463,1024,463,94,1162,1076,463,537, - 359,165,551,808,154,154,154,810,810,463, - 463,463,463,421,421,154,666,667,666,114, - 470,410,662,892,463,463,1021,77,16,77, - 708,1162,114,77,74,359,359,1076,531,154, - 154,558,810,463,463,1008,666,421,115,59, - 410,208,208,1023,114,75,421,708,463,774, - 562,558,558,667,463,59,77,463,708,514, - 151,558,77,860 + 1119,1,1110,1068,907,1153,457,1070,583,59, + 1118,938,148,583,947,1068,1068,1068,958,61, + 958,812,958,689,958,942,958,938,151,264, + 1153,1015,524,637,637,867,151,637,151,1068, + 466,745,161,411,61,269,151,149,393,733, + 392,583,407,814,454,812,59,938,689,468, + 151,151,455,940,285,285,686,620,273,273, + 1018,605,685,1015,1015,151,1164,393,468,468, + 634,330,393,637,637,466,637,151,203,772, + 423,412,412,411,411,411,938,151,149,686, + 258,393,391,392,393,407,151,282,823,459, + 455,61,531,151,468,455,151,199,285,61, + 938,620,289,1015,1021,151,111,19,1015,620, + 199,630,468,468,1018,330,330,149,772,423, + 411,404,411,151,686,686,254,253,392,404, + 151,407,287,59,466,147,3,407,282,460, + 285,282,285,455,531,531,151,745,243,1068, + 466,466,466,466,938,1068,92,526,112,112, + 112,112,112,112,112,112,112,639,645,650, + 647,654,652,659,657,661,660,662,341,663, + 744,151,940,151,61,73,536,151,1068,330, + 677,1022,393,111,404,61,1015,620,1025,630, + 745,745,634,393,762,747,761,744,466,396, + 396,404,404,151,258,393,350,393,203,5, + 285,285,285,285,151,531,404,587,403,1018, + 768,758,757,92,907,907,907,907,151,351, + 393,393,92,1027,906,203,92,639,154,154, + 351,111,112,112,112,112,112,112,112,112, + 112,112,112,112,112,112,112,112,112,112, + 112,111,111,111,111,111,111,111,111,111, + 111,111,111,112,92,199,585,74,938,151, + 351,592,404,19,630,629,611,111,759,759, + 766,1018,831,423,412,423,743,743,686,254, + 149,685,112,287,621,599,682,5,285,285, + 333,404,112,151,243,393,770,772,393,393, + 745,745,745,745,455,393,112,698,964,964, + 938,526,330,906,111,393,148,150,148,393, + 330,647,647,645,645,645,652,652,652,652, + 650,650,657,654,654,660,659,661,287,662, + 585,73,287,112,287,686,72,1068,1068,1068, + 74,1068,151,540,686,686,151,61,393,111, + 19,630,611,111,111,770,747,423,907,907, + 350,686,5,112,112,682,682,5,5,536, + 937,334,151,393,772,1068,1068,1068,1068,151, + 151,151,203,112,907,643,209,393,151,150, + 203,111,64,1068,64,74,287,74,92,92, + 90,810,92,686,686,627,585,403,613,744, + 682,682,333,151,938,938,151,737,393,111, + 111,111,111,1068,1068,455,149,393,643,1018, + 940,151,149,831,74,393,1015,393,90,1153, + 1068,393,585,402,18,613,808,151,151,151, + 737,737,393,393,393,393,351,351,151,643, + 644,643,111,209,207,639,940,393,393,1012, + 74,627,74,686,1153,111,74,71,402,402, + 1068,396,151,151,739,737,393,393,999,643, + 351,112,330,207,61,61,1014,111,72,351, + 686,393,773,743,739,739,644,393,330,74, + 393,686,254,148,739,74,907 }; }; public final static char asb[] = Asb.asb; public final int asb(int index) { return asb[index]; } public interface Asr { - public final static byte asr[] = {0, - 123,0,77,73,74,93,71,72,67,3, - 10,70,26,5,6,75,0,68,69,3, - 12,46,50,48,45,53,14,23,13,19, - 17,18,20,21,16,15,22,54,57,55, - 56,41,52,47,51,7,8,4,39,40, - 11,9,37,38,44,49,1,2,120,10, - 0,10,74,72,77,0,89,105,106,107, - 43,74,123,121,124,76,65,77,64,62, - 66,79,81,87,85,78,83,84,86,88, - 72,80,82,26,10,28,42,24,58,29, - 30,31,32,33,34,35,59,36,60,25, - 27,5,6,63,68,69,46,50,48,45, - 53,14,23,13,19,17,18,20,21,16, - 15,22,54,57,55,56,41,52,47,51, - 3,39,40,11,9,37,38,44,49,12, - 4,8,7,1,2,0,25,1,2,4, - 105,106,107,0,76,68,69,63,39,40, - 11,9,37,38,7,44,49,3,4,8, - 54,57,55,56,41,52,47,51,14,23, - 13,19,17,18,20,21,16,15,22,12, - 46,50,48,45,53,1,2,72,10,0, - 89,62,8,105,106,107,64,10,3,11, - 9,7,74,76,26,65,28,13,14,42, - 24,15,58,29,30,16,31,32,17,18, - 33,34,19,20,35,59,36,12,60,21, - 25,22,27,23,5,6,4,1,2,43, - 0,28,13,14,42,24,45,15,46,58, - 29,30,47,16,31,32,17,18,33,34, - 48,19,20,49,35,50,59,51,63,52, - 36,53,12,60,21,25,22,27,23,54, - 55,56,41,3,39,40,11,9,37,38, - 44,73,4,5,6,57,8,7,1,2, - 69,68,0,28,13,14,42,24,15,58, - 29,30,16,31,32,17,18,33,34,19, - 20,35,59,36,12,60,21,25,22,27, - 23,1,2,4,5,6,93,0,26,70, - 76,10,0,66,28,13,14,42,24,15, - 58,29,89,30,16,31,32,17,18,33, - 62,34,19,20,35,59,36,12,60,21, - 64,25,22,27,23,3,11,4,26,65, - 72,10,9,5,6,8,43,1,2,7, - 0,73,74,93,120,76,26,5,6,70, - 13,14,45,68,15,46,47,16,17,18, - 69,8,48,19,20,49,50,51,63,52, - 53,12,21,22,23,54,55,56,41,2, - 39,40,11,9,37,38,7,44,4,57, - 3,1,71,10,0,10,72,75,0,92, - 94,37,38,95,96,90,91,61,97,98, - 99,100,101,102,103,104,109,74,93,75, - 110,111,112,113,114,115,116,117,118,119, - 120,76,26,73,1,2,11,9,4,5, - 6,67,3,71,10,70,0,4,10,74, - 72,5,6,61,0,1,2,10,76,0, - 73,75,70,1,2,0,121,0,10,70, - 71,1,24,0,10,72,70,0,24,27, - 77,3,74,26,72,5,6,63,10,93, - 71,75,70,73,0,10,70,76,75,0, - 10,74,120,71,26,70,0,4,10,72, - 5,6,1,2,0,43,4,1,2,5, - 6,10,74,72,0,74,67,5,6,61, - 10,70,26,75,3,0,13,14,45,68, - 15,46,47,16,17,18,69,8,48,19, - 20,49,50,51,63,52,53,12,21,22, - 23,54,55,56,1,2,3,39,40,11, - 9,37,38,7,44,4,57,26,10,41, - 0,63,24,8,27,7,1,2,4,77, - 72,122,108,39,40,67,3,94,92,9, - 95,96,37,38,91,90,61,97,98,99, - 100,11,101,102,103,73,93,71,75,110, - 111,112,113,114,115,116,117,118,119,74, - 120,76,104,109,5,6,70,26,10,0, - 11,9,5,6,8,7,4,1,2,3, - 67,73,75,70,10,71,93,0,28,13, - 14,24,15,29,30,16,31,32,17,18, - 33,8,34,19,20,35,36,21,25,22, - 27,23,1,2,67,11,9,7,4,26, - 5,6,71,10,3,0,7,8,3,67, - 9,11,93,28,13,14,24,15,58,29, - 30,16,31,32,17,18,33,34,19,20, - 35,59,36,12,60,21,25,22,27,23, - 1,2,4,5,6,71,10,42,0,24, - 63,27,10,73,93,75,70,71,0,69, - 68,37,38,9,95,96,101,11,102,7, - 44,75,61,73,113,114,110,111,112,118, - 117,119,91,90,115,116,99,100,97,98, - 103,104,39,40,70,92,108,67,3,12, - 58,42,59,60,14,23,13,19,17,18, - 20,21,16,15,22,28,34,35,30,33, - 32,29,24,27,6,5,31,36,25,1, - 2,4,0,78,0,11,9,10,26,3, - 28,13,14,42,24,15,58,29,16,31, - 32,17,18,33,34,19,20,35,59,36, - 12,60,21,25,22,27,23,123,65,62, - 30,89,66,64,5,6,8,4,43,7, - 1,2,0,4,10,74,72,5,6,0, - 12,58,42,59,60,14,23,13,19,17, - 18,20,21,16,15,22,77,74,93,120, - 76,72,122,94,108,92,39,40,37,38, - 95,96,90,91,61,73,97,98,99,100, - 101,102,103,104,109,75,110,111,112,113, - 114,115,116,117,118,119,70,28,24,29, - 30,31,32,33,34,35,36,25,27,26, - 10,71,67,7,8,3,1,2,4,11, - 5,6,9,0,68,69,39,40,11,9, - 37,38,7,44,49,4,8,54,57,55, - 56,41,52,47,51,14,23,13,19,17, - 18,20,21,16,15,22,12,46,50,48, - 45,53,67,1,2,3,0,15,58,29, - 16,31,32,17,18,33,34,19,20,35, - 59,36,60,21,25,22,27,23,24,42, - 14,13,28,10,3,11,9,26,64,66, - 89,30,65,61,5,6,43,8,1,2, - 7,4,12,62,0,123,76,15,58,29, - 16,31,32,17,18,33,34,19,20,35, - 59,36,12,60,21,25,22,27,23,24, - 42,14,13,28,65,62,30,89,66,64, - 43,10,26,5,6,7,8,1,2,4, - 3,9,11,0,26,10,3,8,7,11, - 9,4,1,2,5,6,74,0 + public final static char asr[] = {0, + 123,0,27,10,3,9,8,74,12,11, + 4,1,2,6,7,5,0,76,68,69, + 64,41,42,12,11,38,39,8,45,50, + 3,4,9,55,58,56,57,40,53,48, + 52,15,24,14,20,18,19,21,22,17, + 16,23,13,47,51,49,46,54,1,2, + 73,10,0,89,105,106,107,44,74,123, + 121,124,76,66,77,65,63,79,81,87, + 85,78,83,84,86,88,73,80,82,27, + 10,5,29,43,25,59,30,31,32,33, + 34,35,36,60,37,61,26,28,6,7, + 64,68,69,47,51,49,46,54,15,24, + 14,20,18,19,21,22,17,16,23,55, + 58,56,57,40,53,48,52,3,41,42, + 12,11,38,39,45,50,13,4,9,8, + 1,2,0,9,4,44,8,1,2,0, + 29,14,15,43,25,16,59,30,89,31, + 17,32,33,18,19,34,63,35,20,21, + 36,60,37,13,61,22,65,26,23,28, + 24,3,12,4,27,66,73,10,5,11, + 6,7,9,44,1,2,8,0,93,38, + 39,95,96,90,91,62,97,98,99,100, + 101,102,103,104,109,74,92,75,110,111, + 112,113,114,115,116,117,118,119,120,76, + 27,94,72,5,1,2,12,11,4,6, + 7,67,3,71,10,70,0,10,70,71, + 1,25,0,10,74,73,77,0,10,73, + 75,0,77,3,72,92,75,70,71,27, + 67,6,7,5,10,73,74,0,68,69, + 3,13,47,51,49,46,54,15,24,14, + 20,18,19,21,22,17,16,23,55,58, + 56,57,40,53,48,52,8,9,4,41, + 42,12,11,38,39,45,50,1,2,120, + 10,0,26,1,2,4,105,106,107,0, + 5,72,74,92,120,76,27,6,7,70, + 14,15,46,68,16,47,48,17,18,19, + 69,9,49,20,21,50,51,52,64,53, + 54,13,22,23,24,55,56,57,40,2, + 41,42,12,11,38,39,8,45,4,58, + 3,1,71,10,0,72,75,70,1,2, + 0,27,70,76,10,0,105,106,107,74, + 76,9,10,3,12,11,8,27,66,63, + 89,65,5,29,14,15,43,25,16,59, + 30,31,17,32,33,18,19,34,35,20, + 21,36,60,37,13,61,22,26,23,28, + 24,6,7,4,1,2,44,0,4,10, + 74,73,6,7,5,62,0,5,29,14, + 15,43,25,46,16,47,59,30,31,48, + 17,32,33,18,19,34,35,49,20,21, + 50,36,51,60,52,64,53,37,54,13, + 61,22,26,23,28,24,55,56,57,40, + 3,41,42,12,11,38,39,45,72,4, + 6,7,58,9,8,1,2,69,68,0, + 1,2,10,76,0,10,73,70,0,14, + 15,46,68,16,47,48,17,18,19,69, + 9,49,20,21,50,51,52,64,53,54, + 13,22,23,24,55,56,57,1,2,3, + 41,42,12,11,38,39,8,45,4,58, + 27,10,40,0,121,0,10,70,76,75, + 0,10,74,120,71,27,70,0,74,5, + 67,6,7,62,10,70,27,75,3,0, + 25,28,64,77,72,74,92,71,73,3, + 5,10,70,27,6,7,75,0,64,25, + 9,28,8,1,2,4,77,73,122,108, + 41,42,67,3,94,93,11,95,96,38, + 39,91,90,62,97,98,99,100,12,101, + 102,103,72,92,71,75,110,111,112,113, + 114,115,116,117,118,119,74,120,76,104, + 109,6,7,5,70,27,10,0,4,10, + 73,6,7,5,1,2,0,5,29,14, + 15,25,16,30,31,17,32,33,18,19, + 34,9,35,20,21,36,37,22,26,23, + 28,24,1,2,67,12,11,8,4,27, + 6,7,71,10,3,0,25,28,64,10, + 92,71,75,70,72,0,5,12,11,6, + 7,9,8,4,1,2,3,67,72,75, + 70,10,71,92,0,8,9,3,67,11, + 12,92,5,29,14,15,25,16,59,30, + 31,17,32,33,18,19,34,35,20,21, + 36,60,37,13,61,22,26,23,28,24, + 1,2,4,6,7,71,10,43,0,78, + 0,44,4,5,10,74,73,6,7,1, + 2,0,4,10,74,73,6,7,5,0, + 5,29,14,15,43,25,16,59,30,31, + 17,32,33,18,19,34,35,20,21,36, + 60,37,13,61,22,26,23,28,24,1, + 2,4,6,7,92,0,69,68,38,39, + 11,95,96,101,12,102,8,45,75,62, + 72,113,114,110,111,112,118,117,119,91, + 90,115,116,99,100,97,98,103,104,41, + 42,70,93,108,67,3,13,59,43,60, + 61,15,24,14,20,18,19,21,22,17, + 16,23,29,35,36,31,34,33,30,25, + 28,5,7,6,32,37,26,1,2,4, + 0,13,59,43,60,61,15,24,14,20, + 18,19,21,22,17,16,23,77,74,92, + 120,76,73,122,94,108,93,41,42,38, + 39,95,96,90,91,62,72,97,98,99, + 100,101,102,103,104,109,75,110,111,112, + 113,114,115,116,117,118,119,70,29,25, + 30,31,32,33,34,35,36,37,26,28, + 27,10,71,67,8,9,3,1,2,4, + 12,6,7,5,11,0,68,69,41,42, + 12,11,38,39,8,45,50,4,9,55, + 58,56,57,40,53,48,52,15,24,14, + 20,18,19,21,22,17,16,23,13,47, + 51,49,46,54,67,1,2,3,0,16, + 59,30,17,32,33,18,19,34,35,20, + 21,36,60,37,61,22,26,23,28,24, + 25,43,15,14,29,10,3,12,11,27, + 65,89,31,66,62,6,7,5,44,9, + 1,2,8,4,13,63,0,76,29,14, + 15,43,25,16,59,30,17,32,33,18, + 19,34,35,20,21,36,60,37,13,61, + 22,26,23,28,24,123,66,63,31,89, + 65,44,5,10,27,6,7,8,9,1, + 2,4,3,11,12,0 }; }; - public final static byte asr[] = Asr.asr; + public final static char asr[] = Asr.asr; public final int asr(int index) { return asr[index]; } public interface Nasb { public final static char nasb[] = {0, - 199,12,25,12,5,256,12,236,12,15, - 236,80,80,12,226,12,12,227,180,227, - 130,227,130,227,220,12,10,163,174,123, - 169,155,12,12,189,233,12,163,12,12, - 12,179,174,180,12,193,193,147,147,84, - 174,204,80,214,15,80,214,174,163,11, - 12,12,174,91,161,130,13,13,265,68, - 12,151,208,163,12,147,174,174,70,23, - 147,12,12,12,12,11,29,174,174,236, - 236,174,199,174,80,66,155,161,139,147, - 12,98,248,205,130,130,12,193,180,174, - 193,37,49,205,141,91,88,45,214,18, - 151,214,163,100,74,124,130,241,174,37, - 37,265,23,23,155,275,275,199,55,199, - 193,161,161,147,12,147,55,163,161,12, - 65,12,25,255,248,130,130,174,214,174, - 49,174,234,11,12,135,12,12,12,12, - 12,80,12,216,163,76,76,229,76,76, - 76,76,76,76,12,12,12,12,12,12, - 12,12,12,12,12,76,12,12,205,12, - 11,88,54,12,193,12,23,12,130,147, - 76,174,180,208,214,12,52,12,12,280, - 147,12,167,12,12,12,116,116,55,55, - 66,139,147,76,147,29,123,174,174,132, - 132,205,234,55,12,12,265,134,13,13, - 216,42,42,42,42,163,118,147,147,1, - 76,108,29,216,12,31,31,118,186,76, - 76,76,76,76,76,76,76,76,76,76, - 76,76,76,76,76,76,76,76,76,76, - 76,76,76,76,76,76,76,76,76,186, - 76,37,141,174,176,45,11,118,12,55, - 174,174,52,174,76,12,12,166,265,275, - 275,236,174,12,12,161,147,155,161,76, - 12,86,12,130,208,132,132,59,55,76, - 234,278,147,263,174,147,147,12,12,12, - 12,28,147,76,12,12,12,10,163,23, - 42,100,147,154,163,154,147,23,12,12, + 204,12,36,12,5,16,12,242,12,90, + 242,30,30,12,229,12,12,12,230,198, + 230,130,230,130,230,223,12,10,159,188, + 123,183,153,12,12,200,239,12,159,12, + 12,12,197,188,198,12,220,220,285,285, + 54,12,188,167,30,215,90,30,215,188, + 159,11,12,12,188,13,134,130,81,81, + 260,44,12,149,209,159,12,285,188,188, + 74,103,285,12,12,12,12,11,178,188, + 188,242,242,188,204,188,30,94,153,134, + 72,285,12,83,285,247,168,130,130,12, + 220,198,188,220,46,118,168,143,13,63, + 56,215,98,149,215,159,69,24,124,130, + 232,188,46,46,260,103,103,153,276,276, + 204,61,204,220,134,134,285,12,285,61, + 159,134,12,93,12,36,15,247,130,130, + 188,215,188,118,188,240,11,12,172,12, + 12,12,12,12,30,12,264,159,26,26, + 235,26,26,26,26,26,26,12,12,12, + 12,12,12,12,12,12,12,12,26,12, + 12,168,12,11,63,60,12,220,12,103, + 12,130,285,26,188,198,209,215,12,157, + 12,12,270,285,12,181,12,12,12,109, + 109,61,61,94,72,285,26,285,178,123, + 188,188,116,116,168,240,61,12,12,260, + 171,81,81,264,51,51,51,51,159,111, + 285,285,1,26,121,178,264,12,38,38, + 111,140,26,26,26,26,26,26,26,26, + 26,26,26,26,26,26,26,26,26,26, + 26,26,26,26,26,26,26,26,26,26, + 26,26,140,26,46,143,188,194,56,11, + 111,12,61,188,188,157,188,26,12,12, + 180,260,276,276,242,188,12,12,134,285, + 153,134,26,12,77,12,130,209,116,116, + 105,61,26,240,268,285,258,188,285,285, + 12,12,12,12,177,285,26,12,12,12, + 10,159,103,51,69,285,152,159,152,285, + 103,12,12,12,12,12,12,12,12,12, 12,12,12,12,12,12,12,12,12,12, - 12,12,12,12,12,12,12,63,182,12, - 76,12,161,12,12,12,12,183,12,234, - 159,161,161,234,95,147,76,74,52,52, - 76,76,263,149,275,42,42,76,161,124, - 76,76,214,130,208,12,12,80,103,193, - 147,275,12,12,12,12,205,11,163,29, - 76,42,174,105,147,163,196,29,76,57, - 12,12,183,12,183,244,244,273,12,244, - 161,161,12,174,55,174,12,130,214,110, - 193,80,80,11,174,147,186,186,186,186, - 12,12,27,205,147,121,280,12,233,205, - 42,183,147,169,147,269,174,12,147,63, - 93,73,114,12,11,193,193,52,174,147, - 147,147,147,118,118,205,174,82,12,186, - 280,197,12,12,147,147,174,183,12,183, - 161,124,186,183,57,93,12,12,116,11, - 11,174,52,147,147,12,121,118,76,23, - 197,95,95,167,76,12,284,161,147,145, - 12,114,174,82,147,23,183,147,161,147, - 154,114,183,42 + 88,136,12,26,12,134,12,12,12,12, + 137,12,240,132,134,134,240,85,285,26, + 24,157,157,26,26,258,147,276,51,51, + 26,134,124,26,26,215,130,209,12,12, + 30,34,220,285,276,12,12,12,12,168, + 11,159,178,26,51,188,66,285,159,217, + 178,26,32,12,12,137,12,137,254,254, + 274,12,254,134,134,12,188,61,188,12, + 130,215,190,220,30,30,11,188,285,140, + 140,140,140,12,12,176,168,285,96,270, + 12,239,168,51,137,285,183,285,279,188, + 12,285,88,114,23,165,12,11,220,220, + 157,188,285,285,285,285,111,111,168,188, + 79,12,140,270,218,12,12,285,285,188, + 137,12,137,134,124,140,137,32,114,12, + 12,109,11,11,188,157,285,285,12,96, + 111,26,103,218,85,85,181,26,12,162, + 134,285,283,12,165,188,79,285,103,137, + 285,134,285,152,165,137,51 }; }; public final static char nasb[] = Nasb.nasb; @@ -2245,35 +2269,35 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym public interface Nasr { public final static char nasr[] = {0, - 3,13,10,9,159,157,128,156,155,5, - 2,0,85,0,1,46,0,13,2,9, - 10,5,87,0,163,0,2,143,70,0, - 5,2,9,10,146,0,5,10,9,2, - 13,4,49,0,176,5,175,0,2,70, - 0,69,0,4,72,0,122,0,5,106, - 200,0,168,0,46,110,0,192,0,4, - 203,0,72,136,46,13,2,9,10,5, - 0,148,0,210,0,199,0,46,167,0, - 166,0,169,0,46,65,0,181,0,4, - 36,0,201,0,4,185,0,183,0,5, - 106,172,0,133,0,114,0,4,101,0, - 150,0,94,4,5,10,9,2,62,41, - 0,116,0,30,98,99,4,0,179,0, - 70,145,144,0,49,4,30,0,99,98, - 41,62,67,5,10,9,2,0,4,43, - 42,0,2,48,0,30,99,98,62,5, - 2,9,10,4,0,52,43,187,4,46, - 0,72,46,52,73,4,43,0,4,49, - 204,0,2,66,0,2,123,0,109,86, - 52,4,0,48,2,3,0,62,5,2, - 9,10,4,25,0,4,49,43,0,2, - 5,128,124,125,126,13,91,0,5,10, - 9,13,3,1,0,4,52,86,88,0, - 41,70,0,4,49,108,0,4,52,86, - 106,50,5,0,42,5,2,9,10,4, - 165,0,23,4,5,41,94,0,49,4, - 188,0,43,189,23,4,0,99,98,41, - 5,67,0,4,186,0 + 3,13,10,9,160,158,129,157,156,5, + 2,0,167,0,43,5,2,9,10,4, + 166,0,73,137,47,13,2,9,10,5, + 0,123,0,202,0,164,0,5,2,9, + 10,147,0,193,0,5,10,9,2,13, + 4,50,0,211,0,177,5,176,0,4, + 73,0,47,168,0,4,186,0,4,37, + 0,180,0,4,204,0,200,0,149,0, + 86,0,182,0,47,66,0,169,0,1, + 47,0,47,111,0,151,0,13,2,9, + 10,5,88,0,5,107,201,0,115,0, + 4,102,0,170,0,117,0,2,71,0, + 184,0,95,4,5,10,9,2,63,42, + 0,4,44,43,0,73,47,53,74,4, + 44,0,71,146,145,0,100,99,42,63, + 68,5,10,9,2,0,70,0,2,49, + 0,4,187,0,134,0,49,2,3,0, + 31,99,100,4,0,2,144,71,0,31, + 100,99,63,5,2,9,10,4,0,5, + 107,173,0,53,44,188,4,47,0,4, + 50,205,0,110,87,53,4,0,63,5, + 2,9,10,4,25,0,2,124,0,2, + 67,0,2,5,129,125,126,127,13,92, + 0,42,71,0,5,10,9,13,3,1, + 0,4,53,87,89,0,4,53,87,107, + 51,5,0,4,50,109,0,23,4,5, + 42,95,0,4,50,44,0,100,99,42, + 5,68,0,44,190,23,4,0,50,4, + 189,0,50,4,31,0 }; }; public final static char nasr[] = Nasr.nasr; @@ -2281,19 +2305,19 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym public interface TerminalIndex { public final static char terminalIndex[] = {0, - 113,114,2,31,122,123,13,79,10,115, - 9,100,48,52,60,68,74,75,86,87, - 102,105,107,54,104,120,106,47,64,66, - 70,73,76,83,89,98,11,12,7,8, - 112,53,93,14,55,61,67,84,88,90, - 94,97,99,109,110,111,125,63,91,101, - 19,77,95,103,124,46,1,58,78,44, - 118,121,20,30,33,119,96,108,49,50, + 113,114,2,31,46,126,127,13,79,115, + 10,9,100,48,52,60,68,74,75,86, + 87,102,105,107,54,104,120,106,47,64, + 66,70,73,76,83,89,98,11,12,112, + 7,8,53,93,14,55,61,67,84,88, + 90,94,97,99,109,110,111,129,63,91, + 101,19,77,95,103,128,1,58,78,44, + 118,20,121,30,33,119,96,108,49,50, 56,57,59,69,71,72,85,92,65,17, - 18,6,32,4,15,16,21,22,23,24, + 18,32,6,4,15,16,21,22,23,24, 25,26,27,28,80,81,82,5,29,34, 35,36,37,38,39,40,41,42,43,117, - 51,3,126,62,116 + 51,3,130,62,116,122,123,124,125 }; }; public final static char terminalIndex[] = TerminalIndex.terminalIndex; @@ -2301,28 +2325,28 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym public interface NonterminalIndex { public final static char nonterminalIndex[] = {0, - 132,137,138,0,0,136,0,0,231,237, - 135,0,145,134,0,0,144,150,0,0, - 151,160,182,161,246,0,0,162,163,128, - 164,165,166,167,168,153,169,170,0,143, - 247,130,133,171,0,131,140,139,154,179, - 0,0,0,0,0,0,0,0,206,0, - 203,207,0,147,174,0,157,177,189,0, - 0,129,173,0,0,0,0,0,0,0, - 0,0,0,0,208,0,127,180,0,0, - 188,0,0,204,214,159,210,211,212,0, - 0,148,0,0,209,222,0,176,181,198, - 0,0,213,0,0,0,226,0,228,0, - 242,243,149,191,192,193,194,195,197,200, - 0,201,0,216,219,0,221,0,240,0, - 241,0,0,141,142,146,0,0,156,158, - 0,172,0,183,184,185,186,187,190,0, - 0,196,0,199,205,0,217,218,0,0, - 223,230,0,234,235,236,239,0,248,0, - 250,0,0,152,155,0,175,0,178,0, - 0,202,215,220,0,0,224,225,227,229, - 0,232,233,238,244,245,0,0,0,249, - 0,0,0 + 136,141,142,0,0,140,0,0,235,241, + 139,0,149,138,0,0,148,154,0,0, + 155,164,186,165,250,0,0,0,166,167, + 132,168,169,170,171,172,157,173,174,0, + 147,251,134,137,175,0,135,144,143,158, + 183,0,0,0,0,0,0,0,0,210, + 0,207,211,0,151,178,0,161,181,193, + 0,0,133,177,0,0,0,0,0,0, + 0,0,0,0,0,212,0,131,184,0, + 0,192,0,0,208,218,163,214,215,216, + 0,0,152,0,0,213,226,0,180,185, + 202,0,0,217,0,0,0,230,0,232, + 0,246,247,153,195,196,197,198,199,201, + 204,0,205,0,220,223,0,225,0,244, + 0,245,0,0,145,146,150,0,0,160, + 162,0,176,0,187,188,189,190,191,194, + 0,0,200,0,203,209,0,221,222,0, + 0,227,234,0,238,239,240,243,0,252, + 0,254,0,0,156,159,0,179,0,182, + 0,0,206,219,224,0,0,228,229,231, + 233,0,236,237,242,248,249,0,0,0, + 253,0,0,0,0 }; }; public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex; @@ -2372,44 +2396,44 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym public interface ScopeLhs { public final static char scopeLhs[] = { - 50,17,17,126,17,17,17,17,76,90, - 51,83,126,125,80,56,76,75,50,17, - 19,3,7,8,172,172,171,124,50,84, - 125,125,127,26,135,57,51,146,140,135, - 76,17,17,140,100,58,178,142,79,175, - 172,171,127,190,54,65,150,18,17,17, - 17,17,17,12,122,171,76,75,75,39, - 146,67,137,137,75,17,17,17,17,100, - 19,117,132,176,172,192,98,105,60,85, - 59,165,68,127,77,151,150,183,146,16, - 171,127,108,74,21,146,137,126,146,137, - 137,126,76,50,117,132,171,67,158,157, - 156,155,71,144,48,117,132,144,48,175, - 67,108,124,50,50,58 + 51,17,17,127,17,17,17,17,77,91, + 52,84,127,126,81,57,77,76,51,17, + 19,3,7,8,173,173,172,125,51,85, + 126,126,128,26,136,58,52,147,141,136, + 77,17,17,141,101,59,179,143,80,176, + 173,172,128,191,55,66,151,18,17,17, + 17,17,17,12,123,172,77,76,76,40, + 147,68,138,138,76,17,17,17,17,101, + 19,118,133,177,173,193,99,106,61,86, + 60,166,69,128,78,152,151,184,147,16, + 172,128,109,75,21,147,138,127,147,138, + 138,127,77,51,118,133,172,68,159,158, + 157,156,72,145,49,118,133,145,49,176, + 68,109,125,51,51,59 }; }; public final static char scopeLhs[] = ScopeLhs.scopeLhs; public final int scopeLhs(int index) { return scopeLhs[index]; } public interface ScopeLa { - public final static byte scopeLa[] = { + public final static char scopeLa[] = { 121,71,71,76,71,71,71,71,71,76, - 26,76,76,1,73,1,71,124,72,3, - 71,73,73,73,1,1,26,76,72,76, - 1,1,1,71,76,1,1,4,73,70, - 26,1,1,73,71,71,71,71,121,71, - 1,26,1,26,26,76,120,71,71,71, + 27,76,76,1,72,1,71,124,73,3, + 71,72,72,72,1,1,27,76,73,76, + 1,1,1,71,76,1,1,4,72,70, + 27,1,1,72,71,71,71,71,121,71, + 1,27,1,27,27,76,120,71,71,71, 71,71,120,1,71,1,71,71,71,74, - 4,9,1,1,71,73,73,73,73,71, - 3,5,5,1,1,71,71,3,1,120, - 71,1,1,1,26,71,120,71,7,71, - 1,43,75,74,71,1,1,72,43,1, - 1,1,78,77,1,1,26,11,1,58, - 42,42,26,4,4,1,1,4,4,3, - 9,1,72,1,1,3 + 4,11,1,1,71,72,72,72,72,71, + 3,6,6,1,1,71,71,3,1,120, + 71,1,1,1,27,71,120,71,8,71, + 1,44,75,74,71,1,1,73,44,1, + 1,1,78,77,1,1,27,12,1,59, + 43,43,27,4,4,1,1,4,4,3, + 11,1,73,1,1,3 }; }; - public final static byte scopeLa[] = ScopeLa.scopeLa; + public final static char scopeLa[] = ScopeLa.scopeLa; public final int scopeLa(int index) { return scopeLa[index]; } public interface ScopeStateSet { @@ -2435,78 +2459,78 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym public interface ScopeRhs { public final static char scopeRhs[] = {0, - 242,166,0,247,0,166,0,226,247,0, - 226,0,193,166,0,177,247,0,177,0, - 333,3,304,0,128,0,332,3,3,5, - 0,128,128,0,331,3,63,0,330,3, - 121,0,128,174,0,129,190,77,0,218, - 0,263,129,61,127,0,20,0,302,129, - 61,43,0,20,53,0,33,134,0,20, - 53,0,0,302,129,61,43,211,0,20, - 180,0,263,129,61,135,0,191,130,0, - 143,0,226,3,301,0,301,0,2,0, - 128,0,263,129,61,134,0,191,130,231, - 0,191,130,25,231,0,191,130,326,25, - 0,131,195,173,130,0,130,0,195,173, - 130,0,136,130,0,177,0,322,129,177, - 0,129,177,0,224,130,0,173,321,253, - 0,138,0,0,0,0,321,253,0,139, - 138,0,0,0,0,137,0,0,0,0, - 139,137,0,0,0,0,320,129,171,262, - 0,129,0,262,0,131,0,0,129,0, - 319,129,171,261,0,129,0,0,44,129, - 0,0,161,3,0,129,292,291,129,77, - 290,177,0,291,129,77,290,177,0,217, - 0,218,0,290,177,0,96,0,0,217, - 0,218,0,205,96,0,0,217,0,218, - 0,291,129,290,177,0,217,0,205,0, - 0,217,0,236,129,3,0,128,0,0, - 0,0,0,236,129,3,223,0,230,3, - 0,219,129,0,210,0,148,0,188,173, - 130,0,10,0,0,0,188,0,9,0, - 221,67,0,127,0,236,129,3,184,0, - 184,0,2,0,0,128,0,0,0,0, - 0,193,3,0,203,0,232,129,171,41, - 30,0,191,130,62,64,0,198,130,0, - 131,191,130,288,64,0,191,130,288,64, - 0,191,130,75,126,62,0,232,129,171, - 62,0,232,129,171,235,62,0,286,129, - 171,126,316,58,0,316,58,0,132,131, - 0,0,129,0,286,129,171,316,58,0, - 131,0,0,129,0,191,130,285,58,0, - 137,0,195,191,130,285,253,0,138,0, - 191,130,285,253,0,195,173,130,12,0, - 173,130,12,0,173,130,0,93,138,0, - 284,0,194,0,193,0,192,0,191,0, - 278,129,148,0,278,129,177,0,168,87, - 0,311,167,313,314,3,84,0,128,173, - 0,313,314,3,84,0,130,0,128,173, - 0,168,3,78,198,83,0,128,130,0, - 198,83,0,108,2,133,128,130,0,233, - 3,78,0,193,174,0,33,171,0,174, - 0,177,33,171,0,233,3,88,0,198, - 155,233,3,86,0,62,173,0,233,3, - 86,0,128,173,62,173,0,312,129,171, - 0,168,0,221,80,0,30,173,0,168, - 109,163,0,30,171,0,189,3,0,128, - 151,0,226,3,0,221,67,275,0,168, - 67,0,189,3,308,69,130,0,128,0, - 0,0,0,308,69,130,0,2,147,128, - 0,0,0,0,189,3,49,0,149,0, - 128,43,173,130,0,31,149,0,93,138, - 31,149,0,227,191,130,0,148,31,149, - 0,189,3,53,0,168,3,53,0,168, - 3,73,189,61,45,0,189,61,45,0, - 20,2,133,128,0,168,3,73,189,61, - 48,0,189,61,48,0,168,3,73,189, - 61,50,0,189,61,50,0,168,3,73, - 189,61,46,0,189,61,46,0,226,3, - 128,195,173,130,12,0,128,195,173,130, - 12,0,138,2,0,128,0,226,3,127, - 268,173,130,12,0,268,173,130,12,0, - 137,2,0,128,0,226,3,138,0,226, - 3,142,0,168,67,142,0,270,0,31, - 0,31,141,0,172,0,136,0,168,3, + 247,171,0,251,0,171,0,230,251,0, + 230,0,198,171,0,181,251,0,181,0, + 338,3,309,0,132,0,337,3,3,6, + 0,132,132,0,336,3,64,0,335,3, + 121,0,132,178,0,133,195,77,0,222, + 0,268,133,62,131,0,20,0,307,133, + 62,44,0,20,53,0,33,138,0,20, + 53,0,0,307,133,62,44,216,0,20, + 184,0,268,133,62,139,0,196,134,0, + 147,0,231,3,306,0,306,0,2,0, + 132,0,268,133,62,138,0,196,134,236, + 0,196,134,26,236,0,196,134,331,26, + 0,135,200,178,134,0,134,0,200,178, + 134,0,140,134,0,182,0,327,133,182, + 0,133,182,0,228,134,0,178,326,258, + 0,142,0,0,0,0,326,258,0,143, + 142,0,0,0,0,141,0,0,0,0, + 143,141,0,0,0,0,325,133,176,267, + 0,133,0,267,0,135,0,0,133,0, + 324,133,176,266,0,133,0,0,44,133, + 0,0,166,3,0,133,297,296,133,77, + 295,182,0,296,133,77,295,182,0,221, + 0,222,0,295,182,0,96,0,0,221, + 0,222,0,209,96,0,0,221,0,222, + 0,296,133,295,182,0,221,0,209,0, + 0,221,0,241,133,3,0,132,0,0, + 0,0,0,241,133,3,228,0,235,3, + 0,224,133,0,214,0,152,0,193,178, + 134,0,10,0,0,0,193,0,9,0, + 226,67,0,131,0,241,133,3,189,0, + 189,0,2,0,0,132,0,0,0,0, + 0,198,3,0,207,0,237,133,176,40, + 31,0,196,134,63,65,0,202,134,0, + 135,196,134,293,65,0,196,134,293,65, + 0,196,134,75,130,63,0,237,133,176, + 63,0,237,133,176,240,63,0,291,133, + 176,130,321,59,0,321,59,0,136,135, + 0,0,133,0,291,133,176,321,59,0, + 135,0,0,133,0,196,134,290,59,0, + 141,0,200,196,134,290,258,0,142,0, + 196,134,290,258,0,200,178,134,13,0, + 178,134,13,0,178,134,0,93,142,0, + 289,0,198,0,197,0,196,0,195,0, + 283,133,152,0,283,133,182,0,173,87, + 0,316,172,318,319,3,84,0,132,177, + 0,318,319,3,84,0,134,0,132,177, + 0,173,3,78,203,83,0,132,134,0, + 203,83,0,108,2,137,132,134,0,238, + 3,78,0,198,179,0,33,175,0,179, + 0,181,33,175,0,238,3,88,0,203, + 160,238,3,86,0,62,177,0,238,3, + 86,0,132,177,62,177,0,317,133,176, + 0,173,0,226,80,0,30,177,0,173, + 109,168,0,30,175,0,194,3,0,132, + 155,0,231,3,0,226,67,280,0,173, + 67,0,194,3,313,69,134,0,132,0, + 0,0,0,313,69,134,0,2,151,132, + 0,0,0,0,194,3,50,0,153,0, + 132,44,178,134,0,31,153,0,93,142, + 31,153,0,232,196,134,0,152,31,153, + 0,194,3,54,0,173,3,54,0,173, + 3,72,194,62,46,0,194,62,46,0, + 20,2,137,132,0,173,3,72,194,62, + 49,0,194,62,49,0,173,3,72,194, + 62,51,0,194,62,51,0,173,3,72, + 194,62,47,0,194,62,47,0,231,3, + 132,200,178,134,13,0,132,200,178,134, + 13,0,142,2,0,132,0,231,3,131, + 273,178,134,13,0,273,178,134,13,0, + 141,2,0,132,0,231,3,142,0,231, + 3,146,0,173,67,146,0,275,0,31, + 0,31,145,0,177,0,140,0,173,3, 0 }; }; @@ -2515,43 +2539,43 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym public interface ScopeState { public final static char scopeState[] = {0, - 1773,1143,0,2787,2774,2091,0,2487,2319,0, - 5160,5539,5536,4983,0,987,1600,873,971,0, - 2055,917,0,4050,4006,3962,3918,3874,3830,3786, - 3742,3698,3494,3450,5194,0,783,711,0,1786, - 0,3804,2792,3715,0,2406,758,0,4050,4006, - 1655,1563,3962,3918,3874,3830,3786,3742,1379,3698, - 3494,3450,3153,1304,0,3155,2565,0,5096,5075, - 0,2044,2465,0,1016,0,2368,1931,702,609, - 2722,5222,3574,3136,2464,2966,2917,0,2750,2938, - 2421,0,5494,5445,5440,5550,5530,5436,5413,5409, - 5516,5385,5507,5498,5354,2875,5231,4977,4449,2438, - 4150,4145,3664,3660,3010,0,2722,5131,4154,2982, - 3460,3574,2750,5062,3136,2966,4398,2938,4247,5049, - 2421,3277,3249,3205,2529,0,5131,3460,0,3149, - 3059,1691,5494,5445,2766,1645,1553,1461,2739,5440, - 3722,5550,5530,1415,5436,5413,5409,2639,5516,1370, - 5385,2832,1308,5507,5498,5354,2875,1262,5231,4977, - 981,2473,4449,667,2438,4150,4145,3664,3660,838, - 3010,4485,2800,2449,2329,2237,1354,858,3574,2750, - 5062,3277,3249,2722,1209,1001,3205,3136,783,711, - 2529,2966,4398,5131,2938,4154,4247,2982,5049,2421, - 3460,3638,4816,4794,2490,2598,2684,2649,3104,3072, - 2836,3675,3587,3427,3397,3341,3162,4462,4426,3371, - 4222,671,4772,4750,4728,4706,4684,4662,4640,4618, - 4583,4550,4521,2111,2381,2065,2341,2289,1421,1375, - 1314,2019,2249,2197,2157,1268,941,1973,1927,1881, - 1835,1789,1743,1697,1651,1605,1559,1513,573,1160, - 1222,1467,876,798,619,733,1066,1019,1113,0, - 4485,573,2800,0,2750,2935,3706,3277,3458,2883, - 3249,3205,3005,573,2711,4398,3271,2520,4840,4389, - 4882,2863,2938,2445,2417,4178,4072,4247,2517,966, - 823,4485,3756,2745,3710,2859,3201,3131,2804,2800, - 5364,5333,2722,5188,5145,5222,5310,5304,2529,5403, - 5298,4154,2982,5286,2421,0,5096,5075,4958,4288, - 4277,4266,4947,4860,4849,4838,4087,4050,4006,3962, - 3918,3874,3830,3786,3742,3698,3494,3450,0,5096, - 5075,4958,4288,4277,4266,4947,4860,4849,4838,4087, + 3006,1158,0,3305,3188,2986,0,2399,1262,0, + 5448,5632,5629,5217,0,1899,1712,666,1212,0, + 3456,1471,0,4168,4123,4078,4033,3988,3943,3898, + 3853,3808,2558,3558,5335,0,2496,717,0,2396, + 0,5119,3934,5009,0,3323,764,0,4168,4123, + 1550,1391,4078,4033,3988,3943,3898,3853,1188,3808, + 2558,3558,1719,929,0,2803,2640,0,5222,5129, + 0,997,999,0,731,0,2122,1605,1338,1182, + 2763,5318,3582,3371,3202,3235,3213,0,2808,2992, + 2453,0,5559,5545,5536,5622,5616,5530,5503,5486, + 5572,5461,2974,2796,5241,2752,5137,4583,4579,2470, + 3108,4487,4380,3664,2780,0,2763,625,3691,3647, + 3566,3582,2808,3384,3371,3235,4316,2992,4271,2482, + 2453,3165,3136,3091,2528,0,625,3566,0,2931, + 2303,1693,5559,5545,2274,1662,1646,1599,2268,5536, + 4308,5622,5616,1428,5530,5503,5486,2210,5572,1115, + 5461,4265,1051,2974,2796,5241,2752,845,5137,4583, + 711,3179,4579,2674,2470,3108,4487,4380,3664,707, + 2780,4413,2853,1320,865,792,691,1000,3582,2808, + 3384,3165,3136,2763,2566,1122,3091,3371,2496,717, + 2528,3235,4316,625,2992,3691,4271,3647,2482,2453, + 3566,3030,4975,4953,2649,2688,2895,2727,3337,3257, + 3057,3785,3760,3535,3504,3473,3398,4710,4687,4664, + 4388,4345,4931,4909,4887,4865,4843,4821,4799,4777, + 4755,4733,4461,2138,2412,2091,2371,2319,1387,1340, + 1279,2044,2278,2226,2185,1231,948,1997,1950,1903, + 1856,1809,1762,1715,1668,1621,1574,1527,577,1135, + 1184,1478,882,804,1434,738,643,1026,1074,0, + 4413,577,2853,0,2808,2938,5662,3165,5658,2449, + 3136,3091,4210,577,2342,4316,4979,1306,4999,4546, + 4587,3816,2992,990,908,3714,2600,4271,3290,830, + 614,4413,3821,2943,3438,3695,3159,2865,2860,2853, + 5449,5431,2763,5253,5224,5318,5401,5383,2528,5455, + 5371,3691,3647,5327,2453,0,5222,5129,5118,4553, + 4511,4442,5107,5019,5008,4997,4204,4168,4123,4078, + 4033,3988,3943,3898,3853,3808,2558,3558,0,5222, + 5129,5118,4553,4511,4442,5107,5019,5008,4997,4204, 0 }; }; @@ -2560,64 +2584,64 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym public interface InSymb { public final static char inSymb[] = {0, - 0,307,64,66,129,177,211,43,30,62, - 234,62,288,3,279,5,6,280,262,281, - 253,282,58,283,284,127,12,130,290,129, - 3,4,135,134,8,7,127,130,184,43, - 61,41,171,235,126,130,130,41,3,3, - 171,321,285,166,316,285,166,61,130,191, - 173,172,77,129,278,193,187,184,129,257, - 289,219,166,130,188,193,61,61,174,67, - 3,68,69,127,126,191,173,3,61,73, - 129,171,129,171,75,191,191,155,3,334, - 1,335,129,173,239,128,127,130,126,171, - 130,129,173,43,4,129,291,74,166,67, - 219,166,130,3,75,70,193,173,9,129, - 129,129,67,67,195,129,129,129,232,129, - 130,235,131,332,304,3,320,130,175,231, - 62,43,64,177,323,128,127,240,166,240, - 191,171,129,191,263,174,53,45,48,50, - 46,12,138,3,130,49,44,7,38,37, - 9,11,40,39,142,147,153,149,156,154, - 158,157,160,159,162,63,163,266,195,270, - 195,291,171,300,130,301,221,163,173,161, - 129,171,261,166,166,188,129,263,263,219, - 236,237,148,238,302,43,12,42,232,232, - 191,70,155,3,1,173,129,240,240,129, - 129,195,129,286,126,287,129,3,224,223, - 3,61,61,61,61,130,3,189,168,129, - 68,69,173,3,128,108,122,3,67,92, - 94,38,37,96,95,9,98,97,73,61, - 90,91,11,100,99,102,101,103,119,118, - 117,116,115,114,113,112,111,110,75,109, - 104,70,4,292,129,70,191,3,277,129, - 171,9,194,155,75,230,193,3,129,70, - 70,73,61,239,239,235,333,195,322,74, - 244,193,127,242,166,129,129,74,286,75, - 70,219,230,129,3,189,168,189,189,189, - 189,173,226,155,138,128,127,12,130,67, - 308,3,189,43,130,43,226,168,149,149, - 147,147,147,154,154,154,154,153,153,157, - 156,156,159,158,160,168,162,129,312,82, - 80,1,168,10,88,86,84,83,78,85, - 87,81,79,62,77,226,70,129,129,129, - 75,75,129,219,129,75,75,70,131,70, - 74,75,166,242,166,150,325,231,25,130, - 236,129,73,73,73,73,195,268,130,173, - 212,3,309,174,161,130,191,173,74,293, - 121,10,74,221,74,3,3,3,198,3, - 126,168,126,190,319,228,302,242,166,70, - 130,25,326,191,155,236,3,3,3,3, - 128,127,173,43,189,129,129,227,7,43, - 3,74,233,174,233,314,148,78,233,129, - 197,70,129,73,191,130,130,129,155,168, - 168,168,168,3,3,195,155,272,275,67, - 192,4,126,128,93,330,174,155,193,155, - 313,129,3,155,293,197,10,63,42,191, - 191,228,129,226,226,128,129,3,67,168, - 4,155,155,129,75,198,167,278,168,3, - 239,129,228,272,226,221,124,311,155,331, - 75,129,155,70 + 0,312,65,5,133,182,216,44,31,63, + 239,63,293,3,284,6,7,5,285,267, + 286,258,287,59,288,289,131,13,134,295, + 133,3,4,139,138,9,8,131,134,189, + 44,62,40,176,240,130,134,134,40,3, + 3,3,176,326,290,171,321,290,171,62, + 134,196,178,177,77,133,283,198,192,189, + 133,262,294,224,171,134,193,198,62,62, + 179,67,3,68,69,131,130,196,178,3, + 62,72,133,176,133,176,75,196,196,160, + 3,339,1,340,40,133,178,244,132,131, + 134,130,176,134,133,178,44,4,133,296, + 74,171,67,224,171,134,3,75,70,198, + 178,11,133,133,133,67,67,200,133,133, + 133,237,133,134,240,135,337,309,3,325, + 134,180,236,63,44,65,182,328,132,131, + 245,171,245,196,176,133,196,268,179,54, + 46,49,51,47,13,142,3,134,50,45, + 8,39,38,11,12,42,41,146,151,158, + 153,161,159,163,162,165,164,167,64,168, + 271,200,275,200,296,176,305,134,306,226, + 168,178,166,133,176,266,171,171,193,133, + 268,268,224,241,242,152,243,307,44,13, + 43,237,237,196,70,160,3,1,178,133, + 245,245,133,133,200,133,291,130,292,133, + 3,229,228,3,62,62,62,62,134,3, + 194,173,133,68,69,178,3,132,108,122, + 3,67,93,94,39,38,96,95,11,98, + 97,72,62,90,91,12,100,99,102,101, + 103,119,118,117,116,115,114,113,112,111, + 110,75,109,104,70,4,297,133,70,196, + 3,282,133,176,11,199,160,75,235,198, + 3,133,70,70,72,62,244,244,240,338, + 200,327,74,249,198,131,247,171,133,133, + 74,291,75,70,224,235,133,3,194,173, + 194,194,194,194,178,231,160,142,132,131, + 13,134,67,313,3,194,44,134,44,231, + 173,153,153,151,151,151,159,159,159,159, + 158,158,162,161,161,164,163,165,173,167, + 133,317,82,80,1,173,10,88,86,84, + 83,78,85,87,81,79,63,77,231,70, + 133,133,133,75,75,133,224,133,75,75, + 70,135,70,74,75,171,247,171,154,330, + 236,26,134,241,133,72,72,72,72,200, + 273,134,178,217,3,314,179,166,134,196, + 178,74,298,121,10,74,226,74,3,3, + 3,203,3,130,173,130,195,324,233,307, + 247,171,70,134,26,331,196,160,241,3, + 3,3,3,132,131,178,44,194,133,133, + 232,8,44,3,74,238,179,238,319,152, + 78,238,133,202,70,133,72,196,134,134, + 133,160,173,173,173,173,3,3,200,160, + 277,280,67,197,4,130,132,92,335,179, + 160,198,160,318,133,3,160,298,202,10, + 64,43,196,196,233,133,231,231,132,133, + 3,67,173,4,160,160,133,75,203,172, + 283,173,3,244,133,233,277,231,226,124, + 316,160,336,75,133,160,70 }; }; public final static char inSymb[] = InSymb.inSymb; @@ -2747,6 +2771,10 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym "RightBrace", "SemiColon", "LeftBrace", + "typeof", + "__alignof__", + "MAX", + "MIN", "__attribute__", "__declspec", "ERROR_TOKEN", @@ -2889,7 +2917,7 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym public final String name(int index) { return name[index]; } public final static int - ERROR_SYMBOL = 65, + ERROR_SYMBOL = 66, SCOPE_UBOUND = 135, SCOPE_SIZE = 136, MAX_NAME_LENGTH = 37; @@ -2900,20 +2928,20 @@ public class GPPParserprs implements lpg.lpgjavaruntime.ParseTable, GPPParsersym public final int getMaxNameLength() { return MAX_NAME_LENGTH; } public final static int - NUM_STATES = 574, - NT_OFFSET = 125, - LA_STATE_OFFSET = 6700, + NUM_STATES = 577, + NT_OFFSET = 129, + LA_STATE_OFFSET = 6855, MAX_LA = 2147483647, - NUM_RULES = 572, - NUM_NONTERMINALS = 213, - NUM_SYMBOLS = 338, + NUM_RULES = 576, + NUM_NONTERMINALS = 215, + NUM_SYMBOLS = 344, SEGMENT_SIZE = 8192, - START_STATE = 4087, + START_STATE = 4204, IDENTIFIER_SYMBOL = 0, EOFT_SYMBOL = 123, EOLT_SYMBOL = 123, - ACCEPT_ACTION = 5662, - ERROR_ACTION = 6128; + ACCEPT_ACTION = 5766, + ERROR_ACTION = 6279; public final static boolean BACKTRACK = true; diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParsersym.java index f507ebf3ab0..69e2d757d76 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParsersym.java +++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParsersym.java @@ -15,73 +15,73 @@ package org.eclipse.cdt.internal.core.dom.lrparser.gpp; public interface GPPParsersym { public final static int - TK_asm = 66, - TK_auto = 28, - TK_bool = 13, + TK_asm = 5, + TK_auto = 29, + TK_bool = 14, TK_break = 79, TK_case = 80, TK_catch = 121, - TK_char = 14, - TK_class = 42, - TK_const = 24, - TK_const_cast = 45, + TK_char = 15, + TK_class = 43, + TK_const = 25, + TK_const_cast = 46, TK_continue = 81, TK_default = 82, TK_delete = 68, TK_do = 83, - TK_double = 15, - TK_dynamic_cast = 46, + TK_double = 16, + TK_dynamic_cast = 47, TK_else = 124, - TK_enum = 58, - TK_explicit = 29, + TK_enum = 59, + TK_explicit = 30, TK_export = 89, - TK_extern = 30, - TK_false = 47, - TK_float = 16, + TK_extern = 31, + TK_false = 48, + TK_float = 17, TK_for = 84, - TK_friend = 31, + TK_friend = 32, TK_goto = 85, TK_if = 86, - TK_inline = 32, - TK_int = 17, - TK_long = 18, - TK_mutable = 33, - TK_namespace = 62, + TK_inline = 33, + TK_int = 18, + TK_long = 19, + TK_mutable = 34, + TK_namespace = 63, TK_new = 69, - TK_operator = 8, + TK_operator = 9, TK_private = 105, TK_protected = 106, TK_public = 107, - TK_register = 34, - TK_reinterpret_cast = 48, + TK_register = 35, + TK_reinterpret_cast = 49, TK_return = 87, - TK_short = 19, - TK_signed = 20, - TK_sizeof = 49, - TK_static = 35, - TK_static_cast = 50, - TK_struct = 59, + TK_short = 20, + TK_signed = 21, + TK_sizeof = 50, + TK_static = 36, + TK_static_cast = 51, + TK_struct = 60, TK_switch = 88, - TK_template = 43, - TK_this = 51, - TK_throw = 63, + TK_template = 44, + TK_this = 52, + TK_throw = 64, TK_try = 77, - TK_true = 52, - TK_typedef = 36, - TK_typeid = 53, - TK_typename = 12, - TK_union = 60, - TK_unsigned = 21, - TK_using = 64, - TK_virtual = 25, - TK_void = 22, - TK_volatile = 27, - TK_wchar_t = 23, + TK_true = 53, + TK_typedef = 37, + TK_typeid = 54, + TK_typename = 13, + TK_union = 61, + TK_unsigned = 22, + TK_using = 65, + TK_virtual = 26, + TK_void = 23, + TK_volatile = 28, + TK_wchar_t = 24, TK_while = 78, - TK_integer = 54, - TK_floating = 55, - TK_charconst = 56, - TK_stringlit = 41, + TK_integer = 55, + TK_floating = 56, + TK_charconst = 57, + TK_stringlit = 40, TK_identifier = 1, TK_Completion = 2, TK_EndOfCompletion = 10, @@ -91,21 +91,21 @@ public interface GPPParsersym { TK_Dot = 122, TK_DotStar = 94, TK_Arrow = 108, - TK_ArrowStar = 92, - TK_PlusPlus = 39, - TK_MinusMinus = 40, - TK_And = 11, - TK_Star = 9, - TK_Plus = 37, - TK_Minus = 38, - TK_Tilde = 7, - TK_Bang = 44, + TK_ArrowStar = 93, + TK_PlusPlus = 41, + TK_MinusMinus = 42, + TK_And = 12, + TK_Star = 11, + TK_Plus = 38, + TK_Minus = 39, + TK_Tilde = 8, + TK_Bang = 45, TK_Slash = 95, TK_Percent = 96, TK_RightShift = 90, TK_LeftShift = 91, - TK_LT = 61, - TK_GT = 73, + TK_LT = 62, + TK_GT = 72, TK_LE = 97, TK_GE = 98, TK_EQ = 99, @@ -117,7 +117,7 @@ public interface GPPParsersym { TK_Question = 109, TK_Colon = 74, TK_ColonColon = 4, - TK_DotDotDot = 93, + TK_DotDotDot = 92, TK_Assign = 75, TK_StarAssign = 110, TK_SlashAssign = 111, @@ -133,12 +133,16 @@ public interface GPPParsersym { TK_RightBracket = 120, TK_RightParen = 71, TK_RightBrace = 76, - TK_SemiColon = 26, - TK_LeftBrace = 72, - TK___attribute__ = 5, - TK___declspec = 6, - TK_ERROR_TOKEN = 65, - TK_0 = 57, + TK_SemiColon = 27, + TK_LeftBrace = 73, + TK_typeof = 126, + TK___alignof__ = 127, + TK_MAX = 128, + TK_MIN = 129, + TK___attribute__ = 6, + TK___declspec = 7, + TK_ERROR_TOKEN = 66, + TK_0 = 58, TK_EOF_TOKEN = 123; public final static String orderedTerminalSymbols[] = { @@ -147,12 +151,13 @@ public interface GPPParsersym { "Completion", "LeftParen", "ColonColon", + "asm", "__attribute__", "__declspec", "Tilde", "operator", - "Star", "EndOfCompletion", + "Star", "And", "typename", "bool", @@ -181,9 +186,9 @@ public interface GPPParsersym { "typedef", "Plus", "Minus", + "stringlit", "PlusPlus", "MinusMinus", - "stringlit", "class", "template", "Bang", @@ -208,14 +213,13 @@ public interface GPPParsersym { "throw", "using", "ERROR_TOKEN", - "asm", "LeftBracket", "delete", "new", "Comma", "RightParen", - "LeftBrace", "GT", + "LeftBrace", "Colon", "Assign", "RightBrace", @@ -234,8 +238,8 @@ public interface GPPParsersym { "export", "RightShift", "LeftShift", - "ArrowStar", "DotDotDot", + "ArrowStar", "DotStar", "Slash", "Percent", @@ -267,7 +271,11 @@ public interface GPPParsersym { "Dot", "EOF_TOKEN", "else", - "Invalid" + "Invalid", + "typeof", + "__alignof__", + "MAX", + "MIN" }; public final static boolean isValidForParser = true;