X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fas3%2Fparser.tab.c;h=ba3cb5eda6e576e523057e8fd8220690daefd909;hb=e1563f533b093d998c898faafb2eb5d644e85dd7;hp=b5ee3753bfd2d2c8e622ad39f2087e735a876a97;hpb=5cbd3ad7e5136789a7a84549a47b319434278115;p=swftools.git diff --git a/lib/as3/parser.tab.c b/lib/as3/parser.tab.c index b5ee375..ba3cb5e 100644 --- a/lib/as3/parser.tab.c +++ b/lib/as3/parser.tab.c @@ -1,21 +1,21 @@ -/* A Bison parser, made by GNU Bison 2.4.277-62c99-dirty. */ +/* A Bison parser, made by GNU Bison 2.4.1. */ /* Skeleton implementation for Bison's Yacc-like parsers in C - - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free - Software Foundation, Inc. - + + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Free Software Foundation, Inc. + This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. - + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License along with this program. If not, see . */ @@ -28,7 +28,7 @@ special exception, which will cause the skeleton and the resulting Bison output files to be licensed under the GNU General Public License without this special exception. - + This special exception was added by the Free Software Foundation in version 2.2 of Bison. */ @@ -46,7 +46,7 @@ #define YYBISON 1 /* Bison version. */ -#define YYBISON_VERSION "2.4.277-62c99-dirty" +#define YYBISON_VERSION "2.4.1" /* Skeleton name. */ #define YYSKELETON_NAME "./skeleton.m4" @@ -74,6 +74,7 @@ /* Copy the first part of user declarations. */ + /* Line 198 of skeleton.m4 */ #line 23 "parser.y" @@ -95,12 +96,13 @@ extern int a3_lex(); + /* Line 198 of skeleton.m4 */ -#line 100 "parser.tab.c" +#line 102 "parser.tab.c" /* Enabling traces. */ #ifndef YYDEBUG -# define YYDEBUG b4_debug_flag +# define YYDEBUG 0 #endif /* Enabling verbose error messages. */ @@ -108,7 +110,7 @@ extern int a3_lex(); # undef YYERROR_VERBOSE # define YYERROR_VERBOSE 1 #else -# define YYERROR_VERBOSE b4_error_verbose_flag +# define YYERROR_VERBOSE 1 #endif /* Enabling the token table. */ @@ -237,10 +239,12 @@ extern int a3_lex(); #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED -typedef union /* Line 223 of skeleton.m4 */ +typedef union +/* Line 223 of skeleton.m4 */ #line 47 "parser.y" tokenunion { + /* Line 223 of skeleton.m4 */ #line 47 "parser.y" @@ -275,8 +279,9 @@ tokenunion } catch_list; + /* Line 223 of skeleton.m4 */ -#line 280 "parser.tab.c" +#line 285 "parser.tab.c" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ @@ -285,8 +290,9 @@ tokenunion /* Copy the second part of user declarations. */ + /* Line 273 of skeleton.m4 */ -#line 276 "parser.y" +#line 275 "parser.y" static int a3_error(char*s) @@ -650,7 +656,7 @@ typedef struct _variable { methodstate_t*is_inner_method; } variable_t; -static variable_t* find_variable(state_t*s, char*name) +static variable_t* find_variable(state_t*s, const char*name) { if(s->method->no_variable_scoping) { return dict_lookup(s->allvars, name); @@ -933,7 +939,7 @@ static namespace_t modifiers2access(modifiers_t*mod) syntaxerror("invalid combination of access levels and namespaces"); ns.access = ACCESS_NAMESPACE; state_t*s = state; - const char*url = (const char*)trie_lookup(active_namespaces, mod->ns); + const char*url = (const char*)trie_lookup(active_namespaces, (unsigned char*)mod->ns); if(!url) { /* shouldn't happen- the tokenizer only reports something as a namespace if it was already registered */ @@ -960,9 +966,9 @@ static namespace_t modifiers2access(modifiers_t*mod) } static slotinfo_t* find_class(const char*name); -static memberinfo_t* findmember_nsset(classinfo_t*cls, const char*name, char recurse) +static memberinfo_t* findmember_nsset(classinfo_t*cls, const char*name, char recurse, char is_static) { - return registry_findmember_nsset(cls, state->active_namespace_urls, name, recurse); + return registry_findmember_nsset(cls, state->active_namespace_urls, name, recurse, is_static); } static void innerfunctions2vars(methodstate_t*m) @@ -1253,7 +1259,7 @@ static void check_override(memberinfo_t*m, int flags) { if(!m) return; - if(m->parent == state->cls->info) + if(m->parent == state->cls->info && !((flags^m->flags)&FLAG_STATIC)) syntaxerror("class '%s' already contains a method/slot '%s'", m->parent->name, m->name); if(!m->parent) syntaxerror("internal error: overriding method %s, which doesn't have parent", m->name); @@ -1289,11 +1295,11 @@ static methodinfo_t*registerfunction(enum yytokentype getset, modifiers_t*mod, c minfo->return_type = return_type; } else if(getset != KW_GET && getset != KW_SET) { //class method - memberinfo_t* m = registry_findmember(state->cls->info, ns.name, name, 0); + memberinfo_t* m = registry_findmember(state->cls->info, ns.name, name, 0, mod->flags&FLAG_STATIC); if(m) { syntaxerror("class already contains a %s '%s'", infotypename((slotinfo_t*)m), m->name); } - minfo = methodinfo_register_onclass(state->cls->info, ns.access, ns.name, name); + minfo = methodinfo_register_onclass(state->cls->info, ns.access, ns.name, name, mod->flags&FLAG_STATIC); minfo->return_type = return_type; // getslot on a member slot only returns "undefined", so no need // to actually store these @@ -1309,7 +1315,7 @@ static methodinfo_t*registerfunction(enum yytokentype getset, modifiers_t*mod, c } else syntaxerror("setter function needs to take exactly one argument"); // not sure wether to look into superclasses here, too - minfo = (methodinfo_t*)registry_findmember(state->cls->info, ns.name, name, 1); + minfo = (methodinfo_t*)registry_findmember(state->cls->info, ns.name, name, 1, mod->flags&FLAG_STATIC); if(minfo) { if(minfo->kind!=INFOTYPE_VAR) syntaxerror("class already contains a method called '%s'", name); @@ -1331,7 +1337,7 @@ static methodinfo_t*registerfunction(enum yytokentype getset, modifiers_t*mod, c type?type->name:"*"); }*/ } else { - minfo = methodinfo_register_onclass(state->cls->info, ns.access, ns.name, name); + minfo = methodinfo_register_onclass(state->cls->info, ns.access, ns.name, name, mod->flags&FLAG_STATIC); minfo->kind = INFOTYPE_VAR; //hack minfo->subtype = gs; minfo->return_type = type; @@ -1436,7 +1442,7 @@ static void startfunction(modifiers_t*mod, enum yytokentype getset, char*name, parserassert(state->method); if(state->cls) { - memberinfo_t*m = registry_findmember(state->cls->info, mod->ns, name, 2); + memberinfo_t*m = registry_findmember(state->cls->info, mod->ns, name, 2, mod->flags&FLAG_STATIC); check_override(m, mod->flags); } @@ -1699,6 +1705,7 @@ code_t*converttype(code_t*c, classinfo_t*from, classinfo_t*to) if(TYPE_IS_NULL(from) && !IS_NUMBER_OR_INT(to)) return c; + as3_error("can't convert type %s%s%s to %s%s%s", from->package, from->package[0]?".":"", from->name, to->package, to->package[0]?".":"", to->name); @@ -1974,9 +1981,11 @@ code_t* insert_finally(code_t*c, code_t*finally, int tempvar) #define PASS_ALWAYS }} {{ + /* Line 273 of skeleton.m4 */ -#line 1979 "parser.tab.c" +#line 1987 "parser.tab.c" /* Unqualified %code blocks. */ + /* Line 274 of skeleton.m4 */ #line 2077 "parser.y" @@ -1993,6 +2002,7 @@ code_t* insert_finally(code_t*c, code_t*finally, int tempvar) return 1; } + /* Line 274 of skeleton.m4 */ #line 2528 "parser.y" @@ -2015,6 +2025,7 @@ code_t* insert_finally(code_t*c, code_t*finally, int tempvar) free(s); } + /* Line 274 of skeleton.m4 */ #line 2667 "parser.y" @@ -2076,15 +2087,65 @@ code_t* insert_finally(code_t*c, code_t*finally, int tempvar) return trait_new_member(traits, 0, multiname_clone(&mname), 0); } + /* Line 274 of skeleton.m4 */ #line 2847 "parser.y" static int xml_level = 0; + +/* Line 274 of skeleton.m4 */ +#line 3513 "parser.y" + + node_t* resolve_identifier(const char*name); + node_t* get_descendants(node_t*e,const char*ns,const char*subnode,char multi, char attr) + { + typedcode_t v = node_read(e); + typedcode_t w; + + multiname_t m = {0,0,0,subnode}; + namespace_t zero = {ZERONAMESPACE,"*"}; + if(!strcmp(ns,"*")) { + m.ns = &zero; + m.type = attr?QNAMEA:QNAME; + } else { + typedcode_t w = node_read(resolve_identifier(ns)); + if(!TYPE_IS_NAMESPACE(w.t)) { + as3_softwarning("%s might not be a namespace", ns); + } + v.c = code_append(v.c, w.c); + v.c = converttype(v.c, w.t, TYPE_NAMESPACE); + m.type = attr?RTQNAMEA:RTQNAME; + } + + if(!multi) { + v.c = abc_getproperty2(v.c, &m); + } else { + v.c = abc_getdescendants2(v.c, &m); + } + + if(TYPE_IS_XML(v.t)) { + v.t = TYPE_XMLLIST; + } else { + v.c = abc_coerce_a(v.c); + v.t = TYPE_ANY; + } + return mkcodenode(v); + } + + /* Line 274 of skeleton.m4 */ -#line 3655 "parser.y" +#line 3684 "parser.y" + + node_t* var_read(variable_t*v) + { + typedcode_t o; + o.c = abc_getlocal(0, v->index); + o.t = v->type; + return mkcodenode(o); + } - node_t* resolve_identifier(char*name) + node_t* resolve_identifier(const char*name) { typedcode_t o; o.t = 0; @@ -2097,9 +2158,7 @@ code_t* insert_finally(code_t*c, code_t*finally, int tempvar) /* look at variables */ if((v = find_variable(state, name))) { // name is a local variable - o.c = abc_getlocal(o.c, v->index); - o.t = v->type; - return mkcodenode(o); + return var_read(v); } if((v = find_slot(state->method, name))) { o.c = abc_getscopeobject(o.c, 1); @@ -2110,55 +2169,65 @@ code_t* insert_finally(code_t*c, code_t*finally, int tempvar) int i_am_static = state->method->is_static; - /* look at current class' members */ - if(!state->method->inner && - !state->xmlfilter && - state->cls && - (f = findmember_nsset(state->cls->info, name, 1))) - { - // name is a member or attribute in this class - int var_is_static = (f->flags&FLAG_STATIC); - - if(f->kind == INFOTYPE_VAR && (f->flags&FLAG_CONST)) { - /* if the variable is a constant (and we know what is evaluates to), we - can just use the value itself */ - varinfo_t*v = (varinfo_t*)f; - if(v->value) { - return mkconstnode(v->value); - } - } - - if(var_is_static >= i_am_static) { - if(f->kind == INFOTYPE_METHOD) { - o.t = TYPE_FUNCTION(f); - } else { - o.t = f->type; - } - - if(var_is_static && !i_am_static) { - /* access to a static member from a non-static location. - do this via findpropstrict: - there doesn't seem to be any non-lookup way to access - static properties of a class */ - state->method->late_binding = 1; - o.t = f->type; - namespace_t ns = {f->access, f->package}; - multiname_t m = {QNAME, &ns, 0, name}; - o.c = abc_findpropstrict2(o.c, &m); - o.c = abc_getproperty2(o.c, &m); - return mkcodenode(o); - } else if(f->slot>0) { - o.c = abc_getlocal_0(o.c); - o.c = abc_getslot(o.c, f->slot); - return mkcodenode(o); - } else { - MEMBER_MULTINAME(m, f, name); - o.c = abc_getlocal_0(o.c); - o.c = abc_getproperty2(o.c, &m); - return mkcodenode(o); - } - } - } + if(!state->method->inner && !state->xmlfilter && state->cls) + { + /* look at current class' members */ + if((f = findmember_nsset(state->cls->info, name, 1, i_am_static))) + { + // name is a member or attribute in this class + int var_is_static = (f->flags&FLAG_STATIC); + + if(f->kind == INFOTYPE_VAR && (f->flags&FLAG_CONST)) { + /* if the variable is a constant (and we know what is evaluates to), we + can just use the value itself */ + varinfo_t*v = (varinfo_t*)f; + if(v->value) { + return mkconstnode(v->value); + } + } + + if(var_is_static >= i_am_static) { + if(f->kind == INFOTYPE_METHOD) { + o.t = TYPE_FUNCTION(f); + } else { + o.t = f->type; + } + + if(var_is_static && !i_am_static) { + /* access to a static member from a non-static location. + do this via findpropstrict: + there doesn't seem to be any non-lookup way to access + static properties of a class */ + state->method->late_binding = 1; + o.t = f->type; + namespace_t ns = {f->access, f->package}; + multiname_t m = {QNAME, &ns, 0, name}; + o.c = abc_findpropstrict2(o.c, &m); + o.c = abc_getproperty2(o.c, &m); + return mkcodenode(o); + } else if(f->slot>0) { + o.c = abc_getlocal_0(o.c); + o.c = abc_getslot(o.c, f->slot); + return mkcodenode(o); + } else { + MEMBER_MULTINAME(m, f, name); + o.c = abc_getlocal_0(o.c); + o.c = abc_getproperty2(o.c, &m); + return mkcodenode(o); + } + } + } + /* special case: it's allowed to access non-static constants + from a static context */ + if(i_am_static && (f=findmember_nsset(state->cls->info, name, 1, 0))) { + if(f->kind == INFOTYPE_VAR && (f->flags&FLAG_CONST)) { + varinfo_t*v = (varinfo_t*)f; + if(v->value) { + return mkconstnode(v->value); + } + } + } + } /* look at actual classes, in the current package and imported */ if(!state->xmlfilter && (a = find_class(name))) { @@ -2175,7 +2244,7 @@ code_t* insert_finally(code_t*c, code_t*finally, int tempvar) if(!state->xmlfilter && (dict_contains(state->import_toplevel_packages, name) || registry_ispackage(name))) { - o.c = abc___pushpackage__(o.c, name); + o.c = abc___pushpackage__(o.c, (char*)name); o.t = 0; return mkcodenode(o); //? } @@ -2197,8 +2266,9 @@ code_t* insert_finally(code_t*c, code_t*finally, int tempvar) } } + /* Line 274 of skeleton.m4 */ -#line 3795 "parser.y" +#line 3845 "parser.y" void add_active_url(const char*url) { @@ -2208,8 +2278,9 @@ code_t* insert_finally(code_t*c, code_t*finally, int tempvar) } + /* Line 274 of skeleton.m4 */ -#line 2213 "parser.tab.c" +#line 2284 "parser.tab.c" #ifdef short # undef short @@ -2422,18 +2493,18 @@ union yyalloc #endif /* YYFINAL -- State number of the termination state. */ -#define YYFINAL 164 +#define YYFINAL 165 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 3411 +#define YYLAST 3366 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 136 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 135 /* YYNRULES -- Number of rules. */ -#define YYNRULES 354 +#define YYNRULES 358 /* YYNRULES -- Number of states. */ -#define YYNSTATES 601 +#define YYNSTATES 612 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -2487,15 +2558,159 @@ static const yytype_uint8 yytranslate[] = #if YYDEBUG /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in YYRHS. */ -static const int yyprhs[] = +static const yytype_uint16 yyprhs[] = { - b4_prhs + 0, 0, 3, 5, 6, 8, 10, 13, 15, 17, + 19, 21, 23, 25, 30, 32, 33, 35, 37, 40, + 42, 44, 46, 48, 50, 55, 60, 62, 64, 65, + 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, + 88, 90, 92, 94, 96, 100, 103, 105, 107, 109, + 111, 113, 115, 117, 122, 125, 127, 129, 130, 134, + 137, 138, 141, 144, 146, 150, 154, 155, 158, 159, + 162, 169, 170, 172, 174, 178, 180, 183, 187, 196, + 203, 209, 216, 218, 221, 223, 226, 227, 229, 231, + 234, 236, 239, 244, 248, 249, 258, 259, 269, 270, + 276, 278, 281, 283, 286, 288, 289, 296, 299, 301, + 306, 309, 311, 313, 315, 317, 319, 323, 325, 326, + 333, 334, 340, 343, 346, 351, 352, 354, 356, 359, + 361, 363, 365, 367, 369, 371, 373, 375, 377, 379, + 380, 383, 384, 387, 388, 391, 392, 402, 403, 412, + 413, 415, 417, 420, 422, 427, 429, 431, 433, 434, + 436, 438, 441, 443, 446, 455, 457, 459, 460, 465, + 467, 471, 475, 476, 479, 481, 483, 485, 487, 489, + 491, 493, 495, 497, 499, 501, 503, 504, 505, 510, + 511, 516, 517, 520, 523, 526, 529, 533, 535, 537, + 538, 540, 547, 558, 570, 572, 575, 577, 581, 585, + 589, 593, 594, 596, 599, 604, 608, 610, 615, 618, + 620, 622, 623, 624, 637, 639, 640, 641, 652, 654, + 658, 660, 662, 664, 668, 670, 672, 674, 677, 678, + 679, 683, 684, 686, 688, 690, 693, 696, 697, 702, + 707, 712, 715, 717, 720, 722, 724, 726, 730, 732, + 736, 737, 739, 741, 743, 745, 747, 749, 753, 759, + 761, 763, 765, 767, 769, 771, 773, 775, 777, 779, + 783, 787, 791, 795, 799, 803, 807, 811, 815, 819, + 823, 827, 830, 833, 837, 841, 845, 849, 853, 857, + 861, 865, 869, 873, 877, 881, 885, 889, 893, 896, + 899, 901, 905, 908, 913, 917, 921, 925, 929, 933, + 937, 941, 945, 949, 953, 957, 961, 967, 970, 973, + 976, 979, 983, 986, 987, 994, 996, 998, 1000, 1002, + 1004, 1010, 1014, 1020, 1026, 1031, 1038, 1043, 1050, 1057, + 1064, 1068, 1070, 1072, 1075, 1080, 1085, 1088, 1093 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ -static const int yyrhs[] = +static const yytype_int16 yyrhs[] = { - b4_rhs + 137, 0, -1, 138, -1, -1, 139, -1, 140, -1, + 139, 140, -1, 188, -1, 200, -1, 198, -1, 234, + -1, 209, -1, 149, -1, 151, 128, 138, 134, -1, + 101, -1, -1, 142, -1, 143, -1, 142, 143, -1, + 200, -1, 198, -1, 234, -1, 209, -1, 149, -1, + 151, 128, 141, 134, -1, 126, 150, 261, 127, -1, + 101, -1, 145, -1, -1, 145, 147, -1, 147, -1, + 269, -1, 191, -1, 163, -1, 164, -1, 165, -1, + 166, -1, 173, -1, 159, -1, 185, -1, 181, -1, + 257, -1, 270, -1, 268, -1, 128, 145, 134, -1, + 128, 134, -1, 101, -1, 146, -1, 153, -1, 167, + -1, 168, -1, 253, -1, 183, -1, 151, 128, 145, + 134, -1, 147, 101, -1, 147, -1, 146, -1, -1, + 3, 91, 3, -1, 104, 261, -1, -1, 46, 154, + -1, 32, 154, -1, 155, -1, 154, 102, 155, -1, + 3, 244, 152, -1, -1, 157, 148, -1, -1, 66, + 156, -1, 65, 124, 255, 135, 156, 158, -1, -1, + 153, -1, 257, -1, 46, 3, 244, -1, 3, -1, + 11, 124, -1, 11, 50, 124, -1, 162, 160, 101, + 255, 101, 257, 135, 156, -1, 162, 161, 69, 255, + 135, 156, -1, 12, 124, 255, 135, 156, -1, 13, + 156, 12, 124, 255, 135, -1, 67, -1, 67, 3, + -1, 30, -1, 30, 3, -1, -1, 170, -1, 172, + -1, 170, 172, -1, 171, -1, 170, 171, -1, 34, + 261, 106, 144, -1, 62, 106, 144, -1, -1, 14, + 124, 174, 261, 135, 128, 169, 134, -1, -1, 33, + 124, 3, 244, 135, 176, 128, 144, 134, -1, -1, + 27, 128, 178, 144, 134, -1, 175, -1, 179, 175, + -1, 179, -1, 179, 177, -1, 177, -1, -1, 52, + 128, 182, 144, 134, 180, -1, 37, 255, -1, 37, + -1, 39, 124, 255, 135, -1, 184, 148, -1, 3, + -1, 17, -1, 16, -1, 29, -1, 4, -1, 187, + 129, 186, -1, 186, -1, -1, 17, 187, 128, 189, + 141, 134, -1, -1, 17, 128, 190, 141, 134, -1, + 41, 3, -1, 41, 240, -1, 41, 187, 129, 117, + -1, -1, 193, -1, 194, -1, 193, 194, -1, 20, + -1, 21, -1, 18, -1, 38, -1, 47, -1, 49, + -1, 48, -1, 25, -1, 23, -1, 4, -1, -1, + 54, 241, -1, -1, 54, 242, -1, -1, 15, 242, + -1, -1, 192, 31, 3, 195, 197, 128, 199, 202, + 134, -1, -1, 192, 44, 3, 196, 128, 201, 205, + 134, -1, -1, 203, -1, 204, -1, 203, 204, -1, + 101, -1, 151, 128, 202, 134, -1, 209, -1, 234, + -1, 146, -1, -1, 206, -1, 207, -1, 206, 207, + -1, 101, -1, 46, 3, -1, 192, 26, 233, 3, + 124, 230, 135, 244, -1, 46, -1, 32, -1, -1, + 192, 208, 210, 211, -1, 212, -1, 211, 102, 212, + -1, 3, 244, 152, -1, -1, 104, 261, -1, 8, + -1, 9, -1, 10, -1, 5, -1, 56, -1, 55, + -1, 45, -1, 28, -1, 29, -1, 227, -1, 111, + -1, 112, -1, -1, -1, 128, 261, 220, 134, -1, + -1, 128, 261, 222, 134, -1, -1, 223, 219, -1, + 223, 5, -1, 223, 112, -1, 227, 223, -1, 224, + 227, 223, -1, 3, -1, 221, -1, -1, 228, -1, + 216, 225, 226, 116, 218, 112, -1, 216, 225, 226, + 217, 223, 111, 116, 225, 218, 112, -1, 216, 225, + 226, 217, 223, 224, 111, 116, 225, 218, 112, -1, + 229, -1, 228, 229, -1, 221, -1, 221, 104, 5, + -1, 221, 104, 221, -1, 3, 104, 221, -1, 3, + 104, 5, -1, -1, 231, -1, 95, 232, -1, 231, + 102, 95, 232, -1, 231, 102, 232, -1, 232, -1, + 3, 106, 243, 213, -1, 3, 213, -1, 51, -1, + 35, -1, -1, -1, 192, 26, 233, 3, 124, 230, + 135, 244, 128, 235, 144, 134, -1, 3, -1, -1, + -1, 26, 236, 124, 230, 135, 244, 128, 238, 144, + 134, -1, 186, -1, 187, 129, 186, -1, 240, -1, + 239, -1, 241, -1, 242, 102, 241, -1, 241, -1, + 117, -1, 36, -1, 106, 243, -1, -1, -1, 124, + 246, 135, -1, -1, 247, -1, 248, -1, 254, -1, + 247, 102, -1, 248, 254, -1, -1, 24, 261, 249, + 245, -1, 261, 124, 246, 135, -1, 53, 124, 246, + 135, -1, 64, 261, -1, 42, -1, 42, 255, -1, + 261, -1, 256, -1, 261, -1, 256, 102, 261, -1, + 261, -1, 257, 102, 261, -1, -1, 260, -1, 3, + -1, 5, -1, 8, -1, 9, -1, 10, -1, 259, + 106, 254, -1, 260, 102, 259, 106, 254, -1, 237, + -1, 265, -1, 250, -1, 252, -1, 251, -1, 266, + -1, 214, -1, 215, -1, 6, -1, 19, -1, 126, + 246, 127, -1, 71, 258, 134, -1, 261, 111, 261, + -1, 261, 112, 261, -1, 261, 76, 261, -1, 261, + 77, 261, -1, 261, 72, 261, -1, 261, 73, 261, + -1, 261, 75, 261, -1, 261, 74, 261, -1, 261, + 89, 261, -1, 261, 90, 261, -1, 120, 261, -1, + 119, 261, -1, 261, 109, 261, -1, 261, 108, 261, + -1, 261, 107, 261, -1, 261, 98, 261, -1, 261, + 97, 261, -1, 261, 96, 261, -1, 261, 116, 261, + -1, 261, 118, 261, -1, 261, 115, 261, -1, 261, + 114, 261, -1, 261, 117, 261, -1, 261, 69, 261, + -1, 261, 70, 261, -1, 261, 40, 261, -1, 261, + 68, 261, -1, 43, 261, -1, 36, 261, -1, 36, + -1, 124, 256, 135, -1, 114, 261, -1, 261, 126, + 261, 127, -1, 261, 81, 261, -1, 261, 80, 261, + -1, 261, 87, 261, -1, 261, 86, 261, -1, 261, + 88, 261, -1, 261, 79, 261, -1, 261, 78, 261, + -1, 261, 85, 261, -1, 261, 82, 261, -1, 261, + 83, 261, -1, 261, 84, 261, -1, 261, 104, 261, + -1, 261, 105, 261, 106, 261, -1, 261, 93, -1, + 261, 92, -1, 93, 261, -1, 92, 261, -1, 53, + 129, 3, -1, 130, 3, -1, -1, 261, 129, 124, + 262, 261, 135, -1, 3, -1, 117, -1, 4, -1, + 186, -1, 117, -1, 261, 129, 263, 91, 264, -1, + 261, 94, 264, -1, 261, 94, 263, 91, 264, -1, + 261, 129, 126, 261, 127, -1, 261, 129, 130, 264, + -1, 261, 129, 130, 263, 91, 264, -1, 261, 94, + 130, 264, -1, 261, 94, 130, 263, 91, 264, -1, + 261, 129, 130, 126, 261, 127, -1, 261, 94, 130, + 126, 261, 127, -1, 261, 129, 264, -1, 4, -1, + 3, -1, 16, 3, -1, 16, 3, 104, 3, -1, + 16, 3, 104, 5, -1, 192, 267, -1, 63, 16, + 104, 261, -1, 22, 16, 241, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -2535,8 +2750,8 @@ static const yytype_uint16 yyrline[] = 3407, 3408, 3409, 3410, 3411, 3412, 3413, 3414, 3415, 3416, 3417, 3418, 3419, 3420, 3421, 3422, 3423, 3425, 3426, 3427, 3428, 3430, 3445, 3453, 3453, 3507, 3508, 3509, 3510, 3511, - 3519, 3537, 3544, 3555, 3562, 3569, 3579, 3590, 3770, 3804, - 3811, 3818, 3825, 3847, 3853 + 3551, 3554, 3561, 3564, 3575, 3583, 3587, 3594, 3598, 3608, + 3619, 3816, 3820, 3854, 3861, 3868, 3875, 3897, 3904 }; #endif @@ -2660,8 +2875,8 @@ static const yytype_uint16 yyr1[] = 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, 262, 261, 263, 263, 263, 264, 264, - 261, 261, 261, 261, 261, 261, 261, 265, 266, 267, - 267, 267, 268, 269, 270 + 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, + 265, 266, 266, 267, 267, 267, 268, 269, 270 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -2701,8 +2916,8 @@ static const yytype_uint8 yyr2[] = 1, 3, 2, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 2, 2, 2, 2, 3, 2, 0, 6, 1, 1, 1, 1, 1, - 5, 3, 5, 4, 4, 6, 6, 3, 1, 2, - 4, 4, 2, 4, 3 + 5, 3, 5, 5, 4, 6, 4, 6, 6, 6, + 3, 1, 1, 2, 4, 4, 2, 4, 3 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -2710,7 +2925,7 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 125, 348, 138, 177, 277, 174, 175, 176, 0, 0, + 125, 352, 351, 177, 277, 174, 175, 176, 0, 0, 66, 0, 0, 131, 278, 129, 130, 0, 137, 0, 136, 225, 181, 182, 310, 132, 0, 0, 0, 180, 133, 135, 134, 0, 0, 179, 178, 0, 0, 0, @@ -2720,163 +2935,165 @@ static const yytype_uint16 yydefact[] = 32, 0, 126, 127, 9, 8, 11, 275, 276, 0, 183, 10, 269, 271, 273, 272, 41, 258, 270, 274, 43, 31, 42, 0, 0, 76, 0, 0, 125, 94, - 111, 115, 113, 112, 114, 120, 117, 0, 0, 348, - 247, 224, 0, 309, 0, 122, 0, 123, 308, 105, - 241, 0, 0, 251, 0, 262, 263, 264, 265, 266, - 0, 0, 261, 330, 329, 312, 292, 291, 0, 256, - 0, 242, 243, 244, 254, 84, 0, 108, 252, 0, - 82, 46, 45, 125, 47, 30, 0, 48, 49, 50, - 52, 0, 51, 332, 1, 6, 125, 348, 0, 72, - 0, 0, 73, 55, 110, 0, 221, 0, 166, 0, - 165, 167, 352, 128, 197, 0, 198, 199, 0, 0, + 111, 115, 113, 112, 114, 120, 117, 0, 0, 352, + 351, 247, 224, 0, 309, 0, 122, 0, 123, 308, + 105, 241, 0, 0, 251, 0, 262, 263, 264, 265, + 266, 0, 0, 261, 330, 329, 312, 292, 291, 0, + 256, 0, 242, 243, 244, 254, 84, 0, 108, 252, + 0, 82, 46, 45, 125, 47, 30, 0, 48, 49, + 50, 52, 0, 51, 332, 1, 6, 125, 352, 0, + 72, 0, 0, 73, 55, 110, 0, 221, 0, 166, + 0, 165, 167, 356, 138, 128, 197, 0, 198, 199, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 328, 327, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 328, 327, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 241, 0, 0, 58, 77, 0, 255, 0, 67, 0, - 125, 118, 0, 228, 0, 231, 230, 354, 239, 211, - 0, 0, 28, 0, 331, 0, 0, 280, 0, 0, - 0, 311, 279, 245, 246, 85, 238, 62, 63, 107, - 253, 61, 83, 44, 29, 125, 0, 238, 0, 0, - 54, 349, 220, 219, 0, 139, 141, 0, 189, 0, - 206, 0, 200, 204, 259, 306, 307, 304, 305, 285, - 286, 288, 287, 283, 284, 320, 319, 315, 314, 322, - 323, 324, 321, 317, 316, 318, 289, 290, 339, 0, - 338, 341, 298, 297, 296, 325, 0, 295, 294, 293, - 281, 282, 302, 301, 299, 303, 300, 0, 0, 111, - 115, 339, 333, 0, 0, 0, 347, 66, 0, 0, - 26, 57, 0, 125, 17, 23, 0, 20, 19, 22, - 21, 125, 116, 0, 241, 248, 172, 0, 0, 212, - 216, 109, 124, 229, 0, 27, 250, 353, 66, 267, - 0, 257, 0, 60, 0, 125, 13, 60, 0, 0, - 0, 0, 0, 143, 0, 0, 238, 168, 169, 0, - 0, 0, 185, 186, 191, 205, 0, 344, 0, 249, - 313, 0, 0, 0, 343, 0, 80, 0, 0, 0, - 121, 18, 125, 0, 0, 0, 0, 218, 213, 238, - 0, 0, 68, 0, 236, 235, 234, 237, 0, 65, - 64, 53, 0, 66, 350, 351, 211, 140, 0, 0, - 232, 142, 147, 60, 0, 190, 210, 209, 207, 208, - 0, 0, 0, 326, 0, 342, 0, 340, 81, 86, - 0, 0, 119, 240, 173, 172, 0, 0, 215, 0, - 0, 100, 104, 102, 106, 66, 70, 268, 59, 0, - 79, 0, 144, 145, 0, 125, 171, 170, 201, 193, - 184, 194, 0, 192, 0, 191, 346, 334, 345, 0, - 0, 0, 87, 90, 88, 25, 24, 217, 226, 214, - 98, 0, 101, 103, 69, 66, 238, 125, 233, 0, - 162, 0, 0, 125, 160, 0, 187, 184, 191, 195, - 0, 28, 95, 91, 89, 28, 28, 238, 78, 0, - 153, 157, 0, 0, 0, 125, 151, 155, 156, 163, - 221, 148, 161, 186, 0, 0, 196, 28, 93, 0, - 0, 0, 222, 125, 146, 152, 0, 0, 188, 186, - 92, 227, 99, 96, 28, 0, 0, 202, 0, 0, - 0, 154, 211, 203, 28, 223, 0, 0, 238, 97, - 164 + 0, 0, 241, 0, 0, 58, 77, 0, 255, 0, + 67, 0, 125, 118, 0, 228, 0, 231, 230, 358, + 239, 211, 0, 0, 28, 0, 331, 0, 0, 280, + 0, 0, 0, 311, 279, 245, 246, 85, 238, 62, + 63, 107, 253, 61, 83, 44, 29, 125, 0, 238, + 0, 0, 54, 353, 220, 219, 0, 139, 141, 0, + 189, 0, 206, 0, 200, 204, 259, 306, 307, 304, + 305, 285, 286, 288, 287, 283, 284, 320, 319, 315, + 314, 322, 323, 324, 321, 317, 316, 318, 289, 290, + 111, 115, 339, 0, 338, 0, 341, 298, 297, 296, + 325, 0, 295, 294, 293, 281, 282, 302, 301, 299, + 303, 300, 0, 0, 333, 0, 0, 0, 350, 66, + 0, 0, 26, 57, 0, 125, 17, 23, 0, 20, + 19, 22, 21, 125, 116, 0, 241, 248, 172, 0, + 0, 212, 216, 109, 124, 229, 0, 27, 250, 357, + 66, 267, 0, 257, 0, 60, 0, 125, 13, 60, + 0, 0, 0, 0, 0, 143, 0, 0, 238, 168, + 169, 0, 0, 0, 185, 186, 191, 205, 0, 0, + 346, 0, 0, 249, 313, 0, 0, 0, 0, 344, + 0, 80, 0, 0, 0, 121, 18, 125, 0, 0, + 0, 0, 218, 213, 238, 0, 0, 68, 0, 236, + 235, 234, 237, 0, 65, 64, 53, 0, 66, 354, + 355, 211, 140, 0, 0, 232, 142, 147, 60, 0, + 190, 210, 209, 207, 208, 0, 0, 0, 0, 339, + 342, 326, 0, 343, 0, 0, 340, 81, 86, 0, + 0, 119, 240, 173, 172, 0, 0, 215, 0, 0, + 100, 104, 102, 106, 66, 70, 268, 59, 0, 79, + 0, 144, 145, 0, 125, 171, 170, 201, 193, 184, + 194, 0, 192, 0, 191, 349, 347, 334, 348, 345, + 0, 0, 0, 87, 90, 88, 25, 24, 217, 226, + 214, 98, 0, 101, 103, 69, 66, 238, 125, 233, + 0, 162, 0, 0, 125, 160, 0, 187, 184, 191, + 195, 0, 28, 95, 91, 89, 28, 28, 238, 78, + 0, 153, 157, 0, 0, 0, 125, 151, 155, 156, + 163, 221, 148, 161, 186, 0, 0, 196, 28, 93, + 0, 0, 0, 222, 125, 146, 152, 0, 0, 188, + 186, 92, 227, 99, 96, 28, 0, 0, 202, 0, + 0, 0, 154, 211, 203, 28, 223, 0, 0, 238, + 97, 164 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 52, 53, 54, 55, 352, 353, 354, 374, 375, - 154, 155, 174, 355, 419, 156, 439, 157, 271, 268, - 97, 98, 486, 59, 170, 171, 60, 61, 62, 63, - 64, 158, 159, 511, 512, 513, 514, 65, 239, 481, - 589, 482, 546, 483, 484, 66, 252, 160, 67, 68, - 243, 244, 69, 361, 240, 70, 161, 72, 73, 393, - 395, 449, 357, 527, 358, 495, 554, 555, 556, 532, - 533, 534, 181, 359, 287, 397, 398, 427, 77, 78, - 79, 404, 460, 503, 564, 186, 399, 461, 504, 187, - 291, 80, 292, 293, 368, 369, 370, 284, 360, 584, - 112, 82, 545, 245, 246, 436, 451, 437, 383, 365, - 140, 141, 142, 248, 83, 84, 85, 162, 143, 235, - 236, 86, 130, 131, 132, 87, 411, 345, 321, 88, - 89, 182, 90, 91, 92 + -1, 52, 53, 54, 55, 354, 355, 356, 376, 377, + 155, 156, 175, 357, 424, 157, 444, 158, 273, 270, + 97, 98, 495, 59, 171, 172, 60, 61, 62, 63, + 64, 159, 160, 522, 523, 524, 525, 65, 241, 490, + 600, 491, 557, 492, 493, 66, 254, 161, 67, 68, + 324, 246, 69, 363, 242, 70, 162, 72, 73, 395, + 397, 454, 359, 538, 360, 504, 565, 566, 567, 543, + 544, 545, 182, 361, 289, 399, 400, 432, 77, 78, + 79, 406, 465, 512, 575, 188, 401, 466, 513, 189, + 293, 80, 294, 295, 370, 371, 372, 286, 362, 595, + 113, 82, 556, 247, 248, 441, 456, 442, 385, 367, + 141, 142, 143, 250, 83, 84, 85, 163, 144, 237, + 238, 86, 131, 132, 133, 87, 415, 325, 326, 88, + 89, 183, 90, 91, 92 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -515 +#define YYPACT_NINF -501 static const yytype_int16 yypact[] = { - 1766, 12, -515, -515, -515, -515, -515, -515, -28, -6, - -515, 16, 94, -515, -515, -515, -515, 108, -515, 2220, - -515, 122, -515, -515, 2277, -515, 17, 363, 2220, -515, - -515, -515, -515, 24, 27, -515, -515, 112, 2220, 29, - 332, 2220, 2220, -515, -515, 2220, 2220, 2220, 2220, 2220, - 710, 158, 165, -515, 578, -515, -515, -515, 44, -515, - 2148, -515, -515, -515, -515, -515, -515, 2022, -515, -515, - -515, 288, 766, -515, -515, -515, -515, -515, -515, 11, - -515, -515, -515, -515, -515, -515, 118, 2972, -515, -515, - -515, -515, -515, 218, 101, -515, 2220, 221, 2022, -515, - -515, -515, -515, -515, -515, -515, -515, -83, 373, -515, - -50, -515, 111, -51, 2220, 110, 124, -515, -51, -515, - 2220, 253, 155, -51, 2220, -515, -515, -515, -515, -515, - 127, 159, 162, -51, -51, 702, -51, -51, -52, 2910, - 141, 168, 2220, -515, 2910, 268, 272, 2220, 2220, 272, - 273, -515, -515, 842, -515, -515, 149, -515, -515, -515, - -515, 266, -515, -515, -515, -515, 1106, 214, 282, -515, - 191, 225, 118, 202, -515, 302, 54, 304, -515, 305, - -515, -515, -515, -515, -515, 2220, -515, 20, 2220, 2220, - 2220, 2220, 2220, 2220, 2220, 2220, 2220, 2220, 2220, 2220, - 2220, 2220, 2220, 2220, 2220, 2220, 2220, 2220, 2220, 2220, - 2220, 2220, -515, -515, 130, 2220, 2220, 2220, 2220, 2220, - 2220, 2220, 2220, 2220, 2220, 2220, 2220, 2220, 2220, 2220, - 2220, 2220, 128, -515, -515, 174, 209, 188, -515, 2220, - 1238, -515, 373, 184, 187, -515, -515, -515, 194, 21, - 186, 84, 1894, 193, -515, 2220, 198, -515, 2220, 332, - 2220, -515, -515, -515, -515, -515, 216, 236, -515, -515, - -515, 236, -515, -515, -515, 2022, 226, 216, 2220, 2220, - -515, 239, -515, -515, 345, 311, 314, 366, 2910, 278, - 280, -49, 20, -515, 2910, 408, 570, 570, 570, 3282, - 3282, 3282, 3282, 408, 408, 2910, 2910, 2910, 2910, 2910, - 2910, 2910, 2910, 2910, 2910, 2910, 365, 3034, -515, 146, - -515, -515, 424, 424, 424, 2910, 2476, 3096, 3158, 3220, - 408, 408, 702, 702, -51, -51, -51, 250, 2538, 295, - 306, 307, -515, 2220, 233, 312, -515, -515, 2220, 2336, - -515, 279, 259, 1370, -515, -515, 267, -515, -515, -515, - -515, 1238, -515, 373, 2220, -515, 126, 401, 274, 308, - -515, -515, -515, 283, 281, 1894, -515, 2910, -515, -515, - 310, 2910, 270, 313, 272, 974, -515, -30, 317, 284, - 104, 290, 373, 393, 373, 292, 216, 323, -515, 294, - 14, 15, -515, -515, -515, -515, 2220, -515, 2220, -515, - -515, 2220, 2600, 2220, -515, 354, -515, 296, 301, 2220, - -515, -515, 1238, 298, 309, 2220, 270, -515, -515, 216, - 22, 39, 364, 2220, -515, -515, -515, -515, 2220, -515, - -515, -515, 2220, -515, -515, -515, 21, -515, 373, 315, - -515, 334, -515, 313, 366, -515, -515, -515, -515, -515, - 333, 43, 2662, 2910, 2406, -515, 2724, -515, -515, 28, - 2786, 316, -515, -515, 2910, 342, 319, 401, -515, 321, - 327, -515, -515, 39, -515, -515, -515, -515, 2910, -41, - -515, 318, 334, -515, 373, 277, -515, -515, -515, -515, - 338, -515, 2220, -515, 353, -515, -515, -515, -515, 2220, - 350, 331, 28, -515, -515, -515, -515, -515, -515, -515, - -515, 463, -515, -515, -515, -515, 216, 1502, -515, 464, - -515, 442, 335, 326, -515, 11, 2910, 359, -515, 46, - 2848, 1894, -515, -515, -515, 1894, 1894, 216, -515, 358, - -515, -515, 360, 264, 336, 1634, -515, -515, -515, -515, - 54, -515, -515, -515, 344, 11, 46, 1894, -515, 362, - 369, 352, -515, 1502, -515, -515, 489, 381, -515, -515, - -515, -515, -515, -515, 1894, 374, 375, -515, 386, 379, - 376, -515, 21, -515, 1894, -515, 377, 380, 216, -515, - -515 + 1777, -27, 777, -501, -501, -501, -501, -501, -25, -48, + -501, -47, 258, -501, -501, -501, -501, 73, -501, 2113, + -501, 107, -501, -501, 2170, -501, -8, 363, 2113, -501, + -501, -501, -501, -9, -17, -501, -501, 117, 2113, 35, + 153, 2113, 2113, -501, -501, 2113, 2113, 2113, 2113, 2113, + 721, 135, 141, -501, 589, -501, -501, -501, 23, -501, + 434, -501, -501, -501, -501, -501, -501, 2033, -501, -501, + -501, 362, 453, -501, -501, -501, -501, -501, -501, 14, + -501, -501, -501, -501, -501, -501, 74, 2865, -501, -501, + -501, -501, -501, 174, 100, -501, 2113, 223, 2033, -501, + -501, -501, -501, -501, -501, -501, -501, 98, 418, -501, + -501, -34, -501, 112, -24, 2113, 110, 122, -501, -24, + -501, 2113, 255, 156, -24, 2113, -501, -501, -501, -501, + -501, 129, 158, 163, -24, -24, 818, -24, -24, -55, + 2803, 139, 168, 2113, -501, 2803, 268, 275, 2113, 2113, + 275, 282, -501, -501, 853, -501, -501, 165, -501, -501, + -501, -501, 279, -501, -501, -501, -501, 1117, 222, 296, + -501, 203, 237, 74, 206, -501, 310, 27, 311, -501, + 312, -501, -501, -501, -501, -501, -501, 2113, -501, 15, + 2113, 2113, 2113, 2113, 2113, 2113, 2113, 2113, 2113, 2113, + 2113, 2113, 2113, 2113, 2113, 2113, 2113, 2113, 2113, 2113, + 2113, 2113, 2113, 2113, -501, -501, 36, 2113, 2113, 2113, + 2113, 2113, 2113, 2113, 2113, 2113, 2113, 2113, 2113, 2113, + 2113, 2113, 2113, 2113, 123, -501, -501, 181, 215, 195, + -501, 2113, 1249, -501, 418, 192, 194, -501, -501, -501, + 207, 25, 197, 344, 1905, 199, -501, 2113, 201, -501, + 2113, 153, 2113, -501, -501, -501, -501, -501, 236, 238, + -501, -501, -501, 238, -501, -501, -501, 2033, 209, 236, + 2113, 2113, -501, 241, -501, -501, 343, 295, 298, 347, + 2803, 249, 265, 38, 15, -501, 2803, 1109, 581, 581, + 581, 3237, 3237, 3237, 3237, 1109, 1109, 2803, 2803, 2803, + 2803, 2803, 2803, 2803, 2803, 2803, 2803, 2803, 2927, 2989, + 271, 283, 284, 273, -501, 285, -501, 713, 713, 713, + 2803, 2369, 3051, 3113, 3175, 1109, 1109, 818, 818, -24, + -24, -24, 224, 2431, -501, 2113, 293, 291, -501, -501, + 2113, 2229, -501, 243, 257, 1381, -501, -501, 270, -501, + -501, -501, -501, 1249, -501, 418, 2113, -501, 68, 380, + 267, 302, -501, -501, -501, 278, 277, 1905, -501, 2803, + -501, -501, 303, 2803, 308, 309, 275, 985, -501, -19, + 314, 281, 220, 299, 418, 402, 418, 292, 236, 328, + -501, 307, 18, 19, -501, -501, -501, -501, 2113, 341, + -501, 368, 2113, -501, -501, 2113, 2493, 2113, 342, -501, + 368, -501, 301, 317, 2113, -501, -501, 1249, 315, 313, + 2113, 308, -501, -501, 236, 28, 48, 384, 2113, -501, + -501, -501, -501, 2113, -501, -501, -501, 2113, -501, -501, + -501, 25, -501, 418, 323, -501, 350, -501, 309, 347, + -501, -501, -501, -501, -501, 352, 37, 2555, 368, -501, + -501, 2803, 2299, -501, 2617, 368, -501, -501, 49, 2679, + 320, -501, -501, 2803, 351, 331, 380, -501, 337, 332, + -501, -501, 48, -501, -501, -501, -501, 2803, -29, -501, + 333, 350, -501, 418, 234, -501, -501, -501, -501, 353, + -501, 2113, -501, 356, -501, -501, -501, -501, -501, -501, + 2113, 366, 348, 49, -501, -501, -501, -501, -501, -501, + -501, -501, 472, -501, -501, -501, -501, 236, 1513, -501, + 478, -501, 457, 354, 280, -501, 14, 2803, 370, -501, + 17, 2741, 1905, -501, -501, -501, 1905, 1905, 236, -501, + 364, -501, -501, 365, 72, 360, 1645, -501, -501, -501, + -501, 27, -501, -501, -501, 361, 14, 17, 1905, -501, + 369, 372, 349, -501, 1513, -501, -501, 494, 395, -501, + -501, -501, -501, -501, -501, 1905, 375, 386, -501, 399, + 385, 378, -501, 25, -501, 1905, -501, 379, 381, 236, + -501, -501 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -515, -515, 343, -515, 457, -340, -515, 160, -514, -37, - 1, -58, 417, 60, -515, 2, 82, 461, 390, 161, - -241, -515, -515, -515, -515, -515, -515, -515, -515, -515, - -515, -515, -515, -515, -515, 31, 32, -515, -515, 63, - -515, 64, -515, -515, -515, -515, -515, -515, -515, -515, - 37, 59, -515, -515, -515, -515, 0, -515, 477, -515, - -515, -515, 65, -515, 68, -515, -22, -515, -3, -515, - -515, 30, -515, 3, -515, -515, 100, 85, -515, -515, - -515, -515, -464, -515, -515, -172, -515, -453, -515, -488, - -515, -423, -515, 269, -428, -515, -339, 5, 4, -515, - -515, -515, -515, -515, 535, -103, 116, 140, -269, -515, - -109, -515, -515, -515, -515, -515, -515, -515, -132, -55, - 519, -54, -515, 320, -515, -12, -515, -515, -215, -515, - -515, -515, -515, -515, -515 + -501, -501, 355, -501, 462, -331, -501, 162, -470, -36, + 1, -57, 420, 61, -501, 2, 62, 459, 374, 137, + -334, -501, -501, -501, -501, -501, -501, -501, -501, -501, + -501, -501, -501, -501, -501, 5, 6, -501, -501, 32, + -501, 33, -501, -501, -501, -501, -501, -501, -501, -501, + -7, 39, -501, -501, -501, -501, 0, -501, 458, -501, + -501, -501, 63, -501, 67, -501, -53, -501, -33, -501, + -501, -10, -501, 3, -501, -501, 76, 52, -501, -501, + -501, -501, -500, -501, -501, -170, -501, -455, -501, -497, + -501, -422, -501, 252, -430, -501, -342, -39, 4, -501, + -501, -501, -501, -501, 510, -102, 90, 116, -270, -501, + -110, -501, -501, -501, -501, -501, -501, -501, -130, -77, + 501, -52, -501, 289, -501, -12, -501, -191, -189, -501, + -501, -501, -501, -501, -501 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -2886,694 +3103,684 @@ static const yytype_int16 yypgoto[] = #define YYTABLE_NINF -338 static const yytype_int16 yytable[] = { - 71, 56, 58, 76, 81, 247, 172, 110, 387, 173, - 264, 253, 113, 153, 184, 290, 118, 346, 491, 456, - 458, 423, 94, 289, 366, 366, 123, 568, 428, 133, - 134, 569, 570, 135, 136, 137, 139, 144, 505, -74, - 173, 212, 213, 214, 214, 241, 242, 563, 499, 106, - 260, 499, 539, 580, 71, 56, 58, 76, 81, 250, - 57, 188, 509, 402, 106, 74, 479, 403, 75, 256, - 590, 107, 480, 230, 438, 231, 231, 579, 232, 232, - 597, 538, 471, 261, 139, 566, 116, 100, 101, 282, - 510, 478, 269, 270, 525, 274, 95, 100, 101, 577, - 102, 103, 139, 93, 407, 283, 416, 444, 144, 445, - 102, 103, 139, 104, 57, 588, 367, 477, 96, 74, - 290, 337, 75, 104, 108, 111, 379, 453, 122, 414, - 144, 339, 340, 100, 101, 139, 139, 432, 519, 185, - 99, 114, 185, 185, 102, 103, 102, 103, 185, 100, - 101, 120, 119, 124, 500, 501, 121, 104, 501, 104, - 476, 163, 102, 103, 596, 164, 71, 56, 58, 76, - 81, 502, 166, 288, 502, 104, 294, 295, 296, 297, + 71, 56, 58, 76, 81, 106, 249, 111, 173, 389, + 174, 255, 114, 266, 154, 421, 119, 186, 291, 292, + 106, 500, 508, 461, 463, 94, 124, 433, 368, 134, + 135, 368, 428, 136, 137, 138, 140, 145, 252, 320, + 321, 174, 508, 347, 514, 348, 437, 262, 258, 574, + -74, 107, 102, 103, 71, 56, 58, 76, 81, 550, + 216, 57, 284, 74, 93, 104, 117, 75, 214, 215, + 216, 271, 272, 190, 588, 488, 96, 99, 285, 590, + 263, 489, 579, 520, 140, 443, 580, 581, 176, 108, + 599, 549, 233, 487, 577, 234, 480, 276, 177, 95, + 232, 245, 233, 140, 179, 234, 536, 121, 591, 145, + 112, 521, 122, 140, 499, 57, 115, 74, 181, 120, + 369, 75, 342, 486, 292, 601, 320, 321, 458, 510, + 381, 145, 409, 123, 410, 608, 140, 140, 164, 102, + 103, 165, 187, 187, 530, 511, 187, 187, 509, 510, + 404, 167, 104, 322, 405, 418, 126, 419, 127, 125, + 535, 128, 129, 130, 485, 511, 323, 71, 56, 58, + 76, 81, 430, 607, 431, 290, 190, 235, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 467, 372, 490, 322, 323, 324, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 334, 335, 336, 144, 338, - 188, 233, 105, 388, 389, 234, 57, 349, 457, 459, - 425, 74, 426, 237, 75, 249, 100, 101, 385, -111, - 71, 56, 356, 377, 524, 341, 144, 318, 381, 102, - 103, 320, 342, 251, 343, 424, 254, 549, 344, 255, - 319, 257, 104, 318, 259, 258, 139, 139, 262, 320, - 263, 265, 406, 100, 101, 266, 272, 275, 571, 362, - 175, 2, 175, -75, 548, 277, 102, 103, 373, 447, - 176, 450, 278, 417, 279, 13, 178, 15, 16, 104, - 18, 487, 20, 280, 175, 281, 434, 285, 286, 347, - 180, 260, 348, -117, 176, 25, 363, 274, 364, 177, - 178, 371, 382, 529, 30, 31, 32, 274, 376, 600, - 2, 412, 179, 378, 180, 125, 139, 126, 384, 144, - 127, 128, 129, 390, 13, 450, 15, 16, 391, 18, - 318, 20, 144, 71, 56, 356, 320, 100, 101, 413, - 386, 71, 56, 356, 25, 392, 115, 101, 394, 396, - 102, 103, 529, 30, 31, 32, 100, 101, 530, 102, - 103, 320, 400, 104, 401, 409, -335, 435, 489, 102, - 103, 528, 104, 420, 462, 422, 463, -337, -336, 464, - 373, 466, 104, 415, 366, 189, -241, 470, 448, 429, - 430, -158, -116, 474, 446, 431, 433, 438, 442, 443, - 452, 144, 71, 56, 356, 454, 488, 530, 455, 469, - 485, 468, 472, 190, 191, 192, 494, 193, 194, 195, - 196, 197, 198, 493, 473, 498, 425, 518, -338, 520, - 516, 521, 320, 526, 535, 211, 541, 212, 213, 214, - -159, 215, 216, 217, 537, 542, 547, 559, 560, 561, - 574, 318, 220, 221, 222, 565, 223, 224, 578, 225, - 226, 227, 228, 229, -338, -338, 572, 583, 573, 230, - 536, 231, 586, 587, 232, 531, 581, 540, 593, 592, - 212, 213, 214, 582, 215, 216, 217, 594, 591, 276, - 595, 165, 598, 421, 599, 238, 212, 213, 214, -338, - -338, 169, 225, 226, 227, 228, 229, 553, 551, 552, - 557, 558, 230, 531, 231, 496, 267, 232, 225, 226, - 227, 228, 229, 543, 544, 440, 522, 523, 230, 183, - 231, 585, 575, 232, 497, 553, 551, 552, 557, 558, - 517, 405, 117, 562, 492, 576, 475, 138, 0, 0, - 0, 0, 0, 553, 551, 552, 557, 558, -4, 380, - 0, 1, 2, 3, 4, 0, 5, 6, 7, 8, - 9, 10, 11, 0, 0, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 0, 0, 22, 23, 0, 0, - 189, 0, 0, 0, 24, 0, 25, 26, 0, 27, - 0, 28, 0, 29, 0, 30, 31, 32, 0, 0, - 33, 34, 0, 35, 36, 0, 0, 0, -338, -338, - -338, 37, 38, 39, 0, 0, 197, 198, 0, 40, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 212, 213, 214, 0, 215, 216, 217, 0, - 41, 42, 0, 0, 0, 0, 0, 0, 0, 43, - 0, 223, 224, 0, 225, 226, 227, 228, 229, 44, - 0, 0, 45, 0, 230, 0, 231, 46, 47, 232, - 0, 0, 48, 0, 49, 0, 50, 0, 51, 0, - 0, 0, -4, 1, 2, 3, 4, 0, 5, 6, - 7, 8, 9, 10, 11, 0, 0, 0, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 0, 22, 23, - 145, 0, 146, 0, 0, 0, 24, 147, 25, 26, - 0, 27, 148, 28, 0, 29, 149, 30, 31, 32, - 0, 0, 33, 34, 0, 35, 36, 0, 0, 0, - 2, 0, 0, 37, 38, 39, 0, 150, 0, 0, - 0, 40, 0, 0, 13, 0, 15, 16, 0, 18, - 0, 20, 0, 0, 212, 213, 214, 0, 0, 0, - 0, 0, 41, 42, 25, 0, 0, 0, 0, 0, - 0, 151, 0, 30, 31, 32, 0, 0, 227, 228, - 229, 44, 0, 0, 45, 0, 230, 0, 231, 46, - 47, 232, 0, 0, 48, 0, 49, 0, 50, 0, - 51, 0, 0, 0, 152, 1, 2, 3, 4, 0, - 5, 6, 7, 8, 9, 10, 11, 0, 0, 0, - 13, 14, 15, 16, 17, 18, 19, 20, 21, 0, - 22, 23, 145, 0, 146, 0, 0, 0, 24, 147, - 25, 26, 0, 27, 148, 28, 0, 29, 149, 30, - 31, 32, 0, 0, 33, 34, 0, 35, 36, 0, - 0, 0, 0, 0, 0, 37, 38, 39, 0, 150, - 0, 0, 0, 40, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 41, 42, 0, 0, 0, 0, - 0, 0, 0, 151, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 44, 0, 0, 45, 0, 0, 0, - 0, 46, 47, 0, 0, 0, 48, 0, 49, 0, - 50, 0, 51, 0, 0, 0, 273, 1, 2, 3, - 4, 0, 5, 6, 7, 8, 9, 10, 11, 0, - 0, 0, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 0, 22, 23, 145, 0, 146, 0, 0, 0, - 24, 147, 25, 26, 0, 27, 148, 28, 0, 29, - 149, 30, 31, 32, 0, 0, 33, 34, 0, 35, - 36, 0, 0, 0, 0, 0, 0, 37, 38, 39, - 0, 150, 0, 0, 0, 40, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 41, 42, 0, 0, - 0, 0, 0, 0, 0, 151, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 44, 0, 0, 45, 0, - 0, 0, 0, 46, 47, 0, 0, 0, 48, 0, - 49, 0, 50, 0, 51, 0, 0, 0, 441, 1, - 2, 3, 4, 0, 5, 6, 7, 8, 9, 10, - 11, 0, 0, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 0, 0, 22, 23, 0, 0, 0, 0, - 0, 0, 24, 0, 25, 26, 0, 27, 0, 28, - 0, 29, 0, 30, 31, 32, 0, 0, 33, 34, - 0, 35, 36, 0, 0, 0, 0, 0, 0, 37, - 38, 39, 0, 0, 0, 0, 0, 40, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 41, 42, - 0, 0, 0, 0, 0, 0, 0, 43, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 44, 0, 0, - 45, 0, 0, 0, 0, 46, 47, 0, 0, 0, - 48, 0, 49, 0, 50, 0, 51, 0, 0, 0, - -3, 1, 2, 3, 4, 0, 5, 6, 7, 8, - 9, 10, 11, 0, 0, 0, 13, 14, 15, 16, - 17, 18, 19, 20, 0, 0, 22, 23, 0, 0, - 0, 0, 0, 0, 24, 0, 25, 26, 0, 27, - 0, 28, 0, 29, 0, 30, 31, 32, 0, 0, - 33, 34, 0, 35, 36, 0, 0, 0, 0, 0, - 0, 37, 38, 39, 0, 0, 0, 0, 0, 40, + 318, 319, 559, 390, 391, 327, 328, 329, 330, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 145, 343, 470, 449, 236, 450, 243, 244, 57, 351, + 74, 476, 462, 464, 75, 239, 251, 364, 184, -111, + 322, 387, 71, 56, 358, 379, 375, 344, 145, 345, + 383, 253, 13, 346, 15, 16, 429, 18, 256, 20, + 257, 100, 101, 259, 260, 261, 264, 560, 140, 140, + 265, 267, 25, 422, 102, 103, 320, 321, 268, 516, + 540, 30, 31, 32, 184, 274, 519, 104, 582, 102, + 103, -75, 452, 277, 455, 176, 320, 321, 13, 279, + 15, 16, 104, 18, 280, 20, 281, 282, 496, 102, + 103, 100, 101, 283, 287, 288, 349, 262, 25, 350, + 276, -117, 104, 365, 102, 103, 540, 30, 31, 32, + 276, 366, 373, 416, 378, 541, 380, 104, 140, 611, + 386, 145, 384, 388, 439, 392, 393, 100, 101, 394, + 398, 455, 396, 402, 145, 71, 56, 358, 375, 413, + 102, 103, -335, 71, 56, 358, 116, 101, -158, 403, + -241, 100, 101, 104, -337, -336, 411, 245, 176, 102, + 103, 541, 420, 368, 102, 103, 105, 245, 177, 245, + 322, 425, 104, 178, 179, 498, 467, 104, 427, 408, + 471, 539, 434, 472, 435, 474, 180, -116, 181, 438, + 322, 436, 479, 443, -159, 447, 448, 453, 483, 417, + 457, 100, 101, 451, 245, 440, 145, 71, 56, 358, + 459, 497, 468, 475, 102, 103, 477, 168, 110, 3, + 4, 460, 5, 6, 7, 478, 245, 104, 482, 481, + 494, 502, 503, 14, 527, 430, 532, 184, 19, 529, + 21, 374, 22, 23, 507, 531, 147, 548, 537, 546, + 24, 13, 552, 15, 16, 558, 18, 28, 20, 29, + 169, 570, 553, 571, 594, 469, 576, 34, 572, 35, + 36, 25, 583, 584, 585, 589, 245, 597, 38, 547, + 30, 31, 32, 592, 542, 40, 593, 598, 551, 602, + 603, 604, 606, 605, 609, 610, 166, 426, 240, 170, + 505, 269, 278, 445, 533, 534, 41, 42, 554, 555, + 185, 596, 587, 586, 573, 506, 528, 118, 564, 562, + 563, 568, 569, 501, 542, 44, 407, 484, 45, 139, + 382, 0, 0, 46, 47, 0, 0, 0, 48, 0, + 49, 0, 0, 0, 51, 0, 564, 562, 563, 568, + 569, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 564, 562, 563, 568, 569, -4, + 0, 0, 1, 2, 3, 4, 0, 5, 6, 7, + 8, 9, 10, 11, 0, 0, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 0, 0, 22, 23, 0, + 0, 191, 0, 0, 0, 24, 0, 25, 26, 0, + 27, 0, 28, 0, 29, 0, 30, 31, 32, 0, + 0, 33, 34, 0, 35, 36, 0, 0, 0, -338, + -338, -338, 37, 38, 39, 0, 0, 199, 200, 0, + 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 214, 215, 216, 0, 217, 218, 219, + 0, 41, 42, 0, 0, 0, 0, 0, 0, 0, + 43, 0, 225, 226, 0, 227, 228, 229, 230, 231, + 44, 0, 0, 45, 0, 232, 0, 233, 46, 47, + 234, 0, 0, 48, 0, 49, 0, 50, 0, 51, + 0, 0, 0, -4, 1, 2, 3, 4, 0, 5, + 6, 7, 8, 9, 10, 11, 0, 0, 0, 13, + 14, 15, 16, 17, 18, 19, 20, 21, 0, 22, + 23, 146, 0, 147, 0, 0, 0, 24, 148, 25, + 26, 0, 27, 149, 28, 0, 29, 150, 30, 31, + 32, 0, 0, 33, 34, 0, 35, 36, 0, 0, + 0, -138, 0, 0, 37, 38, 39, 0, 151, 0, + 0, 0, 40, -138, 0, -138, 0, -138, -138, 0, + -138, 0, -138, -138, 0, 214, 215, 216, -138, -138, + 0, 0, 0, 41, 42, -138, 0, 0, 0, 0, + 0, -138, 152, -138, -138, -138, -138, 227, 228, 229, + 230, 231, 44, 0, 0, 45, 0, 232, 0, 233, + 46, 47, 234, 0, 0, 48, 0, 49, 0, 50, + 0, 51, 0, 0, 0, 153, 1, 2, 3, 4, + 0, 5, 6, 7, 8, 9, 10, 11, 0, 0, + 0, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 0, 22, 23, 146, 0, 147, 0, 0, 0, 24, + 148, 25, 26, 0, 27, 149, 28, 0, 29, 150, + 30, 31, 32, 0, 0, 33, 34, 0, 35, 36, + 214, 215, 216, 0, 0, 0, 37, 38, 39, 0, + 151, 0, 0, 0, 40, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 229, 230, 231, 0, 0, 0, + 0, 0, 232, 0, 233, 41, 42, 234, 0, 0, + 0, 0, 0, 0, 152, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 44, 0, 0, 45, 0, 0, + 0, 0, 46, 47, 0, 0, 0, 48, 0, 49, + 0, 50, 0, 51, 0, 0, 0, 275, 1, 2, + 3, 4, 0, 5, 6, 7, 8, 9, 10, 11, + 0, 0, 0, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 0, 22, 23, 146, 0, 147, 0, 0, + 0, 24, 148, 25, 26, 0, 27, 149, 28, 0, + 29, 150, 30, 31, 32, 0, 0, 33, 34, 0, + 35, 36, 0, 0, 0, 0, 0, 0, 37, 38, + 39, 0, 151, 0, 0, 0, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 41, 42, 0, + 0, 0, 0, 0, 0, 0, 152, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 44, 0, 0, 45, + 0, 0, 0, 0, 46, 47, 0, 0, 0, 48, + 0, 49, 0, 50, 0, 51, 0, 0, 0, 446, + 1, 2, 3, 4, 0, 5, 6, 7, 8, 9, + 10, 11, 0, 0, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 0, 0, 22, 23, 0, 0, -338, + 0, 0, 0, 24, 0, 25, 26, 0, 27, 0, + 28, 0, 29, 0, 30, 31, 32, 0, 0, 33, + 34, 0, 35, 36, 0, 0, 0, 0, 0, 0, + 37, 38, 39, 0, 0, -338, -338, 0, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 41, 42, 0, 0, 0, 0, 0, 0, 0, 350, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, - 0, 0, 45, 0, 0, 0, 0, 46, 47, 0, - 0, 0, 48, 0, 351, 0, 50, 0, 51, 0, - 0, 0, -15, 1, 2, 3, 4, 0, 5, 6, - 7, 8, 9, 10, 11, 0, 0, 0, 13, 14, - 15, 16, 17, 18, 19, 20, 0, 0, 22, 23, - 0, 0, 0, 0, 0, 0, 24, 0, 25, 26, - 0, 27, 0, 28, 0, 29, 0, 30, 31, 32, - 0, 0, 33, 34, 0, 35, 36, 0, 0, 0, - 0, 0, 0, 37, 38, 39, 0, 0, 0, 0, - 0, 40, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 214, 215, 216, 0, 217, 218, 219, 0, 41, + 42, 0, 0, 0, 0, 0, 0, 0, 43, 0, + -338, -338, 0, 227, 228, 229, 230, 231, 44, 0, + 0, 45, 0, 232, 0, 233, 46, 47, 234, 0, + 0, 48, 0, 49, 0, 50, 0, 51, 0, 0, + 0, -3, 1, 2, 3, 4, 0, 5, 6, 7, + 8, 9, 10, 11, 0, 0, 0, 13, 14, 15, + 16, 17, 18, 19, 20, 0, 0, 22, 23, 0, + 0, 0, 0, 0, 0, 24, 0, 25, 26, 0, + 27, 0, 28, 0, 29, 0, 30, 31, 32, 0, + 0, 33, 34, 0, 35, 36, 0, 0, 0, 0, + 0, 0, 37, 38, 39, 0, 0, 0, 0, 0, + 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 41, 42, 0, 0, 0, 0, 0, 0, - 0, 350, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 44, 0, 0, 45, 0, 0, 0, 0, 46, - 47, 0, 0, 0, 48, 0, 351, 0, 50, 0, - 51, 0, 0, 0, -16, 1, 2, 3, 4, 0, - 5, 6, 7, 8, 9, 10, 11, 0, 0, 0, - 13, 14, 15, 16, 17, 18, 19, 20, 0, 0, - 22, 23, 0, 0, 0, 0, 0, 0, 24, 0, - 25, 26, 0, 27, 0, 28, 0, 29, 0, 30, - 31, 32, 0, 0, 33, 34, 0, 35, 36, 0, - 0, 0, 0, 0, 0, 37, 38, 39, 0, 0, - 0, 0, 0, 40, 0, 0, 0, 0, 0, 0, + 0, 41, 42, 0, 0, 0, 0, 0, 0, 0, + 352, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 44, 0, 0, 45, 0, 0, 0, 0, 46, 47, + 0, 0, 0, 48, 0, 353, 0, 50, 0, 51, + 0, 0, 0, -15, 1, 2, 3, 4, 0, 5, + 6, 7, 8, 9, 10, 11, 0, 0, 0, 13, + 14, 15, 16, 17, 18, 19, 20, 0, 0, 22, + 23, 0, 0, 0, 0, 0, 0, 24, 0, 25, + 26, 0, 27, 0, 28, 0, 29, 0, 30, 31, + 32, 0, 0, 33, 34, 0, 35, 36, 0, 0, + 0, 0, 0, 0, 37, 38, 39, 0, 0, 0, + 0, 0, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 41, 42, 0, 0, 0, 0, - 0, 0, 0, 550, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 44, 0, 0, 45, 0, 0, 0, - 0, 46, 47, 0, 0, 0, 48, 0, 49, 0, - 50, 0, 51, 0, 0, 0, -149, 1, 2, 3, - 4, 0, 5, 6, 7, 8, 9, 10, 11, 0, - 0, 0, 13, 14, 15, 16, 17, 18, 19, 20, - 0, 0, 22, 23, 0, 0, 0, 0, 0, 0, - 24, 0, 25, 26, 0, 27, 0, 28, 0, 29, - 0, 30, 31, 32, 0, 0, 33, 34, 0, 35, - 36, 0, 0, 0, 0, 0, 0, 37, 38, 39, - 0, 0, 0, 0, 0, 40, 0, 0, 0, 0, + 0, 0, 0, 41, 42, 0, 0, 0, 0, 0, + 0, 0, 352, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 44, 0, 0, 45, 0, 0, 0, 0, + 46, 47, 0, 0, 0, 48, 0, 353, 0, 50, + 0, 51, 0, 0, 0, -16, 1, 2, 3, 4, + 0, 5, 6, 7, 8, 9, 10, 11, 0, 0, + 0, 13, 14, 15, 16, 17, 18, 19, 20, 0, + 0, 22, 23, 0, 0, 0, 0, 0, 0, 24, + 0, 25, 26, 0, 27, 0, 28, 0, 29, 0, + 30, 31, 32, 0, 0, 33, 34, 0, 35, 36, + 0, 0, 0, 0, 0, 0, 37, 38, 39, 0, + 0, 0, 0, 0, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 41, 42, 0, 0, - 0, 0, 0, 0, 0, 550, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 44, 0, 0, 45, 0, - 0, 0, 0, 46, 47, 0, 0, 0, 48, 0, - 49, 0, 50, 0, 51, 0, -3, 0, -150, 1, - 2, 3, 4, 0, 5, 6, 7, 8, 9, 10, - 11, 0, 0, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 0, 0, 22, 23, 0, 0, 0, 0, - 0, 0, 24, 0, 25, 26, 0, 27, 0, 28, - 0, 29, 0, 30, 31, 32, 0, 0, 33, 34, - 0, 35, 36, 0, 0, 0, 0, 0, 0, 37, - 38, 39, 0, 0, 0, 0, 0, 40, 0, 0, + 0, 0, 0, 0, 0, 41, 42, 0, 0, 0, + 0, 0, 0, 0, 561, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 44, 0, 0, 45, 0, 0, + 0, 0, 46, 47, 0, 0, 0, 48, 0, 49, + 0, 50, 0, 51, 0, 0, 0, -149, 1, 2, + 3, 4, 0, 5, 6, 7, 8, 9, 10, 11, + 0, 0, 0, 13, 14, 15, 16, 17, 18, 19, + 20, 0, 0, 22, 23, 0, 0, 0, 0, 0, + 0, 24, 0, 25, 26, 0, 27, 0, 28, 0, + 29, 0, 30, 31, 32, 0, 0, 33, 34, 0, + 35, 36, 0, 0, 0, 0, 0, 0, 37, 38, + 39, 0, 0, 0, 0, 0, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 41, 42, - 0, 0, 0, 0, 0, 0, 0, 43, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 44, 0, 0, - 45, 0, 0, 0, 0, 46, 47, 0, 0, 0, - 48, 0, 49, 0, 50, 0, 51, 1, 2, 3, - 4, 0, 5, 6, 7, 8, 9, 10, 11, 0, - -125, 0, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 0, 22, 23, 145, 0, 146, 0, 0, 0, - 24, 147, 25, 26, 0, 27, 148, 28, 0, 29, - 149, 30, 31, 32, 0, 0, 33, 34, 0, 35, - 36, 0, 0, 0, 0, 0, 0, 37, 38, 39, - 0, 150, 0, 0, 0, 40, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 41, 42, 0, + 0, 0, 0, 0, 0, 0, 561, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 44, 0, 0, 45, + 0, 0, 0, 0, 46, 47, 0, 0, 0, 48, + 0, 49, 0, 50, 0, 51, 0, -3, 0, -150, + 1, 2, 3, 4, 0, 5, 6, 7, 8, 9, + 10, 11, 0, 0, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 0, 0, 22, 23, 0, 0, 0, + 0, 0, 0, 24, 0, 25, 26, 0, 27, 0, + 28, 0, 29, 0, 30, 31, 32, 0, 0, 33, + 34, 0, 35, 36, 0, 0, 0, 0, 0, 0, + 37, 38, 39, 0, 0, 0, 0, 0, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 41, 42, 0, 0, - 0, 0, 0, 0, 0, 151, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 44, 0, 0, 45, 0, - 0, 0, 0, 46, 47, 0, 0, 0, 48, 0, - 49, 0, 50, 0, 51, 1, 2, 3, 4, 0, - 5, 6, 7, 8, 9, 10, 11, 0, 0, 0, - 13, 14, 15, 16, 17, 18, 19, 20, 21, 0, - 22, 23, 145, 0, 146, 0, 0, 0, 24, 147, - 25, 26, 0, 27, 148, 28, 0, 29, 149, 30, - 31, 32, 0, 0, 33, 34, 0, 35, 36, 0, - 0, 0, 0, 0, 0, 37, 38, 39, 0, 150, - 0, 0, 0, 40, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 41, 42, 0, 0, 0, 0, - 0, 0, 0, 151, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 44, 0, 0, 45, 0, 0, 0, - 0, 46, 47, 0, 0, 0, 48, 0, 49, 0, - 50, 167, 51, 3, 4, 0, 5, 6, 7, 0, - 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, - 0, 0, 19, 0, 21, 0, 22, 23, 0, 0, - 146, 0, 0, 0, 24, 0, 0, 0, 0, 0, - 0, 28, 0, 29, 168, 0, 0, 0, 0, 0, - 0, 34, 0, 35, 36, 0, 0, 0, 0, 0, - 0, 0, 38, 0, 0, 0, 0, 0, 0, 40, - 0, 0, 0, 109, 0, 3, 4, 0, 5, 6, - 7, 0, 0, 0, 0, 0, 0, 0, 0, 14, - 41, 42, 0, 0, 19, 0, 21, 0, 22, 23, - 0, 0, 0, 0, 0, 0, 24, 0, 0, 44, - 0, 0, 45, 28, 0, 29, 0, 46, 47, 0, - 0, 0, 48, 34, 49, 35, 36, 0, 51, 0, - 109, 0, 3, 4, 38, 5, 6, 7, 0, 0, - 0, 40, 0, 0, 0, 0, 14, 0, 0, 0, - 0, 19, 0, 21, 0, 22, 23, 0, 0, 0, - 0, 0, 41, 42, 0, 0, 0, 0, 0, 0, - 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, - 34, 44, 35, 36, 45, 0, 0, 0, 0, 46, - 47, 0, 0, 0, 48, 0, 49, 0, 40, 0, - 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, - 42, 0, 0, 0, 0, 0, 189, 0, 0, 0, + 42, 0, 0, 0, 0, 0, 0, 0, 43, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 44, 0, + 0, 45, 0, 0, 0, 0, 46, 47, 0, 0, + 0, 48, 0, 49, 0, 50, 0, 51, 1, 2, + 3, 4, 0, 5, 6, 7, 8, 9, 10, 11, + 0, -125, 0, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 0, 22, 23, 146, 0, 147, 0, 0, + 0, 24, 148, 25, 26, 0, 27, 149, 28, 0, + 29, 150, 30, 31, 32, 0, 0, 33, 34, 0, + 35, 36, 0, 0, 0, 0, 0, 0, 37, 38, + 39, 0, 151, 0, 0, 0, 40, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 41, 42, 0, + 0, 0, 0, 0, 0, 0, 152, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 44, 0, 0, 45, + 0, 0, 0, 0, 46, 47, 0, 0, 0, 48, + 0, 49, 0, 50, 0, 51, 1, 2, 3, 4, + 0, 5, 6, 7, 8, 9, 10, 11, 0, 0, + 0, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 0, 22, 23, 146, 0, 147, 0, 0, 0, 24, + 148, 25, 26, 0, 27, 149, 28, 0, 29, 150, + 30, 31, 32, 0, 0, 33, 34, 0, 35, 36, + 0, 0, 0, 0, 0, 0, 37, 38, 39, 0, + 151, 0, 0, 0, 40, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 109, 110, 3, 4, + 0, 5, 6, 7, 0, 41, 42, 0, 0, 0, + 0, 0, 14, 0, 152, 0, 0, 19, 0, 21, + 0, 22, 23, 0, 44, 0, 0, 45, 0, 24, + 0, 0, 46, 47, 0, 0, 28, 48, 29, 49, + 0, 50, 0, 51, 0, 0, 34, 0, 35, 36, + 0, 0, 0, 109, 110, 3, 4, 38, 5, 6, + 7, 0, 0, 0, 40, 0, 0, 0, 0, 14, + 0, 0, 0, 0, 19, 0, 21, 0, 22, 23, + 0, 0, 0, 0, 0, 41, 42, 0, 0, 0, + 0, 0, 0, 0, 0, 29, 0, 0, 0, 0, + 0, 0, 0, 34, 44, 35, 36, 45, 0, 0, + 0, 0, 46, 47, 0, 0, 0, 48, 0, 49, + 0, 40, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 41, 42, 0, 0, 0, 0, 0, 191, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 48, 0, 49, 190, 191, 192, 51, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 0, 212, 213, - 214, 0, 215, 216, 217, 0, 0, 0, 0, 0, - 218, 219, 0, 220, 221, 222, 189, 223, 224, 0, - 225, 226, 227, 228, 229, 0, 0, 0, 0, 0, - 230, 0, 231, 0, 0, 232, 0, 0, 0, 0, - 0, 418, 0, 0, 190, 191, 192, 0, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 0, 212, 213, - 214, 0, 215, 216, 217, 0, 0, 0, 0, 0, - 218, 219, 0, 220, 221, 222, 189, 223, 224, 0, - 225, 226, 227, 228, 229, 0, 0, 0, 0, 0, - 230, 0, 231, 0, 0, 232, 0, 0, 0, 0, - 0, 507, 0, 0, 190, 191, 192, 0, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 0, 212, 213, - 214, 0, 215, 216, 217, 0, 0, 0, 189, 0, - 218, 219, 408, 220, 221, 222, 0, 223, 224, 0, - 225, 226, 227, 228, 229, 0, 0, 0, 0, 0, - 230, 0, 231, 0, 0, 232, 190, 191, 192, 0, - 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, - 203, 204, 205, 206, 207, 208, 209, 210, 211, 0, - 212, 213, 214, 0, 215, 216, 217, 0, 0, 0, - 189, 0, 218, 219, 0, 220, 221, 222, 0, 223, - 224, 0, 225, 226, 227, 228, 229, 0, 0, 0, - 0, 0, 230, 0, 231, 410, 0, 232, 190, 191, - 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 0, 212, 213, 214, 0, 215, 216, 217, 0, - 0, 0, 189, 0, 218, 219, 0, 220, 221, 222, - 0, 223, 224, 0, 225, 226, 227, 228, 229, 0, - 0, 0, 0, 0, 230, 0, 231, 465, 0, 232, - 190, 191, 192, 0, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 0, 212, 213, 214, 0, 215, 216, - 217, 0, 0, 0, 189, 0, 218, 219, 0, 220, - 221, 222, 0, 223, 224, 0, 225, 226, 227, 228, - 229, 0, 0, 0, 0, 0, 230, 0, 231, 506, - 0, 232, 190, 191, 192, 0, 193, 194, 195, 196, - 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 211, 0, 212, 213, 214, 0, - 215, 216, 217, 0, 0, 0, 189, 0, 218, 219, - 0, 220, 221, 222, 0, 223, 224, 0, 225, 226, - 227, 228, 229, 0, 0, 0, 0, 0, 230, 0, - 231, 508, 0, 232, 190, 191, 192, 0, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 0, 212, 213, - 214, 0, 215, 216, 217, 0, 0, 0, 189, 0, - 218, 219, 0, 220, 221, 222, 0, 223, 224, 0, - 225, 226, 227, 228, 229, 0, 0, 0, 0, 0, - 230, 0, 231, 515, 0, 232, 190, 191, 192, 0, - 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, - 203, 204, 205, 206, 207, 208, 209, 210, 211, 0, - 212, 213, 214, 0, 215, 216, 217, 0, 0, 0, - 189, 0, 218, 219, 567, 220, 221, 222, 0, 223, - 224, 0, 225, 226, 227, 228, 229, 0, 0, 0, - 0, 0, 230, 0, 231, 0, 0, 232, 190, 191, - 192, 0, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 0, 212, 213, 214, 0, 215, 216, 217, 0, - 0, 0, 189, 0, 218, 219, 0, 220, 221, 222, - 0, 223, 224, 0, 225, 226, 227, 228, 229, 0, - 0, 0, 0, 0, 230, 0, 231, 0, 0, 232, - 190, 191, 192, 0, 193, 194, 195, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, - 209, 210, 211, 0, 212, 213, 214, 0, 215, 216, - 217, 0, 0, 0, 189, 0, 218, 219, 0, 220, - 221, 222, 0, 0, 224, 0, 225, 226, 227, 228, - 229, 0, 0, 0, 0, 0, 230, 0, 231, 0, - 0, 232, 190, 191, 192, 0, 193, 194, 195, 196, - 197, 198, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 212, 213, 214, 0, - 215, 216, 217, 0, 0, 0, 189, 0, 0, 0, - 0, 220, 221, 222, 0, 223, 224, 0, 225, 226, - 227, 228, 229, 0, 0, 0, 0, 0, 230, 0, - 231, 0, 0, 232, 190, 191, 192, 0, 193, 194, - 195, 196, 197, 198, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 212, 213, - 214, 0, 215, 216, 217, 0, 0, 0, 189, 0, - 0, 0, 0, 0, 221, 222, 0, 223, 224, 0, - 225, 226, 227, 228, 229, 0, 0, 0, 0, 0, - 230, 0, 231, 0, 0, 232, 190, 191, 192, 0, - 193, 194, 195, 196, 197, 198, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 212, 213, 214, 0, 215, 216, 217, 0, 0, 0, - 189, 0, 0, 0, 0, 0, 0, 222, 0, 223, - 224, 0, 225, 226, 227, 228, 229, 0, 0, 0, - 0, 0, 230, 0, 231, 0, 0, 232, 190, 191, - 192, 0, 193, 194, 195, 196, 197, 198, 0, 0, + 0, 0, 0, 0, 48, 0, 49, 192, 193, 194, + 51, 195, 196, 197, 198, 199, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + 0, 214, 215, 216, 0, 217, 218, 219, 0, 0, + 0, 0, 0, 220, 221, 0, 222, 223, 224, 191, + 225, 226, 0, 227, 228, 229, 230, 231, 0, 0, + 0, 0, 0, 232, 0, 233, 0, 0, 234, 0, + 0, 0, 0, 0, 423, 0, 0, 192, 193, 194, + 0, 195, 196, 197, 198, 199, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + 0, 214, 215, 216, 0, 217, 218, 219, 0, 0, + 0, 0, 0, 220, 221, 0, 222, 223, 224, 191, + 225, 226, 0, 227, 228, 229, 230, 231, 0, 0, + 0, 0, 0, 232, 0, 233, 0, 0, 234, 0, + 0, 0, 0, 0, 517, 0, 0, 192, 193, 194, + 0, 195, 196, 197, 198, 199, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + 0, 214, 215, 216, 0, 217, 218, 219, 0, 0, + 0, 191, 0, 220, 221, 412, 222, 223, 224, 0, + 225, 226, 0, 227, 228, 229, 230, 231, 0, 0, + 0, 0, 0, 232, 0, 233, 0, 0, 234, 192, + 193, 194, 0, 195, 196, 197, 198, 199, 200, 201, + 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, + 212, 213, 0, 214, 215, 216, 0, 217, 218, 219, + 0, 0, 0, 191, 0, 220, 221, 0, 222, 223, + 224, 0, 225, 226, 0, 227, 228, 229, 230, 231, + 0, 0, 0, 0, 0, 232, 0, 233, 414, 0, + 234, 192, 193, 194, 0, 195, 196, 197, 198, 199, + 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, + 210, 211, 212, 213, 0, 214, 215, 216, 0, 217, + 218, 219, 0, 0, 0, 191, 0, 220, 221, 0, + 222, 223, 224, 0, 225, 226, 0, 227, 228, 229, + 230, 231, 0, 0, 0, 0, 0, 232, 0, 233, + 473, 0, 234, 192, 193, 194, 0, 195, 196, 197, + 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 0, 0, 0, 191, 0, 220, + 221, 0, 222, 223, 224, 0, 225, 226, 0, 227, + 228, 229, 230, 231, 0, 0, 0, 0, 0, 232, + 0, 233, 515, 0, 234, 192, 193, 194, 0, 195, + 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, 0, 214, + 215, 216, 0, 217, 218, 219, 0, 0, 0, 191, + 0, 220, 221, 0, 222, 223, 224, 0, 225, 226, + 0, 227, 228, 229, 230, 231, 0, 0, 0, 0, + 0, 232, 0, 233, 518, 0, 234, 192, 193, 194, + 0, 195, 196, 197, 198, 199, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + 0, 214, 215, 216, 0, 217, 218, 219, 0, 0, + 0, 191, 0, 220, 221, 0, 222, 223, 224, 0, + 225, 226, 0, 227, 228, 229, 230, 231, 0, 0, + 0, 0, 0, 232, 0, 233, 526, 0, 234, 192, + 193, 194, 0, 195, 196, 197, 198, 199, 200, 201, + 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, + 212, 213, 0, 214, 215, 216, 0, 217, 218, 219, + 0, 0, 0, 191, 0, 220, 221, 578, 222, 223, + 224, 0, 225, 226, 0, 227, 228, 229, 230, 231, + 0, 0, 0, 0, 0, 232, 0, 233, 0, 0, + 234, 192, 193, 194, 0, 195, 196, 197, 198, 199, + 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, + 210, 211, 212, 213, 0, 214, 215, 216, 0, 217, + 218, 219, 0, 0, 0, 191, 0, 220, 221, 0, + 222, 223, 224, 0, 225, 226, 0, 227, 228, 229, + 230, 231, 0, 0, 0, 0, 0, 232, 0, 233, + 0, 0, 234, 192, 193, 194, 0, 195, 196, 197, + 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 0, 0, 0, 191, 0, 220, + 221, 0, 222, 223, 224, 0, 0, 226, 0, 227, + 228, 229, 230, 231, 0, 0, 0, 0, 0, 232, + 0, 233, 0, 0, 234, 192, 193, 194, 0, 195, + 196, 197, 198, 199, 200, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 213, 0, 214, + 215, 216, 0, 217, 218, 219, 0, 0, 0, 191, + 0, 0, 0, 0, 222, 223, 224, 0, 225, 226, + 0, 227, 228, 229, 230, 231, 0, 0, 0, 0, + 0, 232, 0, 233, 0, 0, 234, 192, 193, 194, + 0, 195, 196, 197, 198, 199, 200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 212, 213, 214, 0, 215, 216, 217, 0, - 0, 0, 189, 0, 0, 0, 0, 0, 0, -338, - 0, 223, 224, 0, 225, 226, 227, 228, 229, 0, - 0, 0, 0, 0, 230, 0, 231, 0, 0, 232, - 190, 191, 192, 0, -338, -338, -338, -338, 197, 198, + 0, 214, 215, 216, 0, 217, 218, 219, 0, 0, + 0, 191, 0, 0, 0, 0, 222, 223, 224, 0, + 225, 226, 0, 227, 228, 229, 230, 231, 0, 0, + 0, 0, 0, 232, 0, 233, 0, 0, 234, 192, + 193, 194, 0, 195, 196, 197, 198, 199, 200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 212, 213, 214, 0, 215, 216, - 217, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 223, 224, 0, 225, 226, 227, 228, - 229, 0, 0, 0, 0, 0, 230, 0, 231, 0, - 0, 232 + 0, 0, 0, 214, 215, 216, 0, 217, 218, 219, + 0, 0, 0, 191, 0, 0, 0, 0, 0, 223, + 224, 0, 225, 226, 0, 227, 228, 229, 230, 231, + 0, 0, 0, 0, 0, 232, 0, 233, 0, 0, + 234, 192, 193, 194, 0, 195, 196, 197, 198, 199, + 200, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 214, 215, 216, 0, 217, + 218, 219, 0, 0, 0, 191, 0, 0, 0, 0, + 0, 0, 224, 0, 225, 226, 0, 227, 228, 229, + 230, 231, 0, 0, 0, 0, 0, 232, 0, 233, + 0, 0, 234, 192, 193, 194, 0, 195, 196, 197, + 198, 199, 200, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 214, 215, 216, + 0, 217, 218, 219, 0, 0, 0, 191, 0, 0, + 0, 0, 0, 0, -338, 0, 225, 226, 0, 227, + 228, 229, 230, 231, 0, 0, 0, 0, 0, 232, + 0, 233, 0, 0, 234, 192, 193, 194, 0, -338, + -338, -338, -338, 199, 200, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 214, + 215, 216, 0, 217, 218, 219, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 225, 226, + 0, 227, 228, 229, 230, 231, 0, 0, 0, 0, + 0, 232, 0, 233, 0, 0, 234 }; static const yytype_int16 yycheck[] = { - 0, 0, 0, 0, 0, 108, 60, 19, 277, 67, - 142, 120, 24, 50, 3, 187, 28, 232, 446, 5, - 5, 361, 50, 3, 3, 3, 38, 541, 367, 41, - 42, 545, 546, 45, 46, 47, 48, 49, 461, 69, - 98, 92, 93, 94, 94, 128, 129, 535, 5, 12, - 102, 5, 505, 567, 54, 54, 54, 54, 54, 114, - 0, 102, 34, 112, 27, 0, 27, 116, 0, 124, - 584, 12, 33, 124, 104, 126, 126, 565, 129, 129, - 594, 504, 422, 135, 96, 538, 27, 3, 4, 35, - 62, 430, 147, 148, 135, 153, 124, 3, 4, 563, - 16, 17, 114, 91, 319, 51, 347, 3, 120, 5, - 16, 17, 124, 29, 54, 579, 95, 95, 124, 54, - 292, 230, 54, 29, 16, 3, 258, 396, 16, 344, - 142, 3, 4, 3, 4, 147, 148, 378, 477, 128, - 124, 124, 128, 128, 16, 17, 16, 17, 128, 3, - 4, 124, 128, 124, 111, 112, 129, 29, 112, 29, - 429, 3, 16, 17, 592, 0, 166, 166, 166, 166, - 166, 128, 128, 185, 128, 29, 188, 189, 190, 191, + 0, 0, 0, 0, 0, 12, 108, 19, 60, 279, + 67, 121, 24, 143, 50, 349, 28, 3, 3, 189, + 27, 451, 5, 5, 5, 50, 38, 369, 3, 41, + 42, 3, 363, 45, 46, 47, 48, 49, 115, 3, + 4, 98, 5, 234, 466, 234, 380, 102, 125, 546, + 69, 12, 16, 17, 54, 54, 54, 54, 54, 514, + 94, 0, 35, 0, 91, 29, 27, 0, 92, 93, + 94, 148, 149, 102, 574, 27, 124, 124, 51, 576, + 135, 33, 552, 34, 96, 104, 556, 557, 16, 16, + 590, 513, 126, 435, 549, 129, 427, 154, 26, 124, + 124, 108, 126, 115, 32, 129, 135, 124, 578, 121, + 3, 62, 129, 125, 448, 54, 124, 54, 46, 128, + 95, 54, 232, 95, 294, 595, 3, 4, 398, 112, + 260, 143, 323, 16, 323, 605, 148, 149, 3, 16, + 17, 0, 128, 128, 486, 128, 128, 128, 111, 112, + 112, 128, 29, 117, 116, 346, 3, 346, 5, 124, + 494, 8, 9, 10, 434, 128, 130, 167, 167, 167, + 167, 167, 104, 603, 106, 187, 102, 3, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 415, 117, 443, 215, 216, 217, 218, 219, 220, 221, + 212, 213, 536, 280, 281, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 102, 3, 128, 278, 279, 124, 166, 239, 400, 401, - 104, 166, 106, 12, 166, 124, 3, 4, 275, 129, - 240, 240, 240, 255, 485, 117, 258, 117, 260, 16, - 17, 214, 124, 129, 126, 364, 3, 526, 130, 104, - 130, 134, 29, 117, 102, 106, 278, 279, 127, 232, - 102, 3, 126, 3, 4, 3, 3, 128, 547, 242, - 16, 4, 16, 69, 525, 3, 16, 17, 251, 392, - 26, 394, 101, 348, 69, 18, 32, 20, 21, 29, - 23, 433, 25, 101, 16, 3, 36, 3, 3, 135, - 46, 102, 124, 129, 26, 38, 129, 375, 124, 31, - 32, 135, 106, 46, 47, 48, 49, 385, 135, 598, - 4, 343, 44, 135, 46, 3, 348, 5, 102, 351, - 8, 9, 10, 104, 18, 448, 20, 21, 3, 23, - 117, 25, 364, 353, 353, 353, 319, 3, 4, 126, - 134, 361, 361, 361, 38, 54, 3, 4, 54, 3, - 16, 17, 46, 47, 48, 49, 3, 4, 101, 16, - 17, 344, 104, 29, 104, 135, 91, 117, 442, 16, - 17, 494, 29, 134, 406, 128, 408, 91, 91, 411, - 363, 413, 29, 91, 3, 40, 127, 419, 15, 135, - 102, 134, 129, 425, 124, 134, 106, 104, 101, 135, - 128, 433, 422, 422, 422, 102, 438, 101, 134, 128, - 66, 135, 134, 68, 69, 70, 102, 72, 73, 74, - 75, 76, 77, 128, 135, 112, 104, 128, 40, 128, - 134, 124, 415, 135, 116, 90, 106, 92, 93, 94, - 134, 96, 97, 98, 111, 134, 3, 3, 26, 134, - 134, 117, 107, 108, 109, 116, 111, 112, 134, 114, - 115, 116, 117, 118, 76, 77, 128, 135, 128, 124, - 502, 126, 3, 112, 129, 495, 134, 509, 112, 124, - 92, 93, 94, 134, 96, 97, 98, 128, 134, 166, - 134, 54, 135, 353, 134, 98, 92, 93, 94, 111, - 112, 60, 114, 115, 116, 117, 118, 527, 527, 527, - 527, 527, 124, 533, 126, 453, 146, 129, 114, 115, - 116, 117, 118, 512, 512, 384, 483, 483, 124, 72, - 126, 573, 555, 129, 454, 555, 555, 555, 555, 555, - 475, 292, 27, 533, 448, 560, 426, 48, -1, -1, - -1, -1, -1, 573, 573, 573, 573, 573, 0, 259, - -1, 3, 4, 5, 6, -1, 8, 9, 10, 11, - 12, 13, 14, -1, -1, 17, 18, 19, 20, 21, - 22, 23, 24, 25, -1, -1, 28, 29, -1, -1, - 40, -1, -1, -1, 36, -1, 38, 39, -1, 41, - -1, 43, -1, 45, -1, 47, 48, 49, -1, -1, - 52, 53, -1, 55, 56, -1, -1, -1, 68, 69, - 70, 63, 64, 65, -1, -1, 76, 77, -1, 71, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 92, 93, 94, -1, 96, 97, 98, -1, - 92, 93, -1, -1, -1, -1, -1, -1, -1, 101, - -1, 111, 112, -1, 114, 115, 116, 117, 118, 111, - -1, -1, 114, -1, 124, -1, 126, 119, 120, 129, - -1, -1, 124, -1, 126, -1, 128, -1, 130, -1, - -1, -1, 134, 3, 4, 5, 6, -1, 8, 9, - 10, 11, 12, 13, 14, -1, -1, -1, 18, 19, - 20, 21, 22, 23, 24, 25, 26, -1, 28, 29, - 30, -1, 32, -1, -1, -1, 36, 37, 38, 39, - -1, 41, 42, 43, -1, 45, 46, 47, 48, 49, - -1, -1, 52, 53, -1, 55, 56, -1, -1, -1, - 4, -1, -1, 63, 64, 65, -1, 67, -1, -1, - -1, 71, -1, -1, 18, -1, 20, 21, -1, 23, - -1, 25, -1, -1, 92, 93, 94, -1, -1, -1, - -1, -1, 92, 93, 38, -1, -1, -1, -1, -1, - -1, 101, -1, 47, 48, 49, -1, -1, 116, 117, - 118, 111, -1, -1, 114, -1, 124, -1, 126, 119, - 120, 129, -1, -1, 124, -1, 126, -1, 128, -1, - 130, -1, -1, -1, 134, 3, 4, 5, 6, -1, - 8, 9, 10, 11, 12, 13, 14, -1, -1, -1, - 18, 19, 20, 21, 22, 23, 24, 25, 26, -1, - 28, 29, 30, -1, 32, -1, -1, -1, 36, 37, - 38, 39, -1, 41, 42, 43, -1, 45, 46, 47, - 48, 49, -1, -1, 52, 53, -1, 55, 56, -1, - -1, -1, -1, -1, -1, 63, 64, 65, -1, 67, - -1, -1, -1, 71, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 92, 93, -1, -1, -1, -1, - -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 111, -1, -1, 114, -1, -1, -1, - -1, 119, 120, -1, -1, -1, 124, -1, 126, -1, - 128, -1, 130, -1, -1, -1, 134, 3, 4, 5, - 6, -1, 8, 9, 10, 11, 12, 13, 14, -1, - -1, -1, 18, 19, 20, 21, 22, 23, 24, 25, - 26, -1, 28, 29, 30, -1, 32, -1, -1, -1, - 36, 37, 38, 39, -1, 41, 42, 43, -1, 45, - 46, 47, 48, 49, -1, -1, 52, 53, -1, 55, - 56, -1, -1, -1, -1, -1, -1, 63, 64, 65, - -1, 67, -1, -1, -1, 71, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 92, 93, -1, -1, - -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 111, -1, -1, 114, -1, - -1, -1, -1, 119, 120, -1, -1, -1, 124, -1, - 126, -1, 128, -1, 130, -1, -1, -1, 134, 3, - 4, 5, 6, -1, 8, 9, 10, 11, 12, 13, - 14, -1, -1, 17, 18, 19, 20, 21, 22, 23, - 24, 25, -1, -1, 28, 29, -1, -1, -1, -1, - -1, -1, 36, -1, 38, 39, -1, 41, -1, 43, - -1, 45, -1, 47, 48, 49, -1, -1, 52, 53, - -1, 55, 56, -1, -1, -1, -1, -1, -1, 63, - 64, 65, -1, -1, -1, -1, -1, 71, -1, -1, + 232, 233, 411, 3, 124, 5, 128, 129, 167, 241, + 167, 420, 402, 403, 167, 12, 124, 244, 4, 129, + 117, 277, 242, 242, 242, 257, 253, 124, 260, 126, + 262, 129, 18, 130, 20, 21, 366, 23, 3, 25, + 104, 3, 4, 134, 106, 102, 127, 537, 280, 281, + 102, 3, 38, 350, 16, 17, 3, 4, 3, 468, + 46, 47, 48, 49, 4, 3, 475, 29, 558, 16, + 17, 69, 394, 128, 396, 16, 3, 4, 18, 3, + 20, 21, 29, 23, 101, 25, 69, 101, 438, 16, + 17, 3, 4, 3, 3, 3, 135, 102, 38, 124, + 377, 129, 29, 129, 16, 17, 46, 47, 48, 49, + 387, 124, 135, 345, 135, 101, 135, 29, 350, 609, + 102, 353, 106, 134, 36, 104, 3, 3, 4, 54, + 3, 453, 54, 104, 366, 355, 355, 355, 365, 135, + 16, 17, 91, 363, 363, 363, 3, 4, 134, 104, + 127, 3, 4, 29, 91, 91, 91, 384, 16, 16, + 17, 101, 91, 3, 16, 17, 128, 394, 26, 396, + 117, 134, 29, 31, 32, 447, 408, 29, 128, 126, + 412, 503, 135, 415, 102, 417, 44, 129, 46, 106, + 117, 134, 424, 104, 134, 101, 135, 15, 430, 126, + 128, 3, 4, 124, 431, 117, 438, 427, 427, 427, + 102, 443, 91, 91, 16, 17, 135, 3, 4, 5, + 6, 134, 8, 9, 10, 128, 453, 29, 135, 134, + 66, 128, 102, 19, 134, 104, 124, 4, 24, 128, + 26, 117, 28, 29, 112, 128, 32, 111, 135, 116, + 36, 18, 106, 20, 21, 3, 23, 43, 25, 45, + 46, 3, 134, 26, 135, 117, 116, 53, 134, 55, + 56, 38, 128, 128, 134, 134, 503, 3, 64, 511, + 47, 48, 49, 134, 504, 71, 134, 112, 520, 134, + 124, 112, 134, 128, 135, 134, 54, 355, 98, 60, + 458, 147, 167, 386, 492, 492, 92, 93, 523, 523, + 72, 584, 571, 566, 544, 459, 484, 27, 538, 538, + 538, 538, 538, 453, 544, 111, 294, 431, 114, 48, + 261, -1, -1, 119, 120, -1, -1, -1, 124, -1, + 126, -1, -1, -1, 130, -1, 566, 566, 566, 566, + 566, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 584, 584, 584, 584, 584, 0, + -1, -1, 3, 4, 5, 6, -1, 8, 9, 10, + 11, 12, 13, 14, -1, -1, 17, 18, 19, 20, + 21, 22, 23, 24, 25, -1, -1, 28, 29, -1, + -1, 40, -1, -1, -1, 36, -1, 38, 39, -1, + 41, -1, 43, -1, 45, -1, 47, 48, 49, -1, + -1, 52, 53, -1, 55, 56, -1, -1, -1, 68, + 69, 70, 63, 64, 65, -1, -1, 76, 77, -1, + 71, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 92, 93, 94, -1, 96, 97, 98, + -1, 92, 93, -1, -1, -1, -1, -1, -1, -1, + 101, -1, 111, 112, -1, 114, 115, 116, 117, 118, + 111, -1, -1, 114, -1, 124, -1, 126, 119, 120, + 129, -1, -1, 124, -1, 126, -1, 128, -1, 130, + -1, -1, -1, 134, 3, 4, 5, 6, -1, 8, + 9, 10, 11, 12, 13, 14, -1, -1, -1, 18, + 19, 20, 21, 22, 23, 24, 25, 26, -1, 28, + 29, 30, -1, 32, -1, -1, -1, 36, 37, 38, + 39, -1, 41, 42, 43, -1, 45, 46, 47, 48, + 49, -1, -1, 52, 53, -1, 55, 56, -1, -1, + -1, 4, -1, -1, 63, 64, 65, -1, 67, -1, + -1, -1, 71, 16, -1, 18, -1, 20, 21, -1, + 23, -1, 25, 26, -1, 92, 93, 94, 31, 32, + -1, -1, -1, 92, 93, 38, -1, -1, -1, -1, + -1, 44, 101, 46, 47, 48, 49, 114, 115, 116, + 117, 118, 111, -1, -1, 114, -1, 124, -1, 126, + 119, 120, 129, -1, -1, 124, -1, 126, -1, 128, + -1, 130, -1, -1, -1, 134, 3, 4, 5, 6, + -1, 8, 9, 10, 11, 12, 13, 14, -1, -1, + -1, 18, 19, 20, 21, 22, 23, 24, 25, 26, + -1, 28, 29, 30, -1, 32, -1, -1, -1, 36, + 37, 38, 39, -1, 41, 42, 43, -1, 45, 46, + 47, 48, 49, -1, -1, 52, 53, -1, 55, 56, + 92, 93, 94, -1, -1, -1, 63, 64, 65, -1, + 67, -1, -1, -1, 71, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 116, 117, 118, -1, -1, -1, + -1, -1, 124, -1, 126, 92, 93, 129, -1, -1, + -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 111, -1, -1, 114, -1, -1, + -1, -1, 119, 120, -1, -1, -1, 124, -1, 126, + -1, 128, -1, 130, -1, -1, -1, 134, 3, 4, + 5, 6, -1, 8, 9, 10, 11, 12, 13, 14, + -1, -1, -1, 18, 19, 20, 21, 22, 23, 24, + 25, 26, -1, 28, 29, 30, -1, 32, -1, -1, + -1, 36, 37, 38, 39, -1, 41, 42, 43, -1, + 45, 46, 47, 48, 49, -1, -1, 52, 53, -1, + 55, 56, -1, -1, -1, -1, -1, -1, 63, 64, + 65, -1, 67, -1, -1, -1, 71, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 92, 93, - -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 111, -1, -1, - 114, -1, -1, -1, -1, 119, 120, -1, -1, -1, - 124, -1, 126, -1, 128, -1, 130, -1, -1, -1, - 134, 3, 4, 5, 6, -1, 8, 9, 10, 11, - 12, 13, 14, -1, -1, -1, 18, 19, 20, 21, - 22, 23, 24, 25, -1, -1, 28, 29, -1, -1, - -1, -1, -1, -1, 36, -1, 38, 39, -1, 41, - -1, 43, -1, 45, -1, 47, 48, 49, -1, -1, - 52, 53, -1, 55, 56, -1, -1, -1, -1, -1, - -1, 63, 64, 65, -1, -1, -1, -1, -1, 71, + -1, -1, -1, -1, -1, -1, -1, 92, 93, -1, + -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 111, -1, -1, 114, + -1, -1, -1, -1, 119, 120, -1, -1, -1, 124, + -1, 126, -1, 128, -1, 130, -1, -1, -1, 134, + 3, 4, 5, 6, -1, 8, 9, 10, 11, 12, + 13, 14, -1, -1, 17, 18, 19, 20, 21, 22, + 23, 24, 25, -1, -1, 28, 29, -1, -1, 40, + -1, -1, -1, 36, -1, 38, 39, -1, 41, -1, + 43, -1, 45, -1, 47, 48, 49, -1, -1, 52, + 53, -1, 55, 56, -1, -1, -1, -1, -1, -1, + 63, 64, 65, -1, -1, 76, 77, -1, 71, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 92, 93, 94, -1, 96, 97, 98, -1, 92, + 93, -1, -1, -1, -1, -1, -1, -1, 101, -1, + 111, 112, -1, 114, 115, 116, 117, 118, 111, -1, + -1, 114, -1, 124, -1, 126, 119, 120, 129, -1, + -1, 124, -1, 126, -1, 128, -1, 130, -1, -1, + -1, 134, 3, 4, 5, 6, -1, 8, 9, 10, + 11, 12, 13, 14, -1, -1, -1, 18, 19, 20, + 21, 22, 23, 24, 25, -1, -1, 28, 29, -1, + -1, -1, -1, -1, -1, 36, -1, 38, 39, -1, + 41, -1, 43, -1, 45, -1, 47, 48, 49, -1, + -1, 52, 53, -1, 55, 56, -1, -1, -1, -1, + -1, -1, 63, 64, 65, -1, -1, -1, -1, -1, + 71, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 92, 93, -1, -1, -1, -1, -1, -1, -1, 101, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 111, - -1, -1, 114, -1, -1, -1, -1, 119, 120, -1, - -1, -1, 124, -1, 126, -1, 128, -1, 130, -1, - -1, -1, 134, 3, 4, 5, 6, -1, 8, 9, - 10, 11, 12, 13, 14, -1, -1, -1, 18, 19, - 20, 21, 22, 23, 24, 25, -1, -1, 28, 29, - -1, -1, -1, -1, -1, -1, 36, -1, 38, 39, - -1, 41, -1, 43, -1, 45, -1, 47, 48, 49, - -1, -1, 52, 53, -1, 55, 56, -1, -1, -1, - -1, -1, -1, 63, 64, 65, -1, -1, -1, -1, - -1, 71, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 92, 93, -1, -1, -1, -1, -1, -1, -1, + 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 111, -1, -1, 114, -1, -1, -1, -1, 119, 120, + -1, -1, -1, 124, -1, 126, -1, 128, -1, 130, + -1, -1, -1, 134, 3, 4, 5, 6, -1, 8, + 9, 10, 11, 12, 13, 14, -1, -1, -1, 18, + 19, 20, 21, 22, 23, 24, 25, -1, -1, 28, + 29, -1, -1, -1, -1, -1, -1, 36, -1, 38, + 39, -1, 41, -1, 43, -1, 45, -1, 47, 48, + 49, -1, -1, 52, 53, -1, 55, 56, -1, -1, + -1, -1, -1, -1, 63, 64, 65, -1, -1, -1, + -1, -1, 71, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 92, 93, -1, -1, -1, -1, -1, -1, - -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 111, -1, -1, 114, -1, -1, -1, -1, 119, - 120, -1, -1, -1, 124, -1, 126, -1, 128, -1, - 130, -1, -1, -1, 134, 3, 4, 5, 6, -1, - 8, 9, 10, 11, 12, 13, 14, -1, -1, -1, - 18, 19, 20, 21, 22, 23, 24, 25, -1, -1, - 28, 29, -1, -1, -1, -1, -1, -1, 36, -1, - 38, 39, -1, 41, -1, 43, -1, 45, -1, 47, - 48, 49, -1, -1, 52, 53, -1, 55, 56, -1, - -1, -1, -1, -1, -1, 63, 64, 65, -1, -1, - -1, -1, -1, 71, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 92, 93, -1, -1, -1, -1, -1, + -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 111, -1, -1, 114, -1, -1, -1, -1, + 119, 120, -1, -1, -1, 124, -1, 126, -1, 128, + -1, 130, -1, -1, -1, 134, 3, 4, 5, 6, + -1, 8, 9, 10, 11, 12, 13, 14, -1, -1, + -1, 18, 19, 20, 21, 22, 23, 24, 25, -1, + -1, 28, 29, -1, -1, -1, -1, -1, -1, 36, + -1, 38, 39, -1, 41, -1, 43, -1, 45, -1, + 47, 48, 49, -1, -1, 52, 53, -1, 55, 56, + -1, -1, -1, -1, -1, -1, 63, 64, 65, -1, + -1, -1, -1, -1, 71, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 92, 93, -1, -1, -1, -1, - -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 111, -1, -1, 114, -1, -1, -1, - -1, 119, 120, -1, -1, -1, 124, -1, 126, -1, - 128, -1, 130, -1, -1, -1, 134, 3, 4, 5, - 6, -1, 8, 9, 10, 11, 12, 13, 14, -1, - -1, -1, 18, 19, 20, 21, 22, 23, 24, 25, - -1, -1, 28, 29, -1, -1, -1, -1, -1, -1, - 36, -1, 38, 39, -1, 41, -1, 43, -1, 45, - -1, 47, 48, 49, -1, -1, 52, 53, -1, 55, - 56, -1, -1, -1, -1, -1, -1, 63, 64, 65, - -1, -1, -1, -1, -1, 71, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 92, 93, -1, -1, -1, + -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 111, -1, -1, 114, -1, -1, + -1, -1, 119, 120, -1, -1, -1, 124, -1, 126, + -1, 128, -1, 130, -1, -1, -1, 134, 3, 4, + 5, 6, -1, 8, 9, 10, 11, 12, 13, 14, + -1, -1, -1, 18, 19, 20, 21, 22, 23, 24, + 25, -1, -1, 28, 29, -1, -1, -1, -1, -1, + -1, 36, -1, 38, 39, -1, 41, -1, 43, -1, + 45, -1, 47, 48, 49, -1, -1, 52, 53, -1, + 55, 56, -1, -1, -1, -1, -1, -1, 63, 64, + 65, -1, -1, -1, -1, -1, 71, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 92, 93, -1, -1, - -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 111, -1, -1, 114, -1, - -1, -1, -1, 119, 120, -1, -1, -1, 124, -1, - 126, -1, 128, -1, 130, -1, 0, -1, 134, 3, - 4, 5, 6, -1, 8, 9, 10, 11, 12, 13, - 14, -1, -1, 17, 18, 19, 20, 21, 22, 23, - 24, 25, -1, -1, 28, 29, -1, -1, -1, -1, - -1, -1, 36, -1, 38, 39, -1, 41, -1, 43, - -1, 45, -1, 47, 48, 49, -1, -1, 52, 53, - -1, 55, 56, -1, -1, -1, -1, -1, -1, 63, - 64, 65, -1, -1, -1, -1, -1, 71, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 92, 93, -1, + -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 111, -1, -1, 114, + -1, -1, -1, -1, 119, 120, -1, -1, -1, 124, + -1, 126, -1, 128, -1, 130, -1, 0, -1, 134, + 3, 4, 5, 6, -1, 8, 9, 10, 11, 12, + 13, 14, -1, -1, 17, 18, 19, 20, 21, 22, + 23, 24, 25, -1, -1, 28, 29, -1, -1, -1, + -1, -1, -1, 36, -1, 38, 39, -1, 41, -1, + 43, -1, 45, -1, 47, 48, 49, -1, -1, 52, + 53, -1, 55, 56, -1, -1, -1, -1, -1, -1, + 63, 64, 65, -1, -1, -1, -1, -1, 71, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 92, 93, - -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 111, -1, -1, - 114, -1, -1, -1, -1, 119, 120, -1, -1, -1, - 124, -1, 126, -1, 128, -1, 130, 3, 4, 5, - 6, -1, 8, 9, 10, 11, 12, 13, 14, -1, - 16, -1, 18, 19, 20, 21, 22, 23, 24, 25, - 26, -1, 28, 29, 30, -1, 32, -1, -1, -1, - 36, 37, 38, 39, -1, 41, 42, 43, -1, 45, - 46, 47, 48, 49, -1, -1, 52, 53, -1, 55, - 56, -1, -1, -1, -1, -1, -1, 63, 64, 65, - -1, 67, -1, -1, -1, 71, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 92, 93, -1, -1, - -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 111, -1, -1, 114, -1, - -1, -1, -1, 119, 120, -1, -1, -1, 124, -1, - 126, -1, 128, -1, 130, 3, 4, 5, 6, -1, - 8, 9, 10, 11, 12, 13, 14, -1, -1, -1, - 18, 19, 20, 21, 22, 23, 24, 25, 26, -1, - 28, 29, 30, -1, 32, -1, -1, -1, 36, 37, - 38, 39, -1, 41, 42, 43, -1, 45, 46, 47, - 48, 49, -1, -1, 52, 53, -1, 55, 56, -1, - -1, -1, -1, -1, -1, 63, 64, 65, -1, 67, - -1, -1, -1, 71, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 92, 93, -1, -1, -1, -1, - -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 111, -1, -1, 114, -1, -1, -1, - -1, 119, 120, -1, -1, -1, 124, -1, 126, -1, - 128, 3, 130, 5, 6, -1, 8, 9, 10, -1, - -1, -1, -1, -1, -1, -1, -1, 19, -1, -1, - -1, -1, 24, -1, 26, -1, 28, 29, -1, -1, - 32, -1, -1, -1, 36, -1, -1, -1, -1, -1, - -1, 43, -1, 45, 46, -1, -1, -1, -1, -1, - -1, 53, -1, 55, 56, -1, -1, -1, -1, -1, - -1, -1, 64, -1, -1, -1, -1, -1, -1, 71, - -1, -1, -1, 3, -1, 5, 6, -1, 8, 9, - 10, -1, -1, -1, -1, -1, -1, -1, -1, 19, - 92, 93, -1, -1, 24, -1, 26, -1, 28, 29, - -1, -1, -1, -1, -1, -1, 36, -1, -1, 111, - -1, -1, 114, 43, -1, 45, -1, 119, 120, -1, - -1, -1, 124, 53, 126, 55, 56, -1, 130, -1, - 3, -1, 5, 6, 64, 8, 9, 10, -1, -1, - -1, 71, -1, -1, -1, -1, 19, -1, -1, -1, - -1, 24, -1, 26, -1, 28, 29, -1, -1, -1, - -1, -1, 92, 93, -1, -1, -1, -1, -1, -1, - -1, -1, 45, -1, -1, -1, -1, -1, -1, -1, - 53, 111, 55, 56, 114, -1, -1, -1, -1, 119, - 120, -1, -1, -1, 124, -1, 126, -1, 71, -1, - 130, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 92, - 93, -1, -1, -1, -1, -1, 40, -1, -1, -1, + 93, -1, -1, -1, -1, -1, -1, -1, 101, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 111, -1, + -1, 114, -1, -1, -1, -1, 119, 120, -1, -1, + -1, 124, -1, 126, -1, 128, -1, 130, 3, 4, + 5, 6, -1, 8, 9, 10, 11, 12, 13, 14, + -1, 16, -1, 18, 19, 20, 21, 22, 23, 24, + 25, 26, -1, 28, 29, 30, -1, 32, -1, -1, + -1, 36, 37, 38, 39, -1, 41, 42, 43, -1, + 45, 46, 47, 48, 49, -1, -1, 52, 53, -1, + 55, 56, -1, -1, -1, -1, -1, -1, 63, 64, + 65, -1, 67, -1, -1, -1, 71, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 92, 93, -1, + -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 111, -1, -1, 114, + -1, -1, -1, -1, 119, 120, -1, -1, -1, 124, + -1, 126, -1, 128, -1, 130, 3, 4, 5, 6, + -1, 8, 9, 10, 11, 12, 13, 14, -1, -1, + -1, 18, 19, 20, 21, 22, 23, 24, 25, 26, + -1, 28, 29, 30, -1, 32, -1, -1, -1, 36, + 37, 38, 39, -1, 41, 42, 43, -1, 45, 46, + 47, 48, 49, -1, -1, 52, 53, -1, 55, 56, + -1, -1, -1, -1, -1, -1, 63, 64, 65, -1, + 67, -1, -1, -1, 71, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 3, 4, 5, 6, + -1, 8, 9, 10, -1, 92, 93, -1, -1, -1, + -1, -1, 19, -1, 101, -1, -1, 24, -1, 26, + -1, 28, 29, -1, 111, -1, -1, 114, -1, 36, + -1, -1, 119, 120, -1, -1, 43, 124, 45, 126, + -1, 128, -1, 130, -1, -1, 53, -1, 55, 56, + -1, -1, -1, 3, 4, 5, 6, 64, 8, 9, + 10, -1, -1, -1, 71, -1, -1, -1, -1, 19, + -1, -1, -1, -1, 24, -1, 26, -1, 28, 29, + -1, -1, -1, -1, -1, 92, 93, -1, -1, -1, + -1, -1, -1, -1, -1, 45, -1, -1, -1, -1, + -1, -1, -1, 53, 111, 55, 56, 114, -1, -1, + -1, -1, 119, 120, -1, -1, -1, 124, -1, 126, + -1, 71, -1, 130, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 124, -1, 126, 68, 69, 70, 130, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, - 94, -1, 96, 97, 98, -1, -1, -1, -1, -1, - 104, 105, -1, 107, 108, 109, 40, 111, 112, -1, - 114, 115, 116, 117, 118, -1, -1, -1, -1, -1, - 124, -1, 126, -1, -1, 129, -1, -1, -1, -1, - -1, 135, -1, -1, 68, 69, 70, -1, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, - 94, -1, 96, 97, 98, -1, -1, -1, -1, -1, - 104, 105, -1, 107, 108, 109, 40, 111, 112, -1, - 114, 115, 116, 117, 118, -1, -1, -1, -1, -1, - 124, -1, 126, -1, -1, 129, -1, -1, -1, -1, - -1, 135, -1, -1, 68, 69, 70, -1, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, - 94, -1, 96, 97, 98, -1, -1, -1, 40, -1, - 104, 105, 106, 107, 108, 109, -1, 111, 112, -1, - 114, 115, 116, 117, 118, -1, -1, -1, -1, -1, - 124, -1, 126, -1, -1, 129, 68, 69, 70, -1, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, - 92, 93, 94, -1, 96, 97, 98, -1, -1, -1, - 40, -1, 104, 105, -1, 107, 108, 109, -1, 111, - 112, -1, 114, 115, 116, 117, 118, -1, -1, -1, - -1, -1, 124, -1, 126, 127, -1, 129, 68, 69, - 70, -1, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, -1, 92, 93, 94, -1, 96, 97, 98, -1, - -1, -1, 40, -1, 104, 105, -1, 107, 108, 109, - -1, 111, 112, -1, 114, 115, 116, 117, 118, -1, - -1, -1, -1, -1, 124, -1, 126, 127, -1, 129, - 68, 69, 70, -1, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, -1, 92, 93, 94, -1, 96, 97, - 98, -1, -1, -1, 40, -1, 104, 105, -1, 107, - 108, 109, -1, 111, 112, -1, 114, 115, 116, 117, - 118, -1, -1, -1, -1, -1, 124, -1, 126, 127, - -1, 129, 68, 69, 70, -1, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, -1, 92, 93, 94, -1, - 96, 97, 98, -1, -1, -1, 40, -1, 104, 105, - -1, 107, 108, 109, -1, 111, 112, -1, 114, 115, - 116, 117, 118, -1, -1, -1, -1, -1, 124, -1, - 126, 127, -1, 129, 68, 69, 70, -1, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, -1, 92, 93, - 94, -1, 96, 97, 98, -1, -1, -1, 40, -1, - 104, 105, -1, 107, 108, 109, -1, 111, 112, -1, - 114, 115, 116, 117, 118, -1, -1, -1, -1, -1, - 124, -1, 126, 127, -1, 129, 68, 69, 70, -1, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, -1, - 92, 93, 94, -1, 96, 97, 98, -1, -1, -1, - 40, -1, 104, 105, 106, 107, 108, 109, -1, 111, - 112, -1, 114, 115, 116, 117, 118, -1, -1, -1, - -1, -1, 124, -1, 126, -1, -1, 129, 68, 69, - 70, -1, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, -1, 92, 93, 94, -1, 96, 97, 98, -1, - -1, -1, 40, -1, 104, 105, -1, 107, 108, 109, - -1, 111, 112, -1, 114, 115, 116, 117, 118, -1, - -1, -1, -1, -1, 124, -1, 126, -1, -1, 129, - 68, 69, 70, -1, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, -1, 92, 93, 94, -1, 96, 97, - 98, -1, -1, -1, 40, -1, 104, 105, -1, 107, - 108, 109, -1, -1, 112, -1, 114, 115, 116, 117, - 118, -1, -1, -1, -1, -1, 124, -1, 126, -1, - -1, 129, 68, 69, 70, -1, 72, 73, 74, 75, - 76, 77, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 92, 93, 94, -1, - 96, 97, 98, -1, -1, -1, 40, -1, -1, -1, - -1, 107, 108, 109, -1, 111, 112, -1, 114, 115, - 116, 117, 118, -1, -1, -1, -1, -1, 124, -1, - 126, -1, -1, 129, 68, 69, 70, -1, 72, 73, - 74, 75, 76, 77, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 92, 93, - 94, -1, 96, 97, 98, -1, -1, -1, 40, -1, - -1, -1, -1, -1, 108, 109, -1, 111, 112, -1, - 114, 115, 116, 117, 118, -1, -1, -1, -1, -1, - 124, -1, 126, -1, -1, 129, 68, 69, 70, -1, - 72, 73, 74, 75, 76, 77, -1, -1, -1, -1, + -1, -1, 92, 93, -1, -1, -1, -1, -1, 40, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 92, 93, 94, -1, 96, 97, 98, -1, -1, -1, - 40, -1, -1, -1, -1, -1, -1, 109, -1, 111, - 112, -1, 114, 115, 116, 117, 118, -1, -1, -1, - -1, -1, 124, -1, 126, -1, -1, 129, 68, 69, - 70, -1, 72, 73, 74, 75, 76, 77, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 92, 93, 94, -1, 96, 97, 98, -1, - -1, -1, 40, -1, -1, -1, -1, -1, -1, 109, - -1, 111, 112, -1, 114, 115, 116, 117, 118, -1, - -1, -1, -1, -1, 124, -1, 126, -1, -1, 129, - 68, 69, 70, -1, 72, 73, 74, 75, 76, 77, + -1, -1, -1, -1, 124, -1, 126, 68, 69, 70, + 130, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + -1, 92, 93, 94, -1, 96, 97, 98, -1, -1, + -1, -1, -1, 104, 105, -1, 107, 108, 109, 40, + 111, 112, -1, 114, 115, 116, 117, 118, -1, -1, + -1, -1, -1, 124, -1, 126, -1, -1, 129, -1, + -1, -1, -1, -1, 135, -1, -1, 68, 69, 70, + -1, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + -1, 92, 93, 94, -1, 96, 97, 98, -1, -1, + -1, -1, -1, 104, 105, -1, 107, 108, 109, 40, + 111, 112, -1, 114, 115, 116, 117, 118, -1, -1, + -1, -1, -1, 124, -1, 126, -1, -1, 129, -1, + -1, -1, -1, -1, 135, -1, -1, 68, 69, 70, + -1, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + -1, 92, 93, 94, -1, 96, 97, 98, -1, -1, + -1, 40, -1, 104, 105, 106, 107, 108, 109, -1, + 111, 112, -1, 114, 115, 116, 117, 118, -1, -1, + -1, -1, -1, 124, -1, 126, -1, -1, 129, 68, + 69, 70, -1, 72, 73, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, -1, 92, 93, 94, -1, 96, 97, 98, + -1, -1, -1, 40, -1, 104, 105, -1, 107, 108, + 109, -1, 111, 112, -1, 114, 115, 116, 117, 118, + -1, -1, -1, -1, -1, 124, -1, 126, 127, -1, + 129, 68, 69, 70, -1, 72, 73, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, -1, 92, 93, 94, -1, 96, + 97, 98, -1, -1, -1, 40, -1, 104, 105, -1, + 107, 108, 109, -1, 111, 112, -1, 114, 115, 116, + 117, 118, -1, -1, -1, -1, -1, 124, -1, 126, + 127, -1, 129, 68, 69, 70, -1, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, + -1, 96, 97, 98, -1, -1, -1, 40, -1, 104, + 105, -1, 107, 108, 109, -1, 111, 112, -1, 114, + 115, 116, 117, 118, -1, -1, -1, -1, -1, 124, + -1, 126, 127, -1, 129, 68, 69, 70, -1, 72, + 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, -1, 92, + 93, 94, -1, 96, 97, 98, -1, -1, -1, 40, + -1, 104, 105, -1, 107, 108, 109, -1, 111, 112, + -1, 114, 115, 116, 117, 118, -1, -1, -1, -1, + -1, 124, -1, 126, 127, -1, 129, 68, 69, 70, + -1, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + -1, 92, 93, 94, -1, 96, 97, 98, -1, -1, + -1, 40, -1, 104, 105, -1, 107, 108, 109, -1, + 111, 112, -1, 114, 115, 116, 117, 118, -1, -1, + -1, -1, -1, 124, -1, 126, 127, -1, 129, 68, + 69, 70, -1, 72, 73, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, -1, 92, 93, 94, -1, 96, 97, 98, + -1, -1, -1, 40, -1, 104, 105, 106, 107, 108, + 109, -1, 111, 112, -1, 114, 115, 116, 117, 118, + -1, -1, -1, -1, -1, 124, -1, 126, -1, -1, + 129, 68, 69, 70, -1, 72, 73, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, -1, 92, 93, 94, -1, 96, + 97, 98, -1, -1, -1, 40, -1, 104, 105, -1, + 107, 108, 109, -1, 111, 112, -1, 114, 115, 116, + 117, 118, -1, -1, -1, -1, -1, 124, -1, 126, + -1, -1, 129, 68, 69, 70, -1, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, -1, 92, 93, 94, + -1, 96, 97, 98, -1, -1, -1, 40, -1, 104, + 105, -1, 107, 108, 109, -1, -1, 112, -1, 114, + 115, 116, 117, 118, -1, -1, -1, -1, -1, 124, + -1, 126, -1, -1, 129, 68, 69, 70, -1, 72, + 73, 74, 75, 76, 77, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 90, -1, 92, + 93, 94, -1, 96, 97, 98, -1, -1, -1, 40, + -1, -1, -1, -1, 107, 108, 109, -1, 111, 112, + -1, 114, 115, 116, 117, 118, -1, -1, -1, -1, + -1, 124, -1, 126, -1, -1, 129, 68, 69, 70, + -1, 72, 73, 74, 75, 76, 77, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 92, 93, 94, -1, 96, 97, 98, -1, -1, + -1, 40, -1, -1, -1, -1, 107, 108, 109, -1, + 111, 112, -1, 114, 115, 116, 117, 118, -1, -1, + -1, -1, -1, 124, -1, 126, -1, -1, 129, 68, + 69, 70, -1, 72, 73, 74, 75, 76, 77, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 92, 93, 94, -1, 96, 97, - 98, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 111, 112, -1, 114, 115, 116, 117, - 118, -1, -1, -1, -1, -1, 124, -1, 126, -1, - -1, 129 + -1, -1, -1, 92, 93, 94, -1, 96, 97, 98, + -1, -1, -1, 40, -1, -1, -1, -1, -1, 108, + 109, -1, 111, 112, -1, 114, 115, 116, 117, 118, + -1, -1, -1, -1, -1, 124, -1, 126, -1, -1, + 129, 68, 69, 70, -1, 72, 73, 74, 75, 76, + 77, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 92, 93, 94, -1, 96, + 97, 98, -1, -1, -1, 40, -1, -1, -1, -1, + -1, -1, 109, -1, 111, 112, -1, 114, 115, 116, + 117, 118, -1, -1, -1, -1, -1, 124, -1, 126, + -1, -1, 129, 68, 69, 70, -1, 72, 73, 74, + 75, 76, 77, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 92, 93, 94, + -1, 96, 97, 98, -1, -1, -1, 40, -1, -1, + -1, -1, -1, -1, 109, -1, 111, 112, -1, 114, + 115, 116, 117, 118, -1, -1, -1, -1, -1, 124, + -1, 126, -1, -1, 129, 68, 69, 70, -1, 72, + 73, 74, 75, 76, 77, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 92, + 93, 94, -1, 96, 97, 98, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 111, 112, + -1, 114, 115, 116, 117, 118, -1, -1, -1, -1, + -1, 124, -1, 126, -1, -1, 129 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -3591,56 +3798,57 @@ static const yytype_uint16 yystos[] = 227, 234, 237, 250, 251, 252, 257, 261, 265, 266, 268, 269, 270, 91, 50, 124, 124, 156, 157, 124, 3, 4, 16, 17, 29, 128, 186, 187, 16, 3, - 261, 3, 236, 261, 124, 3, 187, 240, 261, 128, - 124, 129, 16, 261, 124, 3, 5, 8, 9, 10, - 258, 259, 260, 261, 261, 261, 261, 261, 256, 261, - 246, 247, 248, 254, 261, 30, 32, 37, 42, 46, - 67, 101, 134, 145, 146, 147, 151, 153, 167, 168, - 183, 192, 253, 3, 0, 140, 128, 3, 46, 153, - 160, 161, 257, 147, 148, 16, 26, 31, 32, 44, - 46, 208, 267, 194, 3, 128, 221, 225, 102, 40, - 68, 69, 70, 72, 73, 74, 75, 76, 77, 78, - 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 92, 93, 94, 96, 97, 98, 104, 105, - 107, 108, 109, 111, 112, 114, 115, 116, 117, 118, - 124, 126, 129, 3, 124, 255, 256, 12, 148, 174, - 190, 128, 129, 186, 187, 239, 240, 241, 249, 124, - 255, 129, 182, 246, 3, 104, 255, 134, 106, 102, - 102, 135, 127, 102, 254, 3, 3, 154, 155, 255, - 255, 154, 3, 134, 147, 128, 138, 3, 101, 69, - 101, 3, 35, 51, 233, 3, 3, 210, 261, 3, - 221, 226, 228, 229, 261, 261, 261, 261, 261, 261, + 4, 261, 3, 236, 261, 124, 3, 187, 240, 261, + 128, 124, 129, 16, 261, 124, 3, 5, 8, 9, + 10, 258, 259, 260, 261, 261, 261, 261, 261, 256, + 261, 246, 247, 248, 254, 261, 30, 32, 37, 42, + 46, 67, 101, 134, 145, 146, 147, 151, 153, 167, + 168, 183, 192, 253, 3, 0, 140, 128, 3, 46, + 153, 160, 161, 257, 147, 148, 16, 26, 31, 32, + 44, 46, 208, 267, 4, 194, 3, 128, 221, 225, + 102, 40, 68, 69, 70, 72, 73, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, 92, 93, 94, 96, 97, 98, + 104, 105, 107, 108, 109, 111, 112, 114, 115, 116, + 117, 118, 124, 126, 129, 3, 124, 255, 256, 12, + 148, 174, 190, 128, 129, 186, 187, 239, 240, 241, + 249, 124, 255, 129, 182, 246, 3, 104, 255, 134, + 106, 102, 102, 135, 127, 102, 254, 3, 3, 154, + 155, 255, 255, 154, 3, 134, 147, 128, 138, 3, + 101, 69, 101, 3, 35, 51, 233, 3, 3, 210, + 261, 3, 221, 226, 228, 229, 261, 261, 261, 261, + 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, + 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, + 3, 4, 117, 130, 186, 263, 264, 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, - 261, 261, 261, 261, 261, 261, 261, 261, 117, 130, - 186, 264, 261, 261, 261, 261, 261, 261, 261, 261, - 261, 261, 261, 261, 261, 261, 261, 246, 261, 3, - 4, 117, 124, 126, 130, 263, 264, 135, 124, 261, - 101, 126, 141, 142, 143, 149, 151, 198, 200, 209, - 234, 189, 186, 129, 124, 245, 3, 95, 230, 231, - 232, 135, 117, 186, 144, 145, 135, 261, 135, 254, - 259, 261, 106, 244, 102, 145, 134, 244, 255, 255, - 104, 3, 54, 195, 54, 196, 3, 211, 212, 222, - 104, 104, 112, 116, 217, 229, 126, 264, 106, 135, - 127, 262, 261, 126, 264, 91, 156, 255, 135, 150, - 134, 143, 128, 141, 246, 104, 106, 213, 232, 135, - 102, 134, 156, 106, 36, 117, 241, 243, 104, 152, - 155, 134, 101, 135, 3, 5, 124, 241, 15, 197, - 241, 242, 128, 244, 102, 134, 5, 221, 5, 221, - 218, 223, 261, 261, 261, 127, 261, 264, 135, 128, - 261, 141, 134, 135, 261, 243, 244, 95, 232, 27, - 33, 175, 177, 179, 180, 66, 158, 254, 261, 257, - 156, 230, 242, 128, 102, 201, 152, 212, 112, 5, - 111, 112, 128, 219, 224, 227, 127, 135, 127, 34, - 62, 169, 170, 171, 172, 127, 134, 213, 128, 232, - 128, 124, 175, 177, 156, 135, 135, 199, 241, 46, - 101, 192, 205, 206, 207, 116, 261, 111, 227, 223, - 261, 106, 134, 171, 172, 238, 178, 3, 156, 244, - 101, 146, 151, 192, 202, 203, 204, 209, 234, 3, - 26, 134, 207, 225, 220, 116, 223, 106, 144, 144, - 144, 244, 128, 128, 134, 204, 233, 218, 134, 225, - 144, 134, 134, 135, 235, 202, 3, 112, 218, 176, - 144, 134, 124, 112, 128, 134, 230, 144, 135, 134, - 244 + 261, 261, 246, 261, 124, 126, 130, 263, 264, 135, + 124, 261, 101, 126, 141, 142, 143, 149, 151, 198, + 200, 209, 234, 189, 186, 129, 124, 245, 3, 95, + 230, 231, 232, 135, 117, 186, 144, 145, 135, 261, + 135, 254, 259, 261, 106, 244, 102, 145, 134, 244, + 255, 255, 104, 3, 54, 195, 54, 196, 3, 211, + 212, 222, 104, 104, 112, 116, 217, 229, 126, 263, + 264, 91, 106, 135, 127, 262, 261, 126, 263, 264, + 91, 156, 255, 135, 150, 134, 143, 128, 141, 246, + 104, 106, 213, 232, 135, 102, 134, 156, 106, 36, + 117, 241, 243, 104, 152, 155, 134, 101, 135, 3, + 5, 124, 241, 15, 197, 241, 242, 128, 244, 102, + 134, 5, 221, 5, 221, 218, 223, 261, 91, 117, + 264, 261, 261, 127, 261, 91, 264, 135, 128, 261, + 141, 134, 135, 261, 243, 244, 95, 232, 27, 33, + 175, 177, 179, 180, 66, 158, 254, 261, 257, 156, + 230, 242, 128, 102, 201, 152, 212, 112, 5, 111, + 112, 128, 219, 224, 227, 127, 264, 135, 127, 264, + 34, 62, 169, 170, 171, 172, 127, 134, 213, 128, + 232, 128, 124, 175, 177, 156, 135, 135, 199, 241, + 46, 101, 192, 205, 206, 207, 116, 261, 111, 227, + 223, 261, 106, 134, 171, 172, 238, 178, 3, 156, + 244, 101, 146, 151, 192, 202, 203, 204, 209, 234, + 3, 26, 134, 207, 225, 220, 116, 223, 106, 144, + 144, 144, 244, 128, 128, 134, 204, 233, 218, 134, + 225, 144, 134, 134, 135, 235, 202, 3, 112, 218, + 176, 144, 134, 124, 112, 128, 134, 230, 144, 135, + 134, 244 }; #define yyerrok (yyerrstatus = 0) @@ -4151,6 +4359,7 @@ yydestruct (yymsg, yytype, yyvaluep) switch (yytype) { + default: break; } @@ -4158,15 +4367,13 @@ yydestruct (yymsg, yytype, yyvaluep) /* Prevent warnings from -Wmissing-prototypes. */ #ifdef YYPARSE_PARAM -#if (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) +#if defined __STDC__ || defined __cplusplus int yyparse (void *YYPARSE_PARAM); #else int yyparse (); #endif #else /* ! YYPARSE_PARAM */ -#if (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) +#if defined __STDC__ || defined __cplusplus int yyparse (void); #else int yyparse (); @@ -4455,6 +4662,7 @@ yyreduce: case 13: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 1980 "parser.y" {PASS_ALWAYS as3_pass=(yyvsp[(1) - (4)].number_int);} @@ -4465,6 +4673,7 @@ yyreduce: case 24: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 1992 "parser.y" {PASS_ALWAYS as3_pass=(yyvsp[(1) - (4)].number_int);} @@ -4475,6 +4684,7 @@ yyreduce: case 25: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 1993 "parser.y" {PASS_ALWAYS as3_pass=(yyvsp[(2) - (4)].number_int);PASS1 as3_warning("embed command ignored");} @@ -4485,6 +4695,7 @@ yyreduce: case 27: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 1996 "parser.y" {(yyval.code)=(yyvsp[(1) - (1)].code);} @@ -4495,6 +4706,7 @@ yyreduce: case 28: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 1997 "parser.y" {(yyval.code)=code_new();} @@ -4505,6 +4717,7 @@ yyreduce: case 29: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 1999 "parser.y" { @@ -4517,6 +4730,7 @@ yyreduce: case 30: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2002 "parser.y" {(yyval.code)=(yyvsp[(1) - (1)].code);} @@ -4527,6 +4741,7 @@ yyreduce: case 44: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2018 "parser.y" {(yyval.code)=(yyvsp[(2) - (3)].code);} @@ -4537,6 +4752,7 @@ yyreduce: case 45: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2019 "parser.y" {(yyval.code)=0;} @@ -4547,6 +4763,7 @@ yyreduce: case 46: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2022 "parser.y" {(yyval.code)=0;} @@ -4557,6 +4774,7 @@ yyreduce: case 53: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2029 "parser.y" { @@ -4575,6 +4793,7 @@ yyreduce: case 54: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2041 "parser.y" {(yyval.code)=(yyvsp[(1) - (2)].code);} @@ -4585,6 +4804,7 @@ yyreduce: case 55: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2042 "parser.y" {(yyval.code)=(yyvsp[(1) - (1)].code);} @@ -4595,6 +4815,7 @@ yyreduce: case 56: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2046 "parser.y" { @@ -4612,6 +4833,7 @@ yyreduce: case 57: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2057 "parser.y" { @@ -4626,6 +4848,7 @@ yyreduce: case 58: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2065 "parser.y" { @@ -4644,6 +4867,7 @@ yyreduce: case 59: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2092 "parser.y" {(yyval.node)=(yyvsp[(2) - (2)].node);} @@ -4654,6 +4878,7 @@ yyreduce: case 60: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2093 "parser.y" {(yyval.node)=mkdummynode();} @@ -4664,6 +4889,7 @@ yyreduce: case 61: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2095 "parser.y" {(yyval.code)=(yyvsp[(2) - (2)].code);} @@ -4674,6 +4900,7 @@ yyreduce: case 62: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2096 "parser.y" {(yyval.code)=(yyvsp[(2) - (2)].code);} @@ -4684,6 +4911,7 @@ yyreduce: case 63: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2098 "parser.y" {(yyval.code) = (yyvsp[(1) - (1)].code);} @@ -4694,6 +4922,7 @@ yyreduce: case 64: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2099 "parser.y" {(yyval.code) = code_append((yyvsp[(1) - (3)].code), (yyvsp[(3) - (3)].code));} @@ -4704,6 +4933,7 @@ yyreduce: case 65: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2102 "parser.y" { @@ -4770,6 +5000,7 @@ PASS2 case 66: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2162 "parser.y" {PASS12 new_state();} @@ -4780,6 +5011,7 @@ PASS2 case 67: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2162 "parser.y" { @@ -4793,6 +5025,7 @@ PASS2 case 68: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2166 "parser.y" {(yyval.code) = code_new();} @@ -4803,6 +5036,7 @@ PASS2 case 69: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2167 "parser.y" {(yyval.code)=(yyvsp[(2) - (2)].code);} @@ -4813,6 +5047,7 @@ PASS2 case 70: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2170 "parser.y" { @@ -4837,6 +5072,7 @@ PASS2 case 71: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2186 "parser.y" {(yyval.code)=code_new();} @@ -4847,6 +5083,7 @@ PASS2 case 74: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2193 "parser.y" { @@ -4860,6 +5097,7 @@ PASS2 case 75: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2197 "parser.y" { @@ -4873,6 +5111,7 @@ PASS2 case 76: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2202 "parser.y" {PASS12 new_state();(yyval.for_start).name=(yyvsp[(1) - (2)].id);(yyval.for_start).each=0;} @@ -4883,6 +5122,7 @@ PASS2 case 77: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2203 "parser.y" {PASS12 new_state();(yyval.for_start).name=(yyvsp[(1) - (3)].id);(yyval.for_start).each=1;} @@ -4893,6 +5133,7 @@ PASS2 case 78: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2205 "parser.y" { @@ -4921,13 +5162,13 @@ PASS2 case 79: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2225 "parser.y" { - variable_t*var = find_variable(state, (yyvsp[(2) - (6)].id)); - if(!var) { - syntaxerror("variable %s not known in this scope", (yyvsp[(2) - (6)].id)); - } + node_t*n = resolve_identifier((yyvsp[(2) - (6)].id)); + typedcode_t w = node_write(n); + int it = alloc_local(); int array = alloc_local(); @@ -4948,8 +5189,9 @@ PASS2 (yyval.code) = abc_nextname((yyval.code)); else (yyval.code) = abc_nextvalue((yyval.code)); - (yyval.code) = converttype((yyval.code), 0, var->type); - (yyval.code) = abc_setlocal((yyval.code), var->index); + + (yyval.code) = converttype((yyval.code), 0, w.t); + (yyval.code) = code_append((yyval.code), w.c); (yyval.code) = code_append((yyval.code), (yyvsp[(6) - (6)].code)); (yyval.code) = abc_jump((yyval.code), loopstart); @@ -4973,6 +5215,7 @@ PASS2 case 80: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2269 "parser.y" { @@ -4997,6 +5240,7 @@ PASS2 case 81: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2285 "parser.y" { @@ -5017,6 +5261,7 @@ PASS2 case 82: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2297 "parser.y" { @@ -5029,6 +5274,7 @@ PASS2 case 83: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2300 "parser.y" { @@ -5041,6 +5287,7 @@ PASS2 case 84: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2303 "parser.y" { @@ -5053,6 +5300,7 @@ PASS2 case 85: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2306 "parser.y" { @@ -5065,6 +5313,7 @@ PASS2 case 86: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2310 "parser.y" {(yyval.code)=0;} @@ -5075,6 +5324,7 @@ PASS2 case 87: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2311 "parser.y" {(yyval.code)=(yyvsp[(1) - (1)].code);} @@ -5085,6 +5335,7 @@ PASS2 case 88: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2312 "parser.y" {(yyval.code)=(yyvsp[(1) - (1)].code);} @@ -5095,6 +5346,7 @@ PASS2 case 89: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2313 "parser.y" {(yyval.code)=code_append((yyvsp[(1) - (2)].code),(yyvsp[(2) - (2)].code));} @@ -5105,6 +5357,7 @@ PASS2 case 90: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2314 "parser.y" {(yyval.code)=(yyvsp[(1) - (1)].code);} @@ -5115,6 +5368,7 @@ PASS2 case 91: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2315 "parser.y" {(yyval.code)=code_append((yyval.code),(yyvsp[(2) - (2)].code));} @@ -5125,6 +5379,7 @@ PASS2 case 92: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2317 "parser.y" { @@ -5145,6 +5400,7 @@ PASS2 case 93: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2328 "parser.y" { @@ -5157,6 +5413,7 @@ PASS2 case 94: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2331 "parser.y" {PASS12 new_state();state->switch_var=alloc_local();} @@ -5167,6 +5424,7 @@ PASS2 case 95: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2331 "parser.y" { @@ -5204,6 +5462,7 @@ PASS2 case 96: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2362 "parser.y" {PASS12 new_state(); @@ -5218,6 +5477,7 @@ PASS2 case 97: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2367 "parser.y" { @@ -5247,6 +5507,7 @@ PASS2 case 98: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2387 "parser.y" {PASS12 new_state();state->exception_name=0;} @@ -5257,6 +5518,7 @@ PASS2 case 99: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2387 "parser.y" { @@ -5281,6 +5543,7 @@ PASS2 case 100: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2403 "parser.y" {(yyval.catch_list).l=list_new();(yyval.catch_list).finally=0;list_append((yyval.catch_list).l,(yyvsp[(1) - (1)].exception));} @@ -5291,6 +5554,7 @@ PASS2 case 101: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2404 "parser.y" {(yyval.catch_list)=(yyvsp[(1) - (2)].catch_list);list_append((yyval.catch_list).l,(yyvsp[(2) - (2)].exception));} @@ -5301,6 +5565,7 @@ PASS2 case 102: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2405 "parser.y" {(yyval.catch_list)=(yyvsp[(1) - (1)].catch_list);} @@ -5311,6 +5576,7 @@ PASS2 case 103: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2406 "parser.y" { @@ -5328,6 +5594,7 @@ PASS2 case 104: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2414 "parser.y" { @@ -5345,6 +5612,7 @@ PASS2 case 105: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2423 "parser.y" {PASS12 new_state(); @@ -5358,6 +5626,7 @@ PASS2 case 106: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2426 "parser.y" { @@ -5410,6 +5679,7 @@ PASS2 case 107: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2472 "parser.y" { @@ -5423,6 +5693,7 @@ PASS2 case 108: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2476 "parser.y" { @@ -5440,6 +5711,7 @@ PASS2 case 109: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2487 "parser.y" { @@ -5459,6 +5731,7 @@ PASS2 case 110: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2497 "parser.y" { @@ -5482,6 +5755,7 @@ PASS2 case 112: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2515 "parser.y" {PASS12 (yyval.id)="package";} @@ -5492,6 +5766,7 @@ PASS2 case 113: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2516 "parser.y" {PASS12 (yyval.id)="namespace";} @@ -5502,6 +5777,7 @@ PASS2 case 114: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2517 "parser.y" {PASS12 (yyval.id)="NaN";} @@ -5512,6 +5788,7 @@ PASS2 case 115: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2518 "parser.y" {PASS12 (yyval.id)=(yyvsp[(1) - (1)].id);} @@ -5522,6 +5799,7 @@ PASS2 case 116: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2520 "parser.y" {PASS12 (yyval.id) = concat3((yyvsp[(1) - (3)].id),".",(yyvsp[(3) - (3)].id));free((yyvsp[(1) - (3)].id));(yyvsp[(1) - (3)].id)=0;} @@ -5532,6 +5810,7 @@ PASS2 case 117: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2521 "parser.y" {PASS12 (yyval.id)=strdup((yyvsp[(1) - (1)].id));} @@ -5542,6 +5821,7 @@ PASS2 case 118: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2523 "parser.y" {PASS12 startpackage((yyvsp[(2) - (3)].id));free((yyvsp[(2) - (3)].id));(yyvsp[(2) - (3)].id)=0;} @@ -5552,6 +5832,7 @@ PASS2 case 119: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2524 "parser.y" {PASS12 endpackage();(yyval.code)=0;} @@ -5562,6 +5843,7 @@ PASS2 case 120: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2525 "parser.y" {PASS12 startpackage("");} @@ -5572,6 +5854,7 @@ PASS2 case 121: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2526 "parser.y" {PASS12 endpackage();(yyval.code)=0;} @@ -5582,6 +5865,7 @@ PASS2 case 122: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2549 "parser.y" { @@ -5599,6 +5883,7 @@ PASS2 case 123: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2557 "parser.y" { @@ -5619,6 +5904,7 @@ PASS2 case 124: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2568 "parser.y" { @@ -5641,6 +5927,7 @@ PASS2 case 125: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2584 "parser.y" {PASS12 (yyval.flags).flags=0;(yyval.flags).ns=0;} @@ -5651,6 +5938,7 @@ PASS2 case 126: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2585 "parser.y" {PASS12 (yyval.flags)=(yyvsp[(1) - (1)].flags);} @@ -5661,6 +5949,7 @@ PASS2 case 127: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2586 "parser.y" {PASS12 (yyval.flags)=(yyvsp[(1) - (1)].flags);} @@ -5671,6 +5960,7 @@ PASS2 case 128: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2587 "parser.y" { @@ -5687,6 +5977,7 @@ PASS2 case 129: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2594 "parser.y" {PASS12 (yyval.flags).flags=FLAG_PUBLIC;(yyval.flags).ns=0;} @@ -5697,6 +5988,7 @@ PASS2 case 130: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2595 "parser.y" {PASS12 (yyval.flags).flags=FLAG_PRIVATE;(yyval.flags).ns=0;} @@ -5707,6 +5999,7 @@ PASS2 case 131: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2596 "parser.y" {PASS12 (yyval.flags).flags=FLAG_PROTECTED;(yyval.flags).ns=0;} @@ -5717,6 +6010,7 @@ PASS2 case 132: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2597 "parser.y" {PASS12 (yyval.flags).flags=FLAG_STATIC;(yyval.flags).ns=0;} @@ -5727,6 +6021,7 @@ PASS2 case 133: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2598 "parser.y" {PASS12 (yyval.flags).flags=FLAG_DYNAMIC;(yyval.flags).ns=0;} @@ -5737,6 +6032,7 @@ PASS2 case 134: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2599 "parser.y" {PASS12 (yyval.flags).flags=FLAG_FINAL;(yyval.flags).ns=0;} @@ -5747,6 +6043,7 @@ PASS2 case 135: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2600 "parser.y" {PASS12 (yyval.flags).flags=FLAG_OVERRIDE;(yyval.flags).ns=0;} @@ -5757,6 +6054,7 @@ PASS2 case 136: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2601 "parser.y" {PASS12 (yyval.flags).flags=FLAG_NATIVE;(yyval.flags).ns=0;} @@ -5767,6 +6065,7 @@ PASS2 case 137: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2602 "parser.y" {PASS12 (yyval.flags).flags=FLAG_PACKAGEINTERNAL;(yyval.flags).ns=0;} @@ -5777,6 +6076,7 @@ PASS2 case 138: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2603 "parser.y" {PASS12 (yyval.flags).flags=FLAG_NAMESPACE; @@ -5789,6 +6089,7 @@ PASS2 case 139: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2607 "parser.y" {PASS12 (yyval.classinfo)=0;} @@ -5799,6 +6100,7 @@ PASS2 case 140: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2608 "parser.y" {PASS12 (yyval.classinfo)=(yyvsp[(2) - (2)].classinfo);} @@ -5809,6 +6111,7 @@ PASS2 case 141: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2610 "parser.y" {PASS12 (yyval.classinfo_list)=list_new();} @@ -5819,6 +6122,7 @@ PASS2 case 142: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2611 "parser.y" {PASS12 (yyval.classinfo_list)=(yyvsp[(2) - (2)].classinfo_list);} @@ -5829,6 +6133,7 @@ PASS2 case 143: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2613 "parser.y" {PASS12 (yyval.classinfo_list)=list_new();} @@ -5839,6 +6144,7 @@ PASS2 case 144: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2614 "parser.y" {PASS12 (yyval.classinfo_list)=(yyvsp[(2) - (2)].classinfo_list);} @@ -5849,6 +6155,7 @@ PASS2 case 145: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2618 "parser.y" {PASS12 startclass(&(yyvsp[(1) - (6)].flags),(yyvsp[(3) - (6)].id),(yyvsp[(4) - (6)].classinfo),(yyvsp[(5) - (6)].classinfo_list));} @@ -5859,6 +6166,7 @@ PASS2 case 146: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2620 "parser.y" {PASS12 endclass();(yyval.code)=0;} @@ -5869,6 +6177,7 @@ PASS2 case 147: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2624 "parser.y" {PASS12 (yyvsp[(1) - (5)].flags).flags|=FLAG_INTERFACE; @@ -5880,6 +6189,7 @@ PASS2 case 148: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2627 "parser.y" {PASS12 endclass();(yyval.code)=0;} @@ -5890,6 +6200,7 @@ PASS2 case 154: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2636 "parser.y" {PASS_ALWAYS as3_pass=(yyvsp[(1) - (4)].number_int);} @@ -5900,6 +6211,7 @@ PASS2 case 157: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2640 "parser.y" { @@ -5914,6 +6226,7 @@ PASS2 case 163: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2651 "parser.y" { @@ -5926,6 +6239,7 @@ PASS2 case 164: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2654 "parser.y" { @@ -5945,6 +6259,7 @@ PASS2 case 167: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2729 "parser.y" {PASS12 setslotstate(&(yyvsp[(1) - (2)].flags),(yyvsp[(2) - (2)].token));} @@ -5955,6 +6270,7 @@ PASS2 case 168: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2729 "parser.y" {PASS12 (yyval.code)=(yyvsp[(4) - (4)].code);setslotstate(0, 0);} @@ -5965,6 +6281,7 @@ PASS2 case 169: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2731 "parser.y" {PASS12 (yyval.code)=0;} @@ -5975,6 +6292,7 @@ PASS2 case 170: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2732 "parser.y" {PASS12 (yyval.code)=0;} @@ -5985,6 +6303,7 @@ PASS2 case 171: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2735 "parser.y" { @@ -5996,11 +6315,11 @@ PASS12 varinfo_t* info = 0; if(state->cls) { - memberinfo_t*i = registry_findmember(state->cls->info, ns.name, (yyvsp[(1) - (3)].id), 1); + memberinfo_t*i = registry_findmember(state->cls->info, ns.name, (yyvsp[(1) - (3)].id), 1, slotstate_flags->flags&FLAG_STATIC); if(i) { check_override(i, flags); } - info = varinfo_register_onclass(state->cls->info, ns.access, ns.name, (yyvsp[(1) - (3)].id)); + info = varinfo_register_onclass(state->cls->info, ns.access, ns.name, (yyvsp[(1) - (3)].id), slotstate_flags->flags&FLAG_STATIC); } else { slotinfo_t*i = registry_find(state->package, (yyvsp[(1) - (3)].id)); if(i) { @@ -6074,6 +6393,7 @@ PASS12 case 172: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2818 "parser.y" {(yyval.constant)=0;} @@ -6084,6 +6404,7 @@ PASS12 case 173: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2819 "parser.y" { @@ -6100,6 +6421,7 @@ PASS12 case 174: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2828 "parser.y" {(yyval.constant) = constant_new_int((yyvsp[(1) - (1)].number_int));} @@ -6110,6 +6432,7 @@ PASS12 case 175: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2829 "parser.y" { @@ -6122,6 +6445,7 @@ PASS12 case 176: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2832 "parser.y" {(yyval.constant) = constant_new_float((yyvsp[(1) - (1)].number_float));} @@ -6132,6 +6456,7 @@ PASS12 case 177: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2833 "parser.y" {(yyval.constant) = constant_new_string2((yyvsp[(1) - (1)].str).str,(yyvsp[(1) - (1)].str).len);free((char*)(yyvsp[(1) - (1)].str).str);} @@ -6142,6 +6467,7 @@ PASS12 case 178: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2834 "parser.y" {(yyval.constant) = constant_new_true((yyvsp[(1) - (1)].token));} @@ -6152,6 +6478,7 @@ PASS12 case 179: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2835 "parser.y" {(yyval.constant) = constant_new_false((yyvsp[(1) - (1)].token));} @@ -6162,6 +6489,7 @@ PASS12 case 180: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2836 "parser.y" {(yyval.constant) = constant_new_null((yyvsp[(1) - (1)].token));} @@ -6172,6 +6500,7 @@ PASS12 case 181: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2837 "parser.y" {(yyval.constant) = constant_new_undefined((yyvsp[(1) - (1)].token));} @@ -6182,6 +6511,7 @@ PASS12 case 182: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2838 "parser.y" {(yyval.constant) = constant_new_float(__builtin_nan(""));} @@ -6192,6 +6522,7 @@ PASS12 case 183: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2851 "parser.y" { @@ -6211,6 +6542,7 @@ PASS12 case 184: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2862 "parser.y" {PASS_ALWAYS if(!xml_level++) tokenizer_begin_xml();} @@ -6221,6 +6553,7 @@ PASS12 case 185: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2863 "parser.y" {PASS_ALWAYS tokenizer_begin_xmltext();} @@ -6231,6 +6564,7 @@ PASS12 case 186: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2864 "parser.y" {PASS_ALWAYS if(!--xml_level) tokenizer_end_xml(); else tokenizer_begin_xmltext();} @@ -6241,6 +6575,7 @@ PASS12 case 187: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2866 "parser.y" {PASS_ALWAYS tokenizer_begin_xmltext();} @@ -6251,6 +6586,7 @@ PASS12 case 188: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2866 "parser.y" { @@ -6263,6 +6599,7 @@ PASS12 case 189: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2869 "parser.y" {PASS_ALWAYS tokenizer_begin_xml();} @@ -6273,6 +6610,7 @@ PASS12 case 190: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2869 "parser.y" { @@ -6285,6 +6623,7 @@ PASS12 case 191: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2872 "parser.y" {(yyval.node)=mkstringnode("");} @@ -6295,6 +6634,7 @@ PASS12 case 192: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2873 "parser.y" { @@ -6307,6 +6647,7 @@ PASS12 case 193: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2876 "parser.y" { @@ -6321,6 +6662,7 @@ PASS12 case 194: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2881 "parser.y" { @@ -6333,6 +6675,7 @@ PASS12 case 195: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2884 "parser.y" { @@ -6345,6 +6688,7 @@ PASS12 case 196: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2887 "parser.y" { @@ -6357,6 +6701,7 @@ PASS12 case 197: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2890 "parser.y" { @@ -6369,6 +6714,7 @@ PASS12 case 198: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2893 "parser.y" { @@ -6381,6 +6727,7 @@ PASS12 case 199: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2897 "parser.y" { @@ -6393,6 +6740,7 @@ PASS12 case 200: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2900 "parser.y" { @@ -6405,6 +6753,7 @@ PASS12 case 201: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2904 "parser.y" { @@ -6418,6 +6767,7 @@ PASS12 case 202: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2908 "parser.y" { @@ -6432,6 +6782,7 @@ PASS12 case 203: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2913 "parser.y" { @@ -6446,6 +6797,7 @@ PASS12 case 204: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2919 "parser.y" { @@ -6458,6 +6810,7 @@ PASS12 case 205: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2922 "parser.y" { @@ -6470,6 +6823,7 @@ PASS12 case 206: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2925 "parser.y" { @@ -6482,6 +6836,7 @@ PASS12 case 207: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2928 "parser.y" { @@ -6496,6 +6851,7 @@ PASS12 case 208: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2933 "parser.y" { @@ -6508,6 +6864,7 @@ PASS12 case 209: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2936 "parser.y" { @@ -6520,6 +6877,7 @@ PASS12 case 210: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2939 "parser.y" { @@ -6535,6 +6893,7 @@ PASS12 case 211: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2949 "parser.y" { @@ -6548,6 +6907,7 @@ PASS12 case 212: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2953 "parser.y" { @@ -6561,6 +6921,7 @@ PASS12 case 213: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2959 "parser.y" { @@ -6576,6 +6937,7 @@ PASS12 case 214: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2965 "parser.y" { @@ -6591,6 +6953,7 @@ PASS12 case 215: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2973 "parser.y" { @@ -6605,6 +6968,7 @@ PASS12 case 216: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2978 "parser.y" { @@ -6619,6 +6983,7 @@ PASS12 case 217: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2984 "parser.y" { @@ -6636,6 +7001,7 @@ PASS12 case 218: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 2992 "parser.y" { @@ -6653,6 +7019,7 @@ PASS12 case 221: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3002 "parser.y" {PASS12 (yyval.token)=0;} @@ -6663,6 +7030,7 @@ PASS12 case 222: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3005 "parser.y" {PASS12 startfunction(&(yyvsp[(1) - (9)].flags),(yyvsp[(3) - (9)].token),(yyvsp[(4) - (9)].id),&(yyvsp[(6) - (9)].params),(yyvsp[(8) - (9)].classinfo));} @@ -6673,6 +7041,7 @@ PASS12 case 223: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3006 "parser.y" { @@ -6696,6 +7065,7 @@ PASS12 case 225: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3022 "parser.y" {PASS12 (yyval.id)=0;} @@ -6706,6 +7076,7 @@ PASS12 case 226: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3024 "parser.y" {PASS12 innerfunction((yyvsp[(2) - (7)].id),&(yyvsp[(4) - (7)].params),(yyvsp[(6) - (7)].classinfo));} @@ -6716,6 +7087,7 @@ PASS12 case 227: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3025 "parser.y" { @@ -6743,6 +7115,7 @@ PASS12 case 228: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3047 "parser.y" { @@ -6770,6 +7143,7 @@ PASS12 case 229: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3066 "parser.y" { @@ -6792,6 +7166,7 @@ PASS12 case 232: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3083 "parser.y" {PASS12 (yyval.classinfo_list)=list_new();list_append((yyval.classinfo_list), (yyvsp[(1) - (1)].classinfo));} @@ -6802,6 +7177,7 @@ PASS12 case 233: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3084 "parser.y" {PASS12 (yyval.classinfo_list)=(yyvsp[(1) - (3)].classinfo_list);list_append((yyval.classinfo_list),(yyvsp[(3) - (3)].classinfo));} @@ -6812,6 +7188,7 @@ PASS12 case 234: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3086 "parser.y" {PASS12 (yyval.classinfo)=(yyvsp[(1) - (1)].classinfo);} @@ -6822,6 +7199,7 @@ PASS12 case 235: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3087 "parser.y" {PASS12 (yyval.classinfo)=TYPE_ANY;} @@ -6832,6 +7210,7 @@ PASS12 case 236: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3088 "parser.y" {PASS12 (yyval.classinfo)=TYPE_VOID;} @@ -6842,6 +7221,7 @@ PASS12 case 237: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3097 "parser.y" {PASS12 (yyval.classinfo)=(yyvsp[(2) - (2)].classinfo);} @@ -6852,6 +7232,7 @@ PASS12 case 238: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3098 "parser.y" {PASS12 (yyval.classinfo)=0;} @@ -6862,6 +7243,7 @@ PASS12 case 239: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3102 "parser.y" {(yyval.value_list).cc=0;(yyval.value_list).number=0;} @@ -6872,6 +7254,7 @@ PASS12 case 240: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3103 "parser.y" {(yyval.value_list)=(yyvsp[(2) - (3)].value_list);} @@ -6882,6 +7265,7 @@ PASS12 case 241: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3105 "parser.y" {(yyval.value_list).cc=0;(yyval.value_list).number=0;} @@ -6892,6 +7276,7 @@ PASS12 case 244: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3109 "parser.y" {(yyval.value_list).number=1; @@ -6904,6 +7289,7 @@ PASS12 case 245: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3113 "parser.y" {(yyval.value_list) = (yyvsp[(1) - (2)].value_list);} @@ -6914,6 +7300,7 @@ PASS12 case 246: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3114 "parser.y" { @@ -6927,6 +7314,7 @@ PASS12 case 248: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3120 "parser.y" { @@ -6978,6 +7366,7 @@ PASS12 case 249: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3167 "parser.y" { @@ -7036,6 +7425,7 @@ PASS12 case 250: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3217 "parser.y" { @@ -7065,6 +7455,7 @@ PASS12 case 251: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3238 "parser.y" { @@ -7095,6 +7486,7 @@ PASS12 case 252: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3260 "parser.y" { @@ -7107,6 +7499,7 @@ PASS12 case 253: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3263 "parser.y" { @@ -7120,6 +7513,7 @@ PASS12 case 254: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3270 "parser.y" { @@ -7132,6 +7526,7 @@ PASS12 case 255: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3273 "parser.y" { @@ -7144,6 +7539,7 @@ PASS12 case 256: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3276 "parser.y" { @@ -7156,6 +7552,7 @@ PASS12 case 257: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3279 "parser.y" { @@ -7168,6 +7565,7 @@ PASS12 case 258: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3282 "parser.y" { @@ -7180,6 +7578,7 @@ PASS12 case 259: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3285 "parser.y" { @@ -7193,6 +7592,7 @@ PASS12 case 260: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3290 "parser.y" {(yyval.value_list).cc=0;(yyval.value_list).number=0;} @@ -7203,6 +7603,7 @@ PASS12 case 261: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3291 "parser.y" {(yyval.value_list)=(yyvsp[(1) - (1)].value_list);} @@ -7213,6 +7614,7 @@ PASS12 case 262: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3293 "parser.y" {(yyval.code)=abc_pushstring(0,(yyvsp[(1) - (1)].id));} @@ -7223,6 +7625,7 @@ PASS12 case 263: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3294 "parser.y" {(yyval.code)=abc_pushstring2(0,&(yyvsp[(1) - (1)].str));} @@ -7233,6 +7636,7 @@ PASS12 case 264: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3295 "parser.y" {syntaxerror("dictionary keys must be strings");} @@ -7243,6 +7647,7 @@ PASS12 case 265: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3296 "parser.y" {syntaxerror("dictionary keys must be strings");} @@ -7253,6 +7658,7 @@ PASS12 case 266: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3297 "parser.y" {syntaxerror("dictionary keys must be strings");} @@ -7263,6 +7669,7 @@ PASS12 case 267: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3299 "parser.y" { @@ -7278,6 +7685,7 @@ PASS12 case 268: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3305 "parser.y" { @@ -7293,6 +7701,7 @@ PASS12 case 269: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3314 "parser.y" {(yyval.node) = mkcodenode((yyvsp[(1) - (1)].value));} @@ -7303,6 +7712,7 @@ PASS12 case 270: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3315 "parser.y" {(yyval.node) = mkcodenode((yyvsp[(1) - (1)].value));} @@ -7313,6 +7723,7 @@ PASS12 case 271: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3316 "parser.y" {(yyval.node) = mkcodenode((yyvsp[(1) - (1)].value));} @@ -7323,6 +7734,7 @@ PASS12 case 272: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3317 "parser.y" {(yyval.node) = mkcodenode((yyvsp[(1) - (1)].value));} @@ -7333,6 +7745,7 @@ PASS12 case 273: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3318 "parser.y" {(yyval.node) = mkcodenode((yyvsp[(1) - (1)].value));} @@ -7343,6 +7756,7 @@ PASS12 case 274: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3319 "parser.y" {(yyval.node) = (yyvsp[(1) - (1)].node);} @@ -7353,6 +7767,7 @@ PASS12 case 275: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3321 "parser.y" { @@ -7365,6 +7780,7 @@ PASS12 case 276: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3325 "parser.y" { @@ -7377,6 +7793,7 @@ PASS12 case 277: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3330 "parser.y" { @@ -7403,6 +7820,7 @@ PASS12 case 278: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3348 "parser.y" { @@ -7421,6 +7839,7 @@ PASS12 case 279: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3359 "parser.y" { @@ -7438,6 +7857,7 @@ PASS12 case 280: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3369 "parser.y" { @@ -7455,6 +7875,7 @@ PASS12 case 281: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3378 "parser.y" {(yyval.node) = mknode2(&node_lt,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));} @@ -7465,6 +7886,7 @@ PASS12 case 282: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3379 "parser.y" {(yyval.node) = mknode2(&node_gt,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));} @@ -7475,6 +7897,7 @@ PASS12 case 283: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3380 "parser.y" {(yyval.node) = mknode2(&node_le,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));} @@ -7485,6 +7908,7 @@ PASS12 case 284: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3381 "parser.y" {(yyval.node) = mknode2(&node_ge,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));} @@ -7495,6 +7919,7 @@ PASS12 case 285: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3382 "parser.y" {(yyval.node) = mknode2(&node_eqeq,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));} @@ -7505,6 +7930,7 @@ PASS12 case 286: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3383 "parser.y" {(yyval.node) = mknode2(&node_eqeqeq,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));} @@ -7515,6 +7941,7 @@ PASS12 case 287: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3384 "parser.y" {(yyval.node) = mknode2(&node_noteqeq,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));} @@ -7525,6 +7952,7 @@ PASS12 case 288: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3385 "parser.y" {(yyval.node) = mknode2(&node_noteq,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));} @@ -7535,6 +7963,7 @@ PASS12 case 289: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3386 "parser.y" {(yyval.node) = mknode2(&node_oror,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));} @@ -7545,6 +7974,7 @@ PASS12 case 290: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3387 "parser.y" {(yyval.node) = mknode2(&node_andand,(yyvsp[(1) - (3)].node),(yyvsp[(3) - (3)].node));} @@ -7555,6 +7985,7 @@ PASS12 case 291: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3388 "parser.y" {(yyval.node) = mknode1(&node_not, (yyvsp[(2) - (2)].node));} @@ -7565,6 +7996,7 @@ PASS12 case 292: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3389 "parser.y" {(yyval.node) = mknode1(&node_bitnot, (yyvsp[(2) - (2)].node));} @@ -7575,6 +8007,7 @@ PASS12 case 293: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3390 "parser.y" {(yyval.node) = mknode2(&node_bitand, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7585,6 +8018,7 @@ PASS12 case 294: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3391 "parser.y" {(yyval.node) = mknode2(&node_bitxor, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7595,6 +8029,7 @@ PASS12 case 295: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3392 "parser.y" {(yyval.node) = mknode2(&node_bitor, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7605,6 +8040,7 @@ PASS12 case 296: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3393 "parser.y" {(yyval.node) = mknode2(&node_shr, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7615,6 +8051,7 @@ PASS12 case 297: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3394 "parser.y" {(yyval.node) = mknode2(&node_ushr, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7625,6 +8062,7 @@ PASS12 case 298: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3395 "parser.y" {(yyval.node) = mknode2(&node_shl, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7635,6 +8073,7 @@ PASS12 case 299: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3396 "parser.y" {(yyval.node) = mknode2(&node_div, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7645,6 +8084,7 @@ PASS12 case 300: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3397 "parser.y" {(yyval.node) = mknode2(&node_mod, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7655,6 +8095,7 @@ PASS12 case 301: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3398 "parser.y" {(yyval.node) = mknode2(&node_plus, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7665,6 +8106,7 @@ PASS12 case 302: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3399 "parser.y" {(yyval.node) = mknode2(&node_minus, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7675,6 +8117,7 @@ PASS12 case 303: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3400 "parser.y" {(yyval.node) = mknode2(&node_multiply, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7685,6 +8128,7 @@ PASS12 case 304: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3401 "parser.y" {(yyval.node) = mknode2(&node_in, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7695,6 +8139,7 @@ PASS12 case 305: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3402 "parser.y" {(yyval.node) = mknode2(&node_as, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7705,6 +8150,7 @@ PASS12 case 306: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3403 "parser.y" {(yyval.node) = mknode2(&node_instanceof, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7715,6 +8161,7 @@ PASS12 case 307: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3404 "parser.y" {(yyval.node) = mknode2(&node_is, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7725,6 +8172,7 @@ PASS12 case 308: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3405 "parser.y" {(yyval.node) = mknode1(&node_typeof, (yyvsp[(2) - (2)].node));} @@ -7735,6 +8183,7 @@ PASS12 case 309: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3406 "parser.y" {(yyval.node) = mknode1(&node_void, (yyvsp[(2) - (2)].node));} @@ -7745,6 +8194,7 @@ PASS12 case 310: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3407 "parser.y" { (yyval.node) = mkconstnode(constant_new_undefined());} @@ -7755,6 +8205,7 @@ PASS12 case 311: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3408 "parser.y" { (yyval.node)=(yyvsp[(2) - (3)].node);} @@ -7765,6 +8216,7 @@ PASS12 case 312: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3409 "parser.y" {(yyval.node) = mknode1(&node_neg, (yyvsp[(2) - (2)].node));} @@ -7775,6 +8227,7 @@ PASS12 case 313: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3410 "parser.y" {(yyval.node) = mknode2(&node_arraylookup, (yyvsp[(1) - (4)].node),(yyvsp[(3) - (4)].node));} @@ -7785,6 +8238,7 @@ PASS12 case 314: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3411 "parser.y" {(yyval.node) = mknode2(&node_muleq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7795,6 +8249,7 @@ PASS12 case 315: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3412 "parser.y" {(yyval.node) = mknode2(&node_modeq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7805,6 +8260,7 @@ PASS12 case 316: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3413 "parser.y" {(yyval.node) = mknode2(&node_shleq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7815,6 +8271,7 @@ PASS12 case 317: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3414 "parser.y" {(yyval.node) = mknode2(&node_shreq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7825,6 +8282,7 @@ PASS12 case 318: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3415 "parser.y" {(yyval.node) = mknode2(&node_ushreq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7835,6 +8293,7 @@ PASS12 case 319: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3416 "parser.y" { (yyval.node) = mknode2(&node_diveq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7845,6 +8304,7 @@ PASS12 case 320: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3417 "parser.y" { (yyval.node) = mknode2(&node_bitoreq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7855,6 +8315,7 @@ PASS12 case 321: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3418 "parser.y" { (yyval.node) = mknode2(&node_bitxoreq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7865,6 +8326,7 @@ PASS12 case 322: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3419 "parser.y" { (yyval.node) = mknode2(&node_bitandeq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7875,6 +8337,7 @@ PASS12 case 323: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3420 "parser.y" { (yyval.node) = mknode2(&node_pluseq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7885,6 +8348,7 @@ PASS12 case 324: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3421 "parser.y" { (yyval.node) = mknode2(&node_minuseq, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7895,6 +8359,7 @@ PASS12 case 325: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3422 "parser.y" { (yyval.node) = mknode2(&node_assign, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));} @@ -7905,6 +8370,7 @@ PASS12 case 326: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3423 "parser.y" { (yyval.node) = mknode3(&node_tenary, (yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node));} @@ -7915,6 +8381,7 @@ PASS12 case 327: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3425 "parser.y" { (yyval.node) = mknode1(&node_rplusplus, (yyvsp[(1) - (2)].node));} @@ -7925,6 +8392,7 @@ PASS12 case 328: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3426 "parser.y" { (yyval.node) = mknode1(&node_rminusminus, (yyvsp[(1) - (2)].node));} @@ -7935,6 +8403,7 @@ PASS12 case 329: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3427 "parser.y" {(yyval.node) = mknode1(&node_lplusplus, (yyvsp[(2) - (2)].node)); } @@ -7945,6 +8414,7 @@ PASS12 case 330: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3428 "parser.y" {(yyval.node) = mknode1(&node_lminusminus, (yyvsp[(2) - (2)].node)); } @@ -7955,13 +8425,14 @@ PASS12 case 331: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3431 "parser.y" { if(!state->cls->info) syntaxerror("super keyword not allowed outside a class"); classinfo_t*t = state->cls->info->superclass; if(!t) t = TYPE_OBJECT; - memberinfo_t*f = findmember_nsset(t, (yyvsp[(3) - (3)].id), 1); + memberinfo_t*f = findmember_nsset(t, (yyvsp[(3) - (3)].id), 1, 0); MEMBER_MULTINAME(m, f, (yyvsp[(3) - (3)].id)); typedcode_t v; v.c = 0; @@ -7977,6 +8448,7 @@ PASS12 case 332: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3445 "parser.y" { @@ -7993,6 +8465,7 @@ PASS12 case 333: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3453 "parser.y" {PASS12 new_state();state->xmlfilter=1;} @@ -8003,6 +8476,7 @@ PASS12 case 334: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3453 "parser.y" { @@ -8065,6 +8539,7 @@ PASS12 case 335: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3507 "parser.y" {(yyval.id)=(yyvsp[(1) - (1)].id);} @@ -8075,6 +8550,7 @@ PASS12 case 336: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3508 "parser.y" {(yyval.id)="*";} @@ -8085,6 +8561,7 @@ PASS12 case 337: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3509 "parser.y" {(yyval.id)=(char*)(yyvsp[(1) - (1)].id);} @@ -8095,6 +8572,7 @@ PASS12 case 339: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ #line 3511 "parser.y" {(yyval.id)="*";} @@ -8105,25 +8583,11 @@ PASS12 case 340: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ -#line 3519 "parser.y" +#line 3551 "parser.y" { - typedcode_t v = node_read((yyvsp[(1) - (5)].node)); - typedcode_t w = node_read(resolve_identifier((yyvsp[(3) - (5)].id))); - v.c = code_append(v.c, w.c); - if(!TYPE_IS_NAMESPACE(w.t)) { - as3_softwarning("%s might not be a namespace", (yyvsp[(3) - (5)].id)); - } - v.c = converttype(v.c, w.t, TYPE_NAMESPACE); - multiname_t m = {RTQNAME, 0, 0, (yyvsp[(5) - (5)].id)}; - v.c = abc_getproperty2(v.c, &m); - if(TYPE_IS_XML(v.t)) { - v.t = TYPE_XMLLIST; - } else { - v.c = abc_coerce_a(v.c); - v.t = TYPE_ANY; - } - (yyval.node) = mkcodenode(v); + (yyval.node) = get_descendants((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].id), (yyvsp[(5) - (5)].id), 0, 0); } } break; @@ -8132,8 +8596,9 @@ PASS12 case 341: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ -#line 3537 "parser.y" +#line 3554 "parser.y" { typedcode_t v = node_read((yyvsp[(1) - (3)].node)); multiname_t m = {MULTINAME, 0, &nopackage_namespace_set, (yyvsp[(3) - (3)].id)}; @@ -8148,8 +8613,22 @@ PASS12 case 342: if(as3_pass==2) { + +/* Line 1464 of skeleton.m4 */ +#line 3561 "parser.y" + { + (yyval.node) = get_descendants((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].id), (yyvsp[(5) - (5)].id), 1, 0); +} + } + break; + + + + case 343: + if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ -#line 3544 "parser.y" +#line 3564 "parser.y" { typedcode_t v = node_read((yyvsp[(1) - (5)].node)); typedcode_t w = node_read((yyvsp[(4) - (5)].node)); @@ -8165,10 +8644,11 @@ PASS12 - case 343: + case 344: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ -#line 3555 "parser.y" +#line 3575 "parser.y" { typedcode_t v = node_read((yyvsp[(1) - (4)].node)); multiname_t m = {MULTINAMEA, 0, &nopackage_namespace_set, (yyvsp[(4) - (4)].id)}; @@ -8181,10 +8661,24 @@ PASS12 - case 344: + case 345: + if(as3_pass==2) { + +/* Line 1464 of skeleton.m4 */ +#line 3583 "parser.y" + { + (yyval.node) = get_descendants((yyvsp[(1) - (6)].node), (yyvsp[(4) - (6)].id), (yyvsp[(6) - (6)].id), 0, 1); +} + } + break; + + + + case 346: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ -#line 3562 "parser.y" +#line 3587 "parser.y" { typedcode_t v = node_read((yyvsp[(1) - (4)].node)); multiname_t m = {MULTINAMEA, 0, &nopackage_namespace_set, (yyvsp[(4) - (4)].id)}; @@ -8197,10 +8691,24 @@ PASS12 - case 345: + case 347: + if(as3_pass==2) { + +/* Line 1464 of skeleton.m4 */ +#line 3594 "parser.y" + { + (yyval.node) = get_descendants((yyvsp[(1) - (6)].node), (yyvsp[(4) - (6)].id), (yyvsp[(6) - (6)].id), 1, 1); +} + } + break; + + + + case 348: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ -#line 3569 "parser.y" +#line 3598 "parser.y" { typedcode_t v = node_read((yyvsp[(1) - (6)].node)); typedcode_t w = node_read((yyvsp[(5) - (6)].node)); @@ -8216,10 +8724,11 @@ PASS12 - case 346: + case 349: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ -#line 3579 "parser.y" +#line 3608 "parser.y" { typedcode_t v = node_read((yyvsp[(1) - (6)].node)); typedcode_t w = node_read((yyvsp[(5) - (6)].node)); @@ -8235,10 +8744,11 @@ PASS12 - case 347: + case 350: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ -#line 3590 "parser.y" +#line 3619 "parser.y" { typedcode_t v1 = node_read((yyvsp[(1) - (3)].node)); (yyval.value).c = v1.c; @@ -8248,7 +8758,7 @@ PASS12 t = t->data; is_static = 1; } - if(TYPE_IS_XML(t)) { + if(TYPE_IS_XML(t) && !findmember_nsset(t, (yyvsp[(3) - (3)].id), 1, is_static)) { multiname_t m = {MULTINAME, 0, &nopackage_namespace_set, (yyvsp[(3) - (3)].id)}; (yyval.value).c = abc_getproperty2((yyval.value).c, &m); (yyval.value).c = abc_coerce_a((yyval.value).c); @@ -8257,7 +8767,7 @@ PASS12 if(t->subtype==INFOTYPE_UNRESOLVED) { syntaxerror("syntaxerror: trying to resolve property '%s' on incomplete object '%s'", (yyvsp[(3) - (3)].id), t->name); } - memberinfo_t*f = findmember_nsset(t, (yyvsp[(3) - (3)].id), 1); + memberinfo_t*f = findmember_nsset(t, (yyvsp[(3) - (3)].id), 1, is_static); char noslot = 0; if(f && !is_static != !(f->flags&FLAG_STATIC)) noslot=1; @@ -8308,10 +8818,25 @@ PASS12 - case 348: + case 351: if(as3_pass==2) { + +/* Line 1464 of skeleton.m4 */ +#line 3816 "parser.y" + { + PASS2 + (yyval.node) = resolve_identifier((yyvsp[(1) - (1)].id)); +} + } + break; + + + + case 352: + if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ -#line 3770 "parser.y" +#line 3820 "parser.y" { PASS1 /* Queue unresolved identifiers for checking against the parent @@ -8339,10 +8864,11 @@ PASS12 - case 349: + case 353: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ -#line 3804 "parser.y" +#line 3854 "parser.y" { PASS12 NEW(namespace_decl_t,n); @@ -8355,10 +8881,11 @@ PASS12 - case 350: + case 354: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ -#line 3811 "parser.y" +#line 3861 "parser.y" { PASS12 NEW(namespace_decl_t,n); @@ -8371,10 +8898,11 @@ PASS12 - case 351: + case 355: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ -#line 3818 "parser.y" +#line 3868 "parser.y" { PASS12 NEW(namespace_decl_t,n); @@ -8387,13 +8915,14 @@ PASS12 - case 352: + case 356: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ -#line 3825 "parser.y" +#line 3875 "parser.y" { PASS12 - trie_put(active_namespaces, (yyvsp[(2) - (2)].namespace_decl)->name, (void*)(yyvsp[(2) - (2)].namespace_decl)->url); + trie_put(active_namespaces, (unsigned char*)(yyvsp[(2) - (2)].namespace_decl)->name, (void*)(yyvsp[(2) - (2)].namespace_decl)->url); namespace_t access = modifiers2access(&(yyvsp[(1) - (2)].flags)); varinfo_t* var = varinfo_register_global(access.access, state->package, (yyvsp[(2) - (2)].namespace_decl)->name); @@ -8417,23 +8946,26 @@ PASS12 - case 353: + case 357: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ -#line 3848 "parser.y" +#line 3898 "parser.y" { - as3_warning("default xml namespaces not supported yet"); (yyval.code) = 0; + (yyval.code) = code_append((yyval.code), node_read((yyvsp[(4) - (4)].node)).c); + (yyval.code) = abc_dxnslate((yyval.code)); } } break; - case 354: + case 358: if(as3_pass==2) { + /* Line 1464 of skeleton.m4 */ -#line 3853 "parser.y" +#line 3904 "parser.y" { PASS12 const char*url = (yyvsp[(3) - (3)].classinfo)->name; @@ -8451,7 +8983,7 @@ PASS12 syntaxerror("%s.%s is not a namespace", (yyvsp[(3) - (3)].classinfo)->package, (yyvsp[(3) - (3)].classinfo)->name); url = s->value->ns->name; - trie_put(active_namespaces, (yyvsp[(3) - (3)].classinfo)->name, (void*)url); + trie_put(active_namespaces, (unsigned char*)(yyvsp[(3) - (3)].classinfo)->name, (void*)url); add_active_url(url); (yyval.code)=0; } @@ -8460,8 +8992,9 @@ PASS12 + /* Line 1464 of skeleton.m4 */ -#line 8465 "parser.tab.c" +#line 8998 "parser.tab.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);