diff --git a/ext/phalcon/mvc/view/engine/volt/base.c b/ext/phalcon/mvc/view/engine/volt/base.c index d54a08ce734..a28bc32409e 100644 --- a/ext/phalcon/mvc/view/engine/volt/base.c +++ b/ext/phalcon/mvc/view/engine/volt/base.c @@ -80,6 +80,12 @@ const phvolt_token_names phvolt_tokens[] = { SL("EXTENDS"), PHVOLT_T_EXTENDS }, { SL("IS"), PHVOLT_T_IS }, { SL("DEFINED"), PHVOLT_T_DEFINED }, + { SL("EMPTY"), PHVOLT_T_EMPTY }, + { SL("EVEN"), PHVOLT_T_EVEN }, + { SL("ODD"), PHVOLT_T_ODD }, + { SL("NUMERIC"), PHVOLT_T_NUMERIC }, + { SL("SCALAR"), PHVOLT_T_SCALAR }, + { SL("ITERABLE"), PHVOLT_T_ITERABLE }, { SL("INCLUDE"), PHVOLT_T_INCLUDE }, { SL("DO"), PHVOLT_T_DO }, { SL("WHITESPACE"), PHVOLT_T_IGNORE }, @@ -245,6 +251,11 @@ int phvolt_internal_parse_view(zval **result, zval *view_code, zval *template_pa /** Start the reentrant parser */ phvolt_parser = phvolt_Alloc(phvolt_wrapper_alloc); + if (unlikely(!phvolt_parser)) { + MAKE_STD_ZVAL(*error_msg); + ZVAL_STRING(*error_msg, "Memory allocation error", 1); + return FAILURE; + } parser_status = emalloc(sizeof(phvolt_parser_status)); state = emalloc(sizeof(phvolt_scanner_state)); @@ -595,6 +606,30 @@ int phvolt_internal_parse_view(zval **result, zval *view_code, zval *template_pa phvolt_(phvolt_parser, PHVOLT_DEFINED, NULL, parser_status); break; + case PHVOLT_T_EMPTY: + phvolt_(phvolt_parser, PHVOLT_EMPTY, NULL, parser_status); + break; + + case PHVOLT_T_EVEN: + phvolt_(phvolt_parser, PHVOLT_EVEN, NULL, parser_status); + break; + + case PHVOLT_T_ODD: + phvolt_(phvolt_parser, PHVOLT_ODD, NULL, parser_status); + break; + + case PHVOLT_T_NUMERIC: + phvolt_(phvolt_parser, PHVOLT_NUMERIC, NULL, parser_status); + break; + + case PHVOLT_T_SCALAR: + phvolt_(phvolt_parser, PHVOLT_SCALAR, NULL, parser_status); + break; + + case PHVOLT_T_ITERABLE: + phvolt_(phvolt_parser, PHVOLT_ITERABLE, NULL, parser_status); + break; + case PHVOLT_T_DO: phvolt_(phvolt_parser, PHVOLT_DO, NULL, parser_status); break; diff --git a/ext/phalcon/mvc/view/engine/volt/generate b/ext/phalcon/mvc/view/engine/volt/generate index 5be2d351ced..20cdab7cce4 100755 --- a/ext/phalcon/mvc/view/engine/volt/generate +++ b/ext/phalcon/mvc/view/engine/volt/generate @@ -1,4 +1,9 @@ -#! /bin/sh +if [ ! -f lemon ]; then + gcc -O2 lemon.c -o lemon +fi +rm -f *.o +rm -f *.lo +re2c -b -o scanner.c scanner.re && ./lemon -s -q parser.lemon && cat base.c >> parser.c +sed -i 's!^#line.*$$!/* & */!g' scanner.c +sed -i 's!^#line.*$$!/* & */!g' parser.c -make clean -make all diff --git a/ext/phalcon/mvc/view/engine/volt/parser.c b/ext/phalcon/mvc/view/engine/volt/parser.c index 82c6711c14b..80bcd9ce588 100644 --- a/ext/phalcon/mvc/view/engine/volt/parser.c +++ b/ext/phalcon/mvc/view/engine/volt/parser.c @@ -4,7 +4,7 @@ /* First off, code is include which follows the "include" declaration ** in the input file. */ #include -// 42 "parser.lemon" +#line 42 "parser.lemon" #ifdef HAVE_CONFIG_H @@ -31,7 +31,7 @@ static zval *phvolt_ret_literal_zval(int type, phvolt_parser_token *T, phvolt_sc zval *ret; MAKE_STD_ZVAL(ret); - array_init(ret); + array_init_size(ret, 5); add_assoc_long(ret, "type", type); if (T) { add_assoc_stringl(ret, "value", T->token, T->token_len, 0); @@ -50,7 +50,7 @@ static zval *phvolt_ret_if_statement(zval *expr, zval *true_statements, zval *fa zval *ret; MAKE_STD_ZVAL(ret); - array_init(ret); + array_init_size(ret, 7); add_assoc_long(ret, "type", PHVOLT_T_IF); add_assoc_zval(ret, "expr", expr); @@ -73,7 +73,7 @@ static zval *phvolt_ret_elseif_statement(zval *expr, phvolt_scanner_state *state zval *ret; MAKE_STD_ZVAL(ret); - array_init(ret); + array_init_size(ret, 5); add_assoc_long(ret, "type", PHVOLT_T_ELSEIF); add_assoc_zval(ret, "expr", expr); @@ -89,7 +89,7 @@ static zval *phvolt_ret_elsefor_statement(phvolt_scanner_state *state) zval *ret; MAKE_STD_ZVAL(ret); - array_init(ret); + array_init_size(ret, 4); add_assoc_long(ret, "type", PHVOLT_T_ELSEFOR); Z_ADDREF_P(state->active_file); @@ -104,7 +104,7 @@ static zval *phvolt_ret_for_statement(phvolt_parser_token *variable, phvolt_pars zval *ret; MAKE_STD_ZVAL(ret); - array_init(ret); + array_init_size(ret, 9); add_assoc_long(ret, "type", PHVOLT_T_FOR); add_assoc_stringl(ret, "variable", variable->token, variable->token_len, 0); @@ -116,7 +116,6 @@ static zval *phvolt_ret_for_statement(phvolt_parser_token *variable, phvolt_pars } add_assoc_zval(ret, "expr", expr); - if (if_expr) { add_assoc_zval(ret, "if_expr", if_expr); } @@ -158,7 +157,7 @@ static zval *phvolt_ret_set_statement(zval *assignments) zval *ret; MAKE_STD_ZVAL(ret); - array_init_size(ret, 2); + array_init_size(ret, 3); add_assoc_long(ret, "type", PHVOLT_T_SET); add_assoc_zval(ret, "assignments", assignments); @@ -209,7 +208,7 @@ static zval *phvolt_ret_block_statement(phvolt_parser_token *name, zval *block_s zval *ret; MAKE_STD_ZVAL(ret); - array_init(ret); + array_init_size(ret, 6); add_assoc_long(ret, "type", PHVOLT_T_BLOCK); @@ -297,7 +296,7 @@ static zval *phvolt_ret_include_statement(zval *path, zval *params, phvolt_scann zval *ret; MAKE_STD_ZVAL(ret); - array_init_size(ret, 4); + array_init_size(ret, 5); add_assoc_long(ret, "type", PHVOLT_T_INCLUDE); @@ -318,7 +317,7 @@ static zval *phvolt_ret_do_statement(zval *expr, phvolt_scanner_state *state) zval *ret; MAKE_STD_ZVAL(ret); - array_init_size(ret, 4); + array_init_size(ret, 5); add_assoc_long(ret, "type", PHVOLT_T_DO); @@ -373,7 +372,7 @@ static zval *phvolt_ret_empty_statement(phvolt_scanner_state *state) MAKE_STD_ZVAL(ret); array_init_size(ret, 3); - add_assoc_long(ret, "type", PHVOLT_T_EMPTY); + add_assoc_long(ret, "type", PHVOLT_T_EMPTY_STATEMENT); Z_ADDREF_P(state->active_file); add_assoc_zval(ret, "file", state->active_file); @@ -567,14 +566,14 @@ static zval *phvolt_ret_macro_call_statement(zval *expr, zval *arguments, zval * } -// 571 "parser.c" +#line 570 "parser.c" /* Next is all token values, in a form suitable for use by makeheaders. ** This section will be null unless lemon is run with the -m switch. */ -/* +/* ** These constants (all generated automatically by the parser generator) ** specify the various kinds of tokens (terminals) that the parser -** understands. +** understands. ** ** Each symbol here is a terminal symbol in the grammar. */ @@ -585,319 +584,330 @@ static zval *phvolt_ret_macro_call_statement(zval *expr, zval *arguments, zval * #endif /* The next thing included is series of defines which control ** various aspects of the generated parser. -** KKCODETYPE is the data type used for storing terminal +** YYCODETYPE is the data type used for storing terminal ** and nonterminal numbers. "unsigned char" is ** used if there are fewer than 250 terminals ** and nonterminals. "int" is used otherwise. -** KKNOCODE is a number of type KKCODETYPE which corresponds +** YYNOCODE is a number of type YYCODETYPE which corresponds ** to no legal terminal or nonterminal number. This -** number is used to fill in empty slots of the hash +** number is used to fill in empty slots of the hash ** table. -** KKFALLBACK If defined, this indicates that one or more tokens +** YYFALLBACK If defined, this indicates that one or more tokens ** have fall-back values which should be used if the ** original value of the token will not parse. -** KKACTIONTYPE is the data type used for storing terminal +** YYACTIONTYPE is the data type used for storing terminal ** and nonterminal numbers. "unsigned char" is ** used if there are fewer than 250 rules and ** states combined. "int" is used otherwise. -** phvolt_KTOKENTYPE is the data type used for minor tokens given +** phvolt_TOKENTYPE is the data type used for minor tokens given ** directly to the parser from the tokenizer. -** KKMINORTYPE is the data type used for all minor tokens. +** YYMINORTYPE is the data type used for all minor tokens. ** This is typically a union of many types, one of -** which is phvolt_KTOKENTYPE. The entry in the union -** for base tokens is called "kk0". -** KKSTACKDEPTH is the maximum depth of the parser's stack. +** which is phvolt_TOKENTYPE. The entry in the union +** for base tokens is called "yy0". +** YYSTACKDEPTH is the maximum depth of the parser's stack. ** phvolt_ARG_SDECL A static variable declaration for the %extra_argument ** phvolt_ARG_PDECL A parameter declaration for the %extra_argument -** phvolt_ARG_STORE Code to store %extra_argument into kkpParser -** phvolt_ARG_FETCH Code to extract %extra_argument from kkpParser -** KKNSTATE the combined number of states. -** KKNRULE the number of rules in the grammar -** KKERRORSYMBOL is the code number of the error symbol. If not +** phvolt_ARG_STORE Code to store %extra_argument into yypParser +** phvolt_ARG_FETCH Code to extract %extra_argument from yypParser +** YYNSTATE the combined number of states. +** YYNRULE the number of rules in the grammar +** YYERRORSYMBOL is the code number of the error symbol. If not ** defined, then do no error processing. */ -#define KKCODETYPE unsigned char -#define KKNOCODE 114 -#define KKACTIONTYPE unsigned short int -#define phvolt_KTOKENTYPE phvolt_parser_token* +#define YYCODETYPE unsigned char +#define YYNOCODE 120 +#define YYACTIONTYPE unsigned short int +#define phvolt_TOKENTYPE phvolt_parser_token* typedef union { - phvolt_KTOKENTYPE kk0; - zval* kk132; - int kk227; -} KKMINORTYPE; -#define KKSTACKDEPTH 100 + phvolt_TOKENTYPE yy0; + zval* yy92; + int yy239; +} YYMINORTYPE; +#define YYSTACKDEPTH 100 #define phvolt_ARG_SDECL phvolt_parser_status *status; #define phvolt_ARG_PDECL ,phvolt_parser_status *status -#define phvolt_ARG_FETCH phvolt_parser_status *status = kkpParser->status -#define phvolt_ARG_STORE kkpParser->status = status -#define KKNSTATE 322 -#define KKNRULE 133 -#define KKERRORSYMBOL 77 -#define KKERRSYMDT kk227 -#define KK_NO_ACTION (KKNSTATE+KKNRULE+2) -#define KK_ACCEPT_ACTION (KKNSTATE+KKNRULE+1) -#define KK_ERROR_ACTION (KKNSTATE+KKNRULE) +#define phvolt_ARG_FETCH phvolt_parser_status *status = yypParser->status +#define phvolt_ARG_STORE yypParser->status = status +#define YYNSTATE 333 +#define YYNRULE 145 +#define YYERRORSYMBOL 83 +#define YYERRSYMDT yy239 +#define YY_NO_ACTION (YYNSTATE+YYNRULE+2) +#define YY_ACCEPT_ACTION (YYNSTATE+YYNRULE+1) +#define YY_ERROR_ACTION (YYNSTATE+YYNRULE) /* Next are that tables used to determine what action to take based on the ** current state and lookahead token. These tables are used to implement ** functions that take a state number and lookahead value and return an -** action integer. +** action integer. ** ** Suppose the action integer is N. Then the action is determined as ** follows ** -** 0 <= N < KKNSTATE Shift N. That is, push the lookahead +** 0 <= N < YYNSTATE Shift N. That is, push the lookahead ** token onto the stack and goto state N. ** -** KKNSTATE <= N < KKNSTATE+KKNRULE Reduce by rule N-KKNSTATE. +** YYNSTATE <= N < YYNSTATE+YYNRULE Reduce by rule N-YYNSTATE. ** -** N == KKNSTATE+KKNRULE A syntax error has occurred. +** N == YYNSTATE+YYNRULE A syntax error has occurred. ** -** N == KKNSTATE+KKNRULE+1 The parser accepts its input. +** N == YYNSTATE+YYNRULE+1 The parser accepts its input. ** -** N == KKNSTATE+KKNRULE+2 No such action. Denotes unused -** slots in the kk_action[] table. +** N == YYNSTATE+YYNRULE+2 No such action. Denotes unused +** slots in the yy_action[] table. ** -** The action table is constructed as a single large table named kk_action[]. +** The action table is constructed as a single large table named yy_action[]. ** Given state S and lookahead X, the action is computed as ** -** kk_action[ kk_shift_ofst[S] + X ] +** yy_action[ yy_shift_ofst[S] + X ] ** -** If the index value kk_shift_ofst[S]+X is out of range or if the value -** kk_lookahead[kk_shift_ofst[S]+X] is not equal to X or if kk_shift_ofst[S] -** is equal to KK_SHIFT_USE_DFLT, it means that the action is not in the table -** and that kk_default[S] should be used instead. +** If the index value yy_shift_ofst[S]+X is out of range or if the value +** yy_lookahead[yy_shift_ofst[S]+X] is not equal to X or if yy_shift_ofst[S] +** is equal to YY_SHIFT_USE_DFLT, it means that the action is not in the table +** and that yy_default[S] should be used instead. ** ** The formula above is for computing the action when the lookahead is ** a terminal symbol. If the lookahead is a non-terminal (as occurs after -** a reduce action) then the kk_reduce_ofst[] array is used in place of -** the kk_shift_ofst[] array and KK_REDUCE_USE_DFLT is used in place of -** KK_SHIFT_USE_DFLT. +** a reduce action) then the yy_reduce_ofst[] array is used in place of +** the yy_shift_ofst[] array and YY_REDUCE_USE_DFLT is used in place of +** YY_SHIFT_USE_DFLT. ** ** The following are the tables generated in this section: ** -** kk_action[] A single table containing all actions. -** kk_lookahead[] A table containing the lookahead for each entry in -** kk_action. Used to detect hash collisions. -** kk_shift_ofst[] For each state, the offset into kk_action for +** yy_action[] A single table containing all actions. +** yy_lookahead[] A table containing the lookahead for each entry in +** yy_action. Used to detect hash collisions. +** yy_shift_ofst[] For each state, the offset into yy_action for ** shifting terminals. -** kk_reduce_ofst[] For each state, the offset into kk_action for +** yy_reduce_ofst[] For each state, the offset into yy_action for ** shifting non-terminals after a reduce. -** kk_default[] Default action for each state. +** yy_default[] Default action for each state. */ -static KKACTIONTYPE kk_action[] = { - /* 0 */ 82, 92, 23, 60, 52, 54, 64, 62, 66, 72, +static YYACTIONTYPE yy_action[] = { + /* 0 */ 82, 92, 23, 60, 52, 54, 66, 62, 64, 72, /* 10 */ 74, 76, 78, 68, 70, 48, 46, 50, 43, 40, - /* 20 */ 56, 89, 58, 84, 87, 88, 96, 80, 288, 162, - /* 30 */ 82, 92, 128, 60, 52, 54, 64, 62, 66, 72, + /* 20 */ 56, 89, 58, 84, 87, 88, 96, 80, 299, 173, + /* 30 */ 82, 92, 108, 60, 52, 54, 66, 62, 64, 72, /* 40 */ 74, 76, 78, 68, 70, 48, 46, 50, 43, 40, - /* 50 */ 56, 89, 58, 84, 87, 88, 96, 80, 244, 213, + /* 50 */ 56, 89, 58, 84, 87, 88, 96, 80, 255, 224, /* 60 */ 48, 46, 50, 43, 40, 56, 89, 58, 84, 87, - /* 70 */ 88, 96, 80, 247, 295, 160, 255, 127, 168, 183, - /* 80 */ 82, 92, 170, 60, 52, 54, 64, 62, 66, 72, + /* 70 */ 88, 96, 80, 258, 306, 171, 266, 179, 194, 333, + /* 80 */ 82, 92, 30, 60, 52, 54, 66, 62, 64, 72, /* 90 */ 74, 76, 78, 68, 70, 48, 46, 50, 43, 40, - /* 100 */ 56, 89, 58, 84, 87, 88, 96, 80, 322, 223, - /* 110 */ 82, 92, 169, 60, 52, 54, 64, 62, 66, 72, + /* 100 */ 56, 89, 58, 84, 87, 88, 96, 80, 32, 234, + /* 110 */ 82, 92, 112, 60, 52, 54, 66, 62, 64, 72, /* 120 */ 74, 76, 78, 68, 70, 48, 46, 50, 43, 40, - /* 130 */ 56, 89, 58, 84, 87, 88, 96, 80, 304, 299, - /* 140 */ 82, 92, 224, 60, 52, 54, 64, 62, 66, 72, + /* 130 */ 56, 89, 58, 84, 87, 88, 96, 80, 315, 310, + /* 140 */ 82, 92, 235, 60, 52, 54, 66, 62, 64, 72, /* 150 */ 74, 76, 78, 68, 70, 48, 46, 50, 43, 40, - /* 160 */ 56, 89, 58, 84, 87, 88, 96, 80, 30, 26, - /* 170 */ 82, 92, 32, 60, 52, 54, 64, 62, 66, 72, + /* 160 */ 56, 89, 58, 84, 87, 88, 96, 80, 181, 26, + /* 170 */ 82, 92, 36, 60, 52, 54, 66, 62, 64, 72, /* 180 */ 74, 76, 78, 68, 70, 48, 46, 50, 43, 40, - /* 190 */ 56, 89, 58, 84, 87, 88, 96, 80, 108, 39, - /* 200 */ 82, 92, 108, 60, 52, 54, 64, 62, 66, 72, + /* 190 */ 56, 89, 58, 84, 87, 88, 96, 80, 180, 39, + /* 200 */ 82, 92, 108, 60, 52, 54, 66, 62, 64, 72, /* 210 */ 74, 76, 78, 68, 70, 48, 46, 50, 43, 40, /* 220 */ 56, 89, 58, 84, 87, 88, 96, 80, 82, 92, - /* 230 */ 94, 60, 52, 54, 64, 62, 66, 72, 74, 76, + /* 230 */ 94, 60, 52, 54, 66, 62, 64, 72, 74, 76, /* 240 */ 78, 68, 70, 48, 46, 50, 43, 40, 56, 89, - /* 250 */ 58, 84, 87, 88, 96, 80, 43, 40, 56, 89, - /* 260 */ 58, 84, 87, 88, 96, 80, 84, 87, 88, 96, - /* 270 */ 80, 91, 112, 128, 107, 82, 92, 276, 60, 52, - /* 280 */ 54, 64, 62, 66, 72, 74, 76, 78, 68, 70, - /* 290 */ 48, 46, 50, 43, 40, 56, 89, 58, 84, 87, - /* 300 */ 88, 96, 80, 89, 58, 84, 87, 88, 96, 80, - /* 310 */ 281, 282, 283, 284, 285, 286, 269, 287, 197, 102, - /* 320 */ 234, 249, 270, 82, 92, 36, 60, 52, 54, 64, - /* 330 */ 62, 66, 72, 74, 76, 78, 68, 70, 48, 46, - /* 340 */ 50, 43, 40, 56, 89, 58, 84, 87, 88, 96, - /* 350 */ 80, 85, 226, 82, 92, 136, 60, 52, 54, 64, - /* 360 */ 62, 66, 72, 74, 76, 78, 68, 70, 48, 46, - /* 370 */ 50, 43, 40, 56, 89, 58, 84, 87, 88, 96, - /* 380 */ 80, 115, 229, 82, 92, 137, 60, 52, 54, 64, - /* 390 */ 62, 66, 72, 74, 76, 78, 68, 70, 48, 46, - /* 400 */ 50, 43, 40, 56, 89, 58, 84, 87, 88, 96, - /* 410 */ 80, 131, 232, 82, 92, 435, 60, 52, 54, 64, - /* 420 */ 62, 66, 72, 74, 76, 78, 68, 70, 48, 46, - /* 430 */ 50, 43, 40, 56, 89, 58, 84, 87, 88, 96, - /* 440 */ 80, 92, 436, 60, 52, 54, 64, 62, 66, 72, - /* 450 */ 74, 76, 78, 68, 70, 48, 46, 50, 43, 40, - /* 460 */ 56, 89, 58, 84, 87, 88, 96, 80, 246, 141, - /* 470 */ 143, 144, 82, 92, 157, 60, 52, 54, 64, 62, - /* 480 */ 66, 72, 74, 76, 78, 68, 70, 48, 46, 50, - /* 490 */ 43, 40, 56, 89, 58, 84, 87, 88, 96, 80, - /* 500 */ 435, 290, 82, 92, 159, 60, 52, 54, 64, 62, - /* 510 */ 66, 72, 74, 76, 78, 68, 70, 48, 46, 50, - /* 520 */ 43, 40, 56, 89, 58, 84, 87, 88, 96, 80, - /* 530 */ 436, 306, 82, 92, 166, 60, 52, 54, 64, 62, - /* 540 */ 66, 72, 74, 76, 78, 68, 70, 48, 46, 50, - /* 550 */ 43, 40, 56, 89, 58, 84, 87, 88, 96, 80, - /* 560 */ 82, 92, 172, 60, 52, 54, 64, 62, 66, 72, - /* 570 */ 74, 76, 78, 68, 70, 48, 46, 50, 43, 40, - /* 580 */ 56, 89, 58, 84, 87, 88, 195, 80, 60, 52, - /* 590 */ 54, 64, 62, 66, 72, 74, 76, 78, 68, 70, - /* 600 */ 48, 46, 50, 43, 40, 56, 89, 58, 84, 87, - /* 610 */ 88, 96, 80, 52, 54, 64, 62, 66, 72, 74, - /* 620 */ 76, 78, 68, 70, 48, 46, 50, 43, 40, 56, - /* 630 */ 89, 58, 84, 87, 88, 96, 80, 456, 1, 2, - /* 640 */ 248, 4, 5, 6, 7, 8, 9, 10, 11, 12, - /* 650 */ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - /* 660 */ 64, 62, 66, 72, 74, 76, 78, 68, 70, 48, - /* 670 */ 46, 50, 43, 40, 56, 89, 58, 84, 87, 88, - /* 680 */ 96, 80, 27, 248, 4, 5, 6, 7, 8, 9, - /* 690 */ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - /* 700 */ 20, 21, 22, 33, 248, 4, 5, 6, 7, 8, - /* 710 */ 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - /* 720 */ 19, 20, 21, 22, 163, 248, 4, 5, 6, 7, - /* 730 */ 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - /* 740 */ 18, 19, 20, 21, 22, 189, 248, 4, 5, 6, - /* 750 */ 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, - /* 760 */ 17, 18, 19, 20, 21, 22, 199, 248, 4, 5, - /* 770 */ 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - /* 780 */ 16, 17, 18, 19, 20, 21, 22, 207, 248, 4, - /* 790 */ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, - /* 800 */ 15, 16, 17, 18, 19, 20, 21, 22, 214, 248, - /* 810 */ 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, - /* 820 */ 14, 15, 16, 17, 18, 19, 20, 21, 22, 236, - /* 830 */ 248, 4, 5, 6, 7, 8, 9, 10, 11, 12, - /* 840 */ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - /* 850 */ 251, 248, 4, 5, 6, 7, 8, 9, 10, 11, - /* 860 */ 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - /* 870 */ 22, 257, 248, 4, 5, 6, 7, 8, 9, 10, - /* 880 */ 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - /* 890 */ 21, 22, 272, 248, 4, 5, 6, 7, 8, 9, - /* 900 */ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - /* 910 */ 20, 21, 22, 291, 248, 4, 5, 6, 7, 8, - /* 920 */ 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - /* 930 */ 19, 20, 21, 22, 300, 248, 4, 5, 6, 7, - /* 940 */ 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - /* 950 */ 18, 19, 20, 21, 22, 307, 248, 4, 5, 6, - /* 960 */ 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, - /* 970 */ 17, 18, 19, 20, 21, 22, 3, 4, 5, 6, - /* 980 */ 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, - /* 990 */ 17, 18, 19, 20, 21, 22, 24, 203, 29, 31, - /* 1000 */ 37, 156, 158, 323, 23, 167, 171, 185, 25, 90, - /* 1010 */ 139, 184, 173, 175, 177, 179, 181, 140, 117, 117, - /* 1020 */ 193, 138, 186, 188, 204, 278, 211, 192, 218, 221, - /* 1030 */ 198, 227, 230, 233, 187, 240, 242, 24, 203, 315, - /* 1040 */ 317, 37, 156, 158, 97, 314, 167, 38, 202, 104, - /* 1050 */ 126, 28, 184, 104, 117, 134, 106, 117, 113, 117, - /* 1060 */ 244, 193, 125, 117, 205, 204, 266, 211, 206, 218, - /* 1070 */ 221, 219, 227, 230, 233, 247, 240, 242, 24, 203, - /* 1080 */ 35, 104, 37, 156, 158, 155, 97, 167, 111, 97, - /* 1090 */ 113, 117, 196, 184, 139, 117, 117, 134, 210, 117, - /* 1100 */ 129, 244, 193, 217, 220, 138, 204, 244, 211, 235, - /* 1110 */ 218, 221, 311, 227, 230, 233, 247, 240, 242, 24, - /* 1120 */ 203, 42, 247, 37, 156, 158, 154, 165, 167, 239, - /* 1130 */ 142, 117, 241, 243, 184, 45, 117, 250, 47, 267, - /* 1140 */ 49, 254, 256, 193, 260, 117, 263, 204, 117, 211, - /* 1150 */ 117, 218, 221, 34, 227, 230, 233, 164, 240, 242, - /* 1160 */ 24, 203, 51, 53, 37, 156, 158, 265, 244, 167, - /* 1170 */ 268, 55, 117, 117, 271, 184, 57, 191, 275, 190, - /* 1180 */ 279, 117, 280, 247, 193, 278, 117, 277, 204, 297, - /* 1190 */ 211, 294, 218, 221, 59, 227, 230, 233, 200, 240, - /* 1200 */ 242, 24, 203, 296, 117, 37, 156, 158, 61, 244, - /* 1210 */ 167, 303, 310, 244, 313, 316, 184, 63, 117, 318, - /* 1220 */ 319, 320, 65, 321, 247, 193, 201, 117, 247, 204, - /* 1230 */ 261, 211, 117, 218, 221, 244, 227, 230, 233, 208, - /* 1240 */ 240, 242, 24, 203, 248, 67, 37, 156, 158, 69, - /* 1250 */ 247, 167, 71, 248, 244, 117, 215, 184, 73, 117, - /* 1260 */ 248, 248, 117, 75, 248, 248, 193, 248, 117, 247, - /* 1270 */ 204, 209, 211, 117, 218, 221, 237, 227, 230, 233, - /* 1280 */ 252, 240, 242, 24, 203, 248, 244, 37, 156, 158, - /* 1290 */ 77, 248, 167, 248, 79, 244, 81, 258, 184, 83, - /* 1300 */ 117, 247, 248, 248, 117, 248, 117, 193, 248, 117, - /* 1310 */ 247, 204, 244, 211, 216, 218, 221, 273, 227, 230, - /* 1320 */ 233, 292, 240, 242, 24, 203, 248, 247, 37, 156, - /* 1330 */ 158, 86, 244, 167, 93, 95, 244, 248, 301, 184, - /* 1340 */ 99, 117, 248, 248, 117, 117, 248, 247, 193, 248, - /* 1350 */ 117, 247, 204, 244, 211, 248, 218, 221, 308, 227, - /* 1360 */ 230, 233, 238, 240, 242, 24, 203, 248, 247, 37, - /* 1370 */ 156, 158, 101, 244, 167, 116, 248, 244, 248, 248, - /* 1380 */ 184, 132, 117, 248, 248, 117, 151, 248, 247, 193, - /* 1390 */ 248, 117, 247, 204, 244, 211, 117, 218, 221, 248, - /* 1400 */ 227, 230, 233, 253, 240, 242, 24, 203, 153, 247, - /* 1410 */ 37, 156, 158, 161, 244, 167, 174, 248, 117, 248, - /* 1420 */ 248, 184, 176, 117, 248, 178, 117, 248, 248, 247, - /* 1430 */ 193, 248, 117, 248, 204, 117, 211, 259, 218, 221, - /* 1440 */ 180, 227, 230, 233, 248, 240, 242, 24, 203, 182, - /* 1450 */ 117, 37, 156, 158, 194, 212, 167, 248, 248, 117, - /* 1460 */ 222, 248, 184, 225, 117, 117, 248, 248, 228, 248, - /* 1470 */ 117, 193, 248, 117, 248, 204, 262, 211, 117, 218, - /* 1480 */ 221, 248, 227, 230, 233, 248, 240, 242, 24, 203, - /* 1490 */ 231, 245, 37, 156, 158, 248, 289, 167, 298, 305, - /* 1500 */ 117, 117, 248, 184, 248, 274, 117, 248, 117, 117, - /* 1510 */ 248, 248, 193, 248, 248, 248, 204, 248, 211, 248, - /* 1520 */ 218, 221, 248, 227, 230, 233, 248, 240, 242, 24, - /* 1530 */ 203, 248, 248, 37, 156, 158, 248, 293, 167, 248, - /* 1540 */ 248, 248, 248, 248, 184, 248, 248, 248, 248, 248, - /* 1550 */ 248, 248, 248, 193, 248, 248, 248, 204, 248, 211, - /* 1560 */ 248, 218, 221, 248, 227, 230, 233, 248, 240, 242, - /* 1570 */ 24, 203, 248, 248, 37, 156, 158, 248, 302, 167, - /* 1580 */ 248, 248, 248, 248, 248, 184, 248, 248, 248, 248, - /* 1590 */ 248, 248, 248, 248, 193, 248, 248, 248, 204, 248, - /* 1600 */ 211, 248, 218, 221, 248, 227, 230, 233, 248, 240, - /* 1610 */ 242, 24, 203, 248, 248, 37, 156, 158, 248, 309, - /* 1620 */ 167, 248, 248, 248, 248, 248, 184, 248, 248, 248, - /* 1630 */ 248, 248, 248, 248, 248, 193, 248, 248, 248, 204, - /* 1640 */ 248, 211, 248, 218, 221, 248, 227, 230, 233, 248, - /* 1650 */ 240, 242, 24, 203, 312, 248, 37, 156, 158, 248, - /* 1660 */ 248, 167, 248, 248, 248, 248, 248, 184, 248, 248, - /* 1670 */ 248, 248, 248, 248, 248, 248, 193, 248, 248, 248, - /* 1680 */ 204, 248, 211, 248, 218, 221, 248, 227, 230, 233, - /* 1690 */ 248, 240, 242, 24, 203, 248, 248, 37, 156, 158, - /* 1700 */ 248, 248, 167, 248, 248, 248, 248, 248, 184, 248, - /* 1710 */ 248, 248, 248, 248, 248, 248, 248, 193, 248, 248, - /* 1720 */ 248, 204, 248, 211, 248, 218, 221, 248, 227, 230, - /* 1730 */ 233, 248, 240, 242, 248, 248, 248, 152, 248, 44, - /* 1740 */ 41, 248, 103, 248, 98, 248, 248, 100, 248, 248, - /* 1750 */ 248, 248, 248, 248, 248, 248, 118, 248, 248, 248, - /* 1760 */ 248, 248, 248, 248, 248, 248, 248, 119, 120, 121, - /* 1770 */ 122, 123, 124, 248, 248, 150, 248, 248, 44, 41, - /* 1780 */ 248, 103, 248, 98, 248, 248, 100, 248, 248, 248, - /* 1790 */ 248, 248, 248, 109, 248, 118, 248, 44, 41, 248, - /* 1800 */ 103, 248, 147, 248, 248, 100, 119, 120, 121, 122, - /* 1810 */ 123, 124, 248, 248, 118, 248, 248, 135, 248, 248, - /* 1820 */ 248, 248, 248, 248, 248, 119, 120, 121, 122, 123, - /* 1830 */ 124, 248, 109, 44, 41, 248, 103, 248, 98, 248, - /* 1840 */ 248, 100, 248, 248, 248, 248, 248, 248, 248, 149, - /* 1850 */ 146, 109, 44, 41, 248, 103, 248, 98, 248, 248, - /* 1860 */ 100, 145, 120, 121, 122, 123, 124, 248, 248, 118, - /* 1870 */ 248, 44, 41, 248, 103, 248, 98, 248, 133, 100, - /* 1880 */ 119, 130, 121, 122, 123, 124, 248, 109, 118, 248, - /* 1890 */ 248, 248, 248, 248, 248, 248, 248, 248, 248, 119, - /* 1900 */ 114, 121, 122, 123, 124, 248, 109, 248, 248, 44, - /* 1910 */ 41, 248, 103, 248, 98, 248, 248, 100, 248, 248, - /* 1920 */ 248, 248, 248, 248, 105, 109, 118, 248, 44, 41, - /* 1930 */ 248, 103, 248, 98, 248, 248, 100, 119, 114, 121, - /* 1940 */ 122, 123, 124, 248, 248, 118, 248, 248, 248, 248, - /* 1950 */ 248, 248, 248, 248, 248, 248, 119, 120, 121, 122, - /* 1960 */ 123, 124, 248, 109, 110, 248, 248, 44, 41, 248, - /* 1970 */ 103, 248, 98, 248, 248, 100, 248, 248, 248, 248, - /* 1980 */ 148, 248, 109, 248, 118, 248, 44, 41, 248, 103, - /* 1990 */ 248, 98, 248, 264, 100, 119, 130, 121, 122, 123, - /* 2000 */ 124, 248, 248, 118, 248, 248, 248, 248, 248, 248, - /* 2010 */ 248, 248, 248, 248, 119, 120, 121, 122, 123, 124, - /* 2020 */ 248, 109, 44, 41, 248, 103, 248, 98, 248, 248, - /* 2030 */ 100, 248, 248, 248, 248, 248, 248, 248, 248, 118, - /* 2040 */ 109, 44, 41, 248, 103, 248, 98, 248, 248, 100, - /* 2050 */ 119, 114, 121, 122, 123, 124, 248, 248, 118, 248, - /* 2060 */ 248, 248, 248, 248, 248, 248, 248, 248, 248, 119, - /* 2070 */ 130, 121, 122, 123, 124, 248, 109, 248, 248, 248, - /* 2080 */ 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, - /* 2090 */ 248, 248, 248, 248, 248, 109, + /* 250 */ 58, 84, 87, 88, 96, 80, 27, 259, 4, 5, + /* 260 */ 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + /* 270 */ 16, 17, 18, 19, 20, 21, 22, 91, 280, 298, + /* 280 */ 107, 82, 92, 128, 60, 52, 54, 66, 62, 64, + /* 290 */ 72, 74, 76, 78, 68, 70, 48, 46, 50, 43, + /* 300 */ 40, 56, 89, 58, 84, 87, 88, 96, 80, 43, + /* 310 */ 40, 56, 89, 58, 84, 87, 88, 96, 80, 292, + /* 320 */ 293, 294, 295, 296, 297, 102, 245, 260, 127, 82, + /* 330 */ 92, 85, 60, 52, 54, 66, 62, 64, 72, 74, + /* 340 */ 76, 78, 68, 70, 48, 46, 50, 43, 40, 56, + /* 350 */ 89, 58, 84, 87, 88, 96, 80, 115, 237, 82, + /* 360 */ 92, 136, 60, 52, 54, 66, 62, 64, 72, 74, + /* 370 */ 76, 78, 68, 70, 48, 46, 50, 43, 40, 56, + /* 380 */ 89, 58, 84, 87, 88, 96, 80, 131, 240, 82, + /* 390 */ 92, 137, 60, 52, 54, 66, 62, 64, 72, 74, + /* 400 */ 76, 78, 68, 70, 48, 46, 50, 43, 40, 56, + /* 410 */ 89, 58, 84, 87, 88, 96, 80, 458, 243, 82, + /* 420 */ 92, 459, 60, 52, 54, 66, 62, 64, 72, 74, + /* 430 */ 76, 78, 68, 70, 48, 46, 50, 43, 40, 56, + /* 440 */ 89, 58, 84, 87, 88, 96, 80, 92, 143, 60, + /* 450 */ 52, 54, 66, 62, 64, 72, 74, 76, 78, 68, + /* 460 */ 70, 48, 46, 50, 43, 40, 56, 89, 58, 84, + /* 470 */ 87, 88, 96, 80, 257, 141, 144, 458, 82, 92, + /* 480 */ 168, 60, 52, 54, 66, 62, 64, 72, 74, 76, + /* 490 */ 78, 68, 70, 48, 46, 50, 43, 40, 56, 89, + /* 500 */ 58, 84, 87, 88, 96, 80, 459, 301, 82, 92, + /* 510 */ 177, 60, 52, 54, 66, 62, 64, 72, 74, 76, + /* 520 */ 78, 68, 70, 48, 46, 50, 43, 40, 56, 89, + /* 530 */ 58, 84, 87, 88, 96, 80, 170, 317, 82, 92, + /* 540 */ 183, 60, 52, 54, 66, 62, 64, 72, 74, 76, + /* 550 */ 78, 68, 70, 48, 46, 50, 43, 40, 56, 89, + /* 560 */ 58, 84, 87, 88, 96, 80, 82, 92, 182, 60, + /* 570 */ 52, 54, 66, 62, 64, 72, 74, 76, 78, 68, + /* 580 */ 70, 48, 46, 50, 43, 40, 56, 89, 58, 84, + /* 590 */ 87, 88, 206, 80, 60, 52, 54, 66, 62, 64, + /* 600 */ 72, 74, 76, 78, 68, 70, 48, 46, 50, 43, + /* 610 */ 40, 56, 89, 58, 84, 87, 88, 96, 80, 52, + /* 620 */ 54, 66, 62, 64, 72, 74, 76, 78, 68, 70, + /* 630 */ 48, 46, 50, 43, 40, 56, 89, 58, 84, 87, + /* 640 */ 88, 96, 80, 479, 1, 2, 259, 4, 5, 6, + /* 650 */ 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, + /* 660 */ 17, 18, 19, 20, 21, 22, 66, 62, 64, 72, + /* 670 */ 74, 76, 78, 68, 70, 48, 46, 50, 43, 40, + /* 680 */ 56, 89, 58, 84, 87, 88, 96, 80, 33, 259, + /* 690 */ 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, + /* 700 */ 14, 15, 16, 17, 18, 19, 20, 21, 22, 174, + /* 710 */ 259, 4, 5, 6, 7, 8, 9, 10, 11, 12, + /* 720 */ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + /* 730 */ 200, 259, 4, 5, 6, 7, 8, 9, 10, 11, + /* 740 */ 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + /* 750 */ 22, 210, 259, 4, 5, 6, 7, 8, 9, 10, + /* 760 */ 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, + /* 770 */ 21, 22, 218, 259, 4, 5, 6, 7, 8, 9, + /* 780 */ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + /* 790 */ 20, 21, 22, 225, 259, 4, 5, 6, 7, 8, + /* 800 */ 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, + /* 810 */ 19, 20, 21, 22, 247, 259, 4, 5, 6, 7, + /* 820 */ 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, + /* 830 */ 18, 19, 20, 21, 22, 262, 259, 4, 5, 6, + /* 840 */ 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, + /* 850 */ 17, 18, 19, 20, 21, 22, 268, 259, 4, 5, + /* 860 */ 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + /* 870 */ 16, 17, 18, 19, 20, 21, 22, 283, 259, 4, + /* 880 */ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, + /* 890 */ 15, 16, 17, 18, 19, 20, 21, 22, 302, 259, + /* 900 */ 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, + /* 910 */ 14, 15, 16, 17, 18, 19, 20, 21, 22, 311, + /* 920 */ 259, 4, 5, 6, 7, 8, 9, 10, 11, 12, + /* 930 */ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + /* 940 */ 318, 259, 4, 5, 6, 7, 8, 9, 10, 11, + /* 950 */ 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + /* 960 */ 22, 3, 4, 5, 6, 7, 8, 9, 10, 11, + /* 970 */ 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + /* 980 */ 22, 44, 41, 196, 103, 90, 98, 25, 197, 100, + /* 990 */ 216, 44, 41, 140, 103, 117, 98, 117, 118, 100, + /* 1000 */ 89, 58, 84, 87, 88, 96, 80, 325, 118, 119, + /* 1010 */ 120, 121, 122, 123, 124, 199, 203, 128, 209, 119, + /* 1020 */ 120, 121, 122, 123, 124, 84, 87, 88, 96, 80, + /* 1030 */ 28, 230, 38, 154, 155, 156, 157, 158, 159, 160, + /* 1040 */ 166, 109, 117, 147, 148, 149, 150, 151, 152, 153, + /* 1050 */ 117, 109, 24, 214, 29, 31, 37, 167, 169, 334, + /* 1060 */ 23, 178, 208, 255, 104, 42, 139, 195, 184, 186, + /* 1070 */ 188, 190, 192, 125, 117, 117, 204, 138, 258, 287, + /* 1080 */ 215, 289, 222, 213, 229, 232, 255, 238, 241, 244, + /* 1090 */ 198, 251, 253, 24, 214, 326, 328, 37, 167, 169, + /* 1100 */ 97, 258, 178, 97, 217, 221, 126, 277, 195, 97, + /* 1110 */ 117, 134, 228, 117, 129, 207, 255, 204, 231, 117, + /* 1120 */ 134, 215, 322, 222, 281, 229, 232, 246, 238, 241, + /* 1130 */ 244, 258, 251, 253, 24, 214, 35, 104, 37, 167, + /* 1140 */ 169, 104, 34, 178, 106, 139, 113, 117, 111, 195, + /* 1150 */ 113, 117, 278, 175, 250, 165, 138, 289, 204, 252, + /* 1160 */ 254, 261, 215, 265, 222, 117, 229, 232, 267, 238, + /* 1170 */ 241, 244, 201, 251, 253, 24, 214, 271, 255, 37, + /* 1180 */ 167, 169, 45, 176, 178, 162, 47, 142, 274, 211, + /* 1190 */ 195, 276, 117, 258, 49, 117, 117, 279, 255, 204, + /* 1200 */ 282, 286, 288, 215, 117, 222, 291, 229, 232, 255, + /* 1210 */ 238, 241, 244, 258, 251, 253, 24, 214, 290, 51, + /* 1220 */ 37, 167, 169, 305, 258, 178, 308, 53, 255, 117, + /* 1230 */ 272, 195, 300, 202, 307, 219, 314, 117, 321, 324, + /* 1240 */ 204, 327, 117, 258, 215, 255, 222, 329, 229, 232, + /* 1250 */ 330, 238, 241, 244, 226, 251, 253, 24, 214, 332, + /* 1260 */ 258, 37, 167, 169, 55, 248, 178, 266, 331, 266, + /* 1270 */ 57, 266, 195, 59, 117, 266, 266, 266, 266, 266, + /* 1280 */ 117, 204, 212, 117, 266, 215, 255, 222, 266, 229, + /* 1290 */ 232, 255, 238, 241, 244, 263, 251, 253, 24, 214, + /* 1300 */ 266, 258, 37, 167, 169, 266, 258, 178, 266, 266, + /* 1310 */ 255, 266, 269, 195, 266, 266, 266, 266, 266, 61, + /* 1320 */ 266, 255, 204, 266, 266, 258, 215, 220, 222, 117, + /* 1330 */ 229, 232, 284, 238, 241, 244, 258, 251, 253, 24, + /* 1340 */ 214, 266, 266, 37, 167, 169, 266, 266, 178, 266, + /* 1350 */ 309, 255, 63, 303, 195, 266, 266, 266, 266, 266, + /* 1360 */ 117, 266, 117, 204, 266, 266, 258, 215, 255, 222, + /* 1370 */ 227, 229, 232, 312, 238, 241, 244, 319, 251, 253, + /* 1380 */ 24, 214, 65, 258, 37, 167, 169, 266, 255, 178, + /* 1390 */ 67, 69, 117, 266, 266, 195, 266, 71, 266, 266, + /* 1400 */ 117, 117, 266, 258, 204, 266, 266, 117, 215, 255, + /* 1410 */ 222, 266, 229, 232, 266, 238, 241, 244, 249, 251, + /* 1420 */ 253, 24, 214, 266, 258, 37, 167, 169, 266, 255, + /* 1430 */ 178, 266, 266, 255, 266, 266, 195, 73, 266, 266, + /* 1440 */ 75, 266, 77, 266, 258, 204, 266, 117, 258, 215, + /* 1450 */ 117, 222, 117, 229, 232, 266, 238, 241, 244, 264, + /* 1460 */ 251, 253, 24, 214, 266, 266, 37, 167, 169, 266, + /* 1470 */ 79, 178, 266, 266, 81, 83, 266, 195, 86, 266, + /* 1480 */ 117, 93, 266, 266, 117, 117, 204, 266, 117, 266, + /* 1490 */ 215, 117, 222, 270, 229, 232, 95, 238, 241, 244, + /* 1500 */ 99, 251, 253, 24, 214, 101, 117, 37, 167, 169, + /* 1510 */ 117, 116, 178, 266, 266, 117, 132, 266, 195, 266, + /* 1520 */ 164, 117, 266, 266, 172, 266, 117, 204, 266, 266, + /* 1530 */ 117, 215, 273, 222, 117, 229, 232, 185, 238, 241, + /* 1540 */ 244, 187, 251, 253, 24, 214, 266, 117, 37, 167, + /* 1550 */ 169, 117, 189, 178, 266, 191, 193, 205, 266, 195, + /* 1560 */ 223, 285, 117, 266, 266, 117, 117, 117, 204, 266, + /* 1570 */ 117, 266, 215, 266, 222, 266, 229, 232, 233, 238, + /* 1580 */ 241, 244, 236, 251, 253, 24, 214, 266, 117, 37, + /* 1590 */ 167, 169, 117, 304, 178, 266, 239, 266, 242, 266, + /* 1600 */ 195, 256, 316, 266, 266, 266, 117, 266, 117, 204, + /* 1610 */ 266, 117, 117, 215, 266, 222, 266, 229, 232, 266, + /* 1620 */ 238, 241, 244, 266, 251, 253, 24, 214, 266, 266, + /* 1630 */ 37, 167, 169, 266, 313, 178, 266, 266, 266, 266, + /* 1640 */ 266, 195, 266, 266, 266, 266, 266, 266, 266, 266, + /* 1650 */ 204, 266, 266, 266, 215, 266, 222, 266, 229, 232, + /* 1660 */ 266, 238, 241, 244, 266, 251, 253, 24, 214, 266, + /* 1670 */ 266, 37, 167, 169, 266, 320, 178, 266, 266, 266, + /* 1680 */ 266, 266, 195, 266, 266, 266, 266, 266, 266, 266, + /* 1690 */ 266, 204, 266, 266, 266, 215, 266, 222, 266, 229, + /* 1700 */ 232, 266, 238, 241, 244, 266, 251, 253, 24, 214, + /* 1710 */ 323, 266, 37, 167, 169, 266, 266, 178, 266, 266, + /* 1720 */ 266, 266, 266, 195, 266, 266, 266, 266, 266, 266, + /* 1730 */ 266, 266, 204, 266, 266, 266, 215, 266, 222, 266, + /* 1740 */ 229, 232, 266, 238, 241, 244, 266, 251, 253, 24, + /* 1750 */ 214, 266, 266, 37, 167, 169, 266, 266, 178, 266, + /* 1760 */ 266, 266, 266, 266, 195, 266, 266, 266, 266, 266, + /* 1770 */ 266, 266, 266, 204, 266, 266, 266, 215, 266, 222, + /* 1780 */ 266, 229, 232, 266, 238, 241, 244, 266, 251, 253, + /* 1790 */ 266, 266, 266, 163, 266, 44, 41, 266, 103, 266, + /* 1800 */ 98, 266, 266, 100, 266, 266, 266, 266, 266, 266, + /* 1810 */ 266, 266, 118, 266, 266, 266, 266, 266, 266, 266, + /* 1820 */ 266, 266, 266, 119, 120, 121, 122, 123, 124, 266, + /* 1830 */ 266, 161, 266, 266, 44, 41, 266, 103, 266, 98, + /* 1840 */ 266, 266, 100, 266, 266, 266, 266, 266, 266, 266, + /* 1850 */ 266, 118, 266, 266, 266, 109, 266, 135, 266, 266, + /* 1860 */ 266, 266, 119, 120, 121, 122, 123, 124, 266, 266, + /* 1870 */ 266, 266, 266, 44, 41, 266, 103, 266, 98, 266, + /* 1880 */ 266, 100, 266, 266, 266, 266, 266, 266, 266, 266, + /* 1890 */ 146, 266, 266, 266, 109, 266, 266, 266, 266, 266, + /* 1900 */ 266, 145, 120, 121, 122, 123, 124, 266, 266, 266, + /* 1910 */ 266, 266, 44, 41, 266, 103, 266, 98, 266, 266, + /* 1920 */ 100, 266, 266, 266, 266, 266, 266, 266, 266, 118, + /* 1930 */ 266, 266, 266, 109, 266, 266, 266, 266, 133, 266, + /* 1940 */ 119, 130, 121, 122, 123, 124, 266, 266, 266, 266, + /* 1950 */ 266, 44, 41, 266, 103, 266, 98, 266, 266, 100, + /* 1960 */ 266, 266, 266, 266, 266, 266, 266, 266, 118, 266, + /* 1970 */ 266, 266, 109, 266, 266, 266, 266, 266, 266, 119, + /* 1980 */ 114, 121, 122, 123, 124, 266, 266, 266, 266, 266, + /* 1990 */ 44, 41, 266, 103, 266, 98, 266, 266, 100, 266, + /* 2000 */ 266, 266, 266, 266, 266, 266, 266, 118, 266, 266, + /* 2010 */ 105, 109, 266, 266, 266, 266, 266, 266, 119, 114, + /* 2020 */ 121, 122, 123, 124, 266, 266, 266, 266, 266, 44, + /* 2030 */ 41, 266, 103, 266, 98, 266, 266, 100, 266, 266, + /* 2040 */ 266, 266, 266, 266, 266, 266, 118, 266, 266, 266, + /* 2050 */ 109, 110, 266, 266, 266, 275, 266, 119, 130, 121, + /* 2060 */ 122, 123, 124, 266, 266, 266, 266, 266, 44, 41, + /* 2070 */ 266, 103, 266, 98, 266, 266, 100, 266, 266, 266, + /* 2080 */ 266, 266, 266, 266, 266, 118, 266, 266, 266, 109, + /* 2090 */ 266, 266, 266, 266, 266, 266, 119, 120, 121, 122, + /* 2100 */ 123, 124, 266, 266, 266, 266, 266, 44, 41, 266, + /* 2110 */ 103, 266, 98, 266, 266, 100, 266, 266, 266, 266, + /* 2120 */ 266, 266, 266, 266, 118, 266, 266, 266, 109, 266, + /* 2130 */ 266, 266, 266, 266, 266, 119, 114, 121, 122, 123, + /* 2140 */ 124, 266, 266, 266, 266, 266, 44, 41, 266, 103, + /* 2150 */ 266, 98, 266, 266, 100, 266, 266, 266, 266, 266, + /* 2160 */ 266, 266, 266, 118, 266, 266, 266, 109, 266, 266, + /* 2170 */ 266, 266, 266, 266, 119, 130, 121, 122, 123, 124, + /* 2180 */ 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, + /* 2190 */ 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, + /* 2200 */ 266, 266, 266, 266, 266, 266, 109, }; -static KKCODETYPE kk_lookahead[] = { +static YYCODETYPE yy_lookahead[] = { /* 0 */ 3, 4, 1, 6, 7, 8, 9, 10, 11, 12, /* 10 */ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, /* 20 */ 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, @@ -905,322 +915,336 @@ static KKCODETYPE kk_lookahead[] = { /* 40 */ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, /* 50 */ 23, 24, 25, 26, 27, 28, 29, 30, 57, 32, /* 60 */ 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - /* 70 */ 28, 29, 30, 72, 2, 3, 49, 47, 102, 103, - /* 80 */ 3, 4, 2, 6, 7, 8, 9, 10, 11, 12, + /* 70 */ 28, 29, 30, 72, 2, 3, 49, 108, 109, 0, + /* 80 */ 3, 4, 32, 6, 7, 8, 9, 10, 11, 12, /* 90 */ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - /* 100 */ 23, 24, 25, 26, 27, 28, 29, 30, 0, 32, - /* 110 */ 3, 4, 32, 6, 7, 8, 9, 10, 11, 12, + /* 100 */ 23, 24, 25, 26, 27, 28, 29, 30, 32, 32, + /* 110 */ 3, 4, 82, 6, 7, 8, 9, 10, 11, 12, /* 120 */ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, /* 130 */ 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, /* 140 */ 3, 4, 65, 6, 7, 8, 9, 10, 11, 12, /* 150 */ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - /* 160 */ 23, 24, 25, 26, 27, 28, 29, 30, 32, 32, + /* 160 */ 23, 24, 25, 26, 27, 28, 29, 30, 2, 32, /* 170 */ 3, 4, 32, 6, 7, 8, 9, 10, 11, 12, /* 180 */ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - /* 190 */ 23, 24, 25, 26, 27, 28, 29, 30, 2, 32, + /* 190 */ 23, 24, 25, 26, 27, 28, 29, 30, 32, 32, /* 200 */ 3, 4, 2, 6, 7, 8, 9, 10, 11, 12, /* 210 */ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, /* 220 */ 23, 24, 25, 26, 27, 28, 29, 30, 3, 4, /* 230 */ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, /* 240 */ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - /* 250 */ 25, 26, 27, 28, 29, 30, 21, 22, 23, 24, - /* 260 */ 25, 26, 27, 28, 29, 30, 26, 27, 28, 29, - /* 270 */ 30, 74, 76, 2, 74, 3, 4, 2, 6, 7, - /* 280 */ 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - /* 290 */ 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - /* 300 */ 28, 29, 30, 24, 25, 26, 27, 28, 29, 30, - /* 310 */ 49, 50, 51, 52, 53, 54, 104, 105, 47, 47, - /* 320 */ 53, 54, 47, 3, 4, 32, 6, 7, 8, 9, - /* 330 */ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - /* 340 */ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - /* 350 */ 30, 3, 32, 3, 4, 109, 6, 7, 8, 9, - /* 360 */ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - /* 370 */ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - /* 380 */ 30, 5, 32, 3, 4, 74, 6, 7, 8, 9, - /* 390 */ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - /* 400 */ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - /* 410 */ 30, 5, 32, 3, 4, 74, 6, 7, 8, 9, - /* 420 */ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - /* 430 */ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - /* 440 */ 30, 4, 74, 6, 7, 8, 9, 10, 11, 12, - /* 450 */ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - /* 460 */ 23, 24, 25, 26, 27, 28, 29, 30, 58, 5, - /* 470 */ 109, 74, 3, 4, 32, 6, 7, 8, 9, 10, - /* 480 */ 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - /* 490 */ 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - /* 500 */ 5, 32, 3, 4, 38, 6, 7, 8, 9, 10, - /* 510 */ 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - /* 520 */ 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - /* 530 */ 5, 32, 3, 4, 32, 6, 7, 8, 9, 10, - /* 540 */ 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - /* 550 */ 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - /* 560 */ 3, 4, 38, 6, 7, 8, 9, 10, 11, 12, - /* 570 */ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - /* 580 */ 23, 24, 25, 26, 27, 28, 29, 30, 6, 7, - /* 590 */ 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - /* 600 */ 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - /* 610 */ 28, 29, 30, 7, 8, 9, 10, 11, 12, 13, - /* 620 */ 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - /* 630 */ 24, 25, 26, 27, 28, 29, 30, 78, 79, 80, - /* 640 */ 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + /* 250 */ 25, 26, 27, 28, 29, 30, 86, 87, 88, 89, + /* 260 */ 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + /* 270 */ 100, 101, 102, 103, 104, 105, 106, 80, 110, 111, + /* 280 */ 80, 3, 4, 2, 6, 7, 8, 9, 10, 11, + /* 290 */ 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + /* 300 */ 22, 23, 24, 25, 26, 27, 28, 29, 30, 21, + /* 310 */ 22, 23, 24, 25, 26, 27, 28, 29, 30, 49, + /* 320 */ 50, 51, 52, 53, 54, 47, 53, 54, 47, 3, + /* 330 */ 4, 3, 6, 7, 8, 9, 10, 11, 12, 13, + /* 340 */ 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + /* 350 */ 24, 25, 26, 27, 28, 29, 30, 5, 32, 3, + /* 360 */ 4, 115, 6, 7, 8, 9, 10, 11, 12, 13, + /* 370 */ 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + /* 380 */ 24, 25, 26, 27, 28, 29, 30, 5, 32, 3, + /* 390 */ 4, 80, 6, 7, 8, 9, 10, 11, 12, 13, + /* 400 */ 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + /* 410 */ 24, 25, 26, 27, 28, 29, 30, 80, 32, 3, + /* 420 */ 4, 80, 6, 7, 8, 9, 10, 11, 12, 13, + /* 430 */ 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + /* 440 */ 24, 25, 26, 27, 28, 29, 30, 4, 115, 6, + /* 450 */ 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, + /* 460 */ 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, + /* 470 */ 27, 28, 29, 30, 58, 5, 80, 5, 3, 4, + /* 480 */ 32, 6, 7, 8, 9, 10, 11, 12, 13, 14, + /* 490 */ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + /* 500 */ 25, 26, 27, 28, 29, 30, 5, 32, 3, 4, + /* 510 */ 32, 6, 7, 8, 9, 10, 11, 12, 13, 14, + /* 520 */ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + /* 530 */ 25, 26, 27, 28, 29, 30, 38, 32, 3, 4, + /* 540 */ 38, 6, 7, 8, 9, 10, 11, 12, 13, 14, + /* 550 */ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + /* 560 */ 25, 26, 27, 28, 29, 30, 3, 4, 109, 6, + /* 570 */ 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, + /* 580 */ 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, + /* 590 */ 27, 28, 29, 30, 6, 7, 8, 9, 10, 11, + /* 600 */ 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + /* 610 */ 22, 23, 24, 25, 26, 27, 28, 29, 30, 7, + /* 620 */ 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, + /* 630 */ 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + /* 640 */ 28, 29, 30, 84, 85, 86, 87, 88, 89, 90, /* 650 */ 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - /* 660 */ 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - /* 670 */ 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - /* 680 */ 29, 30, 80, 81, 82, 83, 84, 85, 86, 87, + /* 660 */ 101, 102, 103, 104, 105, 106, 9, 10, 11, 12, + /* 670 */ 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + /* 680 */ 23, 24, 25, 26, 27, 28, 29, 30, 86, 87, /* 690 */ 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, - /* 700 */ 98, 99, 100, 80, 81, 82, 83, 84, 85, 86, + /* 700 */ 98, 99, 100, 101, 102, 103, 104, 105, 106, 86, /* 710 */ 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - /* 720 */ 97, 98, 99, 100, 80, 81, 82, 83, 84, 85, + /* 720 */ 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, /* 730 */ 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - /* 740 */ 96, 97, 98, 99, 100, 80, 81, 82, 83, 84, - /* 750 */ 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - /* 760 */ 95, 96, 97, 98, 99, 100, 80, 81, 82, 83, - /* 770 */ 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - /* 780 */ 94, 95, 96, 97, 98, 99, 100, 80, 81, 82, - /* 790 */ 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - /* 800 */ 93, 94, 95, 96, 97, 98, 99, 100, 80, 81, - /* 810 */ 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - /* 820 */ 92, 93, 94, 95, 96, 97, 98, 99, 100, 80, - /* 830 */ 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + /* 740 */ 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, + /* 750 */ 106, 86, 87, 88, 89, 90, 91, 92, 93, 94, + /* 760 */ 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + /* 770 */ 105, 106, 86, 87, 88, 89, 90, 91, 92, 93, + /* 780 */ 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, + /* 790 */ 104, 105, 106, 86, 87, 88, 89, 90, 91, 92, + /* 800 */ 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, + /* 810 */ 103, 104, 105, 106, 86, 87, 88, 89, 90, 91, + /* 820 */ 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + /* 830 */ 102, 103, 104, 105, 106, 86, 87, 88, 89, 90, /* 840 */ 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - /* 850 */ 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, + /* 850 */ 101, 102, 103, 104, 105, 106, 86, 87, 88, 89, /* 860 */ 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - /* 870 */ 100, 80, 81, 82, 83, 84, 85, 86, 87, 88, + /* 870 */ 100, 101, 102, 103, 104, 105, 106, 86, 87, 88, /* 880 */ 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, - /* 890 */ 99, 100, 80, 81, 82, 83, 84, 85, 86, 87, + /* 890 */ 99, 100, 101, 102, 103, 104, 105, 106, 86, 87, /* 900 */ 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, - /* 910 */ 98, 99, 100, 80, 81, 82, 83, 84, 85, 86, + /* 910 */ 98, 99, 100, 101, 102, 103, 104, 105, 106, 86, /* 920 */ 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - /* 930 */ 97, 98, 99, 100, 80, 81, 82, 83, 84, 85, + /* 930 */ 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, /* 940 */ 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - /* 950 */ 96, 97, 98, 99, 100, 80, 81, 82, 83, 84, - /* 960 */ 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - /* 970 */ 95, 96, 97, 98, 99, 100, 81, 82, 83, 84, - /* 980 */ 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - /* 990 */ 95, 96, 97, 98, 99, 100, 31, 32, 33, 34, - /* 1000 */ 35, 36, 37, 0, 1, 40, 103, 38, 101, 101, - /* 1010 */ 38, 46, 41, 42, 43, 44, 45, 109, 111, 111, - /* 1020 */ 55, 49, 29, 32, 59, 38, 61, 32, 63, 64, - /* 1030 */ 32, 66, 67, 68, 47, 70, 71, 31, 32, 33, - /* 1040 */ 34, 35, 36, 37, 101, 1, 40, 101, 32, 101, - /* 1050 */ 107, 1, 46, 101, 111, 112, 108, 111, 110, 111, - /* 1060 */ 57, 55, 110, 111, 38, 59, 1, 61, 32, 63, - /* 1070 */ 64, 50, 66, 67, 68, 72, 70, 71, 31, 32, - /* 1080 */ 33, 101, 35, 36, 37, 101, 101, 40, 108, 101, - /* 1090 */ 110, 111, 107, 46, 38, 111, 111, 112, 32, 111, - /* 1100 */ 112, 57, 55, 32, 32, 49, 59, 57, 61, 32, - /* 1110 */ 63, 64, 1, 66, 67, 68, 72, 70, 71, 31, - /* 1120 */ 32, 101, 72, 35, 36, 37, 101, 39, 40, 32, - /* 1130 */ 74, 111, 32, 32, 46, 101, 111, 32, 101, 56, - /* 1140 */ 101, 32, 32, 55, 32, 111, 32, 59, 111, 61, - /* 1150 */ 111, 63, 64, 1, 66, 67, 68, 1, 70, 71, - /* 1160 */ 31, 32, 101, 101, 35, 36, 37, 32, 57, 40, - /* 1170 */ 32, 101, 111, 111, 32, 46, 101, 48, 32, 1, - /* 1180 */ 41, 111, 106, 72, 55, 38, 111, 105, 59, 3, - /* 1190 */ 61, 32, 63, 64, 101, 66, 67, 68, 1, 70, - /* 1200 */ 71, 31, 32, 38, 111, 35, 36, 37, 101, 57, - /* 1210 */ 40, 32, 32, 57, 32, 32, 46, 101, 111, 32, - /* 1220 */ 1, 33, 101, 32, 72, 55, 56, 111, 72, 59, - /* 1230 */ 1, 61, 111, 63, 64, 57, 66, 67, 68, 1, - /* 1240 */ 70, 71, 31, 32, 113, 101, 35, 36, 37, 101, - /* 1250 */ 72, 40, 101, 113, 57, 111, 1, 46, 101, 111, - /* 1260 */ 113, 113, 111, 101, 113, 113, 55, 113, 111, 72, - /* 1270 */ 59, 60, 61, 111, 63, 64, 1, 66, 67, 68, - /* 1280 */ 1, 70, 71, 31, 32, 113, 57, 35, 36, 37, - /* 1290 */ 101, 113, 40, 113, 101, 57, 101, 1, 46, 101, - /* 1300 */ 111, 72, 113, 113, 111, 113, 111, 55, 113, 111, - /* 1310 */ 72, 59, 57, 61, 62, 63, 64, 1, 66, 67, - /* 1320 */ 68, 1, 70, 71, 31, 32, 113, 72, 35, 36, - /* 1330 */ 37, 101, 57, 40, 101, 101, 57, 113, 1, 46, - /* 1340 */ 101, 111, 113, 113, 111, 111, 113, 72, 55, 113, - /* 1350 */ 111, 72, 59, 57, 61, 113, 63, 64, 1, 66, - /* 1360 */ 67, 68, 69, 70, 71, 31, 32, 113, 72, 35, - /* 1370 */ 36, 37, 101, 57, 40, 101, 113, 57, 113, 113, - /* 1380 */ 46, 101, 111, 113, 113, 111, 101, 113, 72, 55, - /* 1390 */ 113, 111, 72, 59, 57, 61, 111, 63, 64, 113, - /* 1400 */ 66, 67, 68, 69, 70, 71, 31, 32, 101, 72, - /* 1410 */ 35, 36, 37, 101, 57, 40, 101, 113, 111, 113, - /* 1420 */ 113, 46, 101, 111, 113, 101, 111, 113, 113, 72, - /* 1430 */ 55, 113, 111, 113, 59, 111, 61, 62, 63, 64, - /* 1440 */ 101, 66, 67, 68, 113, 70, 71, 31, 32, 101, - /* 1450 */ 111, 35, 36, 37, 101, 101, 40, 113, 113, 111, - /* 1460 */ 101, 113, 46, 101, 111, 111, 113, 113, 101, 113, - /* 1470 */ 111, 55, 113, 111, 113, 59, 60, 61, 111, 63, - /* 1480 */ 64, 113, 66, 67, 68, 113, 70, 71, 31, 32, - /* 1490 */ 101, 101, 35, 36, 37, 113, 101, 40, 101, 101, - /* 1500 */ 111, 111, 113, 46, 113, 48, 111, 113, 111, 111, - /* 1510 */ 113, 113, 55, 113, 113, 113, 59, 113, 61, 113, - /* 1520 */ 63, 64, 113, 66, 67, 68, 113, 70, 71, 31, - /* 1530 */ 32, 113, 113, 35, 36, 37, 113, 39, 40, 113, - /* 1540 */ 113, 113, 113, 113, 46, 113, 113, 113, 113, 113, - /* 1550 */ 113, 113, 113, 55, 113, 113, 113, 59, 113, 61, - /* 1560 */ 113, 63, 64, 113, 66, 67, 68, 113, 70, 71, - /* 1570 */ 31, 32, 113, 113, 35, 36, 37, 113, 39, 40, - /* 1580 */ 113, 113, 113, 113, 113, 46, 113, 113, 113, 113, - /* 1590 */ 113, 113, 113, 113, 55, 113, 113, 113, 59, 113, - /* 1600 */ 61, 113, 63, 64, 113, 66, 67, 68, 113, 70, - /* 1610 */ 71, 31, 32, 113, 113, 35, 36, 37, 113, 39, - /* 1620 */ 40, 113, 113, 113, 113, 113, 46, 113, 113, 113, - /* 1630 */ 113, 113, 113, 113, 113, 55, 113, 113, 113, 59, - /* 1640 */ 113, 61, 113, 63, 64, 113, 66, 67, 68, 113, - /* 1650 */ 70, 71, 31, 32, 33, 113, 35, 36, 37, 113, - /* 1660 */ 113, 40, 113, 113, 113, 113, 113, 46, 113, 113, - /* 1670 */ 113, 113, 113, 113, 113, 113, 55, 113, 113, 113, - /* 1680 */ 59, 113, 61, 113, 63, 64, 113, 66, 67, 68, - /* 1690 */ 113, 70, 71, 31, 32, 113, 113, 35, 36, 37, - /* 1700 */ 113, 113, 40, 113, 113, 113, 113, 113, 46, 113, - /* 1710 */ 113, 113, 113, 113, 113, 113, 113, 55, 113, 113, - /* 1720 */ 113, 59, 113, 61, 113, 63, 64, 113, 66, 67, - /* 1730 */ 68, 113, 70, 71, 113, 113, 113, 19, 113, 21, - /* 1740 */ 22, 113, 24, 113, 26, 113, 113, 29, 113, 113, - /* 1750 */ 113, 113, 113, 113, 113, 113, 38, 113, 113, 113, - /* 1760 */ 113, 113, 113, 113, 113, 113, 113, 49, 50, 51, - /* 1770 */ 52, 53, 54, 113, 113, 18, 113, 113, 21, 22, - /* 1780 */ 113, 24, 113, 26, 113, 113, 29, 113, 113, 113, - /* 1790 */ 113, 113, 113, 75, 113, 38, 113, 21, 22, 113, - /* 1800 */ 24, 113, 26, 113, 113, 29, 49, 50, 51, 52, - /* 1810 */ 53, 54, 113, 113, 38, 113, 113, 5, 113, 113, - /* 1820 */ 113, 113, 113, 113, 113, 49, 50, 51, 52, 53, - /* 1830 */ 54, 113, 75, 21, 22, 113, 24, 113, 26, 113, - /* 1840 */ 113, 29, 113, 113, 113, 113, 113, 113, 113, 73, - /* 1850 */ 38, 75, 21, 22, 113, 24, 113, 26, 113, 113, - /* 1860 */ 29, 49, 50, 51, 52, 53, 54, 113, 113, 38, - /* 1870 */ 113, 21, 22, 113, 24, 113, 26, 113, 47, 29, - /* 1880 */ 49, 50, 51, 52, 53, 54, 113, 75, 38, 113, - /* 1890 */ 113, 113, 113, 113, 113, 113, 113, 113, 113, 49, - /* 1900 */ 50, 51, 52, 53, 54, 113, 75, 113, 113, 21, - /* 1910 */ 22, 113, 24, 113, 26, 113, 113, 29, 113, 113, - /* 1920 */ 113, 113, 113, 113, 74, 75, 38, 113, 21, 22, - /* 1930 */ 113, 24, 113, 26, 113, 113, 29, 49, 50, 51, - /* 1940 */ 52, 53, 54, 113, 113, 38, 113, 113, 113, 113, - /* 1950 */ 113, 113, 113, 113, 113, 113, 49, 50, 51, 52, - /* 1960 */ 53, 54, 113, 75, 76, 113, 113, 21, 22, 113, - /* 1970 */ 24, 113, 26, 113, 113, 29, 113, 113, 113, 113, - /* 1980 */ 73, 113, 75, 113, 38, 113, 21, 22, 113, 24, - /* 1990 */ 113, 26, 113, 47, 29, 49, 50, 51, 52, 53, - /* 2000 */ 54, 113, 113, 38, 113, 113, 113, 113, 113, 113, - /* 2010 */ 113, 113, 113, 113, 49, 50, 51, 52, 53, 54, - /* 2020 */ 113, 75, 21, 22, 113, 24, 113, 26, 113, 113, - /* 2030 */ 29, 113, 113, 113, 113, 113, 113, 113, 113, 38, - /* 2040 */ 75, 21, 22, 113, 24, 113, 26, 113, 113, 29, - /* 2050 */ 49, 50, 51, 52, 53, 54, 113, 113, 38, 113, - /* 2060 */ 113, 113, 113, 113, 113, 113, 113, 113, 113, 49, - /* 2070 */ 50, 51, 52, 53, 54, 113, 75, 113, 113, 113, - /* 2080 */ 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, - /* 2090 */ 113, 113, 113, 113, 113, 75, + /* 950 */ 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, + /* 960 */ 106, 87, 88, 89, 90, 91, 92, 93, 94, 95, + /* 970 */ 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, + /* 980 */ 106, 21, 22, 38, 24, 107, 26, 107, 29, 29, + /* 990 */ 38, 21, 22, 115, 24, 117, 26, 117, 38, 29, + /* 1000 */ 24, 25, 26, 27, 28, 29, 30, 1, 38, 49, + /* 1010 */ 50, 51, 52, 53, 54, 32, 32, 2, 32, 49, + /* 1020 */ 50, 51, 52, 53, 54, 26, 27, 28, 29, 30, + /* 1030 */ 1, 50, 107, 73, 74, 75, 76, 77, 78, 79, + /* 1040 */ 107, 81, 117, 73, 74, 75, 76, 77, 78, 79, + /* 1050 */ 117, 81, 31, 32, 33, 34, 35, 36, 37, 0, + /* 1060 */ 1, 40, 47, 57, 107, 107, 38, 46, 41, 42, + /* 1070 */ 43, 44, 45, 116, 117, 117, 55, 49, 72, 2, + /* 1080 */ 59, 38, 61, 32, 63, 64, 57, 66, 67, 68, + /* 1090 */ 47, 70, 71, 31, 32, 33, 34, 35, 36, 37, + /* 1100 */ 107, 72, 40, 107, 32, 32, 113, 1, 46, 107, + /* 1110 */ 117, 118, 32, 117, 118, 113, 57, 55, 32, 117, + /* 1120 */ 118, 59, 1, 61, 47, 63, 64, 32, 66, 67, + /* 1130 */ 68, 72, 70, 71, 31, 32, 33, 107, 35, 36, + /* 1140 */ 37, 107, 1, 40, 114, 38, 116, 117, 114, 46, + /* 1150 */ 116, 117, 56, 1, 32, 107, 49, 38, 55, 32, + /* 1160 */ 32, 32, 59, 32, 61, 117, 63, 64, 32, 66, + /* 1170 */ 67, 68, 1, 70, 71, 31, 32, 32, 57, 35, + /* 1180 */ 36, 37, 107, 39, 40, 107, 107, 80, 32, 1, + /* 1190 */ 46, 32, 117, 72, 107, 117, 117, 32, 57, 55, + /* 1200 */ 32, 32, 111, 59, 117, 61, 112, 63, 64, 57, + /* 1210 */ 66, 67, 68, 72, 70, 71, 31, 32, 41, 107, + /* 1220 */ 35, 36, 37, 32, 72, 40, 3, 107, 57, 117, + /* 1230 */ 1, 46, 107, 48, 38, 1, 32, 117, 32, 32, + /* 1240 */ 55, 32, 117, 72, 59, 57, 61, 32, 63, 64, + /* 1250 */ 1, 66, 67, 68, 1, 70, 71, 31, 32, 32, + /* 1260 */ 72, 35, 36, 37, 107, 1, 40, 119, 33, 119, + /* 1270 */ 107, 119, 46, 107, 117, 119, 119, 119, 119, 119, + /* 1280 */ 117, 55, 56, 117, 119, 59, 57, 61, 119, 63, + /* 1290 */ 64, 57, 66, 67, 68, 1, 70, 71, 31, 32, + /* 1300 */ 119, 72, 35, 36, 37, 119, 72, 40, 119, 119, + /* 1310 */ 57, 119, 1, 46, 119, 119, 119, 119, 119, 107, + /* 1320 */ 119, 57, 55, 119, 119, 72, 59, 60, 61, 117, + /* 1330 */ 63, 64, 1, 66, 67, 68, 72, 70, 71, 31, + /* 1340 */ 32, 119, 119, 35, 36, 37, 119, 119, 40, 119, + /* 1350 */ 107, 57, 107, 1, 46, 119, 119, 119, 119, 119, + /* 1360 */ 117, 119, 117, 55, 119, 119, 72, 59, 57, 61, + /* 1370 */ 62, 63, 64, 1, 66, 67, 68, 1, 70, 71, + /* 1380 */ 31, 32, 107, 72, 35, 36, 37, 119, 57, 40, + /* 1390 */ 107, 107, 117, 119, 119, 46, 119, 107, 119, 119, + /* 1400 */ 117, 117, 119, 72, 55, 119, 119, 117, 59, 57, + /* 1410 */ 61, 119, 63, 64, 119, 66, 67, 68, 69, 70, + /* 1420 */ 71, 31, 32, 119, 72, 35, 36, 37, 119, 57, + /* 1430 */ 40, 119, 119, 57, 119, 119, 46, 107, 119, 119, + /* 1440 */ 107, 119, 107, 119, 72, 55, 119, 117, 72, 59, + /* 1450 */ 117, 61, 117, 63, 64, 119, 66, 67, 68, 69, + /* 1460 */ 70, 71, 31, 32, 119, 119, 35, 36, 37, 119, + /* 1470 */ 107, 40, 119, 119, 107, 107, 119, 46, 107, 119, + /* 1480 */ 117, 107, 119, 119, 117, 117, 55, 119, 117, 119, + /* 1490 */ 59, 117, 61, 62, 63, 64, 107, 66, 67, 68, + /* 1500 */ 107, 70, 71, 31, 32, 107, 117, 35, 36, 37, + /* 1510 */ 117, 107, 40, 119, 119, 117, 107, 119, 46, 119, + /* 1520 */ 107, 117, 119, 119, 107, 119, 117, 55, 119, 119, + /* 1530 */ 117, 59, 60, 61, 117, 63, 64, 107, 66, 67, + /* 1540 */ 68, 107, 70, 71, 31, 32, 119, 117, 35, 36, + /* 1550 */ 37, 117, 107, 40, 119, 107, 107, 107, 119, 46, + /* 1560 */ 107, 48, 117, 119, 119, 117, 117, 117, 55, 119, + /* 1570 */ 117, 119, 59, 119, 61, 119, 63, 64, 107, 66, + /* 1580 */ 67, 68, 107, 70, 71, 31, 32, 119, 117, 35, + /* 1590 */ 36, 37, 117, 39, 40, 119, 107, 119, 107, 119, + /* 1600 */ 46, 107, 107, 119, 119, 119, 117, 119, 117, 55, + /* 1610 */ 119, 117, 117, 59, 119, 61, 119, 63, 64, 119, + /* 1620 */ 66, 67, 68, 119, 70, 71, 31, 32, 119, 119, + /* 1630 */ 35, 36, 37, 119, 39, 40, 119, 119, 119, 119, + /* 1640 */ 119, 46, 119, 119, 119, 119, 119, 119, 119, 119, + /* 1650 */ 55, 119, 119, 119, 59, 119, 61, 119, 63, 64, + /* 1660 */ 119, 66, 67, 68, 119, 70, 71, 31, 32, 119, + /* 1670 */ 119, 35, 36, 37, 119, 39, 40, 119, 119, 119, + /* 1680 */ 119, 119, 46, 119, 119, 119, 119, 119, 119, 119, + /* 1690 */ 119, 55, 119, 119, 119, 59, 119, 61, 119, 63, + /* 1700 */ 64, 119, 66, 67, 68, 119, 70, 71, 31, 32, + /* 1710 */ 33, 119, 35, 36, 37, 119, 119, 40, 119, 119, + /* 1720 */ 119, 119, 119, 46, 119, 119, 119, 119, 119, 119, + /* 1730 */ 119, 119, 55, 119, 119, 119, 59, 119, 61, 119, + /* 1740 */ 63, 64, 119, 66, 67, 68, 119, 70, 71, 31, + /* 1750 */ 32, 119, 119, 35, 36, 37, 119, 119, 40, 119, + /* 1760 */ 119, 119, 119, 119, 46, 119, 119, 119, 119, 119, + /* 1770 */ 119, 119, 119, 55, 119, 119, 119, 59, 119, 61, + /* 1780 */ 119, 63, 64, 119, 66, 67, 68, 119, 70, 71, + /* 1790 */ 119, 119, 119, 19, 119, 21, 22, 119, 24, 119, + /* 1800 */ 26, 119, 119, 29, 119, 119, 119, 119, 119, 119, + /* 1810 */ 119, 119, 38, 119, 119, 119, 119, 119, 119, 119, + /* 1820 */ 119, 119, 119, 49, 50, 51, 52, 53, 54, 119, + /* 1830 */ 119, 18, 119, 119, 21, 22, 119, 24, 119, 26, + /* 1840 */ 119, 119, 29, 119, 119, 119, 119, 119, 119, 119, + /* 1850 */ 119, 38, 119, 119, 119, 81, 119, 5, 119, 119, + /* 1860 */ 119, 119, 49, 50, 51, 52, 53, 54, 119, 119, + /* 1870 */ 119, 119, 119, 21, 22, 119, 24, 119, 26, 119, + /* 1880 */ 119, 29, 119, 119, 119, 119, 119, 119, 119, 119, + /* 1890 */ 38, 119, 119, 119, 81, 119, 119, 119, 119, 119, + /* 1900 */ 119, 49, 50, 51, 52, 53, 54, 119, 119, 119, + /* 1910 */ 119, 119, 21, 22, 119, 24, 119, 26, 119, 119, + /* 1920 */ 29, 119, 119, 119, 119, 119, 119, 119, 119, 38, + /* 1930 */ 119, 119, 119, 81, 119, 119, 119, 119, 47, 119, + /* 1940 */ 49, 50, 51, 52, 53, 54, 119, 119, 119, 119, + /* 1950 */ 119, 21, 22, 119, 24, 119, 26, 119, 119, 29, + /* 1960 */ 119, 119, 119, 119, 119, 119, 119, 119, 38, 119, + /* 1970 */ 119, 119, 81, 119, 119, 119, 119, 119, 119, 49, + /* 1980 */ 50, 51, 52, 53, 54, 119, 119, 119, 119, 119, + /* 1990 */ 21, 22, 119, 24, 119, 26, 119, 119, 29, 119, + /* 2000 */ 119, 119, 119, 119, 119, 119, 119, 38, 119, 119, + /* 2010 */ 80, 81, 119, 119, 119, 119, 119, 119, 49, 50, + /* 2020 */ 51, 52, 53, 54, 119, 119, 119, 119, 119, 21, + /* 2030 */ 22, 119, 24, 119, 26, 119, 119, 29, 119, 119, + /* 2040 */ 119, 119, 119, 119, 119, 119, 38, 119, 119, 119, + /* 2050 */ 81, 82, 119, 119, 119, 47, 119, 49, 50, 51, + /* 2060 */ 52, 53, 54, 119, 119, 119, 119, 119, 21, 22, + /* 2070 */ 119, 24, 119, 26, 119, 119, 29, 119, 119, 119, + /* 2080 */ 119, 119, 119, 119, 119, 38, 119, 119, 119, 81, + /* 2090 */ 119, 119, 119, 119, 119, 119, 49, 50, 51, 52, + /* 2100 */ 53, 54, 119, 119, 119, 119, 119, 21, 22, 119, + /* 2110 */ 24, 119, 26, 119, 119, 29, 119, 119, 119, 119, + /* 2120 */ 119, 119, 119, 119, 38, 119, 119, 119, 81, 119, + /* 2130 */ 119, 119, 119, 119, 119, 49, 50, 51, 52, 53, + /* 2140 */ 54, 119, 119, 119, 119, 119, 21, 22, 119, 24, + /* 2150 */ 119, 26, 119, 119, 29, 119, 119, 119, 119, 119, + /* 2160 */ 119, 119, 119, 38, 119, 119, 119, 81, 119, 119, + /* 2170 */ 119, 119, 119, 119, 49, 50, 51, 52, 53, 54, + /* 2180 */ 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, + /* 2190 */ 119, 119, 119, 119, 119, 119, 119, 119, 119, 119, + /* 2200 */ 119, 119, 119, 119, 119, 119, 81, }; -#define KK_SHIFT_USE_DFLT (-4) -static short kk_shift_ofst[] = { - /* 0 */ 1, 108, 1003, -4, -4, -4, -4, -4, -4, -4, +#define YY_SHIFT_USE_DFLT (-4) +static short yy_shift_ofst[] = { + /* 0 */ 1, 79, 1059, -4, -4, -4, -4, -4, -4, -4, /* 10 */ -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, - /* 20 */ -4, -4, -4, 1662, 1965, 137, 1044, 1050, 965, 136, - /* 30 */ -4, 140, 1111, 1152, 1047, 293, -4, 1965, 167, -4, - /* 40 */ 1965, 1965, 279, 1965, 1965, 279, 1718, 235, 1757, 235, - /* 50 */ 1965, 235, 1965, 651, 1965, 651, 1965, 279, 1965, 240, - /* 60 */ 1965, 606, 1965, 42, 1776, 42, 1965, 42, 1965, 42, - /* 70 */ 1965, 42, 1965, 42, 1965, 42, 1965, 42, 1965, 42, - /* 80 */ 1965, -4, 1965, 437, 348, 1965, 240, -4, -4, 1812, - /* 90 */ 197, -4, 1965, 225, 1965, 582, 1831, 529, 1965, 240, - /* 100 */ 1965, 272, -4, 1850, 529, -4, 200, -4, 2001, 1888, - /* 110 */ -4, 196, -4, -4, 376, 1965, 529, -4, -4, -4, - /* 120 */ -4, -4, -4, -4, -4, -4, 30, -4, 2020, -4, - /* 130 */ 406, 1965, 529, -4, -4, 972, 311, -4, 341, 368, - /* 140 */ 464, 1056, -4, 397, -4, 495, 525, 1907, -4, -4, - /* 150 */ 1965, 235, 1965, 235, 279, 279, 442, -4, 466, 72, - /* 160 */ 1965, -3, 1, 1156, 1088, 502, -4, 524, 80, -4, - /* 170 */ 524, -4, 971, 1965, 529, 1965, 529, 1965, 529, 1965, - /* 180 */ 529, 1965, 529, -4, 969, 993, 987, 991, 1, 1178, - /* 190 */ 1129, 995, -4, 1965, 557, 1946, 271, 998, 1, 1197, - /* 200 */ 1170, 1016, -4, -4, 1026, 1036, 1229, 1238, 1211, 1066, - /* 210 */ -4, 1965, 27, 1, 1255, 1252, 1071, -4, 1021, 1072, - /* 220 */ -4, 1965, 77, -4, 1965, 320, -4, 1965, 350, -4, - /* 230 */ 1965, 380, -4, 267, 1077, 1, 1275, 1293, 1097, -4, - /* 240 */ 1100, -4, 1101, -4, 1965, 410, -4, -4, -4, 1105, - /* 250 */ 1, 1279, 1334, 1109, -4, 1110, 1, 1296, 1375, 1112, - /* 260 */ -4, 1416, 1114, -4, 1135, 1065, 1083, 1138, -4, 275, - /* 270 */ 1142, 1, 1316, 1457, 1146, -4, 1147, -4, 1139, 261, - /* 280 */ -4, -4, -4, -4, -4, -4, -4, -4, 1965, 469, - /* 290 */ 1, 1320, 1498, 1159, -4, 1165, 1186, 1965, 107, 1, - /* 300 */ 1337, 1539, 1179, -4, 1965, 499, 1, 1357, 1580, 1180, - /* 310 */ -4, 1621, 1182, -4, 1006, 1183, -4, 1187, 1219, 1188, - /* 320 */ 1191, -4, + /* 20 */ -4, -4, -4, 1718, 2047, 137, 1006, 1029, 1021, 50, + /* 30 */ -4, 76, 1121, 1141, 1103, 140, -4, 2047, 167, -4, + /* 40 */ 2047, 2047, 976, 2047, 2047, 976, 1774, 288, 1813, 288, + /* 50 */ 2047, 288, 2047, 657, 2047, 657, 2047, 976, 2047, 999, + /* 60 */ 2047, 612, 2047, 42, 960, 42, 970, 42, 2047, 42, + /* 70 */ 2047, 42, 2047, 42, 2047, 42, 2047, 42, 2047, 42, + /* 80 */ 2047, -4, 2047, 443, 328, 2047, 999, -4, -4, 1852, + /* 90 */ 197, -4, 2047, 225, 2047, 588, 1891, 535, 2047, 999, + /* 100 */ 2047, 278, -4, 1930, 535, -4, 200, -4, 2086, 1969, + /* 110 */ -4, 30, -4, -4, 352, 2047, 535, -4, -4, -4, + /* 120 */ -4, -4, -4, -4, -4, -4, 281, -4, 2125, -4, + /* 130 */ 382, 2047, 535, -4, -4, 1028, 311, -4, 337, 341, + /* 140 */ 470, 1107, -4, 396, -4, 472, 501, -4, -4, -4, + /* 150 */ -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, + /* 160 */ -4, 2047, 288, 2047, 288, 976, 976, 448, -4, 498, + /* 170 */ 72, 2047, -3, 1, 1152, 1144, 478, -4, 502, 166, + /* 180 */ -4, 502, -4, 1027, 2047, 535, 2047, 535, 2047, 535, + /* 190 */ 2047, 535, 2047, 535, -4, 945, 959, 1043, 983, 1, + /* 200 */ 1171, 1185, 984, -4, 2047, 563, 2008, 1015, 986, 1, + /* 210 */ 1188, 1226, 1051, -4, -4, 952, 1072, 1229, 1234, 1267, + /* 220 */ 1073, -4, 2047, 27, 1, 1253, 1308, 1080, -4, 981, + /* 230 */ 1086, -4, 2047, 77, -4, 2047, 326, -4, 2047, 356, + /* 240 */ -4, 2047, 386, -4, 273, 1095, 1, 1264, 1349, 1122, + /* 250 */ -4, 1127, -4, 1128, -4, 2047, 416, -4, -4, -4, + /* 260 */ 1129, 1, 1294, 1390, 1131, -4, 1136, 1, 1311, 1431, + /* 270 */ 1145, -4, 1472, 1156, -4, 1159, 1106, 1096, 1165, -4, + /* 280 */ 1077, 1168, 1, 1331, 1513, 1169, -4, 1119, -4, 1177, + /* 290 */ 270, -4, -4, -4, -4, -4, -4, -4, -4, 2047, + /* 300 */ 475, 1, 1352, 1554, 1191, -4, 1196, 1223, 2047, 107, + /* 310 */ 1, 1372, 1595, 1204, -4, 2047, 505, 1, 1376, 1636, + /* 320 */ 1206, -4, 1677, 1207, -4, 1062, 1209, -4, 1215, 1249, + /* 330 */ 1235, 1227, -4, }; -#define KK_REDUCE_USE_DFLT (-25) -static short kk_reduce_ofst[] = { - /* 0 */ 559, -25, 895, -25, -25, -25, -25, -25, -25, -25, - /* 10 */ -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, - /* 20 */ -25, -25, -25, -25, 907, -25, 602, 895, -25, -25, - /* 30 */ -25, -25, 623, 895, -25, -25, -25, 946, -25, -25, - /* 40 */ 984, 1020, -25, 1025, 1034, -25, 1037, -25, 1039, -25, - /* 50 */ 1061, -25, 1062, -25, 1070, -25, 1075, -25, 1093, -25, - /* 60 */ 1107, -25, 1116, -25, 1121, -25, 1144, -25, 1148, -25, - /* 70 */ 1151, -25, 1157, -25, 1162, -25, 1189, -25, 1193, -25, - /* 80 */ 1195, -25, 1198, -25, -25, 1230, -25, -25, -25, 908, - /* 90 */ -25, -25, 1233, -25, 1234, -25, 943, -25, 1239, -25, - /* 100 */ 1271, -25, -25, 948, -25, -25, -25, -25, 952, 980, - /* 110 */ -25, -25, -25, -25, -25, 1274, -25, -25, -25, -25, - /* 120 */ -25, -25, -25, -25, -25, -25, -25, -25, 988, -25, - /* 130 */ -25, 1280, -25, -25, -25, 246, -25, -25, -25, -25, - /* 140 */ -25, 361, -25, -25, -25, -25, -25, 1239, -25, -25, - /* 150 */ 1285, -25, 1307, -25, -25, -25, -25, -25, -25, -25, - /* 160 */ 1312, -25, 644, 895, -25, -25, -25, -24, -25, -25, - /* 170 */ 903, -25, -25, 1315, -25, 1321, -25, 1324, -25, 1339, - /* 180 */ -25, 1348, -25, -25, -25, -25, 212, -25, 665, 895, - /* 190 */ -25, -25, -25, 1353, -25, 985, -25, -25, 686, 895, - /* 200 */ -25, -25, -25, -25, -25, -25, 707, 895, -25, -25, - /* 210 */ -25, 1354, -25, 728, 895, -25, -25, -25, -25, -25, - /* 220 */ -25, 1359, -25, -25, 1362, -25, -25, 1367, -25, -25, - /* 230 */ 1389, -25, -25, -25, -25, 749, 895, -25, -25, -25, - /* 240 */ -25, -25, -25, -25, 1390, -25, -25, -25, -25, -25, - /* 250 */ 770, 895, -25, -25, -25, -25, 791, 895, -25, -25, - /* 260 */ -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, - /* 270 */ -25, 812, 895, -25, -25, -25, 1082, -25, -25, 1076, - /* 280 */ -25, -25, -25, -25, -25, -25, -25, -25, 1395, -25, - /* 290 */ 833, 895, -25, -25, -25, -25, -25, 1397, -25, 854, - /* 300 */ 895, -25, -25, -25, 1398, -25, 875, 895, -25, -25, - /* 310 */ -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, - /* 320 */ -25, -25, +#define YY_REDUCE_USE_DFLT (-32) +static short yy_reduce_ofst[] = { + /* 0 */ 559, -32, 874, -32, -32, -32, -32, -32, -32, -32, + /* 10 */ -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, + /* 20 */ -32, -32, -32, -32, 880, -32, 170, 874, -32, -32, + /* 30 */ -32, -32, 602, 874, -32, -32, -32, 925, -32, -32, + /* 40 */ 933, 958, -32, 1048, 1075, -32, 1079, -32, 1087, -32, + /* 50 */ 1112, -32, 1120, -32, 1157, -32, 1163, -32, 1166, -32, + /* 60 */ 1212, -32, 1245, -32, 1275, -32, 1283, -32, 1284, -32, + /* 70 */ 1290, -32, 1330, -32, 1333, -32, 1335, -32, 1363, -32, + /* 80 */ 1367, -32, 1368, -32, -32, 1371, -32, -32, -32, 878, + /* 90 */ -32, -32, 1374, -32, 1389, -32, 993, -32, 1393, -32, + /* 100 */ 1398, -32, -32, 1030, -32, -32, -32, -32, 957, 1034, + /* 110 */ -32, -32, -32, -32, -32, 1404, -32, -32, -32, -32, + /* 120 */ -32, -32, -32, -32, -32, -32, -32, -32, 996, -32, + /* 130 */ -32, 1409, -32, -32, -32, 246, -32, -32, -32, -32, + /* 140 */ -32, 333, -32, -32, -32, -32, -32, -32, -32, -32, + /* 150 */ -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, + /* 160 */ -32, 1078, -32, 1413, -32, -32, -32, -32, -32, -32, + /* 170 */ -32, 1417, -32, 623, 874, -32, -32, -32, -31, -32, + /* 180 */ -32, 459, -32, -32, 1430, -32, 1434, -32, 1445, -32, + /* 190 */ 1448, -32, 1449, -32, -32, -32, -32, 168, -32, 644, + /* 200 */ 874, -32, -32, -32, 1450, -32, 1002, -32, -32, 665, + /* 210 */ 874, -32, -32, -32, -32, -32, -32, 686, 874, -32, + /* 220 */ -32, -32, 1453, -32, 707, 874, -32, -32, -32, -32, + /* 230 */ -32, -32, 1471, -32, -32, 1475, -32, -32, 1489, -32, + /* 240 */ -32, 1491, -32, -32, -32, -32, 728, 874, -32, -32, + /* 250 */ -32, -32, -32, -32, -32, 1494, -32, -32, -32, -32, + /* 260 */ -32, 749, 874, -32, -32, -32, -32, 770, 874, -32, + /* 270 */ -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, + /* 280 */ -32, -32, 791, 874, -32, -32, -32, 1091, -32, -32, + /* 290 */ 1094, -32, -32, -32, -32, -32, -32, -32, -32, 1125, + /* 300 */ -32, 812, 874, -32, -32, -32, -32, -32, 1243, -32, + /* 310 */ 833, 874, -32, -32, -32, 1495, -32, 854, 874, -32, + /* 320 */ -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, + /* 330 */ -32, -32, -32, }; -static KKACTIONTYPE kk_default[] = { - /* 0 */ 455, 455, 455, 324, 326, 327, 328, 329, 330, 331, - /* 10 */ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - /* 20 */ 342, 343, 344, 455, 455, 455, 455, 455, 455, 455, - /* 30 */ 345, 455, 455, 455, 455, 455, 347, 455, 455, 350, - /* 40 */ 455, 455, 394, 455, 455, 395, 455, 398, 455, 400, - /* 50 */ 455, 402, 455, 403, 455, 404, 455, 405, 455, 406, - /* 60 */ 455, 407, 455, 408, 455, 411, 455, 412, 455, 413, - /* 70 */ 455, 414, 455, 415, 455, 416, 455, 417, 455, 418, - /* 80 */ 455, 419, 455, 420, 455, 455, 421, 423, 424, 455, - /* 90 */ 455, 430, 455, 455, 455, 431, 455, 446, 455, 422, - /* 100 */ 455, 455, 425, 455, 440, 426, 455, 427, 455, 455, - /* 110 */ 428, 455, 429, 438, 450, 455, 439, 441, 448, 449, - /* 120 */ 450, 451, 452, 453, 454, 437, 455, 442, 455, 444, - /* 130 */ 450, 455, 447, 443, 445, 455, 455, 432, 455, 455, - /* 140 */ 455, 455, 433, 455, 434, 449, 448, 455, 409, 410, - /* 150 */ 455, 401, 455, 399, 397, 396, 455, 351, 455, 455, - /* 160 */ 455, 455, 455, 455, 455, 455, 352, 455, 455, 356, - /* 170 */ 455, 357, 455, 455, 359, 455, 360, 455, 361, 455, - /* 180 */ 362, 455, 363, 358, 455, 455, 455, 455, 455, 455, - /* 190 */ 455, 455, 364, 455, 455, 455, 455, 442, 455, 455, - /* 200 */ 455, 455, 376, 378, 455, 455, 455, 455, 455, 455, - /* 210 */ 380, 455, 455, 455, 455, 455, 455, 382, 455, 455, - /* 220 */ 384, 455, 455, 385, 455, 455, 386, 455, 455, 387, - /* 230 */ 455, 455, 388, 455, 455, 455, 455, 455, 455, 389, - /* 240 */ 455, 391, 455, 392, 455, 455, 379, 393, 325, 455, - /* 250 */ 455, 455, 455, 455, 390, 455, 455, 455, 455, 455, - /* 260 */ 383, 455, 455, 381, 443, 455, 455, 455, 377, 455, - /* 270 */ 455, 455, 455, 455, 455, 365, 455, 366, 368, 455, - /* 280 */ 369, 370, 371, 372, 373, 374, 375, 367, 455, 455, - /* 290 */ 455, 455, 455, 455, 353, 455, 455, 455, 455, 455, - /* 300 */ 455, 455, 455, 354, 455, 455, 455, 455, 455, 455, - /* 310 */ 355, 455, 455, 348, 455, 455, 346, 455, 455, 455, - /* 320 */ 455, 349, +static YYACTIONTYPE yy_default[] = { + /* 0 */ 478, 478, 478, 335, 337, 338, 339, 340, 341, 342, + /* 10 */ 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, + /* 20 */ 353, 354, 355, 478, 478, 478, 478, 478, 478, 478, + /* 30 */ 356, 478, 478, 478, 478, 478, 358, 478, 478, 361, + /* 40 */ 478, 478, 405, 478, 478, 406, 478, 409, 478, 411, + /* 50 */ 478, 413, 478, 414, 478, 415, 478, 416, 478, 417, + /* 60 */ 478, 418, 478, 419, 478, 435, 478, 434, 478, 436, + /* 70 */ 478, 437, 478, 438, 478, 439, 478, 440, 478, 441, + /* 80 */ 478, 442, 478, 443, 478, 478, 444, 446, 447, 478, + /* 90 */ 478, 453, 478, 478, 478, 454, 478, 469, 478, 445, + /* 100 */ 478, 478, 448, 478, 463, 449, 478, 450, 478, 478, + /* 110 */ 451, 478, 452, 461, 473, 478, 462, 464, 471, 472, + /* 120 */ 473, 474, 475, 476, 477, 460, 478, 465, 478, 467, + /* 130 */ 473, 478, 470, 466, 468, 478, 478, 455, 478, 478, + /* 140 */ 478, 478, 456, 478, 457, 472, 471, 421, 423, 425, + /* 150 */ 427, 429, 431, 433, 420, 422, 424, 426, 428, 430, + /* 160 */ 432, 478, 412, 478, 410, 408, 407, 478, 362, 478, + /* 170 */ 478, 478, 478, 478, 478, 478, 478, 363, 478, 478, + /* 180 */ 367, 478, 368, 478, 478, 370, 478, 371, 478, 372, + /* 190 */ 478, 373, 478, 374, 369, 478, 478, 478, 478, 478, + /* 200 */ 478, 478, 478, 375, 478, 478, 478, 478, 465, 478, + /* 210 */ 478, 478, 478, 387, 389, 478, 478, 478, 478, 478, + /* 220 */ 478, 391, 478, 478, 478, 478, 478, 478, 393, 478, + /* 230 */ 478, 395, 478, 478, 396, 478, 478, 397, 478, 478, + /* 240 */ 398, 478, 478, 399, 478, 478, 478, 478, 478, 478, + /* 250 */ 400, 478, 402, 478, 403, 478, 478, 390, 404, 336, + /* 260 */ 478, 478, 478, 478, 478, 401, 478, 478, 478, 478, + /* 270 */ 478, 394, 478, 478, 392, 466, 478, 478, 478, 388, + /* 280 */ 478, 478, 478, 478, 478, 478, 376, 478, 377, 379, + /* 290 */ 478, 380, 381, 382, 383, 384, 385, 386, 378, 478, + /* 300 */ 478, 478, 478, 478, 478, 364, 478, 478, 478, 478, + /* 310 */ 478, 478, 478, 478, 365, 478, 478, 478, 478, 478, + /* 320 */ 478, 366, 478, 478, 359, 478, 478, 357, 478, 478, + /* 330 */ 478, 478, 360, }; -#define KK_SZ_ACTTAB (sizeof(kk_action)/sizeof(kk_action[0])) +#define YY_SZ_ACTTAB (sizeof(yy_action)/sizeof(yy_action[0])) /* The next table maps tokens into fallback tokens. If a construct ** like the following: -** +** ** %fallback ID X Y Z. ** ** appears in the grammer, then ID becomes a fallback token for X, Y, @@ -1228,10 +1252,10 @@ static KKACTIONTYPE kk_default[] = { ** but it does not parse, the type of the token is changed to ID and ** the parse is retried before an error is thrown. */ -#ifdef KKFALLBACK -static const KKCODETYPE kkFallback[] = { +#ifdef YYFALLBACK +static const YYCODETYPE yyFallback[] = { }; -#endif /* KKFALLBACK */ +#endif /* YYFALLBACK */ /* The following structure represents a single element of the ** parser's stack. Information stored includes: @@ -1245,36 +1269,36 @@ static const KKCODETYPE kkFallback[] = { ** the information used by the action routines in the grammar. ** It is sometimes called the "minor" token. */ -struct kkStackEntry { +struct yyStackEntry { int stateno; /* The state-number */ int major; /* The major token value. This is the code ** number for the token at this stack level */ - KKMINORTYPE minor; /* The user-supplied minor token value. This + YYMINORTYPE minor; /* The user-supplied minor token value. This ** is the value of the token */ }; -typedef struct kkStackEntry kkStackEntry; +typedef struct yyStackEntry yyStackEntry; /* The state of the parser is completely contained in an instance of ** the following structure */ -struct kkParser { - int kkidx; /* Index of top element in stack */ - int kkerrcnt; /* Shifts left before out of the error */ +struct yyParser { + int yyidx; /* Index of top element in stack */ + int yyerrcnt; /* Shifts left before out of the error */ phvolt_ARG_SDECL /* A place to hold %extra_argument */ - kkStackEntry kkstack[KKSTACKDEPTH]; /* The parser's stack */ + yyStackEntry yystack[YYSTACKDEPTH]; /* The parser's stack */ }; -typedef struct kkParser kkParser; +typedef struct yyParser yyParser; #ifndef NDEBUG #include -static FILE *kkTraceFILE = 0; -static char *kkTracePrompt = 0; +static FILE *yyTraceFILE = 0; +static char *yyTracePrompt = 0; #endif /* NDEBUG */ #ifndef NDEBUG -/* +/* ** Turn parser tracing on by giving a stream to which to write the trace ** and a prompt to preface each trace message. Tracing is turned off -** by making either argument NULL +** by making either argument NULL ** ** Inputs: **