diff --git a/Configuration/GlobalAssemblyInfo.cs b/Configuration/GlobalAssemblyInfo.cs index bce2877b8..cb1942045 100644 --- a/Configuration/GlobalAssemblyInfo.cs +++ b/Configuration/GlobalAssemblyInfo.cs @@ -15,7 +15,7 @@ internal static class RevisionClass public const string Major = "3"; public const string Minor = "8"; public const string Build = "0"; - public const string Revision = "2864"; + public const string Revision = "2872"; public const string MainVersion = Major + "." + Minor; public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision; diff --git a/Configuration/Version.defs b/Configuration/Version.defs index 9278bf192..950488f7e 100644 --- a/Configuration/Version.defs +++ b/Configuration/Version.defs @@ -1,4 +1,4 @@ %COREVERSION%=0 -%REVISION%=2864 +%REVISION%=2872 %MINOR%=8 %MAJOR%=3 diff --git a/Localization/DefaultLang.resources b/Localization/DefaultLang.resources index 9b0e7ddc5..b553d48ed 100644 Binary files a/Localization/DefaultLang.resources and b/Localization/DefaultLang.resources differ diff --git a/Parsers/PascalABCParserNewSaushkin/ABCPascal.cs b/Parsers/PascalABCParserNewSaushkin/ABCPascal.cs index bdb734187..7a5ef1190 100644 --- a/Parsers/PascalABCParserNewSaushkin/ABCPascal.cs +++ b/Parsers/PascalABCParserNewSaushkin/ABCPascal.cs @@ -1,9 +1,15 @@ // // This CSharp output file generated by Gardens Point LEX // Version: 1.1.3.301 +<<<<<<< HEAD // Machine: DESKTOP-2BJCJ7I // DateTime: 28.03.2021 12:12:58 // UserName: ibond +======= +// Machine: DESKTOP-G8V08V4 +// DateTime: 25.03.2021 22:57:24 +// UserName: ????????? +>>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 // GPLEX input file // GPLEX frame file // diff --git a/Parsers/PascalABCParserNewSaushkin/ABCPascal.y b/Parsers/PascalABCParserNewSaushkin/ABCPascal.y index 00caab9cf..1426661f2 100644 --- a/Parsers/PascalABCParserNewSaushkin/ABCPascal.y +++ b/Parsers/PascalABCParserNewSaushkin/ABCPascal.y @@ -63,7 +63,7 @@ %type const_factor const_factor_without_unary_op const_variable_2 const_term const_variable literal_or_number unsigned_number variable_or_literal_or_number %type program_block %type optional_var class_attribute class_attributes class_attributes1 -%type lambda_unpacked_params lambda_unpacked_params_or_id lambda_list_of_unpacked_params_or_id +%type lambda_unpacked_params_or_id lambda_list_of_unpacked_params_or_id %type member_list_section optional_component_list_seq_end %type const_decl only_const_decl %type const_decl_sect @@ -83,9 +83,11 @@ %type exception_handler_list %type exception_identifier %type typed_const_list1 typed_const_list optional_expr_list elem_list optional_expr_list_with_bracket expr_list const_elem_list1 /*const_expr_list*/ case_label_list const_elem_list optional_const_func_expr_list elem_list1 -%type enumeration_id expr_l1_list +%type enumeration_id expr_l1_or_unpacked_list +// %type expr_l1_list %type enumeration_id_list -%type const_simple_expr term term1 typed_const typed_const_plus typed_var_init_expression expr expr_with_func_decl_lambda const_expr const_relop_expr elem range_expr const_elem array_const factor factor_without_unary_op relop_expr expr_dq expr_l1 expr_l1_func_decl_lambda expr_l1_for_lambda simple_expr range_term range_factor +%type const_simple_expr term term1 typed_const typed_const_plus typed_var_init_expression expr expr_with_func_decl_lambda const_expr const_relop_expr elem range_expr const_elem array_const factor factor_without_unary_op relop_expr expr_dq +%type lambda_unpacked_params expr_l1 expr_l1_or_unpacked expr_l1_func_decl_lambda expr_l1_for_lambda simple_expr range_term range_factor %type external_directive_ident init_const_expr case_label variable var_reference /*optional_write_expr*/ optional_read_expr simple_expr_or_nothing var_question_point expr_l1_for_question_expr expr_l1_for_new_question_expr %type for_cycle_type %type format_expr format_const_expr const_expr_or_nothing /* simple_expr_with_deref_or_nothing simple_expr_with_deref expr_l1_for_indexer*/ @@ -787,16 +789,16 @@ const_name { $$ = $1; } ; -expr_l1_list - : expr_l1 - { - $$ = new expression_list($1, @$); - } - | expr_l1_list tkComma expr_l1 - { - $$ = ($1 as expression_list).Add($3, @$); - } - ; +//expr_l1_list +// : expr_l1 +// { +// $$ = new expression_list($1, @$); +// } +// | expr_l1_list tkComma expr_l1 +// { +// $$ = ($1 as expression_list).Add($3, @$); +// } +// ; const_relop_expr : const_simple_expr @@ -4023,8 +4025,13 @@ default_expr ; tuple - : tkRoundOpen expr_l1 tkComma expr_l1_list lambda_type_ref optional_full_lambda_fp_list tkRoundClose // lambda_type_ref optional_full_lambda_fp_list + : tkRoundOpen expr_l1_or_unpacked tkComma expr_l1_or_unpacked_list lambda_type_ref optional_full_lambda_fp_list tkRoundClose // lambda_type_ref optional_full_lambda_fp_list { + if ($2 is unpacked_list_of_ident_or_list) + parsertools.AddErrorFromResource("EXPRESSION_EXPECTED",@2); + foreach (var ex in ($4 as expression_list).expressions) + if (ex is unpacked_list_of_ident_or_list) + parsertools.AddErrorFromResource("EXPRESSION_EXPECTED",ex.source_context); /*if ($5 != null) parsertools.AddErrorFromResource("BAD_TUPLE",@5); if ($6 != null) @@ -4728,15 +4735,15 @@ lambda_unpacked_params : tkBackSlashRoundOpen lambda_list_of_unpacked_params_or_id tkComma lambda_unpacked_params_or_id tkRoundClose { // function_lambda_definition - $$ = $2; - ($$ as List).Add($4 as ident_or_list); + ($2 as unpacked_list_of_ident_or_list).Add($4 as ident_or_list); + $$ = $2 as unpacked_list_of_ident_or_list; } ; lambda_unpacked_params_or_id : lambda_unpacked_params // ident_or_list { - $$ = new ident_or_list($1 as List); + $$ = new ident_or_list($1 as unpacked_list_of_ident_or_list); } | identifier // ident_or_list { @@ -4747,17 +4754,38 @@ lambda_unpacked_params_or_id lambda_list_of_unpacked_params_or_id : lambda_unpacked_params_or_id { - $$ = new List(); - ($$ as List).Add($1 as ident_or_list); + $$ = new unpacked_list_of_ident_or_list(); + ($$ as unpacked_list_of_ident_or_list).Add($1 as ident_or_list); + ($$ as unpacked_list_of_ident_or_list).source_context = @1; } | lambda_list_of_unpacked_params_or_id tkComma lambda_unpacked_params_or_id { $$ = $1; - ($$ as List).Add($3 as ident_or_list); + ($$ as unpacked_list_of_ident_or_list).Add($3 as ident_or_list); + ($$ as unpacked_list_of_ident_or_list).source_context = LexLocation.MergeAll(@1,@3); } ; +expr_l1_or_unpacked + : expr_l1 + { $$ = $1; } + | lambda_unpacked_params + { $$ = $1; } + ; + + +expr_l1_or_unpacked_list + : expr_l1_or_unpacked + { + $$ = new expression_list($1, @$); + } + | expr_l1_or_unpacked_list tkComma expr_l1_or_unpacked + { + $$ = ($1 as expression_list).Add($3, @$); + } + ; + func_decl_lambda : identifier tkArrow lambda_function_body { @@ -4810,12 +4838,53 @@ func_decl_lambda $$ = new function_lambda_definition(lambdaHelper.CreateLambdaName(), formalPars, $8, sl, @$); else $$ = new function_lambda_definition(lambdaHelper.CreateLambdaName(), formalPars, null, sl, @$); } - | tkRoundOpen expr_l1 tkComma expr_l1_list lambda_type_ref optional_full_lambda_fp_list tkRoundClose rem_lambda + | tkRoundOpen expr_l1_or_unpacked tkComma expr_l1_or_unpacked_list lambda_type_ref optional_full_lambda_fp_list tkRoundClose rem_lambda // optional_full_lambda_fp_list - - { var pair = $8 as pair_type_stlist; if ($5 is lambda_inferred_type) { + // \(x,y) + // expr_list1. - ident_or_list + // , $6 = null + // List unpacked_params + var has_unpacked = false; + if ($2 is unpacked_list_of_ident_or_list) + has_unpacked = true; + if (!has_unpacked) + foreach (var x in ($4 as expression_list).expressions) + { + if (x is unpacked_list_of_ident_or_list) + { + has_unpacked = true; + break; + } + } + if (has_unpacked) // + { + if ($6 != null) + { + parsertools.AddErrorFromResource("SEMICOLON_IN_PARAMS",@6); + } + + var lst_ex = new List(); + lst_ex.Add($2 as expression); + foreach (var x in ($4 as expression_list).expressions) + lst_ex.Add(x); + + function_lambda_definition fld = null; //= new function_lambda_definition(lambdaHelper.CreateLambdaName(), null, + //new lambda_inferred_type(new PascalABCCompiler.TreeRealization.lambda_any_type_node(), @2), pair.exprs, @$); + + var sl1 = pair.exprs; + if (sl1.expr_lambda_body || SyntaxVisitors.HasNameVisitor.HasName(sl1, "result") != null) // + fld = new function_lambda_definition(lambdaHelper.CreateLambdaName(), null, pair.tn, pair.exprs, @$); + else fld = new function_lambda_definition(lambdaHelper.CreateLambdaName(), null, null, pair.exprs, @$); + + fld.unpacked_params = lst_ex; + $$ = fld; + return; + } + var formal_pars = new formal_parameters(); var idd = $2 as ident; if (idd==null) @@ -4879,9 +4948,13 @@ func_decl_lambda | lambda_unpacked_params rem_lambda // { var pair = $2 as pair_type_stlist; + // - null. $$ = new function_lambda_definition(lambdaHelper.CreateLambdaName(), null, new lambda_inferred_type(new PascalABCCompiler.TreeRealization.lambda_any_type_node(), @1), pair.exprs, @$); - ($$ as function_lambda_definition).unpacked_params = $1 as List; + // unpacked_params - . - . , + var lst_ex = new List(); + lst_ex.Add($1 as unpacked_list_of_ident_or_list); + ($$ as function_lambda_definition).unpacked_params = lst_ex; } | expl_func_decl_lambda { diff --git a/Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs b/Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs index 9a259e7f9..25df1f25b 100644 --- a/Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs +++ b/Parsers/PascalABCParserNewSaushkin/ABCPascalYacc.cs @@ -1,10 +1,17 @@ // (see accompanying GPPGcopyright.rtf) // GPPG version 1.3.6 +<<<<<<< HEAD // Machine: DESKTOP-2BJCJ7I // DateTime: 28.03.2021 12:12:59 // UserName: ibond // Input file +======= +// Machine: DESKTOP-G8V08V4 +// DateTime: 25.03.2021 22:57:25 +// UserName: ????????? +// Input file +>>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 // options: no-lines gplex @@ -76,19 +83,24 @@ public partial class GPPGParser: ShiftReduceParser aliasses; #pragma warning restore 649 +<<<<<<< HEAD private static Rule[] rules = new Rule[1001]; private static State[] states = new State[1650]; +======= + private static Rule[] rules = new Rule[1003]; + private static State[] states = new State[1658]; +>>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 private static string[] nonTerms = new string[] { "parse_goal", "unit_key_word", "class_or_static", "assignment", "optional_array_initializer", "attribute_declarations", "ot_visibility_specifier", "one_attribute", "attribute_variable", "const_factor", "const_factor_without_unary_op", "const_variable_2", "const_term", "const_variable", "literal_or_number", "unsigned_number", "variable_or_literal_or_number", "program_block", "optional_var", "class_attribute", "class_attributes", - "class_attributes1", "lambda_unpacked_params", "lambda_unpacked_params_or_id", - "lambda_list_of_unpacked_params_or_id", "member_list_section", "optional_component_list_seq_end", - "const_decl", "only_const_decl", "const_decl_sect", "object_type", "record_type", - "member_list", "method_decl_list", "field_or_const_definition_list", "case_stmt", - "case_list", "program_decl_sect_list", "int_decl_sect_list1", "inclass_decl_sect_list1", + "class_attributes1", "lambda_unpacked_params_or_id", "lambda_list_of_unpacked_params_or_id", + "member_list_section", "optional_component_list_seq_end", "const_decl", + "only_const_decl", "const_decl_sect", "object_type", "record_type", "member_list", + "method_decl_list", "field_or_const_definition_list", "case_stmt", "case_list", + "program_decl_sect_list", "int_decl_sect_list1", "inclass_decl_sect_list1", "interface_decl_sect_list", "decl_sect_list", "decl_sect_list1", "inclass_decl_sect_list", "decl_sect_list_proc_func_only", "field_or_const_definition", "abc_decl_sect", "decl_sect", "int_decl_sect", "type_decl", "simple_type_decl", "simple_field_or_const_definition", @@ -98,55 +110,55 @@ public partial class GPPGParser: ShiftReduceParser>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 states[8] = new State(-20); states[9] = new State(-21); states[10] = new State(-22); @@ -186,10 +209,11 @@ public partial class GPPGParser: ShiftReduceParser>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 states[160] = new State(new int[]{8,161}); - states[161] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-280,162,-176,164,-142,201,-146,48,-147,51}); + states[161] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-281,162,-177,164,-143,201,-147,48,-148,51}); states[162] = new State(new int[]{9,163}); +<<<<<<< HEAD states[163] = new State(-747); states[164] = new State(new int[]{7,165,4,168,121,170,9,-620,134,-620,136,-620,116,-620,115,-620,129,-620,130,-620,131,-620,132,-620,128,-620,114,-620,113,-620,126,-620,127,-620,118,-620,123,-620,119,-620,122,-620,120,-620,135,-620,13,-620,16,-620,6,-620,98,-620,12,-620,5,-620,90,-620,10,-620,96,-620,99,-620,31,-620,102,-620,2,-620,97,-620,30,-620,84,-620,83,-620,82,-620,81,-620,80,-620,85,-620,11,-620,8,-620,124,-620,75,-620,49,-620,56,-620,139,-620,141,-620,79,-620,77,-620,43,-620,40,-620,19,-620,20,-620,142,-620,144,-620,143,-620,152,-620,155,-620,154,-620,153,-620,55,-620,89,-620,38,-620,23,-620,95,-620,52,-620,33,-620,53,-620,100,-620,45,-620,34,-620,51,-620,58,-620,73,-620,71,-620,36,-620,69,-620,70,-620},new int[]{-295,167}); states[165] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,83,56,82,57,81,58,80,59,67,60,62,61,126,62,20,63,19,64,61,65,21,66,127,67,128,68,129,69,130,70,131,71,132,72,133,73,134,74,135,75,136,76,22,77,72,78,89,79,23,80,24,81,27,82,28,83,29,84,70,85,97,86,30,87,90,88,31,89,32,90,25,91,102,92,99,93,33,94,34,95,35,96,38,97,39,98,40,99,101,100,41,101,42,102,44,103,45,104,46,105,95,106,47,107,100,108,48,109,26,110,49,111,69,112,96,113,50,114,51,115,52,116,53,117,54,118,55,119,56,120,57,121,59,122,103,123,104,124,107,125,105,126,106,127,60,128,73,129,36,130,37,131,68,132,145,133,58,134,137,135,138,136,78,137,150,138,149,139,71,140,151,141,147,142,148,143,146,144,43,146},new int[]{-133,166,-142,46,-146,48,-147,51,-289,54,-145,55,-290,145}); @@ -381,9 +549,59 @@ public partial class GPPGParser: ShiftReduceParser>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 states[210] = new State(new int[]{12,211}); - states[211] = new State(-177); + states[211] = new State(-175); states[212] = new State(new int[]{12,213}); +<<<<<<< HEAD states[213] = new State(-181); states[214] = new State(new int[]{5,215,13,189,16,193,6,1455,98,-188,12,-188}); states[215] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,821,133,824,114,362,113,363,5,-696,12,-696},new int[]{-117,216,-88,1454,-89,219,-80,227,-13,232,-10,242,-14,205,-142,243,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,829,-169,828,-261,835,-265,836,-11,831,-237,837}); @@ -419,32 +637,70 @@ public partial class GPPGParser: ShiftReduceParser>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 states[248] = new State(new int[]{12,249}); - states[249] = new State(new int[]{8,251,90,-624,10,-624,96,-624,99,-624,31,-624,102,-624,2,-624,136,-624,134,-624,116,-624,115,-624,129,-624,130,-624,131,-624,132,-624,128,-624,114,-624,113,-624,126,-624,127,-624,124,-624,6,-624,5,-624,118,-624,123,-624,121,-624,119,-624,122,-624,120,-624,135,-624,16,-624,98,-624,12,-624,9,-624,97,-624,30,-624,84,-624,83,-624,82,-624,81,-624,80,-624,85,-624,13,-624,75,-624,49,-624,56,-624,139,-624,141,-624,79,-624,77,-624,43,-624,40,-624,19,-624,20,-624,142,-624,144,-624,143,-624,152,-624,155,-624,154,-624,153,-624,55,-624,89,-624,38,-624,23,-624,95,-624,52,-624,33,-624,53,-624,100,-624,45,-624,34,-624,51,-624,58,-624,73,-624,71,-624,36,-624,69,-624,70,-624},new int[]{-5,250}); - states[250] = new State(-626); - states[251] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,983,133,824,114,362,113,363,61,160,9,-198},new int[]{-67,252,-66,254,-84,986,-83,257,-88,258,-89,219,-80,227,-13,232,-10,242,-14,205,-142,243,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,829,-169,828,-261,835,-265,836,-11,831,-237,837,-93,987,-239,988,-58,989}); + states[249] = new State(new int[]{8,251,90,-622,10,-622,96,-622,99,-622,31,-622,102,-622,2,-622,136,-622,134,-622,116,-622,115,-622,129,-622,130,-622,131,-622,132,-622,128,-622,114,-622,113,-622,126,-622,127,-622,124,-622,6,-622,5,-622,118,-622,123,-622,121,-622,119,-622,122,-622,120,-622,135,-622,16,-622,98,-622,12,-622,9,-622,97,-622,30,-622,84,-622,83,-622,82,-622,81,-622,80,-622,85,-622,13,-622,75,-622,49,-622,56,-622,139,-622,141,-622,79,-622,77,-622,43,-622,40,-622,19,-622,20,-622,142,-622,144,-622,143,-622,152,-622,155,-622,154,-622,153,-622,55,-622,89,-622,38,-622,23,-622,95,-622,52,-622,33,-622,53,-622,100,-622,45,-622,34,-622,51,-622,58,-622,73,-622,71,-622,36,-622,69,-622,70,-622},new int[]{-5,250}); + states[250] = new State(-624); + states[251] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,806,54,809,139,810,8,985,133,826,114,362,113,363,61,160,9,-196},new int[]{-66,252,-65,254,-83,988,-82,257,-87,258,-88,219,-79,227,-13,232,-10,242,-14,205,-143,243,-147,48,-148,51,-161,259,-163,148,-162,152,-16,260,-254,263,-292,268,-236,342,-196,831,-170,830,-262,837,-266,838,-11,833,-238,839,-92,989,-240,990,-57,991}); states[252] = new State(new int[]{9,253}); - states[253] = new State(-623); - states[254] = new State(new int[]{98,255,9,-199}); - states[255] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,983,133,824,114,362,113,363,61,160},new int[]{-84,256,-83,257,-88,258,-89,219,-80,227,-13,232,-10,242,-14,205,-142,243,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,829,-169,828,-261,835,-265,836,-11,831,-237,837,-93,987,-239,988,-58,989}); - states[256] = new State(-201); - states[257] = new State(-420); - states[258] = new State(new int[]{13,189,16,193,98,-194,9,-194,90,-194,10,-194,96,-194,99,-194,31,-194,102,-194,2,-194,12,-194,97,-194,30,-194,84,-194,83,-194,82,-194,81,-194,80,-194,85,-194}); - states[259] = new State(-170); - states[260] = new State(-171); - states[261] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-142,262,-146,48,-147,51}); - states[262] = new State(-172); - states[263] = new State(-173); + states[253] = new State(-621); + states[254] = new State(new int[]{98,255,9,-197}); + states[255] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,806,54,809,139,810,8,985,133,826,114,362,113,363,61,160},new int[]{-83,256,-82,257,-87,258,-88,219,-79,227,-13,232,-10,242,-14,205,-143,243,-147,48,-148,51,-161,259,-163,148,-162,152,-16,260,-254,263,-292,268,-236,342,-196,831,-170,830,-262,837,-266,838,-11,833,-238,839,-92,989,-240,990,-57,991}); + states[256] = new State(-199); + states[257] = new State(-418); + states[258] = new State(new int[]{13,189,16,193,98,-192,9,-192,90,-192,10,-192,96,-192,99,-192,31,-192,102,-192,2,-192,12,-192,97,-192,30,-192,84,-192,83,-192,82,-192,81,-192,80,-192,85,-192}); + states[259] = new State(-168); + states[260] = new State(-169); + states[261] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-143,262,-147,48,-148,51}); + states[262] = new State(-170); + states[263] = new State(-171); states[264] = new State(new int[]{8,265}); - states[265] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-280,266,-176,164,-142,201,-146,48,-147,51}); + states[265] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-281,266,-177,164,-143,201,-147,48,-148,51}); states[266] = new State(new int[]{9,267}); - states[267] = new State(-613); - states[268] = new State(-174); + states[267] = new State(-611); + states[268] = new State(-172); states[269] = new State(new int[]{8,270}); - states[270] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-280,271,-279,273,-176,275,-142,201,-146,48,-147,51}); + states[270] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-281,271,-280,273,-177,275,-143,201,-147,48,-148,51}); states[271] = new State(new int[]{9,272}); - states[272] = new State(-614); + states[272] = new State(-612); states[273] = new State(new int[]{9,274}); +<<<<<<< HEAD states[274] = new State(-615); states[275] = new State(new int[]{7,165,4,276,121,278,123,1441,9,-620},new int[]{-295,167,-296,1442}); states[276] = new State(new int[]{121,278,123,1441},new int[]{-295,169,-296,277}); @@ -504,28 +760,90 @@ public partial class GPPGParser: ShiftReduceParser>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 states[333] = new State(new int[]{56,334}); - states[334] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-272,335,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); - states[335] = new State(-275); - states[336] = new State(new int[]{13,337,118,-227,98,-227,9,-227,119,-227,8,-227,136,-227,134,-227,116,-227,115,-227,129,-227,130,-227,131,-227,132,-227,128,-227,114,-227,113,-227,126,-227,127,-227,124,-227,6,-227,5,-227,123,-227,121,-227,122,-227,120,-227,135,-227,16,-227,90,-227,10,-227,96,-227,99,-227,31,-227,102,-227,2,-227,12,-227,97,-227,30,-227,84,-227,83,-227,82,-227,81,-227,80,-227,85,-227,75,-227,49,-227,56,-227,139,-227,141,-227,79,-227,77,-227,43,-227,40,-227,19,-227,20,-227,142,-227,144,-227,143,-227,152,-227,155,-227,154,-227,153,-227,55,-227,89,-227,38,-227,23,-227,95,-227,52,-227,33,-227,53,-227,100,-227,45,-227,34,-227,51,-227,58,-227,73,-227,71,-227,36,-227,69,-227,70,-227,125,-227,108,-227}); - states[337] = new State(-225); - states[338] = new State(new int[]{11,339,7,-813,125,-813,121,-813,8,-813,116,-813,115,-813,129,-813,130,-813,131,-813,132,-813,128,-813,6,-813,114,-813,113,-813,126,-813,127,-813,13,-813,118,-813,98,-813,9,-813,119,-813,136,-813,134,-813,124,-813,5,-813,123,-813,122,-813,120,-813,135,-813,16,-813,90,-813,10,-813,96,-813,99,-813,31,-813,102,-813,2,-813,12,-813,97,-813,30,-813,84,-813,83,-813,82,-813,81,-813,80,-813,85,-813,75,-813,49,-813,56,-813,139,-813,141,-813,79,-813,77,-813,43,-813,40,-813,19,-813,20,-813,142,-813,144,-813,143,-813,152,-813,155,-813,154,-813,153,-813,55,-813,89,-813,38,-813,23,-813,95,-813,52,-813,33,-813,53,-813,100,-813,45,-813,34,-813,51,-813,58,-813,73,-813,71,-813,36,-813,69,-813,70,-813,108,-813}); - states[339] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,821,133,824,114,362,113,363},new int[]{-88,340,-89,219,-80,227,-13,232,-10,242,-14,205,-142,243,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,829,-169,828,-261,835,-265,836,-11,831,-237,837}); + states[334] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-273,335,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); + states[335] = new State(-273); + states[336] = new State(new int[]{13,337,118,-225,98,-225,9,-225,119,-225,8,-225,136,-225,134,-225,116,-225,115,-225,129,-225,130,-225,131,-225,132,-225,128,-225,114,-225,113,-225,126,-225,127,-225,124,-225,6,-225,5,-225,123,-225,121,-225,122,-225,120,-225,135,-225,16,-225,90,-225,10,-225,96,-225,99,-225,31,-225,102,-225,2,-225,12,-225,97,-225,30,-225,84,-225,83,-225,82,-225,81,-225,80,-225,85,-225,75,-225,49,-225,56,-225,139,-225,141,-225,79,-225,77,-225,43,-225,40,-225,19,-225,20,-225,142,-225,144,-225,143,-225,152,-225,155,-225,154,-225,153,-225,55,-225,89,-225,38,-225,23,-225,95,-225,52,-225,33,-225,53,-225,100,-225,45,-225,34,-225,51,-225,58,-225,73,-225,71,-225,36,-225,69,-225,70,-225,125,-225,108,-225}); + states[337] = new State(-223); + states[338] = new State(new int[]{11,339,7,-811,125,-811,121,-811,8,-811,116,-811,115,-811,129,-811,130,-811,131,-811,132,-811,128,-811,6,-811,114,-811,113,-811,126,-811,127,-811,13,-811,118,-811,98,-811,9,-811,119,-811,136,-811,134,-811,124,-811,5,-811,123,-811,122,-811,120,-811,135,-811,16,-811,90,-811,10,-811,96,-811,99,-811,31,-811,102,-811,2,-811,12,-811,97,-811,30,-811,84,-811,83,-811,82,-811,81,-811,80,-811,85,-811,75,-811,49,-811,56,-811,139,-811,141,-811,79,-811,77,-811,43,-811,40,-811,19,-811,20,-811,142,-811,144,-811,143,-811,152,-811,155,-811,154,-811,153,-811,55,-811,89,-811,38,-811,23,-811,95,-811,52,-811,33,-811,53,-811,100,-811,45,-811,34,-811,51,-811,58,-811,73,-811,71,-811,36,-811,69,-811,70,-811,108,-811}); + states[339] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,806,54,809,139,810,8,823,133,826,114,362,113,363},new int[]{-87,340,-88,219,-79,227,-13,232,-10,242,-14,205,-143,243,-147,48,-148,51,-161,259,-163,148,-162,152,-16,260,-254,263,-292,268,-236,342,-196,831,-170,830,-262,837,-266,838,-11,833,-238,839}); states[340] = new State(new int[]{12,341,13,189,16,193}); - states[341] = new State(-285); - states[342] = new State(-158); - states[343] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603,12,-795},new int[]{-69,344,-76,346,-90,356,-86,349,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); + states[341] = new State(-283); + states[342] = new State(-156); + states[343] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603,12,-793},new int[]{-68,344,-75,346,-89,356,-85,349,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602}); states[344] = new State(new int[]{12,345}); - states[345] = new State(-165); - states[346] = new State(new int[]{98,347,12,-794,75,-794}); - states[347] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-90,348,-86,349,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); - states[348] = new State(-797); - states[349] = new State(new int[]{6,350,98,-798,12,-798,75,-798}); - states[350] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-86,351,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); - states[351] = new State(-799); - states[352] = new State(-733); - states[353] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603,12,-795},new int[]{-69,354,-76,346,-90,356,-86,349,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); + states[345] = new State(-163); + states[346] = new State(new int[]{98,347,12,-792,75,-792}); + states[347] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-89,348,-85,349,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602}); + states[348] = new State(-795); + states[349] = new State(new int[]{6,350,98,-796,12,-796,75,-796}); + states[350] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-85,351,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602}); + states[351] = new State(-797); + states[352] = new State(-731); + states[353] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603,12,-793},new int[]{-68,354,-75,346,-89,356,-85,349,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602}); states[354] = new State(new int[]{12,355}); +<<<<<<< HEAD states[355] = new State(-754); states[356] = new State(-796); states[357] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,53,43,385,40,423,8,425,19,264,20,269,75,526},new int[]{-94,358,-15,359,-160,147,-162,148,-161,152,-16,154,-58,159,-195,360,-108,366,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532}); @@ -541,88 +859,106 @@ public partial class GPPGParser: ShiftReduceParser>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 states[370] = new State(new int[]{9,371}); - states[371] = new State(-787); - states[372] = new State(new int[]{98,373,12,-792,9,-792}); - states[373] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,5,603,18,661,35,670,42,676},new int[]{-87,374,-86,27,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,509,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602,-319,645,-23,646,-320,669}); - states[374] = new State(-592); - states[375] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,53,43,385,40,423,8,425,19,264,20,269,75,526},new int[]{-94,361,-264,376,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-95,535}); - states[376] = new State(-732); - states[377] = new State(new int[]{136,-758,134,-758,116,-758,115,-758,129,-758,130,-758,131,-758,132,-758,128,-758,114,-758,113,-758,126,-758,127,-758,124,-758,6,-758,5,-758,118,-758,123,-758,121,-758,119,-758,122,-758,120,-758,135,-758,16,-758,90,-758,10,-758,96,-758,99,-758,31,-758,102,-758,2,-758,98,-758,12,-758,9,-758,97,-758,30,-758,84,-758,83,-758,82,-758,81,-758,80,-758,85,-758,13,-758,75,-758,49,-758,56,-758,139,-758,141,-758,79,-758,77,-758,43,-758,40,-758,8,-758,19,-758,20,-758,142,-758,144,-758,143,-758,152,-758,155,-758,154,-758,153,-758,55,-758,89,-758,38,-758,23,-758,95,-758,52,-758,33,-758,53,-758,100,-758,45,-758,34,-758,51,-758,58,-758,73,-758,71,-758,36,-758,69,-758,70,-758,117,-750}); - states[378] = new State(-767); - states[379] = new State(new int[]{8,369,7,380,140,415,4,416,15,418,136,-765,134,-765,116,-765,115,-765,129,-765,130,-765,131,-765,132,-765,128,-765,114,-765,113,-765,126,-765,127,-765,124,-765,6,-765,5,-765,118,-765,123,-765,121,-765,119,-765,122,-765,120,-765,135,-765,16,-765,90,-765,10,-765,96,-765,99,-765,31,-765,102,-765,2,-765,98,-765,12,-765,9,-765,97,-765,30,-765,84,-765,83,-765,82,-765,81,-765,80,-765,85,-765,13,-765,117,-765,75,-765,49,-765,56,-765,139,-765,141,-765,79,-765,77,-765,43,-765,40,-765,19,-765,20,-765,142,-765,144,-765,143,-765,152,-765,155,-765,154,-765,153,-765,55,-765,89,-765,38,-765,23,-765,95,-765,52,-765,33,-765,53,-765,100,-765,45,-765,34,-765,51,-765,58,-765,73,-765,71,-765,36,-765,69,-765,70,-765,11,-775,17,-775}); - states[380] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,83,56,82,57,81,58,80,59,67,60,62,61,126,62,20,63,19,64,61,65,21,66,127,67,128,68,129,69,130,70,131,71,132,72,133,73,134,74,135,75,136,76,22,77,72,78,89,79,23,80,24,81,27,82,28,83,29,84,70,85,97,86,30,87,90,88,31,89,32,90,25,91,102,92,99,93,33,94,34,95,35,96,38,97,39,98,40,99,101,100,41,101,42,102,44,103,45,104,46,105,95,106,47,107,100,108,48,109,26,110,49,111,69,112,96,113,50,114,51,115,52,116,53,117,54,118,55,119,56,120,57,121,59,122,103,123,104,124,107,125,105,126,106,127,60,128,73,129,36,130,37,131,68,132,145,133,58,134,137,135,138,136,78,137,150,138,149,139,71,140,151,141,147,142,148,143,146,144,43,385},new int[]{-143,381,-142,382,-146,48,-147,51,-289,383,-145,55,-187,384}); - states[381] = new State(-788); - states[382] = new State(-819); - states[383] = new State(-820); - states[384] = new State(-821); - states[385] = new State(new int[]{113,387,114,388,115,389,116,390,118,391,119,392,120,393,121,394,122,395,123,396,126,397,127,398,128,399,129,400,130,401,131,402,132,403,133,404,135,405,137,406,138,407,108,409,109,410,110,411,111,412,112,413,117,414},new int[]{-196,386,-190,408}); - states[386] = new State(-806); - states[387] = new State(-927); - states[388] = new State(-928); - states[389] = new State(-929); - states[390] = new State(-930); - states[391] = new State(-931); - states[392] = new State(-932); - states[393] = new State(-933); - states[394] = new State(-934); - states[395] = new State(-935); - states[396] = new State(-936); - states[397] = new State(-937); - states[398] = new State(-938); - states[399] = new State(-939); - states[400] = new State(-940); - states[401] = new State(-941); - states[402] = new State(-942); - states[403] = new State(-943); - states[404] = new State(-944); - states[405] = new State(-945); - states[406] = new State(-946); - states[407] = new State(-947); - states[408] = new State(-948); - states[409] = new State(-950); - states[410] = new State(-951); - states[411] = new State(-952); - states[412] = new State(-953); - states[413] = new State(-954); - states[414] = new State(-949); - states[415] = new State(-790); - states[416] = new State(new int[]{121,170},new int[]{-295,417}); - states[417] = new State(-791); - states[418] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,43,385,40,423,8,425,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526},new int[]{-107,419,-111,420,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690}); - states[419] = new State(new int[]{8,369,7,380,140,415,4,416,15,418,108,-762,109,-762,110,-762,111,-762,112,-762,90,-762,10,-762,96,-762,99,-762,31,-762,102,-762,2,-762,136,-762,134,-762,116,-762,115,-762,129,-762,130,-762,131,-762,132,-762,128,-762,114,-762,113,-762,126,-762,127,-762,124,-762,6,-762,5,-762,118,-762,123,-762,121,-762,119,-762,122,-762,120,-762,135,-762,16,-762,98,-762,12,-762,9,-762,97,-762,30,-762,84,-762,83,-762,82,-762,81,-762,80,-762,85,-762,13,-762,117,-762,75,-762,49,-762,56,-762,139,-762,141,-762,79,-762,77,-762,43,-762,40,-762,19,-762,20,-762,142,-762,144,-762,143,-762,152,-762,155,-762,154,-762,153,-762,55,-762,89,-762,38,-762,23,-762,95,-762,52,-762,33,-762,53,-762,100,-762,45,-762,34,-762,51,-762,58,-762,73,-762,71,-762,36,-762,69,-762,70,-762,11,-775,17,-775}); - states[420] = new State(-763); - states[421] = new State(-777); - states[422] = new State(-778); - states[423] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-142,424,-146,48,-147,51}); - states[424] = new State(-779); - states[425] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-86,426,-98,428,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); + states[371] = new State(-785); + states[372] = new State(new int[]{98,373,12,-790,9,-790}); + states[373] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,5,603,18,661,35,670,42,676},new int[]{-86,374,-85,27,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,509,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602,-320,645,-97,646,-321,669}); + states[374] = new State(-590); + states[375] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,53,43,385,40,423,8,425,19,264,20,269,75,526},new int[]{-93,361,-265,376,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-94,535}); + states[376] = new State(-730); + states[377] = new State(new int[]{136,-756,134,-756,116,-756,115,-756,129,-756,130,-756,131,-756,132,-756,128,-756,114,-756,113,-756,126,-756,127,-756,124,-756,6,-756,5,-756,118,-756,123,-756,121,-756,119,-756,122,-756,120,-756,135,-756,16,-756,90,-756,10,-756,96,-756,99,-756,31,-756,102,-756,2,-756,98,-756,12,-756,9,-756,97,-756,30,-756,84,-756,83,-756,82,-756,81,-756,80,-756,85,-756,13,-756,75,-756,49,-756,56,-756,139,-756,141,-756,79,-756,77,-756,43,-756,40,-756,8,-756,19,-756,20,-756,142,-756,144,-756,143,-756,152,-756,155,-756,154,-756,153,-756,55,-756,89,-756,38,-756,23,-756,95,-756,52,-756,33,-756,53,-756,100,-756,45,-756,34,-756,51,-756,58,-756,73,-756,71,-756,36,-756,69,-756,70,-756,117,-748}); + states[378] = new State(-765); + states[379] = new State(new int[]{8,369,7,380,140,415,4,416,15,418,136,-763,134,-763,116,-763,115,-763,129,-763,130,-763,131,-763,132,-763,128,-763,114,-763,113,-763,126,-763,127,-763,124,-763,6,-763,5,-763,118,-763,123,-763,121,-763,119,-763,122,-763,120,-763,135,-763,16,-763,90,-763,10,-763,96,-763,99,-763,31,-763,102,-763,2,-763,98,-763,12,-763,9,-763,97,-763,30,-763,84,-763,83,-763,82,-763,81,-763,80,-763,85,-763,13,-763,117,-763,75,-763,49,-763,56,-763,139,-763,141,-763,79,-763,77,-763,43,-763,40,-763,19,-763,20,-763,142,-763,144,-763,143,-763,152,-763,155,-763,154,-763,153,-763,55,-763,89,-763,38,-763,23,-763,95,-763,52,-763,33,-763,53,-763,100,-763,45,-763,34,-763,51,-763,58,-763,73,-763,71,-763,36,-763,69,-763,70,-763,11,-773,17,-773}); + states[380] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,83,56,82,57,81,58,80,59,67,60,62,61,126,62,20,63,19,64,61,65,21,66,127,67,128,68,129,69,130,70,131,71,132,72,133,73,134,74,135,75,136,76,22,77,72,78,89,79,23,80,24,81,27,82,28,83,29,84,70,85,97,86,30,87,90,88,31,89,32,90,25,91,102,92,99,93,33,94,34,95,35,96,38,97,39,98,40,99,101,100,41,101,42,102,44,103,45,104,46,105,95,106,47,107,100,108,48,109,26,110,49,111,69,112,96,113,50,114,51,115,52,116,53,117,54,118,55,119,56,120,57,121,59,122,103,123,104,124,107,125,105,126,106,127,60,128,73,129,36,130,37,131,68,132,145,133,58,134,137,135,138,136,78,137,150,138,149,139,71,140,151,141,147,142,148,143,146,144,43,385},new int[]{-144,381,-143,382,-147,48,-148,51,-290,383,-146,55,-188,384}); + states[381] = new State(-786); + states[382] = new State(-817); + states[383] = new State(-818); + states[384] = new State(-819); + states[385] = new State(new int[]{113,387,114,388,115,389,116,390,118,391,119,392,120,393,121,394,122,395,123,396,126,397,127,398,128,399,129,400,130,401,131,402,132,403,133,404,135,405,137,406,138,407,108,409,109,410,110,411,111,412,112,413,117,414},new int[]{-197,386,-191,408}); + states[386] = new State(-804); + states[387] = new State(-925); + states[388] = new State(-926); + states[389] = new State(-927); + states[390] = new State(-928); + states[391] = new State(-929); + states[392] = new State(-930); + states[393] = new State(-931); + states[394] = new State(-932); + states[395] = new State(-933); + states[396] = new State(-934); + states[397] = new State(-935); + states[398] = new State(-936); + states[399] = new State(-937); + states[400] = new State(-938); + states[401] = new State(-939); + states[402] = new State(-940); + states[403] = new State(-941); + states[404] = new State(-942); + states[405] = new State(-943); + states[406] = new State(-944); + states[407] = new State(-945); + states[408] = new State(-946); + states[409] = new State(-948); + states[410] = new State(-949); + states[411] = new State(-950); + states[412] = new State(-951); + states[413] = new State(-952); + states[414] = new State(-947); + states[415] = new State(-788); + states[416] = new State(new int[]{121,170},new int[]{-296,417}); + states[417] = new State(-789); + states[418] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,43,385,40,423,8,425,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526},new int[]{-108,419,-112,420,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690}); + states[419] = new State(new int[]{8,369,7,380,140,415,4,416,15,418,108,-760,109,-760,110,-760,111,-760,112,-760,90,-760,10,-760,96,-760,99,-760,31,-760,102,-760,2,-760,136,-760,134,-760,116,-760,115,-760,129,-760,130,-760,131,-760,132,-760,128,-760,114,-760,113,-760,126,-760,127,-760,124,-760,6,-760,5,-760,118,-760,123,-760,121,-760,119,-760,122,-760,120,-760,135,-760,16,-760,98,-760,12,-760,9,-760,97,-760,30,-760,84,-760,83,-760,82,-760,81,-760,80,-760,85,-760,13,-760,117,-760,75,-760,49,-760,56,-760,139,-760,141,-760,79,-760,77,-760,43,-760,40,-760,19,-760,20,-760,142,-760,144,-760,143,-760,152,-760,155,-760,154,-760,153,-760,55,-760,89,-760,38,-760,23,-760,95,-760,52,-760,33,-760,53,-760,100,-760,45,-760,34,-760,51,-760,58,-760,73,-760,71,-760,36,-760,69,-760,70,-760,11,-773,17,-773}); + states[420] = new State(-761); + states[421] = new State(-775); + states[422] = new State(-776); + states[423] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-143,424,-147,48,-148,51}); + states[424] = new State(-777); + states[425] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603,18,661},new int[]{-85,426,-99,428,-98,692,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602,-97,693}); states[426] = new State(new int[]{9,427}); - states[427] = new State(-780); - states[428] = new State(new int[]{98,429,9,-597}); - states[429] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-78,430,-98,1106,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593}); - states[430] = new State(new int[]{98,1104,5,442,10,-980,9,-980},new int[]{-321,431}); - states[431] = new State(new int[]{10,434,9,-968},new int[]{-328,432}); + states[427] = new State(-778); + states[428] = new State(new int[]{98,429}); + states[429] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,18,661},new int[]{-77,430,-99,1109,-98,1108,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-97,693}); + states[430] = new State(new int[]{98,1106,5,442,10,-982,9,-982},new int[]{-322,431}); + states[431] = new State(new int[]{10,434,9,-970},new int[]{-329,432}); states[432] = new State(new int[]{9,433}); - states[433] = new State(-748); - states[434] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-323,435,-324,1075,-153,438,-142,794,-146,48,-147,51}); - states[435] = new State(new int[]{10,436,9,-969}); - states[436] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-324,437,-153,438,-142,794,-146,48,-147,51}); - states[437] = new State(-978); - states[438] = new State(new int[]{98,440,5,442,10,-980,9,-980},new int[]{-321,439}); - states[439] = new State(-979); - states[440] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-142,441,-146,48,-147,51}); - states[441] = new State(-346); - states[442] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-271,443,-272,444,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); - states[443] = new State(-981); - states[444] = new State(-484); - states[445] = new State(-256); - states[446] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153},new int[]{-103,447,-176,448,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152}); - states[447] = new State(new int[]{8,182,116,-257,115,-257,129,-257,130,-257,131,-257,132,-257,128,-257,6,-257,114,-257,113,-257,126,-257,127,-257,13,-257,119,-257,98,-257,118,-257,9,-257,136,-257,134,-257,124,-257,5,-257,123,-257,121,-257,122,-257,120,-257,135,-257,16,-257,90,-257,10,-257,96,-257,99,-257,31,-257,102,-257,2,-257,12,-257,97,-257,30,-257,84,-257,83,-257,82,-257,81,-257,80,-257,85,-257,75,-257,49,-257,56,-257,139,-257,141,-257,79,-257,77,-257,43,-257,40,-257,19,-257,20,-257,142,-257,144,-257,143,-257,152,-257,155,-257,154,-257,153,-257,55,-257,89,-257,38,-257,23,-257,95,-257,52,-257,33,-257,53,-257,100,-257,45,-257,34,-257,51,-257,58,-257,73,-257,71,-257,36,-257,69,-257,70,-257,125,-257,108,-257}); - states[448] = new State(new int[]{7,165,8,-255,116,-255,115,-255,129,-255,130,-255,131,-255,132,-255,128,-255,6,-255,114,-255,113,-255,126,-255,127,-255,13,-255,119,-255,98,-255,118,-255,9,-255,136,-255,134,-255,124,-255,5,-255,123,-255,121,-255,122,-255,120,-255,135,-255,16,-255,90,-255,10,-255,96,-255,99,-255,31,-255,102,-255,2,-255,12,-255,97,-255,30,-255,84,-255,83,-255,82,-255,81,-255,80,-255,85,-255,75,-255,49,-255,56,-255,139,-255,141,-255,79,-255,77,-255,43,-255,40,-255,19,-255,20,-255,142,-255,144,-255,143,-255,152,-255,155,-255,154,-255,153,-255,55,-255,89,-255,38,-255,23,-255,95,-255,52,-255,33,-255,53,-255,100,-255,45,-255,34,-255,51,-255,58,-255,73,-255,71,-255,36,-255,69,-255,70,-255,125,-255,108,-255}); - states[449] = new State(-258); - states[450] = new State(new int[]{9,451,141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-79,295,-77,301,-272,304,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); + states[433] = new State(-746); + states[434] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-324,435,-325,1077,-154,438,-143,796,-147,48,-148,51}); + states[435] = new State(new int[]{10,436,9,-971}); + states[436] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-325,437,-154,438,-143,796,-147,48,-148,51}); + states[437] = new State(-980); + states[438] = new State(new int[]{98,440,5,442,10,-982,9,-982},new int[]{-322,439}); + states[439] = new State(-981); + states[440] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-143,441,-147,48,-148,51}); + states[441] = new State(-344); + states[442] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-272,443,-273,444,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); + states[443] = new State(-983); + states[444] = new State(-482); + states[445] = new State(-254); + states[446] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153},new int[]{-104,447,-177,448,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152}); + states[447] = new State(new int[]{8,182,116,-255,115,-255,129,-255,130,-255,131,-255,132,-255,128,-255,6,-255,114,-255,113,-255,126,-255,127,-255,13,-255,119,-255,98,-255,118,-255,9,-255,136,-255,134,-255,124,-255,5,-255,123,-255,121,-255,122,-255,120,-255,135,-255,16,-255,90,-255,10,-255,96,-255,99,-255,31,-255,102,-255,2,-255,12,-255,97,-255,30,-255,84,-255,83,-255,82,-255,81,-255,80,-255,85,-255,75,-255,49,-255,56,-255,139,-255,141,-255,79,-255,77,-255,43,-255,40,-255,19,-255,20,-255,142,-255,144,-255,143,-255,152,-255,155,-255,154,-255,153,-255,55,-255,89,-255,38,-255,23,-255,95,-255,52,-255,33,-255,53,-255,100,-255,45,-255,34,-255,51,-255,58,-255,73,-255,71,-255,36,-255,69,-255,70,-255,125,-255,108,-255}); + states[448] = new State(new int[]{7,165,8,-253,116,-253,115,-253,129,-253,130,-253,131,-253,132,-253,128,-253,6,-253,114,-253,113,-253,126,-253,127,-253,13,-253,119,-253,98,-253,118,-253,9,-253,136,-253,134,-253,124,-253,5,-253,123,-253,121,-253,122,-253,120,-253,135,-253,16,-253,90,-253,10,-253,96,-253,99,-253,31,-253,102,-253,2,-253,12,-253,97,-253,30,-253,84,-253,83,-253,82,-253,81,-253,80,-253,85,-253,75,-253,49,-253,56,-253,139,-253,141,-253,79,-253,77,-253,43,-253,40,-253,19,-253,20,-253,142,-253,144,-253,143,-253,152,-253,155,-253,154,-253,153,-253,55,-253,89,-253,38,-253,23,-253,95,-253,52,-253,33,-253,53,-253,100,-253,45,-253,34,-253,51,-253,58,-253,73,-253,71,-253,36,-253,69,-253,70,-253,125,-253,108,-253}); + states[449] = new State(-256); + states[450] = new State(new int[]{9,451,141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-78,295,-76,301,-273,304,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); states[451] = new State(new int[]{125,291}); +<<<<<<< HEAD states[452] = new State(-228); states[453] = new State(new int[]{13,454,125,455,118,-233,98,-233,9,-233,119,-233,8,-233,136,-233,134,-233,116,-233,115,-233,129,-233,130,-233,131,-233,132,-233,128,-233,114,-233,113,-233,126,-233,127,-233,124,-233,6,-233,5,-233,123,-233,121,-233,122,-233,120,-233,135,-233,16,-233,90,-233,10,-233,96,-233,99,-233,31,-233,102,-233,2,-233,12,-233,97,-233,30,-233,84,-233,83,-233,82,-233,81,-233,80,-233,85,-233,75,-233,49,-233,56,-233,139,-233,141,-233,79,-233,77,-233,43,-233,40,-233,19,-233,20,-233,142,-233,144,-233,143,-233,152,-233,155,-233,154,-233,153,-233,55,-233,89,-233,38,-233,23,-233,95,-233,52,-233,33,-233,53,-233,100,-233,45,-233,34,-233,51,-233,58,-233,73,-233,71,-233,36,-233,69,-233,70,-233,108,-233}); states[454] = new State(-226); @@ -665,565 +1001,610 @@ public partial class GPPGParser: ShiftReduceParser>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 states[494] = new State(new int[]{10,495}); - states[495] = new State(-427); - states[496] = new State(new int[]{8,369,7,380,140,415,4,416,15,418,17,497,108,-765,109,-765,110,-765,111,-765,112,-765,90,-765,10,-765,96,-765,99,-765,31,-765,102,-765,2,-765,98,-765,12,-765,9,-765,97,-765,30,-765,84,-765,83,-765,82,-765,81,-765,80,-765,85,-765,136,-765,134,-765,116,-765,115,-765,129,-765,130,-765,131,-765,132,-765,128,-765,114,-765,113,-765,126,-765,127,-765,124,-765,6,-765,5,-765,118,-765,123,-765,121,-765,119,-765,122,-765,120,-765,135,-765,16,-765,13,-765,117,-765,11,-775}); - states[497] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,5,603},new int[]{-115,498,-101,1133,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,607,-263,584}); + states[495] = new State(-425); + states[496] = new State(new int[]{8,369,7,380,140,415,4,416,15,418,17,497,108,-763,109,-763,110,-763,111,-763,112,-763,90,-763,10,-763,96,-763,99,-763,31,-763,102,-763,2,-763,98,-763,12,-763,9,-763,97,-763,30,-763,84,-763,83,-763,82,-763,81,-763,80,-763,85,-763,136,-763,134,-763,116,-763,115,-763,129,-763,130,-763,131,-763,132,-763,128,-763,114,-763,113,-763,126,-763,127,-763,124,-763,6,-763,5,-763,118,-763,123,-763,121,-763,119,-763,122,-763,120,-763,135,-763,16,-763,13,-763,117,-763,11,-773}); + states[497] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,5,603},new int[]{-116,498,-102,1136,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,607,-264,584}); states[498] = new State(new int[]{12,499}); - states[499] = new State(new int[]{108,409,109,410,110,411,111,412,112,413},new int[]{-190,500}); - states[500] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-86,501,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); - states[501] = new State(-522); - states[502] = new State(-781); - states[503] = new State(-782); - states[504] = new State(new int[]{11,505,17,1130}); - states[505] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,5,603,18,661,35,670,42,676},new int[]{-71,506,-87,508,-86,27,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,509,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602,-319,645,-23,646,-320,669}); + states[499] = new State(new int[]{108,409,109,410,110,411,111,412,112,413},new int[]{-191,500}); + states[500] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-85,501,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602}); + states[501] = new State(-520); + states[502] = new State(-779); + states[503] = new State(-780); + states[504] = new State(new int[]{11,505,17,1133}); + states[505] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,5,603,18,661,35,670,42,676},new int[]{-70,506,-86,508,-85,27,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,509,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602,-320,645,-97,646,-321,669}); states[506] = new State(new int[]{12,507,98,373}); - states[507] = new State(-784); - states[508] = new State(-591); - states[509] = new State(new int[]{125,510,8,-777,7,-777,140,-777,4,-777,15,-777,136,-777,134,-777,116,-777,115,-777,129,-777,130,-777,131,-777,132,-777,128,-777,114,-777,113,-777,126,-777,127,-777,124,-777,6,-777,5,-777,118,-777,123,-777,121,-777,119,-777,122,-777,120,-777,135,-777,16,-777,90,-777,10,-777,96,-777,99,-777,31,-777,102,-777,2,-777,98,-777,12,-777,9,-777,97,-777,30,-777,84,-777,83,-777,82,-777,81,-777,80,-777,85,-777,13,-777,117,-777,11,-777,17,-777}); - states[510] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,18,661,35,670,42,676,89,17,38,696,52,746,95,741,33,751,34,777,71,847,23,725,100,767,58,855,45,774,73,969},new int[]{-325,511,-100,512,-97,513,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,509,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,674,-112,586,-319,675,-23,646,-320,669,-327,841,-251,694,-148,695,-315,842,-243,843,-119,844,-118,845,-120,846,-36,964,-298,965,-164,966,-244,967,-121,968}); - states[511] = new State(-960); - states[512] = new State(-996); - states[513] = new State(new int[]{16,30,90,-608,10,-608,96,-608,99,-608,31,-608,102,-608,2,-608,98,-608,12,-608,9,-608,97,-608,30,-608,84,-608,83,-608,82,-608,81,-608,80,-608,85,-608,13,-602}); - states[514] = new State(new int[]{6,34,118,-634,123,-634,121,-634,119,-634,122,-634,120,-634,135,-634,16,-634,90,-634,10,-634,96,-634,99,-634,31,-634,102,-634,2,-634,98,-634,12,-634,9,-634,97,-634,30,-634,84,-634,83,-634,82,-634,81,-634,80,-634,85,-634,13,-634,75,-634,5,-634,49,-634,56,-634,139,-634,141,-634,79,-634,77,-634,43,-634,40,-634,8,-634,19,-634,20,-634,142,-634,144,-634,143,-634,152,-634,155,-634,154,-634,153,-634,55,-634,89,-634,38,-634,23,-634,95,-634,52,-634,33,-634,53,-634,100,-634,45,-634,34,-634,51,-634,58,-634,73,-634,71,-634,36,-634,69,-634,70,-634,114,-634,113,-634,126,-634,127,-634,124,-634,136,-634,134,-634,116,-634,115,-634,129,-634,130,-634,131,-634,132,-634,128,-634}); - states[515] = new State(new int[]{9,1107,54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-86,426,-98,516,-142,1111,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); - states[516] = new State(new int[]{98,517,9,-597}); - states[517] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-78,518,-98,1106,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593}); - states[518] = new State(new int[]{98,1104,5,442,10,-980,9,-980},new int[]{-321,519}); - states[519] = new State(new int[]{10,434,9,-968},new int[]{-328,520}); + states[507] = new State(-782); + states[508] = new State(-589); + states[509] = new State(new int[]{125,510,8,-775,7,-775,140,-775,4,-775,15,-775,136,-775,134,-775,116,-775,115,-775,129,-775,130,-775,131,-775,132,-775,128,-775,114,-775,113,-775,126,-775,127,-775,124,-775,6,-775,5,-775,118,-775,123,-775,121,-775,119,-775,122,-775,120,-775,135,-775,16,-775,90,-775,10,-775,96,-775,99,-775,31,-775,102,-775,2,-775,98,-775,12,-775,9,-775,97,-775,30,-775,84,-775,83,-775,82,-775,81,-775,80,-775,85,-775,13,-775,117,-775,11,-775,17,-775}); + states[510] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,18,661,35,670,42,676,89,17,38,698,52,748,95,743,33,753,34,779,71,849,23,727,100,769,58,857,45,776,73,971},new int[]{-326,511,-101,512,-96,513,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,509,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,674,-113,586,-320,675,-97,646,-321,669,-328,843,-252,696,-149,697,-316,844,-244,845,-120,846,-119,847,-121,848,-35,966,-299,967,-165,968,-245,969,-122,970}); + states[511] = new State(-962); + states[512] = new State(-998); + states[513] = new State(new int[]{16,30,90,-606,10,-606,96,-606,99,-606,31,-606,102,-606,2,-606,98,-606,12,-606,9,-606,97,-606,30,-606,84,-606,83,-606,82,-606,81,-606,80,-606,85,-606,13,-600}); + states[514] = new State(new int[]{6,34,118,-632,123,-632,121,-632,119,-632,122,-632,120,-632,135,-632,16,-632,90,-632,10,-632,96,-632,99,-632,31,-632,102,-632,2,-632,98,-632,12,-632,9,-632,97,-632,30,-632,84,-632,83,-632,82,-632,81,-632,80,-632,85,-632,13,-632,75,-632,5,-632,49,-632,56,-632,139,-632,141,-632,79,-632,77,-632,43,-632,40,-632,8,-632,19,-632,20,-632,142,-632,144,-632,143,-632,152,-632,155,-632,154,-632,153,-632,55,-632,89,-632,38,-632,23,-632,95,-632,52,-632,33,-632,53,-632,100,-632,45,-632,34,-632,51,-632,58,-632,73,-632,71,-632,36,-632,69,-632,70,-632,114,-632,113,-632,126,-632,127,-632,124,-632,136,-632,134,-632,116,-632,115,-632,129,-632,130,-632,131,-632,132,-632,128,-632}); + states[515] = new State(new int[]{9,1110,54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603,18,661},new int[]{-85,426,-99,516,-143,1114,-98,692,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602,-97,693}); + states[516] = new State(new int[]{98,517}); + states[517] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,18,661},new int[]{-77,518,-99,1109,-98,1108,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-97,693}); + states[518] = new State(new int[]{98,1106,5,442,10,-982,9,-982},new int[]{-322,519}); + states[519] = new State(new int[]{10,434,9,-970},new int[]{-329,520}); states[520] = new State(new int[]{9,521}); - states[521] = new State(new int[]{5,648,7,-748,136,-748,134,-748,116,-748,115,-748,129,-748,130,-748,131,-748,132,-748,128,-748,114,-748,113,-748,126,-748,127,-748,124,-748,6,-748,118,-748,123,-748,121,-748,119,-748,122,-748,120,-748,135,-748,16,-748,90,-748,10,-748,96,-748,99,-748,31,-748,102,-748,2,-748,98,-748,12,-748,9,-748,97,-748,30,-748,84,-748,83,-748,82,-748,81,-748,80,-748,85,-748,13,-748,125,-982},new int[]{-332,522,-322,523}); - states[522] = new State(-965); + states[521] = new State(new int[]{5,648,7,-746,136,-746,134,-746,116,-746,115,-746,129,-746,130,-746,131,-746,132,-746,128,-746,114,-746,113,-746,126,-746,127,-746,124,-746,6,-746,118,-746,123,-746,121,-746,119,-746,122,-746,120,-746,135,-746,16,-746,90,-746,10,-746,96,-746,99,-746,31,-746,102,-746,2,-746,98,-746,12,-746,9,-746,97,-746,30,-746,84,-746,83,-746,82,-746,81,-746,80,-746,85,-746,13,-746,125,-984},new int[]{-333,522,-323,523}); + states[522] = new State(-967); states[523] = new State(new int[]{125,524}); - states[524] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,18,661,35,670,42,676,89,17,38,696,52,746,95,741,33,751,34,777,71,847,23,725,100,767,58,855,45,774,73,969},new int[]{-325,525,-100,512,-97,513,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,509,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,674,-112,586,-319,675,-23,646,-320,669,-327,841,-251,694,-148,695,-315,842,-243,843,-119,844,-118,845,-120,846,-36,964,-298,965,-164,966,-244,967,-121,968}); - states[525] = new State(-970); - states[526] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-69,527,-76,346,-90,356,-86,349,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); + states[524] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,18,661,35,670,42,676,89,17,38,698,52,748,95,743,33,753,34,779,71,849,23,727,100,769,58,857,45,776,73,971},new int[]{-326,525,-101,512,-96,513,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,509,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,674,-113,586,-320,675,-97,646,-321,669,-328,843,-252,696,-149,697,-316,844,-244,845,-120,846,-119,847,-121,848,-35,966,-299,967,-165,968,-245,969,-122,970}); + states[525] = new State(-972); + states[526] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-68,527,-75,346,-89,356,-85,349,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602}); states[527] = new State(new int[]{75,528}); - states[528] = new State(-786); - states[529] = new State(new int[]{7,530,136,-759,134,-759,116,-759,115,-759,129,-759,130,-759,131,-759,132,-759,128,-759,114,-759,113,-759,126,-759,127,-759,124,-759,6,-759,5,-759,118,-759,123,-759,121,-759,119,-759,122,-759,120,-759,135,-759,16,-759,90,-759,10,-759,96,-759,99,-759,31,-759,102,-759,2,-759,98,-759,12,-759,9,-759,97,-759,30,-759,84,-759,83,-759,82,-759,81,-759,80,-759,85,-759,13,-759,75,-759,49,-759,56,-759,139,-759,141,-759,79,-759,77,-759,43,-759,40,-759,8,-759,19,-759,20,-759,142,-759,144,-759,143,-759,152,-759,155,-759,154,-759,153,-759,55,-759,89,-759,38,-759,23,-759,95,-759,52,-759,33,-759,53,-759,100,-759,45,-759,34,-759,51,-759,58,-759,73,-759,71,-759,36,-759,69,-759,70,-759}); - states[530] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,83,56,82,57,81,58,80,59,67,60,62,61,126,62,20,63,19,64,61,65,21,66,127,67,128,68,129,69,130,70,131,71,132,72,133,73,134,74,135,75,136,76,22,77,72,78,89,79,23,80,24,81,27,82,28,83,29,84,70,85,97,86,30,87,90,88,31,89,32,90,25,91,102,92,99,93,33,94,34,95,35,96,38,97,39,98,40,99,101,100,41,101,42,102,44,103,45,104,46,105,95,106,47,107,100,108,48,109,26,110,49,111,69,112,96,113,50,114,51,115,52,116,53,117,54,118,55,119,56,120,57,121,59,122,103,123,104,124,107,125,105,126,106,127,60,128,73,129,36,130,37,131,68,132,145,133,58,134,137,135,138,136,78,137,150,138,149,139,71,140,151,141,147,142,148,143,146,144,43,385},new int[]{-143,531,-142,382,-146,48,-147,51,-289,383,-145,55,-187,384}); - states[531] = new State(-789); - states[532] = new State(-766); - states[533] = new State(-734); - states[534] = new State(-735); + states[528] = new State(-784); + states[529] = new State(new int[]{7,530,136,-757,134,-757,116,-757,115,-757,129,-757,130,-757,131,-757,132,-757,128,-757,114,-757,113,-757,126,-757,127,-757,124,-757,6,-757,5,-757,118,-757,123,-757,121,-757,119,-757,122,-757,120,-757,135,-757,16,-757,90,-757,10,-757,96,-757,99,-757,31,-757,102,-757,2,-757,98,-757,12,-757,9,-757,97,-757,30,-757,84,-757,83,-757,82,-757,81,-757,80,-757,85,-757,13,-757,75,-757,49,-757,56,-757,139,-757,141,-757,79,-757,77,-757,43,-757,40,-757,8,-757,19,-757,20,-757,142,-757,144,-757,143,-757,152,-757,155,-757,154,-757,153,-757,55,-757,89,-757,38,-757,23,-757,95,-757,52,-757,33,-757,53,-757,100,-757,45,-757,34,-757,51,-757,58,-757,73,-757,71,-757,36,-757,69,-757,70,-757}); + states[530] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,83,56,82,57,81,58,80,59,67,60,62,61,126,62,20,63,19,64,61,65,21,66,127,67,128,68,129,69,130,70,131,71,132,72,133,73,134,74,135,75,136,76,22,77,72,78,89,79,23,80,24,81,27,82,28,83,29,84,70,85,97,86,30,87,90,88,31,89,32,90,25,91,102,92,99,93,33,94,34,95,35,96,38,97,39,98,40,99,101,100,41,101,42,102,44,103,45,104,46,105,95,106,47,107,100,108,48,109,26,110,49,111,69,112,96,113,50,114,51,115,52,116,53,117,54,118,55,119,56,120,57,121,59,122,103,123,104,124,107,125,105,126,106,127,60,128,73,129,36,130,37,131,68,132,145,133,58,134,137,135,138,136,78,137,150,138,149,139,71,140,151,141,147,142,148,143,146,144,43,385},new int[]{-144,531,-143,382,-147,48,-148,51,-290,383,-146,55,-188,384}); + states[531] = new State(-787); + states[532] = new State(-764); + states[533] = new State(-732); + states[534] = new State(-733); states[535] = new State(new int[]{117,536}); - states[536] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,53,43,385,40,423,8,425,19,264,20,269,75,526},new int[]{-94,537,-264,538,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-95,535}); - states[537] = new State(-730); - states[538] = new State(-731); - states[539] = new State(-739); - states[540] = new State(new int[]{8,541,136,-724,134,-724,116,-724,115,-724,129,-724,130,-724,131,-724,132,-724,128,-724,114,-724,113,-724,126,-724,127,-724,124,-724,6,-724,5,-724,118,-724,123,-724,121,-724,119,-724,122,-724,120,-724,135,-724,16,-724,90,-724,10,-724,96,-724,99,-724,31,-724,102,-724,2,-724,98,-724,12,-724,9,-724,97,-724,30,-724,84,-724,83,-724,82,-724,81,-724,80,-724,85,-724,13,-724,75,-724,49,-724,56,-724,139,-724,141,-724,79,-724,77,-724,43,-724,40,-724,19,-724,20,-724,142,-724,144,-724,143,-724,152,-724,155,-724,154,-724,153,-724,55,-724,89,-724,38,-724,23,-724,95,-724,52,-724,33,-724,53,-724,100,-724,45,-724,34,-724,51,-724,58,-724,73,-724,71,-724,36,-724,69,-724,70,-724}); - states[541] = new State(new int[]{14,546,142,150,144,151,143,153,152,155,155,156,154,157,153,158,51,548,141,47,84,49,85,50,79,52,77,53,11,909,8,922},new int[]{-350,542,-348,1103,-15,547,-160,147,-162,148,-161,152,-16,154,-337,1094,-280,1095,-176,164,-142,201,-146,48,-147,51,-340,1101,-341,1102}); - states[542] = new State(new int[]{9,543,10,544,98,1099}); - states[543] = new State(-637); - states[544] = new State(new int[]{14,546,142,150,144,151,143,153,152,155,155,156,154,157,153,158,51,548,141,47,84,49,85,50,79,52,77,53,11,909,8,922},new int[]{-348,545,-15,547,-160,147,-162,148,-161,152,-16,154,-337,1094,-280,1095,-176,164,-142,201,-146,48,-147,51,-340,1101,-341,1102}); - states[545] = new State(-674); - states[546] = new State(-676); - states[547] = new State(-677); - states[548] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-142,549,-146,48,-147,51}); - states[549] = new State(new int[]{5,550,9,-679,10,-679,98,-679}); - states[550] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-272,551,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); - states[551] = new State(-678); - states[552] = new State(-271); + states[536] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,53,43,385,40,423,8,425,19,264,20,269,75,526},new int[]{-93,537,-265,538,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-94,535}); + states[537] = new State(-728); + states[538] = new State(-729); + states[539] = new State(-737); + states[540] = new State(new int[]{8,541,136,-722,134,-722,116,-722,115,-722,129,-722,130,-722,131,-722,132,-722,128,-722,114,-722,113,-722,126,-722,127,-722,124,-722,6,-722,5,-722,118,-722,123,-722,121,-722,119,-722,122,-722,120,-722,135,-722,16,-722,90,-722,10,-722,96,-722,99,-722,31,-722,102,-722,2,-722,98,-722,12,-722,9,-722,97,-722,30,-722,84,-722,83,-722,82,-722,81,-722,80,-722,85,-722,13,-722,75,-722,49,-722,56,-722,139,-722,141,-722,79,-722,77,-722,43,-722,40,-722,19,-722,20,-722,142,-722,144,-722,143,-722,152,-722,155,-722,154,-722,153,-722,55,-722,89,-722,38,-722,23,-722,95,-722,52,-722,33,-722,53,-722,100,-722,45,-722,34,-722,51,-722,58,-722,73,-722,71,-722,36,-722,69,-722,70,-722}); + states[541] = new State(new int[]{14,546,142,150,144,151,143,153,152,155,155,156,154,157,153,158,51,548,141,47,84,49,85,50,79,52,77,53,11,911,8,924},new int[]{-351,542,-349,1105,-15,547,-161,147,-163,148,-162,152,-16,154,-338,1096,-281,1097,-177,164,-143,201,-147,48,-148,51,-341,1103,-342,1104}); + states[542] = new State(new int[]{9,543,10,544,98,1101}); + states[543] = new State(-635); + states[544] = new State(new int[]{14,546,142,150,144,151,143,153,152,155,155,156,154,157,153,158,51,548,141,47,84,49,85,50,79,52,77,53,11,911,8,924},new int[]{-349,545,-15,547,-161,147,-163,148,-162,152,-16,154,-338,1096,-281,1097,-177,164,-143,201,-147,48,-148,51,-341,1103,-342,1104}); + states[545] = new State(-672); + states[546] = new State(-674); + states[547] = new State(-675); + states[548] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-143,549,-147,48,-148,51}); + states[549] = new State(new int[]{5,550,9,-677,10,-677,98,-677}); + states[550] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-273,551,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); + states[551] = new State(-676); + states[552] = new State(-269); states[553] = new State(new int[]{56,554}); - states[554] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-272,555,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); - states[555] = new State(-282); - states[556] = new State(-272); - states[557] = new State(new int[]{56,558,119,-284,98,-284,118,-284,9,-284,8,-284,136,-284,134,-284,116,-284,115,-284,129,-284,130,-284,131,-284,132,-284,128,-284,114,-284,113,-284,126,-284,127,-284,124,-284,6,-284,5,-284,123,-284,121,-284,122,-284,120,-284,135,-284,16,-284,90,-284,10,-284,96,-284,99,-284,31,-284,102,-284,2,-284,12,-284,97,-284,30,-284,84,-284,83,-284,82,-284,81,-284,80,-284,85,-284,13,-284,75,-284,49,-284,139,-284,141,-284,79,-284,77,-284,43,-284,40,-284,19,-284,20,-284,142,-284,144,-284,143,-284,152,-284,155,-284,154,-284,153,-284,55,-284,89,-284,38,-284,23,-284,95,-284,52,-284,33,-284,53,-284,100,-284,45,-284,34,-284,51,-284,58,-284,73,-284,71,-284,36,-284,69,-284,70,-284,125,-284,108,-284}); - states[558] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-272,559,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); - states[559] = new State(-283); - states[560] = new State(-273); + states[554] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-273,555,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); + states[555] = new State(-280); + states[556] = new State(-270); + states[557] = new State(new int[]{56,558,119,-282,98,-282,118,-282,9,-282,8,-282,136,-282,134,-282,116,-282,115,-282,129,-282,130,-282,131,-282,132,-282,128,-282,114,-282,113,-282,126,-282,127,-282,124,-282,6,-282,5,-282,123,-282,121,-282,122,-282,120,-282,135,-282,16,-282,90,-282,10,-282,96,-282,99,-282,31,-282,102,-282,2,-282,12,-282,97,-282,30,-282,84,-282,83,-282,82,-282,81,-282,80,-282,85,-282,13,-282,75,-282,49,-282,139,-282,141,-282,79,-282,77,-282,43,-282,40,-282,19,-282,20,-282,142,-282,144,-282,143,-282,152,-282,155,-282,154,-282,153,-282,55,-282,89,-282,38,-282,23,-282,95,-282,52,-282,33,-282,53,-282,100,-282,45,-282,34,-282,51,-282,58,-282,73,-282,71,-282,36,-282,69,-282,70,-282,125,-282,108,-282}); + states[558] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-273,559,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); + states[559] = new State(-281); + states[560] = new State(-271); states[561] = new State(new int[]{56,562}); - states[562] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-272,563,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); - states[563] = new State(-274); - states[564] = new State(new int[]{22,330,46,468,47,553,32,557,72,561},new int[]{-278,565,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560}); - states[565] = new State(-268); - states[566] = new State(-232); - states[567] = new State(-286); - states[568] = new State(-287); - states[569] = new State(new int[]{8,571,119,-468,98,-468,118,-468,9,-468,136,-468,134,-468,116,-468,115,-468,129,-468,130,-468,131,-468,132,-468,128,-468,114,-468,113,-468,126,-468,127,-468,124,-468,6,-468,5,-468,123,-468,121,-468,122,-468,120,-468,135,-468,16,-468,90,-468,10,-468,96,-468,99,-468,31,-468,102,-468,2,-468,12,-468,97,-468,30,-468,84,-468,83,-468,82,-468,81,-468,80,-468,85,-468,13,-468,75,-468,49,-468,56,-468,139,-468,141,-468,79,-468,77,-468,43,-468,40,-468,19,-468,20,-468,142,-468,144,-468,143,-468,152,-468,155,-468,154,-468,153,-468,55,-468,89,-468,38,-468,23,-468,95,-468,52,-468,33,-468,53,-468,100,-468,45,-468,34,-468,51,-468,58,-468,73,-468,71,-468,36,-468,69,-468,70,-468,125,-468,108,-468},new int[]{-123,570}); - states[570] = new State(-288); - states[571] = new State(new int[]{9,572,11,633,141,-212,84,-212,85,-212,79,-212,77,-212,51,-212,27,-212,106,-212},new int[]{-124,573,-57,1093,-6,577,-246,1092}); - states[572] = new State(-469); + states[562] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-273,563,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); + states[563] = new State(-272); + states[564] = new State(new int[]{22,330,46,468,47,553,32,557,72,561},new int[]{-279,565,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560}); + states[565] = new State(-266); + states[566] = new State(-230); + states[567] = new State(-284); + states[568] = new State(-285); + states[569] = new State(new int[]{8,571,119,-466,98,-466,118,-466,9,-466,136,-466,134,-466,116,-466,115,-466,129,-466,130,-466,131,-466,132,-466,128,-466,114,-466,113,-466,126,-466,127,-466,124,-466,6,-466,5,-466,123,-466,121,-466,122,-466,120,-466,135,-466,16,-466,90,-466,10,-466,96,-466,99,-466,31,-466,102,-466,2,-466,12,-466,97,-466,30,-466,84,-466,83,-466,82,-466,81,-466,80,-466,85,-466,13,-466,75,-466,49,-466,56,-466,139,-466,141,-466,79,-466,77,-466,43,-466,40,-466,19,-466,20,-466,142,-466,144,-466,143,-466,152,-466,155,-466,154,-466,153,-466,55,-466,89,-466,38,-466,23,-466,95,-466,52,-466,33,-466,53,-466,100,-466,45,-466,34,-466,51,-466,58,-466,73,-466,71,-466,36,-466,69,-466,70,-466,125,-466,108,-466},new int[]{-124,570}); + states[570] = new State(-286); + states[571] = new State(new int[]{9,572,11,633,141,-210,84,-210,85,-210,79,-210,77,-210,51,-210,27,-210,106,-210},new int[]{-125,573,-56,1095,-6,577,-247,1094}); + states[572] = new State(-467); states[573] = new State(new int[]{9,574,10,575}); - states[574] = new State(-470); - states[575] = new State(new int[]{11,633,141,-212,84,-212,85,-212,79,-212,77,-212,51,-212,27,-212,106,-212},new int[]{-57,576,-6,577,-246,1092}); - states[576] = new State(-472); - states[577] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,51,617,27,623,106,629,11,633},new int[]{-292,578,-246,484,-154,579,-130,616,-142,615,-146,48,-147,51}); - states[578] = new State(-473); + states[574] = new State(-468); + states[575] = new State(new int[]{11,633,141,-210,84,-210,85,-210,79,-210,77,-210,51,-210,27,-210,106,-210},new int[]{-56,576,-6,577,-247,1094}); + states[576] = new State(-470); + states[577] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,51,617,27,623,106,629,11,633},new int[]{-293,578,-247,484,-155,579,-131,616,-143,615,-147,48,-148,51}); + states[578] = new State(-471); states[579] = new State(new int[]{5,580,98,613}); - states[580] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-271,581,-272,444,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); - states[581] = new State(new int[]{108,582,9,-474,10,-474}); - states[582] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-86,583,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); - states[583] = new State(-478); - states[584] = new State(-725); - states[585] = new State(new int[]{90,-600,10,-600,96,-600,99,-600,31,-600,102,-600,2,-600,98,-600,12,-600,9,-600,97,-600,30,-600,84,-600,83,-600,82,-600,81,-600,80,-600,85,-600,6,-600,75,-600,5,-600,49,-600,56,-600,139,-600,141,-600,79,-600,77,-600,43,-600,40,-600,8,-600,19,-600,20,-600,142,-600,144,-600,143,-600,152,-600,155,-600,154,-600,153,-600,55,-600,89,-600,38,-600,23,-600,95,-600,52,-600,33,-600,53,-600,100,-600,45,-600,34,-600,51,-600,58,-600,73,-600,71,-600,36,-600,69,-600,70,-600,13,-603}); + states[580] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-272,581,-273,444,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); + states[581] = new State(new int[]{108,582,9,-472,10,-472}); + states[582] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-85,583,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602}); + states[583] = new State(-476); + states[584] = new State(-723); + states[585] = new State(new int[]{90,-598,10,-598,96,-598,99,-598,31,-598,102,-598,2,-598,98,-598,12,-598,9,-598,97,-598,30,-598,84,-598,83,-598,82,-598,81,-598,80,-598,85,-598,6,-598,75,-598,5,-598,49,-598,56,-598,139,-598,141,-598,79,-598,77,-598,43,-598,40,-598,8,-598,19,-598,20,-598,142,-598,144,-598,143,-598,152,-598,155,-598,154,-598,153,-598,55,-598,89,-598,38,-598,23,-598,95,-598,52,-598,33,-598,53,-598,100,-598,45,-598,34,-598,51,-598,58,-598,73,-598,71,-598,36,-598,69,-598,70,-598,13,-601}); states[586] = new State(new int[]{13,587}); - states[587] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526},new int[]{-112,588,-97,591,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,592}); + states[587] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526},new int[]{-113,588,-96,591,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,592}); states[588] = new State(new int[]{5,589,13,587}); - states[589] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526},new int[]{-112,590,-97,591,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,592}); - states[590] = new State(new int[]{13,587,90,-616,10,-616,96,-616,99,-616,31,-616,102,-616,2,-616,98,-616,12,-616,9,-616,97,-616,30,-616,84,-616,83,-616,82,-616,81,-616,80,-616,85,-616,6,-616,75,-616,5,-616,49,-616,56,-616,139,-616,141,-616,79,-616,77,-616,43,-616,40,-616,8,-616,19,-616,20,-616,142,-616,144,-616,143,-616,152,-616,155,-616,154,-616,153,-616,55,-616,89,-616,38,-616,23,-616,95,-616,52,-616,33,-616,53,-616,100,-616,45,-616,34,-616,51,-616,58,-616,73,-616,71,-616,36,-616,69,-616,70,-616}); - states[591] = new State(new int[]{16,30,5,-602,13,-602,90,-602,10,-602,96,-602,99,-602,31,-602,102,-602,2,-602,98,-602,12,-602,9,-602,97,-602,30,-602,84,-602,83,-602,82,-602,81,-602,80,-602,85,-602,6,-602,75,-602,49,-602,56,-602,139,-602,141,-602,79,-602,77,-602,43,-602,40,-602,8,-602,19,-602,20,-602,142,-602,144,-602,143,-602,152,-602,155,-602,154,-602,153,-602,55,-602,89,-602,38,-602,23,-602,95,-602,52,-602,33,-602,53,-602,100,-602,45,-602,34,-602,51,-602,58,-602,73,-602,71,-602,36,-602,69,-602,70,-602}); - states[592] = new State(-603); - states[593] = new State(-601); - states[594] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-113,595,-97,600,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-238,601}); + states[589] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526},new int[]{-113,590,-96,591,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,592}); + states[590] = new State(new int[]{13,587,90,-614,10,-614,96,-614,99,-614,31,-614,102,-614,2,-614,98,-614,12,-614,9,-614,97,-614,30,-614,84,-614,83,-614,82,-614,81,-614,80,-614,85,-614,6,-614,75,-614,5,-614,49,-614,56,-614,139,-614,141,-614,79,-614,77,-614,43,-614,40,-614,8,-614,19,-614,20,-614,142,-614,144,-614,143,-614,152,-614,155,-614,154,-614,153,-614,55,-614,89,-614,38,-614,23,-614,95,-614,52,-614,33,-614,53,-614,100,-614,45,-614,34,-614,51,-614,58,-614,73,-614,71,-614,36,-614,69,-614,70,-614}); + states[591] = new State(new int[]{16,30,5,-600,13,-600,90,-600,10,-600,96,-600,99,-600,31,-600,102,-600,2,-600,98,-600,12,-600,9,-600,97,-600,30,-600,84,-600,83,-600,82,-600,81,-600,80,-600,85,-600,6,-600,75,-600,49,-600,56,-600,139,-600,141,-600,79,-600,77,-600,43,-600,40,-600,8,-600,19,-600,20,-600,142,-600,144,-600,143,-600,152,-600,155,-600,154,-600,153,-600,55,-600,89,-600,38,-600,23,-600,95,-600,52,-600,33,-600,53,-600,100,-600,45,-600,34,-600,51,-600,58,-600,73,-600,71,-600,36,-600,69,-600,70,-600}); + states[592] = new State(-601); + states[593] = new State(-599); + states[594] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-114,595,-96,600,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-239,601}); states[595] = new State(new int[]{49,596}); - states[596] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-113,597,-97,600,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-238,601}); + states[596] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-114,597,-96,600,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-239,601}); states[597] = new State(new int[]{30,598}); - states[598] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-113,599,-97,600,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-238,601}); - states[599] = new State(-617); - states[600] = new State(new int[]{16,30,49,-604,30,-604,118,-604,123,-604,121,-604,119,-604,122,-604,120,-604,135,-604,90,-604,10,-604,96,-604,99,-604,31,-604,102,-604,2,-604,98,-604,12,-604,9,-604,97,-604,84,-604,83,-604,82,-604,81,-604,80,-604,85,-604,13,-604,6,-604,75,-604,5,-604,56,-604,139,-604,141,-604,79,-604,77,-604,43,-604,40,-604,8,-604,19,-604,20,-604,142,-604,144,-604,143,-604,152,-604,155,-604,154,-604,153,-604,55,-604,89,-604,38,-604,23,-604,95,-604,52,-604,33,-604,53,-604,100,-604,45,-604,34,-604,51,-604,58,-604,73,-604,71,-604,36,-604,69,-604,70,-604,114,-604,113,-604,126,-604,127,-604,124,-604,136,-604,134,-604,116,-604,115,-604,129,-604,130,-604,131,-604,132,-604,128,-604}); - states[601] = new State(-605); - states[602] = new State(-598); - states[603] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,5,-694,90,-694,10,-694,96,-694,99,-694,31,-694,102,-694,2,-694,98,-694,12,-694,9,-694,97,-694,30,-694,83,-694,82,-694,81,-694,80,-694,6,-694},new int[]{-110,604,-101,608,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,607,-263,584}); - states[604] = new State(new int[]{5,605,90,-698,10,-698,96,-698,99,-698,31,-698,102,-698,2,-698,98,-698,12,-698,9,-698,97,-698,30,-698,84,-698,83,-698,82,-698,81,-698,80,-698,85,-698,6,-698,75,-698}); - states[605] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526},new int[]{-101,606,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,607,-263,584}); - states[606] = new State(new int[]{6,34,90,-700,10,-700,96,-700,99,-700,31,-700,102,-700,2,-700,98,-700,12,-700,9,-700,97,-700,30,-700,84,-700,83,-700,82,-700,81,-700,80,-700,85,-700,75,-700}); - states[607] = new State(-724); - states[608] = new State(new int[]{6,34,5,-693,90,-693,10,-693,96,-693,99,-693,31,-693,102,-693,2,-693,98,-693,12,-693,9,-693,97,-693,30,-693,84,-693,83,-693,82,-693,81,-693,80,-693,85,-693,75,-693}); - states[609] = new State(new int[]{8,571,5,-468},new int[]{-123,610}); + states[598] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-114,599,-96,600,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-239,601}); + states[599] = new State(-615); + states[600] = new State(new int[]{16,30,49,-602,30,-602,118,-602,123,-602,121,-602,119,-602,122,-602,120,-602,135,-602,90,-602,10,-602,96,-602,99,-602,31,-602,102,-602,2,-602,98,-602,12,-602,9,-602,97,-602,84,-602,83,-602,82,-602,81,-602,80,-602,85,-602,13,-602,6,-602,75,-602,5,-602,56,-602,139,-602,141,-602,79,-602,77,-602,43,-602,40,-602,8,-602,19,-602,20,-602,142,-602,144,-602,143,-602,152,-602,155,-602,154,-602,153,-602,55,-602,89,-602,38,-602,23,-602,95,-602,52,-602,33,-602,53,-602,100,-602,45,-602,34,-602,51,-602,58,-602,73,-602,71,-602,36,-602,69,-602,70,-602,114,-602,113,-602,126,-602,127,-602,124,-602,136,-602,134,-602,116,-602,115,-602,129,-602,130,-602,131,-602,132,-602,128,-602}); + states[601] = new State(-603); + states[602] = new State(-596); + states[603] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,5,-692,90,-692,10,-692,96,-692,99,-692,31,-692,102,-692,2,-692,98,-692,12,-692,9,-692,97,-692,30,-692,83,-692,82,-692,81,-692,80,-692,6,-692},new int[]{-111,604,-102,608,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,607,-264,584}); + states[604] = new State(new int[]{5,605,90,-696,10,-696,96,-696,99,-696,31,-696,102,-696,2,-696,98,-696,12,-696,9,-696,97,-696,30,-696,84,-696,83,-696,82,-696,81,-696,80,-696,85,-696,6,-696,75,-696}); + states[605] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526},new int[]{-102,606,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,607,-264,584}); + states[606] = new State(new int[]{6,34,90,-698,10,-698,96,-698,99,-698,31,-698,102,-698,2,-698,98,-698,12,-698,9,-698,97,-698,30,-698,84,-698,83,-698,82,-698,81,-698,80,-698,85,-698,75,-698}); + states[607] = new State(-722); + states[608] = new State(new int[]{6,34,5,-691,90,-691,10,-691,96,-691,99,-691,31,-691,102,-691,2,-691,98,-691,12,-691,9,-691,97,-691,30,-691,84,-691,83,-691,82,-691,81,-691,80,-691,85,-691,75,-691}); + states[609] = new State(new int[]{8,571,5,-466},new int[]{-124,610}); states[610] = new State(new int[]{5,611}); - states[611] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-271,612,-272,444,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); - states[612] = new State(-289); - states[613] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-130,614,-142,615,-146,48,-147,51}); - states[614] = new State(-482); - states[615] = new State(-483); - states[616] = new State(-481); - states[617] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-154,618,-130,616,-142,615,-146,48,-147,51}); + states[611] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-272,612,-273,444,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); + states[612] = new State(-287); + states[613] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-131,614,-143,615,-147,48,-148,51}); + states[614] = new State(-480); + states[615] = new State(-481); + states[616] = new State(-479); + states[617] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-155,618,-131,616,-143,615,-147,48,-148,51}); states[618] = new State(new int[]{5,619,98,613}); - states[619] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-271,620,-272,444,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); - states[620] = new State(new int[]{108,621,9,-475,10,-475}); - states[621] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-86,622,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); - states[622] = new State(-479); - states[623] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-154,624,-130,616,-142,615,-146,48,-147,51}); + states[619] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-272,620,-273,444,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); + states[620] = new State(new int[]{108,621,9,-473,10,-473}); + states[621] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-85,622,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602}); + states[622] = new State(-477); + states[623] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-155,624,-131,616,-143,615,-147,48,-148,51}); states[624] = new State(new int[]{5,625,98,613}); - states[625] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-271,626,-272,444,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); - states[626] = new State(new int[]{108,627,9,-476,10,-476}); - states[627] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-86,628,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); - states[628] = new State(-480); - states[629] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-154,630,-130,616,-142,615,-146,48,-147,51}); + states[625] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-272,626,-273,444,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); + states[626] = new State(new int[]{108,627,9,-474,10,-474}); + states[627] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-85,628,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602}); + states[628] = new State(-478); + states[629] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-155,630,-131,616,-143,615,-147,48,-148,51}); states[630] = new State(new int[]{5,631,98,613}); - states[631] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-271,632,-272,444,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); - states[632] = new State(-477); - states[633] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-247,634,-8,1091,-9,638,-176,639,-142,1086,-146,48,-147,51,-297,1089}); + states[631] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-272,632,-273,444,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); + states[632] = new State(-475); + states[633] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-248,634,-8,1093,-9,638,-177,639,-143,1088,-147,48,-148,51,-298,1091}); states[634] = new State(new int[]{12,635,98,636}); - states[635] = new State(-213); - states[636] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-8,637,-9,638,-176,639,-142,1086,-146,48,-147,51,-297,1089}); - states[637] = new State(-215); - states[638] = new State(-216); - states[639] = new State(new int[]{7,165,8,642,121,170,12,-632,98,-632},new int[]{-70,640,-295,641}); - states[640] = new State(-769); - states[641] = new State(-234); - states[642] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,5,603,18,661,35,670,42,676,9,-793},new int[]{-68,643,-71,372,-87,508,-86,27,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,509,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602,-319,645,-23,646,-320,669}); + states[635] = new State(-211); + states[636] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-8,637,-9,638,-177,639,-143,1088,-147,48,-148,51,-298,1091}); + states[637] = new State(-213); + states[638] = new State(-214); + states[639] = new State(new int[]{7,165,8,642,121,170,12,-630,98,-630},new int[]{-69,640,-296,641}); + states[640] = new State(-767); + states[641] = new State(-232); + states[642] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,5,603,18,661,35,670,42,676,9,-791},new int[]{-67,643,-70,372,-86,508,-85,27,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,509,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602,-320,645,-97,646,-321,669}); states[643] = new State(new int[]{9,644}); - states[644] = new State(-633); - states[645] = new State(-596); - states[646] = new State(new int[]{5,648,125,-982},new int[]{-332,647,-322,523}); - states[647] = new State(-966); - states[648] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,652,140,461,22,330,46,468,47,553,32,557,72,561,63,564},new int[]{-273,649,-268,650,-91,177,-102,284,-103,285,-176,651,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-252,657,-245,658,-277,659,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-297,660}); - states[649] = new State(-983); - states[650] = new State(-485); - states[651] = new State(new int[]{7,165,121,170,8,-255,116,-255,115,-255,129,-255,130,-255,131,-255,132,-255,128,-255,6,-255,114,-255,113,-255,126,-255,127,-255,125,-255},new int[]{-295,641}); - states[652] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-79,653,-77,301,-272,304,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); + states[644] = new State(-631); + states[645] = new State(-594); + states[646] = new State(new int[]{5,648,125,-984},new int[]{-333,647,-323,523}); + states[647] = new State(-968); + states[648] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,652,140,461,22,330,46,468,47,553,32,557,72,561,63,564},new int[]{-274,649,-269,650,-90,177,-103,284,-104,285,-177,651,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-253,657,-246,658,-278,659,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-298,660}); + states[649] = new State(-985); + states[650] = new State(-483); + states[651] = new State(new int[]{7,165,121,170,8,-253,116,-253,115,-253,129,-253,130,-253,131,-253,132,-253,128,-253,6,-253,114,-253,113,-253,126,-253,127,-253,125,-253},new int[]{-296,641}); + states[652] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-78,653,-76,301,-273,304,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); states[653] = new State(new int[]{9,654,98,655}); - states[654] = new State(-250); - states[655] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-77,656,-272,304,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); - states[656] = new State(-263); - states[657] = new State(-486); - states[658] = new State(-487); - states[659] = new State(-488); - states[660] = new State(-489); - states[661] = new State(new int[]{18,661,141,47,84,49,85,50,79,52,77,53},new int[]{-25,662,-24,668,-23,666,-142,667,-146,48,-147,51}); + states[654] = new State(-248); + states[655] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-76,656,-273,304,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); + states[656] = new State(-261); + states[657] = new State(-484); + states[658] = new State(-485); + states[659] = new State(-486); + states[660] = new State(-487); + states[661] = new State(new int[]{18,661,141,47,84,49,85,50,79,52,77,53},new int[]{-24,662,-23,668,-97,666,-143,667,-147,48,-148,51}); states[662] = new State(new int[]{98,663}); - states[663] = new State(new int[]{18,661,141,47,84,49,85,50,79,52,77,53},new int[]{-24,664,-23,666,-142,667,-146,48,-147,51}); - states[664] = new State(new int[]{9,665,98,-959}); - states[665] = new State(-955); - states[666] = new State(-956); - states[667] = new State(-957); - states[668] = new State(-958); - states[669] = new State(-967); - states[670] = new State(new int[]{8,1076,5,648,125,-982},new int[]{-322,671}); + states[663] = new State(new int[]{18,661,141,47,84,49,85,50,79,52,77,53},new int[]{-23,664,-97,666,-143,667,-147,48,-148,51}); + states[664] = new State(new int[]{9,665,98,-957}); + states[665] = new State(-953); + states[666] = new State(-954); + states[667] = new State(-955); + states[668] = new State(-956); + states[669] = new State(-969); + states[670] = new State(new int[]{8,1078,5,648,125,-984},new int[]{-323,671}); states[671] = new State(new int[]{125,672}); - states[672] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,18,661,35,670,42,676,89,17,38,696,52,746,95,741,33,751,34,777,71,847,23,725,100,767,58,855,45,774,73,969},new int[]{-325,673,-100,512,-97,513,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,509,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,674,-112,586,-319,675,-23,646,-320,669,-327,841,-251,694,-148,695,-315,842,-243,843,-119,844,-118,845,-120,846,-36,964,-298,965,-164,966,-244,967,-121,968}); - states[673] = new State(-971); - states[674] = new State(new int[]{90,-609,10,-609,96,-609,99,-609,31,-609,102,-609,2,-609,98,-609,12,-609,9,-609,97,-609,30,-609,84,-609,83,-609,82,-609,81,-609,80,-609,85,-609,13,-603}); - states[675] = new State(-610); - states[676] = new State(new int[]{125,677,8,1067}); - states[677] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,53,43,385,40,423,8,680,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,89,17,38,696,52,746,95,741,33,751,34,777,71,847,23,725,100,767,58,855,45,774,73,969},new int[]{-326,678,-208,679,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-4,692,-327,693,-251,694,-148,695,-315,842,-243,843,-119,844,-118,845,-120,846,-36,964,-298,965,-164,966,-244,967,-121,968}); - states[678] = new State(-974); - states[679] = new State(-998); - states[680] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-86,426,-98,428,-107,681,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); - states[681] = new State(new int[]{98,682,8,369,7,380,140,415,4,416,15,418,136,-765,134,-765,116,-765,115,-765,129,-765,130,-765,131,-765,132,-765,128,-765,114,-765,113,-765,126,-765,127,-765,124,-765,6,-765,5,-765,118,-765,123,-765,121,-765,119,-765,122,-765,120,-765,135,-765,16,-765,9,-765,13,-765,117,-765,11,-775,17,-775}); - states[682] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,43,385,40,423,8,425,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526},new int[]{-333,683,-107,691,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690}); + states[672] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,18,661,35,670,42,676,89,17,38,698,52,748,95,743,33,753,34,779,71,849,23,727,100,769,58,857,45,776,73,971},new int[]{-326,673,-101,512,-96,513,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,509,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,674,-113,586,-320,675,-97,646,-321,669,-328,843,-252,696,-149,697,-316,844,-244,845,-120,846,-119,847,-121,848,-35,966,-299,967,-165,968,-245,969,-122,970}); + states[673] = new State(-973); + states[674] = new State(new int[]{90,-607,10,-607,96,-607,99,-607,31,-607,102,-607,2,-607,98,-607,12,-607,9,-607,97,-607,30,-607,84,-607,83,-607,82,-607,81,-607,80,-607,85,-607,13,-601}); + states[675] = new State(-608); + states[676] = new State(new int[]{125,677,8,1069}); + states[677] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,53,43,385,40,423,8,680,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,89,17,38,698,52,748,95,743,33,753,34,779,71,849,23,727,100,769,58,857,45,776,73,971},new int[]{-327,678,-209,679,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-4,694,-328,695,-252,696,-149,697,-316,844,-244,845,-120,846,-119,847,-121,848,-35,966,-299,967,-165,968,-245,969,-122,970}); + states[678] = new State(-976); + states[679] = new State(-1000); + states[680] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603,18,661},new int[]{-85,426,-99,428,-108,681,-98,692,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602,-97,693}); + states[681] = new State(new int[]{98,682,8,369,7,380,140,415,4,416,15,418,136,-763,134,-763,116,-763,115,-763,129,-763,130,-763,131,-763,132,-763,128,-763,114,-763,113,-763,126,-763,127,-763,124,-763,6,-763,5,-763,118,-763,123,-763,121,-763,119,-763,122,-763,120,-763,135,-763,16,-763,9,-763,13,-763,117,-763,11,-773,17,-773}); + states[682] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,43,385,40,423,8,425,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526},new int[]{-334,683,-108,691,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690}); states[683] = new State(new int[]{9,684,98,687}); - states[684] = new State(new int[]{108,409,109,410,110,411,111,412,112,413},new int[]{-190,685}); - states[685] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-86,686,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); - states[686] = new State(-521); - states[687] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,43,385,40,423,8,425,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526},new int[]{-107,688,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690}); - states[688] = new State(new int[]{8,369,7,380,140,415,4,416,9,-524,98,-524,11,-775,17,-775}); - states[689] = new State(new int[]{7,44,11,-776,17,-776}); + states[684] = new State(new int[]{108,409,109,410,110,411,111,412,112,413},new int[]{-191,685}); + states[685] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-85,686,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602}); + states[686] = new State(-519); + states[687] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,43,385,40,423,8,425,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526},new int[]{-108,688,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690}); + states[688] = new State(new int[]{8,369,7,380,140,415,4,416,9,-522,98,-522,11,-773,17,-773}); + states[689] = new State(new int[]{7,44,11,-774,17,-774}); states[690] = new State(new int[]{7,530}); - states[691] = new State(new int[]{8,369,7,380,140,415,4,416,9,-523,98,-523,11,-775,17,-775}); - states[692] = new State(-999); - states[693] = new State(-1000); - states[694] = new State(-984); - states[695] = new State(-985); - states[696] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,697,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593}); - states[697] = new State(new int[]{49,698}); - states[698] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,90,-492,10,-492,96,-492,99,-492,31,-492,102,-492,2,-492,98,-492,12,-492,9,-492,97,-492,30,-492,83,-492,82,-492,81,-492,80,-492},new int[]{-256,699,-4,23,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868}); - states[699] = new State(new int[]{30,700,90,-532,10,-532,96,-532,99,-532,31,-532,102,-532,2,-532,98,-532,12,-532,9,-532,97,-532,84,-532,83,-532,82,-532,81,-532,80,-532,85,-532}); - states[700] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,90,-492,10,-492,96,-492,99,-492,31,-492,102,-492,2,-492,98,-492,12,-492,9,-492,97,-492,30,-492,83,-492,82,-492,81,-492,80,-492},new int[]{-256,701,-4,23,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868}); - states[701] = new State(-533); - states[702] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,90,-573,10,-573,96,-573,99,-573,31,-573,102,-573,2,-573,98,-573,12,-573,9,-573,97,-573,30,-573,83,-573,82,-573,81,-573,80,-573},new int[]{-142,424,-146,48,-147,51}); - states[703] = new State(new int[]{51,704,54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-86,426,-98,428,-107,681,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); - states[704] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-142,705,-146,48,-147,51}); - states[705] = new State(new int[]{98,706}); - states[706] = new State(new int[]{51,714},new int[]{-334,707}); - states[707] = new State(new int[]{9,708,98,711}); - states[708] = new State(new int[]{108,709}); - states[709] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-86,710,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); - states[710] = new State(-518); - states[711] = new State(new int[]{51,712}); - states[712] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-142,713,-146,48,-147,51}); - states[713] = new State(-526); - states[714] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-142,715,-146,48,-147,51}); - states[715] = new State(-525); - states[716] = new State(-494); - states[717] = new State(-495); - states[718] = new State(new int[]{152,720,141,47,84,49,85,50,79,52,77,53},new int[]{-138,719,-142,721,-146,48,-147,51}); - states[719] = new State(-528); - states[720] = new State(-99); - states[721] = new State(-100); - states[722] = new State(-496); - states[723] = new State(-497); - states[724] = new State(-498); - states[725] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,726,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593}); - states[726] = new State(new int[]{56,727}); - states[727] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,821,133,824,114,362,113,363,30,735,90,-552},new int[]{-37,728,-249,1064,-258,1066,-73,1057,-106,1063,-92,1062,-88,188,-89,219,-80,227,-13,232,-10,242,-14,205,-142,243,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,829,-169,828,-261,835,-265,836,-11,831,-237,837}); - states[728] = new State(new int[]{10,731,30,735,90,-552},new int[]{-249,729}); - states[729] = new State(new int[]{90,730}); - states[730] = new State(-543); - states[731] = new State(new int[]{30,735,141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,821,133,824,114,362,113,363,90,-552},new int[]{-249,732,-258,734,-73,1057,-106,1063,-92,1062,-88,188,-89,219,-80,227,-13,232,-10,242,-14,205,-142,243,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,829,-169,828,-261,835,-265,836,-11,831,-237,837}); - states[732] = new State(new int[]{90,733}); - states[733] = new State(-544); - states[734] = new State(-547); - states[735] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,739,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,10,-492,90,-492},new int[]{-248,736,-257,737,-256,22,-4,23,-108,24,-127,367,-107,496,-142,738,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868,-138,1024}); - states[736] = new State(new int[]{10,20,90,-553}); - states[737] = new State(-530); - states[738] = new State(new int[]{8,-777,7,-777,140,-777,4,-777,15,-777,17,-777,108,-777,109,-777,110,-777,111,-777,112,-777,90,-777,10,-777,11,-777,96,-777,99,-777,31,-777,102,-777,2,-777,5,-100}); - states[739] = new State(new int[]{7,-190,11,-190,17,-190,5,-99}); - states[740] = new State(-499); - states[741] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,739,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,96,-492,10,-492},new int[]{-248,742,-257,737,-256,22,-4,23,-108,24,-127,367,-107,496,-142,738,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868,-138,1024}); - states[742] = new State(new int[]{96,743,10,20}); - states[743] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-86,744,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); - states[744] = new State(-554); - states[745] = new State(-500); - states[746] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,747,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593}); - states[747] = new State(new int[]{97,1049,139,-557,141,-557,84,-557,85,-557,79,-557,77,-557,43,-557,40,-557,8,-557,19,-557,20,-557,142,-557,144,-557,143,-557,152,-557,155,-557,154,-557,153,-557,75,-557,55,-557,89,-557,38,-557,23,-557,95,-557,52,-557,33,-557,53,-557,100,-557,45,-557,34,-557,51,-557,58,-557,73,-557,71,-557,36,-557,90,-557,10,-557,96,-557,99,-557,31,-557,102,-557,2,-557,98,-557,12,-557,9,-557,30,-557,83,-557,82,-557,81,-557,80,-557},new int[]{-288,748}); - states[748] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,90,-492,10,-492,96,-492,99,-492,31,-492,102,-492,2,-492,98,-492,12,-492,9,-492,97,-492,30,-492,83,-492,82,-492,81,-492,80,-492},new int[]{-256,749,-4,23,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868}); - states[749] = new State(-555); - states[750] = new State(-501); - states[751] = new State(new int[]{51,1056,141,-567,84,-567,85,-567,79,-567,77,-567},new int[]{-19,752}); - states[752] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-142,753,-146,48,-147,51}); - states[753] = new State(new int[]{108,1052,5,1053},new int[]{-282,754}); - states[754] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,755,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593}); - states[755] = new State(new int[]{69,1050,70,1051},new int[]{-114,756}); - states[756] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,757,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593}); - states[757] = new State(new int[]{97,1049,139,-557,141,-557,84,-557,85,-557,79,-557,77,-557,43,-557,40,-557,8,-557,19,-557,20,-557,142,-557,144,-557,143,-557,152,-557,155,-557,154,-557,153,-557,75,-557,55,-557,89,-557,38,-557,23,-557,95,-557,52,-557,33,-557,53,-557,100,-557,45,-557,34,-557,51,-557,58,-557,73,-557,71,-557,36,-557,90,-557,10,-557,96,-557,99,-557,31,-557,102,-557,2,-557,98,-557,12,-557,9,-557,30,-557,83,-557,82,-557,81,-557,80,-557},new int[]{-288,758}); - states[758] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,90,-492,10,-492,96,-492,99,-492,31,-492,102,-492,2,-492,98,-492,12,-492,9,-492,97,-492,30,-492,83,-492,82,-492,81,-492,80,-492},new int[]{-256,759,-4,23,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868}); - states[759] = new State(-565); - states[760] = new State(-502); - states[761] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,5,603,18,661,35,670,42,676},new int[]{-71,762,-87,508,-86,27,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,509,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602,-319,645,-23,646,-320,669}); - states[762] = new State(new int[]{97,763,98,373}); - states[763] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,90,-492,10,-492,96,-492,99,-492,31,-492,102,-492,2,-492,98,-492,12,-492,9,-492,97,-492,30,-492,83,-492,82,-492,81,-492,80,-492},new int[]{-256,764,-4,23,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868}); - states[764] = new State(-572); - states[765] = new State(-503); - states[766] = new State(-504); - states[767] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,739,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,10,-492,99,-492,31,-492},new int[]{-248,768,-257,737,-256,22,-4,23,-108,24,-127,367,-107,496,-142,738,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868,-138,1024}); - states[768] = new State(new int[]{10,20,99,770,31,1027},new int[]{-286,769}); - states[769] = new State(-574); - states[770] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,739,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,90,-492,10,-492},new int[]{-248,771,-257,737,-256,22,-4,23,-108,24,-127,367,-107,496,-142,738,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868,-138,1024}); - states[771] = new State(new int[]{90,772,10,20}); - states[772] = new State(-575); - states[773] = new State(-505); - states[774] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603,90,-589,10,-589,96,-589,99,-589,31,-589,102,-589,2,-589,98,-589,12,-589,9,-589,97,-589,30,-589,83,-589,82,-589,81,-589,80,-589},new int[]{-86,775,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); - states[775] = new State(-590); - states[776] = new State(-506); - states[777] = new State(new int[]{51,1005,141,47,84,49,85,50,79,52,77,53},new int[]{-142,778,-146,48,-147,51}); - states[778] = new State(new int[]{5,1003,135,-564},new int[]{-270,779}); - states[779] = new State(new int[]{135,780}); - states[780] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,781,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593}); - states[781] = new State(new int[]{97,782}); - states[782] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,90,-492,10,-492,96,-492,99,-492,31,-492,102,-492,2,-492,98,-492,12,-492,9,-492,97,-492,30,-492,83,-492,82,-492,81,-492,80,-492},new int[]{-256,783,-4,23,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868}); - states[783] = new State(-559); - states[784] = new State(-507); - states[785] = new State(new int[]{8,787,141,47,84,49,85,50,79,52,77,53},new int[]{-308,786,-153,795,-142,794,-146,48,-147,51}); - states[786] = new State(-517); - states[787] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-142,788,-146,48,-147,51}); - states[788] = new State(new int[]{98,789}); - states[789] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-153,790,-142,794,-146,48,-147,51}); - states[790] = new State(new int[]{9,791,98,440}); - states[791] = new State(new int[]{108,792}); - states[792] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-86,793,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); - states[793] = new State(-519); - states[794] = new State(-345); - states[795] = new State(new int[]{5,796,98,440,108,1001}); - states[796] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-272,797,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); - states[797] = new State(new int[]{108,999,118,1000,90,-411,10,-411,96,-411,99,-411,31,-411,102,-411,2,-411,98,-411,12,-411,9,-411,97,-411,30,-411,84,-411,83,-411,82,-411,81,-411,80,-411,85,-411},new int[]{-335,798}); - states[798] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,970,133,824,114,362,113,363,61,160,35,670,42,676},new int[]{-85,799,-84,800,-83,257,-88,258,-89,219,-80,801,-13,232,-10,242,-14,205,-142,838,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,829,-169,828,-261,835,-265,836,-11,831,-237,837,-93,987,-239,988,-58,989,-320,998}); - states[799] = new State(-413); - states[800] = new State(-414); - states[801] = new State(new int[]{6,802,114,228,113,229,126,230,127,231,118,-120,123,-120,121,-120,119,-120,122,-120,120,-120,135,-120,13,-120,16,-120,90,-120,10,-120,96,-120,99,-120,31,-120,102,-120,2,-120,98,-120,12,-120,9,-120,97,-120,30,-120,84,-120,83,-120,82,-120,81,-120,80,-120,85,-120},new int[]{-189,197}); - states[802] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,821,133,824,114,362,113,363},new int[]{-13,803,-10,242,-14,205,-142,243,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,829,-169,828,-261,835,-265,836,-11,831}); - states[803] = new State(new int[]{134,233,136,234,116,235,115,236,129,237,130,238,131,239,132,240,128,241,90,-415,10,-415,96,-415,99,-415,31,-415,102,-415,2,-415,98,-415,12,-415,9,-415,97,-415,30,-415,84,-415,83,-415,82,-415,81,-415,80,-415,85,-415},new int[]{-197,199,-191,202}); - states[804] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-69,805,-76,346,-90,356,-86,349,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602}); - states[805] = new State(new int[]{75,806}); - states[806] = new State(-166); - states[807] = new State(-159); - states[808] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,818,133,824,114,362,113,363},new int[]{-10,809,-14,810,-142,243,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,826,-169,828}); - states[809] = new State(-160); - states[810] = new State(new int[]{4,207,11,209,7,811,140,813,8,814,134,-157,136,-157,116,-157,115,-157,129,-157,130,-157,131,-157,132,-157,128,-157,114,-157,113,-157,126,-157,127,-157,118,-157,123,-157,121,-157,119,-157,122,-157,120,-157,135,-157,13,-157,16,-157,6,-157,98,-157,9,-157,12,-157,5,-157,90,-157,10,-157,96,-157,99,-157,31,-157,102,-157,2,-157,97,-157,30,-157,84,-157,83,-157,82,-157,81,-157,80,-157,85,-157},new int[]{-12,206}); - states[811] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,83,56,82,57,81,58,80,59,67,60,62,61,126,62,20,63,19,64,61,65,21,66,127,67,128,68,129,69,130,70,131,71,132,72,133,73,134,74,135,75,136,76,22,77,72,78,89,79,23,80,24,81,27,82,28,83,29,84,70,85,97,86,30,87,90,88,31,89,32,90,25,91,102,92,99,93,33,94,34,95,35,96,38,97,39,98,40,99,101,100,41,101,42,102,44,103,45,104,46,105,95,106,47,107,100,108,48,109,26,110,49,111,69,112,96,113,50,114,51,115,52,116,53,117,54,118,55,119,56,120,57,121,59,122,103,123,104,124,107,125,105,126,106,127,60,128,73,129,36,130,37,131,68,132,145,133,58,134,137,135,138,136,78,137,150,138,149,139,71,140,151,141,147,142,148,143,146,144,43,146},new int[]{-133,812,-142,46,-146,48,-147,51,-289,54,-145,55,-290,145}); - states[812] = new State(-178); - states[813] = new State(-179); - states[814] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,5,603,18,661,35,670,42,676,9,-183},new int[]{-75,815,-71,817,-87,508,-86,27,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,509,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602,-319,645,-23,646,-320,669}); - states[815] = new State(new int[]{9,816}); - states[816] = new State(-180); - states[817] = new State(new int[]{98,373,9,-182}); - states[818] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,821,133,824,114,362,113,363},new int[]{-88,819,-89,219,-80,227,-13,232,-10,242,-14,205,-142,243,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,829,-169,828,-261,835,-265,836,-11,831,-237,837}); - states[819] = new State(new int[]{9,820,13,189,16,193}); - states[820] = new State(-161); - states[821] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,821,133,824,114,362,113,363},new int[]{-88,822,-89,219,-80,227,-13,232,-10,242,-14,205,-142,243,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,829,-169,828,-261,835,-265,836,-11,831,-237,837}); - states[822] = new State(new int[]{9,823,13,189,16,193}); - states[823] = new State(new int[]{134,-161,136,-161,116,-161,115,-161,129,-161,130,-161,131,-161,132,-161,128,-161,114,-161,113,-161,126,-161,127,-161,118,-161,123,-161,121,-161,119,-161,122,-161,120,-161,135,-161,13,-161,16,-161,6,-161,98,-161,9,-161,12,-161,5,-161,90,-161,10,-161,96,-161,99,-161,31,-161,102,-161,2,-161,97,-161,30,-161,84,-161,83,-161,82,-161,81,-161,80,-161,85,-161,117,-156}); - states[824] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,818,133,824,114,362,113,363},new int[]{-10,825,-14,810,-142,243,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,826,-169,828}); - states[825] = new State(-162); - states[826] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,818,133,824,114,362,113,363},new int[]{-10,827,-14,810,-142,243,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,826,-169,828}); - states[827] = new State(-163); - states[828] = new State(-164); - states[829] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,821,133,824,114,362,113,363},new int[]{-10,827,-265,830,-14,205,-142,243,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,829,-169,828,-11,831}); - states[830] = new State(-142); - states[831] = new State(new int[]{117,832}); - states[832] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,821,133,824,114,362,113,363},new int[]{-10,833,-265,834,-14,205,-142,243,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,829,-169,828,-11,831}); - states[833] = new State(-140); - states[834] = new State(-141); - states[835] = new State(-144); - states[836] = new State(-145); - states[837] = new State(-123); - states[838] = new State(new int[]{125,839,4,-169,11,-169,7,-169,140,-169,8,-169,134,-169,136,-169,116,-169,115,-169,129,-169,130,-169,131,-169,132,-169,128,-169,6,-169,114,-169,113,-169,126,-169,127,-169,118,-169,123,-169,121,-169,119,-169,122,-169,120,-169,135,-169,13,-169,16,-169,90,-169,10,-169,96,-169,99,-169,31,-169,102,-169,2,-169,98,-169,12,-169,9,-169,97,-169,30,-169,84,-169,83,-169,82,-169,81,-169,80,-169,85,-169,117,-169}); - states[839] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,18,661,35,670,42,676,89,17,38,696,52,746,95,741,33,751,34,777,71,847,23,725,100,767,58,855,45,774,73,969},new int[]{-325,840,-100,512,-97,513,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,509,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,674,-112,586,-319,675,-23,646,-320,669,-327,841,-251,694,-148,695,-315,842,-243,843,-119,844,-118,845,-120,846,-36,964,-298,965,-164,966,-244,967,-121,968}); - states[840] = new State(-417); - states[841] = new State(-997); - states[842] = new State(-986); - states[843] = new State(-987); + states[691] = new State(new int[]{8,369,7,380,140,415,4,416,9,-521,98,-521,11,-773,17,-773}); + states[692] = new State(new int[]{9,-595,98,-958}); + states[693] = new State(-959); + states[694] = new State(-1001); + states[695] = new State(-1002); + states[696] = new State(-986); + states[697] = new State(-987); + states[698] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,699,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593}); + states[699] = new State(new int[]{49,700}); + states[700] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,90,-490,10,-490,96,-490,99,-490,31,-490,102,-490,2,-490,98,-490,12,-490,9,-490,97,-490,30,-490,83,-490,82,-490,81,-490,80,-490},new int[]{-257,701,-4,23,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870}); + states[701] = new State(new int[]{30,702,90,-530,10,-530,96,-530,99,-530,31,-530,102,-530,2,-530,98,-530,12,-530,9,-530,97,-530,84,-530,83,-530,82,-530,81,-530,80,-530,85,-530}); + states[702] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,90,-490,10,-490,96,-490,99,-490,31,-490,102,-490,2,-490,98,-490,12,-490,9,-490,97,-490,30,-490,83,-490,82,-490,81,-490,80,-490},new int[]{-257,703,-4,23,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870}); + states[703] = new State(-531); + states[704] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,90,-571,10,-571,96,-571,99,-571,31,-571,102,-571,2,-571,98,-571,12,-571,9,-571,97,-571,30,-571,83,-571,82,-571,81,-571,80,-571},new int[]{-143,424,-147,48,-148,51}); + states[705] = new State(new int[]{51,706,54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603,18,661},new int[]{-85,426,-99,428,-108,681,-98,692,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602,-97,693}); + states[706] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-143,707,-147,48,-148,51}); + states[707] = new State(new int[]{98,708}); + states[708] = new State(new int[]{51,716},new int[]{-335,709}); + states[709] = new State(new int[]{9,710,98,713}); + states[710] = new State(new int[]{108,711}); + states[711] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-85,712,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602}); + states[712] = new State(-516); + states[713] = new State(new int[]{51,714}); + states[714] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-143,715,-147,48,-148,51}); + states[715] = new State(-524); + states[716] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-143,717,-147,48,-148,51}); + states[717] = new State(-523); + states[718] = new State(-492); + states[719] = new State(-493); + states[720] = new State(new int[]{152,722,141,47,84,49,85,50,79,52,77,53},new int[]{-139,721,-143,723,-147,48,-148,51}); + states[721] = new State(-526); + states[722] = new State(-99); + states[723] = new State(-100); + states[724] = new State(-494); + states[725] = new State(-495); + states[726] = new State(-496); + states[727] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,728,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593}); + states[728] = new State(new int[]{56,729}); + states[729] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,806,54,809,139,810,8,823,133,826,114,362,113,363,30,737,90,-550},new int[]{-36,730,-250,1066,-259,1068,-72,1059,-107,1065,-91,1064,-87,188,-88,219,-79,227,-13,232,-10,242,-14,205,-143,243,-147,48,-148,51,-161,259,-163,148,-162,152,-16,260,-254,263,-292,268,-236,342,-196,831,-170,830,-262,837,-266,838,-11,833,-238,839}); + states[730] = new State(new int[]{10,733,30,737,90,-550},new int[]{-250,731}); + states[731] = new State(new int[]{90,732}); + states[732] = new State(-541); + states[733] = new State(new int[]{30,737,141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,806,54,809,139,810,8,823,133,826,114,362,113,363,90,-550},new int[]{-250,734,-259,736,-72,1059,-107,1065,-91,1064,-87,188,-88,219,-79,227,-13,232,-10,242,-14,205,-143,243,-147,48,-148,51,-161,259,-163,148,-162,152,-16,260,-254,263,-292,268,-236,342,-196,831,-170,830,-262,837,-266,838,-11,833,-238,839}); + states[734] = new State(new int[]{90,735}); + states[735] = new State(-542); + states[736] = new State(-545); + states[737] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,741,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,10,-490,90,-490},new int[]{-249,738,-258,739,-257,22,-4,23,-109,24,-128,367,-108,496,-143,740,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870,-139,1026}); + states[738] = new State(new int[]{10,20,90,-551}); + states[739] = new State(-528); + states[740] = new State(new int[]{8,-775,7,-775,140,-775,4,-775,15,-775,17,-775,108,-775,109,-775,110,-775,111,-775,112,-775,90,-775,10,-775,11,-775,96,-775,99,-775,31,-775,102,-775,2,-775,5,-100}); + states[741] = new State(new int[]{7,-188,11,-188,17,-188,5,-99}); + states[742] = new State(-497); + states[743] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,741,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,96,-490,10,-490},new int[]{-249,744,-258,739,-257,22,-4,23,-109,24,-128,367,-108,496,-143,740,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870,-139,1026}); + states[744] = new State(new int[]{96,745,10,20}); + states[745] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-85,746,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602}); + states[746] = new State(-552); + states[747] = new State(-498); + states[748] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,749,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593}); + states[749] = new State(new int[]{97,1051,139,-555,141,-555,84,-555,85,-555,79,-555,77,-555,43,-555,40,-555,8,-555,19,-555,20,-555,142,-555,144,-555,143,-555,152,-555,155,-555,154,-555,153,-555,75,-555,55,-555,89,-555,38,-555,23,-555,95,-555,52,-555,33,-555,53,-555,100,-555,45,-555,34,-555,51,-555,58,-555,73,-555,71,-555,36,-555,90,-555,10,-555,96,-555,99,-555,31,-555,102,-555,2,-555,98,-555,12,-555,9,-555,30,-555,83,-555,82,-555,81,-555,80,-555},new int[]{-289,750}); + states[750] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,90,-490,10,-490,96,-490,99,-490,31,-490,102,-490,2,-490,98,-490,12,-490,9,-490,97,-490,30,-490,83,-490,82,-490,81,-490,80,-490},new int[]{-257,751,-4,23,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870}); + states[751] = new State(-553); + states[752] = new State(-499); + states[753] = new State(new int[]{51,1058,141,-565,84,-565,85,-565,79,-565,77,-565},new int[]{-19,754}); + states[754] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-143,755,-147,48,-148,51}); + states[755] = new State(new int[]{108,1054,5,1055},new int[]{-283,756}); + states[756] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,757,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593}); + states[757] = new State(new int[]{69,1052,70,1053},new int[]{-115,758}); + states[758] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,759,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593}); + states[759] = new State(new int[]{97,1051,139,-555,141,-555,84,-555,85,-555,79,-555,77,-555,43,-555,40,-555,8,-555,19,-555,20,-555,142,-555,144,-555,143,-555,152,-555,155,-555,154,-555,153,-555,75,-555,55,-555,89,-555,38,-555,23,-555,95,-555,52,-555,33,-555,53,-555,100,-555,45,-555,34,-555,51,-555,58,-555,73,-555,71,-555,36,-555,90,-555,10,-555,96,-555,99,-555,31,-555,102,-555,2,-555,98,-555,12,-555,9,-555,30,-555,83,-555,82,-555,81,-555,80,-555},new int[]{-289,760}); + states[760] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,90,-490,10,-490,96,-490,99,-490,31,-490,102,-490,2,-490,98,-490,12,-490,9,-490,97,-490,30,-490,83,-490,82,-490,81,-490,80,-490},new int[]{-257,761,-4,23,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870}); + states[761] = new State(-563); + states[762] = new State(-500); + states[763] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,5,603,18,661,35,670,42,676},new int[]{-70,764,-86,508,-85,27,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,509,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602,-320,645,-97,646,-321,669}); + states[764] = new State(new int[]{97,765,98,373}); + states[765] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,90,-490,10,-490,96,-490,99,-490,31,-490,102,-490,2,-490,98,-490,12,-490,9,-490,97,-490,30,-490,83,-490,82,-490,81,-490,80,-490},new int[]{-257,766,-4,23,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870}); + states[766] = new State(-570); + states[767] = new State(-501); + states[768] = new State(-502); + states[769] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,741,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,10,-490,99,-490,31,-490},new int[]{-249,770,-258,739,-257,22,-4,23,-109,24,-128,367,-108,496,-143,740,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870,-139,1026}); + states[770] = new State(new int[]{10,20,99,772,31,1029},new int[]{-287,771}); + states[771] = new State(-572); + states[772] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,741,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,90,-490,10,-490},new int[]{-249,773,-258,739,-257,22,-4,23,-109,24,-128,367,-108,496,-143,740,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870,-139,1026}); + states[773] = new State(new int[]{90,774,10,20}); + states[774] = new State(-573); + states[775] = new State(-503); + states[776] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603,90,-587,10,-587,96,-587,99,-587,31,-587,102,-587,2,-587,98,-587,12,-587,9,-587,97,-587,30,-587,83,-587,82,-587,81,-587,80,-587},new int[]{-85,777,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602}); + states[777] = new State(-588); + states[778] = new State(-504); + states[779] = new State(new int[]{51,1007,141,47,84,49,85,50,79,52,77,53},new int[]{-143,780,-147,48,-148,51}); + states[780] = new State(new int[]{5,1005,135,-562},new int[]{-271,781}); + states[781] = new State(new int[]{135,782}); + states[782] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,783,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593}); + states[783] = new State(new int[]{97,784}); + states[784] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,90,-490,10,-490,96,-490,99,-490,31,-490,102,-490,2,-490,98,-490,12,-490,9,-490,97,-490,30,-490,83,-490,82,-490,81,-490,80,-490},new int[]{-257,785,-4,23,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870}); + states[785] = new State(-557); + states[786] = new State(-505); + states[787] = new State(new int[]{8,789,141,47,84,49,85,50,79,52,77,53},new int[]{-309,788,-154,797,-143,796,-147,48,-148,51}); + states[788] = new State(-515); + states[789] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-143,790,-147,48,-148,51}); + states[790] = new State(new int[]{98,791}); + states[791] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-154,792,-143,796,-147,48,-148,51}); + states[792] = new State(new int[]{9,793,98,440}); + states[793] = new State(new int[]{108,794}); + states[794] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-85,795,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602}); + states[795] = new State(-517); + states[796] = new State(-343); + states[797] = new State(new int[]{5,798,98,440,108,1003}); + states[798] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-273,799,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); + states[799] = new State(new int[]{108,1001,118,1002,90,-409,10,-409,96,-409,99,-409,31,-409,102,-409,2,-409,98,-409,12,-409,9,-409,97,-409,30,-409,84,-409,83,-409,82,-409,81,-409,80,-409,85,-409},new int[]{-336,800}); + states[800] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,806,54,809,139,810,8,972,133,826,114,362,113,363,61,160,35,670,42,676},new int[]{-84,801,-83,802,-82,257,-87,258,-88,219,-79,803,-13,232,-10,242,-14,205,-143,840,-147,48,-148,51,-161,259,-163,148,-162,152,-16,260,-254,263,-292,268,-236,342,-196,831,-170,830,-262,837,-266,838,-11,833,-238,839,-92,989,-240,990,-57,991,-321,1000}); + states[801] = new State(-411); + states[802] = new State(-412); + states[803] = new State(new int[]{6,804,114,228,113,229,126,230,127,231,118,-118,123,-118,121,-118,119,-118,122,-118,120,-118,135,-118,13,-118,16,-118,90,-118,10,-118,96,-118,99,-118,31,-118,102,-118,2,-118,98,-118,12,-118,9,-118,97,-118,30,-118,84,-118,83,-118,82,-118,81,-118,80,-118,85,-118},new int[]{-190,197}); + states[804] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,806,54,809,139,810,8,823,133,826,114,362,113,363},new int[]{-13,805,-10,242,-14,205,-143,243,-147,48,-148,51,-161,259,-163,148,-162,152,-16,260,-254,263,-292,268,-236,342,-196,831,-170,830,-262,837,-266,838,-11,833}); + states[805] = new State(new int[]{134,233,136,234,116,235,115,236,129,237,130,238,131,239,132,240,128,241,90,-413,10,-413,96,-413,99,-413,31,-413,102,-413,2,-413,98,-413,12,-413,9,-413,97,-413,30,-413,84,-413,83,-413,82,-413,81,-413,80,-413,85,-413},new int[]{-198,199,-192,202}); + states[806] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594,5,603},new int[]{-68,807,-75,346,-89,356,-85,349,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602}); + states[807] = new State(new int[]{75,808}); + states[808] = new State(-164); + states[809] = new State(-157); + states[810] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,806,54,809,139,810,8,820,133,826,114,362,113,363},new int[]{-10,811,-14,812,-143,243,-147,48,-148,51,-161,259,-163,148,-162,152,-16,260,-254,263,-292,268,-236,342,-196,828,-170,830}); + states[811] = new State(-158); + states[812] = new State(new int[]{4,207,11,209,7,813,140,815,8,816,134,-155,136,-155,116,-155,115,-155,129,-155,130,-155,131,-155,132,-155,128,-155,114,-155,113,-155,126,-155,127,-155,118,-155,123,-155,121,-155,119,-155,122,-155,120,-155,135,-155,13,-155,16,-155,6,-155,98,-155,9,-155,12,-155,5,-155,90,-155,10,-155,96,-155,99,-155,31,-155,102,-155,2,-155,97,-155,30,-155,84,-155,83,-155,82,-155,81,-155,80,-155,85,-155},new int[]{-12,206}); + states[813] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,83,56,82,57,81,58,80,59,67,60,62,61,126,62,20,63,19,64,61,65,21,66,127,67,128,68,129,69,130,70,131,71,132,72,133,73,134,74,135,75,136,76,22,77,72,78,89,79,23,80,24,81,27,82,28,83,29,84,70,85,97,86,30,87,90,88,31,89,32,90,25,91,102,92,99,93,33,94,34,95,35,96,38,97,39,98,40,99,101,100,41,101,42,102,44,103,45,104,46,105,95,106,47,107,100,108,48,109,26,110,49,111,69,112,96,113,50,114,51,115,52,116,53,117,54,118,55,119,56,120,57,121,59,122,103,123,104,124,107,125,105,126,106,127,60,128,73,129,36,130,37,131,68,132,145,133,58,134,137,135,138,136,78,137,150,138,149,139,71,140,151,141,147,142,148,143,146,144,43,146},new int[]{-134,814,-143,46,-147,48,-148,51,-290,54,-146,55,-291,145}); + states[814] = new State(-176); + states[815] = new State(-177); + states[816] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,5,603,18,661,35,670,42,676,9,-181},new int[]{-74,817,-70,819,-86,508,-85,27,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,509,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602,-320,645,-97,646,-321,669}); + states[817] = new State(new int[]{9,818}); + states[818] = new State(-178); + states[819] = new State(new int[]{98,373,9,-180}); + states[820] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,806,54,809,139,810,8,823,133,826,114,362,113,363},new int[]{-87,821,-88,219,-79,227,-13,232,-10,242,-14,205,-143,243,-147,48,-148,51,-161,259,-163,148,-162,152,-16,260,-254,263,-292,268,-236,342,-196,831,-170,830,-262,837,-266,838,-11,833,-238,839}); + states[821] = new State(new int[]{9,822,13,189,16,193}); + states[822] = new State(-159); + states[823] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,806,54,809,139,810,8,823,133,826,114,362,113,363},new int[]{-87,824,-88,219,-79,227,-13,232,-10,242,-14,205,-143,243,-147,48,-148,51,-161,259,-163,148,-162,152,-16,260,-254,263,-292,268,-236,342,-196,831,-170,830,-262,837,-266,838,-11,833,-238,839}); + states[824] = new State(new int[]{9,825,13,189,16,193}); + states[825] = new State(new int[]{134,-159,136,-159,116,-159,115,-159,129,-159,130,-159,131,-159,132,-159,128,-159,114,-159,113,-159,126,-159,127,-159,118,-159,123,-159,121,-159,119,-159,122,-159,120,-159,135,-159,13,-159,16,-159,6,-159,98,-159,9,-159,12,-159,5,-159,90,-159,10,-159,96,-159,99,-159,31,-159,102,-159,2,-159,97,-159,30,-159,84,-159,83,-159,82,-159,81,-159,80,-159,85,-159,117,-154}); + states[826] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,806,54,809,139,810,8,820,133,826,114,362,113,363},new int[]{-10,827,-14,812,-143,243,-147,48,-148,51,-161,259,-163,148,-162,152,-16,260,-254,263,-292,268,-236,342,-196,828,-170,830}); + states[827] = new State(-160); + states[828] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,806,54,809,139,810,8,820,133,826,114,362,113,363},new int[]{-10,829,-14,812,-143,243,-147,48,-148,51,-161,259,-163,148,-162,152,-16,260,-254,263,-292,268,-236,342,-196,828,-170,830}); + states[829] = new State(-161); + states[830] = new State(-162); + states[831] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,806,54,809,139,810,8,823,133,826,114,362,113,363},new int[]{-10,829,-266,832,-14,205,-143,243,-147,48,-148,51,-161,259,-163,148,-162,152,-16,260,-254,263,-292,268,-236,342,-196,831,-170,830,-11,833}); + states[832] = new State(-140); + states[833] = new State(new int[]{117,834}); + states[834] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,806,54,809,139,810,8,823,133,826,114,362,113,363},new int[]{-10,835,-266,836,-14,205,-143,243,-147,48,-148,51,-161,259,-163,148,-162,152,-16,260,-254,263,-292,268,-236,342,-196,831,-170,830,-11,833}); + states[835] = new State(-138); + states[836] = new State(-139); + states[837] = new State(-142); + states[838] = new State(-143); + states[839] = new State(-121); + states[840] = new State(new int[]{125,841,4,-167,11,-167,7,-167,140,-167,8,-167,134,-167,136,-167,116,-167,115,-167,129,-167,130,-167,131,-167,132,-167,128,-167,6,-167,114,-167,113,-167,126,-167,127,-167,118,-167,123,-167,121,-167,119,-167,122,-167,120,-167,135,-167,13,-167,16,-167,90,-167,10,-167,96,-167,99,-167,31,-167,102,-167,2,-167,98,-167,12,-167,9,-167,97,-167,30,-167,84,-167,83,-167,82,-167,81,-167,80,-167,85,-167,117,-167}); + states[841] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,18,661,35,670,42,676,89,17,38,698,52,748,95,743,33,753,34,779,71,849,23,727,100,769,58,857,45,776,73,971},new int[]{-326,842,-101,512,-96,513,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,509,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,674,-113,586,-320,675,-97,646,-321,669,-328,843,-252,696,-149,697,-316,844,-244,845,-120,846,-119,847,-121,848,-35,966,-299,967,-165,968,-245,969,-122,970}); + states[842] = new State(-415); + states[843] = new State(-999); states[844] = new State(-988); states[845] = new State(-989); states[846] = new State(-990); - states[847] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,848,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593}); - states[848] = new State(new int[]{97,849}); - states[849] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,90,-492,10,-492,96,-492,99,-492,31,-492,102,-492,2,-492,98,-492,12,-492,9,-492,97,-492,30,-492,83,-492,82,-492,81,-492,80,-492},new int[]{-256,850,-4,23,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868}); - states[850] = new State(-514); - states[851] = new State(-508); - states[852] = new State(-593); - states[853] = new State(-594); - states[854] = new State(-509); - states[855] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,856,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593}); - states[856] = new State(new int[]{97,857}); - states[857] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,90,-492,10,-492,96,-492,99,-492,31,-492,102,-492,2,-492,98,-492,12,-492,9,-492,97,-492,30,-492,83,-492,82,-492,81,-492,80,-492},new int[]{-256,858,-4,23,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868}); - states[858] = new State(-558); - states[859] = new State(-510); - states[860] = new State(new int[]{72,862,54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,18,661,35,670,42,676},new int[]{-99,861,-98,864,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,509,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-319,865,-23,646,-320,669}); - states[861] = new State(-515); - states[862] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,18,661,35,670,42,676},new int[]{-99,863,-98,864,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,509,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-319,865,-23,646,-320,669}); - states[863] = new State(-516); - states[864] = new State(-606); - states[865] = new State(-607); - states[866] = new State(-511); - states[867] = new State(-512); - states[868] = new State(-513); - states[869] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,870,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593}); - states[870] = new State(new int[]{53,871}); - states[871] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,142,150,144,151,143,153,152,155,155,156,154,157,153,158,54,949,19,264,20,269,11,909,8,922},new int[]{-347,872,-346,963,-339,879,-280,884,-176,164,-142,201,-146,48,-147,51,-338,941,-354,944,-336,952,-15,947,-160,147,-162,148,-161,152,-16,154,-253,950,-291,951,-340,953,-341,956}); - states[872] = new State(new int[]{10,875,30,735,90,-552},new int[]{-249,873}); - states[873] = new State(new int[]{90,874}); - states[874] = new State(-534); - states[875] = new State(new int[]{30,735,141,47,84,49,85,50,79,52,77,53,142,150,144,151,143,153,152,155,155,156,154,157,153,158,54,949,19,264,20,269,11,909,8,922,90,-552},new int[]{-249,876,-346,878,-339,879,-280,884,-176,164,-142,201,-146,48,-147,51,-338,941,-354,944,-336,952,-15,947,-160,147,-162,148,-161,152,-16,154,-253,950,-291,951,-340,953,-341,956}); - states[876] = new State(new int[]{90,877}); - states[877] = new State(-535); - states[878] = new State(-537); - states[879] = new State(new int[]{37,880}); - states[880] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,881,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593}); - states[881] = new State(new int[]{5,882}); - states[882] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,10,-492,30,-492,90,-492},new int[]{-256,883,-4,23,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868}); - states[883] = new State(-538); - states[884] = new State(new int[]{8,885,98,-645,5,-645}); - states[885] = new State(new int[]{14,890,142,150,144,151,143,153,152,155,155,156,154,157,153,158,114,362,113,363,141,47,84,49,85,50,79,52,77,53,51,897,11,909,8,922},new int[]{-351,886,-349,940,-15,891,-160,147,-162,148,-161,152,-16,154,-195,892,-142,894,-146,48,-147,51,-339,901,-280,902,-176,164,-340,908,-341,939}); - states[886] = new State(new int[]{9,887,10,888,98,906}); - states[887] = new State(new int[]{37,-639,5,-640}); - states[888] = new State(new int[]{14,890,142,150,144,151,143,153,152,155,155,156,154,157,153,158,114,362,113,363,141,47,84,49,85,50,79,52,77,53,51,897,11,909,8,922},new int[]{-349,889,-15,891,-160,147,-162,148,-161,152,-16,154,-195,892,-142,894,-146,48,-147,51,-339,901,-280,902,-176,164,-340,908,-341,939}); - states[889] = new State(-671); - states[890] = new State(-683); - states[891] = new State(-684); - states[892] = new State(new int[]{142,150,144,151,143,153,152,155,155,156,154,157,153,158},new int[]{-15,893,-160,147,-162,148,-161,152,-16,154}); - states[893] = new State(-685); - states[894] = new State(new int[]{5,895,9,-687,10,-687,98,-687,7,-260,4,-260,121,-260,8,-260}); - states[895] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-272,896,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); - states[896] = new State(-686); - states[897] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-142,898,-146,48,-147,51}); - states[898] = new State(new int[]{5,899,9,-689,10,-689,98,-689}); - states[899] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-272,900,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); - states[900] = new State(-688); - states[901] = new State(-690); - states[902] = new State(new int[]{8,903}); - states[903] = new State(new int[]{14,890,142,150,144,151,143,153,152,155,155,156,154,157,153,158,114,362,113,363,141,47,84,49,85,50,79,52,77,53,51,897,11,909,8,922},new int[]{-351,904,-349,940,-15,891,-160,147,-162,148,-161,152,-16,154,-195,892,-142,894,-146,48,-147,51,-339,901,-280,902,-176,164,-340,908,-341,939}); - states[904] = new State(new int[]{9,905,10,888,98,906}); - states[905] = new State(-639); - states[906] = new State(new int[]{14,890,142,150,144,151,143,153,152,155,155,156,154,157,153,158,114,362,113,363,141,47,84,49,85,50,79,52,77,53,51,897,11,909,8,922},new int[]{-349,907,-15,891,-160,147,-162,148,-161,152,-16,154,-195,892,-142,894,-146,48,-147,51,-339,901,-280,902,-176,164,-340,908,-341,939}); - states[907] = new State(-672); - states[908] = new State(-691); - states[909] = new State(new int[]{142,150,144,151,143,153,152,155,155,156,154,157,153,158,51,916,14,918,141,47,84,49,85,50,79,52,77,53,11,909,8,922,6,937},new int[]{-352,910,-342,938,-15,914,-160,147,-162,148,-161,152,-16,154,-344,915,-339,919,-280,902,-176,164,-142,201,-146,48,-147,51,-340,920,-341,921}); - states[910] = new State(new int[]{12,911,98,912}); - states[911] = new State(-649); - states[912] = new State(new int[]{142,150,144,151,143,153,152,155,155,156,154,157,153,158,51,916,14,918,141,47,84,49,85,50,79,52,77,53,11,909,8,922,6,937},new int[]{-342,913,-15,914,-160,147,-162,148,-161,152,-16,154,-344,915,-339,919,-280,902,-176,164,-142,201,-146,48,-147,51,-340,920,-341,921}); - states[913] = new State(-651); - states[914] = new State(-652); - states[915] = new State(-653); - states[916] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-142,917,-146,48,-147,51}); - states[917] = new State(-659); - states[918] = new State(-654); - states[919] = new State(-655); - states[920] = new State(-656); - states[921] = new State(-657); - states[922] = new State(new int[]{14,927,142,150,144,151,143,153,152,155,155,156,154,157,153,158,114,362,113,363,51,931,141,47,84,49,85,50,79,52,77,53,11,909,8,922},new int[]{-353,923,-343,936,-15,928,-160,147,-162,148,-161,152,-16,154,-195,929,-339,933,-280,902,-176,164,-142,201,-146,48,-147,51,-340,934,-341,935}); - states[923] = new State(new int[]{9,924,98,925}); - states[924] = new State(-660); - states[925] = new State(new int[]{14,927,142,150,144,151,143,153,152,155,155,156,154,157,153,158,114,362,113,363,51,931,141,47,84,49,85,50,79,52,77,53,11,909,8,922},new int[]{-343,926,-15,928,-160,147,-162,148,-161,152,-16,154,-195,929,-339,933,-280,902,-176,164,-142,201,-146,48,-147,51,-340,934,-341,935}); - states[926] = new State(-669); - states[927] = new State(-661); - states[928] = new State(-662); - states[929] = new State(new int[]{142,150,144,151,143,153,152,155,155,156,154,157,153,158},new int[]{-15,930,-160,147,-162,148,-161,152,-16,154}); - states[930] = new State(-663); - states[931] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-142,932,-146,48,-147,51}); - states[932] = new State(-664); - states[933] = new State(-665); - states[934] = new State(-666); - states[935] = new State(-667); - states[936] = new State(-668); - states[937] = new State(-658); - states[938] = new State(-650); - states[939] = new State(-692); - states[940] = new State(-670); - states[941] = new State(new int[]{5,942}); - states[942] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,10,-492,30,-492,90,-492},new int[]{-256,943,-4,23,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868}); - states[943] = new State(-539); - states[944] = new State(new int[]{98,945,5,-641}); - states[945] = new State(new int[]{142,150,144,151,143,153,152,155,155,156,154,157,153,158,141,47,84,49,85,50,79,52,77,53,54,949,19,264,20,269},new int[]{-336,946,-15,947,-160,147,-162,148,-161,152,-16,154,-280,948,-176,164,-142,201,-146,48,-147,51,-253,950,-291,951}); - states[946] = new State(-643); - states[947] = new State(-644); - states[948] = new State(-645); - states[949] = new State(-646); - states[950] = new State(-647); - states[951] = new State(-648); - states[952] = new State(-642); - states[953] = new State(new int[]{5,954}); - states[954] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,10,-492,30,-492,90,-492},new int[]{-256,955,-4,23,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868}); - states[955] = new State(-540); - states[956] = new State(new int[]{37,957,5,961}); - states[957] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,958,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593}); - states[958] = new State(new int[]{5,959}); - states[959] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,10,-492,30,-492,90,-492},new int[]{-256,960,-4,23,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868}); - states[960] = new State(-541); - states[961] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,10,-492,30,-492,90,-492},new int[]{-256,962,-4,23,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868}); - states[962] = new State(-542); - states[963] = new State(-536); - states[964] = new State(-991); - states[965] = new State(-992); + states[847] = new State(-991); + states[848] = new State(-992); + states[849] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,850,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593}); + states[850] = new State(new int[]{97,851}); + states[851] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,90,-490,10,-490,96,-490,99,-490,31,-490,102,-490,2,-490,98,-490,12,-490,9,-490,97,-490,30,-490,83,-490,82,-490,81,-490,80,-490},new int[]{-257,852,-4,23,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870}); + states[852] = new State(-512); + states[853] = new State(-506); + states[854] = new State(-591); + states[855] = new State(-592); + states[856] = new State(-507); + states[857] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,858,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593}); + states[858] = new State(new int[]{97,859}); + states[859] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,90,-490,10,-490,96,-490,99,-490,31,-490,102,-490,2,-490,98,-490,12,-490,9,-490,97,-490,30,-490,83,-490,82,-490,81,-490,80,-490},new int[]{-257,860,-4,23,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870}); + states[860] = new State(-556); + states[861] = new State(-508); + states[862] = new State(new int[]{72,864,54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,18,661,35,670,42,676},new int[]{-100,863,-98,866,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,509,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-320,867,-97,646,-321,669}); + states[863] = new State(-513); + states[864] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,18,661,35,670,42,676},new int[]{-100,865,-98,866,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,509,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-320,867,-97,646,-321,669}); + states[865] = new State(-514); + states[866] = new State(-604); + states[867] = new State(-605); + states[868] = new State(-509); + states[869] = new State(-510); + states[870] = new State(-511); + states[871] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,872,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593}); + states[872] = new State(new int[]{53,873}); + states[873] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,142,150,144,151,143,153,152,155,155,156,154,157,153,158,54,951,19,264,20,269,11,911,8,924},new int[]{-348,874,-347,965,-340,881,-281,886,-177,164,-143,201,-147,48,-148,51,-339,943,-355,946,-337,954,-15,949,-161,147,-163,148,-162,152,-16,154,-254,952,-292,953,-341,955,-342,958}); + states[874] = new State(new int[]{10,877,30,737,90,-550},new int[]{-250,875}); + states[875] = new State(new int[]{90,876}); + states[876] = new State(-532); + states[877] = new State(new int[]{30,737,141,47,84,49,85,50,79,52,77,53,142,150,144,151,143,153,152,155,155,156,154,157,153,158,54,951,19,264,20,269,11,911,8,924,90,-550},new int[]{-250,878,-347,880,-340,881,-281,886,-177,164,-143,201,-147,48,-148,51,-339,943,-355,946,-337,954,-15,949,-161,147,-163,148,-162,152,-16,154,-254,952,-292,953,-341,955,-342,958}); + states[878] = new State(new int[]{90,879}); + states[879] = new State(-533); + states[880] = new State(-535); + states[881] = new State(new int[]{37,882}); + states[882] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,883,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593}); + states[883] = new State(new int[]{5,884}); + states[884] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,10,-490,30,-490,90,-490},new int[]{-257,885,-4,23,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870}); + states[885] = new State(-536); + states[886] = new State(new int[]{8,887,98,-643,5,-643}); + states[887] = new State(new int[]{14,892,142,150,144,151,143,153,152,155,155,156,154,157,153,158,114,362,113,363,141,47,84,49,85,50,79,52,77,53,51,899,11,911,8,924},new int[]{-352,888,-350,942,-15,893,-161,147,-163,148,-162,152,-16,154,-196,894,-143,896,-147,48,-148,51,-340,903,-281,904,-177,164,-341,910,-342,941}); + states[888] = new State(new int[]{9,889,10,890,98,908}); + states[889] = new State(new int[]{37,-637,5,-638}); + states[890] = new State(new int[]{14,892,142,150,144,151,143,153,152,155,155,156,154,157,153,158,114,362,113,363,141,47,84,49,85,50,79,52,77,53,51,899,11,911,8,924},new int[]{-350,891,-15,893,-161,147,-163,148,-162,152,-16,154,-196,894,-143,896,-147,48,-148,51,-340,903,-281,904,-177,164,-341,910,-342,941}); + states[891] = new State(-669); + states[892] = new State(-681); + states[893] = new State(-682); + states[894] = new State(new int[]{142,150,144,151,143,153,152,155,155,156,154,157,153,158},new int[]{-15,895,-161,147,-163,148,-162,152,-16,154}); + states[895] = new State(-683); + states[896] = new State(new int[]{5,897,9,-685,10,-685,98,-685,7,-258,4,-258,121,-258,8,-258}); + states[897] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-273,898,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); + states[898] = new State(-684); + states[899] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-143,900,-147,48,-148,51}); + states[900] = new State(new int[]{5,901,9,-687,10,-687,98,-687}); + states[901] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-273,902,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); + states[902] = new State(-686); + states[903] = new State(-688); + states[904] = new State(new int[]{8,905}); + states[905] = new State(new int[]{14,892,142,150,144,151,143,153,152,155,155,156,154,157,153,158,114,362,113,363,141,47,84,49,85,50,79,52,77,53,51,899,11,911,8,924},new int[]{-352,906,-350,942,-15,893,-161,147,-163,148,-162,152,-16,154,-196,894,-143,896,-147,48,-148,51,-340,903,-281,904,-177,164,-341,910,-342,941}); + states[906] = new State(new int[]{9,907,10,890,98,908}); + states[907] = new State(-637); + states[908] = new State(new int[]{14,892,142,150,144,151,143,153,152,155,155,156,154,157,153,158,114,362,113,363,141,47,84,49,85,50,79,52,77,53,51,899,11,911,8,924},new int[]{-350,909,-15,893,-161,147,-163,148,-162,152,-16,154,-196,894,-143,896,-147,48,-148,51,-340,903,-281,904,-177,164,-341,910,-342,941}); + states[909] = new State(-670); + states[910] = new State(-689); + states[911] = new State(new int[]{142,150,144,151,143,153,152,155,155,156,154,157,153,158,51,918,14,920,141,47,84,49,85,50,79,52,77,53,11,911,8,924,6,939},new int[]{-353,912,-343,940,-15,916,-161,147,-163,148,-162,152,-16,154,-345,917,-340,921,-281,904,-177,164,-143,201,-147,48,-148,51,-341,922,-342,923}); + states[912] = new State(new int[]{12,913,98,914}); + states[913] = new State(-647); + states[914] = new State(new int[]{142,150,144,151,143,153,152,155,155,156,154,157,153,158,51,918,14,920,141,47,84,49,85,50,79,52,77,53,11,911,8,924,6,939},new int[]{-343,915,-15,916,-161,147,-163,148,-162,152,-16,154,-345,917,-340,921,-281,904,-177,164,-143,201,-147,48,-148,51,-341,922,-342,923}); + states[915] = new State(-649); + states[916] = new State(-650); + states[917] = new State(-651); + states[918] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-143,919,-147,48,-148,51}); + states[919] = new State(-657); + states[920] = new State(-652); + states[921] = new State(-653); + states[922] = new State(-654); + states[923] = new State(-655); + states[924] = new State(new int[]{14,929,142,150,144,151,143,153,152,155,155,156,154,157,153,158,114,362,113,363,51,933,141,47,84,49,85,50,79,52,77,53,11,911,8,924},new int[]{-354,925,-344,938,-15,930,-161,147,-163,148,-162,152,-16,154,-196,931,-340,935,-281,904,-177,164,-143,201,-147,48,-148,51,-341,936,-342,937}); + states[925] = new State(new int[]{9,926,98,927}); + states[926] = new State(-658); + states[927] = new State(new int[]{14,929,142,150,144,151,143,153,152,155,155,156,154,157,153,158,114,362,113,363,51,933,141,47,84,49,85,50,79,52,77,53,11,911,8,924},new int[]{-344,928,-15,930,-161,147,-163,148,-162,152,-16,154,-196,931,-340,935,-281,904,-177,164,-143,201,-147,48,-148,51,-341,936,-342,937}); + states[928] = new State(-667); + states[929] = new State(-659); + states[930] = new State(-660); + states[931] = new State(new int[]{142,150,144,151,143,153,152,155,155,156,154,157,153,158},new int[]{-15,932,-161,147,-163,148,-162,152,-16,154}); + states[932] = new State(-661); + states[933] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-143,934,-147,48,-148,51}); + states[934] = new State(-662); + states[935] = new State(-663); + states[936] = new State(-664); + states[937] = new State(-665); + states[938] = new State(-666); + states[939] = new State(-656); + states[940] = new State(-648); + states[941] = new State(-690); + states[942] = new State(-668); + states[943] = new State(new int[]{5,944}); + states[944] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,10,-490,30,-490,90,-490},new int[]{-257,945,-4,23,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870}); + states[945] = new State(-537); + states[946] = new State(new int[]{98,947,5,-639}); + states[947] = new State(new int[]{142,150,144,151,143,153,152,155,155,156,154,157,153,158,141,47,84,49,85,50,79,52,77,53,54,951,19,264,20,269},new int[]{-337,948,-15,949,-161,147,-163,148,-162,152,-16,154,-281,950,-177,164,-143,201,-147,48,-148,51,-254,952,-292,953}); + states[948] = new State(-641); + states[949] = new State(-642); + states[950] = new State(-643); + states[951] = new State(-644); + states[952] = new State(-645); + states[953] = new State(-646); + states[954] = new State(-640); + states[955] = new State(new int[]{5,956}); + states[956] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,10,-490,30,-490,90,-490},new int[]{-257,957,-4,23,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870}); + states[957] = new State(-538); + states[958] = new State(new int[]{37,959,5,963}); + states[959] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,960,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593}); + states[960] = new State(new int[]{5,961}); + states[961] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,10,-490,30,-490,90,-490},new int[]{-257,962,-4,23,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870}); + states[962] = new State(-539); + states[963] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,10,-490,30,-490,90,-490},new int[]{-257,964,-4,23,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870}); + states[964] = new State(-540); + states[965] = new State(-534); states[966] = new State(-993); states[967] = new State(-994); states[968] = new State(-995); - states[969] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,18,661,35,670,42,676},new int[]{-99,861,-98,864,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,509,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-319,865,-23,646,-320,669}); - states[970] = new State(new int[]{9,978,141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,983,133,824,114,362,113,363,61,160},new int[]{-88,971,-67,972,-241,976,-89,219,-80,227,-13,232,-10,242,-14,205,-142,982,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,829,-169,828,-261,835,-265,836,-11,831,-237,837,-66,254,-84,986,-83,257,-93,987,-239,988,-58,989,-240,990,-242,997,-131,993}); - states[971] = new State(new int[]{9,823,13,189,16,193,98,-194}); - states[972] = new State(new int[]{9,973}); - states[973] = new State(new int[]{125,974,90,-197,10,-197,96,-197,99,-197,31,-197,102,-197,2,-197,98,-197,12,-197,9,-197,97,-197,30,-197,84,-197,83,-197,82,-197,81,-197,80,-197,85,-197}); - states[974] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,18,661,35,670,42,676,89,17,38,696,52,746,95,741,33,751,34,777,71,847,23,725,100,767,58,855,45,774,73,969},new int[]{-325,975,-100,512,-97,513,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,509,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,674,-112,586,-319,675,-23,646,-320,669,-327,841,-251,694,-148,695,-315,842,-243,843,-119,844,-118,845,-120,846,-36,964,-298,965,-164,966,-244,967,-121,968}); - states[975] = new State(-419); - states[976] = new State(new int[]{9,977}); - states[977] = new State(-202); - states[978] = new State(new int[]{5,442,125,-980},new int[]{-321,979}); - states[979] = new State(new int[]{125,980}); - states[980] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,18,661,35,670,42,676,89,17,38,696,52,746,95,741,33,751,34,777,71,847,23,725,100,767,58,855,45,774,73,969},new int[]{-325,981,-100,512,-97,513,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,509,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,674,-112,586,-319,675,-23,646,-320,669,-327,841,-251,694,-148,695,-315,842,-243,843,-119,844,-118,845,-120,846,-36,964,-298,965,-164,966,-244,967,-121,968}); - states[981] = new State(-418); - states[982] = new State(new int[]{4,-169,11,-169,7,-169,140,-169,8,-169,134,-169,136,-169,116,-169,115,-169,129,-169,130,-169,131,-169,132,-169,128,-169,114,-169,113,-169,126,-169,127,-169,118,-169,123,-169,121,-169,119,-169,122,-169,120,-169,135,-169,9,-169,13,-169,16,-169,98,-169,117,-169,5,-208}); - states[983] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,983,133,824,114,362,113,363,61,160,9,-198},new int[]{-88,971,-67,984,-241,976,-89,219,-80,227,-13,232,-10,242,-14,205,-142,982,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,829,-169,828,-261,835,-265,836,-11,831,-237,837,-66,254,-84,986,-83,257,-93,987,-239,988,-58,989,-240,990,-242,997,-131,993}); - states[984] = new State(new int[]{9,985}); - states[985] = new State(-197); - states[986] = new State(-200); + states[969] = new State(-996); + states[970] = new State(-997); + states[971] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,18,661,35,670,42,676},new int[]{-100,863,-98,866,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,509,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-320,867,-97,646,-321,669}); + states[972] = new State(new int[]{9,980,141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,806,54,809,139,810,8,985,133,826,114,362,113,363,61,160},new int[]{-87,973,-66,974,-242,978,-88,219,-79,227,-13,232,-10,242,-14,205,-143,984,-147,48,-148,51,-161,259,-163,148,-162,152,-16,260,-254,263,-292,268,-236,342,-196,831,-170,830,-262,837,-266,838,-11,833,-238,839,-65,254,-83,988,-82,257,-92,989,-240,990,-57,991,-241,992,-243,999,-132,995}); + states[973] = new State(new int[]{9,825,13,189,16,193,98,-192}); + states[974] = new State(new int[]{9,975}); + states[975] = new State(new int[]{125,976,90,-195,10,-195,96,-195,99,-195,31,-195,102,-195,2,-195,98,-195,12,-195,9,-195,97,-195,30,-195,84,-195,83,-195,82,-195,81,-195,80,-195,85,-195}); + states[976] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,18,661,35,670,42,676,89,17,38,698,52,748,95,743,33,753,34,779,71,849,23,727,100,769,58,857,45,776,73,971},new int[]{-326,977,-101,512,-96,513,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,509,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,674,-113,586,-320,675,-97,646,-321,669,-328,843,-252,696,-149,697,-316,844,-244,845,-120,846,-119,847,-121,848,-35,966,-299,967,-165,968,-245,969,-122,970}); + states[977] = new State(-417); + states[978] = new State(new int[]{9,979}); + states[979] = new State(-200); + states[980] = new State(new int[]{5,442,125,-982},new int[]{-322,981}); + states[981] = new State(new int[]{125,982}); + states[982] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,18,661,35,670,42,676,89,17,38,698,52,748,95,743,33,753,34,779,71,849,23,727,100,769,58,857,45,776,73,971},new int[]{-326,983,-101,512,-96,513,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,509,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,674,-113,586,-320,675,-97,646,-321,669,-328,843,-252,696,-149,697,-316,844,-244,845,-120,846,-119,847,-121,848,-35,966,-299,967,-165,968,-245,969,-122,970}); + states[983] = new State(-416); + states[984] = new State(new int[]{4,-167,11,-167,7,-167,140,-167,8,-167,134,-167,136,-167,116,-167,115,-167,129,-167,130,-167,131,-167,132,-167,128,-167,114,-167,113,-167,126,-167,127,-167,118,-167,123,-167,121,-167,119,-167,122,-167,120,-167,135,-167,9,-167,13,-167,16,-167,98,-167,117,-167,5,-206}); + states[985] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,806,54,809,139,810,8,985,133,826,114,362,113,363,61,160,9,-196},new int[]{-87,973,-66,986,-242,978,-88,219,-79,227,-13,232,-10,242,-14,205,-143,984,-147,48,-148,51,-161,259,-163,148,-162,152,-16,260,-254,263,-292,268,-236,342,-196,831,-170,830,-262,837,-266,838,-11,833,-238,839,-65,254,-83,988,-82,257,-92,989,-240,990,-57,991,-241,992,-243,999,-132,995}); + states[986] = new State(new int[]{9,987}); states[987] = new State(-195); - states[988] = new State(-196); - states[989] = new State(-421); - states[990] = new State(new int[]{10,991,9,-203}); - states[991] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,9,-204},new int[]{-242,992,-131,993,-142,996,-146,48,-147,51}); - states[992] = new State(-206); - states[993] = new State(new int[]{5,994}); - states[994] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,804,54,807,139,808,8,983,133,824,114,362,113,363},new int[]{-83,995,-88,258,-89,219,-80,227,-13,232,-10,242,-14,205,-142,243,-146,48,-147,51,-160,259,-162,148,-161,152,-16,260,-253,263,-291,268,-235,342,-195,829,-169,828,-261,835,-265,836,-11,831,-237,837,-93,987,-239,988}); - states[995] = new State(-207); - states[996] = new State(-208); + states[988] = new State(-198); + states[989] = new State(-193); + states[990] = new State(-194); + states[991] = new State(-419); + states[992] = new State(new int[]{10,993,9,-201}); + states[993] = new State(new int[]{141,47,84,49,85,50,79,52,77,53,9,-202},new int[]{-243,994,-132,995,-143,998,-147,48,-148,51}); + states[994] = new State(-204); + states[995] = new State(new int[]{5,996}); + states[996] = new State(new int[]{141,47,84,49,85,50,79,52,77,244,142,150,144,151,143,153,152,155,155,156,154,157,153,158,40,261,19,264,20,269,11,343,75,806,54,809,139,810,8,985,133,826,114,362,113,363},new int[]{-82,997,-87,258,-88,219,-79,227,-13,232,-10,242,-14,205,-143,243,-147,48,-148,51,-161,259,-163,148,-162,152,-16,260,-254,263,-292,268,-236,342,-196,831,-170,830,-262,837,-266,838,-11,833,-238,839,-92,989,-240,990}); states[997] = new State(-205); - states[998] = new State(-416); - states[999] = new State(-409); - states[1000] = new State(-410); - states[1001] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,5,603,18,661,35,670,42,676},new int[]{-87,1002,-86,27,-98,28,-97,29,-96,307,-101,315,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,509,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593,-115,602,-319,645,-23,646,-320,669}); - states[1002] = new State(-412); - states[1003] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-272,1004,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); - states[1004] = new State(-563); - states[1005] = new State(new int[]{8,1017,141,47,84,49,85,50,79,52,77,53},new int[]{-142,1006,-146,48,-147,51}); - states[1006] = new State(new int[]{5,1007,135,1013}); - states[1007] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-272,1008,-268,336,-91,177,-102,284,-103,285,-176,286,-142,201,-146,48,-147,51,-16,445,-195,446,-160,449,-162,148,-161,152,-269,452,-297,453,-252,459,-245,460,-277,463,-278,464,-274,465,-266,466,-32,467,-259,552,-125,556,-126,560,-222,566,-220,567,-219,568}); - states[1008] = new State(new int[]{135,1009}); - states[1009] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,1010,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593}); - states[1010] = new State(new int[]{97,1011}); - states[1011] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,90,-492,10,-492,96,-492,99,-492,31,-492,102,-492,2,-492,98,-492,12,-492,9,-492,97,-492,30,-492,83,-492,82,-492,81,-492,80,-492},new int[]{-256,1012,-4,23,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868}); - states[1012] = new State(-560); - states[1013] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,1014,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593}); - states[1014] = new State(new int[]{97,1015}); - states[1015] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,90,-492,10,-492,96,-492,99,-492,31,-492,102,-492,2,-492,98,-492,12,-492,9,-492,97,-492,30,-492,83,-492,82,-492,81,-492,80,-492},new int[]{-256,1016,-4,23,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868}); - states[1016] = new State(-561); - states[1017] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-153,1018,-142,794,-146,48,-147,51}); - states[1018] = new State(new int[]{9,1019,98,440}); - states[1019] = new State(new int[]{135,1020}); - states[1020] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,1021,-97,29,-96,307,-101,514,-82,320,-81,326,-94,352,-15,43,-160,147,-162,148,-161,152,-16,154,-58,159,-195,375,-108,377,-127,367,-107,379,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-17,504,-59,529,-111,532,-169,533,-264,534,-95,535,-260,539,-262,540,-263,584,-236,585,-112,586,-238,593}); - states[1021] = new State(new int[]{97,1022}); - states[1022] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,90,-492,10,-492,96,-492,99,-492,31,-492,102,-492,2,-492,98,-492,12,-492,9,-492,97,-492,30,-492,83,-492,82,-492,81,-492,80,-492},new int[]{-256,1023,-4,23,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868}); - states[1023] = new State(-562); - states[1024] = new State(new int[]{5,1025}); - states[1025] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,739,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,90,-492,10,-492,96,-492,99,-492,31,-492,102,-492,2,-492},new int[]{-257,1026,-256,22,-4,23,-108,24,-127,367,-107,496,-142,738,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868,-138,1024}); - states[1026] = new State(-491); - states[1027] = new State(new int[]{78,1035,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,739,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,10,-492,90,-492},new int[]{-61,1028,-64,1030,-63,1047,-248,1048,-257,737,-256,22,-4,23,-108,24,-127,367,-107,496,-142,738,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868,-138,1024}); - states[1028] = new State(new int[]{90,1029}); - states[1029] = new State(-576); - states[1030] = new State(new int[]{10,1032,30,1045,90,-582},new int[]{-250,1031}); - states[1031] = new State(-577); - states[1032] = new State(new int[]{78,1035,30,1045,90,-582},new int[]{-63,1033,-250,1034}); - states[1033] = new State(-581); - states[1034] = new State(-578); - states[1035] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-65,1036,-175,1039,-176,1040,-142,1041,-146,48,-147,51,-135,1042}); - states[1036] = new State(new int[]{97,1037}); - states[1037] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,10,-492,30,-492,90,-492},new int[]{-256,1038,-4,23,-108,24,-127,367,-107,496,-142,421,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868}); - states[1038] = new State(-584); - states[1039] = new State(-585); - states[1040] = new State(new int[]{7,165,97,-587}); - states[1041] = new State(new int[]{7,-260,97,-260,5,-588}); - states[1042] = new State(new int[]{5,1043}); - states[1043] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-175,1044,-176,1040,-142,201,-146,48,-147,51}); - states[1044] = new State(-586); - states[1045] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,702,8,703,19,264,20,269,142,150,144,151,143,153,152,739,155,156,154,157,153,158,75,526,55,718,89,17,38,696,23,725,95,741,52,746,33,751,53,761,100,767,45,774,34,777,51,785,58,855,73,860,71,847,36,869,10,-492,90,-492},new int[]{-248,1046,-257,737,-256,22,-4,23,-108,24,-127,367,-107,496,-142,738,-146,48,-147,51,-187,422,-253,502,-291,503,-15,689,-160,147,-162,148,-161,152,-16,154,-17,504,-59,690,-111,532,-208,716,-128,717,-251,722,-148,723,-36,724,-243,740,-315,745,-119,750,-316,760,-155,765,-298,766,-244,773,-118,776,-311,784,-60,851,-170,852,-169,853,-164,854,-121,859,-122,866,-120,867,-345,868,-138,1024}); - states[1046] = new State(new int[]{10,20,90,-583}); - states[1047] = new State(-580); - states[1048] = new State(new int[]{10,20,90,-579}); - states[1049] = new State(-556); - states[1050] = new State(-570); - states[1051] = new State(-571); + states[998] = new State(-206); + states[999] = new State(-203); + states[1000] = new State(-414); + states[1001] = new State(-407); + states[1002] = new State(-408); + states[1003] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,515,19,264,20,269,75,526,38,594,5,603,18,661,35,670,42,676},new int[]{-86,1004,-85,27,-98,28,-96,29,-95,307,-102,315,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,509,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593,-116,602,-320,645,-97,646,-321,669}); + states[1004] = new State(-410); + states[1005] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-273,1006,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); + states[1006] = new State(-561); + states[1007] = new State(new int[]{8,1019,141,47,84,49,85,50,79,52,77,53},new int[]{-143,1008,-147,48,-148,51}); + states[1008] = new State(new int[]{5,1009,135,1015}); + states[1009] = new State(new int[]{141,338,84,49,85,50,79,52,77,53,152,155,155,156,154,157,153,158,114,362,113,363,142,150,144,151,143,153,8,450,140,461,22,330,46,468,47,553,32,557,72,561,63,564,42,569,35,609},new int[]{-273,1010,-269,336,-90,177,-103,284,-104,285,-177,286,-143,201,-147,48,-148,51,-16,445,-196,446,-161,449,-163,148,-162,152,-270,452,-298,453,-253,459,-246,460,-278,463,-279,464,-275,465,-267,466,-31,467,-260,552,-126,556,-127,560,-223,566,-221,567,-220,568}); + states[1010] = new State(new int[]{135,1011}); + states[1011] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,1012,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593}); + states[1012] = new State(new int[]{97,1013}); + states[1013] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,90,-490,10,-490,96,-490,99,-490,31,-490,102,-490,2,-490,98,-490,12,-490,9,-490,97,-490,30,-490,83,-490,82,-490,81,-490,80,-490},new int[]{-257,1014,-4,23,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870}); + states[1014] = new State(-558); + states[1015] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,1016,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593}); + states[1016] = new State(new int[]{97,1017}); + states[1017] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,90,-490,10,-490,96,-490,99,-490,31,-490,102,-490,2,-490,98,-490,12,-490,9,-490,97,-490,30,-490,83,-490,82,-490,81,-490,80,-490},new int[]{-257,1018,-4,23,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870}); + states[1018] = new State(-559); + states[1019] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-154,1020,-143,796,-147,48,-148,51}); + states[1020] = new State(new int[]{9,1021,98,440}); + states[1021] = new State(new int[]{135,1022}); + states[1022] = new State(new int[]{54,42,142,150,144,151,143,153,152,155,155,156,154,157,153,158,61,160,11,353,133,357,114,362,113,363,140,364,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,423,8,425,19,264,20,269,75,526,38,594},new int[]{-98,1023,-96,29,-95,307,-102,514,-81,320,-80,326,-93,352,-15,43,-161,147,-163,148,-162,152,-16,154,-57,159,-196,375,-109,377,-128,367,-108,379,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-17,504,-58,529,-112,532,-170,533,-265,534,-94,535,-261,539,-263,540,-264,584,-237,585,-113,586,-239,593}); + states[1023] = new State(new int[]{97,1024}); + states[1024] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,90,-490,10,-490,96,-490,99,-490,31,-490,102,-490,2,-490,98,-490,12,-490,9,-490,97,-490,30,-490,83,-490,82,-490,81,-490,80,-490},new int[]{-257,1025,-4,23,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870}); + states[1025] = new State(-560); + states[1026] = new State(new int[]{5,1027}); + states[1027] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,741,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,90,-490,10,-490,96,-490,99,-490,31,-490,102,-490,2,-490},new int[]{-258,1028,-257,22,-4,23,-109,24,-128,367,-108,496,-143,740,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870,-139,1026}); + states[1028] = new State(-489); + states[1029] = new State(new int[]{78,1037,139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,741,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,10,-490,90,-490},new int[]{-60,1030,-63,1032,-62,1049,-249,1050,-258,739,-257,22,-4,23,-109,24,-128,367,-108,496,-143,740,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870,-139,1026}); + states[1030] = new State(new int[]{90,1031}); + states[1031] = new State(-574); + states[1032] = new State(new int[]{10,1034,30,1047,90,-580},new int[]{-251,1033}); + states[1033] = new State(-575); + states[1034] = new State(new int[]{78,1037,30,1047,90,-580},new int[]{-62,1035,-251,1036}); + states[1035] = new State(-579); + states[1036] = new State(-576); + states[1037] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-64,1038,-176,1041,-177,1042,-143,1043,-147,48,-148,51,-136,1044}); + states[1038] = new State(new int[]{97,1039}); + states[1039] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,155,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,10,-490,30,-490,90,-490},new int[]{-257,1040,-4,23,-109,24,-128,367,-108,496,-143,421,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870}); + states[1040] = new State(-582); + states[1041] = new State(-583); + states[1042] = new State(new int[]{7,165,97,-585}); + states[1043] = new State(new int[]{7,-258,97,-258,5,-586}); + states[1044] = new State(new int[]{5,1045}); + states[1045] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-176,1046,-177,1042,-143,201,-147,48,-148,51}); + states[1046] = new State(-584); + states[1047] = new State(new int[]{139,378,141,47,84,49,85,50,79,52,77,244,43,385,40,704,8,705,19,264,20,269,142,150,144,151,143,153,152,741,155,156,154,157,153,158,75,526,55,720,89,17,38,698,23,727,95,743,52,748,33,753,53,763,100,769,45,776,34,779,51,787,58,857,73,862,71,849,36,871,10,-490,90,-490},new int[]{-249,1048,-258,739,-257,22,-4,23,-109,24,-128,367,-108,496,-143,740,-147,48,-148,51,-188,422,-254,502,-292,503,-15,689,-161,147,-163,148,-162,152,-16,154,-17,504,-58,690,-112,532,-209,718,-129,719,-252,724,-149,725,-35,726,-244,742,-316,747,-120,752,-317,762,-156,767,-299,768,-245,775,-119,778,-312,786,-59,853,-171,854,-170,855,-165,856,-122,861,-123,868,-121,869,-346,870,-139,1026}); + states[1048] = new State(new int[]{10,20,90,-581}); + states[1049] = new State(-578); + states[1050] = new State(new int[]{10,20,90,-577}); + states[1051] = new State(-554); states[1052] = new State(-568); +<<<<<<< HEAD states[1053] = new State(new int[]{141,47,84,49,85,50,79,52,77,53},new int[]{-176,1054,-142,201,-146,48,-147,51}); states[1054] = new State(new int[]{108,1055,7,165}); states[1055] = new State(-569); @@ -1340,10 +1721,129 @@ public partial class GPPGParser: ShiftReduceParser>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 states[1169] = new State(new int[]{10,1170}); - states[1170] = new State(new int[]{61,1172,11,-391,26,-391,24,-391,42,-391,35,-391,28,-391,29,-391,44,-391,25,-391,90,-391,83,-391,82,-391,81,-391,80,-391},new int[]{-201,1171}); - states[1171] = new State(-386); + states[1170] = new State(new int[]{61,1175,150,1177,149,1178,145,1179,148,1180,11,-389,26,-389,24,-389,42,-389,35,-389,28,-389,29,-389,44,-389,25,-389,90,-389,83,-389,82,-389,81,-389,80,-389},new int[]{-202,1171,-207,1172}); + states[1171] = new State(-383); states[1172] = new State(new int[]{10,1173}); +<<<<<<< HEAD states[1173] = new State(-392); states[1174] = new State(-828); states[1175] = new State(-829); @@ -1821,326 +2321,814 @@ public partial class GPPGParser: ShiftReduceParser>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 - rules[1] = new Rule(-355, new int[]{-1,2}); - rules[2] = new Rule(-1, new int[]{-230}); - rules[3] = new Rule(-1, new int[]{-303}); - rules[4] = new Rule(-1, new int[]{-171}); - rules[5] = new Rule(-1, new int[]{74,-302,-45,-248}); - rules[6] = new Rule(-1, new int[]{76,-302,-45,-248}); - rules[7] = new Rule(-171, new int[]{86,-86}); - rules[8] = new Rule(-171, new int[]{86,48,-139}); - rules[9] = new Rule(-171, new int[]{88,-317}); - rules[10] = new Rule(-171, new int[]{87,-255}); - rules[11] = new Rule(-255, new int[]{-86}); - rules[12] = new Rule(-255, new int[]{-4}); - rules[13] = new Rule(-255, new int[]{-311}); - rules[14] = new Rule(-181, new int[]{}); - rules[15] = new Rule(-181, new int[]{-182}); - rules[16] = new Rule(-182, new int[]{-180}); - rules[17] = new Rule(-182, new int[]{-182,-180}); - rules[18] = new Rule(-180, new int[]{3,141}); - rules[19] = new Rule(-180, new int[]{3,142}); - rules[20] = new Rule(-230, new int[]{-231,-181,-299,-18,-184}); - rules[21] = new Rule(-184, new int[]{7}); - rules[22] = new Rule(-184, new int[]{10}); - rules[23] = new Rule(-184, new int[]{5}); - rules[24] = new Rule(-184, new int[]{98}); - rules[25] = new Rule(-184, new int[]{6}); - rules[26] = new Rule(-184, new int[]{}); - rules[27] = new Rule(-231, new int[]{}); - rules[28] = new Rule(-231, new int[]{59,-142,-183}); - rules[29] = new Rule(-183, new int[]{10}); - rules[30] = new Rule(-183, new int[]{8,-185,9,10}); - rules[31] = new Rule(-185, new int[]{-141}); - rules[32] = new Rule(-185, new int[]{-185,98,-141}); - rules[33] = new Rule(-141, new int[]{-142}); - rules[34] = new Rule(-18, new int[]{-38,-251}); - rules[35] = new Rule(-38, new int[]{-42}); - rules[36] = new Rule(-152, new int[]{-133}); - rules[37] = new Rule(-152, new int[]{-152,7,-133}); - rules[38] = new Rule(-301, new int[]{50,-300,10}); - rules[39] = new Rule(-302, new int[]{}); - rules[40] = new Rule(-302, new int[]{-301}); - rules[41] = new Rule(-299, new int[]{}); - rules[42] = new Rule(-299, new int[]{-299,-301}); - rules[43] = new Rule(-300, new int[]{-304}); - rules[44] = new Rule(-300, new int[]{-300,98,-304}); - rules[45] = new Rule(-304, new int[]{-152}); - rules[46] = new Rule(-304, new int[]{-152,135,142}); - rules[47] = new Rule(-303, new int[]{-6,-305,-157,-156,-149,7}); - rules[48] = new Rule(-303, new int[]{-6,-305,-158,-149,7}); - rules[49] = new Rule(-305, new int[]{-2,-134,10,-181}); - rules[50] = new Rule(-305, new int[]{107,-152,10,-181}); + rules[1] = new Rule(-356, new int[]{-1,2}); + rules[2] = new Rule(-1, new int[]{-231}); + rules[3] = new Rule(-1, new int[]{-304}); + rules[4] = new Rule(-1, new int[]{-172}); + rules[5] = new Rule(-1, new int[]{74,-303,-44,-249}); + rules[6] = new Rule(-1, new int[]{76,-303,-44,-249}); + rules[7] = new Rule(-172, new int[]{86,-85}); + rules[8] = new Rule(-172, new int[]{86,48,-140}); + rules[9] = new Rule(-172, new int[]{88,-318}); + rules[10] = new Rule(-172, new int[]{87,-256}); + rules[11] = new Rule(-256, new int[]{-85}); + rules[12] = new Rule(-256, new int[]{-4}); + rules[13] = new Rule(-256, new int[]{-312}); + rules[14] = new Rule(-182, new int[]{}); + rules[15] = new Rule(-182, new int[]{-183}); + rules[16] = new Rule(-183, new int[]{-181}); + rules[17] = new Rule(-183, new int[]{-183,-181}); + rules[18] = new Rule(-181, new int[]{3,141}); + rules[19] = new Rule(-181, new int[]{3,142}); + rules[20] = new Rule(-231, new int[]{-232,-182,-300,-18,-185}); + rules[21] = new Rule(-185, new int[]{7}); + rules[22] = new Rule(-185, new int[]{10}); + rules[23] = new Rule(-185, new int[]{5}); + rules[24] = new Rule(-185, new int[]{98}); + rules[25] = new Rule(-185, new int[]{6}); + rules[26] = new Rule(-185, new int[]{}); + rules[27] = new Rule(-232, new int[]{}); + rules[28] = new Rule(-232, new int[]{59,-143,-184}); + rules[29] = new Rule(-184, new int[]{10}); + rules[30] = new Rule(-184, new int[]{8,-186,9,10}); + rules[31] = new Rule(-186, new int[]{-142}); + rules[32] = new Rule(-186, new int[]{-186,98,-142}); + rules[33] = new Rule(-142, new int[]{-143}); + rules[34] = new Rule(-18, new int[]{-37,-252}); + rules[35] = new Rule(-37, new int[]{-41}); + rules[36] = new Rule(-153, new int[]{-134}); + rules[37] = new Rule(-153, new int[]{-153,7,-134}); + rules[38] = new Rule(-302, new int[]{50,-301,10}); + rules[39] = new Rule(-303, new int[]{}); + rules[40] = new Rule(-303, new int[]{-302}); + rules[41] = new Rule(-300, new int[]{}); + rules[42] = new Rule(-300, new int[]{-300,-302}); + rules[43] = new Rule(-301, new int[]{-305}); + rules[44] = new Rule(-301, new int[]{-301,98,-305}); + rules[45] = new Rule(-305, new int[]{-153}); + rules[46] = new Rule(-305, new int[]{-153,135,142}); + rules[47] = new Rule(-304, new int[]{-6,-306,-158,-157,-150,7}); + rules[48] = new Rule(-304, new int[]{-6,-306,-159,-150,7}); + rules[49] = new Rule(-306, new int[]{-2,-135,10,-182}); + rules[50] = new Rule(-306, new int[]{107,-153,10,-182}); rules[51] = new Rule(-2, new int[]{103}); rules[52] = new Rule(-2, new int[]{104}); - rules[53] = new Rule(-134, new int[]{-142}); - rules[54] = new Rule(-157, new int[]{41,-299,-41}); - rules[55] = new Rule(-156, new int[]{39,-299,-42}); - rules[56] = new Rule(-158, new int[]{-299,-42}); - rules[57] = new Rule(-149, new int[]{90}); - rules[58] = new Rule(-149, new int[]{101,-248,90}); - rules[59] = new Rule(-149, new int[]{101,-248,102,-248,90}); - rules[60] = new Rule(-149, new int[]{89,-248,90}); - rules[61] = new Rule(-41, new int[]{-39}); - rules[62] = new Rule(-39, new int[]{}); - rules[63] = new Rule(-39, new int[]{-39,-49}); - rules[64] = new Rule(-42, new int[]{-43}); - rules[65] = new Rule(-45, new int[]{}); - rules[66] = new Rule(-45, new int[]{-45,-217}); - rules[67] = new Rule(-43, new int[]{}); - rules[68] = new Rule(-43, new int[]{-43,-48}); - rules[69] = new Rule(-44, new int[]{-40}); - rules[70] = new Rule(-40, new int[]{}); - rules[71] = new Rule(-40, new int[]{-40,-47}); - rules[72] = new Rule(-49, new int[]{-30}); - rules[73] = new Rule(-49, new int[]{-53}); - rules[74] = new Rule(-49, new int[]{-285}); - rules[75] = new Rule(-49, new int[]{-306}); - rules[76] = new Rule(-49, new int[]{-228}); - rules[77] = new Rule(-49, new int[]{-227}); - rules[78] = new Rule(-48, new int[]{-163}); - rules[79] = new Rule(-48, new int[]{-30}); - rules[80] = new Rule(-48, new int[]{-53}); - rules[81] = new Rule(-48, new int[]{-285}); - rules[82] = new Rule(-48, new int[]{-306}); - rules[83] = new Rule(-48, new int[]{-216}); - rules[84] = new Rule(-209, new int[]{-210}); - rules[85] = new Rule(-209, new int[]{-213}); - rules[86] = new Rule(-216, new int[]{-6,-209}); - rules[87] = new Rule(-47, new int[]{-163}); - rules[88] = new Rule(-47, new int[]{-30}); - rules[89] = new Rule(-47, new int[]{-53}); - rules[90] = new Rule(-47, new int[]{-285}); - rules[91] = new Rule(-47, new int[]{-306}); - rules[92] = new Rule(-228, new int[]{-6,-221}); - rules[93] = new Rule(-228, new int[]{-6,-221,146,10}); - rules[94] = new Rule(-227, new int[]{-6,-225}); - rules[95] = new Rule(-227, new int[]{-6,-225,146,10}); - rules[96] = new Rule(-163, new int[]{57,-151,10}); - rules[97] = new Rule(-151, new int[]{-138}); - rules[98] = new Rule(-151, new int[]{-151,98,-138}); - rules[99] = new Rule(-138, new int[]{152}); - rules[100] = new Rule(-138, new int[]{-142}); - rules[101] = new Rule(-30, new int[]{27,-28}); - rules[102] = new Rule(-30, new int[]{-30,-28}); - rules[103] = new Rule(-53, new int[]{65,-28}); - rules[104] = new Rule(-53, new int[]{-53,-28}); - rules[105] = new Rule(-285, new int[]{48,-50}); - rules[106] = new Rule(-285, new int[]{-285,-50}); - rules[107] = new Rule(-310, new int[]{-307}); - rules[108] = new Rule(-310, new int[]{8,-142,98,-153,9,108,-98,10}); - rules[109] = new Rule(-306, new int[]{51,-310}); - rules[110] = new Rule(-306, new int[]{60,-310}); - rules[111] = new Rule(-306, new int[]{-306,-310}); - rules[112] = new Rule(-28, new int[]{-29,10}); - rules[113] = new Rule(-29, new int[]{-136,118,-105}); - rules[114] = new Rule(-29, new int[]{-136,5,-272,118,-83}); - rules[115] = new Rule(-105, new int[]{-88}); - rules[116] = new Rule(-105, new int[]{-93}); - rules[117] = new Rule(-136, new int[]{-142}); - rules[118] = new Rule(-78, new int[]{-98}); - rules[119] = new Rule(-78, new int[]{-78,98,-98}); - rules[120] = new Rule(-89, new int[]{-80}); - rules[121] = new Rule(-89, new int[]{-89,-188,-80}); - rules[122] = new Rule(-88, new int[]{-89}); - rules[123] = new Rule(-88, new int[]{-237}); - rules[124] = new Rule(-88, new int[]{-88,16,-89}); - rules[125] = new Rule(-237, new int[]{-88,13,-88,5,-88}); - rules[126] = new Rule(-188, new int[]{118}); - rules[127] = new Rule(-188, new int[]{123}); - rules[128] = new Rule(-188, new int[]{121}); - rules[129] = new Rule(-188, new int[]{119}); - rules[130] = new Rule(-188, new int[]{122}); - rules[131] = new Rule(-188, new int[]{120}); - rules[132] = new Rule(-188, new int[]{135}); - rules[133] = new Rule(-80, new int[]{-13}); - rules[134] = new Rule(-80, new int[]{-80,-189,-13}); - rules[135] = new Rule(-189, new int[]{114}); - rules[136] = new Rule(-189, new int[]{113}); - rules[137] = new Rule(-189, new int[]{126}); - rules[138] = new Rule(-189, new int[]{127}); - rules[139] = new Rule(-261, new int[]{-13,-197,-280}); - rules[140] = new Rule(-265, new int[]{-11,117,-10}); - rules[141] = new Rule(-265, new int[]{-11,117,-265}); - rules[142] = new Rule(-265, new int[]{-195,-265}); - rules[143] = new Rule(-13, new int[]{-10}); - rules[144] = new Rule(-13, new int[]{-261}); - rules[145] = new Rule(-13, new int[]{-265}); - rules[146] = new Rule(-13, new int[]{-13,-191,-10}); - rules[147] = new Rule(-13, new int[]{-13,-191,-265}); - rules[148] = new Rule(-191, new int[]{116}); - rules[149] = new Rule(-191, new int[]{115}); - rules[150] = new Rule(-191, new int[]{129}); - rules[151] = new Rule(-191, new int[]{130}); - rules[152] = new Rule(-191, new int[]{131}); - rules[153] = new Rule(-191, new int[]{132}); - rules[154] = new Rule(-191, new int[]{128}); - rules[155] = new Rule(-11, new int[]{-14}); - rules[156] = new Rule(-11, new int[]{8,-88,9}); - rules[157] = new Rule(-10, new int[]{-14}); - rules[158] = new Rule(-10, new int[]{-235}); - rules[159] = new Rule(-10, new int[]{54}); - rules[160] = new Rule(-10, new int[]{139,-10}); - rules[161] = new Rule(-10, new int[]{8,-88,9}); - rules[162] = new Rule(-10, new int[]{133,-10}); - rules[163] = new Rule(-10, new int[]{-195,-10}); - rules[164] = new Rule(-10, new int[]{-169}); - rules[165] = new Rule(-235, new int[]{11,-69,12}); - rules[166] = new Rule(-235, new int[]{75,-69,75}); - rules[167] = new Rule(-195, new int[]{114}); - rules[168] = new Rule(-195, new int[]{113}); - rules[169] = new Rule(-14, new int[]{-142}); - rules[170] = new Rule(-14, new int[]{-160}); - rules[171] = new Rule(-14, new int[]{-16}); - rules[172] = new Rule(-14, new int[]{40,-142}); - rules[173] = new Rule(-14, new int[]{-253}); - rules[174] = new Rule(-14, new int[]{-291}); - rules[175] = new Rule(-14, new int[]{-14,-12}); - rules[176] = new Rule(-14, new int[]{-14,4,-295}); - rules[177] = new Rule(-14, new int[]{-14,11,-116,12}); - rules[178] = new Rule(-12, new int[]{7,-133}); - rules[179] = new Rule(-12, new int[]{140}); - rules[180] = new Rule(-12, new int[]{8,-75,9}); - rules[181] = new Rule(-12, new int[]{11,-74,12}); - rules[182] = new Rule(-75, new int[]{-71}); - rules[183] = new Rule(-75, new int[]{}); - rules[184] = new Rule(-74, new int[]{-72}); - rules[185] = new Rule(-74, new int[]{}); - rules[186] = new Rule(-72, new int[]{-92}); - rules[187] = new Rule(-72, new int[]{-72,98,-92}); - rules[188] = new Rule(-92, new int[]{-88}); - rules[189] = new Rule(-92, new int[]{-88,6,-88}); - rules[190] = new Rule(-16, new int[]{152}); - rules[191] = new Rule(-16, new int[]{155}); - rules[192] = new Rule(-16, new int[]{154}); - rules[193] = new Rule(-16, new int[]{153}); - rules[194] = new Rule(-83, new int[]{-88}); - rules[195] = new Rule(-83, new int[]{-93}); - rules[196] = new Rule(-83, new int[]{-239}); - rules[197] = new Rule(-93, new int[]{8,-67,9}); - rules[198] = new Rule(-67, new int[]{}); - rules[199] = new Rule(-67, new int[]{-66}); - rules[200] = new Rule(-66, new int[]{-84}); - rules[201] = new Rule(-66, new int[]{-66,98,-84}); - rules[202] = new Rule(-239, new int[]{8,-241,9}); - rules[203] = new Rule(-241, new int[]{-240}); - rules[204] = new Rule(-241, new int[]{-240,10}); - rules[205] = new Rule(-240, new int[]{-242}); - rules[206] = new Rule(-240, new int[]{-240,10,-242}); - rules[207] = new Rule(-242, new int[]{-131,5,-83}); - rules[208] = new Rule(-131, new int[]{-142}); - rules[209] = new Rule(-50, new int[]{-6,-51}); - rules[210] = new Rule(-6, new int[]{-246}); - rules[211] = new Rule(-6, new int[]{-6,-246}); - rules[212] = new Rule(-6, new int[]{}); - rules[213] = new Rule(-246, new int[]{11,-247,12}); - rules[214] = new Rule(-247, new int[]{-8}); - rules[215] = new Rule(-247, new int[]{-247,98,-8}); - rules[216] = new Rule(-8, new int[]{-9}); - rules[217] = new Rule(-8, new int[]{-142,5,-9}); - rules[218] = new Rule(-51, new int[]{-139,118,-283,10}); - rules[219] = new Rule(-51, new int[]{-140,-283,10}); - rules[220] = new Rule(-139, new int[]{-142}); - rules[221] = new Rule(-139, new int[]{-142,-150}); - rules[222] = new Rule(-140, new int[]{-142,121,-153,120}); - rules[223] = new Rule(-283, new int[]{-272}); - rules[224] = new Rule(-283, new int[]{-31}); - rules[225] = new Rule(-269, new int[]{-268,13}); - rules[226] = new Rule(-269, new int[]{-297,13}); - rules[227] = new Rule(-272, new int[]{-268}); - rules[228] = new Rule(-272, new int[]{-269}); - rules[229] = new Rule(-272, new int[]{-252}); - rules[230] = new Rule(-272, new int[]{-245}); - rules[231] = new Rule(-272, new int[]{-277}); - rules[232] = new Rule(-272, new int[]{-222}); - rules[233] = new Rule(-272, new int[]{-297}); - rules[234] = new Rule(-297, new int[]{-176,-295}); - rules[235] = new Rule(-295, new int[]{121,-293,119}); - rules[236] = new Rule(-296, new int[]{123}); - rules[237] = new Rule(-296, new int[]{121,-294,119}); - rules[238] = new Rule(-293, new int[]{-275}); - rules[239] = new Rule(-293, new int[]{-293,98,-275}); - rules[240] = new Rule(-294, new int[]{-276}); - rules[241] = new Rule(-294, new int[]{-294,98,-276}); - rules[242] = new Rule(-276, new int[]{}); - rules[243] = new Rule(-275, new int[]{-268}); - rules[244] = new Rule(-275, new int[]{-268,13}); - rules[245] = new Rule(-275, new int[]{-277}); - rules[246] = new Rule(-275, new int[]{-222}); - rules[247] = new Rule(-275, new int[]{-297}); - rules[248] = new Rule(-268, new int[]{-91}); - rules[249] = new Rule(-268, new int[]{-91,6,-91}); - rules[250] = new Rule(-268, new int[]{8,-79,9}); - rules[251] = new Rule(-91, new int[]{-102}); - rules[252] = new Rule(-91, new int[]{-91,-189,-102}); - rules[253] = new Rule(-102, new int[]{-103}); - rules[254] = new Rule(-102, new int[]{-102,-191,-103}); - rules[255] = new Rule(-103, new int[]{-176}); - rules[256] = new Rule(-103, new int[]{-16}); - rules[257] = new Rule(-103, new int[]{-195,-103}); - rules[258] = new Rule(-103, new int[]{-160}); - rules[259] = new Rule(-103, new int[]{-103,8,-74,9}); - rules[260] = new Rule(-176, new int[]{-142}); - rules[261] = new Rule(-176, new int[]{-176,7,-133}); - rules[262] = new Rule(-79, new int[]{-77,98,-77}); - rules[263] = new Rule(-79, new int[]{-79,98,-77}); - rules[264] = new Rule(-77, new int[]{-272}); - rules[265] = new Rule(-77, new int[]{-272,118,-86}); - rules[266] = new Rule(-245, new int[]{140,-271}); - rules[267] = new Rule(-277, new int[]{-278}); - rules[268] = new Rule(-277, new int[]{63,-278}); - rules[269] = new Rule(-278, new int[]{-274}); - rules[270] = new Rule(-278, new int[]{-32}); - rules[271] = new Rule(-278, new int[]{-259}); - rules[272] = new Rule(-278, new int[]{-125}); - rules[273] = new Rule(-278, new int[]{-126}); - rules[274] = new Rule(-126, new int[]{72,56,-272}); - rules[275] = new Rule(-274, new int[]{22,11,-159,12,56,-272}); - rules[276] = new Rule(-274, new int[]{-266}); - rules[277] = new Rule(-266, new int[]{22,56,-272}); - rules[278] = new Rule(-159, new int[]{-267}); - rules[279] = new Rule(-159, new int[]{-159,98,-267}); - rules[280] = new Rule(-267, new int[]{-268}); - rules[281] = new Rule(-267, new int[]{}); - rules[282] = new Rule(-259, new int[]{47,56,-272}); - rules[283] = new Rule(-125, new int[]{32,56,-272}); - rules[284] = new Rule(-125, new int[]{32}); - rules[285] = new Rule(-252, new int[]{141,11,-88,12}); - rules[286] = new Rule(-222, new int[]{-220}); - rules[287] = new Rule(-220, new int[]{-219}); - rules[288] = new Rule(-219, new int[]{42,-123}); - rules[289] = new Rule(-219, new int[]{35,-123,5,-271}); - rules[290] = new Rule(-219, new int[]{-176,125,-275}); - rules[291] = new Rule(-219, new int[]{-297,125,-275}); - rules[292] = new Rule(-219, new int[]{8,9,125,-275}); - rules[293] = new Rule(-219, new int[]{8,-79,9,125,-275}); - rules[294] = new Rule(-219, new int[]{-176,125,8,9}); - rules[295] = new Rule(-219, new int[]{-297,125,8,9}); - rules[296] = new Rule(-219, new int[]{8,9,125,8,9}); - rules[297] = new Rule(-219, new int[]{8,-79,9,125,8,9}); - rules[298] = new Rule(-31, new int[]{-21,-287,-179,-314,-27}); - rules[299] = new Rule(-32, new int[]{46,-179,-314,-26,90}); - rules[300] = new Rule(-20, new int[]{67}); - rules[301] = new Rule(-20, new int[]{68}); - rules[302] = new Rule(-20, new int[]{145}); - rules[303] = new Rule(-20, new int[]{25}); - rules[304] = new Rule(-20, new int[]{26}); - rules[305] = new Rule(-21, new int[]{}); - rules[306] = new Rule(-21, new int[]{-22}); - rules[307] = new Rule(-22, new int[]{-20}); - rules[308] = new Rule(-22, new int[]{-22,-20}); - rules[309] = new Rule(-287, new int[]{24}); - rules[310] = new Rule(-287, new int[]{41}); - rules[311] = new Rule(-287, new int[]{62}); - rules[312] = new Rule(-287, new int[]{62,24}); - rules[313] = new Rule(-287, new int[]{62,46}); - rules[314] = new Rule(-287, new int[]{62,41}); - rules[315] = new Rule(-27, new int[]{}); - rules[316] = new Rule(-27, new int[]{-26,90}); - rules[317] = new Rule(-179, new int[]{}); - rules[318] = new Rule(-179, new int[]{8,-178,9}); + rules[53] = new Rule(-135, new int[]{-143}); + rules[54] = new Rule(-158, new int[]{41,-300,-40}); + rules[55] = new Rule(-157, new int[]{39,-300,-41}); + rules[56] = new Rule(-159, new int[]{-300,-41}); + rules[57] = new Rule(-150, new int[]{90}); + rules[58] = new Rule(-150, new int[]{101,-249,90}); + rules[59] = new Rule(-150, new int[]{101,-249,102,-249,90}); + rules[60] = new Rule(-150, new int[]{89,-249,90}); + rules[61] = new Rule(-40, new int[]{-38}); + rules[62] = new Rule(-38, new int[]{}); + rules[63] = new Rule(-38, new int[]{-38,-48}); + rules[64] = new Rule(-41, new int[]{-42}); + rules[65] = new Rule(-44, new int[]{}); + rules[66] = new Rule(-44, new int[]{-44,-218}); + rules[67] = new Rule(-42, new int[]{}); + rules[68] = new Rule(-42, new int[]{-42,-47}); + rules[69] = new Rule(-43, new int[]{-39}); + rules[70] = new Rule(-39, new int[]{}); + rules[71] = new Rule(-39, new int[]{-39,-46}); + rules[72] = new Rule(-48, new int[]{-29}); + rules[73] = new Rule(-48, new int[]{-52}); + rules[74] = new Rule(-48, new int[]{-286}); + rules[75] = new Rule(-48, new int[]{-307}); + rules[76] = new Rule(-48, new int[]{-229}); + rules[77] = new Rule(-48, new int[]{-228}); + rules[78] = new Rule(-47, new int[]{-164}); + rules[79] = new Rule(-47, new int[]{-29}); + rules[80] = new Rule(-47, new int[]{-52}); + rules[81] = new Rule(-47, new int[]{-286}); + rules[82] = new Rule(-47, new int[]{-307}); + rules[83] = new Rule(-47, new int[]{-217}); + rules[84] = new Rule(-210, new int[]{-211}); + rules[85] = new Rule(-210, new int[]{-214}); + rules[86] = new Rule(-217, new int[]{-6,-210}); + rules[87] = new Rule(-46, new int[]{-164}); + rules[88] = new Rule(-46, new int[]{-29}); + rules[89] = new Rule(-46, new int[]{-52}); + rules[90] = new Rule(-46, new int[]{-286}); + rules[91] = new Rule(-46, new int[]{-307}); + rules[92] = new Rule(-229, new int[]{-6,-222}); + rules[93] = new Rule(-229, new int[]{-6,-222,146,10}); + rules[94] = new Rule(-228, new int[]{-6,-226}); + rules[95] = new Rule(-228, new int[]{-6,-226,146,10}); + rules[96] = new Rule(-164, new int[]{57,-152,10}); + rules[97] = new Rule(-152, new int[]{-139}); + rules[98] = new Rule(-152, new int[]{-152,98,-139}); + rules[99] = new Rule(-139, new int[]{152}); + rules[100] = new Rule(-139, new int[]{-143}); + rules[101] = new Rule(-29, new int[]{27,-27}); + rules[102] = new Rule(-29, new int[]{-29,-27}); + rules[103] = new Rule(-52, new int[]{65,-27}); + rules[104] = new Rule(-52, new int[]{-52,-27}); + rules[105] = new Rule(-286, new int[]{48,-49}); + rules[106] = new Rule(-286, new int[]{-286,-49}); + rules[107] = new Rule(-311, new int[]{-308}); + rules[108] = new Rule(-311, new int[]{8,-143,98,-154,9,108,-98,10}); + rules[109] = new Rule(-307, new int[]{51,-311}); + rules[110] = new Rule(-307, new int[]{60,-311}); + rules[111] = new Rule(-307, new int[]{-307,-311}); + rules[112] = new Rule(-27, new int[]{-28,10}); + rules[113] = new Rule(-28, new int[]{-137,118,-106}); + rules[114] = new Rule(-28, new int[]{-137,5,-273,118,-82}); + rules[115] = new Rule(-106, new int[]{-87}); + rules[116] = new Rule(-106, new int[]{-92}); + rules[117] = new Rule(-137, new int[]{-143}); + rules[118] = new Rule(-88, new int[]{-79}); + rules[119] = new Rule(-88, new int[]{-88,-189,-79}); + rules[120] = new Rule(-87, new int[]{-88}); + rules[121] = new Rule(-87, new int[]{-238}); + rules[122] = new Rule(-87, new int[]{-87,16,-88}); + rules[123] = new Rule(-238, new int[]{-87,13,-87,5,-87}); + rules[124] = new Rule(-189, new int[]{118}); + rules[125] = new Rule(-189, new int[]{123}); + rules[126] = new Rule(-189, new int[]{121}); + rules[127] = new Rule(-189, new int[]{119}); + rules[128] = new Rule(-189, new int[]{122}); + rules[129] = new Rule(-189, new int[]{120}); + rules[130] = new Rule(-189, new int[]{135}); + rules[131] = new Rule(-79, new int[]{-13}); + rules[132] = new Rule(-79, new int[]{-79,-190,-13}); + rules[133] = new Rule(-190, new int[]{114}); + rules[134] = new Rule(-190, new int[]{113}); + rules[135] = new Rule(-190, new int[]{126}); + rules[136] = new Rule(-190, new int[]{127}); + rules[137] = new Rule(-262, new int[]{-13,-198,-281}); + rules[138] = new Rule(-266, new int[]{-11,117,-10}); + rules[139] = new Rule(-266, new int[]{-11,117,-266}); + rules[140] = new Rule(-266, new int[]{-196,-266}); + rules[141] = new Rule(-13, new int[]{-10}); + rules[142] = new Rule(-13, new int[]{-262}); + rules[143] = new Rule(-13, new int[]{-266}); + rules[144] = new Rule(-13, new int[]{-13,-192,-10}); + rules[145] = new Rule(-13, new int[]{-13,-192,-266}); + rules[146] = new Rule(-192, new int[]{116}); + rules[147] = new Rule(-192, new int[]{115}); + rules[148] = new Rule(-192, new int[]{129}); + rules[149] = new Rule(-192, new int[]{130}); + rules[150] = new Rule(-192, new int[]{131}); + rules[151] = new Rule(-192, new int[]{132}); + rules[152] = new Rule(-192, new int[]{128}); + rules[153] = new Rule(-11, new int[]{-14}); + rules[154] = new Rule(-11, new int[]{8,-87,9}); + rules[155] = new Rule(-10, new int[]{-14}); + rules[156] = new Rule(-10, new int[]{-236}); + rules[157] = new Rule(-10, new int[]{54}); + rules[158] = new Rule(-10, new int[]{139,-10}); + rules[159] = new Rule(-10, new int[]{8,-87,9}); + rules[160] = new Rule(-10, new int[]{133,-10}); + rules[161] = new Rule(-10, new int[]{-196,-10}); + rules[162] = new Rule(-10, new int[]{-170}); + rules[163] = new Rule(-236, new int[]{11,-68,12}); + rules[164] = new Rule(-236, new int[]{75,-68,75}); + rules[165] = new Rule(-196, new int[]{114}); + rules[166] = new Rule(-196, new int[]{113}); + rules[167] = new Rule(-14, new int[]{-143}); + rules[168] = new Rule(-14, new int[]{-161}); + rules[169] = new Rule(-14, new int[]{-16}); + rules[170] = new Rule(-14, new int[]{40,-143}); + rules[171] = new Rule(-14, new int[]{-254}); + rules[172] = new Rule(-14, new int[]{-292}); + rules[173] = new Rule(-14, new int[]{-14,-12}); + rules[174] = new Rule(-14, new int[]{-14,4,-296}); + rules[175] = new Rule(-14, new int[]{-14,11,-117,12}); + rules[176] = new Rule(-12, new int[]{7,-134}); + rules[177] = new Rule(-12, new int[]{140}); + rules[178] = new Rule(-12, new int[]{8,-74,9}); + rules[179] = new Rule(-12, new int[]{11,-73,12}); + rules[180] = new Rule(-74, new int[]{-70}); + rules[181] = new Rule(-74, new int[]{}); + rules[182] = new Rule(-73, new int[]{-71}); + rules[183] = new Rule(-73, new int[]{}); + rules[184] = new Rule(-71, new int[]{-91}); + rules[185] = new Rule(-71, new int[]{-71,98,-91}); + rules[186] = new Rule(-91, new int[]{-87}); + rules[187] = new Rule(-91, new int[]{-87,6,-87}); + rules[188] = new Rule(-16, new int[]{152}); + rules[189] = new Rule(-16, new int[]{155}); + rules[190] = new Rule(-16, new int[]{154}); + rules[191] = new Rule(-16, new int[]{153}); + rules[192] = new Rule(-82, new int[]{-87}); + rules[193] = new Rule(-82, new int[]{-92}); + rules[194] = new Rule(-82, new int[]{-240}); + rules[195] = new Rule(-92, new int[]{8,-66,9}); + rules[196] = new Rule(-66, new int[]{}); + rules[197] = new Rule(-66, new int[]{-65}); + rules[198] = new Rule(-65, new int[]{-83}); + rules[199] = new Rule(-65, new int[]{-65,98,-83}); + rules[200] = new Rule(-240, new int[]{8,-242,9}); + rules[201] = new Rule(-242, new int[]{-241}); + rules[202] = new Rule(-242, new int[]{-241,10}); + rules[203] = new Rule(-241, new int[]{-243}); + rules[204] = new Rule(-241, new int[]{-241,10,-243}); + rules[205] = new Rule(-243, new int[]{-132,5,-82}); + rules[206] = new Rule(-132, new int[]{-143}); + rules[207] = new Rule(-49, new int[]{-6,-50}); + rules[208] = new Rule(-6, new int[]{-247}); + rules[209] = new Rule(-6, new int[]{-6,-247}); + rules[210] = new Rule(-6, new int[]{}); + rules[211] = new Rule(-247, new int[]{11,-248,12}); + rules[212] = new Rule(-248, new int[]{-8}); + rules[213] = new Rule(-248, new int[]{-248,98,-8}); + rules[214] = new Rule(-8, new int[]{-9}); + rules[215] = new Rule(-8, new int[]{-143,5,-9}); + rules[216] = new Rule(-50, new int[]{-140,118,-284,10}); + rules[217] = new Rule(-50, new int[]{-141,-284,10}); + rules[218] = new Rule(-140, new int[]{-143}); + rules[219] = new Rule(-140, new int[]{-143,-151}); + rules[220] = new Rule(-141, new int[]{-143,121,-154,120}); + rules[221] = new Rule(-284, new int[]{-273}); + rules[222] = new Rule(-284, new int[]{-30}); + rules[223] = new Rule(-270, new int[]{-269,13}); + rules[224] = new Rule(-270, new int[]{-298,13}); + rules[225] = new Rule(-273, new int[]{-269}); + rules[226] = new Rule(-273, new int[]{-270}); + rules[227] = new Rule(-273, new int[]{-253}); + rules[228] = new Rule(-273, new int[]{-246}); + rules[229] = new Rule(-273, new int[]{-278}); + rules[230] = new Rule(-273, new int[]{-223}); + rules[231] = new Rule(-273, new int[]{-298}); + rules[232] = new Rule(-298, new int[]{-177,-296}); + rules[233] = new Rule(-296, new int[]{121,-294,119}); + rules[234] = new Rule(-297, new int[]{123}); + rules[235] = new Rule(-297, new int[]{121,-295,119}); + rules[236] = new Rule(-294, new int[]{-276}); + rules[237] = new Rule(-294, new int[]{-294,98,-276}); + rules[238] = new Rule(-295, new int[]{-277}); + rules[239] = new Rule(-295, new int[]{-295,98,-277}); + rules[240] = new Rule(-277, new int[]{}); + rules[241] = new Rule(-276, new int[]{-269}); + rules[242] = new Rule(-276, new int[]{-269,13}); + rules[243] = new Rule(-276, new int[]{-278}); + rules[244] = new Rule(-276, new int[]{-223}); + rules[245] = new Rule(-276, new int[]{-298}); + rules[246] = new Rule(-269, new int[]{-90}); + rules[247] = new Rule(-269, new int[]{-90,6,-90}); + rules[248] = new Rule(-269, new int[]{8,-78,9}); + rules[249] = new Rule(-90, new int[]{-103}); + rules[250] = new Rule(-90, new int[]{-90,-190,-103}); + rules[251] = new Rule(-103, new int[]{-104}); + rules[252] = new Rule(-103, new int[]{-103,-192,-104}); + rules[253] = new Rule(-104, new int[]{-177}); + rules[254] = new Rule(-104, new int[]{-16}); + rules[255] = new Rule(-104, new int[]{-196,-104}); + rules[256] = new Rule(-104, new int[]{-161}); + rules[257] = new Rule(-104, new int[]{-104,8,-73,9}); + rules[258] = new Rule(-177, new int[]{-143}); + rules[259] = new Rule(-177, new int[]{-177,7,-134}); + rules[260] = new Rule(-78, new int[]{-76,98,-76}); + rules[261] = new Rule(-78, new int[]{-78,98,-76}); + rules[262] = new Rule(-76, new int[]{-273}); + rules[263] = new Rule(-76, new int[]{-273,118,-85}); + rules[264] = new Rule(-246, new int[]{140,-272}); + rules[265] = new Rule(-278, new int[]{-279}); + rules[266] = new Rule(-278, new int[]{63,-279}); + rules[267] = new Rule(-279, new int[]{-275}); + rules[268] = new Rule(-279, new int[]{-31}); + rules[269] = new Rule(-279, new int[]{-260}); + rules[270] = new Rule(-279, new int[]{-126}); + rules[271] = new Rule(-279, new int[]{-127}); + rules[272] = new Rule(-127, new int[]{72,56,-273}); + rules[273] = new Rule(-275, new int[]{22,11,-160,12,56,-273}); + rules[274] = new Rule(-275, new int[]{-267}); + rules[275] = new Rule(-267, new int[]{22,56,-273}); + rules[276] = new Rule(-160, new int[]{-268}); + rules[277] = new Rule(-160, new int[]{-160,98,-268}); + rules[278] = new Rule(-268, new int[]{-269}); + rules[279] = new Rule(-268, new int[]{}); + rules[280] = new Rule(-260, new int[]{47,56,-273}); + rules[281] = new Rule(-126, new int[]{32,56,-273}); + rules[282] = new Rule(-126, new int[]{32}); + rules[283] = new Rule(-253, new int[]{141,11,-87,12}); + rules[284] = new Rule(-223, new int[]{-221}); + rules[285] = new Rule(-221, new int[]{-220}); + rules[286] = new Rule(-220, new int[]{42,-124}); + rules[287] = new Rule(-220, new int[]{35,-124,5,-272}); + rules[288] = new Rule(-220, new int[]{-177,125,-276}); + rules[289] = new Rule(-220, new int[]{-298,125,-276}); + rules[290] = new Rule(-220, new int[]{8,9,125,-276}); + rules[291] = new Rule(-220, new int[]{8,-78,9,125,-276}); + rules[292] = new Rule(-220, new int[]{-177,125,8,9}); + rules[293] = new Rule(-220, new int[]{-298,125,8,9}); + rules[294] = new Rule(-220, new int[]{8,9,125,8,9}); + rules[295] = new Rule(-220, new int[]{8,-78,9,125,8,9}); + rules[296] = new Rule(-30, new int[]{-21,-288,-180,-315,-26}); + rules[297] = new Rule(-31, new int[]{46,-180,-315,-25,90}); + rules[298] = new Rule(-20, new int[]{67}); + rules[299] = new Rule(-20, new int[]{68}); + rules[300] = new Rule(-20, new int[]{145}); + rules[301] = new Rule(-20, new int[]{25}); + rules[302] = new Rule(-20, new int[]{26}); + rules[303] = new Rule(-21, new int[]{}); + rules[304] = new Rule(-21, new int[]{-22}); + rules[305] = new Rule(-22, new int[]{-20}); + rules[306] = new Rule(-22, new int[]{-22,-20}); + rules[307] = new Rule(-288, new int[]{24}); + rules[308] = new Rule(-288, new int[]{41}); + rules[309] = new Rule(-288, new int[]{62}); + rules[310] = new Rule(-288, new int[]{62,24}); + rules[311] = new Rule(-288, new int[]{62,46}); + rules[312] = new Rule(-288, new int[]{62,41}); + rules[313] = new Rule(-26, new int[]{}); + rules[314] = new Rule(-26, new int[]{-25,90}); + rules[315] = new Rule(-180, new int[]{}); + rules[316] = new Rule(-180, new int[]{8,-179,9}); + rules[317] = new Rule(-179, new int[]{-178}); + rules[318] = new Rule(-179, new int[]{-179,98,-178}); rules[319] = new Rule(-178, new int[]{-177}); +<<<<<<< HEAD rules[320] = new Rule(-178, new int[]{-178,98,-177}); rules[321] = new Rule(-177, new int[]{-176}); rules[322] = new Rule(-177, new int[]{-297}); @@ -2614,214 +3602,691 @@ public partial class GPPGParser: ShiftReduceParser>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 rules[793] = new Rule(-68, new int[]{}); - rules[794] = new Rule(-69, new int[]{-76}); - rules[795] = new Rule(-69, new int[]{}); - rules[796] = new Rule(-76, new int[]{-90}); - rules[797] = new Rule(-76, new int[]{-76,98,-90}); - rules[798] = new Rule(-90, new int[]{-86}); - rules[799] = new Rule(-90, new int[]{-86,6,-86}); - rules[800] = new Rule(-161, new int[]{142}); - rules[801] = new Rule(-161, new int[]{144}); - rules[802] = new Rule(-160, new int[]{-162}); - rules[803] = new Rule(-160, new int[]{143}); - rules[804] = new Rule(-162, new int[]{-161}); - rules[805] = new Rule(-162, new int[]{-162,-161}); - rules[806] = new Rule(-187, new int[]{43,-196}); - rules[807] = new Rule(-203, new int[]{10}); - rules[808] = new Rule(-203, new int[]{10,-202,10}); - rules[809] = new Rule(-204, new int[]{}); - rules[810] = new Rule(-204, new int[]{10,-202}); - rules[811] = new Rule(-202, new int[]{-205}); - rules[812] = new Rule(-202, new int[]{-202,10,-205}); - rules[813] = new Rule(-142, new int[]{141}); - rules[814] = new Rule(-142, new int[]{-146}); - rules[815] = new Rule(-142, new int[]{-147}); - rules[816] = new Rule(-133, new int[]{-142}); - rules[817] = new Rule(-133, new int[]{-289}); - rules[818] = new Rule(-133, new int[]{-290}); - rules[819] = new Rule(-143, new int[]{-142}); - rules[820] = new Rule(-143, new int[]{-289}); - rules[821] = new Rule(-143, new int[]{-187}); - rules[822] = new Rule(-205, new int[]{145}); - rules[823] = new Rule(-205, new int[]{147}); - rules[824] = new Rule(-205, new int[]{148}); - rules[825] = new Rule(-205, new int[]{149}); - rules[826] = new Rule(-205, new int[]{151}); - rules[827] = new Rule(-205, new int[]{150}); - rules[828] = new Rule(-206, new int[]{150}); - rules[829] = new Rule(-206, new int[]{149}); - rules[830] = new Rule(-206, new int[]{145}); - rules[831] = new Rule(-206, new int[]{148}); - rules[832] = new Rule(-146, new int[]{84}); - rules[833] = new Rule(-146, new int[]{85}); - rules[834] = new Rule(-147, new int[]{79}); - rules[835] = new Rule(-147, new int[]{77}); - rules[836] = new Rule(-145, new int[]{83}); - rules[837] = new Rule(-145, new int[]{82}); - rules[838] = new Rule(-145, new int[]{81}); - rules[839] = new Rule(-145, new int[]{80}); - rules[840] = new Rule(-289, new int[]{-145}); - rules[841] = new Rule(-289, new int[]{67}); - rules[842] = new Rule(-289, new int[]{62}); - rules[843] = new Rule(-289, new int[]{126}); - rules[844] = new Rule(-289, new int[]{20}); - rules[845] = new Rule(-289, new int[]{19}); - rules[846] = new Rule(-289, new int[]{61}); - rules[847] = new Rule(-289, new int[]{21}); - rules[848] = new Rule(-289, new int[]{127}); - rules[849] = new Rule(-289, new int[]{128}); - rules[850] = new Rule(-289, new int[]{129}); - rules[851] = new Rule(-289, new int[]{130}); - rules[852] = new Rule(-289, new int[]{131}); - rules[853] = new Rule(-289, new int[]{132}); - rules[854] = new Rule(-289, new int[]{133}); - rules[855] = new Rule(-289, new int[]{134}); - rules[856] = new Rule(-289, new int[]{135}); - rules[857] = new Rule(-289, new int[]{136}); - rules[858] = new Rule(-289, new int[]{22}); - rules[859] = new Rule(-289, new int[]{72}); - rules[860] = new Rule(-289, new int[]{89}); - rules[861] = new Rule(-289, new int[]{23}); - rules[862] = new Rule(-289, new int[]{24}); - rules[863] = new Rule(-289, new int[]{27}); - rules[864] = new Rule(-289, new int[]{28}); - rules[865] = new Rule(-289, new int[]{29}); - rules[866] = new Rule(-289, new int[]{70}); - rules[867] = new Rule(-289, new int[]{97}); - rules[868] = new Rule(-289, new int[]{30}); - rules[869] = new Rule(-289, new int[]{90}); - rules[870] = new Rule(-289, new int[]{31}); - rules[871] = new Rule(-289, new int[]{32}); - rules[872] = new Rule(-289, new int[]{25}); - rules[873] = new Rule(-289, new int[]{102}); - rules[874] = new Rule(-289, new int[]{99}); - rules[875] = new Rule(-289, new int[]{33}); - rules[876] = new Rule(-289, new int[]{34}); - rules[877] = new Rule(-289, new int[]{35}); - rules[878] = new Rule(-289, new int[]{38}); - rules[879] = new Rule(-289, new int[]{39}); - rules[880] = new Rule(-289, new int[]{40}); - rules[881] = new Rule(-289, new int[]{101}); - rules[882] = new Rule(-289, new int[]{41}); - rules[883] = new Rule(-289, new int[]{42}); - rules[884] = new Rule(-289, new int[]{44}); - rules[885] = new Rule(-289, new int[]{45}); - rules[886] = new Rule(-289, new int[]{46}); - rules[887] = new Rule(-289, new int[]{95}); - rules[888] = new Rule(-289, new int[]{47}); - rules[889] = new Rule(-289, new int[]{100}); - rules[890] = new Rule(-289, new int[]{48}); - rules[891] = new Rule(-289, new int[]{26}); - rules[892] = new Rule(-289, new int[]{49}); - rules[893] = new Rule(-289, new int[]{69}); - rules[894] = new Rule(-289, new int[]{96}); - rules[895] = new Rule(-289, new int[]{50}); - rules[896] = new Rule(-289, new int[]{51}); - rules[897] = new Rule(-289, new int[]{52}); - rules[898] = new Rule(-289, new int[]{53}); - rules[899] = new Rule(-289, new int[]{54}); - rules[900] = new Rule(-289, new int[]{55}); - rules[901] = new Rule(-289, new int[]{56}); - rules[902] = new Rule(-289, new int[]{57}); - rules[903] = new Rule(-289, new int[]{59}); - rules[904] = new Rule(-289, new int[]{103}); - rules[905] = new Rule(-289, new int[]{104}); - rules[906] = new Rule(-289, new int[]{107}); - rules[907] = new Rule(-289, new int[]{105}); - rules[908] = new Rule(-289, new int[]{106}); - rules[909] = new Rule(-289, new int[]{60}); - rules[910] = new Rule(-289, new int[]{73}); - rules[911] = new Rule(-289, new int[]{36}); - rules[912] = new Rule(-289, new int[]{37}); - rules[913] = new Rule(-289, new int[]{68}); - rules[914] = new Rule(-289, new int[]{145}); - rules[915] = new Rule(-289, new int[]{58}); - rules[916] = new Rule(-289, new int[]{137}); - rules[917] = new Rule(-289, new int[]{138}); - rules[918] = new Rule(-289, new int[]{78}); - rules[919] = new Rule(-289, new int[]{150}); - rules[920] = new Rule(-289, new int[]{149}); - rules[921] = new Rule(-289, new int[]{71}); - rules[922] = new Rule(-289, new int[]{151}); - rules[923] = new Rule(-289, new int[]{147}); - rules[924] = new Rule(-289, new int[]{148}); - rules[925] = new Rule(-289, new int[]{146}); - rules[926] = new Rule(-290, new int[]{43}); - rules[927] = new Rule(-196, new int[]{113}); - rules[928] = new Rule(-196, new int[]{114}); - rules[929] = new Rule(-196, new int[]{115}); - rules[930] = new Rule(-196, new int[]{116}); - rules[931] = new Rule(-196, new int[]{118}); - rules[932] = new Rule(-196, new int[]{119}); - rules[933] = new Rule(-196, new int[]{120}); - rules[934] = new Rule(-196, new int[]{121}); - rules[935] = new Rule(-196, new int[]{122}); - rules[936] = new Rule(-196, new int[]{123}); - rules[937] = new Rule(-196, new int[]{126}); - rules[938] = new Rule(-196, new int[]{127}); - rules[939] = new Rule(-196, new int[]{128}); - rules[940] = new Rule(-196, new int[]{129}); - rules[941] = new Rule(-196, new int[]{130}); - rules[942] = new Rule(-196, new int[]{131}); - rules[943] = new Rule(-196, new int[]{132}); - rules[944] = new Rule(-196, new int[]{133}); - rules[945] = new Rule(-196, new int[]{135}); - rules[946] = new Rule(-196, new int[]{137}); - rules[947] = new Rule(-196, new int[]{138}); - rules[948] = new Rule(-196, new int[]{-190}); - rules[949] = new Rule(-196, new int[]{117}); - rules[950] = new Rule(-190, new int[]{108}); - rules[951] = new Rule(-190, new int[]{109}); - rules[952] = new Rule(-190, new int[]{110}); - rules[953] = new Rule(-190, new int[]{111}); - rules[954] = new Rule(-190, new int[]{112}); - rules[955] = new Rule(-23, new int[]{18,-25,98,-24,9}); + rules[794] = new Rule(-75, new int[]{-89}); + rules[795] = new Rule(-75, new int[]{-75,98,-89}); + rules[796] = new Rule(-89, new int[]{-85}); + rules[797] = new Rule(-89, new int[]{-85,6,-85}); + rules[798] = new Rule(-162, new int[]{142}); + rules[799] = new Rule(-162, new int[]{144}); + rules[800] = new Rule(-161, new int[]{-163}); + rules[801] = new Rule(-161, new int[]{143}); + rules[802] = new Rule(-163, new int[]{-162}); + rules[803] = new Rule(-163, new int[]{-163,-162}); + rules[804] = new Rule(-188, new int[]{43,-197}); + rules[805] = new Rule(-204, new int[]{10}); + rules[806] = new Rule(-204, new int[]{10,-203,10}); + rules[807] = new Rule(-205, new int[]{}); + rules[808] = new Rule(-205, new int[]{10,-203}); + rules[809] = new Rule(-203, new int[]{-206}); + rules[810] = new Rule(-203, new int[]{-203,10,-206}); + rules[811] = new Rule(-143, new int[]{141}); + rules[812] = new Rule(-143, new int[]{-147}); + rules[813] = new Rule(-143, new int[]{-148}); + rules[814] = new Rule(-134, new int[]{-143}); + rules[815] = new Rule(-134, new int[]{-290}); + rules[816] = new Rule(-134, new int[]{-291}); + rules[817] = new Rule(-144, new int[]{-143}); + rules[818] = new Rule(-144, new int[]{-290}); + rules[819] = new Rule(-144, new int[]{-188}); + rules[820] = new Rule(-206, new int[]{145}); + rules[821] = new Rule(-206, new int[]{147}); + rules[822] = new Rule(-206, new int[]{148}); + rules[823] = new Rule(-206, new int[]{149}); + rules[824] = new Rule(-206, new int[]{151}); + rules[825] = new Rule(-206, new int[]{150}); + rules[826] = new Rule(-207, new int[]{150}); + rules[827] = new Rule(-207, new int[]{149}); + rules[828] = new Rule(-207, new int[]{145}); + rules[829] = new Rule(-207, new int[]{148}); + rules[830] = new Rule(-147, new int[]{84}); + rules[831] = new Rule(-147, new int[]{85}); + rules[832] = new Rule(-148, new int[]{79}); + rules[833] = new Rule(-148, new int[]{77}); + rules[834] = new Rule(-146, new int[]{83}); + rules[835] = new Rule(-146, new int[]{82}); + rules[836] = new Rule(-146, new int[]{81}); + rules[837] = new Rule(-146, new int[]{80}); + rules[838] = new Rule(-290, new int[]{-146}); + rules[839] = new Rule(-290, new int[]{67}); + rules[840] = new Rule(-290, new int[]{62}); + rules[841] = new Rule(-290, new int[]{126}); + rules[842] = new Rule(-290, new int[]{20}); + rules[843] = new Rule(-290, new int[]{19}); + rules[844] = new Rule(-290, new int[]{61}); + rules[845] = new Rule(-290, new int[]{21}); + rules[846] = new Rule(-290, new int[]{127}); + rules[847] = new Rule(-290, new int[]{128}); + rules[848] = new Rule(-290, new int[]{129}); + rules[849] = new Rule(-290, new int[]{130}); + rules[850] = new Rule(-290, new int[]{131}); + rules[851] = new Rule(-290, new int[]{132}); + rules[852] = new Rule(-290, new int[]{133}); + rules[853] = new Rule(-290, new int[]{134}); + rules[854] = new Rule(-290, new int[]{135}); + rules[855] = new Rule(-290, new int[]{136}); + rules[856] = new Rule(-290, new int[]{22}); + rules[857] = new Rule(-290, new int[]{72}); + rules[858] = new Rule(-290, new int[]{89}); + rules[859] = new Rule(-290, new int[]{23}); + rules[860] = new Rule(-290, new int[]{24}); + rules[861] = new Rule(-290, new int[]{27}); + rules[862] = new Rule(-290, new int[]{28}); + rules[863] = new Rule(-290, new int[]{29}); + rules[864] = new Rule(-290, new int[]{70}); + rules[865] = new Rule(-290, new int[]{97}); + rules[866] = new Rule(-290, new int[]{30}); + rules[867] = new Rule(-290, new int[]{90}); + rules[868] = new Rule(-290, new int[]{31}); + rules[869] = new Rule(-290, new int[]{32}); + rules[870] = new Rule(-290, new int[]{25}); + rules[871] = new Rule(-290, new int[]{102}); + rules[872] = new Rule(-290, new int[]{99}); + rules[873] = new Rule(-290, new int[]{33}); + rules[874] = new Rule(-290, new int[]{34}); + rules[875] = new Rule(-290, new int[]{35}); + rules[876] = new Rule(-290, new int[]{38}); + rules[877] = new Rule(-290, new int[]{39}); + rules[878] = new Rule(-290, new int[]{40}); + rules[879] = new Rule(-290, new int[]{101}); + rules[880] = new Rule(-290, new int[]{41}); + rules[881] = new Rule(-290, new int[]{42}); + rules[882] = new Rule(-290, new int[]{44}); + rules[883] = new Rule(-290, new int[]{45}); + rules[884] = new Rule(-290, new int[]{46}); + rules[885] = new Rule(-290, new int[]{95}); + rules[886] = new Rule(-290, new int[]{47}); + rules[887] = new Rule(-290, new int[]{100}); + rules[888] = new Rule(-290, new int[]{48}); + rules[889] = new Rule(-290, new int[]{26}); + rules[890] = new Rule(-290, new int[]{49}); + rules[891] = new Rule(-290, new int[]{69}); + rules[892] = new Rule(-290, new int[]{96}); + rules[893] = new Rule(-290, new int[]{50}); + rules[894] = new Rule(-290, new int[]{51}); + rules[895] = new Rule(-290, new int[]{52}); + rules[896] = new Rule(-290, new int[]{53}); + rules[897] = new Rule(-290, new int[]{54}); + rules[898] = new Rule(-290, new int[]{55}); + rules[899] = new Rule(-290, new int[]{56}); + rules[900] = new Rule(-290, new int[]{57}); + rules[901] = new Rule(-290, new int[]{59}); + rules[902] = new Rule(-290, new int[]{103}); + rules[903] = new Rule(-290, new int[]{104}); + rules[904] = new Rule(-290, new int[]{107}); + rules[905] = new Rule(-290, new int[]{105}); + rules[906] = new Rule(-290, new int[]{106}); + rules[907] = new Rule(-290, new int[]{60}); + rules[908] = new Rule(-290, new int[]{73}); + rules[909] = new Rule(-290, new int[]{36}); + rules[910] = new Rule(-290, new int[]{37}); + rules[911] = new Rule(-290, new int[]{68}); + rules[912] = new Rule(-290, new int[]{145}); + rules[913] = new Rule(-290, new int[]{58}); + rules[914] = new Rule(-290, new int[]{137}); + rules[915] = new Rule(-290, new int[]{138}); + rules[916] = new Rule(-290, new int[]{78}); + rules[917] = new Rule(-290, new int[]{150}); + rules[918] = new Rule(-290, new int[]{149}); + rules[919] = new Rule(-290, new int[]{71}); + rules[920] = new Rule(-290, new int[]{151}); + rules[921] = new Rule(-290, new int[]{147}); + rules[922] = new Rule(-290, new int[]{148}); + rules[923] = new Rule(-290, new int[]{146}); + rules[924] = new Rule(-291, new int[]{43}); + rules[925] = new Rule(-197, new int[]{113}); + rules[926] = new Rule(-197, new int[]{114}); + rules[927] = new Rule(-197, new int[]{115}); + rules[928] = new Rule(-197, new int[]{116}); + rules[929] = new Rule(-197, new int[]{118}); + rules[930] = new Rule(-197, new int[]{119}); + rules[931] = new Rule(-197, new int[]{120}); + rules[932] = new Rule(-197, new int[]{121}); + rules[933] = new Rule(-197, new int[]{122}); + rules[934] = new Rule(-197, new int[]{123}); + rules[935] = new Rule(-197, new int[]{126}); + rules[936] = new Rule(-197, new int[]{127}); + rules[937] = new Rule(-197, new int[]{128}); + rules[938] = new Rule(-197, new int[]{129}); + rules[939] = new Rule(-197, new int[]{130}); + rules[940] = new Rule(-197, new int[]{131}); + rules[941] = new Rule(-197, new int[]{132}); + rules[942] = new Rule(-197, new int[]{133}); + rules[943] = new Rule(-197, new int[]{135}); + rules[944] = new Rule(-197, new int[]{137}); + rules[945] = new Rule(-197, new int[]{138}); + rules[946] = new Rule(-197, new int[]{-191}); + rules[947] = new Rule(-197, new int[]{117}); + rules[948] = new Rule(-191, new int[]{108}); + rules[949] = new Rule(-191, new int[]{109}); + rules[950] = new Rule(-191, new int[]{110}); + rules[951] = new Rule(-191, new int[]{111}); + rules[952] = new Rule(-191, new int[]{112}); + rules[953] = new Rule(-97, new int[]{18,-24,98,-23,9}); + rules[954] = new Rule(-23, new int[]{-97}); + rules[955] = new Rule(-23, new int[]{-143}); rules[956] = new Rule(-24, new int[]{-23}); - rules[957] = new Rule(-24, new int[]{-142}); - rules[958] = new Rule(-25, new int[]{-24}); - rules[959] = new Rule(-25, new int[]{-25,98,-24}); - rules[960] = new Rule(-319, new int[]{-142,125,-325}); - rules[961] = new Rule(-319, new int[]{8,9,-322,125,-325}); - rules[962] = new Rule(-319, new int[]{8,-142,5,-271,9,-322,125,-325}); - rules[963] = new Rule(-319, new int[]{8,-142,10,-323,9,-322,125,-325}); - rules[964] = new Rule(-319, new int[]{8,-142,5,-271,10,-323,9,-322,125,-325}); - rules[965] = new Rule(-319, new int[]{8,-98,98,-78,-321,-328,9,-332}); - rules[966] = new Rule(-319, new int[]{-23,-332}); - rules[967] = new Rule(-319, new int[]{-320}); - rules[968] = new Rule(-328, new int[]{}); - rules[969] = new Rule(-328, new int[]{10,-323}); - rules[970] = new Rule(-332, new int[]{-322,125,-325}); - rules[971] = new Rule(-320, new int[]{35,-322,125,-325}); - rules[972] = new Rule(-320, new int[]{35,8,9,-322,125,-325}); - rules[973] = new Rule(-320, new int[]{35,8,-323,9,-322,125,-325}); - rules[974] = new Rule(-320, new int[]{42,125,-326}); - rules[975] = new Rule(-320, new int[]{42,8,9,125,-326}); - rules[976] = new Rule(-320, new int[]{42,8,-323,9,125,-326}); - rules[977] = new Rule(-323, new int[]{-324}); - rules[978] = new Rule(-323, new int[]{-323,10,-324}); - rules[979] = new Rule(-324, new int[]{-153,-321}); - rules[980] = new Rule(-321, new int[]{}); - rules[981] = new Rule(-321, new int[]{5,-271}); + rules[957] = new Rule(-24, new int[]{-24,98,-23}); + rules[958] = new Rule(-99, new int[]{-98}); + rules[959] = new Rule(-99, new int[]{-97}); + rules[960] = new Rule(-77, new int[]{-99}); + rules[961] = new Rule(-77, new int[]{-77,98,-99}); + rules[962] = new Rule(-320, new int[]{-143,125,-326}); + rules[963] = new Rule(-320, new int[]{8,9,-323,125,-326}); + rules[964] = new Rule(-320, new int[]{8,-143,5,-272,9,-323,125,-326}); + rules[965] = new Rule(-320, new int[]{8,-143,10,-324,9,-323,125,-326}); + rules[966] = new Rule(-320, new int[]{8,-143,5,-272,10,-324,9,-323,125,-326}); + rules[967] = new Rule(-320, new int[]{8,-99,98,-77,-322,-329,9,-333}); + rules[968] = new Rule(-320, new int[]{-97,-333}); + rules[969] = new Rule(-320, new int[]{-321}); + rules[970] = new Rule(-329, new int[]{}); + rules[971] = new Rule(-329, new int[]{10,-324}); + rules[972] = new Rule(-333, new int[]{-323,125,-326}); + rules[973] = new Rule(-321, new int[]{35,-323,125,-326}); + rules[974] = new Rule(-321, new int[]{35,8,9,-323,125,-326}); + rules[975] = new Rule(-321, new int[]{35,8,-324,9,-323,125,-326}); + rules[976] = new Rule(-321, new int[]{42,125,-327}); + rules[977] = new Rule(-321, new int[]{42,8,9,125,-327}); + rules[978] = new Rule(-321, new int[]{42,8,-324,9,125,-327}); + rules[979] = new Rule(-324, new int[]{-325}); + rules[980] = new Rule(-324, new int[]{-324,10,-325}); + rules[981] = new Rule(-325, new int[]{-154,-322}); rules[982] = new Rule(-322, new int[]{}); - rules[983] = new Rule(-322, new int[]{5,-273}); - rules[984] = new Rule(-327, new int[]{-251}); - rules[985] = new Rule(-327, new int[]{-148}); - rules[986] = new Rule(-327, new int[]{-315}); - rules[987] = new Rule(-327, new int[]{-243}); - rules[988] = new Rule(-327, new int[]{-119}); - rules[989] = new Rule(-327, new int[]{-118}); - rules[990] = new Rule(-327, new int[]{-120}); - rules[991] = new Rule(-327, new int[]{-36}); - rules[992] = new Rule(-327, new int[]{-298}); - rules[993] = new Rule(-327, new int[]{-164}); - rules[994] = new Rule(-327, new int[]{-244}); - rules[995] = new Rule(-327, new int[]{-121}); - rules[996] = new Rule(-325, new int[]{-100}); - rules[997] = new Rule(-325, new int[]{-327}); - rules[998] = new Rule(-326, new int[]{-208}); - rules[999] = new Rule(-326, new int[]{-4}); - rules[1000] = new Rule(-326, new int[]{-327}); + rules[983] = new Rule(-322, new int[]{5,-272}); + rules[984] = new Rule(-323, new int[]{}); + rules[985] = new Rule(-323, new int[]{5,-274}); + rules[986] = new Rule(-328, new int[]{-252}); + rules[987] = new Rule(-328, new int[]{-149}); + rules[988] = new Rule(-328, new int[]{-316}); + rules[989] = new Rule(-328, new int[]{-244}); + rules[990] = new Rule(-328, new int[]{-120}); + rules[991] = new Rule(-328, new int[]{-119}); + rules[992] = new Rule(-328, new int[]{-121}); + rules[993] = new Rule(-328, new int[]{-35}); + rules[994] = new Rule(-328, new int[]{-299}); + rules[995] = new Rule(-328, new int[]{-165}); + rules[996] = new Rule(-328, new int[]{-245}); + rules[997] = new Rule(-328, new int[]{-122}); + rules[998] = new Rule(-326, new int[]{-101}); + rules[999] = new Rule(-326, new int[]{-328}); + rules[1000] = new Rule(-327, new int[]{-209}); + rules[1001] = new Rule(-327, new int[]{-4}); + rules[1002] = new Rule(-327, new int[]{-328}); } protected override void Initialize() { @@ -3394,165 +4859,155 @@ public partial class GPPGParser: ShiftReduceParser identifier { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 118: // expr_l1_list -> expr_l1 -{ - CurrentSemanticValue.stn = new expression_list(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); - } - break; - case 119: // expr_l1_list -> expr_l1_list, tkComma, expr_l1 -{ - CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as expression_list).Add(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); - } - break; - case 120: // const_relop_expr -> const_simple_expr + case 118: // const_relop_expr -> const_simple_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 121: // const_relop_expr -> const_relop_expr, const_relop, const_simple_expr + case 119: // const_relop_expr -> const_relop_expr, const_relop, const_simple_expr { CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan); } break; - case 122: // const_expr -> const_relop_expr + case 120: // const_expr -> const_relop_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 123: // const_expr -> question_constexpr + case 121: // const_expr -> question_constexpr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 124: // const_expr -> const_expr, tkDoubleQuestion, const_relop_expr + case 122: // const_expr -> const_expr, tkDoubleQuestion, const_relop_expr { CurrentSemanticValue.ex = new double_question_node(ValueStack[ValueStack.Depth-3].ex as expression, ValueStack[ValueStack.Depth-1].ex as expression, CurrentLocationSpan);} break; - case 125: // question_constexpr -> const_expr, tkQuestion, const_expr, tkColon, const_expr + case 123: // question_constexpr -> const_expr, tkQuestion, const_expr, tkColon, const_expr { CurrentSemanticValue.ex = new question_colon_expression(ValueStack[ValueStack.Depth-5].ex, ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 126: // const_relop -> tkEqual + case 124: // const_relop -> tkEqual { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 127: // const_relop -> tkNotEqual + case 125: // const_relop -> tkNotEqual { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 128: // const_relop -> tkLower + case 126: // const_relop -> tkLower { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 129: // const_relop -> tkGreater + case 127: // const_relop -> tkGreater { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 130: // const_relop -> tkLowerEqual + case 128: // const_relop -> tkLowerEqual { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 131: // const_relop -> tkGreaterEqual + case 129: // const_relop -> tkGreaterEqual { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 132: // const_relop -> tkIn + case 130: // const_relop -> tkIn { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 133: // const_simple_expr -> const_term + case 131: // const_simple_expr -> const_term { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 134: // const_simple_expr -> const_simple_expr, const_addop, const_term + case 132: // const_simple_expr -> const_simple_expr, const_addop, const_term { CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan); } break; - case 135: // const_addop -> tkPlus + case 133: // const_addop -> tkPlus { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 136: // const_addop -> tkMinus + case 134: // const_addop -> tkMinus { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 137: // const_addop -> tkOr + case 135: // const_addop -> tkOr { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 138: // const_addop -> tkXor + case 136: // const_addop -> tkXor { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 139: // as_is_constexpr -> const_term, typecast_op, simple_or_template_type_reference + case 137: // as_is_constexpr -> const_term, typecast_op, simple_or_template_type_reference { CurrentSemanticValue.ex = NewAsIsConstexpr(ValueStack[ValueStack.Depth-3].ex, (op_typecast)ValueStack[ValueStack.Depth-2].ob, ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 140: // power_constexpr -> const_factor_without_unary_op, tkStarStar, const_factor + case 138: // power_constexpr -> const_factor_without_unary_op, tkStarStar, const_factor { CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan); } break; - case 141: // power_constexpr -> const_factor_without_unary_op, tkStarStar, power_constexpr + case 139: // power_constexpr -> const_factor_without_unary_op, tkStarStar, power_constexpr { CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex,ValueStack[ValueStack.Depth-1].ex,(ValueStack[ValueStack.Depth-2].op).type, CurrentLocationSpan); } break; - case 142: // power_constexpr -> sign, power_constexpr + case 140: // power_constexpr -> sign, power_constexpr { CurrentSemanticValue.ex = new un_expr(ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan); } break; - case 143: // const_term -> const_factor + case 141: // const_term -> const_factor { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 144: // const_term -> as_is_constexpr + case 142: // const_term -> as_is_constexpr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 145: // const_term -> power_constexpr + case 143: // const_term -> power_constexpr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 146: // const_term -> const_term, const_mulop, const_factor + case 144: // const_term -> const_term, const_mulop, const_factor { CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan); } break; - case 147: // const_term -> const_term, const_mulop, power_constexpr + case 145: // const_term -> const_term, const_mulop, power_constexpr { CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex,ValueStack[ValueStack.Depth-1].ex,(ValueStack[ValueStack.Depth-2].op).type, CurrentLocationSpan); } break; - case 148: // const_mulop -> tkStar + case 146: // const_mulop -> tkStar { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 149: // const_mulop -> tkSlash + case 147: // const_mulop -> tkSlash { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 150: // const_mulop -> tkDiv + case 148: // const_mulop -> tkDiv { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 151: // const_mulop -> tkMod + case 149: // const_mulop -> tkMod { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 152: // const_mulop -> tkShl + case 150: // const_mulop -> tkShl { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 153: // const_mulop -> tkShr + case 151: // const_mulop -> tkShr { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 154: // const_mulop -> tkAnd + case 152: // const_mulop -> tkAnd { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 155: // const_factor_without_unary_op -> const_variable + case 153: // const_factor_without_unary_op -> const_variable { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 156: // const_factor_without_unary_op -> tkRoundOpen, const_expr, tkRoundClose + case 154: // const_factor_without_unary_op -> tkRoundOpen, const_expr, tkRoundClose { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-2].ex; } break; - case 157: // const_factor -> const_variable + case 155: // const_factor -> const_variable { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 158: // const_factor -> const_set + case 156: // const_factor -> const_set { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 159: // const_factor -> tkNil + case 157: // const_factor -> tkNil { CurrentSemanticValue.ex = new nil_const(); CurrentSemanticValue.ex.source_context = CurrentLocationSpan; } break; - case 160: // const_factor -> tkAddressOf, const_factor + case 158: // const_factor -> tkAddressOf, const_factor { CurrentSemanticValue.ex = new get_address(ValueStack[ValueStack.Depth-1].ex as addressed_value, CurrentLocationSpan); } break; - case 161: // const_factor -> tkRoundOpen, const_expr, tkRoundClose + case 159: // const_factor -> tkRoundOpen, const_expr, tkRoundClose { CurrentSemanticValue.ex = new bracket_expr(ValueStack[ValueStack.Depth-2].ex, CurrentLocationSpan); } break; - case 162: // const_factor -> tkNot, const_factor + case 160: // const_factor -> tkNot, const_factor { CurrentSemanticValue.ex = new un_expr(ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan); } break; - case 163: // const_factor -> sign, const_factor + case 161: // const_factor -> sign, const_factor { // ������ ��������� ����� �������� if (ValueStack[ValueStack.Depth-2].op.type == Operators.Minus) @@ -3579,56 +5034,56 @@ public partial class GPPGParser: ShiftReduceParser new_expr + case 162: // const_factor -> new_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 165: // const_set -> tkSquareOpen, elem_list, tkSquareClose + case 163: // const_set -> tkSquareOpen, elem_list, tkSquareClose { CurrentSemanticValue.ex = new pascal_set_constant(ValueStack[ValueStack.Depth-2].stn as expression_list, CurrentLocationSpan); } break; - case 166: // const_set -> tkVertParen, elem_list, tkVertParen + case 164: // const_set -> tkVertParen, elem_list, tkVertParen { CurrentSemanticValue.ex = new array_const_new(ValueStack[ValueStack.Depth-2].stn as expression_list, CurrentLocationSpan); } break; - case 167: // sign -> tkPlus + case 165: // sign -> tkPlus { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 168: // sign -> tkMinus + case 166: // sign -> tkMinus { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 169: // const_variable -> identifier + case 167: // const_variable -> identifier { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].id; } break; - case 170: // const_variable -> literal + case 168: // const_variable -> literal { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 171: // const_variable -> unsigned_number + case 169: // const_variable -> unsigned_number { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 172: // const_variable -> tkInherited, identifier + case 170: // const_variable -> tkInherited, identifier { CurrentSemanticValue.ex = new inherited_ident(ValueStack[ValueStack.Depth-1].id.name, CurrentLocationSpan); } break; - case 173: // const_variable -> sizeof_expr + case 171: // const_variable -> sizeof_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 174: // const_variable -> typeof_expr + case 172: // const_variable -> typeof_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 175: // const_variable -> const_variable, const_variable_2 + case 173: // const_variable -> const_variable, const_variable_2 { CurrentSemanticValue.ex = NewConstVariable(ValueStack[ValueStack.Depth-2].ex, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 176: // const_variable -> const_variable, tkAmpersend, template_type_params + case 174: // const_variable -> const_variable, tkAmpersend, template_type_params { CurrentSemanticValue.ex = new ident_with_templateparams(ValueStack[ValueStack.Depth-3].ex as addressed_value, ValueStack[ValueStack.Depth-1].stn as template_param_list, CurrentLocationSpan); } break; - case 177: // const_variable -> const_variable, tkSquareOpen, format_const_expr, + case 175: // const_variable -> const_variable, tkSquareOpen, format_const_expr, // tkSquareClose { var fe = ValueStack[ValueStack.Depth-2].ex as format_expr; @@ -3642,199 +5097,199 @@ public partial class GPPGParser: ShiftReduceParser tkPoint, identifier_or_keyword + case 176: // const_variable_2 -> tkPoint, identifier_or_keyword { CurrentSemanticValue.ex = new dot_node(null, ValueStack[ValueStack.Depth-1].id as addressed_value, CurrentLocationSpan); } break; - case 179: // const_variable_2 -> tkDeref + case 177: // const_variable_2 -> tkDeref { CurrentSemanticValue.ex = new roof_dereference(); CurrentSemanticValue.ex.source_context = CurrentLocationSpan; } break; - case 180: // const_variable_2 -> tkRoundOpen, optional_const_func_expr_list, tkRoundClose + case 178: // const_variable_2 -> tkRoundOpen, optional_const_func_expr_list, tkRoundClose { CurrentSemanticValue.ex = new method_call(ValueStack[ValueStack.Depth-2].stn as expression_list, CurrentLocationSpan); } break; - case 181: // const_variable_2 -> tkSquareOpen, const_elem_list, tkSquareClose + case 179: // const_variable_2 -> tkSquareOpen, const_elem_list, tkSquareClose { CurrentSemanticValue.ex = new indexer(ValueStack[ValueStack.Depth-2].stn as expression_list, CurrentLocationSpan); } break; - case 182: // optional_const_func_expr_list -> expr_list + case 180: // optional_const_func_expr_list -> expr_list { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 183: // optional_const_func_expr_list -> /* empty */ + case 181: // optional_const_func_expr_list -> /* empty */ { CurrentSemanticValue.stn = null; } break; - case 184: // const_elem_list -> const_elem_list1 + case 182: // const_elem_list -> const_elem_list1 { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 186: // const_elem_list1 -> const_elem + case 184: // const_elem_list1 -> const_elem { CurrentSemanticValue.stn = new expression_list(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 187: // const_elem_list1 -> const_elem_list1, tkComma, const_elem + case 185: // const_elem_list1 -> const_elem_list1, tkComma, const_elem { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as expression_list).Add(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 188: // const_elem -> const_expr + case 186: // const_elem -> const_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 189: // const_elem -> const_expr, tkDotDot, const_expr + case 187: // const_elem -> const_expr, tkDotDot, const_expr { CurrentSemanticValue.ex = new diapason_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 190: // unsigned_number -> tkInteger + case 188: // unsigned_number -> tkInteger { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 191: // unsigned_number -> tkHex + case 189: // unsigned_number -> tkHex { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 192: // unsigned_number -> tkFloat + case 190: // unsigned_number -> tkFloat { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 193: // unsigned_number -> tkBigInteger + case 191: // unsigned_number -> tkBigInteger { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 194: // typed_const -> const_expr + case 192: // typed_const -> const_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 195: // typed_const -> array_const + case 193: // typed_const -> array_const { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 196: // typed_const -> record_const + case 194: // typed_const -> record_const { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 197: // array_const -> tkRoundOpen, typed_const_list, tkRoundClose + case 195: // array_const -> tkRoundOpen, typed_const_list, tkRoundClose { CurrentSemanticValue.ex = new array_const(ValueStack[ValueStack.Depth-2].stn as expression_list, CurrentLocationSpan); } break; - case 199: // typed_const_list -> typed_const_list1 + case 197: // typed_const_list -> typed_const_list1 { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 200: // typed_const_list1 -> typed_const_plus + case 198: // typed_const_list1 -> typed_const_plus { CurrentSemanticValue.stn = new expression_list(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 201: // typed_const_list1 -> typed_const_list1, tkComma, typed_const_plus + case 199: // typed_const_list1 -> typed_const_list1, tkComma, typed_const_plus { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as expression_list).Add(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 202: // record_const -> tkRoundOpen, const_field_list, tkRoundClose + case 200: // record_const -> tkRoundOpen, const_field_list, tkRoundClose { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-2].ex; CurrentSemanticValue.ex.source_context = CurrentLocationSpan; } break; - case 203: // const_field_list -> const_field_list_1 + case 201: // const_field_list -> const_field_list_1 { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 204: // const_field_list -> const_field_list_1, tkSemiColon + case 202: // const_field_list -> const_field_list_1, tkSemiColon { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-2].ex; } break; - case 205: // const_field_list_1 -> const_field + case 203: // const_field_list_1 -> const_field { CurrentSemanticValue.ex = new record_const(ValueStack[ValueStack.Depth-1].stn as record_const_definition, CurrentLocationSpan); } break; - case 206: // const_field_list_1 -> const_field_list_1, tkSemiColon, const_field + case 204: // const_field_list_1 -> const_field_list_1, tkSemiColon, const_field { CurrentSemanticValue.ex = (ValueStack[ValueStack.Depth-3].ex as record_const).Add(ValueStack[ValueStack.Depth-1].stn as record_const_definition, CurrentLocationSpan); } break; - case 207: // const_field -> const_field_name, tkColon, typed_const + case 205: // const_field -> const_field_name, tkColon, typed_const { CurrentSemanticValue.stn = new record_const_definition(ValueStack[ValueStack.Depth-3].id, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 208: // const_field_name -> identifier + case 206: // const_field_name -> identifier { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 209: // type_decl -> attribute_declarations, simple_type_decl + case 207: // type_decl -> attribute_declarations, simple_type_decl { (ValueStack[ValueStack.Depth-1].stn as declaration).attributes = ValueStack[ValueStack.Depth-2].stn as attribute_list; CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; CurrentSemanticValue.stn.source_context = LocationStack[LocationStack.Depth-1]; } break; - case 210: // attribute_declarations -> attribute_declaration + case 208: // attribute_declarations -> attribute_declaration { CurrentSemanticValue.stn = new attribute_list(ValueStack[ValueStack.Depth-1].stn as simple_attribute_list, CurrentLocationSpan); } break; - case 211: // attribute_declarations -> attribute_declarations, attribute_declaration + case 209: // attribute_declarations -> attribute_declarations, attribute_declaration { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-2].stn as attribute_list).Add(ValueStack[ValueStack.Depth-1].stn as simple_attribute_list, CurrentLocationSpan); } break; - case 212: // attribute_declarations -> /* empty */ + case 210: // attribute_declarations -> /* empty */ { CurrentSemanticValue.stn = null; } break; - case 213: // attribute_declaration -> tkSquareOpen, one_or_some_attribute, tkSquareClose + case 211: // attribute_declaration -> tkSquareOpen, one_or_some_attribute, tkSquareClose { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-2].stn; } break; - case 214: // one_or_some_attribute -> one_attribute + case 212: // one_or_some_attribute -> one_attribute { CurrentSemanticValue.stn = new simple_attribute_list(ValueStack[ValueStack.Depth-1].stn as attribute, CurrentLocationSpan); } break; - case 215: // one_or_some_attribute -> one_or_some_attribute, tkComma, one_attribute + case 213: // one_or_some_attribute -> one_or_some_attribute, tkComma, one_attribute { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as simple_attribute_list).Add(ValueStack[ValueStack.Depth-1].stn as attribute, CurrentLocationSpan); } break; - case 216: // one_attribute -> attribute_variable + case 214: // one_attribute -> attribute_variable { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 217: // one_attribute -> identifier, tkColon, attribute_variable + case 215: // one_attribute -> identifier, tkColon, attribute_variable { (ValueStack[ValueStack.Depth-1].stn as attribute).qualifier = ValueStack[ValueStack.Depth-3].id; CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; CurrentSemanticValue.stn.source_context = CurrentLocationSpan; } break; - case 218: // simple_type_decl -> type_decl_identifier, tkEqual, type_decl_type, tkSemiColon + case 216: // simple_type_decl -> type_decl_identifier, tkEqual, type_decl_type, tkSemiColon { CurrentSemanticValue.stn = new type_declaration(ValueStack[ValueStack.Depth-4].id, ValueStack[ValueStack.Depth-2].td, CurrentLocationSpan); } break; - case 219: // simple_type_decl -> template_identifier_with_equal, type_decl_type, tkSemiColon + case 217: // simple_type_decl -> template_identifier_with_equal, type_decl_type, tkSemiColon { CurrentSemanticValue.stn = new type_declaration(ValueStack[ValueStack.Depth-3].id, ValueStack[ValueStack.Depth-2].td, CurrentLocationSpan); } break; - case 220: // type_decl_identifier -> identifier + case 218: // type_decl_identifier -> identifier { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 221: // type_decl_identifier -> identifier, template_arguments + case 219: // type_decl_identifier -> identifier, template_arguments { CurrentSemanticValue.id = new template_type_name(ValueStack[ValueStack.Depth-2].id.name, ValueStack[ValueStack.Depth-1].stn as ident_list, CurrentLocationSpan); } break; - case 222: // template_identifier_with_equal -> identifier, tkLower, ident_list, + case 220: // template_identifier_with_equal -> identifier, tkLower, ident_list, // tkGreaterEqual { CurrentSemanticValue.id = new template_type_name(ValueStack[ValueStack.Depth-4].id.name, ValueStack[ValueStack.Depth-2].stn as ident_list, CurrentLocationSpan); } break; - case 223: // type_decl_type -> type_ref + case 221: // type_decl_type -> type_ref { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 224: // type_decl_type -> object_type + case 222: // type_decl_type -> object_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 225: // simple_type_question -> simple_type, tkQuestion + case 223: // simple_type_question -> simple_type, tkQuestion { if (parsertools.build_tree_for_formatter) { @@ -3849,7 +5304,7 @@ public partial class GPPGParser: ShiftReduceParser template_type, tkQuestion + case 224: // simple_type_question -> template_type, tkQuestion { if (parsertools.build_tree_for_formatter) { @@ -3864,39 +5319,39 @@ public partial class GPPGParser: ShiftReduceParser simple_type + case 225: // type_ref -> simple_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 228: // type_ref -> simple_type_question + case 226: // type_ref -> simple_type_question { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 229: // type_ref -> string_type + case 227: // type_ref -> string_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 230: // type_ref -> pointer_type + case 228: // type_ref -> pointer_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 231: // type_ref -> structured_type + case 229: // type_ref -> structured_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 232: // type_ref -> procedural_type + case 230: // type_ref -> procedural_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 233: // type_ref -> template_type + case 231: // type_ref -> template_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 234: // template_type -> simple_type_identifier, template_type_params + case 232: // template_type -> simple_type_identifier, template_type_params { CurrentSemanticValue.td = new template_type_reference(ValueStack[ValueStack.Depth-2].td as named_type_reference, ValueStack[ValueStack.Depth-1].stn as template_param_list, CurrentLocationSpan); } break; - case 235: // template_type_params -> tkLower, template_param_list, tkGreater + case 233: // template_type_params -> tkLower, template_param_list, tkGreater { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-2].stn; CurrentSemanticValue.stn.source_context = CurrentLocationSpan; } break; - case 236: // template_type_empty_params -> tkNotEqual + case 234: // template_type_empty_params -> tkNotEqual { var ntr = new named_type_reference(new ident(""), CurrentLocationSpan); @@ -3904,42 +5359,42 @@ public partial class GPPGParser: ShiftReduceParser tkLower, template_empty_param_list, tkGreater + case 235: // template_type_empty_params -> tkLower, template_empty_param_list, tkGreater { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-2].stn; CurrentSemanticValue.stn.source_context = CurrentLocationSpan; } break; - case 238: // template_param_list -> template_param + case 236: // template_param_list -> template_param { CurrentSemanticValue.stn = new template_param_list(ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 239: // template_param_list -> template_param_list, tkComma, template_param + case 237: // template_param_list -> template_param_list, tkComma, template_param { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as template_param_list).Add(ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 240: // template_empty_param_list -> template_empty_param + case 238: // template_empty_param_list -> template_empty_param { CurrentSemanticValue.stn = new template_param_list(ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 241: // template_empty_param_list -> template_empty_param_list, tkComma, + case 239: // template_empty_param_list -> template_empty_param_list, tkComma, // template_empty_param { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as template_param_list).Add(ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 242: // template_empty_param -> /* empty */ + case 240: // template_empty_param -> /* empty */ { CurrentSemanticValue.td = new named_type_reference(new ident(""), CurrentLocationSpan); } break; - case 243: // template_param -> simple_type + case 241: // template_param -> simple_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 244: // template_param -> simple_type, tkQuestion + case 242: // template_param -> simple_type, tkQuestion { if (parsertools.build_tree_for_formatter) { @@ -3954,240 +5409,240 @@ public partial class GPPGParser: ShiftReduceParser structured_type + case 243: // template_param -> structured_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 246: // template_param -> procedural_type + case 244: // template_param -> procedural_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 247: // template_param -> template_type + case 245: // template_param -> template_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 248: // simple_type -> range_expr + case 246: // simple_type -> range_expr { CurrentSemanticValue.td = parsertools.ConvertDotNodeOrIdentToNamedTypeReference(ValueStack[ValueStack.Depth-1].ex); } break; - case 249: // simple_type -> range_expr, tkDotDot, range_expr + case 247: // simple_type -> range_expr, tkDotDot, range_expr { CurrentSemanticValue.td = new diapason(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 250: // simple_type -> tkRoundOpen, enumeration_id_list, tkRoundClose + case 248: // simple_type -> tkRoundOpen, enumeration_id_list, tkRoundClose { CurrentSemanticValue.td = new enum_type_definition(ValueStack[ValueStack.Depth-2].stn as enumerator_list, CurrentLocationSpan); } break; - case 251: // range_expr -> range_term + case 249: // range_expr -> range_term { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 252: // range_expr -> range_expr, const_addop, range_term + case 250: // range_expr -> range_expr, const_addop, range_term { CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan); } break; - case 253: // range_term -> range_factor + case 251: // range_term -> range_factor { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 254: // range_term -> range_term, const_mulop, range_factor + case 252: // range_term -> range_term, const_mulop, range_factor { CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan); } break; - case 255: // range_factor -> simple_type_identifier + case 253: // range_factor -> simple_type_identifier { CurrentSemanticValue.ex = parsertools.ConvertNamedTypeReferenceToDotNodeOrIdent(ValueStack[ValueStack.Depth-1].td as named_type_reference); } break; - case 256: // range_factor -> unsigned_number + case 254: // range_factor -> unsigned_number { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 257: // range_factor -> sign, range_factor + case 255: // range_factor -> sign, range_factor { CurrentSemanticValue.ex = new un_expr(ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan); } break; - case 258: // range_factor -> literal + case 256: // range_factor -> literal { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 259: // range_factor -> range_factor, tkRoundOpen, const_elem_list, tkRoundClose + case 257: // range_factor -> range_factor, tkRoundOpen, const_elem_list, tkRoundClose { CurrentSemanticValue.ex = new method_call(ValueStack[ValueStack.Depth-4].ex as addressed_value, ValueStack[ValueStack.Depth-2].stn as expression_list, CurrentLocationSpan); } break; - case 260: // simple_type_identifier -> identifier + case 258: // simple_type_identifier -> identifier { CurrentSemanticValue.td = new named_type_reference(ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan); } break; - case 261: // simple_type_identifier -> simple_type_identifier, tkPoint, + case 259: // simple_type_identifier -> simple_type_identifier, tkPoint, // identifier_or_keyword { CurrentSemanticValue.td = (ValueStack[ValueStack.Depth-3].td as named_type_reference).Add(ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan); } break; - case 262: // enumeration_id_list -> enumeration_id, tkComma, enumeration_id + case 260: // enumeration_id_list -> enumeration_id, tkComma, enumeration_id { CurrentSemanticValue.stn = new enumerator_list(ValueStack[ValueStack.Depth-3].stn as enumerator, CurrentLocationSpan); (CurrentSemanticValue.stn as enumerator_list).Add(ValueStack[ValueStack.Depth-1].stn as enumerator, CurrentLocationSpan); } break; - case 263: // enumeration_id_list -> enumeration_id_list, tkComma, enumeration_id + case 261: // enumeration_id_list -> enumeration_id_list, tkComma, enumeration_id { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as enumerator_list).Add(ValueStack[ValueStack.Depth-1].stn as enumerator, CurrentLocationSpan); } break; - case 264: // enumeration_id -> type_ref + case 262: // enumeration_id -> type_ref { CurrentSemanticValue.stn = new enumerator(ValueStack[ValueStack.Depth-1].td, null, CurrentLocationSpan); } break; - case 265: // enumeration_id -> type_ref, tkEqual, expr + case 263: // enumeration_id -> type_ref, tkEqual, expr { CurrentSemanticValue.stn = new enumerator(ValueStack[ValueStack.Depth-3].td, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 266: // pointer_type -> tkDeref, fptype + case 264: // pointer_type -> tkDeref, fptype { CurrentSemanticValue.td = new ref_type(ValueStack[ValueStack.Depth-1].td,CurrentLocationSpan); } break; - case 267: // structured_type -> unpacked_structured_type + case 265: // structured_type -> unpacked_structured_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 268: // structured_type -> tkPacked, unpacked_structured_type + case 266: // structured_type -> tkPacked, unpacked_structured_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 269: // unpacked_structured_type -> array_type + case 267: // unpacked_structured_type -> array_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 270: // unpacked_structured_type -> record_type + case 268: // unpacked_structured_type -> record_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 271: // unpacked_structured_type -> set_type + case 269: // unpacked_structured_type -> set_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 272: // unpacked_structured_type -> file_type + case 270: // unpacked_structured_type -> file_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 273: // unpacked_structured_type -> sequence_type + case 271: // unpacked_structured_type -> sequence_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 274: // sequence_type -> tkSequence, tkOf, type_ref + case 272: // sequence_type -> tkSequence, tkOf, type_ref { CurrentSemanticValue.td = new sequence_type(ValueStack[ValueStack.Depth-1].td,CurrentLocationSpan); } break; - case 275: // array_type -> tkArray, tkSquareOpen, simple_type_list, tkSquareClose, tkOf, + case 273: // array_type -> tkArray, tkSquareOpen, simple_type_list, tkSquareClose, tkOf, // type_ref { CurrentSemanticValue.td = new array_type(ValueStack[ValueStack.Depth-4].stn as indexers_types, ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 276: // array_type -> unsized_array_type + case 274: // array_type -> unsized_array_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 277: // unsized_array_type -> tkArray, tkOf, type_ref + case 275: // unsized_array_type -> tkArray, tkOf, type_ref { CurrentSemanticValue.td = new array_type(null, ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 278: // simple_type_list -> simple_type_or_ + case 276: // simple_type_list -> simple_type_or_ { CurrentSemanticValue.stn = new indexers_types(ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 279: // simple_type_list -> simple_type_list, tkComma, simple_type_or_ + case 277: // simple_type_list -> simple_type_list, tkComma, simple_type_or_ { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as indexers_types).Add(ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 280: // simple_type_or_ -> simple_type + case 278: // simple_type_or_ -> simple_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 281: // simple_type_or_ -> /* empty */ + case 279: // simple_type_or_ -> /* empty */ { CurrentSemanticValue.td = null; } break; - case 282: // set_type -> tkSet, tkOf, type_ref + case 280: // set_type -> tkSet, tkOf, type_ref { CurrentSemanticValue.td = new set_type_definition(ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 283: // file_type -> tkFile, tkOf, type_ref + case 281: // file_type -> tkFile, tkOf, type_ref { CurrentSemanticValue.td = new file_type(ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 284: // file_type -> tkFile + case 282: // file_type -> tkFile { CurrentSemanticValue.td = new file_type(); CurrentSemanticValue.td.source_context = CurrentLocationSpan; } break; - case 285: // string_type -> tkIdentifier, tkSquareOpen, const_expr, tkSquareClose + case 283: // string_type -> tkIdentifier, tkSquareOpen, const_expr, tkSquareClose { CurrentSemanticValue.td = new string_num_definition(ValueStack[ValueStack.Depth-2].ex, ValueStack[ValueStack.Depth-4].id, CurrentLocationSpan); } break; - case 286: // procedural_type -> procedural_type_kind + case 284: // procedural_type -> procedural_type_kind { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 287: // procedural_type_kind -> proc_type_decl + case 285: // procedural_type_kind -> proc_type_decl { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 288: // proc_type_decl -> tkProcedure, fp_list + case 286: // proc_type_decl -> tkProcedure, fp_list { CurrentSemanticValue.td = new procedure_header(ValueStack[ValueStack.Depth-1].stn as formal_parameters,null,null,false,false,null,null,CurrentLocationSpan); } break; - case 289: // proc_type_decl -> tkFunction, fp_list, tkColon, fptype + case 287: // proc_type_decl -> tkFunction, fp_list, tkColon, fptype { CurrentSemanticValue.td = new function_header(ValueStack[ValueStack.Depth-3].stn as formal_parameters, null, null, null, ValueStack[ValueStack.Depth-1].td as type_definition, CurrentLocationSpan); } break; - case 290: // proc_type_decl -> simple_type_identifier, tkArrow, template_param + case 288: // proc_type_decl -> simple_type_identifier, tkArrow, template_param { CurrentSemanticValue.td = new modern_proc_type(ValueStack[ValueStack.Depth-3].td,null,ValueStack[ValueStack.Depth-1].td,CurrentLocationSpan); } break; - case 291: // proc_type_decl -> template_type, tkArrow, template_param + case 289: // proc_type_decl -> template_type, tkArrow, template_param { CurrentSemanticValue.td = new modern_proc_type(ValueStack[ValueStack.Depth-3].td,null,ValueStack[ValueStack.Depth-1].td,CurrentLocationSpan); } break; - case 292: // proc_type_decl -> tkRoundOpen, tkRoundClose, tkArrow, template_param + case 290: // proc_type_decl -> tkRoundOpen, tkRoundClose, tkArrow, template_param { CurrentSemanticValue.td = new modern_proc_type(null,null,ValueStack[ValueStack.Depth-1].td,CurrentLocationSpan); } break; - case 293: // proc_type_decl -> tkRoundOpen, enumeration_id_list, tkRoundClose, tkArrow, + case 291: // proc_type_decl -> tkRoundOpen, enumeration_id_list, tkRoundClose, tkArrow, // template_param { CurrentSemanticValue.td = new modern_proc_type(null,ValueStack[ValueStack.Depth-4].stn as enumerator_list,ValueStack[ValueStack.Depth-1].td,CurrentLocationSpan); } break; - case 294: // proc_type_decl -> simple_type_identifier, tkArrow, tkRoundOpen, tkRoundClose + case 292: // proc_type_decl -> simple_type_identifier, tkArrow, tkRoundOpen, tkRoundClose { CurrentSemanticValue.td = new modern_proc_type(ValueStack[ValueStack.Depth-4].td,null,null,CurrentLocationSpan); } break; - case 295: // proc_type_decl -> template_type, tkArrow, tkRoundOpen, tkRoundClose + case 293: // proc_type_decl -> template_type, tkArrow, tkRoundOpen, tkRoundClose { CurrentSemanticValue.td = new modern_proc_type(ValueStack[ValueStack.Depth-4].td,null,null,CurrentLocationSpan); } break; - case 296: // proc_type_decl -> tkRoundOpen, tkRoundClose, tkArrow, tkRoundOpen, tkRoundClose + case 294: // proc_type_decl -> tkRoundOpen, tkRoundClose, tkArrow, tkRoundOpen, tkRoundClose { CurrentSemanticValue.td = new modern_proc_type(null,null,null,CurrentLocationSpan); } break; - case 297: // proc_type_decl -> tkRoundOpen, enumeration_id_list, tkRoundClose, tkArrow, + case 295: // proc_type_decl -> tkRoundOpen, enumeration_id_list, tkRoundClose, tkArrow, // tkRoundOpen, tkRoundClose { CurrentSemanticValue.td = new modern_proc_type(null,ValueStack[ValueStack.Depth-5].stn as enumerator_list,null,CurrentLocationSpan); } break; - case 298: // object_type -> class_attributes, class_or_interface_keyword, + case 296: // object_type -> class_attributes, class_or_interface_keyword, // optional_base_classes, optional_where_section, // optional_component_list_seq_end { @@ -4195,7 +5650,7 @@ public partial class GPPGParser: ShiftReduceParser tkRecord, optional_base_classes, optional_where_section, + case 297: // record_type -> tkRecord, optional_base_classes, optional_where_section, // member_list_section, tkEnd { var nnrt = new class_definition(ValueStack[ValueStack.Depth-4].stn as named_type_reference_list, ValueStack[ValueStack.Depth-2].stn as class_body_list, class_keyword.Record, null, ValueStack[ValueStack.Depth-3].stn as where_definition_list, class_attribute.None, false, CurrentLocationSpan); @@ -4208,37 +5663,37 @@ public partial class GPPGParser: ShiftReduceParser tkSealed + case 298: // class_attribute -> tkSealed { CurrentSemanticValue.ob = class_attribute.Sealed; } break; - case 301: // class_attribute -> tkPartial + case 299: // class_attribute -> tkPartial { CurrentSemanticValue.ob = class_attribute.Partial; } break; - case 302: // class_attribute -> tkAbstract + case 300: // class_attribute -> tkAbstract { CurrentSemanticValue.ob = class_attribute.Abstract; } break; - case 303: // class_attribute -> tkAuto + case 301: // class_attribute -> tkAuto { CurrentSemanticValue.ob = class_attribute.Auto; } break; - case 304: // class_attribute -> tkStatic + case 302: // class_attribute -> tkStatic { CurrentSemanticValue.ob = class_attribute.Static; } break; - case 305: // class_attributes -> /* empty */ + case 303: // class_attributes -> /* empty */ { CurrentSemanticValue.ob = class_attribute.None; } break; - case 306: // class_attributes -> class_attributes1 + case 304: // class_attributes -> class_attributes1 { CurrentSemanticValue.ob = ValueStack[ValueStack.Depth-1].ob; } break; - case 307: // class_attributes1 -> class_attribute + case 305: // class_attributes1 -> class_attribute { CurrentSemanticValue.ob = ValueStack[ValueStack.Depth-1].ob; } break; - case 308: // class_attributes1 -> class_attributes1, class_attribute + case 306: // class_attributes1 -> class_attributes1, class_attribute { if (((class_attribute)ValueStack[ValueStack.Depth-2].ob & (class_attribute)ValueStack[ValueStack.Depth-1].ob) == (class_attribute)ValueStack[ValueStack.Depth-1].ob) parsertools.AddErrorFromResource("ATTRIBUTE_REDECLARED",LocationStack[LocationStack.Depth-1]); @@ -4246,123 +5701,123 @@ public partial class GPPGParser: ShiftReduceParser tkClass + case 307: // class_or_interface_keyword -> tkClass { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 310: // class_or_interface_keyword -> tkInterface + case 308: // class_or_interface_keyword -> tkInterface { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 311: // class_or_interface_keyword -> tkTemplate + case 309: // class_or_interface_keyword -> tkTemplate { CurrentSemanticValue.ti = NewClassOrInterfaceKeyword(ValueStack[ValueStack.Depth-1].ti); } break; - case 312: // class_or_interface_keyword -> tkTemplate, tkClass + case 310: // class_or_interface_keyword -> tkTemplate, tkClass { CurrentSemanticValue.ti = NewClassOrInterfaceKeyword(ValueStack[ValueStack.Depth-2].ti, "c", CurrentLocationSpan); } break; - case 313: // class_or_interface_keyword -> tkTemplate, tkRecord + case 311: // class_or_interface_keyword -> tkTemplate, tkRecord { CurrentSemanticValue.ti = NewClassOrInterfaceKeyword(ValueStack[ValueStack.Depth-2].ti, "r", CurrentLocationSpan); } break; - case 314: // class_or_interface_keyword -> tkTemplate, tkInterface + case 312: // class_or_interface_keyword -> tkTemplate, tkInterface { CurrentSemanticValue.ti = NewClassOrInterfaceKeyword(ValueStack[ValueStack.Depth-2].ti, "i", CurrentLocationSpan); } break; - case 315: // optional_component_list_seq_end -> /* empty */ + case 313: // optional_component_list_seq_end -> /* empty */ { CurrentSemanticValue.stn = null; } break; - case 316: // optional_component_list_seq_end -> member_list_section, tkEnd + case 314: // optional_component_list_seq_end -> member_list_section, tkEnd { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-2].stn; CurrentSemanticValue.stn.source_context = CurrentLocationSpan; } break; - case 318: // optional_base_classes -> tkRoundOpen, base_classes_names_list, tkRoundClose + case 316: // optional_base_classes -> tkRoundOpen, base_classes_names_list, tkRoundClose { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-2].stn; } break; - case 319: // base_classes_names_list -> base_class_name + case 317: // base_classes_names_list -> base_class_name { CurrentSemanticValue.stn = new named_type_reference_list(ValueStack[ValueStack.Depth-1].stn as named_type_reference, CurrentLocationSpan); } break; - case 320: // base_classes_names_list -> base_classes_names_list, tkComma, base_class_name + case 318: // base_classes_names_list -> base_classes_names_list, tkComma, base_class_name { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as named_type_reference_list).Add(ValueStack[ValueStack.Depth-1].stn as named_type_reference, CurrentLocationSpan); } break; - case 321: // base_class_name -> simple_type_identifier + case 319: // base_class_name -> simple_type_identifier { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].td; } break; - case 322: // base_class_name -> template_type + case 320: // base_class_name -> template_type { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].td; } break; - case 323: // template_arguments -> tkLower, ident_list, tkGreater + case 321: // template_arguments -> tkLower, ident_list, tkGreater { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-2].stn; CurrentSemanticValue.stn.source_context = CurrentLocationSpan; } break; - case 324: // optional_where_section -> /* empty */ + case 322: // optional_where_section -> /* empty */ { CurrentSemanticValue.stn = null; } break; - case 325: // optional_where_section -> where_part_list + case 323: // optional_where_section -> where_part_list { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 326: // where_part_list -> where_part + case 324: // where_part_list -> where_part { CurrentSemanticValue.stn = new where_definition_list(ValueStack[ValueStack.Depth-1].stn as where_definition, CurrentLocationSpan); } break; - case 327: // where_part_list -> where_part_list, where_part + case 325: // where_part_list -> where_part_list, where_part { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-2].stn as where_definition_list).Add(ValueStack[ValueStack.Depth-1].stn as where_definition, CurrentLocationSpan); } break; - case 328: // where_part -> tkWhere, ident_list, tkColon, type_ref_and_secific_list, + case 326: // where_part -> tkWhere, ident_list, tkColon, type_ref_and_secific_list, // tkSemiColon { CurrentSemanticValue.stn = new where_definition(ValueStack[ValueStack.Depth-4].stn as ident_list, ValueStack[ValueStack.Depth-2].stn as where_type_specificator_list, CurrentLocationSpan); } break; - case 329: // type_ref_and_secific_list -> type_ref_or_secific + case 327: // type_ref_and_secific_list -> type_ref_or_secific { CurrentSemanticValue.stn = new where_type_specificator_list(ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 330: // type_ref_and_secific_list -> type_ref_and_secific_list, tkComma, + case 328: // type_ref_and_secific_list -> type_ref_and_secific_list, tkComma, // type_ref_or_secific { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as where_type_specificator_list).Add(ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 331: // type_ref_or_secific -> type_ref + case 329: // type_ref_or_secific -> type_ref { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 332: // type_ref_or_secific -> tkClass + case 330: // type_ref_or_secific -> tkClass { CurrentSemanticValue.td = new declaration_specificator(DeclarationSpecificator.WhereDefClass, ValueStack[ValueStack.Depth-1].ti.text, CurrentLocationSpan); } break; - case 333: // type_ref_or_secific -> tkRecord + case 331: // type_ref_or_secific -> tkRecord { CurrentSemanticValue.td = new declaration_specificator(DeclarationSpecificator.WhereDefValueType, ValueStack[ValueStack.Depth-1].ti.text, CurrentLocationSpan); } break; - case 334: // type_ref_or_secific -> tkConstructor + case 332: // type_ref_or_secific -> tkConstructor { CurrentSemanticValue.td = new declaration_specificator(DeclarationSpecificator.WhereDefConstructor, ValueStack[ValueStack.Depth-1].ti.text, CurrentLocationSpan); } break; - case 335: // member_list_section -> member_list + case 333: // member_list_section -> member_list { CurrentSemanticValue.stn = new class_body_list(ValueStack[ValueStack.Depth-1].stn as class_members, CurrentLocationSpan); } break; - case 336: // member_list_section -> member_list_section, ot_visibility_specifier, + case 334: // member_list_section -> member_list_section, ot_visibility_specifier, // member_list { (ValueStack[ValueStack.Depth-1].stn as class_members).access_mod = ValueStack[ValueStack.Depth-2].stn as access_modifer_node; @@ -4374,121 +5829,121 @@ public partial class GPPGParser: ShiftReduceParser tkInternal + case 335: // ot_visibility_specifier -> tkInternal { CurrentSemanticValue.stn = new access_modifer_node(access_modifer.internal_modifer, CurrentLocationSpan); } break; - case 338: // ot_visibility_specifier -> tkPublic + case 336: // ot_visibility_specifier -> tkPublic { CurrentSemanticValue.stn = new access_modifer_node(access_modifer.public_modifer, CurrentLocationSpan); } break; - case 339: // ot_visibility_specifier -> tkProtected + case 337: // ot_visibility_specifier -> tkProtected { CurrentSemanticValue.stn = new access_modifer_node(access_modifer.protected_modifer, CurrentLocationSpan); } break; - case 340: // ot_visibility_specifier -> tkPrivate + case 338: // ot_visibility_specifier -> tkPrivate { CurrentSemanticValue.stn = new access_modifer_node(access_modifer.private_modifer, CurrentLocationSpan); } break; - case 341: // member_list -> /* empty */ + case 339: // member_list -> /* empty */ { CurrentSemanticValue.stn = new class_members(); } break; - case 342: // member_list -> field_or_const_definition_list, optional_semicolon + case 340: // member_list -> field_or_const_definition_list, optional_semicolon { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-2].stn; } break; - case 343: // member_list -> method_decl_list + case 341: // member_list -> method_decl_list { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 344: // member_list -> field_or_const_definition_list, tkSemiColon, method_decl_list + case 342: // member_list -> field_or_const_definition_list, tkSemiColon, method_decl_list { (ValueStack[ValueStack.Depth-3].stn as class_members).members.AddRange((ValueStack[ValueStack.Depth-1].stn as class_members).members); (ValueStack[ValueStack.Depth-3].stn as class_members).source_context = CurrentLocationSpan; CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-3].stn; } break; - case 345: // ident_list -> identifier + case 343: // ident_list -> identifier { CurrentSemanticValue.stn = new ident_list(ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan); } break; - case 346: // ident_list -> ident_list, tkComma, identifier + case 344: // ident_list -> ident_list, tkComma, identifier { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as ident_list).Add(ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan); } break; - case 347: // optional_semicolon -> /* empty */ + case 345: // optional_semicolon -> /* empty */ { CurrentSemanticValue.ob = null; } break; - case 348: // optional_semicolon -> tkSemiColon + case 346: // optional_semicolon -> tkSemiColon { CurrentSemanticValue.ob = ValueStack[ValueStack.Depth-1].ti; } break; - case 349: // field_or_const_definition_list -> field_or_const_definition + case 347: // field_or_const_definition_list -> field_or_const_definition { CurrentSemanticValue.stn = new class_members(ValueStack[ValueStack.Depth-1].stn as declaration, CurrentLocationSpan); } break; - case 350: // field_or_const_definition_list -> field_or_const_definition_list, tkSemiColon, + case 348: // field_or_const_definition_list -> field_or_const_definition_list, tkSemiColon, // field_or_const_definition { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as class_members).Add(ValueStack[ValueStack.Depth-1].stn as declaration, CurrentLocationSpan); } break; - case 351: // field_or_const_definition -> attribute_declarations, + case 349: // field_or_const_definition -> attribute_declarations, // simple_field_or_const_definition { (ValueStack[ValueStack.Depth-1].stn as declaration).attributes = ValueStack[ValueStack.Depth-2].stn as attribute_list; CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 352: // method_decl_list -> method_or_property_decl + case 350: // method_decl_list -> method_or_property_decl { CurrentSemanticValue.stn = new class_members(ValueStack[ValueStack.Depth-1].stn as declaration, CurrentLocationSpan); } break; - case 353: // method_decl_list -> method_decl_list, method_or_property_decl + case 351: // method_decl_list -> method_decl_list, method_or_property_decl { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-2].stn as class_members).Add(ValueStack[ValueStack.Depth-1].stn as declaration, CurrentLocationSpan); } break; - case 354: // method_or_property_decl -> method_decl_withattr + case 352: // method_or_property_decl -> method_decl_withattr { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 355: // method_or_property_decl -> property_definition + case 353: // method_or_property_decl -> property_definition { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 356: // simple_field_or_const_definition -> tkConst, only_const_decl + case 354: // simple_field_or_const_definition -> tkConst, only_const_decl { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; CurrentSemanticValue.stn.source_context = CurrentLocationSpan; } break; - case 357: // simple_field_or_const_definition -> field_definition + case 355: // simple_field_or_const_definition -> field_definition { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 358: // simple_field_or_const_definition -> class_or_static, field_definition + case 356: // simple_field_or_const_definition -> class_or_static, field_definition { (ValueStack[ValueStack.Depth-1].stn as var_def_statement).var_attr = definition_attribute.Static; (ValueStack[ValueStack.Depth-1].stn as var_def_statement).source_context = CurrentLocationSpan; CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 359: // class_or_static -> tkStatic + case 357: // class_or_static -> tkStatic { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 360: // class_or_static -> tkClass + case 358: // class_or_static -> tkClass { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 361: // field_definition -> var_decl_part + case 359: // field_definition -> var_decl_part { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 362: // field_definition -> tkEvent, ident_list, tkColon, type_ref + case 360: // field_definition -> tkEvent, ident_list, tkColon, type_ref { CurrentSemanticValue.stn = new var_def_statement(ValueStack[ValueStack.Depth-3].stn as ident_list, ValueStack[ValueStack.Depth-1].td, null, definition_attribute.None, true, CurrentLocationSpan); } break; - case 363: // method_decl_withattr -> attribute_declarations, method_header + case 361: // method_decl_withattr -> attribute_declarations, method_header { (ValueStack[ValueStack.Depth-1].td as declaration).attributes = ValueStack[ValueStack.Depth-2].stn as attribute_list; CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].td; } break; - case 364: // method_decl_withattr -> attribute_declarations, method_decl + case 362: // method_decl_withattr -> attribute_declarations, method_decl { (ValueStack[ValueStack.Depth-1].stn as declaration).attributes = ValueStack[ValueStack.Depth-2].stn as attribute_list; if (ValueStack[ValueStack.Depth-1].stn is procedure_definition && (ValueStack[ValueStack.Depth-1].stn as procedure_definition).proc_header != null) @@ -4496,90 +5951,102 @@ public partial class GPPGParser: ShiftReduceParser inclass_proc_func_decl + case 363: // method_decl -> inclass_proc_func_decl { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 366: // method_decl -> inclass_constr_destr_decl + case 364: // method_decl -> inclass_constr_destr_decl { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 367: // method_header -> class_or_static, method_procfunc_header + case 365: // method_header -> class_or_static, method_procfunc_header { (ValueStack[ValueStack.Depth-1].td as procedure_header).class_keyword = true; CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 368: // method_header -> method_procfunc_header + case 366: // method_header -> method_procfunc_header { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 369: // method_header -> constr_destr_header + case 367: // method_header -> constr_destr_header { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 370: // method_procfunc_header -> proc_func_header + case 368: // method_procfunc_header -> proc_func_header { CurrentSemanticValue.td = NewProcfuncHeading(ValueStack[ValueStack.Depth-1].td as procedure_header); } break; - case 371: // proc_func_header -> proc_header + case 369: // proc_func_header -> proc_header { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 372: // proc_func_header -> func_header + case 370: // proc_func_header -> func_header { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 373: // constr_destr_header -> tkConstructor, optional_proc_name, fp_list, + case 371: // constr_destr_header -> tkConstructor, optional_proc_name, fp_list, // optional_method_modificators { CurrentSemanticValue.td = new constructor(null,ValueStack[ValueStack.Depth-2].stn as formal_parameters,ValueStack[ValueStack.Depth-1].stn as procedure_attributes_list,ValueStack[ValueStack.Depth-3].stn as method_name,false,false,null,null,CurrentLocationSpan); } break; - case 374: // constr_destr_header -> class_or_static, tkConstructor, optional_proc_name, + case 372: // constr_destr_header -> class_or_static, tkConstructor, optional_proc_name, // fp_list, optional_method_modificators { CurrentSemanticValue.td = new constructor(null,ValueStack[ValueStack.Depth-2].stn as formal_parameters,ValueStack[ValueStack.Depth-1].stn as procedure_attributes_list,ValueStack[ValueStack.Depth-3].stn as method_name,false,true,null,null,CurrentLocationSpan); } break; - case 375: // constr_destr_header -> tkDestructor, optional_proc_name, fp_list, + case 373: // constr_destr_header -> tkDestructor, optional_proc_name, fp_list, // optional_method_modificators { CurrentSemanticValue.td = new destructor(null,ValueStack[ValueStack.Depth-2].stn as formal_parameters,ValueStack[ValueStack.Depth-1].stn as procedure_attributes_list,ValueStack[ValueStack.Depth-3].stn as method_name, false,false,null,null,CurrentLocationSpan); } break; - case 376: // optional_proc_name -> proc_name + case 374: // optional_proc_name -> proc_name { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 377: // optional_proc_name -> /* empty */ + case 375: // optional_proc_name -> /* empty */ { CurrentSemanticValue.stn = null; } break; - case 378: // qualified_identifier -> identifier + case 376: // qualified_identifier -> identifier { CurrentSemanticValue.stn = new method_name(null,null,ValueStack[ValueStack.Depth-1].id,null,CurrentLocationSpan); } break; - case 379: // qualified_identifier -> visibility_specifier + case 377: // qualified_identifier -> visibility_specifier { CurrentSemanticValue.stn = new method_name(null,null,ValueStack[ValueStack.Depth-1].id,null,CurrentLocationSpan); } break; - case 380: // qualified_identifier -> qualified_identifier, tkPoint, identifier + case 378: // qualified_identifier -> qualified_identifier, tkPoint, identifier { CurrentSemanticValue.stn = NewQualifiedIdentifier(ValueStack[ValueStack.Depth-3].stn as method_name, ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan); } break; - case 381: // qualified_identifier -> qualified_identifier, tkPoint, visibility_specifier + case 379: // qualified_identifier -> qualified_identifier, tkPoint, visibility_specifier { CurrentSemanticValue.stn = NewQualifiedIdentifier(ValueStack[ValueStack.Depth-3].stn as method_name, ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan); } break; - case 382: // property_definition -> attribute_declarations, simple_property_definition + case 380: // property_definition -> attribute_declarations, simple_property_definition { CurrentSemanticValue.stn = NewPropertyDefinition(ValueStack[ValueStack.Depth-2].stn as attribute_list, ValueStack[ValueStack.Depth-1].stn as declaration, LocationStack[LocationStack.Depth-1]); } break; +<<<<<<< HEAD case 383: // simple_property_definition -> tkProperty, func_name, property_interface, // property_specifiers, tkSemiColon, // array_defaultproperty +======= + case 381: // simple_property_definition -> tkProperty, qualified_identifier, + // property_interface, property_specifiers, + // tkSemiColon, array_defaultproperty +>>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 { CurrentSemanticValue.stn = NewSimplePropertyDefinition(ValueStack[ValueStack.Depth-5].stn as method_name, ValueStack[ValueStack.Depth-4].stn as property_interface, ValueStack[ValueStack.Depth-3].stn as property_accessors, proc_attribute.attr_none, ValueStack[ValueStack.Depth-1].stn as property_array_default, CurrentLocationSpan); } break; +<<<<<<< HEAD case 384: // simple_property_definition -> tkProperty, func_name, property_interface, // property_specifiers, tkSemiColon, // property_modificator, tkSemiColon, +======= + case 382: // simple_property_definition -> tkProperty, qualified_identifier, + // property_interface, property_specifiers, + // tkSemiColon, property_modificator, tkSemiColon, +>>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 // array_defaultproperty { proc_attribute pa = proc_attribute.attr_none; @@ -4592,7 +6059,11 @@ public partial class GPPGParser: ShiftReduceParser class_or_static, tkProperty, func_name, +======= + case 383: // simple_property_definition -> class_or_static, tkProperty, qualified_identifier, +>>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 // property_interface, property_specifiers, // tkSemiColon, array_defaultproperty { @@ -4600,7 +6071,11 @@ public partial class GPPGParser: ShiftReduceParser class_or_static, tkProperty, func_name, +======= + case 384: // simple_property_definition -> class_or_static, tkProperty, qualified_identifier, +>>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 // property_interface, property_specifiers, // tkSemiColon, property_modificator, tkSemiColon, // array_defaultproperty @@ -4608,7 +6083,12 @@ public partial class GPPGParser: ShiftReduceParser tkAuto, tkProperty, func_name, property_interface, +======= + case 385: // simple_property_definition -> tkAuto, tkProperty, qualified_identifier, + // property_interface, +>>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 // optional_property_initialization, tkSemiColon { CurrentSemanticValue.stn = NewSimplePropertyDefinition(ValueStack[ValueStack.Depth-4].stn as method_name, ValueStack[ValueStack.Depth-3].stn as property_interface, null, proc_attribute.attr_none, null, CurrentLocationSpan); @@ -4616,8 +6096,13 @@ public partial class GPPGParser: ShiftReduceParser class_or_static, tkAuto, tkProperty, func_name, // property_interface, +======= + case 386: // simple_property_definition -> class_or_static, tkAuto, tkProperty, + // qualified_identifier, property_interface, +>>>>>>> 529bc2137e92d657255e34c5bfe9b63138654c02 // optional_property_initialization, tkSemiColon { CurrentSemanticValue.stn = NewSimplePropertyDefinition(ValueStack[ValueStack.Depth-4].stn as method_name, ValueStack[ValueStack.Depth-3].stn as property_interface, null, proc_attribute.attr_none, null, CurrentLocationSpan); @@ -4626,54 +6111,54 @@ public partial class GPPGParser: ShiftReduceParser tkAssign, expr + case 387: // optional_property_initialization -> tkAssign, expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 390: // optional_property_initialization -> /* empty */ + case 388: // optional_property_initialization -> /* empty */ { CurrentSemanticValue.ex = null; } break; - case 391: // array_defaultproperty -> /* empty */ + case 389: // array_defaultproperty -> /* empty */ { CurrentSemanticValue.stn = null; } break; - case 392: // array_defaultproperty -> tkDefault, tkSemiColon + case 390: // array_defaultproperty -> tkDefault, tkSemiColon { CurrentSemanticValue.stn = new property_array_default(); CurrentSemanticValue.stn.source_context = CurrentLocationSpan; } break; - case 393: // property_interface -> property_parameter_list, tkColon, fptype + case 391: // property_interface -> property_parameter_list, tkColon, fptype { CurrentSemanticValue.stn = new property_interface(ValueStack[ValueStack.Depth-3].stn as property_parameter_list, ValueStack[ValueStack.Depth-1].td, null, CurrentLocationSpan); } break; - case 394: // property_parameter_list -> /* empty */ + case 392: // property_parameter_list -> /* empty */ { CurrentSemanticValue.stn = null; } break; - case 395: // property_parameter_list -> tkSquareOpen, parameter_decl_list, tkSquareClose + case 393: // property_parameter_list -> tkSquareOpen, parameter_decl_list, tkSquareClose { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-2].stn; } break; - case 396: // parameter_decl_list -> parameter_decl + case 394: // parameter_decl_list -> parameter_decl { CurrentSemanticValue.stn = new property_parameter_list(ValueStack[ValueStack.Depth-1].stn as property_parameter, CurrentLocationSpan); } break; - case 397: // parameter_decl_list -> parameter_decl_list, tkSemiColon, parameter_decl + case 395: // parameter_decl_list -> parameter_decl_list, tkSemiColon, parameter_decl { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as property_parameter_list).Add(ValueStack[ValueStack.Depth-1].stn as property_parameter, CurrentLocationSpan); } break; - case 398: // parameter_decl -> ident_list, tkColon, fptype + case 396: // parameter_decl -> ident_list, tkColon, fptype { CurrentSemanticValue.stn = new property_parameter(ValueStack[ValueStack.Depth-3].stn as ident_list, ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 399: // optional_read_expr -> expr_with_func_decl_lambda + case 397: // optional_read_expr -> expr_with_func_decl_lambda { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 400: // optional_read_expr -> /* empty */ + case 398: // optional_read_expr -> /* empty */ { CurrentSemanticValue.ex = null; } break; - case 402: // property_specifiers -> tkRead, optional_read_expr, write_property_specifiers + case 400: // property_specifiers -> tkRead, optional_read_expr, write_property_specifiers { if (ValueStack[ValueStack.Depth-2].ex == null || ValueStack[ValueStack.Depth-2].ex is ident) // ����������� �������� { @@ -4689,7 +6174,7 @@ public partial class GPPGParser: ShiftReduceParser tkWrite, unlabelled_stmt, read_property_specifiers + case 401: // property_specifiers -> tkWrite, unlabelled_stmt, read_property_specifiers { if (ValueStack[ValueStack.Depth-2].stn is empty_statement) { @@ -4713,7 +6198,7 @@ public partial class GPPGParser: ShiftReduceParser tkWrite, unlabelled_stmt + case 403: // write_property_specifiers -> tkWrite, unlabelled_stmt { if (ValueStack[ValueStack.Depth-1].stn is empty_statement) { @@ -4736,7 +6221,7 @@ public partial class GPPGParser: ShiftReduceParser tkRead, optional_read_expr + case 405: // read_property_specifiers -> tkRead, optional_read_expr { if (ValueStack[ValueStack.Depth-1].ex == null || ValueStack[ValueStack.Depth-1].ex is ident) { @@ -4752,29 +6237,29 @@ public partial class GPPGParser: ShiftReduceParser var_decl_part, tkSemiColon + case 406: // var_decl -> var_decl_part, tkSemiColon { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-2].stn; } break; - case 411: // var_decl_part -> ident_list, tkColon, type_ref + case 409: // var_decl_part -> ident_list, tkColon, type_ref { CurrentSemanticValue.stn = new var_def_statement(ValueStack[ValueStack.Depth-3].stn as ident_list, ValueStack[ValueStack.Depth-1].td, null, definition_attribute.None, false, CurrentLocationSpan); } break; - case 412: // var_decl_part -> ident_list, tkAssign, expr_with_func_decl_lambda + case 410: // var_decl_part -> ident_list, tkAssign, expr_with_func_decl_lambda { CurrentSemanticValue.stn = new var_def_statement(ValueStack[ValueStack.Depth-3].stn as ident_list, null, ValueStack[ValueStack.Depth-1].ex, definition_attribute.None, false, CurrentLocationSpan); } break; - case 413: // var_decl_part -> ident_list, tkColon, type_ref, tkAssignOrEqual, + case 411: // var_decl_part -> ident_list, tkColon, type_ref, tkAssignOrEqual, // typed_var_init_expression { CurrentSemanticValue.stn = new var_def_statement(ValueStack[ValueStack.Depth-5].stn as ident_list, ValueStack[ValueStack.Depth-3].td, ValueStack[ValueStack.Depth-1].ex, definition_attribute.None, false, CurrentLocationSpan); } break; - case 414: // typed_var_init_expression -> typed_const_plus + case 412: // typed_var_init_expression -> typed_const_plus { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 415: // typed_var_init_expression -> const_simple_expr, tkDotDot, const_term + case 413: // typed_var_init_expression -> const_simple_expr, tkDotDot, const_term { if (parsertools.build_tree_for_formatter) CurrentSemanticValue.ex = new diapason_expr(ValueStack[ValueStack.Depth-3].ex,ValueStack[ValueStack.Depth-1].ex,CurrentLocationSpan); @@ -4782,23 +6267,23 @@ public partial class GPPGParser: ShiftReduceParser expl_func_decl_lambda + case 414: // typed_var_init_expression -> expl_func_decl_lambda { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 417: // typed_var_init_expression -> identifier, tkArrow, lambda_function_body + case 415: // typed_var_init_expression -> identifier, tkArrow, lambda_function_body { var idList = new ident_list(ValueStack[ValueStack.Depth-3].id, LocationStack[LocationStack.Depth-3]); var formalPars = new formal_parameters(new typed_parameters(idList, new lambda_inferred_type(new PascalABCCompiler.TreeRealization.lambda_any_type_node(), LocationStack[LocationStack.Depth-3]), parametr_kind.none, null, LocationStack[LocationStack.Depth-3]), LocationStack[LocationStack.Depth-3]); CurrentSemanticValue.ex = new function_lambda_definition(lambdaHelper.CreateLambdaName(), formalPars, new lambda_inferred_type(new PascalABCCompiler.TreeRealization.lambda_any_type_node(), LocationStack[LocationStack.Depth-3]), ValueStack[ValueStack.Depth-1].stn as statement_list, CurrentLocationSpan); } break; - case 418: // typed_var_init_expression -> tkRoundOpen, tkRoundClose, lambda_type_ref, + case 416: // typed_var_init_expression -> tkRoundOpen, tkRoundClose, lambda_type_ref, // tkArrow, lambda_function_body { CurrentSemanticValue.ex = new function_lambda_definition(lambdaHelper.CreateLambdaName(), null, ValueStack[ValueStack.Depth-3].td, ValueStack[ValueStack.Depth-1].stn as statement_list, CurrentLocationSpan); } break; - case 419: // typed_var_init_expression -> tkRoundOpen, typed_const_list, tkRoundClose, + case 417: // typed_var_init_expression -> tkRoundOpen, typed_const_list, tkRoundClose, // tkArrow, lambda_function_body { var el = ValueStack[ValueStack.Depth-4].stn as expression_list; @@ -4820,18 +6305,18 @@ public partial class GPPGParser: ShiftReduceParser typed_const + case 418: // typed_const_plus -> typed_const { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 421: // typed_const_plus -> default_expr + case 419: // typed_const_plus -> default_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 422: // constr_destr_decl -> constr_destr_header, block + case 420: // constr_destr_decl -> constr_destr_header, block { CurrentSemanticValue.stn = new procedure_definition(ValueStack[ValueStack.Depth-2].td as procedure_header, ValueStack[ValueStack.Depth-1].stn as block, CurrentLocationSpan); } break; - case 423: // constr_destr_decl -> tkConstructor, optional_proc_name, fp_list, tkAssign, + case 421: // constr_destr_decl -> tkConstructor, optional_proc_name, fp_list, tkAssign, // unlabelled_stmt, tkSemiColon { if (ValueStack[ValueStack.Depth-2].stn is empty_statement) @@ -4842,7 +6327,7 @@ public partial class GPPGParser: ShiftReduceParser class_or_static, tkConstructor, optional_proc_name, + case 422: // constr_destr_decl -> class_or_static, tkConstructor, optional_proc_name, // fp_list, tkAssign, unlabelled_stmt, tkSemiColon { if (ValueStack[ValueStack.Depth-2].stn is empty_statement) @@ -4853,12 +6338,12 @@ public partial class GPPGParser: ShiftReduceParser constr_destr_header, inclass_block + case 423: // inclass_constr_destr_decl -> constr_destr_header, inclass_block { CurrentSemanticValue.stn = new procedure_definition(ValueStack[ValueStack.Depth-2].td as procedure_header, ValueStack[ValueStack.Depth-1].stn as block, CurrentLocationSpan); } break; - case 426: // inclass_constr_destr_decl -> tkConstructor, optional_proc_name, fp_list, + case 424: // inclass_constr_destr_decl -> tkConstructor, optional_proc_name, fp_list, // tkAssign, unlabelled_stmt, tkSemiColon { if (ValueStack[ValueStack.Depth-2].stn is empty_statement) @@ -4869,7 +6354,7 @@ public partial class GPPGParser: ShiftReduceParser class_or_static, tkConstructor, optional_proc_name, + case 425: // inclass_constr_destr_decl -> class_or_static, tkConstructor, optional_proc_name, // fp_list, tkAssign, unlabelled_stmt, tkSemiColon { if (ValueStack[ValueStack.Depth-2].stn is empty_statement) @@ -4880,28 +6365,28 @@ public partial class GPPGParser: ShiftReduceParser proc_func_decl_noclass + case 426: // proc_func_decl -> proc_func_decl_noclass { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 429: // proc_func_decl -> class_or_static, proc_func_decl_noclass + case 427: // proc_func_decl -> class_or_static, proc_func_decl_noclass { (ValueStack[ValueStack.Depth-1].stn as procedure_definition).proc_header.class_keyword = true; CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 430: // proc_func_decl_noclass -> proc_func_header, proc_func_external_block + case 428: // proc_func_decl_noclass -> proc_func_header, proc_func_external_block { CurrentSemanticValue.stn = new procedure_definition(ValueStack[ValueStack.Depth-2].td as procedure_header, ValueStack[ValueStack.Depth-1].stn as proc_block, CurrentLocationSpan); } break; - case 431: // proc_func_decl_noclass -> tkFunction, func_name, fp_list, tkColon, fptype, + case 429: // proc_func_decl_noclass -> tkFunction, func_name, fp_list, tkColon, fptype, // optional_method_modificators1, tkAssign, expr_l1, // tkSemiColon { CurrentSemanticValue.stn = SyntaxTreeBuilder.BuildShortFuncDefinition(ValueStack[ValueStack.Depth-7].stn as formal_parameters, ValueStack[ValueStack.Depth-4].stn as procedure_attributes_list, ValueStack[ValueStack.Depth-8].stn as method_name, ValueStack[ValueStack.Depth-5].td as type_definition, ValueStack[ValueStack.Depth-2].ex, LocationStack[LocationStack.Depth-9].Merge(LocationStack[LocationStack.Depth-4])); } break; - case 432: // proc_func_decl_noclass -> tkFunction, func_name, fp_list, + case 430: // proc_func_decl_noclass -> tkFunction, func_name, fp_list, // optional_method_modificators1, tkAssign, expr_l1, // tkSemiColon { @@ -4911,21 +6396,21 @@ public partial class GPPGParser: ShiftReduceParser tkFunction, func_name, fp_list, tkColon, fptype, + case 431: // proc_func_decl_noclass -> tkFunction, func_name, fp_list, tkColon, fptype, // optional_method_modificators1, tkAssign, // func_decl_lambda, tkSemiColon { CurrentSemanticValue.stn = SyntaxTreeBuilder.BuildShortFuncDefinition(ValueStack[ValueStack.Depth-7].stn as formal_parameters, ValueStack[ValueStack.Depth-4].stn as procedure_attributes_list, ValueStack[ValueStack.Depth-8].stn as method_name, ValueStack[ValueStack.Depth-5].td as type_definition, ValueStack[ValueStack.Depth-2].ex, LocationStack[LocationStack.Depth-9].Merge(LocationStack[LocationStack.Depth-4])); } break; - case 434: // proc_func_decl_noclass -> tkFunction, func_name, fp_list, + case 432: // proc_func_decl_noclass -> tkFunction, func_name, fp_list, // optional_method_modificators1, tkAssign, // func_decl_lambda, tkSemiColon { CurrentSemanticValue.stn = SyntaxTreeBuilder.BuildShortFuncDefinition(ValueStack[ValueStack.Depth-5].stn as formal_parameters, ValueStack[ValueStack.Depth-4].stn as procedure_attributes_list, ValueStack[ValueStack.Depth-6].stn as method_name, null, ValueStack[ValueStack.Depth-2].ex, LocationStack[LocationStack.Depth-7].Merge(LocationStack[LocationStack.Depth-4])); } break; - case 435: // proc_func_decl_noclass -> tkProcedure, proc_name, fp_list, + case 433: // proc_func_decl_noclass -> tkProcedure, proc_name, fp_list, // optional_method_modificators1, tkAssign, // unlabelled_stmt, tkSemiColon { @@ -4934,30 +6419,30 @@ public partial class GPPGParser: ShiftReduceParser proc_func_header, tkForward, tkSemiColon + case 434: // proc_func_decl_noclass -> proc_func_header, tkForward, tkSemiColon { CurrentSemanticValue.stn = new procedure_definition(ValueStack[ValueStack.Depth-3].td as procedure_header, null, CurrentLocationSpan); (CurrentSemanticValue.stn as procedure_definition).proc_header.proc_attributes.Add((procedure_attribute)ValueStack[ValueStack.Depth-2].id, ValueStack[ValueStack.Depth-2].id.source_context); } break; - case 437: // inclass_proc_func_decl -> inclass_proc_func_decl_noclass + case 435: // inclass_proc_func_decl -> inclass_proc_func_decl_noclass { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 438: // inclass_proc_func_decl -> class_or_static, inclass_proc_func_decl_noclass + case 436: // inclass_proc_func_decl -> class_or_static, inclass_proc_func_decl_noclass { if ((ValueStack[ValueStack.Depth-1].stn as procedure_definition).proc_header != null) (ValueStack[ValueStack.Depth-1].stn as procedure_definition).proc_header.class_keyword = true; CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 439: // inclass_proc_func_decl_noclass -> proc_func_header, inclass_block + case 437: // inclass_proc_func_decl_noclass -> proc_func_header, inclass_block { CurrentSemanticValue.stn = new procedure_definition(ValueStack[ValueStack.Depth-2].td as procedure_header, ValueStack[ValueStack.Depth-1].stn as proc_block, CurrentLocationSpan); } break; - case 440: // inclass_proc_func_decl_noclass -> tkFunction, func_name, fp_list, tkColon, + case 438: // inclass_proc_func_decl_noclass -> tkFunction, func_name, fp_list, tkColon, // fptype, optional_method_modificators1, // tkAssign, expr_l1_func_decl_lambda, // tkSemiColon @@ -4967,7 +6452,7 @@ public partial class GPPGParser: ShiftReduceParser tkFunction, func_name, fp_list, + case 439: // inclass_proc_func_decl_noclass -> tkFunction, func_name, fp_list, // optional_method_modificators1, tkAssign, // expr_l1_func_decl_lambda, tkSemiColon { @@ -4976,7 +6461,7 @@ public partial class GPPGParser: ShiftReduceParser tkProcedure, proc_name, fp_list, + case 440: // inclass_proc_func_decl_noclass -> tkProcedure, proc_name, fp_list, // optional_method_modificators1, tkAssign, // unlabelled_stmt, tkSemiColon { @@ -4985,21 +6470,21 @@ public partial class GPPGParser: ShiftReduceParser block + case 441: // proc_func_external_block -> block { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 444: // proc_func_external_block -> external_block + case 442: // proc_func_external_block -> external_block { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 445: // proc_name -> func_name + case 443: // proc_name -> func_name { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 446: // func_name -> func_meth_name_ident + case 444: // func_name -> func_meth_name_ident { CurrentSemanticValue.stn = new method_name(null,null, ValueStack[ValueStack.Depth-1].id, null, CurrentLocationSpan); } break; - case 447: // func_name -> func_class_name_ident_list, tkPoint, func_meth_name_ident + case 445: // func_name -> func_class_name_ident_list, tkPoint, func_meth_name_ident { var ln = ValueStack[ValueStack.Depth-3].ob as List; var cnt = ln.Count; @@ -5009,290 +6494,290 @@ public partial class GPPGParser: ShiftReduceParser func_name_with_template_args + case 446: // func_class_name_ident -> func_name_with_template_args { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 449: // func_class_name_ident_list -> func_class_name_ident + case 447: // func_class_name_ident_list -> func_class_name_ident { CurrentSemanticValue.ob = new List(); (CurrentSemanticValue.ob as List).Add(ValueStack[ValueStack.Depth-1].id); } break; - case 450: // func_class_name_ident_list -> func_class_name_ident_list, tkPoint, + case 448: // func_class_name_ident_list -> func_class_name_ident_list, tkPoint, // func_class_name_ident { (ValueStack[ValueStack.Depth-3].ob as List).Add(ValueStack[ValueStack.Depth-1].id); CurrentSemanticValue.ob = ValueStack[ValueStack.Depth-3].ob; } break; - case 451: // func_meth_name_ident -> func_name_with_template_args + case 449: // func_meth_name_ident -> func_name_with_template_args { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 452: // func_meth_name_ident -> operator_name_ident + case 450: // func_meth_name_ident -> operator_name_ident { CurrentSemanticValue.id = (ident)ValueStack[ValueStack.Depth-1].ex; } break; - case 453: // func_meth_name_ident -> operator_name_ident, template_arguments + case 451: // func_meth_name_ident -> operator_name_ident, template_arguments { CurrentSemanticValue.id = new template_operator_name(null, ValueStack[ValueStack.Depth-1].stn as ident_list, ValueStack[ValueStack.Depth-2].ex as operator_name_ident, CurrentLocationSpan); } break; - case 454: // func_name_with_template_args -> func_name_ident + case 452: // func_name_with_template_args -> func_name_ident { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 455: // func_name_with_template_args -> func_name_ident, template_arguments + case 453: // func_name_with_template_args -> func_name_ident, template_arguments { CurrentSemanticValue.id = new template_type_name(ValueStack[ValueStack.Depth-2].id.name, ValueStack[ValueStack.Depth-1].stn as ident_list, CurrentLocationSpan); } break; - case 456: // func_name_ident -> identifier + case 454: // func_name_ident -> identifier { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 457: // proc_header -> tkProcedure, proc_name, fp_list, optional_method_modificators, + case 455: // proc_header -> tkProcedure, proc_name, fp_list, optional_method_modificators, // optional_where_section { CurrentSemanticValue.td = new procedure_header(ValueStack[ValueStack.Depth-3].stn as formal_parameters, ValueStack[ValueStack.Depth-2].stn as procedure_attributes_list, ValueStack[ValueStack.Depth-4].stn as method_name, ValueStack[ValueStack.Depth-1].stn as where_definition_list, CurrentLocationSpan); } break; - case 458: // func_header -> tkFunction, func_name, fp_list, optional_method_modificators, + case 456: // func_header -> tkFunction, func_name, fp_list, optional_method_modificators, // optional_where_section { CurrentSemanticValue.td = new function_header(ValueStack[ValueStack.Depth-3].stn as formal_parameters, ValueStack[ValueStack.Depth-2].stn as procedure_attributes_list, ValueStack[ValueStack.Depth-4].stn as method_name, ValueStack[ValueStack.Depth-1].stn as where_definition_list, null, CurrentLocationSpan); } break; - case 459: // func_header -> tkFunction, func_name, fp_list, tkColon, fptype, + case 457: // func_header -> tkFunction, func_name, fp_list, tkColon, fptype, // optional_method_modificators, optional_where_section { CurrentSemanticValue.td = new function_header(ValueStack[ValueStack.Depth-5].stn as formal_parameters, ValueStack[ValueStack.Depth-2].stn as procedure_attributes_list, ValueStack[ValueStack.Depth-6].stn as method_name, ValueStack[ValueStack.Depth-1].stn as where_definition_list, ValueStack[ValueStack.Depth-3].td as type_definition, CurrentLocationSpan); } break; - case 460: // external_block -> tkExternal, external_directive_ident, tkName, + case 458: // external_block -> tkExternal, external_directive_ident, tkName, // external_directive_ident, tkSemiColon { CurrentSemanticValue.stn = new external_directive(ValueStack[ValueStack.Depth-4].ex, ValueStack[ValueStack.Depth-2].ex, CurrentLocationSpan); } break; - case 461: // external_block -> tkExternal, external_directive_ident, tkSemiColon + case 459: // external_block -> tkExternal, external_directive_ident, tkSemiColon { CurrentSemanticValue.stn = new external_directive(ValueStack[ValueStack.Depth-2].ex, null, CurrentLocationSpan); } break; - case 462: // external_block -> tkExternal, tkSemiColon + case 460: // external_block -> tkExternal, tkSemiColon { CurrentSemanticValue.stn = new external_directive(null, null, CurrentLocationSpan); } break; - case 463: // external_directive_ident -> identifier + case 461: // external_directive_ident -> identifier { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].id; } break; - case 464: // external_directive_ident -> literal + case 462: // external_directive_ident -> literal { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 465: // block -> decl_sect_list, compound_stmt, tkSemiColon + case 463: // block -> decl_sect_list, compound_stmt, tkSemiColon { CurrentSemanticValue.stn = new block(ValueStack[ValueStack.Depth-3].stn as declarations, ValueStack[ValueStack.Depth-2].stn as statement_list, CurrentLocationSpan); } break; - case 466: // inclass_block -> inclass_decl_sect_list, compound_stmt, tkSemiColon + case 464: // inclass_block -> inclass_decl_sect_list, compound_stmt, tkSemiColon { CurrentSemanticValue.stn = new block(ValueStack[ValueStack.Depth-3].stn as declarations, ValueStack[ValueStack.Depth-2].stn as statement_list, CurrentLocationSpan); } break; - case 467: // inclass_block -> external_block + case 465: // inclass_block -> external_block { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 468: // fp_list -> /* empty */ + case 466: // fp_list -> /* empty */ { CurrentSemanticValue.stn = null; } break; - case 469: // fp_list -> tkRoundOpen, tkRoundClose + case 467: // fp_list -> tkRoundOpen, tkRoundClose { CurrentSemanticValue.stn = null; } break; - case 470: // fp_list -> tkRoundOpen, fp_sect_list, tkRoundClose + case 468: // fp_list -> tkRoundOpen, fp_sect_list, tkRoundClose { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-2].stn; if (CurrentSemanticValue.stn != null) CurrentSemanticValue.stn.source_context = CurrentLocationSpan; } break; - case 471: // fp_sect_list -> fp_sect + case 469: // fp_sect_list -> fp_sect { CurrentSemanticValue.stn = new formal_parameters(ValueStack[ValueStack.Depth-1].stn as typed_parameters, CurrentLocationSpan); } break; - case 472: // fp_sect_list -> fp_sect_list, tkSemiColon, fp_sect + case 470: // fp_sect_list -> fp_sect_list, tkSemiColon, fp_sect { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as formal_parameters).Add(ValueStack[ValueStack.Depth-1].stn as typed_parameters, CurrentLocationSpan); } break; - case 473: // fp_sect -> attribute_declarations, simple_fp_sect + case 471: // fp_sect -> attribute_declarations, simple_fp_sect { (ValueStack[ValueStack.Depth-1].stn as declaration).attributes = ValueStack[ValueStack.Depth-2].stn as attribute_list; CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 474: // simple_fp_sect -> param_name_list, tkColon, fptype + case 472: // simple_fp_sect -> param_name_list, tkColon, fptype { CurrentSemanticValue.stn = new typed_parameters(ValueStack[ValueStack.Depth-3].stn as ident_list, ValueStack[ValueStack.Depth-1].td, parametr_kind.none, null, CurrentLocationSpan); } break; - case 475: // simple_fp_sect -> tkVar, param_name_list, tkColon, fptype + case 473: // simple_fp_sect -> tkVar, param_name_list, tkColon, fptype { CurrentSemanticValue.stn = new typed_parameters(ValueStack[ValueStack.Depth-3].stn as ident_list, ValueStack[ValueStack.Depth-1].td, parametr_kind.var_parametr, null, CurrentLocationSpan); } break; - case 476: // simple_fp_sect -> tkConst, param_name_list, tkColon, fptype + case 474: // simple_fp_sect -> tkConst, param_name_list, tkColon, fptype { CurrentSemanticValue.stn = new typed_parameters(ValueStack[ValueStack.Depth-3].stn as ident_list, ValueStack[ValueStack.Depth-1].td, parametr_kind.const_parametr, null, CurrentLocationSpan); } break; - case 477: // simple_fp_sect -> tkParams, param_name_list, tkColon, fptype + case 475: // simple_fp_sect -> tkParams, param_name_list, tkColon, fptype { CurrentSemanticValue.stn = new typed_parameters(ValueStack[ValueStack.Depth-3].stn as ident_list, ValueStack[ValueStack.Depth-1].td,parametr_kind.params_parametr,null, CurrentLocationSpan); } break; - case 478: // simple_fp_sect -> param_name_list, tkColon, fptype, tkAssign, expr + case 476: // simple_fp_sect -> param_name_list, tkColon, fptype, tkAssign, expr { CurrentSemanticValue.stn = new typed_parameters(ValueStack[ValueStack.Depth-5].stn as ident_list, ValueStack[ValueStack.Depth-3].td, parametr_kind.none, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 479: // simple_fp_sect -> tkVar, param_name_list, tkColon, fptype, tkAssign, expr + case 477: // simple_fp_sect -> tkVar, param_name_list, tkColon, fptype, tkAssign, expr { CurrentSemanticValue.stn = new typed_parameters(ValueStack[ValueStack.Depth-5].stn as ident_list, ValueStack[ValueStack.Depth-3].td, parametr_kind.var_parametr, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 480: // simple_fp_sect -> tkConst, param_name_list, tkColon, fptype, tkAssign, expr + case 478: // simple_fp_sect -> tkConst, param_name_list, tkColon, fptype, tkAssign, expr { CurrentSemanticValue.stn = new typed_parameters(ValueStack[ValueStack.Depth-5].stn as ident_list, ValueStack[ValueStack.Depth-3].td, parametr_kind.const_parametr, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 481: // param_name_list -> param_name + case 479: // param_name_list -> param_name { CurrentSemanticValue.stn = new ident_list(ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan); } break; - case 482: // param_name_list -> param_name_list, tkComma, param_name + case 480: // param_name_list -> param_name_list, tkComma, param_name { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as ident_list).Add(ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan); } break; - case 483: // param_name -> identifier + case 481: // param_name -> identifier { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 484: // fptype -> type_ref + case 482: // fptype -> type_ref { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 485: // fptype_noproctype -> simple_type + case 483: // fptype_noproctype -> simple_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 486: // fptype_noproctype -> string_type + case 484: // fptype_noproctype -> string_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 487: // fptype_noproctype -> pointer_type + case 485: // fptype_noproctype -> pointer_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 488: // fptype_noproctype -> structured_type + case 486: // fptype_noproctype -> structured_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 489: // fptype_noproctype -> template_type + case 487: // fptype_noproctype -> template_type { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 490: // stmt -> unlabelled_stmt + case 488: // stmt -> unlabelled_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 491: // stmt -> label_name, tkColon, stmt + case 489: // stmt -> label_name, tkColon, stmt { CurrentSemanticValue.stn = new labeled_statement(ValueStack[ValueStack.Depth-3].id, ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 492: // unlabelled_stmt -> /* empty */ + case 490: // unlabelled_stmt -> /* empty */ { CurrentSemanticValue.stn = new empty_statement(); CurrentSemanticValue.stn.source_context = null; } break; - case 493: // unlabelled_stmt -> assignment + case 491: // unlabelled_stmt -> assignment { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 494: // unlabelled_stmt -> proc_call + case 492: // unlabelled_stmt -> proc_call { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 495: // unlabelled_stmt -> goto_stmt + case 493: // unlabelled_stmt -> goto_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 496: // unlabelled_stmt -> compound_stmt + case 494: // unlabelled_stmt -> compound_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 497: // unlabelled_stmt -> if_stmt + case 495: // unlabelled_stmt -> if_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 498: // unlabelled_stmt -> case_stmt + case 496: // unlabelled_stmt -> case_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 499: // unlabelled_stmt -> repeat_stmt + case 497: // unlabelled_stmt -> repeat_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 500: // unlabelled_stmt -> while_stmt + case 498: // unlabelled_stmt -> while_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 501: // unlabelled_stmt -> for_stmt + case 499: // unlabelled_stmt -> for_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 502: // unlabelled_stmt -> with_stmt + case 500: // unlabelled_stmt -> with_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 503: // unlabelled_stmt -> inherited_message + case 501: // unlabelled_stmt -> inherited_message { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 504: // unlabelled_stmt -> try_stmt + case 502: // unlabelled_stmt -> try_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 505: // unlabelled_stmt -> raise_stmt + case 503: // unlabelled_stmt -> raise_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 506: // unlabelled_stmt -> foreach_stmt + case 504: // unlabelled_stmt -> foreach_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 507: // unlabelled_stmt -> var_stmt + case 505: // unlabelled_stmt -> var_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 508: // unlabelled_stmt -> expr_as_stmt + case 506: // unlabelled_stmt -> expr_as_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 509: // unlabelled_stmt -> lock_stmt + case 507: // unlabelled_stmt -> lock_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 510: // unlabelled_stmt -> yield_stmt + case 508: // unlabelled_stmt -> yield_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 511: // unlabelled_stmt -> yield_sequence_stmt + case 509: // unlabelled_stmt -> yield_sequence_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 512: // unlabelled_stmt -> loop_stmt + case 510: // unlabelled_stmt -> loop_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 513: // unlabelled_stmt -> match_with + case 511: // unlabelled_stmt -> match_with { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 514: // loop_stmt -> tkLoop, expr_l1, tkDo, unlabelled_stmt + case 512: // loop_stmt -> tkLoop, expr_l1, tkDo, unlabelled_stmt { CurrentSemanticValue.stn = new loop_stmt(ValueStack[ValueStack.Depth-3].ex,ValueStack[ValueStack.Depth-1].stn as statement,CurrentLocationSpan); } break; - case 515: // yield_stmt -> tkYield, expr_l1_func_decl_lambda + case 513: // yield_stmt -> tkYield, expr_l1_func_decl_lambda { CurrentSemanticValue.stn = new yield_node(ValueStack[ValueStack.Depth-1].ex,CurrentLocationSpan); } break; - case 516: // yield_sequence_stmt -> tkYield, tkSequence, expr_l1_func_decl_lambda + case 514: // yield_sequence_stmt -> tkYield, tkSequence, expr_l1_func_decl_lambda { CurrentSemanticValue.stn = new yield_sequence_node(ValueStack[ValueStack.Depth-1].ex,CurrentLocationSpan); } break; - case 517: // var_stmt -> tkVar, var_decl_part + case 515: // var_stmt -> tkVar, var_decl_part { CurrentSemanticValue.stn = new var_statement(ValueStack[ValueStack.Depth-1].stn as var_def_statement, CurrentLocationSpan); } break; - case 518: // var_stmt -> tkRoundOpen, tkVar, identifier, tkComma, var_ident_list, + case 516: // var_stmt -> tkRoundOpen, tkVar, identifier, tkComma, var_ident_list, // tkRoundClose, tkAssign, expr { (ValueStack[ValueStack.Depth-4].ob as ident_list).Insert(0,ValueStack[ValueStack.Depth-6].id); @@ -5300,7 +6785,7 @@ public partial class GPPGParser: ShiftReduceParser tkVar, tkRoundOpen, identifier, tkComma, ident_list, tkRoundClose, + case 517: // var_stmt -> tkVar, tkRoundOpen, identifier, tkComma, ident_list, tkRoundClose, // tkAssign, expr { (ValueStack[ValueStack.Depth-4].stn as ident_list).Insert(0,ValueStack[ValueStack.Depth-6].id); @@ -5308,12 +6793,12 @@ public partial class GPPGParser: ShiftReduceParser var_reference, assign_operator, expr_with_func_decl_lambda + case 518: // assignment -> var_reference, assign_operator, expr_with_func_decl_lambda { CurrentSemanticValue.stn = new assign(ValueStack[ValueStack.Depth-3].ex as addressed_value, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan); } break; - case 521: // assignment -> tkRoundOpen, variable, tkComma, variable_list, tkRoundClose, + case 519: // assignment -> tkRoundOpen, variable, tkComma, variable_list, tkRoundClose, // assign_operator, expr { if (ValueStack[ValueStack.Depth-2].op.type != Operators.Assignment) @@ -5323,7 +6808,7 @@ public partial class GPPGParser: ShiftReduceParser variable, tkQuestionSquareOpen, format_expr, tkSquareClose, + case 520: // assignment -> variable, tkQuestionSquareOpen, format_expr, tkSquareClose, // assign_operator, expr { var fe = ValueStack[ValueStack.Depth-4].ex as format_expr; @@ -5338,41 +6823,41 @@ public partial class GPPGParser: ShiftReduceParser variable + case 521: // variable_list -> variable { CurrentSemanticValue.ob = new addressed_value_list(ValueStack[ValueStack.Depth-1].ex as addressed_value,LocationStack[LocationStack.Depth-1]); } break; - case 524: // variable_list -> variable_list, tkComma, variable + case 522: // variable_list -> variable_list, tkComma, variable { (ValueStack[ValueStack.Depth-3].ob as addressed_value_list).Add(ValueStack[ValueStack.Depth-1].ex as addressed_value); (ValueStack[ValueStack.Depth-3].ob as syntax_tree_node).source_context = LexLocation.MergeAll(LocationStack[LocationStack.Depth-3],LocationStack[LocationStack.Depth-2],LocationStack[LocationStack.Depth-1]); CurrentSemanticValue.ob = ValueStack[ValueStack.Depth-3].ob; } break; - case 525: // var_ident_list -> tkVar, identifier + case 523: // var_ident_list -> tkVar, identifier { CurrentSemanticValue.ob = new ident_list(ValueStack[ValueStack.Depth-1].id,CurrentLocationSpan); } break; - case 526: // var_ident_list -> var_ident_list, tkComma, tkVar, identifier + case 524: // var_ident_list -> var_ident_list, tkComma, tkVar, identifier { (ValueStack[ValueStack.Depth-4].ob as ident_list).Add(ValueStack[ValueStack.Depth-1].id); (ValueStack[ValueStack.Depth-4].ob as ident_list).source_context = LexLocation.MergeAll(LocationStack[LocationStack.Depth-4],LocationStack[LocationStack.Depth-3],LocationStack[LocationStack.Depth-2],LocationStack[LocationStack.Depth-1]); CurrentSemanticValue.ob = ValueStack[ValueStack.Depth-4].ob; } break; - case 527: // proc_call -> var_reference + case 525: // proc_call -> var_reference { CurrentSemanticValue.stn = new procedure_call(ValueStack[ValueStack.Depth-1].ex as addressed_value, ValueStack[ValueStack.Depth-1].ex is ident, CurrentLocationSpan); } break; - case 528: // goto_stmt -> tkGoto, label_name + case 526: // goto_stmt -> tkGoto, label_name { CurrentSemanticValue.stn = new goto_statement(ValueStack[ValueStack.Depth-1].id, CurrentLocationSpan); } break; - case 529: // compound_stmt -> tkBegin, stmt_list, tkEnd + case 527: // compound_stmt -> tkBegin, stmt_list, tkEnd { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-2].stn; (CurrentSemanticValue.stn as statement_list).left_logical_bracket = ValueStack[ValueStack.Depth-3].ti; @@ -5380,124 +6865,124 @@ public partial class GPPGParser: ShiftReduceParser stmt + case 528: // stmt_list -> stmt { CurrentSemanticValue.stn = new statement_list(ValueStack[ValueStack.Depth-1].stn as statement, LocationStack[LocationStack.Depth-1]); } break; - case 531: // stmt_list -> stmt_list, tkSemiColon, stmt + case 529: // stmt_list -> stmt_list, tkSemiColon, stmt { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as statement_list).Add(ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 532: // if_stmt -> tkIf, expr_l1, tkThen, unlabelled_stmt + case 530: // if_stmt -> tkIf, expr_l1, tkThen, unlabelled_stmt { CurrentSemanticValue.stn = new if_node(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].stn as statement, null, CurrentLocationSpan); } break; - case 533: // if_stmt -> tkIf, expr_l1, tkThen, unlabelled_stmt, tkElse, unlabelled_stmt + case 531: // if_stmt -> tkIf, expr_l1, tkThen, unlabelled_stmt, tkElse, unlabelled_stmt { CurrentSemanticValue.stn = new if_node(ValueStack[ValueStack.Depth-5].ex, ValueStack[ValueStack.Depth-3].stn as statement, ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 534: // match_with -> tkMatch, expr_l1, tkWith, pattern_cases, else_case, tkEnd + case 532: // match_with -> tkMatch, expr_l1, tkWith, pattern_cases, else_case, tkEnd { CurrentSemanticValue.stn = new match_with(ValueStack[ValueStack.Depth-5].ex, ValueStack[ValueStack.Depth-3].stn as pattern_cases, ValueStack[ValueStack.Depth-2].stn as statement, CurrentLocationSpan); } break; - case 535: // match_with -> tkMatch, expr_l1, tkWith, pattern_cases, tkSemiColon, else_case, + case 533: // match_with -> tkMatch, expr_l1, tkWith, pattern_cases, tkSemiColon, else_case, // tkEnd { CurrentSemanticValue.stn = new match_with(ValueStack[ValueStack.Depth-6].ex, ValueStack[ValueStack.Depth-4].stn as pattern_cases, ValueStack[ValueStack.Depth-2].stn as statement, CurrentLocationSpan); } break; - case 536: // pattern_cases -> pattern_case + case 534: // pattern_cases -> pattern_case { CurrentSemanticValue.stn = new pattern_cases(ValueStack[ValueStack.Depth-1].stn as pattern_case); } break; - case 537: // pattern_cases -> pattern_cases, tkSemiColon, pattern_case + case 535: // pattern_cases -> pattern_cases, tkSemiColon, pattern_case { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as pattern_cases).Add(ValueStack[ValueStack.Depth-1].stn as pattern_case); } break; - case 538: // pattern_case -> pattern_optional_var, tkWhen, expr_l1, tkColon, unlabelled_stmt + case 536: // pattern_case -> pattern_optional_var, tkWhen, expr_l1, tkColon, unlabelled_stmt { CurrentSemanticValue.stn = new pattern_case(ValueStack[ValueStack.Depth-5].stn as pattern_node, ValueStack[ValueStack.Depth-1].stn as statement, ValueStack[ValueStack.Depth-3].ex, CurrentLocationSpan); } break; - case 539: // pattern_case -> deconstruction_or_const_pattern, tkColon, unlabelled_stmt + case 537: // pattern_case -> deconstruction_or_const_pattern, tkColon, unlabelled_stmt { CurrentSemanticValue.stn = new pattern_case(ValueStack[ValueStack.Depth-3].stn as pattern_node, ValueStack[ValueStack.Depth-1].stn as statement, null, CurrentLocationSpan); } break; - case 540: // pattern_case -> collection_pattern, tkColon, unlabelled_stmt + case 538: // pattern_case -> collection_pattern, tkColon, unlabelled_stmt { CurrentSemanticValue.stn = new pattern_case(ValueStack[ValueStack.Depth-3].stn as pattern_node, ValueStack[ValueStack.Depth-1].stn as statement, null, CurrentLocationSpan); } break; - case 541: // pattern_case -> tuple_pattern, tkWhen, expr_l1, tkColon, unlabelled_stmt + case 539: // pattern_case -> tuple_pattern, tkWhen, expr_l1, tkColon, unlabelled_stmt { CurrentSemanticValue.stn = new pattern_case(ValueStack[ValueStack.Depth-5].stn as pattern_node, ValueStack[ValueStack.Depth-1].stn as statement, ValueStack[ValueStack.Depth-3].ex, CurrentLocationSpan); } break; - case 542: // pattern_case -> tuple_pattern, tkColon, unlabelled_stmt + case 540: // pattern_case -> tuple_pattern, tkColon, unlabelled_stmt { CurrentSemanticValue.stn = new pattern_case(ValueStack[ValueStack.Depth-3].stn as pattern_node, ValueStack[ValueStack.Depth-1].stn as statement, null, CurrentLocationSpan); } break; - case 543: // case_stmt -> tkCase, expr_l1, tkOf, case_list, else_case, tkEnd + case 541: // case_stmt -> tkCase, expr_l1, tkOf, case_list, else_case, tkEnd { CurrentSemanticValue.stn = new case_node(ValueStack[ValueStack.Depth-5].ex, ValueStack[ValueStack.Depth-3].stn as case_variants, ValueStack[ValueStack.Depth-2].stn as statement, CurrentLocationSpan); } break; - case 544: // case_stmt -> tkCase, expr_l1, tkOf, case_list, tkSemiColon, else_case, tkEnd + case 542: // case_stmt -> tkCase, expr_l1, tkOf, case_list, tkSemiColon, else_case, tkEnd { CurrentSemanticValue.stn = new case_node(ValueStack[ValueStack.Depth-6].ex, ValueStack[ValueStack.Depth-4].stn as case_variants, ValueStack[ValueStack.Depth-2].stn as statement, CurrentLocationSpan); } break; - case 545: // case_stmt -> tkCase, expr_l1, tkOf, else_case, tkEnd + case 543: // case_stmt -> tkCase, expr_l1, tkOf, else_case, tkEnd { CurrentSemanticValue.stn = new case_node(ValueStack[ValueStack.Depth-4].ex, NewCaseItem(new empty_statement(), null), ValueStack[ValueStack.Depth-2].stn as statement, CurrentLocationSpan); } break; - case 546: // case_list -> case_item + case 544: // case_list -> case_item { if (ValueStack[ValueStack.Depth-1].stn is empty_statement) CurrentSemanticValue.stn = NewCaseItem(ValueStack[ValueStack.Depth-1].stn, null); else CurrentSemanticValue.stn = NewCaseItem(ValueStack[ValueStack.Depth-1].stn, CurrentLocationSpan); } break; - case 547: // case_list -> case_list, tkSemiColon, case_item + case 545: // case_list -> case_list, tkSemiColon, case_item { CurrentSemanticValue.stn = AddCaseItem(ValueStack[ValueStack.Depth-3].stn as case_variants, ValueStack[ValueStack.Depth-1].stn, CurrentLocationSpan); } break; - case 548: // case_item -> case_label_list, tkColon, unlabelled_stmt + case 546: // case_item -> case_label_list, tkColon, unlabelled_stmt { CurrentSemanticValue.stn = new case_variant(ValueStack[ValueStack.Depth-3].stn as expression_list, ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 549: // case_label_list -> case_label + case 547: // case_label_list -> case_label { CurrentSemanticValue.stn = new expression_list(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 550: // case_label_list -> case_label_list, tkComma, case_label + case 548: // case_label_list -> case_label_list, tkComma, case_label { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as expression_list).Add(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 551: // case_label -> const_elem + case 549: // case_label -> const_elem { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 552: // else_case -> /* empty */ + case 550: // else_case -> /* empty */ { CurrentSemanticValue.stn = null;} break; - case 553: // else_case -> tkElse, stmt_list + case 551: // else_case -> tkElse, stmt_list { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 554: // repeat_stmt -> tkRepeat, stmt_list, tkUntil, expr + case 552: // repeat_stmt -> tkRepeat, stmt_list, tkUntil, expr { CurrentSemanticValue.stn = new repeat_node(ValueStack[ValueStack.Depth-3].stn as statement_list, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); (ValueStack[ValueStack.Depth-3].stn as statement_list).left_logical_bracket = ValueStack[ValueStack.Depth-4].ti; @@ -5505,23 +6990,23 @@ public partial class GPPGParser: ShiftReduceParser tkWhile, expr_l1, optional_tk_do, unlabelled_stmt + case 553: // while_stmt -> tkWhile, expr_l1, optional_tk_do, unlabelled_stmt { CurrentSemanticValue.stn = NewWhileStmt(ValueStack[ValueStack.Depth-4].ti, ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-2].ti, ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 556: // optional_tk_do -> tkDo + case 554: // optional_tk_do -> tkDo { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 557: // optional_tk_do -> /* empty */ + case 555: // optional_tk_do -> /* empty */ { CurrentSemanticValue.ti = null; } break; - case 558: // lock_stmt -> tkLock, expr_l1, tkDo, unlabelled_stmt + case 556: // lock_stmt -> tkLock, expr_l1, tkDo, unlabelled_stmt { CurrentSemanticValue.stn = new lock_stmt(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 559: // foreach_stmt -> tkForeach, identifier, foreach_stmt_ident_dype_opt, tkIn, + case 557: // foreach_stmt -> tkForeach, identifier, foreach_stmt_ident_dype_opt, tkIn, // expr_l1, tkDo, unlabelled_stmt { CurrentSemanticValue.stn = new foreach_stmt(ValueStack[ValueStack.Depth-6].id, ValueStack[ValueStack.Depth-5].td, ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); @@ -5529,19 +7014,19 @@ public partial class GPPGParser: ShiftReduceParser tkForeach, tkVar, identifier, tkColon, type_ref, tkIn, expr_l1, + case 558: // foreach_stmt -> tkForeach, tkVar, identifier, tkColon, type_ref, tkIn, expr_l1, // tkDo, unlabelled_stmt { CurrentSemanticValue.stn = new foreach_stmt(ValueStack[ValueStack.Depth-7].id, ValueStack[ValueStack.Depth-5].td, ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 561: // foreach_stmt -> tkForeach, tkVar, identifier, tkIn, expr_l1, tkDo, + case 559: // foreach_stmt -> tkForeach, tkVar, identifier, tkIn, expr_l1, tkDo, // unlabelled_stmt { CurrentSemanticValue.stn = new foreach_stmt(ValueStack[ValueStack.Depth-5].id, new no_type_foreach(), ValueStack[ValueStack.Depth-3].ex, (statement)ValueStack[ValueStack.Depth-1].stn, CurrentLocationSpan); } break; - case 562: // foreach_stmt -> tkForeach, tkVar, tkRoundOpen, ident_list, tkRoundClose, tkIn, + case 560: // foreach_stmt -> tkForeach, tkVar, tkRoundOpen, ident_list, tkRoundClose, tkIn, // expr_l1, tkDo, unlabelled_stmt { if (parsertools.build_tree_for_formatter) @@ -5565,56 +7050,56 @@ public partial class GPPGParser: ShiftReduceParser tkColon, type_ref + case 561: // foreach_stmt_ident_dype_opt -> tkColon, type_ref { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 565: // for_stmt -> tkFor, optional_var, identifier, for_stmt_decl_or_assign, expr_l1, + case 563: // for_stmt -> tkFor, optional_var, identifier, for_stmt_decl_or_assign, expr_l1, // for_cycle_type, expr_l1, optional_tk_do, unlabelled_stmt { CurrentSemanticValue.stn = NewForStmt((bool)ValueStack[ValueStack.Depth-8].ob, ValueStack[ValueStack.Depth-7].id, ValueStack[ValueStack.Depth-6].td, ValueStack[ValueStack.Depth-5].ex, (for_cycle_type)ValueStack[ValueStack.Depth-4].ob, ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-2].ti, ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 566: // optional_var -> tkVar + case 564: // optional_var -> tkVar { CurrentSemanticValue.ob = true; } break; - case 567: // optional_var -> /* empty */ + case 565: // optional_var -> /* empty */ { CurrentSemanticValue.ob = false; } break; - case 569: // for_stmt_decl_or_assign -> tkColon, simple_type_identifier, tkAssign + case 567: // for_stmt_decl_or_assign -> tkColon, simple_type_identifier, tkAssign { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-2].td; } break; - case 570: // for_cycle_type -> tkTo + case 568: // for_cycle_type -> tkTo { CurrentSemanticValue.ob = for_cycle_type.to; } break; - case 571: // for_cycle_type -> tkDownto + case 569: // for_cycle_type -> tkDownto { CurrentSemanticValue.ob = for_cycle_type.downto; } break; - case 572: // with_stmt -> tkWith, expr_list, tkDo, unlabelled_stmt + case 570: // with_stmt -> tkWith, expr_list, tkDo, unlabelled_stmt { CurrentSemanticValue.stn = new with_statement(ValueStack[ValueStack.Depth-1].stn as statement, ValueStack[ValueStack.Depth-3].stn as expression_list, CurrentLocationSpan); } break; - case 573: // inherited_message -> tkInherited + case 571: // inherited_message -> tkInherited { CurrentSemanticValue.stn = new inherited_message(); CurrentSemanticValue.stn.source_context = CurrentLocationSpan; } break; - case 574: // try_stmt -> tkTry, stmt_list, try_handler + case 572: // try_stmt -> tkTry, stmt_list, try_handler { CurrentSemanticValue.stn = new try_stmt(ValueStack[ValueStack.Depth-2].stn as statement_list, ValueStack[ValueStack.Depth-1].stn as try_handler, CurrentLocationSpan); (ValueStack[ValueStack.Depth-2].stn as statement_list).left_logical_bracket = ValueStack[ValueStack.Depth-3].ti; ValueStack[ValueStack.Depth-2].stn.source_context = LocationStack[LocationStack.Depth-3].Merge(LocationStack[LocationStack.Depth-2]); } break; - case 575: // try_handler -> tkFinally, stmt_list, tkEnd + case 573: // try_handler -> tkFinally, stmt_list, tkEnd { CurrentSemanticValue.stn = new try_handler_finally(ValueStack[ValueStack.Depth-2].stn as statement_list, CurrentLocationSpan); (ValueStack[ValueStack.Depth-2].stn as statement_list).left_logical_bracket = ValueStack[ValueStack.Depth-3].ti; (ValueStack[ValueStack.Depth-2].stn as statement_list).right_logical_bracket = ValueStack[ValueStack.Depth-1].ti; } break; - case 576: // try_handler -> tkExcept, exception_block, tkEnd + case 574: // try_handler -> tkExcept, exception_block, tkEnd { CurrentSemanticValue.stn = new try_handler_except((exception_block)ValueStack[ValueStack.Depth-2].stn, CurrentLocationSpan); if ((ValueStack[ValueStack.Depth-2].stn as exception_block).stmt_list != null) @@ -5624,163 +7109,163 @@ public partial class GPPGParser: ShiftReduceParser exception_handler_list, exception_block_else_branch + case 575: // exception_block -> exception_handler_list, exception_block_else_branch { CurrentSemanticValue.stn = new exception_block(null, (exception_handler_list)ValueStack[ValueStack.Depth-2].stn, (statement_list)ValueStack[ValueStack.Depth-1].stn, CurrentLocationSpan); } break; - case 578: // exception_block -> exception_handler_list, tkSemiColon, + case 576: // exception_block -> exception_handler_list, tkSemiColon, // exception_block_else_branch { CurrentSemanticValue.stn = new exception_block(null, (exception_handler_list)ValueStack[ValueStack.Depth-3].stn, (statement_list)ValueStack[ValueStack.Depth-1].stn, CurrentLocationSpan); } break; - case 579: // exception_block -> stmt_list + case 577: // exception_block -> stmt_list { CurrentSemanticValue.stn = new exception_block(ValueStack[ValueStack.Depth-1].stn as statement_list, null, null, LocationStack[LocationStack.Depth-1]); } break; - case 580: // exception_handler_list -> exception_handler + case 578: // exception_handler_list -> exception_handler { CurrentSemanticValue.stn = new exception_handler_list(ValueStack[ValueStack.Depth-1].stn as exception_handler, CurrentLocationSpan); } break; - case 581: // exception_handler_list -> exception_handler_list, tkSemiColon, + case 579: // exception_handler_list -> exception_handler_list, tkSemiColon, // exception_handler { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as exception_handler_list).Add(ValueStack[ValueStack.Depth-1].stn as exception_handler, CurrentLocationSpan); } break; - case 582: // exception_block_else_branch -> /* empty */ + case 580: // exception_block_else_branch -> /* empty */ { CurrentSemanticValue.stn = null; } break; - case 583: // exception_block_else_branch -> tkElse, stmt_list + case 581: // exception_block_else_branch -> tkElse, stmt_list { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 584: // exception_handler -> tkOn, exception_identifier, tkDo, unlabelled_stmt + case 582: // exception_handler -> tkOn, exception_identifier, tkDo, unlabelled_stmt { CurrentSemanticValue.stn = new exception_handler((ValueStack[ValueStack.Depth-3].stn as exception_ident).variable, (ValueStack[ValueStack.Depth-3].stn as exception_ident).type_name, ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 585: // exception_identifier -> exception_class_type_identifier + case 583: // exception_identifier -> exception_class_type_identifier { CurrentSemanticValue.stn = new exception_ident(null, (named_type_reference)ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 586: // exception_identifier -> exception_variable, tkColon, + case 584: // exception_identifier -> exception_variable, tkColon, // exception_class_type_identifier { CurrentSemanticValue.stn = new exception_ident(ValueStack[ValueStack.Depth-3].id, (named_type_reference)ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 587: // exception_class_type_identifier -> simple_type_identifier + case 585: // exception_class_type_identifier -> simple_type_identifier { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 588: // exception_variable -> identifier + case 586: // exception_variable -> identifier { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 589: // raise_stmt -> tkRaise + case 587: // raise_stmt -> tkRaise { CurrentSemanticValue.stn = new raise_stmt(); CurrentSemanticValue.stn.source_context = CurrentLocationSpan; } break; - case 590: // raise_stmt -> tkRaise, expr + case 588: // raise_stmt -> tkRaise, expr { CurrentSemanticValue.stn = new raise_stmt(ValueStack[ValueStack.Depth-1].ex, null, CurrentLocationSpan); } break; - case 591: // expr_list -> expr_with_func_decl_lambda + case 589: // expr_list -> expr_with_func_decl_lambda { CurrentSemanticValue.stn = new expression_list(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 592: // expr_list -> expr_list, tkComma, expr_with_func_decl_lambda + case 590: // expr_list -> expr_list, tkComma, expr_with_func_decl_lambda { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as expression_list).Add(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 593: // expr_as_stmt -> allowable_expr_as_stmt + case 591: // expr_as_stmt -> allowable_expr_as_stmt { CurrentSemanticValue.stn = new expression_as_statement(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 594: // allowable_expr_as_stmt -> new_expr + case 592: // allowable_expr_as_stmt -> new_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 595: // expr_with_func_decl_lambda -> expr + case 593: // expr_with_func_decl_lambda -> expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 596: // expr_with_func_decl_lambda -> func_decl_lambda + case 594: // expr_with_func_decl_lambda -> func_decl_lambda { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 597: // expr -> expr_l1 + case 595: // expr -> expr_l1 { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 598: // expr -> format_expr + case 596: // expr -> format_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 599: // expr_l1 -> expr_dq + case 597: // expr_l1 -> expr_dq { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 600: // expr_l1 -> question_expr + case 598: // expr_l1 -> question_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 601: // expr_l1 -> new_question_expr + case 599: // expr_l1 -> new_question_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 602: // expr_l1_for_question_expr -> expr_dq + case 600: // expr_l1_for_question_expr -> expr_dq { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 603: // expr_l1_for_question_expr -> question_expr + case 601: // expr_l1_for_question_expr -> question_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 604: // expr_l1_for_new_question_expr -> expr_dq + case 602: // expr_l1_for_new_question_expr -> expr_dq { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 605: // expr_l1_for_new_question_expr -> new_question_expr + case 603: // expr_l1_for_new_question_expr -> new_question_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 606: // expr_l1_func_decl_lambda -> expr_l1 + case 604: // expr_l1_func_decl_lambda -> expr_l1 { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 607: // expr_l1_func_decl_lambda -> func_decl_lambda + case 605: // expr_l1_func_decl_lambda -> func_decl_lambda { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 608: // expr_l1_for_lambda -> expr_dq + case 606: // expr_l1_for_lambda -> expr_dq { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 609: // expr_l1_for_lambda -> question_expr + case 607: // expr_l1_for_lambda -> question_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 610: // expr_l1_for_lambda -> func_decl_lambda + case 608: // expr_l1_for_lambda -> func_decl_lambda { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 611: // expr_dq -> relop_expr + case 609: // expr_dq -> relop_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 612: // expr_dq -> expr_dq, tkDoubleQuestion, relop_expr + case 610: // expr_dq -> expr_dq, tkDoubleQuestion, relop_expr { CurrentSemanticValue.ex = new double_question_node(ValueStack[ValueStack.Depth-3].ex as expression, ValueStack[ValueStack.Depth-1].ex as expression, CurrentLocationSpan);} break; - case 613: // sizeof_expr -> tkSizeOf, tkRoundOpen, simple_or_template_type_reference, + case 611: // sizeof_expr -> tkSizeOf, tkRoundOpen, simple_or_template_type_reference, // tkRoundClose { CurrentSemanticValue.ex = new sizeof_operator((named_type_reference)ValueStack[ValueStack.Depth-2].td, null, CurrentLocationSpan); } break; - case 614: // typeof_expr -> tkTypeOf, tkRoundOpen, simple_or_template_type_reference, + case 612: // typeof_expr -> tkTypeOf, tkRoundOpen, simple_or_template_type_reference, // tkRoundClose { CurrentSemanticValue.ex = new typeof_operator((named_type_reference)ValueStack[ValueStack.Depth-2].td, CurrentLocationSpan); } break; - case 615: // typeof_expr -> tkTypeOf, tkRoundOpen, empty_template_type_reference, + case 613: // typeof_expr -> tkTypeOf, tkRoundOpen, empty_template_type_reference, // tkRoundClose { CurrentSemanticValue.ex = new typeof_operator((named_type_reference)ValueStack[ValueStack.Depth-2].td, CurrentLocationSpan); } break; - case 616: // question_expr -> expr_l1_for_question_expr, tkQuestion, + case 614: // question_expr -> expr_l1_for_question_expr, tkQuestion, // expr_l1_for_question_expr, tkColon, // expr_l1_for_question_expr { @@ -5789,7 +7274,7 @@ public partial class GPPGParser: ShiftReduceParser tkIf, expr_l1_for_new_question_expr, tkThen, + case 615: // new_question_expr -> tkIf, expr_l1_for_new_question_expr, tkThen, // expr_l1_for_new_question_expr, tkElse, // expr_l1_for_new_question_expr { @@ -5805,47 +7290,47 @@ public partial class GPPGParser: ShiftReduceParser simple_type_identifier, + case 616: // empty_template_type_reference -> simple_type_identifier, // template_type_empty_params { CurrentSemanticValue.td = new template_type_reference((named_type_reference)ValueStack[ValueStack.Depth-2].td, (template_param_list)ValueStack[ValueStack.Depth-1].stn, CurrentLocationSpan); } break; - case 619: // empty_template_type_reference -> simple_type_identifier, tkAmpersend, + case 617: // empty_template_type_reference -> simple_type_identifier, tkAmpersend, // template_type_empty_params { CurrentSemanticValue.td = new template_type_reference((named_type_reference)ValueStack[ValueStack.Depth-3].td, (template_param_list)ValueStack[ValueStack.Depth-1].stn, CurrentLocationSpan); } break; - case 620: // simple_or_template_type_reference -> simple_type_identifier + case 618: // simple_or_template_type_reference -> simple_type_identifier { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 621: // simple_or_template_type_reference -> simple_type_identifier, + case 619: // simple_or_template_type_reference -> simple_type_identifier, // template_type_params { CurrentSemanticValue.td = new template_type_reference((named_type_reference)ValueStack[ValueStack.Depth-2].td, (template_param_list)ValueStack[ValueStack.Depth-1].stn, CurrentLocationSpan); } break; - case 622: // simple_or_template_type_reference -> simple_type_identifier, tkAmpersend, + case 620: // simple_or_template_type_reference -> simple_type_identifier, tkAmpersend, // template_type_params { CurrentSemanticValue.td = new template_type_reference((named_type_reference)ValueStack[ValueStack.Depth-3].td, (template_param_list)ValueStack[ValueStack.Depth-1].stn, CurrentLocationSpan); } break; - case 623: // optional_array_initializer -> tkRoundOpen, typed_const_list, tkRoundClose + case 621: // optional_array_initializer -> tkRoundOpen, typed_const_list, tkRoundClose { CurrentSemanticValue.stn = new array_const((expression_list)ValueStack[ValueStack.Depth-2].stn, CurrentLocationSpan); } break; - case 625: // new_expr -> tkNew, simple_or_template_type_reference, + case 623: // new_expr -> tkNew, simple_or_template_type_reference, // optional_expr_list_with_bracket { CurrentSemanticValue.ex = new new_expr(ValueStack[ValueStack.Depth-2].td, ValueStack[ValueStack.Depth-1].stn as expression_list, false, null, CurrentLocationSpan); } break; - case 626: // new_expr -> tkNew, simple_or_template_type_reference, tkSquareOpen, + case 624: // new_expr -> tkNew, simple_or_template_type_reference, tkSquareOpen, // optional_expr_list, tkSquareClose, optional_array_initializer { var el = ValueStack[ValueStack.Depth-3].stn as expression_list; @@ -5861,7 +7346,7 @@ public partial class GPPGParser: ShiftReduceParser tkNew, tkClass, tkRoundOpen, list_fields_in_unnamed_object, + case 625: // new_expr -> tkNew, tkClass, tkRoundOpen, list_fields_in_unnamed_object, // tkRoundClose { // sugared node @@ -5876,14 +7361,14 @@ public partial class GPPGParser: ShiftReduceParser identifier, tkAssign, relop_expr + case 626: // field_in_unnamed_object -> identifier, tkAssign, relop_expr { if (ValueStack[ValueStack.Depth-1].ex is nil_const) parsertools.AddErrorFromResource("NIL_IN_UNNAMED_OBJECT",CurrentLocationSpan); CurrentSemanticValue.ob = new name_assign_expr(ValueStack[ValueStack.Depth-3].id,ValueStack[ValueStack.Depth-1].ex,CurrentLocationSpan); } break; - case 629: // field_in_unnamed_object -> relop_expr + case 627: // field_in_unnamed_object -> relop_expr { ident name = null; var id = ValueStack[ValueStack.Depth-1].ex as ident; @@ -5903,13 +7388,13 @@ public partial class GPPGParser: ShiftReduceParser field_in_unnamed_object + case 628: // list_fields_in_unnamed_object -> field_in_unnamed_object { var l = new name_assign_expr_list(); CurrentSemanticValue.ob = l.Add(ValueStack[ValueStack.Depth-1].ob as name_assign_expr); } break; - case 631: // list_fields_in_unnamed_object -> list_fields_in_unnamed_object, tkComma, + case 629: // list_fields_in_unnamed_object -> list_fields_in_unnamed_object, tkComma, // field_in_unnamed_object { var nel = ValueStack[ValueStack.Depth-3].ob as name_assign_expr_list; @@ -5920,46 +7405,46 @@ public partial class GPPGParser: ShiftReduceParser /* empty */ + case 630: // optional_expr_list_with_bracket -> /* empty */ { CurrentSemanticValue.stn = null; } break; - case 633: // optional_expr_list_with_bracket -> tkRoundOpen, optional_expr_list, + case 631: // optional_expr_list_with_bracket -> tkRoundOpen, optional_expr_list, // tkRoundClose { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-2].stn; } break; - case 634: // relop_expr -> simple_expr + case 632: // relop_expr -> simple_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 635: // relop_expr -> relop_expr, relop, simple_expr + case 633: // relop_expr -> relop_expr, relop, simple_expr { CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan); } break; - case 636: // relop_expr -> relop_expr, relop, new_question_expr + case 634: // relop_expr -> relop_expr, relop, new_question_expr { CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan); } break; - case 637: // relop_expr -> is_type_expr, tkRoundOpen, pattern_out_param_list, tkRoundClose + case 635: // relop_expr -> is_type_expr, tkRoundOpen, pattern_out_param_list, tkRoundClose { var isTypeCheck = ValueStack[ValueStack.Depth-4].ex as typecast_node; var deconstructorPattern = new deconstructor_pattern(ValueStack[ValueStack.Depth-2].ob as List, isTypeCheck.type_def, null, CurrentLocationSpan); CurrentSemanticValue.ex = new is_pattern_expr(isTypeCheck.expr, deconstructorPattern, CurrentLocationSpan); } break; - case 638: // pattern -> simple_or_template_type_reference, tkRoundOpen, + case 636: // pattern -> simple_or_template_type_reference, tkRoundOpen, // pattern_out_param_list, tkRoundClose { CurrentSemanticValue.stn = new deconstructor_pattern(ValueStack[ValueStack.Depth-2].ob as List, ValueStack[ValueStack.Depth-4].td, null, CurrentLocationSpan); } break; - case 639: // pattern_optional_var -> simple_or_template_type_reference, tkRoundOpen, + case 637: // pattern_optional_var -> simple_or_template_type_reference, tkRoundOpen, // pattern_out_param_list_optional_var, tkRoundClose { CurrentSemanticValue.stn = new deconstructor_pattern(ValueStack[ValueStack.Depth-2].ob as List, ValueStack[ValueStack.Depth-4].td, null, CurrentLocationSpan); } break; - case 640: // deconstruction_or_const_pattern -> simple_or_template_type_reference, + case 638: // deconstruction_or_const_pattern -> simple_or_template_type_reference, // tkRoundOpen, // pattern_out_param_list_optional_var, // tkRoundClose @@ -5967,18 +7452,18 @@ public partial class GPPGParser: ShiftReduceParser, ValueStack[ValueStack.Depth-4].td, null, CurrentLocationSpan); } break; - case 641: // deconstruction_or_const_pattern -> const_pattern_expr_list + case 639: // deconstruction_or_const_pattern -> const_pattern_expr_list { CurrentSemanticValue.stn = new const_pattern(ValueStack[ValueStack.Depth-1].ob as List, CurrentLocationSpan); } break; - case 642: // const_pattern_expr_list -> const_pattern_expression + case 640: // const_pattern_expr_list -> const_pattern_expression { CurrentSemanticValue.ob = new List(); (CurrentSemanticValue.ob as List).Add(ValueStack[ValueStack.Depth-1].stn); } break; - case 643: // const_pattern_expr_list -> const_pattern_expr_list, tkComma, + case 641: // const_pattern_expr_list -> const_pattern_expr_list, tkComma, // const_pattern_expression { var list = ValueStack[ValueStack.Depth-3].ob as List; @@ -5986,36 +7471,36 @@ public partial class GPPGParser: ShiftReduceParser literal_or_number + case 642: // const_pattern_expression -> literal_or_number { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].ex; } break; - case 645: // const_pattern_expression -> simple_or_template_type_reference + case 643: // const_pattern_expression -> simple_or_template_type_reference { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].td; } break; - case 646: // const_pattern_expression -> tkNil + case 644: // const_pattern_expression -> tkNil { CurrentSemanticValue.stn = new nil_const(); CurrentSemanticValue.stn.source_context = CurrentLocationSpan; } break; - case 647: // const_pattern_expression -> sizeof_expr + case 645: // const_pattern_expression -> sizeof_expr { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].ex; } break; - case 648: // const_pattern_expression -> typeof_expr + case 646: // const_pattern_expression -> typeof_expr { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].ex; } break; - case 649: // collection_pattern -> tkSquareOpen, collection_pattern_expr_list, tkSquareClose + case 647: // collection_pattern -> tkSquareOpen, collection_pattern_expr_list, tkSquareClose { CurrentSemanticValue.stn = new collection_pattern(ValueStack[ValueStack.Depth-2].ob as List, CurrentLocationSpan); } break; - case 650: // collection_pattern_expr_list -> collection_pattern_list_item + case 648: // collection_pattern_expr_list -> collection_pattern_list_item { CurrentSemanticValue.ob = new List(); (CurrentSemanticValue.ob as List).Add(ValueStack[ValueStack.Depth-1].stn as pattern_parameter); } break; - case 651: // collection_pattern_expr_list -> collection_pattern_expr_list, tkComma, + case 649: // collection_pattern_expr_list -> collection_pattern_expr_list, tkComma, // collection_pattern_list_item { var list = ValueStack[ValueStack.Depth-3].ob as List; @@ -6023,108 +7508,108 @@ public partial class GPPGParser: ShiftReduceParser literal_or_number + case 650: // collection_pattern_list_item -> literal_or_number { CurrentSemanticValue.stn = new const_pattern_parameter(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 653: // collection_pattern_list_item -> collection_pattern_var_item + case 651: // collection_pattern_list_item -> collection_pattern_var_item { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 654: // collection_pattern_list_item -> tkUnderscore + case 652: // collection_pattern_list_item -> tkUnderscore { CurrentSemanticValue.stn = new collection_pattern_wild_card(CurrentLocationSpan); } break; - case 655: // collection_pattern_list_item -> pattern_optional_var + case 653: // collection_pattern_list_item -> pattern_optional_var { CurrentSemanticValue.stn = new recursive_deconstructor_parameter(ValueStack[ValueStack.Depth-1].stn as pattern_node, CurrentLocationSpan); } break; - case 656: // collection_pattern_list_item -> collection_pattern + case 654: // collection_pattern_list_item -> collection_pattern { CurrentSemanticValue.stn = new recursive_collection_parameter(ValueStack[ValueStack.Depth-1].stn as pattern_node, CurrentLocationSpan); } break; - case 657: // collection_pattern_list_item -> tuple_pattern + case 655: // collection_pattern_list_item -> tuple_pattern { CurrentSemanticValue.stn = new recursive_tuple_parameter(ValueStack[ValueStack.Depth-1].stn as pattern_node, CurrentLocationSpan); } break; - case 658: // collection_pattern_list_item -> tkDotDot + case 656: // collection_pattern_list_item -> tkDotDot { CurrentSemanticValue.stn = new collection_pattern_gap_parameter(CurrentLocationSpan); } break; - case 659: // collection_pattern_var_item -> tkVar, identifier + case 657: // collection_pattern_var_item -> tkVar, identifier { CurrentSemanticValue.stn = new collection_pattern_var_parameter(ValueStack[ValueStack.Depth-1].id, null, CurrentLocationSpan); } break; - case 660: // tuple_pattern -> tkRoundOpen, tuple_pattern_item_list, tkRoundClose + case 658: // tuple_pattern -> tkRoundOpen, tuple_pattern_item_list, tkRoundClose { if ((ValueStack[ValueStack.Depth-2].ob as List).Count>6) parsertools.AddErrorFromResource("TUPLE_ELEMENTS_COUNT_MUST_BE_LESSEQUAL_7",CurrentLocationSpan); CurrentSemanticValue.stn = new tuple_pattern(ValueStack[ValueStack.Depth-2].ob as List, CurrentLocationSpan); } break; - case 661: // tuple_pattern_item -> tkUnderscore + case 659: // tuple_pattern_item -> tkUnderscore { CurrentSemanticValue.stn = new tuple_pattern_wild_card(CurrentLocationSpan); } break; - case 662: // tuple_pattern_item -> literal_or_number + case 660: // tuple_pattern_item -> literal_or_number { CurrentSemanticValue.stn = new const_pattern_parameter(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 663: // tuple_pattern_item -> sign, literal_or_number + case 661: // tuple_pattern_item -> sign, literal_or_number { CurrentSemanticValue.stn = new const_pattern_parameter(new un_expr(ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan), CurrentLocationSpan); } break; - case 664: // tuple_pattern_item -> tkVar, identifier + case 662: // tuple_pattern_item -> tkVar, identifier { CurrentSemanticValue.stn = new tuple_pattern_var_parameter(ValueStack[ValueStack.Depth-1].id, null, CurrentLocationSpan); } break; - case 665: // tuple_pattern_item -> pattern_optional_var + case 663: // tuple_pattern_item -> pattern_optional_var { CurrentSemanticValue.stn = new recursive_deconstructor_parameter(ValueStack[ValueStack.Depth-1].stn as pattern_node, CurrentLocationSpan); } break; - case 666: // tuple_pattern_item -> collection_pattern + case 664: // tuple_pattern_item -> collection_pattern { CurrentSemanticValue.stn = new recursive_collection_parameter(ValueStack[ValueStack.Depth-1].stn as pattern_node, CurrentLocationSpan); } break; - case 667: // tuple_pattern_item -> tuple_pattern + case 665: // tuple_pattern_item -> tuple_pattern { CurrentSemanticValue.stn = new recursive_tuple_parameter(ValueStack[ValueStack.Depth-1].stn as pattern_node, CurrentLocationSpan); } break; - case 668: // tuple_pattern_item_list -> tuple_pattern_item + case 666: // tuple_pattern_item_list -> tuple_pattern_item { CurrentSemanticValue.ob = new List(); (CurrentSemanticValue.ob as List).Add(ValueStack[ValueStack.Depth-1].stn as pattern_parameter); } break; - case 669: // tuple_pattern_item_list -> tuple_pattern_item_list, tkComma, tuple_pattern_item + case 667: // tuple_pattern_item_list -> tuple_pattern_item_list, tkComma, tuple_pattern_item { var list = ValueStack[ValueStack.Depth-3].ob as List; list.Add(ValueStack[ValueStack.Depth-1].stn as pattern_parameter); CurrentSemanticValue.ob = list; } break; - case 670: // pattern_out_param_list_optional_var -> pattern_out_param_optional_var + case 668: // pattern_out_param_list_optional_var -> pattern_out_param_optional_var { CurrentSemanticValue.ob = new List(); (CurrentSemanticValue.ob as List).Add(ValueStack[ValueStack.Depth-1].stn as pattern_parameter); } break; - case 671: // pattern_out_param_list_optional_var -> pattern_out_param_list_optional_var, + case 669: // pattern_out_param_list_optional_var -> pattern_out_param_list_optional_var, // tkSemiColon, // pattern_out_param_optional_var { @@ -6133,7 +7618,7 @@ public partial class GPPGParser: ShiftReduceParser pattern_out_param_list_optional_var, + case 670: // pattern_out_param_list_optional_var -> pattern_out_param_list_optional_var, // tkComma, // pattern_out_param_optional_var { @@ -6142,13 +7627,13 @@ public partial class GPPGParser: ShiftReduceParser pattern_out_param + case 671: // pattern_out_param_list -> pattern_out_param { CurrentSemanticValue.ob = new List(); (CurrentSemanticValue.ob as List).Add(ValueStack[ValueStack.Depth-1].stn as pattern_parameter); } break; - case 674: // pattern_out_param_list -> pattern_out_param_list, tkSemiColon, + case 672: // pattern_out_param_list -> pattern_out_param_list, tkSemiColon, // pattern_out_param { var list = ValueStack[ValueStack.Depth-3].ob as List; @@ -6156,185 +7641,185 @@ public partial class GPPGParser: ShiftReduceParser pattern_out_param_list, tkComma, pattern_out_param + case 673: // pattern_out_param_list -> pattern_out_param_list, tkComma, pattern_out_param { var list = ValueStack[ValueStack.Depth-3].ob as List; list.Add(ValueStack[ValueStack.Depth-1].stn as pattern_parameter); CurrentSemanticValue.ob = list; } break; - case 676: // pattern_out_param -> tkUnderscore + case 674: // pattern_out_param -> tkUnderscore { CurrentSemanticValue.stn = new wild_card_deconstructor_parameter(CurrentLocationSpan); } break; - case 677: // pattern_out_param -> literal_or_number + case 675: // pattern_out_param -> literal_or_number { CurrentSemanticValue.stn = new const_pattern_parameter(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 678: // pattern_out_param -> tkVar, identifier, tkColon, type_ref + case 676: // pattern_out_param -> tkVar, identifier, tkColon, type_ref { CurrentSemanticValue.stn = new var_deconstructor_parameter(ValueStack[ValueStack.Depth-3].id, ValueStack[ValueStack.Depth-1].td, true, CurrentLocationSpan); } break; - case 679: // pattern_out_param -> tkVar, identifier + case 677: // pattern_out_param -> tkVar, identifier { CurrentSemanticValue.stn = new var_deconstructor_parameter(ValueStack[ValueStack.Depth-1].id, null, true, CurrentLocationSpan); } break; - case 680: // pattern_out_param -> pattern + case 678: // pattern_out_param -> pattern { CurrentSemanticValue.stn = new recursive_deconstructor_parameter(ValueStack[ValueStack.Depth-1].stn as pattern_node, CurrentLocationSpan); } break; - case 681: // pattern_out_param -> collection_pattern + case 679: // pattern_out_param -> collection_pattern { CurrentSemanticValue.stn = new recursive_collection_parameter(ValueStack[ValueStack.Depth-1].stn as pattern_node, CurrentLocationSpan); } break; - case 682: // pattern_out_param -> tuple_pattern + case 680: // pattern_out_param -> tuple_pattern { CurrentSemanticValue.stn = new recursive_tuple_parameter(ValueStack[ValueStack.Depth-1].stn as pattern_node, CurrentLocationSpan); } break; - case 683: // pattern_out_param_optional_var -> tkUnderscore + case 681: // pattern_out_param_optional_var -> tkUnderscore { CurrentSemanticValue.stn = new wild_card_deconstructor_parameter(CurrentLocationSpan); } break; - case 684: // pattern_out_param_optional_var -> literal_or_number + case 682: // pattern_out_param_optional_var -> literal_or_number { CurrentSemanticValue.stn = new const_pattern_parameter(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 685: // pattern_out_param_optional_var -> sign, literal_or_number + case 683: // pattern_out_param_optional_var -> sign, literal_or_number { CurrentSemanticValue.stn = new const_pattern_parameter(new un_expr(ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan), CurrentLocationSpan); } break; - case 686: // pattern_out_param_optional_var -> identifier, tkColon, type_ref + case 684: // pattern_out_param_optional_var -> identifier, tkColon, type_ref { CurrentSemanticValue.stn = new var_deconstructor_parameter(ValueStack[ValueStack.Depth-3].id, ValueStack[ValueStack.Depth-1].td, false, CurrentLocationSpan); } break; - case 687: // pattern_out_param_optional_var -> identifier + case 685: // pattern_out_param_optional_var -> identifier { CurrentSemanticValue.stn = new var_deconstructor_parameter(ValueStack[ValueStack.Depth-1].id, null, false, CurrentLocationSpan); } break; - case 688: // pattern_out_param_optional_var -> tkVar, identifier, tkColon, type_ref + case 686: // pattern_out_param_optional_var -> tkVar, identifier, tkColon, type_ref { CurrentSemanticValue.stn = new var_deconstructor_parameter(ValueStack[ValueStack.Depth-3].id, ValueStack[ValueStack.Depth-1].td, true, CurrentLocationSpan); } break; - case 689: // pattern_out_param_optional_var -> tkVar, identifier + case 687: // pattern_out_param_optional_var -> tkVar, identifier { CurrentSemanticValue.stn = new var_deconstructor_parameter(ValueStack[ValueStack.Depth-1].id, null, true, CurrentLocationSpan); } break; - case 690: // pattern_out_param_optional_var -> pattern_optional_var + case 688: // pattern_out_param_optional_var -> pattern_optional_var { CurrentSemanticValue.stn = new recursive_deconstructor_parameter(ValueStack[ValueStack.Depth-1].stn as pattern_node, CurrentLocationSpan); } break; - case 691: // pattern_out_param_optional_var -> collection_pattern + case 689: // pattern_out_param_optional_var -> collection_pattern { CurrentSemanticValue.stn = new recursive_collection_parameter(ValueStack[ValueStack.Depth-1].stn as pattern_node, CurrentLocationSpan); } break; - case 692: // pattern_out_param_optional_var -> tuple_pattern + case 690: // pattern_out_param_optional_var -> tuple_pattern { CurrentSemanticValue.stn = new recursive_tuple_parameter(ValueStack[ValueStack.Depth-1].stn as pattern_node, CurrentLocationSpan); } break; - case 693: // simple_expr_or_nothing -> simple_expr + case 691: // simple_expr_or_nothing -> simple_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 694: // simple_expr_or_nothing -> /* empty */ + case 692: // simple_expr_or_nothing -> /* empty */ { CurrentSemanticValue.ex = null; } break; - case 695: // const_expr_or_nothing -> const_expr + case 693: // const_expr_or_nothing -> const_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 696: // const_expr_or_nothing -> /* empty */ + case 694: // const_expr_or_nothing -> /* empty */ { CurrentSemanticValue.ex = null; } break; - case 697: // format_expr -> simple_expr, tkColon, simple_expr_or_nothing + case 695: // format_expr -> simple_expr, tkColon, simple_expr_or_nothing { CurrentSemanticValue.ex = new format_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, null, CurrentLocationSpan); } break; - case 698: // format_expr -> tkColon, simple_expr_or_nothing + case 696: // format_expr -> tkColon, simple_expr_or_nothing { CurrentSemanticValue.ex = new format_expr(null, ValueStack[ValueStack.Depth-1].ex, null, CurrentLocationSpan); } break; - case 699: // format_expr -> simple_expr, tkColon, simple_expr_or_nothing, tkColon, + case 697: // format_expr -> simple_expr, tkColon, simple_expr_or_nothing, tkColon, // simple_expr { CurrentSemanticValue.ex = new format_expr(ValueStack[ValueStack.Depth-5].ex, ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 700: // format_expr -> tkColon, simple_expr_or_nothing, tkColon, simple_expr + case 698: // format_expr -> tkColon, simple_expr_or_nothing, tkColon, simple_expr { CurrentSemanticValue.ex = new format_expr(null, ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 701: // format_const_expr -> const_expr, tkColon, const_expr_or_nothing + case 699: // format_const_expr -> const_expr, tkColon, const_expr_or_nothing { CurrentSemanticValue.ex = new format_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, null, CurrentLocationSpan); } break; - case 702: // format_const_expr -> tkColon, const_expr_or_nothing + case 700: // format_const_expr -> tkColon, const_expr_or_nothing { CurrentSemanticValue.ex = new format_expr(null, ValueStack[ValueStack.Depth-1].ex, null, CurrentLocationSpan); } break; - case 703: // format_const_expr -> const_expr, tkColon, const_expr_or_nothing, tkColon, + case 701: // format_const_expr -> const_expr, tkColon, const_expr_or_nothing, tkColon, // const_expr { CurrentSemanticValue.ex = new format_expr(ValueStack[ValueStack.Depth-5].ex, ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 704: // format_const_expr -> tkColon, const_expr_or_nothing, tkColon, const_expr + case 702: // format_const_expr -> tkColon, const_expr_or_nothing, tkColon, const_expr { CurrentSemanticValue.ex = new format_expr(null, ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 705: // relop -> tkEqual + case 703: // relop -> tkEqual { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 706: // relop -> tkNotEqual + case 704: // relop -> tkNotEqual { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 707: // relop -> tkLower + case 705: // relop -> tkLower { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 708: // relop -> tkGreater + case 706: // relop -> tkGreater { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 709: // relop -> tkLowerEqual + case 707: // relop -> tkLowerEqual { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 710: // relop -> tkGreaterEqual + case 708: // relop -> tkGreaterEqual { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 711: // relop -> tkIn + case 709: // relop -> tkIn { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 712: // simple_expr -> term1 + case 710: // simple_expr -> term1 { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 713: // simple_expr -> simple_expr, tkDotDot, term1 + case 711: // simple_expr -> simple_expr, tkDotDot, term1 { if (parsertools.build_tree_for_formatter) CurrentSemanticValue.ex = new diapason_expr(ValueStack[ValueStack.Depth-3].ex,ValueStack[ValueStack.Depth-1].ex,CurrentLocationSpan); @@ -6342,130 +7827,135 @@ public partial class GPPGParser: ShiftReduceParser term + case 712: // term1 -> term { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 715: // term1 -> term1, addop, term + case 713: // term1 -> term1, addop, term { CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan); } break; - case 716: // term1 -> term1, addop, new_question_expr + case 714: // term1 -> term1, addop, new_question_expr { CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan); } break; - case 717: // addop -> tkPlus + case 715: // addop -> tkPlus { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 718: // addop -> tkMinus + case 716: // addop -> tkMinus { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 719: // addop -> tkOr + case 717: // addop -> tkOr { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 720: // addop -> tkXor + case 718: // addop -> tkXor { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 721: // addop -> tkCSharpStyleOr + case 719: // addop -> tkCSharpStyleOr { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 722: // typecast_op -> tkAs + case 720: // typecast_op -> tkAs { CurrentSemanticValue.ob = op_typecast.as_op; } break; - case 723: // typecast_op -> tkIs + case 721: // typecast_op -> tkIs { CurrentSemanticValue.ob = op_typecast.is_op; } break; - case 724: // as_is_expr -> is_type_expr + case 722: // as_is_expr -> is_type_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 725: // as_is_expr -> as_expr + case 723: // as_is_expr -> as_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 726: // as_expr -> term, tkAs, simple_or_template_type_reference + case 724: // as_expr -> term, tkAs, simple_or_template_type_reference { CurrentSemanticValue.ex = NewAsIsExpr(ValueStack[ValueStack.Depth-3].ex, op_typecast.as_op, ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 727: // as_expr -> term, tkAs, array_type + case 725: // as_expr -> term, tkAs, array_type { CurrentSemanticValue.ex = NewAsIsExpr(ValueStack[ValueStack.Depth-3].ex, op_typecast.as_op, ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 728: // is_type_expr -> term, tkIs, simple_or_template_type_reference + case 726: // is_type_expr -> term, tkIs, simple_or_template_type_reference { CurrentSemanticValue.ex = NewAsIsExpr(ValueStack[ValueStack.Depth-3].ex, op_typecast.is_op, ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 729: // is_type_expr -> term, tkIs, array_type + case 727: // is_type_expr -> term, tkIs, array_type { CurrentSemanticValue.ex = NewAsIsExpr(ValueStack[ValueStack.Depth-3].ex, op_typecast.as_op, ValueStack[ValueStack.Depth-1].td, CurrentLocationSpan); } break; - case 730: // power_expr -> factor_without_unary_op, tkStarStar, factor + case 728: // power_expr -> factor_without_unary_op, tkStarStar, factor { CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex,ValueStack[ValueStack.Depth-1].ex,(ValueStack[ValueStack.Depth-2].op).type, CurrentLocationSpan); } break; - case 731: // power_expr -> factor_without_unary_op, tkStarStar, power_expr + case 729: // power_expr -> factor_without_unary_op, tkStarStar, power_expr { CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex,ValueStack[ValueStack.Depth-1].ex,(ValueStack[ValueStack.Depth-2].op).type, CurrentLocationSpan); } break; - case 732: // power_expr -> sign, power_expr + case 730: // power_expr -> sign, power_expr { CurrentSemanticValue.ex = new un_expr(ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan); } break; - case 733: // term -> factor + case 731: // term -> factor { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 734: // term -> new_expr + case 732: // term -> new_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 735: // term -> power_expr + case 733: // term -> power_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 736: // term -> term, mulop, factor + case 734: // term -> term, mulop, factor { CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex,ValueStack[ValueStack.Depth-1].ex,(ValueStack[ValueStack.Depth-2].op).type, CurrentLocationSpan); } break; - case 737: // term -> term, mulop, power_expr + case 735: // term -> term, mulop, power_expr { CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex,ValueStack[ValueStack.Depth-1].ex,(ValueStack[ValueStack.Depth-2].op).type, CurrentLocationSpan); } break; - case 738: // term -> term, mulop, new_question_expr + case 736: // term -> term, mulop, new_question_expr { CurrentSemanticValue.ex = new bin_expr(ValueStack[ValueStack.Depth-3].ex,ValueStack[ValueStack.Depth-1].ex,(ValueStack[ValueStack.Depth-2].op).type, CurrentLocationSpan); } break; - case 739: // term -> as_is_expr + case 737: // term -> as_is_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 740: // mulop -> tkStar + case 738: // mulop -> tkStar { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 741: // mulop -> tkSlash + case 739: // mulop -> tkSlash { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 742: // mulop -> tkDiv + case 740: // mulop -> tkDiv { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 743: // mulop -> tkMod + case 741: // mulop -> tkMod { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 744: // mulop -> tkShl + case 742: // mulop -> tkShl { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 745: // mulop -> tkShr + case 743: // mulop -> tkShr { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 746: // mulop -> tkAnd + case 744: // mulop -> tkAnd { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 747: // default_expr -> tkDefault, tkRoundOpen, simple_or_template_type_reference, + case 745: // default_expr -> tkDefault, tkRoundOpen, simple_or_template_type_reference, // tkRoundClose { CurrentSemanticValue.ex = new default_operator(ValueStack[ValueStack.Depth-2].td as named_type_reference, CurrentLocationSpan); } break; - case 748: // tuple -> tkRoundOpen, expr_l1, tkComma, expr_l1_list, lambda_type_ref, - // optional_full_lambda_fp_list, tkRoundClose + case 746: // tuple -> tkRoundOpen, expr_l1_or_unpacked, tkComma, expr_l1_or_unpacked_list, + // lambda_type_ref, optional_full_lambda_fp_list, tkRoundClose { + if (ValueStack[ValueStack.Depth-6].ex is unpacked_list_of_ident_or_list) + parsertools.AddErrorFromResource("EXPRESSION_EXPECTED",LocationStack[LocationStack.Depth-6]); + foreach (var ex in (ValueStack[ValueStack.Depth-4].stn as expression_list).expressions) + if (ex is unpacked_list_of_ident_or_list) + parsertools.AddErrorFromResource("EXPRESSION_EXPECTED",ex.source_context); /*if ($5 != null) parsertools.AddErrorFromResource("BAD_TUPLE",@5); if ($6 != null) @@ -6477,35 +7967,35 @@ public partial class GPPGParser: ShiftReduceParser literal_or_number + case 747: // factor_without_unary_op -> literal_or_number { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 750: // factor_without_unary_op -> var_reference + case 748: // factor_without_unary_op -> var_reference { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 751: // factor -> tkNil + case 749: // factor -> tkNil { CurrentSemanticValue.ex = new nil_const(); CurrentSemanticValue.ex.source_context = CurrentLocationSpan; } break; - case 752: // factor -> literal_or_number + case 750: // factor -> literal_or_number { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 753: // factor -> default_expr + case 751: // factor -> default_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 754: // factor -> tkSquareOpen, elem_list, tkSquareClose + case 752: // factor -> tkSquareOpen, elem_list, tkSquareClose { CurrentSemanticValue.ex = new pascal_set_constant(ValueStack[ValueStack.Depth-2].stn as expression_list, CurrentLocationSpan); } break; - case 755: // factor -> tkNot, factor + case 753: // factor -> tkNot, factor { CurrentSemanticValue.ex = new un_expr(ValueStack[ValueStack.Depth-1].ex, ValueStack[ValueStack.Depth-2].op.type, CurrentLocationSpan); } break; - case 756: // factor -> sign, factor + case 754: // factor -> sign, factor { if (ValueStack[ValueStack.Depth-2].op.type == Operators.Minus) { @@ -6531,96 +8021,96 @@ public partial class GPPGParser: ShiftReduceParser tkDeref, factor + case 755: // factor -> tkDeref, factor { CurrentSemanticValue.ex = new index(ValueStack[ValueStack.Depth-1].ex, true, CurrentLocationSpan); } break; - case 758: // factor -> var_reference + case 756: // factor -> var_reference { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 759: // factor -> tuple + case 757: // factor -> tuple { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 760: // literal_or_number -> literal + case 758: // literal_or_number -> literal { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 761: // literal_or_number -> unsigned_number + case 759: // literal_or_number -> unsigned_number { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 762: // var_question_point -> variable, tkQuestionPoint, variable + case 760: // var_question_point -> variable, tkQuestionPoint, variable { CurrentSemanticValue.ex = new dot_question_node(ValueStack[ValueStack.Depth-3].ex as addressed_value,ValueStack[ValueStack.Depth-1].ex as addressed_value,CurrentLocationSpan); } break; - case 763: // var_question_point -> variable, tkQuestionPoint, var_question_point + case 761: // var_question_point -> variable, tkQuestionPoint, var_question_point { CurrentSemanticValue.ex = new dot_question_node(ValueStack[ValueStack.Depth-3].ex as addressed_value,ValueStack[ValueStack.Depth-1].ex as addressed_value,CurrentLocationSpan); } break; - case 764: // var_reference -> var_address, variable + case 762: // var_reference -> var_address, variable { CurrentSemanticValue.ex = NewVarReference(ValueStack[ValueStack.Depth-2].stn as get_address, ValueStack[ValueStack.Depth-1].ex as addressed_value, CurrentLocationSpan); } break; - case 765: // var_reference -> variable + case 763: // var_reference -> variable { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 766: // var_reference -> var_question_point + case 764: // var_reference -> var_question_point { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 767: // var_address -> tkAddressOf + case 765: // var_address -> tkAddressOf { CurrentSemanticValue.stn = NewVarAddress(CurrentLocationSpan); } break; - case 768: // var_address -> var_address, tkAddressOf + case 766: // var_address -> var_address, tkAddressOf { CurrentSemanticValue.stn = NewVarAddress(ValueStack[ValueStack.Depth-2].stn as get_address, CurrentLocationSpan); } break; - case 769: // attribute_variable -> simple_type_identifier, optional_expr_list_with_bracket + case 767: // attribute_variable -> simple_type_identifier, optional_expr_list_with_bracket { CurrentSemanticValue.stn = new attribute(null, ValueStack[ValueStack.Depth-2].td as named_type_reference, ValueStack[ValueStack.Depth-1].stn as expression_list, CurrentLocationSpan); } break; - case 770: // attribute_variable -> template_type, optional_expr_list_with_bracket + case 768: // attribute_variable -> template_type, optional_expr_list_with_bracket { CurrentSemanticValue.stn = new attribute(null, ValueStack[ValueStack.Depth-2].td as named_type_reference, ValueStack[ValueStack.Depth-1].stn as expression_list, CurrentLocationSpan); } break; - case 771: // dotted_identifier -> identifier + case 769: // dotted_identifier -> identifier { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].id; } break; - case 772: // dotted_identifier -> dotted_identifier, tkPoint, identifier_or_keyword + case 770: // dotted_identifier -> dotted_identifier, tkPoint, identifier_or_keyword { CurrentSemanticValue.ex = new dot_node(ValueStack[ValueStack.Depth-3].ex as addressed_value, ValueStack[ValueStack.Depth-1].id as addressed_value, CurrentLocationSpan); } break; - case 773: // variable_as_type -> dotted_identifier + case 771: // variable_as_type -> dotted_identifier { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex;} break; - case 774: // variable_as_type -> dotted_identifier, template_type_params + case 772: // variable_as_type -> dotted_identifier, template_type_params { CurrentSemanticValue.ex = new ident_with_templateparams(ValueStack[ValueStack.Depth-2].ex as addressed_value, ValueStack[ValueStack.Depth-1].stn as template_param_list, CurrentLocationSpan); } break; - case 775: // variable_or_literal_or_number -> variable + case 773: // variable_or_literal_or_number -> variable { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 776: // variable_or_literal_or_number -> literal_or_number + case 774: // variable_or_literal_or_number -> literal_or_number { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 777: // variable -> identifier + case 775: // variable -> identifier { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].id; } break; - case 778: // variable -> operator_name_ident + case 776: // variable -> operator_name_ident { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 779: // variable -> tkInherited, identifier + case 777: // variable -> tkInherited, identifier { CurrentSemanticValue.ex = new inherited_ident(ValueStack[ValueStack.Depth-1].id.name, CurrentLocationSpan); } break; - case 780: // variable -> tkRoundOpen, expr, tkRoundClose + case 778: // variable -> tkRoundOpen, expr, tkRoundClose { if (!parsertools.build_tree_for_formatter) { @@ -6630,18 +8120,18 @@ public partial class GPPGParser: ShiftReduceParser sizeof_expr + case 779: // variable -> sizeof_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 782: // variable -> typeof_expr + case 780: // variable -> typeof_expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 783: // variable -> literal_or_number, tkPoint, identifier_or_keyword + case 781: // variable -> literal_or_number, tkPoint, identifier_or_keyword { CurrentSemanticValue.ex = new dot_node(ValueStack[ValueStack.Depth-3].ex as addressed_value, ValueStack[ValueStack.Depth-1].id as addressed_value, CurrentLocationSpan); } break; - case 784: // variable -> variable_or_literal_or_number, tkSquareOpen, expr_list, + case 782: // variable -> variable_or_literal_or_number, tkSquareOpen, expr_list, // tkSquareClose { var el = ValueStack[ValueStack.Depth-2].stn as expression_list; // SSM 10/03/16 @@ -6687,7 +8177,7 @@ public partial class GPPGParser: ShiftReduceParser variable_or_literal_or_number, tkQuestionSquareOpen, format_expr, + case 783: // variable -> variable_or_literal_or_number, tkQuestionSquareOpen, format_expr, // tkSquareClose { var fe = ValueStack[ValueStack.Depth-2].ex as format_expr; // SSM 9/01/17 @@ -6701,76 +8191,76 @@ public partial class GPPGParser: ShiftReduceParser tkVertParen, elem_list, tkVertParen + case 784: // variable -> tkVertParen, elem_list, tkVertParen { CurrentSemanticValue.ex = new array_const_new(ValueStack[ValueStack.Depth-2].stn as expression_list, CurrentLocationSpan); } break; - case 787: // variable -> variable, tkRoundOpen, optional_expr_list, tkRoundClose + case 785: // variable -> variable, tkRoundOpen, optional_expr_list, tkRoundClose { CurrentSemanticValue.ex = new method_call(ValueStack[ValueStack.Depth-4].ex as addressed_value,ValueStack[ValueStack.Depth-2].stn as expression_list, CurrentLocationSpan); } break; - case 788: // variable -> variable, tkPoint, identifier_keyword_operatorname + case 786: // variable -> variable, tkPoint, identifier_keyword_operatorname { CurrentSemanticValue.ex = new dot_node(ValueStack[ValueStack.Depth-3].ex as addressed_value, ValueStack[ValueStack.Depth-1].id as addressed_value, CurrentLocationSpan); } break; - case 789: // variable -> tuple, tkPoint, identifier_keyword_operatorname + case 787: // variable -> tuple, tkPoint, identifier_keyword_operatorname { CurrentSemanticValue.ex = new dot_node(ValueStack[ValueStack.Depth-3].ex as addressed_value, ValueStack[ValueStack.Depth-1].id as addressed_value, CurrentLocationSpan); } break; - case 790: // variable -> variable, tkDeref + case 788: // variable -> variable, tkDeref { CurrentSemanticValue.ex = new roof_dereference(ValueStack[ValueStack.Depth-2].ex as addressed_value,CurrentLocationSpan); } break; - case 791: // variable -> variable, tkAmpersend, template_type_params + case 789: // variable -> variable, tkAmpersend, template_type_params { CurrentSemanticValue.ex = new ident_with_templateparams(ValueStack[ValueStack.Depth-3].ex as addressed_value, ValueStack[ValueStack.Depth-1].stn as template_param_list, CurrentLocationSpan); } break; - case 792: // optional_expr_list -> expr_list + case 790: // optional_expr_list -> expr_list { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 793: // optional_expr_list -> /* empty */ + case 791: // optional_expr_list -> /* empty */ { CurrentSemanticValue.stn = null; } break; - case 794: // elem_list -> elem_list1 + case 792: // elem_list -> elem_list1 { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 795: // elem_list -> /* empty */ + case 793: // elem_list -> /* empty */ { CurrentSemanticValue.stn = null; } break; - case 796: // elem_list1 -> elem + case 794: // elem_list1 -> elem { CurrentSemanticValue.stn = new expression_list(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 797: // elem_list1 -> elem_list1, tkComma, elem + case 795: // elem_list1 -> elem_list1, tkComma, elem { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as expression_list).Add(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 798: // elem -> expr + case 796: // elem -> expr { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 799: // elem -> expr, tkDotDot, expr + case 797: // elem -> expr, tkDotDot, expr { CurrentSemanticValue.ex = new diapason_expr(ValueStack[ValueStack.Depth-3].ex, ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); } break; - case 800: // one_literal -> tkStringLiteral + case 798: // one_literal -> tkStringLiteral { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].stn as literal; } break; - case 801: // one_literal -> tkAsciiChar + case 799: // one_literal -> tkAsciiChar { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].stn as literal; } break; - case 802: // literal -> literal_list + case 800: // literal -> literal_list { CurrentSemanticValue.ex = NewLiteral(ValueStack[ValueStack.Depth-1].stn as literal_const_line); } break; - case 803: // literal -> tkFormatStringLiteral + case 801: // literal -> tkFormatStringLiteral { if (parsertools.build_tree_for_formatter) { @@ -6782,12 +8272,12 @@ public partial class GPPGParser: ShiftReduceParser one_literal + case 802: // literal_list -> one_literal { CurrentSemanticValue.stn = new literal_const_line(ValueStack[ValueStack.Depth-1].ex as literal, CurrentLocationSpan); } break; - case 805: // literal_list -> literal_list, one_literal + case 803: // literal_list -> literal_list, one_literal { var line = ValueStack[ValueStack.Depth-2].stn as literal_const_line; if (line.literals.Last() is string_const && ValueStack[ValueStack.Depth-1].ex is string_const) @@ -6795,507 +8285,526 @@ public partial class GPPGParser: ShiftReduceParser tkOperator, overload_operator + case 804: // operator_name_ident -> tkOperator, overload_operator { CurrentSemanticValue.ex = new operator_name_ident((ValueStack[ValueStack.Depth-1].op as op_type_node).text, (ValueStack[ValueStack.Depth-1].op as op_type_node).type, CurrentLocationSpan); } break; - case 807: // optional_method_modificators -> tkSemiColon + case 805: // optional_method_modificators -> tkSemiColon { CurrentSemanticValue.stn = new procedure_attributes_list(new List(),CurrentLocationSpan); } break; - case 808: // optional_method_modificators -> tkSemiColon, meth_modificators, tkSemiColon + case 806: // optional_method_modificators -> tkSemiColon, meth_modificators, tkSemiColon { //parsertools.AddModifier((procedure_attributes_list)$2, proc_attribute.attr_overload); CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-2].stn; } break; - case 809: // optional_method_modificators1 -> /* empty */ + case 807: // optional_method_modificators1 -> /* empty */ { CurrentSemanticValue.stn = new procedure_attributes_list(new List(),CurrentLocationSpan); } break; - case 810: // optional_method_modificators1 -> tkSemiColon, meth_modificators + case 808: // optional_method_modificators1 -> tkSemiColon, meth_modificators { //parsertools.AddModifier((procedure_attributes_list)$2, proc_attribute.attr_overload); CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 811: // meth_modificators -> meth_modificator + case 809: // meth_modificators -> meth_modificator { CurrentSemanticValue.stn = new procedure_attributes_list(ValueStack[ValueStack.Depth-1].id as procedure_attribute, CurrentLocationSpan); } break; - case 812: // meth_modificators -> meth_modificators, tkSemiColon, meth_modificator + case 810: // meth_modificators -> meth_modificators, tkSemiColon, meth_modificator { CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as procedure_attributes_list).Add(ValueStack[ValueStack.Depth-1].id as procedure_attribute, CurrentLocationSpan); } break; - case 813: // identifier -> tkIdentifier + case 811: // identifier -> tkIdentifier { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 814: // identifier -> property_specifier_directives + case 812: // identifier -> property_specifier_directives { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 815: // identifier -> non_reserved + case 813: // identifier -> non_reserved { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 816: // identifier_or_keyword -> identifier + case 814: // identifier_or_keyword -> identifier { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 817: // identifier_or_keyword -> keyword + case 815: // identifier_or_keyword -> keyword { CurrentSemanticValue.id = new ident(ValueStack[ValueStack.Depth-1].ti.text, CurrentLocationSpan); } break; - case 818: // identifier_or_keyword -> reserved_keyword + case 816: // identifier_or_keyword -> reserved_keyword { CurrentSemanticValue.id = new ident(ValueStack[ValueStack.Depth-1].ti.text, CurrentLocationSpan); } break; - case 819: // identifier_keyword_operatorname -> identifier + case 817: // identifier_keyword_operatorname -> identifier { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 820: // identifier_keyword_operatorname -> keyword + case 818: // identifier_keyword_operatorname -> keyword { CurrentSemanticValue.id = new ident(ValueStack[ValueStack.Depth-1].ti.text, CurrentLocationSpan); } break; - case 821: // identifier_keyword_operatorname -> operator_name_ident + case 819: // identifier_keyword_operatorname -> operator_name_ident { CurrentSemanticValue.id = (ident)ValueStack[ValueStack.Depth-1].ex; } break; - case 822: // meth_modificator -> tkAbstract + case 820: // meth_modificator -> tkAbstract { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 823: // meth_modificator -> tkOverload + case 821: // meth_modificator -> tkOverload { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; parsertools.AddWarningFromResource("OVERLOAD_IS_NOT_USED", ValueStack[ValueStack.Depth-1].id.source_context); } break; - case 824: // meth_modificator -> tkReintroduce + case 822: // meth_modificator -> tkReintroduce { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 825: // meth_modificator -> tkOverride + case 823: // meth_modificator -> tkOverride { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 826: // meth_modificator -> tkExtensionMethod + case 824: // meth_modificator -> tkExtensionMethod { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 827: // meth_modificator -> tkVirtual + case 825: // meth_modificator -> tkVirtual { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 828: // property_modificator -> tkVirtual + case 826: // property_modificator -> tkVirtual { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 829: // property_modificator -> tkOverride + case 827: // property_modificator -> tkOverride { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 830: // property_modificator -> tkAbstract + case 828: // property_modificator -> tkAbstract { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 831: // property_modificator -> tkReintroduce + case 829: // property_modificator -> tkReintroduce { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 832: // property_specifier_directives -> tkRead + case 830: // property_specifier_directives -> tkRead { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 833: // property_specifier_directives -> tkWrite + case 831: // property_specifier_directives -> tkWrite { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 834: // non_reserved -> tkName + case 832: // non_reserved -> tkName { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 835: // non_reserved -> tkNew + case 833: // non_reserved -> tkNew { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 836: // visibility_specifier -> tkInternal + case 834: // visibility_specifier -> tkInternal { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 837: // visibility_specifier -> tkPublic + case 835: // visibility_specifier -> tkPublic { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 838: // visibility_specifier -> tkProtected + case 836: // visibility_specifier -> tkProtected { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 839: // visibility_specifier -> tkPrivate + case 837: // visibility_specifier -> tkPrivate { CurrentSemanticValue.id = ValueStack[ValueStack.Depth-1].id; } break; - case 840: // keyword -> visibility_specifier + case 838: // keyword -> visibility_specifier { CurrentSemanticValue.ti = new token_info(ValueStack[ValueStack.Depth-1].id.name, CurrentLocationSpan); } break; - case 841: // keyword -> tkSealed + case 839: // keyword -> tkSealed { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 842: // keyword -> tkTemplate + case 840: // keyword -> tkTemplate { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 843: // keyword -> tkOr + case 841: // keyword -> tkOr { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].op; } break; - case 844: // keyword -> tkTypeOf + case 842: // keyword -> tkTypeOf { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 845: // keyword -> tkSizeOf + case 843: // keyword -> tkSizeOf { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 846: // keyword -> tkDefault + case 844: // keyword -> tkDefault { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 847: // keyword -> tkWhere + case 845: // keyword -> tkWhere { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 848: // keyword -> tkXor + case 846: // keyword -> tkXor { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].op; } break; - case 849: // keyword -> tkAnd + case 847: // keyword -> tkAnd { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].op; } break; - case 850: // keyword -> tkDiv + case 848: // keyword -> tkDiv { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].op; } break; - case 851: // keyword -> tkMod + case 849: // keyword -> tkMod { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].op; } break; - case 852: // keyword -> tkShl + case 850: // keyword -> tkShl { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].op; } break; - case 853: // keyword -> tkShr + case 851: // keyword -> tkShr { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].op; } break; - case 854: // keyword -> tkNot + case 852: // keyword -> tkNot { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].op; } break; - case 855: // keyword -> tkAs + case 853: // keyword -> tkAs { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].op; } break; - case 856: // keyword -> tkIn + case 854: // keyword -> tkIn { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].op; } break; - case 857: // keyword -> tkIs + case 855: // keyword -> tkIs { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].op; } break; - case 858: // keyword -> tkArray + case 856: // keyword -> tkArray { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 859: // keyword -> tkSequence + case 857: // keyword -> tkSequence { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 860: // keyword -> tkBegin + case 858: // keyword -> tkBegin { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 861: // keyword -> tkCase + case 859: // keyword -> tkCase { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 862: // keyword -> tkClass + case 860: // keyword -> tkClass { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 863: // keyword -> tkConst + case 861: // keyword -> tkConst { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 864: // keyword -> tkConstructor + case 862: // keyword -> tkConstructor { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 865: // keyword -> tkDestructor + case 863: // keyword -> tkDestructor { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 866: // keyword -> tkDownto + case 864: // keyword -> tkDownto { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 867: // keyword -> tkDo + case 865: // keyword -> tkDo { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 868: // keyword -> tkElse + case 866: // keyword -> tkElse { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 869: // keyword -> tkEnd + case 867: // keyword -> tkEnd { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 870: // keyword -> tkExcept + case 868: // keyword -> tkExcept { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 871: // keyword -> tkFile + case 869: // keyword -> tkFile { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 872: // keyword -> tkAuto + case 870: // keyword -> tkAuto { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 873: // keyword -> tkFinalization + case 871: // keyword -> tkFinalization { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 874: // keyword -> tkFinally + case 872: // keyword -> tkFinally { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 875: // keyword -> tkFor + case 873: // keyword -> tkFor { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 876: // keyword -> tkForeach + case 874: // keyword -> tkForeach { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 877: // keyword -> tkFunction + case 875: // keyword -> tkFunction { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 878: // keyword -> tkIf + case 876: // keyword -> tkIf { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 879: // keyword -> tkImplementation + case 877: // keyword -> tkImplementation { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 880: // keyword -> tkInherited + case 878: // keyword -> tkInherited { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 881: // keyword -> tkInitialization + case 879: // keyword -> tkInitialization { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 882: // keyword -> tkInterface + case 880: // keyword -> tkInterface { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 883: // keyword -> tkProcedure + case 881: // keyword -> tkProcedure { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 884: // keyword -> tkProperty + case 882: // keyword -> tkProperty { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 885: // keyword -> tkRaise + case 883: // keyword -> tkRaise { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 886: // keyword -> tkRecord + case 884: // keyword -> tkRecord { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 887: // keyword -> tkRepeat + case 885: // keyword -> tkRepeat { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 888: // keyword -> tkSet + case 886: // keyword -> tkSet { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 889: // keyword -> tkTry + case 887: // keyword -> tkTry { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 890: // keyword -> tkType + case 888: // keyword -> tkType { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 891: // keyword -> tkStatic + case 889: // keyword -> tkStatic { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 892: // keyword -> tkThen + case 890: // keyword -> tkThen { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 893: // keyword -> tkTo + case 891: // keyword -> tkTo { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 894: // keyword -> tkUntil + case 892: // keyword -> tkUntil { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 895: // keyword -> tkUses + case 893: // keyword -> tkUses { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 896: // keyword -> tkVar + case 894: // keyword -> tkVar { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 897: // keyword -> tkWhile + case 895: // keyword -> tkWhile { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 898: // keyword -> tkWith + case 896: // keyword -> tkWith { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 899: // keyword -> tkNil + case 897: // keyword -> tkNil { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 900: // keyword -> tkGoto + case 898: // keyword -> tkGoto { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 901: // keyword -> tkOf + case 899: // keyword -> tkOf { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 902: // keyword -> tkLabel + case 900: // keyword -> tkLabel { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 903: // keyword -> tkProgram + case 901: // keyword -> tkProgram { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 904: // keyword -> tkUnit + case 902: // keyword -> tkUnit { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 905: // keyword -> tkLibrary + case 903: // keyword -> tkLibrary { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 906: // keyword -> tkNamespace + case 904: // keyword -> tkNamespace { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 907: // keyword -> tkExternal + case 905: // keyword -> tkExternal { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 908: // keyword -> tkParams + case 906: // keyword -> tkParams { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 909: // keyword -> tkEvent + case 907: // keyword -> tkEvent { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 910: // keyword -> tkYield + case 908: // keyword -> tkYield { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 911: // keyword -> tkMatch + case 909: // keyword -> tkMatch { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 912: // keyword -> tkWhen + case 910: // keyword -> tkWhen { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 913: // keyword -> tkPartial + case 911: // keyword -> tkPartial { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 914: // keyword -> tkAbstract + case 912: // keyword -> tkAbstract { CurrentSemanticValue.ti = new token_info(ValueStack[ValueStack.Depth-1].id.name, CurrentLocationSpan); } break; - case 915: // keyword -> tkLock + case 913: // keyword -> tkLock { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 916: // keyword -> tkImplicit + case 914: // keyword -> tkImplicit { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].op; } break; - case 917: // keyword -> tkExplicit + case 915: // keyword -> tkExplicit { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].op; } break; - case 918: // keyword -> tkOn + case 916: // keyword -> tkOn { CurrentSemanticValue.ti = new token_info(ValueStack[ValueStack.Depth-1].id.name, CurrentLocationSpan); } break; - case 919: // keyword -> tkVirtual + case 917: // keyword -> tkVirtual { CurrentSemanticValue.ti = new token_info(ValueStack[ValueStack.Depth-1].id.name, CurrentLocationSpan); } break; - case 920: // keyword -> tkOverride + case 918: // keyword -> tkOverride { CurrentSemanticValue.ti = new token_info(ValueStack[ValueStack.Depth-1].id.name, CurrentLocationSpan); } break; - case 921: // keyword -> tkLoop + case 919: // keyword -> tkLoop { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 922: // keyword -> tkExtensionMethod + case 920: // keyword -> tkExtensionMethod { CurrentSemanticValue.ti = new token_info(ValueStack[ValueStack.Depth-1].id.name, CurrentLocationSpan); } break; - case 923: // keyword -> tkOverload + case 921: // keyword -> tkOverload { CurrentSemanticValue.ti = new token_info(ValueStack[ValueStack.Depth-1].id.name, CurrentLocationSpan); } break; - case 924: // keyword -> tkReintroduce + case 922: // keyword -> tkReintroduce { CurrentSemanticValue.ti = new token_info(ValueStack[ValueStack.Depth-1].id.name, CurrentLocationSpan); } break; - case 925: // keyword -> tkForward + case 923: // keyword -> tkForward { CurrentSemanticValue.ti = new token_info(ValueStack[ValueStack.Depth-1].id.name, CurrentLocationSpan); } break; - case 926: // reserved_keyword -> tkOperator + case 924: // reserved_keyword -> tkOperator { CurrentSemanticValue.ti = ValueStack[ValueStack.Depth-1].ti; } break; - case 927: // overload_operator -> tkMinus + case 925: // overload_operator -> tkMinus { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 928: // overload_operator -> tkPlus + case 926: // overload_operator -> tkPlus { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 929: // overload_operator -> tkSlash + case 927: // overload_operator -> tkSlash { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 930: // overload_operator -> tkStar + case 928: // overload_operator -> tkStar { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 931: // overload_operator -> tkEqual + case 929: // overload_operator -> tkEqual { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 932: // overload_operator -> tkGreater + case 930: // overload_operator -> tkGreater { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 933: // overload_operator -> tkGreaterEqual + case 931: // overload_operator -> tkGreaterEqual { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 934: // overload_operator -> tkLower + case 932: // overload_operator -> tkLower { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 935: // overload_operator -> tkLowerEqual + case 933: // overload_operator -> tkLowerEqual { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 936: // overload_operator -> tkNotEqual + case 934: // overload_operator -> tkNotEqual { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 937: // overload_operator -> tkOr + case 935: // overload_operator -> tkOr { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 938: // overload_operator -> tkXor + case 936: // overload_operator -> tkXor { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 939: // overload_operator -> tkAnd + case 937: // overload_operator -> tkAnd { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 940: // overload_operator -> tkDiv + case 938: // overload_operator -> tkDiv { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 941: // overload_operator -> tkMod + case 939: // overload_operator -> tkMod { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 942: // overload_operator -> tkShl + case 940: // overload_operator -> tkShl { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 943: // overload_operator -> tkShr + case 941: // overload_operator -> tkShr { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 944: // overload_operator -> tkNot + case 942: // overload_operator -> tkNot { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 945: // overload_operator -> tkIn + case 943: // overload_operator -> tkIn { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 946: // overload_operator -> tkImplicit + case 944: // overload_operator -> tkImplicit { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 947: // overload_operator -> tkExplicit + case 945: // overload_operator -> tkExplicit { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 948: // overload_operator -> assign_operator + case 946: // overload_operator -> assign_operator { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 949: // overload_operator -> tkStarStar + case 947: // overload_operator -> tkStarStar { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 950: // assign_operator -> tkAssign + case 948: // assign_operator -> tkAssign { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 951: // assign_operator -> tkPlusEqual + case 949: // assign_operator -> tkPlusEqual { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 952: // assign_operator -> tkMinusEqual + case 950: // assign_operator -> tkMinusEqual { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 953: // assign_operator -> tkMultEqual + case 951: // assign_operator -> tkMultEqual { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 954: // assign_operator -> tkDivEqual + case 952: // assign_operator -> tkDivEqual { CurrentSemanticValue.op = ValueStack[ValueStack.Depth-1].op; } break; - case 955: // lambda_unpacked_params -> tkBackSlashRoundOpen, + case 953: // lambda_unpacked_params -> tkBackSlashRoundOpen, // lambda_list_of_unpacked_params_or_id, tkComma, // lambda_unpacked_params_or_id, tkRoundClose { // ��������� ���� ��������� ������ �� ��������� ���� � function_lambda_definition - CurrentSemanticValue.ob = ValueStack[ValueStack.Depth-4].ob; - (CurrentSemanticValue.ob as List).Add(ValueStack[ValueStack.Depth-2].ob as ident_or_list); + (ValueStack[ValueStack.Depth-4].ob as unpacked_list_of_ident_or_list).Add(ValueStack[ValueStack.Depth-2].ob as ident_or_list); + CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-4].ob as unpacked_list_of_ident_or_list; } break; - case 956: // lambda_unpacked_params_or_id -> lambda_unpacked_params + case 954: // lambda_unpacked_params_or_id -> lambda_unpacked_params { - CurrentSemanticValue.ob = new ident_or_list(ValueStack[ValueStack.Depth-1].ob as List); + CurrentSemanticValue.ob = new ident_or_list(ValueStack[ValueStack.Depth-1].ex as unpacked_list_of_ident_or_list); } break; - case 957: // lambda_unpacked_params_or_id -> identifier + case 955: // lambda_unpacked_params_or_id -> identifier { CurrentSemanticValue.ob = new ident_or_list(ValueStack[ValueStack.Depth-1].id as ident); } break; - case 958: // lambda_list_of_unpacked_params_or_id -> lambda_unpacked_params_or_id + case 956: // lambda_list_of_unpacked_params_or_id -> lambda_unpacked_params_or_id { - CurrentSemanticValue.ob = new List(); - (CurrentSemanticValue.ob as List).Add(ValueStack[ValueStack.Depth-1].ob as ident_or_list); + CurrentSemanticValue.ob = new unpacked_list_of_ident_or_list(); + (CurrentSemanticValue.ob as unpacked_list_of_ident_or_list).Add(ValueStack[ValueStack.Depth-1].ob as ident_or_list); + (CurrentSemanticValue.ob as unpacked_list_of_ident_or_list).source_context = LocationStack[LocationStack.Depth-1]; } break; - case 959: // lambda_list_of_unpacked_params_or_id -> lambda_list_of_unpacked_params_or_id, + case 957: // lambda_list_of_unpacked_params_or_id -> lambda_list_of_unpacked_params_or_id, // tkComma, lambda_unpacked_params_or_id { CurrentSemanticValue.ob = ValueStack[ValueStack.Depth-3].ob; - (CurrentSemanticValue.ob as List).Add(ValueStack[ValueStack.Depth-1].ob as ident_or_list); + (CurrentSemanticValue.ob as unpacked_list_of_ident_or_list).Add(ValueStack[ValueStack.Depth-1].ob as ident_or_list); + (CurrentSemanticValue.ob as unpacked_list_of_ident_or_list).source_context = LexLocation.MergeAll(LocationStack[LocationStack.Depth-3],LocationStack[LocationStack.Depth-1]); } break; - case 960: // func_decl_lambda -> identifier, tkArrow, lambda_function_body + case 958: // expr_l1_or_unpacked -> expr_l1 +{ CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } + break; + case 959: // expr_l1_or_unpacked -> lambda_unpacked_params +{ CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } + break; + case 960: // expr_l1_or_unpacked_list -> expr_l1_or_unpacked +{ + CurrentSemanticValue.stn = new expression_list(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); + } + break; + case 961: // expr_l1_or_unpacked_list -> expr_l1_or_unpacked_list, tkComma, + // expr_l1_or_unpacked +{ + CurrentSemanticValue.stn = (ValueStack[ValueStack.Depth-3].stn as expression_list).Add(ValueStack[ValueStack.Depth-1].ex, CurrentLocationSpan); + } + break; + case 962: // func_decl_lambda -> identifier, tkArrow, lambda_function_body { var idList = new ident_list(ValueStack[ValueStack.Depth-3].id, LocationStack[LocationStack.Depth-3]); var formalPars = new formal_parameters(new typed_parameters(idList, new lambda_inferred_type(new PascalABCCompiler.TreeRealization.lambda_any_type_node(), LocationStack[LocationStack.Depth-3]), parametr_kind.none, null, LocationStack[LocationStack.Depth-3]), LocationStack[LocationStack.Depth-3]); @@ -7306,7 +8815,7 @@ public partial class GPPGParser: ShiftReduceParser tkRoundOpen, tkRoundClose, lambda_type_ref_noproctype, + case 963: // func_decl_lambda -> tkRoundOpen, tkRoundClose, lambda_type_ref_noproctype, // tkArrow, lambda_function_body { // ����� ���� ������������� �� ���� � ���� ��������� lambda_inferred_type, ���� ������ ��� null! @@ -7316,7 +8825,7 @@ public partial class GPPGParser: ShiftReduceParser tkRoundOpen, identifier, tkColon, fptype, tkRoundClose, + case 964: // func_decl_lambda -> tkRoundOpen, identifier, tkColon, fptype, tkRoundClose, // lambda_type_ref_noproctype, tkArrow, lambda_function_body { var idList = new ident_list(ValueStack[ValueStack.Depth-7].id, LocationStack[LocationStack.Depth-7]); @@ -7328,7 +8837,7 @@ public partial class GPPGParser: ShiftReduceParser tkRoundOpen, identifier, tkSemiColon, full_lambda_fp_list, + case 965: // func_decl_lambda -> tkRoundOpen, identifier, tkSemiColon, full_lambda_fp_list, // tkRoundClose, lambda_type_ref_noproctype, tkArrow, // lambda_function_body { @@ -7342,7 +8851,7 @@ public partial class GPPGParser: ShiftReduceParser tkRoundOpen, identifier, tkColon, fptype, tkSemiColon, + case 966: // func_decl_lambda -> tkRoundOpen, identifier, tkColon, fptype, tkSemiColon, // full_lambda_fp_list, tkRoundClose, // lambda_type_ref_noproctype, tkArrow, lambda_function_body { @@ -7357,14 +8866,55 @@ public partial class GPPGParser: ShiftReduceParser tkRoundOpen, expr_l1, tkComma, expr_l1_list, - // lambda_type_ref, optional_full_lambda_fp_list, - // tkRoundClose, rem_lambda + case 967: // func_decl_lambda -> tkRoundOpen, expr_l1_or_unpacked, tkComma, + // expr_l1_or_unpacked_list, lambda_type_ref, + // optional_full_lambda_fp_list, tkRoundClose, rem_lambda { var pair = ValueStack[ValueStack.Depth-1].ob as pair_type_stlist; if (ValueStack[ValueStack.Depth-4].td is lambda_inferred_type) { + // ������� ���� \(x,y) + // �������� �� ���� expr_list1. ���� ���� �� ���� - ���� ident_or_list �� ����� �� ���� ����� � ����� + // ���������, ��� $6 = null + // ������������ List ��� unpacked_params � ��������� + var has_unpacked = false; + if (ValueStack[ValueStack.Depth-7].ex is unpacked_list_of_ident_or_list) + has_unpacked = true; + if (!has_unpacked) + foreach (var x in (ValueStack[ValueStack.Depth-5].stn as expression_list).expressions) + { + if (x is unpacked_list_of_ident_or_list) + { + has_unpacked = true; + break; + } + } + if (has_unpacked) // ��� ����� ����� + { + if (ValueStack[ValueStack.Depth-3].stn != null) + { + parsertools.AddErrorFromResource("SEMICOLON_IN_PARAMS",LocationStack[LocationStack.Depth-3]); + } + + var lst_ex = new List(); + lst_ex.Add(ValueStack[ValueStack.Depth-7].ex as expression); + foreach (var x in (ValueStack[ValueStack.Depth-5].stn as expression_list).expressions) + lst_ex.Add(x); + + function_lambda_definition fld = null; //= new function_lambda_definition(lambdaHelper.CreateLambdaName(), null, + //new lambda_inferred_type(new PascalABCCompiler.TreeRealization.lambda_any_type_node(), @2), pair.exprs, @$); + + var sl1 = pair.exprs; + if (sl1.expr_lambda_body || SyntaxVisitors.HasNameVisitor.HasName(sl1, "result") != null) // �� ���� �������� + fld = new function_lambda_definition(lambdaHelper.CreateLambdaName(), null, pair.tn, pair.exprs, CurrentLocationSpan); + else fld = new function_lambda_definition(lambdaHelper.CreateLambdaName(), null, null, pair.exprs, CurrentLocationSpan); + + fld.unpacked_params = lst_ex; + CurrentSemanticValue.ex = fld; + return; + } + var formal_pars = new formal_parameters(); var idd = ValueStack[ValueStack.Depth-7].ex as ident; if (idd==null) @@ -7426,70 +8976,74 @@ public partial class GPPGParser: ShiftReduceParser lambda_unpacked_params, rem_lambda + case 968: // func_decl_lambda -> lambda_unpacked_params, rem_lambda { var pair = ValueStack[ValueStack.Depth-1].ob as pair_type_stlist; + // ���� ���������� ��������� - null. �������� �� �������� ��������� CurrentSemanticValue.ex = new function_lambda_definition(lambdaHelper.CreateLambdaName(), null, new lambda_inferred_type(new PascalABCCompiler.TreeRealization.lambda_any_type_node(), LocationStack[LocationStack.Depth-2]), pair.exprs, CurrentLocationSpan); - (CurrentSemanticValue.ex as function_lambda_definition).unpacked_params = ValueStack[ValueStack.Depth-2].ob as List; + // unpacked_params - ��� ��� ������ ���������. ��� ���������� - ���� ������ ���������. ��������, ������ ������� + var lst_ex = new List(); + lst_ex.Add(ValueStack[ValueStack.Depth-2].ex as unpacked_list_of_ident_or_list); + (CurrentSemanticValue.ex as function_lambda_definition).unpacked_params = lst_ex; } break; - case 967: // func_decl_lambda -> expl_func_decl_lambda + case 969: // func_decl_lambda -> expl_func_decl_lambda { CurrentSemanticValue.ex = ValueStack[ValueStack.Depth-1].ex; } break; - case 968: // optional_full_lambda_fp_list -> /* empty */ + case 970: // optional_full_lambda_fp_list -> /* empty */ { CurrentSemanticValue.stn = null; } break; - case 969: // optional_full_lambda_fp_list -> tkSemiColon, full_lambda_fp_list + case 971: // optional_full_lambda_fp_list -> tkSemiColon, full_lambda_fp_list { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 970: // rem_lambda -> lambda_type_ref_noproctype, tkArrow, lambda_function_body + case 972: // rem_lambda -> lambda_type_ref_noproctype, tkArrow, lambda_function_body { CurrentSemanticValue.ob = new pair_type_stlist(ValueStack[ValueStack.Depth-3].td,ValueStack[ValueStack.Depth-1].stn as statement_list); } break; - case 971: // expl_func_decl_lambda -> tkFunction, lambda_type_ref_noproctype, tkArrow, + case 973: // expl_func_decl_lambda -> tkFunction, lambda_type_ref_noproctype, tkArrow, // lambda_function_body { CurrentSemanticValue.ex = new function_lambda_definition(lambdaHelper.CreateLambdaName(), null, ValueStack[ValueStack.Depth-3].td, ValueStack[ValueStack.Depth-1].stn as statement_list, 1, CurrentLocationSpan); } break; - case 972: // expl_func_decl_lambda -> tkFunction, tkRoundOpen, tkRoundClose, + case 974: // expl_func_decl_lambda -> tkFunction, tkRoundOpen, tkRoundClose, // lambda_type_ref_noproctype, tkArrow, // lambda_function_body { CurrentSemanticValue.ex = new function_lambda_definition(lambdaHelper.CreateLambdaName(), null, ValueStack[ValueStack.Depth-3].td, ValueStack[ValueStack.Depth-1].stn as statement_list, 1, CurrentLocationSpan); } break; - case 973: // expl_func_decl_lambda -> tkFunction, tkRoundOpen, full_lambda_fp_list, + case 975: // expl_func_decl_lambda -> tkFunction, tkRoundOpen, full_lambda_fp_list, // tkRoundClose, lambda_type_ref_noproctype, tkArrow, // lambda_function_body { CurrentSemanticValue.ex = new function_lambda_definition(lambdaHelper.CreateLambdaName(), ValueStack[ValueStack.Depth-5].stn as formal_parameters, ValueStack[ValueStack.Depth-3].td, ValueStack[ValueStack.Depth-1].stn as statement_list, 1, CurrentLocationSpan); } break; - case 974: // expl_func_decl_lambda -> tkProcedure, tkArrow, lambda_procedure_body + case 976: // expl_func_decl_lambda -> tkProcedure, tkArrow, lambda_procedure_body { CurrentSemanticValue.ex = new function_lambda_definition(lambdaHelper.CreateLambdaName(), null, null, ValueStack[ValueStack.Depth-1].stn as statement_list, 2, CurrentLocationSpan); } break; - case 975: // expl_func_decl_lambda -> tkProcedure, tkRoundOpen, tkRoundClose, tkArrow, + case 977: // expl_func_decl_lambda -> tkProcedure, tkRoundOpen, tkRoundClose, tkArrow, // lambda_procedure_body { CurrentSemanticValue.ex = new function_lambda_definition(lambdaHelper.CreateLambdaName(), null, null, ValueStack[ValueStack.Depth-1].stn as statement_list, 2, CurrentLocationSpan); } break; - case 976: // expl_func_decl_lambda -> tkProcedure, tkRoundOpen, full_lambda_fp_list, + case 978: // expl_func_decl_lambda -> tkProcedure, tkRoundOpen, full_lambda_fp_list, // tkRoundClose, tkArrow, lambda_procedure_body { CurrentSemanticValue.ex = new function_lambda_definition(lambdaHelper.CreateLambdaName(), ValueStack[ValueStack.Depth-4].stn as formal_parameters, null, ValueStack[ValueStack.Depth-1].stn as statement_list, 2, CurrentLocationSpan); } break; - case 977: // full_lambda_fp_list -> lambda_simple_fp_sect + case 979: // full_lambda_fp_list -> lambda_simple_fp_sect { var typed_pars = ValueStack[ValueStack.Depth-1].stn as typed_parameters; if (typed_pars.vars_type is lambda_inferred_type) @@ -7509,97 +9063,97 @@ public partial class GPPGParser: ShiftReduceParser full_lambda_fp_list, tkSemiColon, lambda_simple_fp_sect + case 980: // full_lambda_fp_list -> full_lambda_fp_list, tkSemiColon, lambda_simple_fp_sect { CurrentSemanticValue.stn =(ValueStack[ValueStack.Depth-3].stn as formal_parameters).Add(ValueStack[ValueStack.Depth-1].stn as typed_parameters, CurrentLocationSpan); } break; - case 979: // lambda_simple_fp_sect -> ident_list, lambda_type_ref + case 981: // lambda_simple_fp_sect -> ident_list, lambda_type_ref { CurrentSemanticValue.stn = new typed_parameters(ValueStack[ValueStack.Depth-2].stn as ident_list, ValueStack[ValueStack.Depth-1].td, parametr_kind.none, null, CurrentLocationSpan); } break; - case 980: // lambda_type_ref -> /* empty */ + case 982: // lambda_type_ref -> /* empty */ { CurrentSemanticValue.td = new lambda_inferred_type(new PascalABCCompiler.TreeRealization.lambda_any_type_node(), null); } break; - case 981: // lambda_type_ref -> tkColon, fptype + case 983: // lambda_type_ref -> tkColon, fptype { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 982: // lambda_type_ref_noproctype -> /* empty */ + case 984: // lambda_type_ref_noproctype -> /* empty */ { CurrentSemanticValue.td = new lambda_inferred_type(new PascalABCCompiler.TreeRealization.lambda_any_type_node(), null); } break; - case 983: // lambda_type_ref_noproctype -> tkColon, fptype_noproctype + case 985: // lambda_type_ref_noproctype -> tkColon, fptype_noproctype { CurrentSemanticValue.td = ValueStack[ValueStack.Depth-1].td; } break; - case 984: // common_lambda_body -> compound_stmt + case 986: // common_lambda_body -> compound_stmt { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 985: // common_lambda_body -> if_stmt + case 987: // common_lambda_body -> if_stmt { CurrentSemanticValue.stn = new statement_list(ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 986: // common_lambda_body -> while_stmt + case 988: // common_lambda_body -> while_stmt { CurrentSemanticValue.stn = new statement_list(ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 987: // common_lambda_body -> repeat_stmt + case 989: // common_lambda_body -> repeat_stmt { CurrentSemanticValue.stn = new statement_list(ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 988: // common_lambda_body -> for_stmt + case 990: // common_lambda_body -> for_stmt { CurrentSemanticValue.stn = new statement_list(ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 989: // common_lambda_body -> foreach_stmt + case 991: // common_lambda_body -> foreach_stmt { CurrentSemanticValue.stn = new statement_list(ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 990: // common_lambda_body -> loop_stmt + case 992: // common_lambda_body -> loop_stmt { CurrentSemanticValue.stn = new statement_list(ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 991: // common_lambda_body -> case_stmt + case 993: // common_lambda_body -> case_stmt { CurrentSemanticValue.stn = new statement_list(ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 992: // common_lambda_body -> try_stmt + case 994: // common_lambda_body -> try_stmt { CurrentSemanticValue.stn = new statement_list(ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 993: // common_lambda_body -> lock_stmt + case 995: // common_lambda_body -> lock_stmt { CurrentSemanticValue.stn = new statement_list(ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 994: // common_lambda_body -> raise_stmt + case 996: // common_lambda_body -> raise_stmt { CurrentSemanticValue.stn = new statement_list(ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 995: // common_lambda_body -> yield_stmt + case 997: // common_lambda_body -> yield_stmt { parsertools.AddErrorFromResource("YIELD_STATEMENT_CANNOT_BE_USED_IN_LAMBDA_BODY", CurrentLocationSpan); } break; - case 996: // lambda_function_body -> expr_l1_for_lambda + case 998: // lambda_function_body -> expr_l1_for_lambda { var id = SyntaxVisitors.HasNameVisitor.HasName(ValueStack[ValueStack.Depth-1].ex, "Result"); if (id != null) @@ -7611,22 +9165,22 @@ public partial class GPPGParser: ShiftReduceParser common_lambda_body + case 999: // lambda_function_body -> common_lambda_body { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } break; - case 998: // lambda_procedure_body -> proc_call + case 1000: // lambda_procedure_body -> proc_call { CurrentSemanticValue.stn = new statement_list(ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 999: // lambda_procedure_body -> assignment + case 1001: // lambda_procedure_body -> assignment { CurrentSemanticValue.stn = new statement_list(ValueStack[ValueStack.Depth-1].stn as statement, CurrentLocationSpan); } break; - case 1000: // lambda_procedure_body -> common_lambda_body + case 1002: // lambda_procedure_body -> common_lambda_body { CurrentSemanticValue.stn = ValueStack[ValueStack.Depth-1].stn; } diff --git a/Parsers/PascalABCParserNewSaushkin/PABC.ymc b/Parsers/PascalABCParserNewSaushkin/PABC.ymc index 70a131cd8..9563a0836 100644 --- a/Parsers/PascalABCParserNewSaushkin/PABC.ymc +++ b/Parsers/PascalABCParserNewSaushkin/PABC.ymc @@ -322,6 +322,9 @@ script= + + + diff --git a/Release/pabcversion.txt b/Release/pabcversion.txt index 316ce6731..271dae3fb 100644 --- a/Release/pabcversion.txt +++ b/Release/pabcversion.txt @@ -1 +1 @@ -3.8.0.2864 +3.8.0.2872 diff --git a/ReleaseGenerators/PascalABCNET_version.nsh b/ReleaseGenerators/PascalABCNET_version.nsh index 51e067e60..9dd7cf37a 100644 --- a/ReleaseGenerators/PascalABCNET_version.nsh +++ b/ReleaseGenerators/PascalABCNET_version.nsh @@ -1 +1 @@ -!define VERSION '3.8.0.2864' +!define VERSION '3.8.0.2872' diff --git a/SyntaxTree/tree/TreeHelper.cs b/SyntaxTree/tree/TreeHelper.cs index b4ca78e16..d9dccce5b 100644 --- a/SyntaxTree/tree/TreeHelper.cs +++ b/SyntaxTree/tree/TreeHelper.cs @@ -1437,7 +1437,7 @@ namespace PascalABCCompiler.SyntaxTree { public object RealSemTypeOfResExpr = null; // Result := ex; - семантический тип ex - нужно для лучшего выбора среди перегруженных методов с параметрами-лямбдами public object RealSemTypeOfResult = null; - public List unpacked_params = null; // SSM 04/03/21 - сахарный узел, содержащий параметры, которые необходимо распаковать: (\(x,y,z),\(a,b))) + public List unpacked_params = null; // SSM 04/03/21 - сахарный узел, содержащий параметры, которые необходимо распаковать: (\(x,y,z),\(a,b))) public function_lambda_definition(string name, formal_parameters formalPars, type_definition returnType, statement_list body, int usedkw, SourceContext sc) { @@ -2041,21 +2041,43 @@ namespace PascalABCCompiler.SyntaxTree public override string UsesPath() => in_file.Value; } - public class ident_or_list // Это для распаковки параметров в лямбдах \(x,y) + public class ident_or_list : expression // Это для распаковки параметров в лямбдах \(x,y) { // только одно поле - ненулевое! public ident id; - public List lst; + public unpacked_list_of_ident_or_list lst; public ident_or_list(ident id) { this.id = id; + this.source_context = id.source_context; } - public ident_or_list(List lst) + public ident_or_list(unpacked_list_of_ident_or_list lst) { this.lst = lst; + this.source_context = lst.source_context; } } - + public class unpacked_list_of_ident_or_list: expression // это для самого верхнего уровня + { + public List lst; + public unpacked_list_of_ident_or_list(List lst) + { + this.lst = lst; + if (lst != null && lst.Count > 0) + this.source_context = lst[0].source_context; + } + public unpacked_list_of_ident_or_list() + { + lst = new List(); + } + public void Add(ident_or_list il) + { + lst.Add(il); + if (source_context == null) + source_context = il.source_context; + else source_context = source_context.Merge(il.source_context); + } + } } diff --git a/SyntaxVisitors/SugarVisitors/UnpackLambdaParametersVisitor.cs b/SyntaxVisitors/SugarVisitors/UnpackLambdaParametersVisitor.cs index 0788e3bea..9ceea409f 100644 --- a/SyntaxVisitors/SugarVisitors/UnpackLambdaParametersVisitor.cs +++ b/SyntaxVisitors/SugarVisitors/UnpackLambdaParametersVisitor.cs @@ -30,10 +30,10 @@ namespace SyntaxVisitors.SugarVisitors return new ident("#fpl" + UniqueNumStr(), sc); } - public void CreateUnpackedListOfAssignments(List ll, List res, ident prevname, SourceContext sc) + public void CreateUnpackedListOfAssignments(unpacked_list_of_ident_or_list ll, List res, ident prevname, SourceContext sc) { var idlist = new ident_list(); - foreach (var llelem in ll) + foreach (var llelem in ll.lst) { if (llelem.lst != null) { @@ -54,21 +54,44 @@ namespace SyntaxVisitors.SugarVisitors if (fld.unpacked_params == null) { return; - } - - var main_param_id = CreateIdent(fld.source_context); - var idlist = new ident_list(main_param_id); - var lam_inft = new lambda_inferred_type(new lambda_any_type_node()); - var typp = new typed_parameters(idlist, lam_inft); - fld.formal_parameters = new formal_parameters(typp, fld.source_context); + } + + fld.formal_parameters = new formal_parameters(); + fld.formal_parameters.source_context = fld.source_context; // Пусть параметр имеет вид \(x,y) // Тогда в начало тела лямбды надо добавить var (x,y) = #fpl1; //var idl = new ident_list(fld.unpacked_params.Select(p => p.id).ToList(),fld.source_context); // //var ass = new assign_var_tuple(idl, main_param_id, fld.source_context); + List res = new List(); - CreateUnpackedListOfAssignments(fld.unpacked_params, res, main_param_id, fld.source_context); + + foreach (var param in fld.unpacked_params) + { + if (param is unpacked_list_of_ident_or_list unpacked_param) + { + var lam_inft = new lambda_inferred_type(new lambda_any_type_node()); + var param_id = CreateIdent(fld.source_context); + var idlist = new ident_list(param_id, unpacked_param.source_context); + var typed_pars = new typed_parameters(idlist, lam_inft, parametr_kind.none, null, unpacked_param.source_context); + fld.formal_parameters.Add(typed_pars, unpacked_param.source_context); + fld.ident_list.Add(param_id); + fld.parameters.Add(param_id); + + CreateUnpackedListOfAssignments(unpacked_param, res, param_id, unpacked_param.source_context); + } + else if (param is ident id) + { + var lam_inft = new lambda_inferred_type(new lambda_any_type_node()); + var idlist = new ident_list(id,id.source_context); + var typed_pars = new typed_parameters(idlist, lam_inft); + fld.formal_parameters.Add(typed_pars, fld.source_context); + fld.ident_list.Add(id); + fld.parameters.Add(id); + } + } + var stl = fld.proc_body as statement_list; res.Reverse(); diff --git a/TestSuite/CompilationSamples/PABCSystem.pas b/TestSuite/CompilationSamples/PABCSystem.pas index ee68cf776..9424ea9e5 100644 --- a/TestSuite/CompilationSamples/PABCSystem.pas +++ b/TestSuite/CompilationSamples/PABCSystem.pas @@ -10193,6 +10193,21 @@ begin end end; +/// Превращает последовательность в последовательность n-ок соседних элементов +function Nwise(Self: sequence of T; n: integer):sequence of array of T; extensionmethod; +begin + var chunk := new Queue(n); + foreach var x in Self do + begin + chunk.Enqueue(x); + if chunk.Count = n then + begin + yield chunk.ToArray; + chunk.Dequeue; + end; + end; +end; + /// Превращает последовательность в последовательность пар соседних элементов, применяет func к каждой паре полученных элементов и получает новую последовательность function Pairwise(Self: sequence of T; func: (T,T)->Res): sequence of Res; extensionmethod; begin diff --git a/TestSuite/CompilationSamples/SF.pas b/TestSuite/CompilationSamples/SF.pas index 1d2ebfa1a..2998d55f3 100644 --- a/TestSuite/CompilationSamples/SF.pas +++ b/TestSuite/CompilationSamples/SF.pas @@ -296,6 +296,118 @@ function Cmb(Self: array of T; m: integer): sequence of array of T; extension /// Возвращает все сочетания по m элементов function Cmb(Self: sequence of T; m: integer): sequence of array of T; extensionmethod := Self.Combinations(m); +/// Выводит кортеж +function Pr(Self: (T1,T2)): (T1,T2); extensionmethod; +begin + Result := Self; + Self.Print; +end; + +/// Выводит кортеж +function Pr(Self: (T1,T2,T3)): (T1,T2,T3); extensionmethod; +begin + Result := Self; + Self.Print; +end; + +/// Выводит кортеж +function Pr(Self: (T1,T2,T3,T4)): (T1,T2,T3,T4); extensionmethod; +begin + Result := Self; + Self.Print; +end; + +/// Выводит кортеж +function Pr(Self: (T1,T2,T3,T4,T5)): (T1,T2,T3,T4,T5); extensionmethod; +begin + Result := Self; + Self.Print; +end; + +/// Выводит кортеж +function Prln(Self: (T1,T2)): (T1,T2); extensionmethod; +begin + Result := Self; + Self.Println; +end; + +/// Выводит кортеж +function Prln(Self: (T1,T2,T3)): (T1,T2,T3); extensionmethod; +begin + Result := Self; + Self.Println; +end; + +/// Выводит кортеж +function Prln(Self: (T1,T2,T3,T4)): (T1,T2,T3,T4); extensionmethod; +begin + Result := Self; + Self.Println; +end; + +/// Выводит кортеж +function Prln(Self: (T1,T2,T3,T4,T5)): (T1,T2,T3,T4,T5); extensionmethod; +begin + Result := Self; + Self.Println; +end; + +/// Возвращает минимальный элемент кортежа +function Min(Self: (T,T)): T; extensionmethod; +where T: IComparable; +begin + Result := Min(Self[0],Self[1]); +end; + +/// Возвращает максимальный элемент кортежа +function Max(Self: (T,T)): T; extensionmethod; +where T: IComparable; +begin + Result := Max(Self[0],Self[1]); +end; + +/// Возвращает минимальный элемент кортежа +function Min(Self: (T,T,T)): T; extensionmethod; +where T: IComparable; +begin + Result := Min(Self[0],Self[1],Self[2]); +end; + +/// Возвращает максимальный элемент кортежа +function Max(Self: (T,T,T)): T; extensionmethod; +where T: IComparable; +begin + Result := Max(Self[0],Self[1],Self[2]); +end; + +/// Возвращает минимальный элемент кортежа +function Min(Self: (T,T,T,T)): T; extensionmethod; +where T: IComparable; +begin + Result := Min(Self[0],Self[1],Self[2],Self[3]); +end; + +/// Возвращает максимальный элемент кортежа +function Max(Self: (T,T,T,T)): T; extensionmethod; +where T: IComparable; +begin + Result := Max(Self[0],Self[1],Self[2],Self[3]); +end; + +/// Возвращает минимальный элемент кортежа +function Min(Self: (T,T,T,T,T)): T; extensionmethod; +where T: IComparable; +begin + Result := Min(Self[0],Self[1],Self[2],Self[3],Self[4]); +end; + +/// Возвращает максимальный элемент кортежа +function Max(Self: (T,T,T,T,T)): T; extensionmethod; +where T: IComparable; +begin + Result := Max(Self[0],Self[1],Self[2],Self[3],Self[4]); +end; + ///-- procedure __InitModule__; begin diff --git a/TestSuite/CompilationSamples/School.pas b/TestSuite/CompilationSamples/School.pas index 9c1f8911f..e32624bbc 100644 --- a/TestSuite/CompilationSamples/School.pas +++ b/TestSuite/CompilationSamples/School.pas @@ -66,6 +66,9 @@ function FirstPrimes(n: integer): List; function Digits(n: int64): List; /// Возвращает список делителей натурального числа +function Divisors(n: integer): List; + +///-- function Divizors(n: integer): List; /// Возвращает Sin угла, заданного в градусах @@ -543,7 +546,7 @@ Digits(Self); {$region Divisors} /// возвращает список всех делителей натурального числа -function Divizors(n: integer): List; +function Divisors(n: integer): List; begin n := Abs(n); // foolproof var L := new List; @@ -568,9 +571,17 @@ begin Result := L end; -/// возвращает список делителей натурального числа +///-- +function Divizors(n: integer) := Divisors(n); + + +/// Возвращает список делителей натурального числа +function Divisors(Self: integer): List; extensionmethod := + Divisors(Self); + +///-- function Divizors(Self: integer): List; extensionmethod := -Divizors(Self); + Divisors(Self); {$endregion} diff --git a/TestSuite/two_pars.pas b/TestSuite/two_pars.pas new file mode 100644 index 000000000..1db6c102a --- /dev/null +++ b/TestSuite/two_pars.pas @@ -0,0 +1,11 @@ +type + TI = (integer, integer); + +procedure p(f: (TI,TI) -> integer); +begin + Assert(f((3, 4), (2, 5)) = 14); +end; + +begin + p((\(y1,y2),\(x,z)) -> x + y1 + y2 + z); +end. \ No newline at end of file diff --git a/TestSuite/unpack_lambda_params1.pas b/TestSuite/unpack_lambda_params1.pas new file mode 100644 index 000000000..8458f3482 --- /dev/null +++ b/TestSuite/unpack_lambda_params1.pas @@ -0,0 +1,8 @@ +begin + var s := Seq(('Умнова',16),('Иванов',23), + ('Попова',17),('Козлов',24)); + Println('Совершеннолетние:'); + s.Where(\(name,age) -> age >= 18).Println; + Println('Сортировка по фамилии:'); + s.OrderBy(\(name,age) -> name).Println; +end. diff --git a/bin/Lib/PABCSystem.pas b/bin/Lib/PABCSystem.pas index ee68cf776..9424ea9e5 100644 --- a/bin/Lib/PABCSystem.pas +++ b/bin/Lib/PABCSystem.pas @@ -10193,6 +10193,21 @@ begin end end; +/// Превращает последовательность в последовательность n-ок соседних элементов +function Nwise(Self: sequence of T; n: integer):sequence of array of T; extensionmethod; +begin + var chunk := new Queue(n); + foreach var x in Self do + begin + chunk.Enqueue(x); + if chunk.Count = n then + begin + yield chunk.ToArray; + chunk.Dequeue; + end; + end; +end; + /// Превращает последовательность в последовательность пар соседних элементов, применяет func к каждой паре полученных элементов и получает новую последовательность function Pairwise(Self: sequence of T; func: (T,T)->Res): sequence of Res; extensionmethod; begin diff --git a/bin/Lib/SF.pas b/bin/Lib/SF.pas index 1d2ebfa1a..2998d55f3 100644 --- a/bin/Lib/SF.pas +++ b/bin/Lib/SF.pas @@ -296,6 +296,118 @@ function Cmb(Self: array of T; m: integer): sequence of array of T; extension /// Возвращает все сочетания по m элементов function Cmb(Self: sequence of T; m: integer): sequence of array of T; extensionmethod := Self.Combinations(m); +/// Выводит кортеж +function Pr(Self: (T1,T2)): (T1,T2); extensionmethod; +begin + Result := Self; + Self.Print; +end; + +/// Выводит кортеж +function Pr(Self: (T1,T2,T3)): (T1,T2,T3); extensionmethod; +begin + Result := Self; + Self.Print; +end; + +/// Выводит кортеж +function Pr(Self: (T1,T2,T3,T4)): (T1,T2,T3,T4); extensionmethod; +begin + Result := Self; + Self.Print; +end; + +/// Выводит кортеж +function Pr(Self: (T1,T2,T3,T4,T5)): (T1,T2,T3,T4,T5); extensionmethod; +begin + Result := Self; + Self.Print; +end; + +/// Выводит кортеж +function Prln(Self: (T1,T2)): (T1,T2); extensionmethod; +begin + Result := Self; + Self.Println; +end; + +/// Выводит кортеж +function Prln(Self: (T1,T2,T3)): (T1,T2,T3); extensionmethod; +begin + Result := Self; + Self.Println; +end; + +/// Выводит кортеж +function Prln(Self: (T1,T2,T3,T4)): (T1,T2,T3,T4); extensionmethod; +begin + Result := Self; + Self.Println; +end; + +/// Выводит кортеж +function Prln(Self: (T1,T2,T3,T4,T5)): (T1,T2,T3,T4,T5); extensionmethod; +begin + Result := Self; + Self.Println; +end; + +/// Возвращает минимальный элемент кортежа +function Min(Self: (T,T)): T; extensionmethod; +where T: IComparable; +begin + Result := Min(Self[0],Self[1]); +end; + +/// Возвращает максимальный элемент кортежа +function Max(Self: (T,T)): T; extensionmethod; +where T: IComparable; +begin + Result := Max(Self[0],Self[1]); +end; + +/// Возвращает минимальный элемент кортежа +function Min(Self: (T,T,T)): T; extensionmethod; +where T: IComparable; +begin + Result := Min(Self[0],Self[1],Self[2]); +end; + +/// Возвращает максимальный элемент кортежа +function Max(Self: (T,T,T)): T; extensionmethod; +where T: IComparable; +begin + Result := Max(Self[0],Self[1],Self[2]); +end; + +/// Возвращает минимальный элемент кортежа +function Min(Self: (T,T,T,T)): T; extensionmethod; +where T: IComparable; +begin + Result := Min(Self[0],Self[1],Self[2],Self[3]); +end; + +/// Возвращает максимальный элемент кортежа +function Max(Self: (T,T,T,T)): T; extensionmethod; +where T: IComparable; +begin + Result := Max(Self[0],Self[1],Self[2],Self[3]); +end; + +/// Возвращает минимальный элемент кортежа +function Min(Self: (T,T,T,T,T)): T; extensionmethod; +where T: IComparable; +begin + Result := Min(Self[0],Self[1],Self[2],Self[3],Self[4]); +end; + +/// Возвращает максимальный элемент кортежа +function Max(Self: (T,T,T,T,T)): T; extensionmethod; +where T: IComparable; +begin + Result := Max(Self[0],Self[1],Self[2],Self[3],Self[4]); +end; + ///-- procedure __InitModule__; begin diff --git a/bin/Lib/School.pas b/bin/Lib/School.pas index 9c1f8911f..e32624bbc 100644 --- a/bin/Lib/School.pas +++ b/bin/Lib/School.pas @@ -66,6 +66,9 @@ function FirstPrimes(n: integer): List; function Digits(n: int64): List; /// Возвращает список делителей натурального числа +function Divisors(n: integer): List; + +///-- function Divizors(n: integer): List; /// Возвращает Sin угла, заданного в градусах @@ -543,7 +546,7 @@ Digits(Self); {$region Divisors} /// возвращает список всех делителей натурального числа -function Divizors(n: integer): List; +function Divisors(n: integer): List; begin n := Abs(n); // foolproof var L := new List; @@ -568,9 +571,17 @@ begin Result := L end; -/// возвращает список делителей натурального числа +///-- +function Divizors(n: integer) := Divisors(n); + + +/// Возвращает список делителей натурального числа +function Divisors(Self: integer): List; extensionmethod := + Divisors(Self); + +///-- function Divizors(Self: integer): List; extensionmethod := -Divizors(Self); + Divisors(Self); {$endregion} diff --git a/bin/Lng/Eng/PascalABCParser.dat b/bin/Lng/Eng/PascalABCParser.dat index 466a45bf3..6459d8d8d 100644 --- a/bin/Lng/Eng/PascalABCParser.dat +++ b/bin/Lng/Eng/PascalABCParser.dat @@ -54,6 +54,7 @@ ONE_OPERATOR=Expected operator ONE_STMT=Expected statement BAD_TUPLE=Badly formed Tuple EMPTY_STATEMENT_IN_SHORT_PROC_DEFINITION=Statement expected +EXPRESSION_EXPECTED=Expression expected DUPLICATE_NAMES_IN_ANON_TYPE=Duplicate field names in anonymous type diff --git a/bin/Lng/Rus/PascalABCParser.dat b/bin/Lng/Rus/PascalABCParser.dat index 5b227ecd4..a787ff001 100644 --- a/bin/Lng/Rus/PascalABCParser.dat +++ b/bin/Lng/Rus/PascalABCParser.dat @@ -54,6 +54,7 @@ ONE_OPERATOR=Ожидался оператор ONE_STMT=Ожидался оператор BAD_TUPLE=Неправильно сформированный кортеж EMPTY_STATEMENT_IN_SHORT_PROC_DEFINITION=Ожидался оператор +EXPRESSION_EXPECTED=Ожидалось выражение DUPLICATE_NAMES_IN_ANON_TYPE=Анонимный тип не может содержать поля с одинаковыми именами BAD_ANON_TYPE=Неверное определение имени поля анонимного типа