diff options
author | Darshan Shaligram <dshaligram@users.sourceforge.net> | 2010-06-28 12:57:43 +0530 |
---|---|---|
committer | Darshan Shaligram <dshaligram@users.sourceforge.net> | 2010-06-28 12:57:43 +0530 |
commit | b586da84dc64d6a49081d6ee85b46b177ad34fba (patch) | |
tree | 80d66a3ac3ce1d495f7aa8cfc6ee787ed606c9d6 /crawl-ref/source/prebuilt | |
parent | 1659bee3ecd4332d80cbf7d814c815026167d1da (diff) | |
download | crawl-ref-b586da84dc64d6a49081d6ee85b46b177ad34fba.tar.gz crawl-ref-b586da84dc64d6a49081d6ee85b46b177ad34fba.zip |
Update canned level compiler for DESC:
Diffstat (limited to 'crawl-ref/source/prebuilt')
-rw-r--r-- | crawl-ref/source/prebuilt/levcomp.lex.cc | 2425 | ||||
-rw-r--r-- | crawl-ref/source/prebuilt/levcomp.tab.cc | 792 | ||||
-rw-r--r-- | crawl-ref/source/prebuilt/levcomp.tab.h | 44 |
3 files changed, 1642 insertions, 1619 deletions
diff --git a/crawl-ref/source/prebuilt/levcomp.lex.cc b/crawl-ref/source/prebuilt/levcomp.lex.cc index 63f819d806..8cc047d7e6 100644 --- a/crawl-ref/source/prebuilt/levcomp.lex.cc +++ b/crawl-ref/source/prebuilt/levcomp.lex.cc @@ -54,6 +54,7 @@ typedef int flex_int32_t; typedef unsigned char flex_uint8_t; typedef unsigned short int flex_uint16_t; typedef unsigned int flex_uint32_t; +#endif /* ! C99 */ /* Limits of integral types. */ #ifndef INT8_MIN @@ -84,8 +85,6 @@ typedef unsigned int flex_uint32_t; #define UINT32_MAX (4294967295U) #endif -#endif /* ! C99 */ - #endif /* ! FLEXINT_H */ #ifdef __cplusplus @@ -142,15 +141,7 @@ typedef unsigned int flex_uint32_t; /* Size of default input buffer. */ #ifndef YY_BUF_SIZE -#ifdef __ia64__ -/* On IA-64, the buffer size is 16k, not 8k. - * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case. - * Ditto for the __ia64__ case accordingly. - */ -#define YY_BUF_SIZE 32768 -#else #define YY_BUF_SIZE 16384 -#endif /* __ia64__ */ #endif /* The state buf must be large enough to hold one state per character in the main buffer. @@ -162,7 +153,12 @@ typedef unsigned int flex_uint32_t; typedef struct yy_buffer_state *YY_BUFFER_STATE; #endif -extern int yyleng; +#ifndef YY_TYPEDEF_YY_SIZE_T +#define YY_TYPEDEF_YY_SIZE_T +typedef size_t yy_size_t; +#endif + +extern yy_size_t yyleng; extern FILE *yyin, *yyout; @@ -201,11 +197,6 @@ extern FILE *yyin, *yyout; #define unput(c) yyunput( c, (yytext_ptr) ) -#ifndef YY_TYPEDEF_YY_SIZE_T -#define YY_TYPEDEF_YY_SIZE_T -typedef size_t yy_size_t; -#endif - #ifndef YY_STRUCT_YY_BUFFER_STATE #define YY_STRUCT_YY_BUFFER_STATE struct yy_buffer_state @@ -223,7 +214,7 @@ struct yy_buffer_state /* Number of characters read into yy_ch_buf, not including EOB * characters. */ - int yy_n_chars; + yy_size_t yy_n_chars; /* Whether we "own" the buffer - i.e., we know we created it, * and can realloc() it to grow it, and should free() it to @@ -293,8 +284,8 @@ static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ /* yy_hold_char holds the character lost when yytext is formed. */ static char yy_hold_char; -static int yy_n_chars; /* number of characters read into yy_ch_buf */ -int yyleng; +static yy_size_t yy_n_chars; /* number of characters read into yy_ch_buf */ +yy_size_t yyleng; /* Points to current character in buffer. */ static char *yy_c_buf_p = (char *) 0; @@ -322,7 +313,7 @@ static void yy_init_buffer (YY_BUFFER_STATE b,FILE *file ); YY_BUFFER_STATE yy_scan_buffer (char *base,yy_size_t size ); YY_BUFFER_STATE yy_scan_string (yyconst char *yy_str ); -YY_BUFFER_STATE yy_scan_bytes (yyconst char *bytes,int len ); +YY_BUFFER_STATE yy_scan_bytes (yyconst char *bytes,yy_size_t len ); void *yyalloc (yy_size_t ); void *yyrealloc (void *,yy_size_t ); @@ -382,8 +373,8 @@ static void yy_fatal_error (yyconst char msg[] ); *yy_cp = '\0'; \ (yy_c_buf_p) = yy_cp; -#define YY_NUM_RULES 84 -#define YY_END_OF_BUFFER 85 +#define YY_NUM_RULES 85 +#define YY_END_OF_BUFFER 86 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -391,39 +382,39 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[1180] = +static yyconst flex_int16_t yy_accept[1191] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 85, 83, 80, 81, - 82, 78, 83, 76, 79, 77, 83, 83, 83, 83, - 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, - 83, 83, 80, 34, 36, 83, 83, 83, 83, 83, - 83, 83, 84, 6, 84, 84, 4, 2, 3, 84, - 2, 2, 2, 2, 9, 10, 84, 9, 9, 84, - 12, 84, 32, 80, 33, 82, 32, 32, 32, 32, + 0, 0, 0, 0, 0, 0, 86, 84, 81, 82, + 83, 79, 84, 77, 80, 78, 84, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 81, 34, 36, 84, 84, 84, 84, 84, + 84, 84, 85, 6, 85, 85, 4, 2, 3, 85, + 2, 2, 2, 2, 9, 10, 85, 9, 9, 85, + 12, 85, 32, 81, 33, 83, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, - 32, 32, 32, 32, 32, 32, 32, 32, 80, 32, + 32, 32, 32, 32, 32, 32, 32, 32, 81, 32, - 32, 32, 32, 32, 32, 32, 32, 32, 83, 28, - 23, 28, 78, 83, 27, 79, 77, 83, 83, 83, - 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, - 83, 83, 83, 83, 28, 34, 36, 83, 83, 83, - 83, 83, 83, 83, 15, 16, 82, 13, 13, 13, + 32, 32, 32, 32, 32, 32, 32, 32, 84, 28, + 23, 28, 79, 84, 27, 80, 78, 84, 84, 84, + 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, + 84, 84, 84, 84, 28, 34, 36, 84, 84, 84, + 84, 84, 84, 84, 15, 16, 83, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, - 13, 13, 13, 13, 13, 83, 13, 15, 13, 13, - 13, 13, 13, 13, 84, 21, 22, 84, 20, 84, - 80, 81, 79, 0, 0, 0, 0, 0, 0, 0, + 13, 13, 13, 13, 13, 84, 13, 15, 13, 13, + 13, 13, 13, 13, 85, 21, 22, 85, 20, 85, + 81, 82, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 80, 34, 36, 0, 0, 0, 0, 0, 34, 0, + 81, 34, 36, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 39, 6, 5, 0, 0, 2, 3, 2, 0, 2, 2, 2, 2, 9, 9, 10, 9, 9, 9, 0, 11, 0, 12, - 31, 0, 31, 80, 33, 0, 0, 33, 31, 31, + 31, 0, 31, 81, 33, 0, 0, 33, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 31, 31, 31, 0, 30, 31, 80, 31, + 31, 31, 31, 31, 31, 0, 30, 31, 81, 31, 34, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 26, 0, 26, 28, 23, 28, 0, 23, 26, @@ -441,87 +432,88 @@ static yyconst flex_int16_t yy_accept[1180] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2, 9, 9, 9, - 7, 0, 0, 29, 0, 31, 31, 31, 31, 31, + 0, 0, 0, 0, 0, 0, 0, 2, 9, 9, + 9, 7, 0, 0, 29, 0, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 31, 31, 34, 31, 31, 31, 31, 31, - 31, 31, 0, 24, 0, 26, 26, 26, 26, 26, + 31, 31, 31, 31, 31, 31, 34, 31, 31, 31, + 31, 31, 31, 31, 0, 24, 0, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, - 26, 26, 26, 26, 34, 34, 26, 26, 26, 26, - 26, 26, 26, 13, 13, 13, 13, 13, 13, 13, + 26, 26, 26, 26, 26, 26, 26, 34, 34, 26, + 26, 26, 26, 26, 26, 26, 13, 13, 13, 13, + 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, - 13, 13, 13, 13, 13, 13, 13, 13, 13, 0, - 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 13, 13, 13, 0, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 35, 0, 0, 0, 0, 0, - 0, 2, 9, 8, 0, 9, 7, 0, 31, 31, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, + 0, 0, 0, 0, 0, 0, 2, 9, 8, 0, + 9, 7, 0, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 31, 31, 31, 31, 31, 31, 31, 0, - 31, 0, 31, 31, 31, 31, 26, 26, 26, 26, + 31, 31, 31, 31, 31, 0, 31, 0, 31, 31, + 31, 31, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, - 26, 26, 26, 26, 26, 26, 26, 0, 26, 0, - 26, 26, 26, 26, 13, 13, 13, 13, 13, 13, + 26, 26, 26, 26, 0, 26, 0, 26, 26, 26, + 26, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, - 13, 13, 13, 13, 13, 13, 13, 13, 13, 0, - 0, 0, 0, 0, 0, 0, 67, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 66, 43, 0, 0, - 0, 0, 0, 0, 0, 52, 64, 0, 0, 0, - 0, 38, 0, 0, 0, 0, 2, 31, 31, 31, - 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, + 13, 13, 13, 13, 13, 13, 13, 0, 0, 0, + 0, 45, 0, 0, 0, 68, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 67, 43, 0, 0, 0, + 0, 0, 0, 0, 53, 65, 0, 0, 0, 0, + 38, 0, 0, 0, 0, 2, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 0, 31, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, - 26, 26, 26, 26, 26, 26, 26, 26, 26, 0, - 26, 13, 13, 13, 13, 13, 13, 13, 13, 13, + 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, + 0, 26, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, - 0, 0, 0, 45, 0, 51, 62, 70, 71, 73, - 72, 74, 0, 0, 0, 0, 0, 0, 0, 47, - 63, 0, 55, 0, 0, 0, 0, 0, 0, 0, + 13, 0, 0, 0, 46, 0, 52, 63, 71, 72, + 74, 73, 75, 0, 0, 0, 0, 0, 0, 0, - 41, 1, 31, 31, 31, 31, 31, 31, 31, 31, + 48, 64, 0, 56, 0, 0, 0, 0, 0, 0, + 0, 41, 1, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 31, 26, 26, 26, 26, 26, 26, 26, + 31, 31, 31, 31, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, - 26, 26, 26, 26, 13, 13, 13, 13, 13, 13, + 26, 26, 26, 26, 26, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, - 13, 13, 13, 54, 49, 57, 0, 53, 0, 0, - 0, 0, 68, 56, 46, 0, 0, 50, 0, 0, + 13, 13, 13, 13, 55, 50, 58, 0, 54, 0, - 0, 0, 0, 1, 31, 31, 31, 31, 31, 31, + 0, 0, 0, 69, 57, 47, 0, 0, 51, 0, + 0, 0, 0, 0, 1, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, - 31, 31, 31, 31, 26, 26, 26, 26, 26, 26, + 31, 31, 31, 31, 31, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, - 26, 26, 26, 26, 13, 13, 13, 13, 13, 13, - 13, 13, 13, 13, 13, 13, 65, 0, 0, 0, - 0, 69, 0, 48, 0, 0, 0, 0, 0, 31, - 31, 31, 31, 31, 31, 31, 31, 31, 31, 0, - 31, 31, 26, 26, 26, 26, 26, 26, 26, 26, - 26, 26, 0, 26, 26, 13, 13, 13, 13, 13, - - 13, 13, 13, 0, 0, 59, 0, 75, 0, 0, - 0, 37, 0, 0, 31, 31, 31, 31, 31, 31, - 0, 31, 31, 0, 31, 26, 26, 26, 26, 26, - 26, 0, 26, 26, 0, 26, 13, 13, 13, 13, - 58, 0, 61, 0, 42, 40, 31, 31, 31, 31, - 31, 31, 26, 26, 26, 26, 26, 26, 13, 13, - 60, 0, 31, 31, 26, 26, 13, 0, 31, 26, - 13, 0, 31, 26, 13, 44, 31, 26, 0 + 26, 26, 26, 26, 26, 13, 13, 13, 13, 13, + 13, 13, 13, 13, 13, 13, 13, 66, 0, 0, + 0, 0, 70, 0, 49, 0, 0, 0, 0, 0, + 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, + 0, 31, 31, 26, 26, 26, 26, 26, 26, 26, + + 26, 26, 26, 0, 26, 26, 13, 13, 13, 13, + 13, 13, 13, 13, 0, 0, 60, 0, 76, 0, + 0, 0, 37, 0, 0, 31, 31, 31, 31, 31, + 31, 0, 31, 31, 0, 31, 26, 26, 26, 26, + 26, 26, 0, 26, 26, 0, 26, 13, 13, 13, + 13, 59, 0, 62, 0, 42, 40, 31, 31, 31, + 31, 31, 31, 26, 26, 26, 26, 26, 26, 13, + 13, 61, 0, 31, 31, 26, 26, 13, 0, 31, + 26, 13, 0, 31, 26, 13, 44, 31, 26, 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -566,279 +558,281 @@ static yyconst flex_int32_t yy_meta[53] = 1, 1 } ; -static yyconst flex_int16_t yy_base[1197] = +static yyconst flex_int16_t yy_base[1208] = { 0, 0, 51, 55, 62, 66, 68, 51, 70, 120, 171, - 222, 273, 324, 375, 79, 176, 2645, 3859, 73, 3859, - 2641, 3859, 2618, 3859, 2607, 3859, 2578, 60, 2578, 66, - 2563, 82, 75, 64, 82, 2562, 2562, 2545, 79, 95, - 2554, 2529, 425, 0, 3859, 79, 2521, 2512, 2505, 150, - 81, 2496, 3859, 3859, 2534, 183, 3859, 0, 3859, 2527, - 187, 0, 2503, 157, 2476, 3859, 2517, 146, 2464, 191, - 3859, 2508, 278, 284, 3859, 380, 384, 388, 393, 399, + 222, 273, 324, 375, 79, 176, 2550, 3927, 73, 3927, + 2546, 3927, 2530, 3927, 2529, 3927, 2518, 60, 2515, 66, + 2500, 82, 75, 64, 82, 2495, 2496, 2483, 79, 95, + 2494, 2459, 425, 0, 3927, 79, 2449, 2444, 2446, 150, + 81, 2435, 3927, 3927, 2482, 183, 3927, 0, 3927, 2478, + 187, 0, 2454, 157, 2423, 3927, 2469, 146, 2419, 191, + 3927, 2465, 278, 284, 3927, 380, 384, 388, 393, 399, 403, 431, 412, 407, 449, 454, 488, 492, 498, 513, 503, 477, 460, 526, 439, 532, 537, 548, 552, 558, 564, 569, 573, 586, 590, 598, 605, 609, 279, 624, - 3859, 644, 443, 650, 3859, 651, 596, 632, 637, 649, + 3927, 644, 443, 650, 3927, 651, 596, 632, 637, 649, 663, 668, 672, 673, 699, 708, 687, 704, 709, 713, 744, 715, 749, 725, 764, 768, 753, 769, 757, 759, - 776, 781, 785, 795, 810, 3859, 822, 2494, 2492, 0, - 2481, 179, 2476, 181, 2461, 182, 184, 263, 264, 2452, - 2453, 2443, 188, 278, 2451, 298, 2429, 829, 279, 2419, - 2414, 2413, 268, 146, 805, 833, 3859, 839, 3859, 845, - 302, 3859, 2444, 2421, 2430, 2417, 2410, 2417, 2410, 2399, - 2390, 2388, 2372, 282, 2367, 2370, 2366, 2338, 2339, 2334, - - 2320, 2326, 2328, 2315, 2303, 2313, 2304, 2295, 284, 2267, - 0, 0, 3859, 2256, 2250, 2248, 179, 2233, 0, 268, - 2239, 2235, 2225, 2231, 425, 2195, 2189, 3859, 3859, 3859, - 2229, 483, 0, 3859, 0, 2223, 576, 2202, 2187, 374, - 2155, 2150, 3859, 265, 2143, 849, 318, 3859, 2191, 3859, - 854, 858, 867, 873, 3859, 879, 883, 3859, 892, 902, - 907, 911, 917, 926, 934, 946, 951, 955, 960, 969, - 973, 983, 995, 1007, 1011, 1015, 1019, 1023, 1030, 1043, - 1051, 1055, 1066, 1070, 1075, 1104, 3859, 1087, 0, 1093, - 1098, 1109, 1113, 1119, 1127, 1132, 1145, 1141, 1151, 1155, - - 1167, 890, 996, 1179, 1193, 3859, 1202, 1206, 3859, 1210, - 1211, 1187, 1215, 1221, 1225, 1227, 1231, 1236, 1242, 1133, - 1252, 1047, 1246, 1253, 1262, 1267, 1271, 1273, 1280, 1281, - 1290, 1298, 1305, 1307, 1312, 1322, 1318, 3859, 1346, 1326, - 0, 1350, 1358, 1366, 1371, 1339, 1375, 1377, 1381, 1382, - 1387, 1386, 1393, 1400, 3859, 1421, 1434, 1438, 3859, 0, - 2179, 2162, 2155, 2137, 2129, 2127, 2130, 2118, 2111, 2109, - 2081, 444, 2080, 2077, 2073, 2070, 2069, 2066, 2057, 2055, - 2062, 2053, 2038, 2043, 2031, 2022, 498, 1442, 3859, 2002, - 0, 350, 1995, 1999, 1994, 2009, 430, 1955, 1949, 1446, - - 1447, 1455, 1459, 3859, 1463, 1467, 1472, 1481, 3859, 1497, - 1982, 1968, 1966, 1960, 1965, 1966, 1958, 1955, 1964, 1958, - 1935, 1938, 1925, 532, 1922, 1908, 1899, 1910, 1911, 1906, - 1900, 1889, 1891, 514, 1876, 1884, 1864, 1864, 1836, 1501, - 1822, 978, 1805, 1804, 1789, 1778, 1775, 1506, 1510, 1515, - 3859, 1519, 1524, 3859, 1528, 1533, 1537, 1543, 1548, 1552, - 1572, 1580, 1584, 1588, 1593, 1601, 1609, 1616, 1620, 1625, - 1644, 1648, 1637, 1654, 1659, 1669, 1683, 1688, 1694, 1698, - 1708, 1712, 1717, 1732, 1736, 1746, 1740, 1751, 1755, 1759, - 1768, 1772, 1809, 3859, 1815, 1780, 1660, 1764, 1790, 1559, - - 1597, 1799, 1803, 1822, 1824, 1828, 1834, 1835, 1840, 1841, - 1845, 1847, 1849, 1859, 1869, 1876, 1883, 1885, 1891, 1887, - 1893, 1895, 1897, 1903, 1931, 1939, 1943, 1914, 1948, 1949, - 1953, 1954, 1490, 1784, 1770, 1762, 1757, 1763, 1761, 1755, - 1753, 1752, 1745, 1728, 1720, 1708, 538, 1715, 1697, 1681, - 1692, 1687, 1680, 1676, 1658, 1663, 582, 1645, 1653, 1638, - 1630, 1602, 1958, 1594, 987, 1591, 1598, 1575, 1568, 1965, - 3859, 1969, 1589, 1585, 1564, 1561, 1556, 1541, 1552, 1554, - 1534, 1535, 1532, 1521, 1521, 1525, 1516, 1517, 1519, 1485, - 1484, 1463, 1465, 1472, 1471, 1469, 1449, 1466, 1466, 1463, - - 1435, 1427, 1404, 1999, 3859, 1406, 1079, 1390, 1384, 1395, - 1114, 1418, 2003, 3859, 2007, 2011, 3859, 2015, 2019, 2024, - 2029, 2038, 2043, 2047, 2063, 2067, 2079, 2083, 2088, 2092, - 2101, 2111, 2115, 2129, 2136, 2143, 2154, 2158, 2165, 2170, - 2175, 2179, 2194, 2199, 2204, 2215, 2226, 2231, 2219, 2238, - 2243, 2247, 2251, 2255, 2260, 2265, 2025, 2051, 2119, 2272, - 2130, 2278, 2274, 2291, 2180, 2309, 2102, 2310, 2315, 2270, - 2283, 2319, 2320, 2326, 2327, 2328, 2344, 2351, 2355, 2346, - 2364, 2369, 2371, 2373, 2382, 2386, 2375, 2423, 2387, 2395, - 2409, 2407, 2413, 2414, 1408, 1405, 1387, 1398, 1395, 1383, - - 1392, 1396, 1366, 1371, 1367, 1342, 1338, 1345, 1331, 1333, - 1328, 1327, 1326, 1307, 1309, 1317, 1301, 1295, 1273, 1286, - 1286, 1278, 1269, 1257, 1225, 1224, 1214, 1224, 1173, 1213, - 1217, 1202, 1213, 1199, 1206, 1189, 3859, 1187, 1181, 1179, - 1175, 1173, 1149, 1148, 452, 1145, 3859, 3859, 1142, 1121, - 1139, 1128, 1103, 1113, 1088, 3859, 3859, 1073, 1068, 1045, - 1047, 3859, 1036, 1031, 1327, 1015, 1035, 2431, 2435, 2449, - 2467, 2471, 2478, 2483, 2492, 2496, 2505, 2510, 2521, 2530, - 2534, 2539, 2544, 2548, 2553, 2558, 2568, 2576, 2580, 2585, - 2600, 2596, 2608, 2612, 2617, 2623, 2628, 2632, 2637, 2644, - - 2655, 2660, 2664, 2669, 2427, 2621, 2676, 2681, 2484, 2682, - 2686, 2519, 2695, 2701, 2707, 2720, 2721, 2722, 2729, 2735, - 2733, 2739, 2741, 2746, 2758, 2767, 2773, 2781, 2782, 2786, - 2790, 2794, 2795, 2799, 2801, 2805, 2807, 2817, 2826, 2818, - 2830, 1032, 1044, 1012, 1027, 1013, 1014, 1002, 998, 994, - 993, 991, 982, 963, 955, 483, 950, 945, 939, 954, - 951, 934, 942, 917, 913, 916, 897, 894, 896, 896, - 917, 912, 911, 3859, 887, 3859, 3859, 3859, 3859, 3859, - 3859, 3859, 905, 489, 883, 884, 888, 887, 886, 3859, - 3859, 874, 3859, 866, 867, 856, 819, 817, 827, 813, - - 3859, 850, 2844, 2855, 2866, 2870, 2878, 2882, 2887, 2891, - 2895, 2902, 2906, 2910, 2916, 2927, 2934, 2942, 2948, 2952, - 2963, 2968, 2974, 2980, 2984, 2988, 3002, 3016, 2997, 3006, - 3022, 3026, 3034, 3038, 3042, 3044, 2853, 3057, 2914, 3061, - 3062, 3063, 3070, 3076, 3078, 3082, 3084, 3098, 3088, 3102, - 3116, 3122, 3124, 3130, 3136, 3134, 3138, 3140, 3144, 3142, - 3153, 3158, 3162, 3176, 827, 817, 807, 787, 805, 574, - 782, 784, 789, 786, 783, 776, 767, 777, 768, 732, - 727, 737, 708, 3859, 3859, 3859, 735, 3859, 715, 720, - 713, 712, 3859, 3859, 3859, 723, 700, 3859, 717, 715, - - 686, 1664, 685, 714, 3178, 3182, 3187, 3196, 3201, 3210, - 3214, 3219, 3223, 3228, 3236, 3246, 3255, 3251, 3260, 3264, - 3268, 3275, 3283, 3287, 3291, 3292, 3296, 3300, 3302, 3306, - 3315, 3304, 3314, 3319, 3327, 3338, 3340, 3346, 3351, 3353, - 3358, 3359, 3364, 3365, 693, 669, 674, 664, 658, 669, - 649, 664, 661, 631, 1675, 625, 3859, 634, 614, 620, - 613, 3859, 612, 3859, 585, 1703, 1804, 569, 1974, 3374, - 3378, 3387, 3402, 3414, 3419, 3423, 3428, 3434, 3438, 3442, - 3446, 3451, 3382, 3455, 3459, 3460, 3424, 3465, 3473, 3482, - 3486, 3494, 3496, 3501, 3502, 595, 593, 604, 589, 585, - - 548, 1985, 2171, 572, 559, 3859, 558, 3859, 526, 2396, - 484, 3859, 2604, 478, 3507, 3511, 3520, 3528, 3539, 3546, - 3552, 3556, 3560, 3564, 3571, 3565, 3577, 3578, 3584, 3583, - 3588, 3596, 3600, 3606, 3615, 3619, 512, 482, 449, 408, - 3859, 428, 3859, 384, 3859, 3859, 3623, 3628, 3632, 3640, - 3644, 3651, 3655, 3657, 3659, 3663, 3669, 3671, 394, 357, - 3859, 348, 3676, 3691, 3682, 3686, 346, 269, 3695, 3700, - 178, 93, 3708, 3713, 73, 3859, 3727, 3714, 3859, 3762, - 3768, 3774, 3780, 3786, 3792, 3798, 3804, 3810, 3816, 3822, - 3828, 3834, 3840, 3846, 56, 3852 - + 776, 781, 785, 795, 810, 3927, 822, 2453, 2446, 0, + 2434, 179, 2427, 181, 2405, 182, 184, 263, 264, 2406, + 2399, 2391, 188, 278, 2399, 298, 2377, 829, 279, 2362, + 2350, 2352, 268, 146, 805, 833, 3927, 839, 3927, 845, + 302, 3927, 2374, 2350, 2360, 2348, 187, 2348, 2342, 2329, + 2331, 2323, 2305, 282, 2306, 2307, 2295, 2291, 2289, 2288, + + 2269, 2278, 2284, 2266, 2252, 2260, 2250, 2237, 284, 2221, + 0, 0, 3927, 2208, 2195, 2191, 274, 2177, 0, 268, + 2181, 2186, 2181, 2201, 425, 2167, 2158, 3927, 3927, 3927, + 2202, 483, 0, 3927, 0, 2193, 576, 2171, 2150, 374, + 2116, 2112, 3927, 270, 2095, 849, 375, 3927, 2139, 3927, + 854, 858, 867, 873, 3927, 879, 883, 3927, 892, 902, + 907, 911, 917, 926, 936, 946, 951, 955, 960, 971, + 975, 983, 992, 997, 1007, 1011, 1018, 1026, 1035, 1039, + 1047, 1052, 1067, 1060, 1073, 1086, 3927, 1094, 0, 1099, + 1105, 1109, 1113, 1118, 1122, 1126, 1133, 1145, 1150, 1161, + + 1167, 890, 931, 1171, 1179, 3927, 1184, 1195, 3927, 1003, + 1189, 1199, 1203, 1205, 1213, 1215, 1071, 1220, 1224, 1234, + 1240, 1241, 1242, 1247, 1249, 1255, 1266, 1278, 1283, 1259, + 1284, 1290, 1294, 1295, 1304, 1310, 1333, 3927, 1338, 1315, + 0, 1342, 1351, 1360, 1347, 1356, 1365, 1369, 1376, 1378, + 1383, 1382, 1322, 1417, 3927, 1429, 1433, 1388, 3927, 0, + 2130, 2116, 2124, 2112, 366, 2110, 2111, 2101, 2104, 2098, + 2079, 444, 2080, 2067, 2063, 2055, 2046, 2046, 2036, 2040, + 2044, 2034, 2019, 2032, 2023, 2013, 498, 1437, 3927, 1975, + 0, 470, 1971, 1968, 1964, 1983, 430, 1952, 1944, 1392, + + 1394, 1441, 1445, 3927, 1451, 1455, 1461, 1465, 3927, 1469, + 1967, 1952, 1949, 1939, 1953, 1945, 1935, 1928, 1921, 1932, + 1927, 1909, 1911, 1906, 532, 1916, 1903, 1891, 1902, 1902, + 1898, 1890, 1875, 1877, 514, 1863, 1874, 1868, 1864, 1834, + 1479, 1823, 927, 1811, 1818, 1802, 1798, 1815, 1485, 1489, + 1499, 3927, 1503, 1507, 3927, 1511, 1515, 1519, 1525, 1530, + 1534, 1542, 1551, 1569, 1562, 1576, 1586, 1580, 1590, 1596, + 1615, 1603, 1622, 1628, 1632, 1639, 1660, 1664, 1668, 1676, + 1680, 1684, 1700, 1704, 1716, 1720, 1724, 1738, 1728, 1732, + 1742, 1756, 1760, 1764, 1776, 3927, 1784, 1788, 1770, 1747, + + 1604, 1792, 1798, 1594, 1804, 1810, 1808, 1812, 1820, 1832, + 1836, 1846, 1847, 1851, 1855, 1859, 1863, 1867, 1873, 1887, + 1878, 1895, 1899, 1901, 1905, 1912, 1907, 1946, 1954, 1958, + 1930, 1918, 1936, 1962, 1970, 1972, 1823, 1806, 1804, 1799, + 1811, 1803, 1801, 1794, 1791, 1791, 1781, 1762, 1750, 1743, + 538, 1742, 1731, 1723, 1733, 1734, 1728, 1723, 1692, 1694, + 582, 1677, 1683, 1679, 1681, 1657, 1980, 1648, 1321, 1647, + 1659, 1641, 1632, 1984, 3927, 1996, 1656, 1656, 1629, 1640, + 1647, 1637, 1624, 1630, 1634, 1609, 1597, 1591, 1582, 1574, + 1564, 1552, 1553, 1558, 1560, 1556, 1532, 1533, 1541, 1540, + + 1530, 1512, 1527, 1521, 1519, 1506, 1498, 1473, 2006, 3927, + 1474, 1400, 1448, 1449, 1460, 1410, 1482, 2018, 3927, 2022, + 2026, 3927, 2030, 2034, 2039, 2013, 2045, 2054, 2058, 2071, + 2077, 2083, 2094, 2098, 2103, 2109, 2115, 2126, 2130, 2144, + 2149, 2158, 2169, 2173, 2154, 2181, 2190, 2195, 2186, 2207, + 2222, 2227, 2231, 2236, 2241, 2245, 2250, 2254, 2263, 2268, + 2273, 2277, 2281, 2167, 2286, 2291, 2290, 2304, 2062, 2302, + 2322, 2327, 2328, 2081, 2336, 2340, 2341, 2342, 2347, 2362, + 2349, 2376, 2378, 2384, 2385, 2389, 2391, 2390, 2399, 2425, + 2426, 2398, 2412, 2427, 2438, 2443, 2444, 2448, 2449, 2453, + + 2454, 1466, 1464, 1446, 1457, 1463, 1443, 1398, 1407, 1404, + 1383, 1385, 1386, 1378, 1378, 1360, 1346, 1343, 1342, 1336, + 1321, 1302, 1295, 1299, 1294, 1289, 1272, 1289, 1286, 1281, + 1267, 1252, 1224, 1219, 1213, 1221, 1646, 1226, 1215, 1202, + 1211, 3927, 1201, 1204, 1199, 3927, 1191, 1183, 1178, 1167, + 1166, 1147, 1138, 452, 1133, 3927, 3927, 1128, 1125, 1139, + 1133, 1119, 1127, 1104, 3927, 3927, 1101, 1100, 1076, 1076, + 3927, 1068, 1064, 1650, 1042, 1057, 2461, 2465, 2499, 2504, + 2508, 2513, 2517, 2533, 2521, 2542, 2553, 2557, 2562, 2568, + 2574, 2579, 2585, 2589, 2594, 2608, 2617, 2623, 2628, 2632, + + 2637, 2645, 2651, 2660, 2664, 2669, 2673, 2677, 2683, 2687, + 2692, 2701, 2705, 2709, 2472, 2525, 2714, 2719, 2580, 2728, + 2723, 2740, 2600, 2745, 2757, 2759, 2765, 2771, 2763, 2776, + 2782, 2780, 2784, 2786, 2794, 2799, 2821, 2826, 2822, 2830, + 2805, 2834, 2839, 2845, 2843, 2847, 2849, 2853, 2857, 2861, + 2865, 2870, 1053, 1064, 1051, 1056, 1047, 1051, 1047, 1046, + 1043, 1033, 1023, 1022, 999, 996, 489, 995, 990, 986, + 991, 988, 969, 980, 957, 952, 957, 931, 930, 932, + 927, 946, 942, 932, 3927, 908, 3927, 3927, 3927, 3927, + 3927, 3927, 3927, 922, 574, 897, 902, 906, 905, 898, + + 3927, 3927, 888, 3927, 876, 887, 881, 843, 841, 841, + 825, 3927, 862, 2897, 2902, 2906, 2915, 2920, 2924, 2929, + 2934, 2938, 2942, 2952, 2956, 2963, 2974, 2979, 2990, 2995, + 3008, 3014, 2999, 3019, 3027, 3031, 3035, 3043, 3048, 3056, + 3067, 3071, 3075, 3080, 3062, 3084, 3093, 2910, 3098, 2947, + 2961, 3085, 3106, 3112, 3116, 3120, 3122, 3130, 3135, 3137, + 3141, 3147, 3161, 3162, 3166, 3172, 3173, 3178, 3179, 3183, + 3185, 3190, 3207, 3201, 3217, 854, 853, 849, 824, 827, + 591, 802, 798, 806, 805, 797, 788, 777, 786, 778, + 745, 742, 751, 737, 3927, 3927, 3927, 768, 3927, 749, + + 754, 732, 723, 3927, 3927, 3927, 730, 710, 3927, 725, + 726, 697, 1989, 693, 724, 3219, 3224, 3230, 3236, 3242, + 3251, 3258, 3264, 3268, 3278, 3285, 3292, 3296, 3302, 3307, + 3312, 3324, 3317, 3334, 3339, 3256, 3300, 3313, 3344, 3348, + 3349, 3359, 3358, 3363, 3365, 3370, 3376, 3384, 3386, 3390, + 3397, 3402, 3401, 3408, 3413, 713, 697, 702, 695, 681, + 684, 664, 676, 672, 643, 2001, 642, 3927, 652, 647, + 657, 646, 3927, 646, 3927, 601, 2150, 2213, 581, 2354, + 3418, 3422, 3426, 3440, 3460, 3436, 3464, 3468, 3476, 3480, + 3484, 3488, 3492, 3499, 3505, 3512, 3516, 3503, 3507, 3520, + + 3528, 3539, 3543, 3544, 3548, 3552, 606, 600, 608, 602, + 605, 579, 2688, 3225, 585, 568, 3927, 572, 3927, 538, + 3279, 519, 3927, 3554, 513, 3556, 3565, 3584, 3602, 3588, + 3606, 3611, 3616, 3620, 3624, 3628, 3633, 3637, 3596, 3638, + 3647, 3651, 3655, 3656, 3664, 3669, 3675, 523, 512, 512, + 476, 3927, 449, 3927, 401, 3927, 3927, 3679, 3683, 3692, + 3696, 3707, 3711, 3700, 3717, 3719, 3723, 3728, 3732, 428, + 384, 3927, 358, 3734, 3743, 3738, 3748, 354, 280, 3757, + 3769, 178, 93, 3777, 3782, 73, 3927, 3795, 3755, 3927, + 3830, 3836, 3842, 3848, 3854, 3860, 3866, 3872, 3878, 3884, + + 3890, 3896, 3902, 3908, 3914, 56, 3920 } ; -static yyconst flex_int16_t yy_def[1197] = +static yyconst flex_int16_t yy_def[1208] = { 0, - 1179, 1, 1180, 1181, 1182, 1182, 1183, 1183, 1179, 9, - 1179, 11, 1179, 13, 1184, 1184, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1185, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1186, 1179, 1187, 1179, 1179, - 1188, 1187, 1187, 1187, 1189, 1179, 1179, 1189, 1189, 1190, - 1179, 1179, 1191, 1179, 1179, 1179, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 43, 1192, - - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1193, 1179, - 1179, 1179, 1193, 1193, 1179, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 43, 1194, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1179, 1179, 1179, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1179, 1195, 43, 1195, 1195, - 1195, 1195, 1195, 1195, 1196, 1179, 1179, 1179, 1179, 1196, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 43, 1185, 1179, 1179, 1179, 1179, 1179, 1179, 1185, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1187, 1179, 1187, 1179, 1187, 1187, 1187, 1187, - 1189, 1189, 1179, 1189, 1189, 1189, 1190, 1179, 1179, 1179, - 1191, 1191, 1191, 1179, 1179, 1179, 1179, 1179, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1179, 1191, 99, 1192, - 1192, 1192, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - - 1191, 1193, 1193, 1193, 1179, 1179, 1179, 1179, 1179, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1179, 1179, 1193, - 135, 1194, 1194, 1194, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1179, 1179, 1179, 1179, 1179, 1179, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1179, 1179, 1195, - 168, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1196, - - 1196, 1196, 1179, 1179, 1179, 1179, 1179, 1196, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1187, 1189, 1189, 1189, - 1179, 1179, 1191, 1179, 1179, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1192, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1193, 1179, 1179, 1193, 1193, 1193, 1193, 1193, - - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1194, 1185, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1196, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1187, 1189, 1179, 1179, 1189, 1179, 1179, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1195, 1195, 1195, 1195, 1195, 1195, - - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1187, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - - 1191, 1191, 1191, 1191, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - - 1179, 1187, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - - 1179, 1179, 1179, 1187, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1191, - 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1193, 1195, 1195, 1195, 1195, 1195, - - 1195, 1195, 1195, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1191, 1191, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1195, 1195, 1195, 1195, - 1179, 1179, 1179, 1179, 1179, 1179, 1191, 1191, 1191, 1191, - 1191, 1191, 1193, 1193, 1193, 1193, 1193, 1193, 1195, 1195, - 1179, 1179, 1191, 1191, 1193, 1193, 1195, 1179, 1191, 1193, - 1195, 1179, 1191, 1193, 1195, 1179, 1191, 1193, 0, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179 - + 1190, 1, 1191, 1192, 1193, 1193, 1194, 1194, 1190, 9, + 1190, 11, 1190, 13, 1195, 1195, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1196, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1197, 1190, 1198, 1190, 1190, + 1199, 1198, 1198, 1198, 1200, 1190, 1190, 1200, 1200, 1201, + 1190, 1190, 1202, 1190, 1190, 1190, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 43, 1203, + + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1204, 1190, + 1190, 1190, 1204, 1204, 1190, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 43, 1205, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1190, 1190, 1190, 1206, 1206, 1206, + 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + 1206, 1206, 1206, 1206, 1206, 1190, 1206, 43, 1206, 1206, + 1206, 1206, 1206, 1206, 1207, 1190, 1190, 1190, 1190, 1207, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 43, 1196, 1190, 1190, 1190, 1190, 1190, 1190, 1196, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1198, 1190, 1198, 1190, 1198, 1198, 1198, 1198, + 1200, 1200, 1190, 1200, 1200, 1200, 1201, 1190, 1190, 1190, + 1202, 1202, 1202, 1190, 1190, 1190, 1190, 1190, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1190, 1202, 99, 1203, + 1203, 1203, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + + 1202, 1204, 1204, 1204, 1190, 1190, 1190, 1190, 1190, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1190, 1190, 1204, + 135, 1205, 1205, 1205, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1190, 1190, 1190, 1190, 1190, 1190, 1206, + 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1190, 1190, 1206, + 168, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1207, + + 1207, 1207, 1190, 1190, 1190, 1190, 1190, 1207, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1198, 1200, 1200, + 1200, 1190, 1190, 1202, 1190, 1190, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1203, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1204, 1190, 1190, 1204, 1204, 1204, + + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1205, 1196, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1206, 1206, 1206, 1206, + 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + 1206, 1206, 1206, 1207, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1198, 1200, 1190, 1190, + 1200, 1190, 1190, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + + 1204, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1198, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + 1206, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1198, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1206, 1206, 1206, 1206, 1206, + 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1206, + 1206, 1206, 1206, 1206, 1190, 1190, 1190, 1190, 1190, 1190, + + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1198, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1206, 1206, 1206, 1206, 1206, + 1206, 1206, 1206, 1206, 1206, 1206, 1206, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + + 1204, 1204, 1204, 1204, 1204, 1204, 1206, 1206, 1206, 1206, + 1206, 1206, 1206, 1206, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1202, 1202, 1202, 1202, 1202, + 1202, 1202, 1202, 1202, 1202, 1202, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1206, 1206, 1206, + 1206, 1190, 1190, 1190, 1190, 1190, 1190, 1202, 1202, 1202, + 1202, 1202, 1202, 1204, 1204, 1204, 1204, 1204, 1204, 1206, + 1206, 1190, 1190, 1202, 1202, 1204, 1204, 1206, 1190, 1202, + 1204, 1206, 1190, 1202, 1204, 1206, 1190, 1202, 1204, 0, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + + 1190, 1190, 1190, 1190, 1190, 1190, 1190 } ; -static yyconst flex_int16_t yy_nxt[3912] = +static yyconst flex_int16_t yy_nxt[3980] = { 0, 18, 19, 20, 21, 19, 18, 22, 23, 24, 23, 25, 26, 18, 27, 28, 29, 18, 30, 18, 18, @@ -848,10 +842,10 @@ static yyconst flex_int16_t yy_nxt[3912] = 18, 18, 43, 71, 72, 43, 44, 54, 55, 56, 57, 360, 45, 53, 59, 60, 61, 62, 66, 67, 66, 67, 71, 72, 181, 46, 198, 181, 63, 185, - 176, 177, 178, 176, 1176, 188, 186, 179, 47, 189, + 176, 177, 178, 176, 1187, 188, 186, 179, 47, 189, 199, 220, 196, 48, 200, 49, 190, 50, 205, 192, - 51, 52, 193, 197, 1176, 199, 194, 207, 64, 195, + 51, 52, 193, 197, 1187, 199, 194, 207, 64, 195, 206, 201, 68, 180, 68, 208, 226, 69, 227, 69, 73, 74, 75, 76, 74, 73, 77, 78, 79, 78, 80, 81, 73, 82, 83, 84, 73, 85, 73, 73, @@ -863,7 +857,7 @@ static yyconst flex_int16_t yy_nxt[3912] = 236, 237, 244, 248, 249, 102, 225, 245, 363, 370, 366, 374, 371, 240, 367, 364, 372, 383, 103, 373, - 180, 368, 375, 104, 226, 105, 227, 106, 1175, 384, + 180, 368, 375, 104, 414, 105, 415, 106, 1186, 384, 107, 108, 109, 110, 111, 112, 110, 109, 113, 114, 115, 114, 116, 117, 109, 118, 119, 120, 109, 121, 109, 109, 122, 109, 123, 124, 125, 126, 127, 128, @@ -871,409 +865,415 @@ static yyconst flex_int16_t yy_nxt[3912] = 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 135, 376, 378, 135, 136, 252, 303, 252, 252, 303, 137, 254, 255, 256, 254, 377, - 385, 392, 396, 379, 421, 440, 426, 138, 386, 388, + 385, 392, 396, 379, 422, 441, 427, 138, 386, 388, - 389, 388, 388, 181, 437, 377, 181, 438, 422, 1172, - 139, 244, 253, 304, 397, 140, 245, 141, 257, 142, - 248, 249, 143, 144, 18, 145, 146, 147, 145, 18, + 389, 388, 388, 181, 438, 377, 181, 439, 423, 226, + 139, 227, 253, 304, 397, 140, 244, 141, 257, 142, + 1183, 245, 143, 144, 18, 145, 146, 147, 145, 18, 22, 23, 24, 148, 149, 26, 150, 151, 152, 153, 150, 154, 150, 150, 155, 150, 156, 157, 158, 159, 160, 161, 162, 163, 164, 150, 150, 165, 166, 150, 167, 150, 150, 150, 150, 150, 150, 150, 150, 150, - 150, 150, 150, 150, 18, 18, 168, 563, 549, 168, + 150, 150, 150, 150, 18, 18, 168, 248, 249, 168, 44, 256, 258, 256, 256, 252, 45, 252, 252, 252, - 239, 252, 252, 1171, 252, 1168, 252, 252, 259, 169, + 239, 252, 252, 540, 252, 541, 252, 252, 259, 169, - 252, 1167, 252, 252, 252, 1161, 252, 252, 252, 259, + 252, 1182, 252, 252, 252, 1179, 252, 252, 252, 259, 252, 252, 170, 252, 257, 252, 252, 171, 253, 172, - 240, 173, 253, 263, 174, 52, 211, 253, 1162, 211, - 212, 261, 252, 253, 252, 252, 213, 253, 262, 1161, - 252, 253, 252, 252, 303, 1160, 253, 303, 260, 224, - 252, 283, 252, 252, 396, 252, 544, 252, 252, 284, - 1143, 252, 214, 252, 252, 253, 885, 215, 264, 216, - 545, 225, 265, 253, 217, 218, 397, 304, 252, 266, - 252, 252, 886, 253, 267, 229, 231, 232, 253, 252, - 280, 252, 252, 252, 253, 252, 252, 971, 1159, 252, - - 279, 252, 252, 989, 252, 268, 252, 252, 269, 272, - 274, 253, 270, 972, 252, 271, 252, 252, 560, 990, - 273, 561, 253, 1141, 275, 276, 253, 252, 1146, 252, - 252, 278, 253, 252, 1145, 252, 252, 253, 286, 287, - 286, 286, 277, 597, 586, 281, 598, 253, 285, 252, - 708, 252, 252, 289, 255, 256, 289, 282, 587, 291, - 253, 291, 291, 1144, 709, 252, 253, 252, 252, 1143, - 252, 253, 252, 252, 252, 1142, 252, 252, 234, 236, - 237, 293, 253, 1141, 1140, 288, 257, 252, 1046, 252, - 252, 252, 292, 252, 252, 275, 1108, 303, 253, 252, - - 303, 252, 252, 253, 1047, 1139, 252, 253, 252, 252, - 252, 719, 252, 252, 720, 1106, 1138, 294, 1137, 1112, - 253, 1109, 297, 1108, 253, 305, 306, 307, 305, 1107, - 304, 1106, 253, 303, 295, 296, 303, 1105, 303, 253, + 240, 173, 253, 263, 174, 52, 211, 253, 1178, 211, + 212, 261, 252, 253, 252, 252, 213, 253, 262, 1172, + 252, 253, 252, 252, 303, 1173, 253, 303, 260, 224, + 252, 283, 252, 252, 396, 252, 548, 252, 252, 284, + 1172, 252, 214, 252, 252, 253, 896, 215, 264, 216, + 549, 225, 265, 253, 217, 218, 397, 304, 252, 266, + 252, 252, 897, 253, 267, 229, 231, 232, 253, 252, + 280, 252, 252, 252, 253, 252, 252, 567, 553, 252, + + 279, 252, 252, 982, 252, 268, 252, 252, 269, 272, + 274, 253, 270, 1171, 252, 271, 252, 252, 564, 983, + 273, 565, 253, 1154, 275, 276, 253, 252, 1170, 252, + 252, 278, 253, 252, 1152, 252, 252, 253, 286, 287, + 286, 286, 277, 602, 591, 281, 603, 253, 285, 252, + 716, 252, 252, 289, 255, 256, 289, 282, 592, 291, + 253, 291, 291, 1157, 717, 252, 253, 252, 252, 1156, + 252, 253, 252, 252, 252, 1155, 252, 252, 234, 236, + 237, 293, 253, 1154, 1153, 288, 257, 252, 1000, 252, + 252, 252, 292, 252, 252, 275, 1152, 303, 253, 252, + + 303, 252, 252, 253, 1001, 1057, 252, 253, 252, 252, + 252, 727, 252, 252, 728, 1151, 1119, 294, 1150, 1117, + 253, 1058, 297, 1149, 253, 305, 306, 307, 305, 1148, + 304, 1123, 253, 303, 295, 296, 303, 1120, 303, 253, 299, 303, 300, 253, 298, 307, 309, 307, 307, 311, - 303, 303, 303, 303, 303, 303, 312, 1104, 308, 301, - 310, 310, 1103, 313, 303, 314, 304, 303, 1102, 303, - 1101, 304, 303, 303, 303, 1064, 303, 303, 308, 1100, - 1062, 1099, 315, 304, 304, 304, 316, 1098, 303, 319, - 323, 303, 320, 317, 1097, 1096, 321, 304, 318, 322, - - 303, 324, 304, 303, 1057, 303, 304, 304, 303, 303, - 303, 325, 303, 303, 303, 329, 303, 303, 1004, 303, - 327, 304, 1069, 1066, 1065, 326, 303, 330, 1064, 303, - 1063, 336, 332, 304, 1062, 1061, 1060, 328, 304, 331, - 1059, 1058, 304, 304, 333, 303, 1057, 304, 303, 304, - 337, 338, 339, 337, 303, 1056, 334, 303, 303, 304, + 303, 303, 303, 303, 303, 303, 312, 1119, 308, 301, + 310, 310, 1118, 313, 303, 314, 304, 303, 1117, 303, + 1116, 304, 303, 303, 303, 1115, 303, 303, 308, 1114, + 1113, 1112, 315, 304, 304, 304, 316, 1075, 303, 319, + 323, 303, 320, 317, 1111, 1073, 321, 304, 318, 322, + + 303, 324, 304, 303, 1110, 303, 304, 304, 303, 303, + 303, 325, 303, 303, 303, 329, 303, 303, 1109, 303, + 327, 304, 1108, 1107, 1068, 326, 303, 330, 1015, 303, + 1080, 336, 332, 304, 1077, 1076, 1075, 328, 304, 331, + 1074, 1073, 304, 304, 333, 303, 1072, 304, 303, 304, + 337, 338, 339, 337, 303, 1071, 334, 303, 303, 304, 303, 303, 340, 303, 335, 341, 306, 307, 341, 343, - 303, 219, 343, 303, 1055, 1054, 219, 303, 304, 1053, - 303, 345, 303, 304, 1052, 303, 303, 304, 998, 303, - 1051, 304, 1050, 304, 995, 326, 303, 994, 308, 303, - - 993, 346, 344, 304, 1049, 349, 401, 347, 1048, 401, - 304, 354, 355, 356, 354, 304, 988, 1045, 986, 304, - 351, 348, 352, 358, 359, 358, 358, 350, 985, 304, - 391, 355, 356, 391, 403, 404, 405, 403, 984, 402, + 303, 219, 343, 303, 1070, 1069, 219, 303, 304, 1068, + 303, 345, 303, 304, 1067, 303, 303, 304, 1066, 303, + 1065, 304, 1064, 304, 1063, 326, 303, 1009, 308, 303, + + 1062, 346, 344, 304, 1061, 349, 401, 347, 1006, 401, + 304, 354, 355, 356, 354, 304, 1005, 1004, 1060, 304, + 351, 348, 352, 358, 359, 358, 358, 350, 1059, 304, + 391, 355, 356, 391, 403, 404, 405, 403, 999, 402, 407, 404, 407, 407, 357, 353, 408, 409, 410, 408, - 450, 451, 452, 450, 1004, 252, 357, 252, 252, 252, - 1003, 252, 252, 357, 1002, 1001, 1000, 406, 453, 454, - 453, 453, 999, 406, 254, 255, 256, 254, 998, 402, - 256, 255, 256, 256, 455, 287, 455, 455, 253, 997, - 996, 303, 253, 252, 303, 252, 252, 995, 994, 993, - - 448, 253, 259, 252, 992, 252, 252, 257, 252, 991, - 252, 252, 252, 257, 252, 252, 988, 987, 252, 457, - 252, 252, 986, 985, 304, 456, 253, 252, 984, 252, - 252, 983, 982, 981, 458, 252, 253, 252, 252, 980, - 979, 253, 460, 978, 459, 253, 461, 252, 977, 252, - 252, 253, 252, 893, 252, 252, 252, 976, 252, 252, - 253, 252, 891, 252, 252, 890, 462, 463, 253, 975, - 252, 464, 252, 252, 252, 974, 252, 252, 973, 607, - 253, 466, 607, 970, 252, 253, 252, 252, 607, 253, - 465, 607, 969, 882, 253, 467, 252, 303, 252, 252, - - 303, 468, 881, 253, 880, 879, 469, 253, 252, 878, - 252, 252, 252, 877, 252, 252, 252, 253, 252, 252, - 252, 470, 252, 252, 252, 876, 252, 252, 608, 253, - 304, 252, 968, 252, 252, 471, 472, 608, 874, 473, - 967, 253, 476, 475, 252, 253, 252, 252, 303, 253, - 474, 303, 252, 253, 252, 252, 252, 253, 252, 252, - 966, 965, 902, 477, 253, 901, 900, 252, 479, 252, - 252, 252, 899, 252, 252, 508, 252, 253, 252, 252, - 607, 304, 478, 607, 480, 253, 898, 897, 252, 253, - 252, 252, 896, 481, 291, 482, 291, 291, 483, 291, - - 253, 291, 291, 895, 253, 286, 287, 286, 286, 253, - 485, 454, 485, 485, 252, 765, 252, 252, 765, 894, - 252, 253, 252, 252, 893, 484, 892, 292, 252, 608, - 252, 252, 292, 252, 303, 252, 252, 303, 253, 891, - 486, 471, 252, 292, 252, 252, 252, 253, 252, 252, - 890, 889, 252, 253, 252, 252, 252, 490, 252, 252, - 487, 253, 488, 505, 766, 297, 253, 304, 252, 489, - 252, 252, 888, 887, 765, 253, 884, 765, 883, 253, - 493, 494, 495, 493, 882, 253, 881, 298, 303, 253, - 880, 303, 879, 491, 305, 306, 307, 305, 878, 497, - - 877, 253, 492, 307, 306, 307, 307, 339, 338, 339, - 339, 303, 303, 304, 303, 303, 303, 876, 875, 303, - 310, 304, 303, 766, 874, 303, 303, 308, 303, 303, - 873, 303, 303, 872, 496, 303, 308, 303, 498, 501, - 303, 500, 871, 303, 304, 304, 303, 303, 499, 304, - 303, 502, 503, 303, 303, 304, 303, 303, 504, 304, - 870, 304, 869, 303, 506, 304, 303, 868, 303, 509, - 304, 303, 303, 867, 303, 303, 304, 303, 507, 510, - 304, 303, 303, 866, 303, 303, 304, 304, 865, 757, - 511, 303, 512, 516, 303, 513, 304, 756, 864, 303, - - 515, 304, 303, 863, 514, 304, 303, 304, 303, 303, - 517, 303, 862, 303, 304, 304, 303, 861, 519, 337, - 338, 339, 337, 303, 304, 520, 303, 303, 765, 518, - 303, 765, 304, 860, 859, 521, 858, 748, 747, 304, - 303, 304, 522, 303, 857, 523, 304, 339, 338, 339, - 339, 343, 304, 219, 343, 856, 304, 855, 219, 343, - 304, 219, 343, 854, 524, 853, 219, 525, 494, 526, - 525, 852, 303, 304, 219, 303, 303, 766, 303, 303, - 528, 303, 303, 303, 344, 303, 303, 303, 303, 851, - 303, 303, 344, 531, 303, 850, 849, 303, 527, 511, - - 344, 354, 355, 356, 354, 304, 349, 737, 848, 304, - 529, 304, 847, 846, 530, 304, 304, 845, 844, 843, - 304, 304, 358, 355, 358, 358, 842, 304, 350, 532, - 767, 764, 763, 533, 357, 388, 389, 388, 388, 358, - 762, 358, 358, 388, 389, 388, 388, 401, 401, 761, - 401, 401, 760, 759, 758, 357, 570, 571, 572, 570, - 403, 404, 405, 403, 407, 404, 407, 407, 410, 409, - 410, 410, 357, 407, 757, 407, 407, 756, 755, 754, - 402, 402, 408, 409, 410, 408, 753, 752, 751, 402, - 750, 303, 749, 406, 303, 748, 747, 406, 410, 409, - - 410, 410, 604, 605, 604, 604, 406, 613, 614, 615, - 613, 616, 617, 618, 616, 402, 450, 451, 452, 450, - 452, 451, 452, 452, 304, 453, 454, 453, 453, 455, - 287, 455, 455, 694, 252, 746, 252, 252, 252, 745, - 252, 252, 744, 743, 252, 619, 252, 252, 742, 252, - 741, 252, 252, 252, 740, 252, 252, 448, 253, 739, - 303, 448, 620, 303, 738, 737, 242, 253, 736, 621, - 735, 253, 623, 252, 734, 252, 252, 253, 622, 661, - 733, 252, 253, 252, 252, 252, 253, 252, 252, 252, - 624, 252, 252, 304, 252, 732, 252, 252, 303, 731, - - 627, 303, 252, 625, 252, 252, 253, 730, 626, 628, - 252, 729, 252, 252, 253, 662, 728, 252, 253, 252, - 252, 252, 253, 252, 252, 563, 252, 253, 252, 252, - 629, 304, 632, 727, 630, 253, 726, 725, 252, 634, - 252, 252, 631, 253, 724, 252, 633, 252, 252, 252, - 253, 252, 252, 637, 253, 252, 723, 252, 252, 253, - 252, 303, 252, 252, 303, 1067, 635, 638, 1067, 722, - 252, 253, 252, 252, 721, 639, 1067, 636, 253, 1067, - 718, 717, 253, 640, 252, 658, 252, 252, 253, 252, - 716, 252, 252, 253, 304, 252, 715, 252, 252, 252, - - 714, 252, 252, 253, 1110, 642, 641, 1110, 713, 252, - 712, 252, 252, 252, 1068, 252, 252, 253, 252, 711, - 252, 252, 253, 643, 646, 1068, 644, 645, 253, 710, - 647, 648, 253, 252, 707, 252, 252, 485, 454, 485, - 485, 252, 253, 252, 252, 706, 253, 650, 605, 650, - 650, 253, 652, 1111, 252, 652, 252, 705, 252, 252, - 252, 704, 252, 252, 703, 303, 253, 649, 303, 252, - 292, 252, 252, 252, 253, 252, 252, 702, 701, 700, - 253, 303, 651, 699, 303, 253, 486, 698, 697, 253, - 659, 303, 657, 253, 303, 696, 695, 654, 304, 612, - - 303, 653, 253, 303, 303, 1067, 253, 303, 1067, 655, - 493, 494, 495, 493, 304, 656, 495, 494, 495, 495, - 660, 611, 663, 303, 304, 303, 303, 664, 303, 303, - 610, 440, 303, 304, 665, 303, 303, 304, 303, 303, - 666, 303, 303, 304, 303, 303, 303, 609, 303, 303, - 303, 303, 670, 303, 1068, 672, 304, 667, 304, 668, - 303, 669, 304, 303, 606, 675, 671, 673, 304, 304, - 303, 603, 676, 303, 304, 304, 674, 303, 602, 304, - 303, 304, 601, 304, 303, 677, 303, 303, 303, 303, - 678, 303, 303, 304, 303, 303, 303, 303, 303, 303, - - 600, 303, 680, 304, 303, 599, 679, 303, 596, 684, - 304, 686, 595, 685, 594, 303, 683, 304, 303, 304, - 681, 304, 593, 682, 592, 304, 591, 304, 590, 304, - 589, 304, 525, 494, 526, 525, 588, 304, 687, 219, - 526, 494, 526, 526, 688, 605, 604, 688, 304, 690, - 303, 585, 690, 303, 303, 303, 689, 303, 303, 604, - 605, 604, 604, 584, 583, 344, 570, 571, 572, 570, - 572, 571, 572, 572, 582, 1113, 581, 304, 1113, 580, - 527, 579, 304, 304, 578, 577, 1110, 304, 304, 1110, - 576, 692, 575, 574, 573, 693, 569, 568, 691, 402, - - 604, 605, 604, 604, 613, 614, 615, 613, 615, 614, - 615, 615, 616, 617, 618, 616, 618, 617, 618, 618, - 252, 567, 252, 252, 1114, 252, 303, 252, 252, 303, - 252, 566, 252, 252, 565, 1111, 564, 768, 769, 252, - 562, 252, 252, 805, 252, 559, 252, 252, 252, 558, - 252, 252, 303, 253, 242, 303, 557, 771, 253, 304, - 770, 772, 242, 253, 252, 806, 252, 252, 252, 556, - 252, 252, 253, 555, 554, 553, 773, 253, 775, 774, - 252, 253, 252, 252, 252, 304, 252, 252, 552, 252, - 551, 252, 252, 252, 550, 252, 252, 253, 549, 548, - - 547, 253, 252, 303, 252, 252, 303, 777, 546, 776, - 778, 543, 252, 253, 252, 252, 252, 253, 252, 252, - 303, 779, 253, 303, 815, 542, 253, 541, 780, 781, - 252, 303, 252, 252, 303, 253, 304, 252, 540, 252, - 252, 782, 539, 538, 252, 253, 252, 252, 809, 253, - 807, 783, 784, 304, 785, 252, 537, 252, 252, 252, - 536, 252, 252, 253, 304, 786, 252, 535, 252, 252, - 253, 252, 1113, 252, 252, 1113, 252, 253, 252, 252, - 252, 303, 252, 252, 303, 534, 789, 787, 253, 361, - 788, 790, 253, 248, 449, 252, 791, 252, 252, 253, - - 252, 448, 252, 252, 253, 252, 242, 252, 252, 253, - 813, 793, 238, 253, 304, 794, 252, 447, 252, 252, - 252, 1114, 252, 252, 792, 234, 795, 252, 253, 252, - 252, 229, 252, 253, 252, 252, 446, 445, 253, 650, - 605, 650, 650, 444, 252, 796, 252, 252, 652, 253, - 252, 652, 252, 253, 252, 252, 252, 797, 252, 252, - 253, 252, 443, 252, 252, 253, 803, 798, 252, 803, - 442, 303, 253, 303, 303, 303, 303, 253, 303, 303, - 441, 253, 303, 228, 303, 253, 799, 303, 818, 253, - 811, 808, 303, 223, 253, 303, 802, 653, 222, 253, - - 221, 800, 812, 801, 304, 439, 304, 810, 304, 819, - 303, 303, 304, 303, 303, 804, 303, 304, 436, 303, - 303, 303, 435, 303, 303, 304, 434, 303, 303, 303, - 303, 303, 303, 814, 433, 432, 821, 822, 823, 816, - 431, 820, 817, 304, 304, 303, 430, 303, 303, 304, - 303, 429, 303, 304, 304, 303, 303, 824, 428, 303, - 304, 304, 304, 828, 427, 303, 426, 826, 303, 825, - 303, 827, 303, 303, 303, 303, 303, 303, 304, 303, - 304, 830, 831, 303, 832, 304, 303, 303, 303, 304, - 303, 303, 425, 424, 829, 423, 690, 1110, 304, 690, - - 1110, 833, 420, 304, 419, 304, 418, 304, 303, 304, - 303, 303, 834, 303, 303, 840, 304, 303, 840, 417, - 304, 304, 416, 835, 688, 605, 604, 688, 303, 304, - 836, 303, 252, 415, 252, 252, 252, 414, 252, 252, - 413, 304, 412, 304, 411, 691, 1111, 304, 304, 839, - 252, 904, 252, 252, 183, 838, 934, 304, 395, 837, - 903, 304, 394, 393, 841, 253, 390, 387, 252, 253, - 252, 252, 252, 382, 252, 252, 381, 905, 906, 252, - 380, 252, 252, 253, 252, 303, 252, 252, 303, 908, - 907, 369, 365, 252, 909, 252, 252, 252, 362, 252, - - 252, 253, 361, 938, 361, 253, 252, 910, 252, 252, - 250, 252, 253, 252, 252, 246, 911, 253, 304, 243, - 303, 912, 252, 303, 252, 252, 253, 242, 238, 234, - 253, 252, 913, 252, 252, 252, 229, 252, 252, 253, - 252, 914, 252, 252, 253, 252, 228, 252, 252, 252, - 223, 252, 252, 304, 252, 253, 252, 252, 917, 252, - 222, 252, 252, 915, 253, 221, 210, 916, 253, 252, - 209, 252, 252, 253, 918, 204, 919, 252, 253, 252, - 252, 252, 253, 252, 252, 203, 252, 253, 252, 252, - 202, 922, 253, 191, 187, 184, 923, 252, 920, 252, - - 252, 252, 253, 252, 252, 1113, 921, 925, 1113, 252, - 253, 252, 252, 252, 253, 252, 252, 183, 252, 253, - 252, 252, 303, 924, 252, 303, 252, 252, 183, 252, - 253, 252, 252, 252, 253, 252, 252, 935, 252, 926, - 252, 252, 253, 182, 1179, 252, 253, 252, 252, 1179, - 1179, 253, 928, 927, 1114, 304, 252, 253, 252, 252, - 1179, 252, 253, 252, 252, 803, 253, 252, 803, 1179, - 252, 253, 252, 252, 929, 1179, 930, 303, 253, 1179, - 303, 1179, 303, 303, 1179, 303, 303, 303, 1179, 253, - 303, 931, 937, 939, 253, 932, 303, 940, 253, 303, - - 1179, 1179, 303, 253, 936, 303, 941, 1179, 303, 1179, - 304, 303, 942, 1179, 804, 304, 304, 1179, 943, 933, - 304, 303, 303, 303, 303, 303, 303, 1179, 1179, 304, - 303, 944, 945, 303, 303, 304, 303, 303, 1179, 303, - 303, 304, 303, 303, 1179, 303, 1179, 303, 1179, 948, - 303, 946, 1179, 1179, 304, 304, 304, 947, 1179, 303, - 1179, 950, 303, 304, 1179, 949, 1179, 304, 303, 304, - 1179, 303, 1179, 304, 303, 304, 951, 303, 953, 1179, - 304, 1179, 303, 303, 954, 303, 303, 303, 952, 1179, - 303, 303, 304, 956, 303, 303, 303, 1179, 303, 303, - - 303, 304, 303, 303, 955, 303, 303, 304, 303, 303, - 1179, 303, 1179, 1179, 1179, 304, 304, 957, 303, 840, - 304, 303, 840, 959, 304, 958, 1179, 303, 304, 304, - 303, 303, 1179, 304, 303, 304, 1179, 1179, 1179, 304, - 1179, 304, 1179, 960, 961, 252, 1179, 252, 252, 1179, - 1179, 304, 304, 962, 303, 1005, 252, 303, 252, 252, - 304, 963, 1179, 1179, 304, 1179, 1006, 252, 841, 252, - 252, 252, 1179, 252, 252, 1179, 1179, 1007, 253, 252, - 964, 252, 252, 252, 1179, 252, 252, 304, 252, 253, - 252, 252, 252, 1179, 252, 252, 252, 1179, 252, 252, - - 253, 1179, 1179, 252, 253, 252, 252, 252, 1008, 252, - 252, 252, 253, 252, 252, 303, 253, 252, 303, 252, - 252, 253, 1179, 1179, 1179, 253, 1179, 1009, 252, 253, - 252, 252, 1179, 1179, 1179, 252, 253, 252, 252, 1179, - 253, 1010, 1179, 252, 253, 252, 252, 1179, 304, 252, - 253, 252, 252, 252, 1179, 252, 252, 1011, 1179, 1014, - 1012, 253, 1013, 1015, 252, 1179, 252, 252, 253, 252, - 1179, 252, 252, 1179, 1016, 252, 253, 252, 252, 1179, - 1179, 252, 253, 252, 252, 252, 253, 252, 252, 252, - 1179, 252, 252, 1179, 1179, 1179, 1017, 253, 252, 1179, - - 252, 252, 253, 252, 1179, 252, 252, 252, 253, 252, - 252, 1018, 1179, 1019, 253, 1179, 1179, 252, 253, 252, - 252, 1179, 253, 252, 1179, 252, 252, 252, 1179, 252, - 252, 253, 1020, 1179, 1179, 252, 253, 252, 252, 303, - 253, 1179, 303, 303, 1021, 303, 303, 1179, 303, 1025, - 253, 1179, 1179, 1026, 1022, 1027, 253, 1179, 303, 1023, - 253, 303, 303, 303, 303, 303, 303, 303, 253, 1179, - 1179, 303, 304, 1024, 303, 1179, 304, 303, 304, 303, - 303, 1179, 303, 303, 1179, 303, 303, 1028, 303, 303, - 1179, 304, 303, 1029, 1179, 304, 304, 304, 1030, 303, - - 1179, 1179, 303, 303, 304, 1179, 303, 1179, 1033, 1179, - 304, 1179, 304, 1034, 1031, 1179, 304, 303, 304, 1179, - 303, 1179, 304, 303, 1032, 303, 303, 1035, 303, 1179, - 1179, 303, 304, 1036, 303, 303, 304, 303, 303, 303, - 303, 303, 303, 303, 303, 303, 303, 1179, 303, 1179, - 304, 1039, 1037, 1179, 303, 1179, 304, 303, 304, 303, - 1040, 1038, 303, 303, 304, 1179, 303, 1179, 304, 1179, - 304, 1179, 304, 1179, 304, 1179, 304, 303, 304, 252, - 303, 252, 252, 252, 1179, 252, 252, 304, 252, 1041, - 252, 252, 304, 1179, 1179, 1043, 304, 252, 1179, 252, - - 252, 1042, 252, 1179, 252, 252, 1179, 1070, 1179, 1044, - 304, 252, 253, 252, 252, 252, 253, 252, 252, 1179, - 252, 253, 252, 252, 252, 1179, 252, 252, 1179, 252, - 253, 252, 252, 1179, 1072, 253, 1071, 252, 1179, 252, - 252, 1179, 1073, 1179, 253, 1179, 1074, 252, 253, 252, - 252, 1179, 252, 253, 252, 252, 252, 253, 252, 252, - 1179, 252, 253, 252, 252, 252, 1075, 252, 252, 252, - 253, 252, 252, 1179, 1179, 1077, 252, 1078, 252, 252, - 253, 1076, 1179, 1179, 1080, 253, 252, 1080, 252, 253, - 252, 252, 303, 303, 253, 303, 303, 303, 253, 1179, - - 303, 303, 253, 303, 303, 303, 303, 303, 303, 253, - 303, 1083, 1079, 1179, 1179, 303, 303, 253, 303, 303, - 303, 253, 1179, 303, 1082, 304, 304, 1086, 303, 1179, - 304, 303, 1084, 1081, 304, 1085, 304, 1087, 304, 303, - 304, 303, 303, 1179, 303, 1179, 1179, 303, 304, 304, - 303, 1088, 303, 304, 303, 303, 1179, 303, 1179, 303, - 303, 304, 303, 303, 1090, 1093, 303, 1091, 1093, 303, - 1179, 1179, 304, 1179, 304, 252, 1089, 252, 252, 252, - 304, 252, 252, 303, 1179, 304, 303, 304, 252, 1179, - 252, 252, 304, 304, 1179, 1179, 1092, 1179, 304, 304, - - 1179, 1115, 1095, 252, 1179, 252, 252, 1179, 253, 1179, - 1116, 1179, 253, 1117, 1094, 252, 304, 252, 252, 1179, - 252, 253, 252, 252, 252, 303, 252, 252, 303, 252, - 1118, 252, 252, 1179, 1119, 252, 253, 252, 252, 1121, - 1129, 252, 1121, 1080, 1179, 252, 1080, 252, 253, 252, - 252, 1179, 1124, 253, 252, 1124, 303, 253, 304, 303, - 303, 303, 253, 303, 303, 1179, 303, 1179, 253, 303, - 1120, 1128, 253, 1179, 303, 1179, 253, 303, 1126, 1179, - 253, 1179, 1127, 303, 1130, 253, 303, 303, 1122, 304, - 303, 1179, 1081, 304, 304, 1132, 1123, 1093, 1132, 304, - - 1093, 1125, 303, 1135, 1179, 303, 1135, 304, 252, 1179, - 252, 252, 252, 1179, 252, 252, 304, 1179, 1147, 1179, - 304, 252, 1131, 252, 252, 1179, 1179, 1148, 304, 252, - 304, 252, 252, 1179, 1179, 304, 304, 1179, 1179, 1149, - 252, 253, 252, 252, 1133, 253, 1094, 252, 1179, 252, - 252, 1134, 1136, 1121, 253, 252, 1121, 252, 1179, 252, - 252, 252, 253, 252, 252, 1124, 303, 252, 1124, 303, - 1179, 1179, 252, 253, 252, 252, 1153, 1179, 303, 303, - 253, 303, 303, 1150, 303, 303, 253, 303, 303, 303, - 253, 1179, 303, 1154, 253, 1155, 1179, 1132, 253, 304, - - 1132, 303, 1122, 1179, 303, 253, 1151, 303, 1179, 1179, - 303, 304, 304, 1179, 1125, 1179, 1135, 304, 304, 1135, - 303, 1152, 304, 303, 252, 1156, 252, 252, 1179, 252, - 304, 252, 252, 252, 304, 252, 252, 1179, 1179, 1163, - 304, 252, 1179, 252, 252, 252, 1133, 252, 252, 304, - 1157, 1179, 252, 304, 252, 252, 303, 253, 303, 303, - 303, 303, 253, 303, 303, 1136, 253, 303, 1165, 1158, - 303, 1179, 303, 303, 253, 303, 1179, 252, 253, 252, - 252, 1179, 1179, 303, 1164, 253, 303, 303, 1179, 304, - 303, 304, 252, 304, 252, 252, 252, 304, 252, 252, - - 1179, 303, 1179, 304, 303, 304, 1179, 1166, 1179, 252, - 253, 252, 252, 1179, 303, 303, 304, 303, 303, 1177, - 304, 1179, 1179, 1179, 1178, 253, 1179, 1179, 252, 253, - 252, 252, 1179, 1170, 304, 1173, 1179, 1179, 1169, 1179, - 1174, 1179, 253, 1179, 1179, 1179, 1179, 304, 304, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 253, 53, 53, 53, 53, 53, 53, 58, 58, - 58, 58, 58, 58, 65, 65, 65, 65, 65, 65, - 70, 70, 70, 70, 70, 70, 175, 175, 175, 175, - 175, 175, 219, 219, 1179, 219, 219, 219, 230, 230, - - 230, 230, 230, 230, 233, 1179, 1179, 1179, 233, 233, - 235, 235, 235, 235, 235, 235, 241, 241, 1179, 1179, - 241, 241, 247, 247, 247, 247, 247, 247, 251, 251, - 1179, 251, 251, 251, 290, 290, 1179, 290, 290, 290, - 302, 302, 1179, 1179, 1179, 302, 342, 342, 1179, 342, - 342, 342, 400, 400, 1179, 1179, 1179, 400, 17, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179 + 451, 452, 453, 451, 1056, 252, 357, 252, 252, 252, + 997, 252, 252, 357, 996, 995, 1015, 406, 454, 455, + 454, 454, 1014, 406, 254, 255, 256, 254, 1013, 402, + 256, 255, 256, 256, 456, 287, 456, 456, 253, 1012, + 1011, 303, 253, 252, 303, 252, 252, 1010, 1009, 1008, + + 449, 253, 259, 252, 1007, 252, 252, 257, 252, 1006, + 252, 252, 252, 257, 252, 252, 1005, 1004, 252, 458, + 252, 252, 1003, 1002, 304, 457, 253, 252, 612, 252, + 252, 612, 303, 999, 459, 303, 253, 252, 998, 252, + 252, 253, 462, 997, 460, 253, 461, 252, 463, 252, + 252, 253, 252, 996, 252, 252, 252, 995, 252, 252, + 253, 252, 994, 252, 252, 304, 464, 465, 993, 992, + 253, 466, 252, 991, 252, 252, 252, 613, 252, 252, + 253, 990, 989, 468, 252, 253, 252, 252, 988, 253, + 467, 904, 987, 252, 253, 252, 252, 469, 252, 902, + + 252, 252, 901, 470, 303, 253, 471, 303, 252, 253, + 252, 252, 252, 310, 252, 252, 986, 253, 472, 252, + 985, 252, 252, 984, 981, 473, 253, 252, 980, 252, + 252, 253, 474, 893, 892, 475, 252, 304, 252, 252, + 252, 253, 252, 252, 891, 253, 477, 478, 252, 476, + 252, 252, 253, 252, 890, 252, 252, 889, 888, 479, + 253, 252, 887, 252, 252, 481, 979, 885, 252, 253, + 252, 252, 303, 253, 252, 303, 252, 252, 480, 978, + 977, 253, 976, 483, 913, 482, 253, 286, 287, 286, + 286, 505, 912, 484, 253, 252, 485, 252, 252, 911, + + 291, 253, 291, 291, 910, 304, 291, 253, 291, 291, + 487, 455, 487, 487, 252, 909, 252, 252, 908, 252, + 253, 252, 252, 252, 907, 252, 252, 252, 253, 252, + 252, 906, 486, 292, 252, 905, 252, 252, 904, 292, + 488, 473, 903, 292, 902, 492, 252, 253, 252, 252, + 901, 252, 253, 252, 252, 900, 253, 490, 899, 489, + 253, 898, 252, 491, 252, 252, 895, 253, 252, 297, + 252, 252, 495, 496, 497, 495, 894, 893, 892, 253, + 305, 306, 307, 305, 253, 307, 306, 307, 307, 891, + 303, 298, 493, 303, 890, 253, 339, 338, 339, 339, + + 303, 253, 889, 303, 303, 304, 303, 303, 494, 303, + 888, 499, 498, 308, 303, 887, 303, 303, 308, 303, + 886, 303, 885, 304, 303, 303, 500, 504, 303, 503, + 884, 883, 501, 304, 502, 303, 506, 304, 303, 304, + 507, 303, 303, 303, 303, 303, 303, 304, 303, 304, + 303, 303, 509, 303, 304, 882, 303, 881, 304, 303, + 303, 880, 879, 303, 508, 512, 510, 303, 304, 511, + 303, 519, 878, 513, 304, 304, 304, 514, 877, 303, + 515, 304, 303, 304, 303, 303, 876, 303, 303, 304, + 516, 303, 766, 304, 303, 303, 303, 765, 303, 303, + + 304, 875, 874, 518, 520, 303, 873, 522, 303, 517, + 872, 303, 304, 523, 303, 871, 303, 304, 304, 303, + 870, 521, 612, 303, 304, 612, 303, 524, 304, 304, + 525, 869, 757, 526, 337, 338, 339, 337, 304, 339, + 338, 339, 339, 343, 304, 219, 343, 756, 303, 304, + 219, 303, 343, 527, 219, 343, 304, 303, 868, 219, + 303, 528, 496, 529, 528, 867, 303, 304, 219, 303, + 303, 613, 866, 303, 530, 514, 344, 303, 865, 303, + 303, 304, 303, 303, 303, 344, 303, 303, 534, 358, + 304, 358, 358, 401, 344, 401, 401, 531, 401, 304, + + 532, 612, 349, 304, 612, 864, 533, 863, 862, 861, + 304, 774, 304, 860, 774, 746, 304, 304, 354, 355, + 356, 354, 357, 859, 350, 535, 402, 858, 402, 536, + 358, 355, 358, 358, 388, 389, 388, 388, 388, 389, + 388, 388, 574, 575, 576, 574, 403, 404, 405, 403, + 613, 357, 407, 404, 407, 407, 410, 409, 410, 410, + 775, 857, 407, 357, 407, 407, 408, 409, 410, 408, + 410, 409, 410, 410, 742, 402, 856, 855, 854, 406, + 609, 610, 609, 609, 853, 406, 618, 619, 620, 618, + 621, 622, 623, 621, 776, 406, 773, 772, 771, 402, + + 451, 452, 453, 451, 453, 452, 453, 453, 454, 455, + 454, 454, 456, 287, 456, 456, 252, 770, 252, 252, + 252, 769, 252, 252, 768, 767, 252, 624, 252, 252, + 766, 252, 765, 252, 252, 252, 449, 252, 252, 764, + 449, 253, 763, 252, 625, 252, 252, 762, 628, 253, + 242, 626, 252, 253, 252, 252, 761, 760, 759, 253, + 627, 758, 629, 252, 253, 252, 252, 757, 253, 630, + 252, 756, 252, 252, 755, 754, 253, 252, 753, 252, + 252, 252, 752, 252, 252, 253, 632, 252, 633, 252, + 252, 252, 631, 252, 252, 303, 253, 252, 303, 252, + + 252, 751, 634, 253, 252, 303, 252, 252, 303, 635, + 253, 750, 669, 749, 253, 636, 252, 640, 252, 252, + 253, 748, 637, 252, 253, 252, 252, 638, 304, 252, + 253, 252, 252, 252, 666, 252, 252, 253, 304, 747, + 252, 639, 252, 252, 641, 746, 745, 774, 643, 253, + 774, 774, 644, 744, 774, 743, 253, 642, 742, 741, + 740, 252, 253, 252, 252, 252, 253, 252, 252, 252, + 739, 252, 252, 253, 738, 737, 645, 252, 646, 252, + 252, 252, 736, 252, 252, 252, 567, 252, 252, 735, + 734, 647, 733, 648, 253, 732, 775, 731, 253, 730, + + 775, 252, 253, 252, 252, 252, 729, 252, 252, 649, + 253, 726, 650, 651, 253, 725, 652, 252, 253, 252, + 252, 252, 653, 252, 252, 487, 455, 487, 487, 252, + 654, 252, 252, 658, 253, 252, 658, 724, 253, 656, + 610, 656, 656, 252, 723, 252, 252, 722, 303, 721, + 253, 303, 720, 719, 253, 655, 718, 252, 292, 252, + 252, 252, 253, 252, 252, 252, 253, 252, 252, 715, + 657, 303, 253, 665, 303, 714, 253, 495, 496, 497, + 495, 304, 659, 488, 660, 497, 496, 497, 497, 303, + 253, 713, 303, 303, 253, 664, 303, 712, 253, 303, + + 663, 661, 303, 711, 304, 303, 667, 662, 303, 303, + 304, 303, 303, 303, 303, 710, 303, 709, 668, 708, + 672, 303, 304, 707, 303, 706, 304, 670, 673, 705, + 704, 703, 304, 303, 671, 702, 303, 303, 304, 617, + 303, 616, 304, 615, 304, 441, 304, 303, 303, 674, + 303, 303, 303, 614, 304, 303, 303, 675, 677, 303, + 303, 679, 676, 303, 303, 611, 304, 303, 303, 608, + 304, 303, 678, 680, 303, 682, 683, 303, 607, 303, + 304, 304, 303, 684, 681, 304, 606, 685, 303, 304, + 605, 303, 604, 304, 601, 687, 303, 304, 600, 303, + + 303, 304, 303, 303, 599, 303, 303, 304, 303, 303, + 686, 303, 304, 303, 598, 597, 303, 691, 596, 697, + 595, 304, 697, 692, 688, 594, 693, 689, 690, 304, + 593, 303, 590, 304, 303, 304, 589, 303, 588, 304, + 303, 304, 694, 587, 586, 585, 304, 528, 496, 529, + 528, 584, 304, 583, 219, 529, 496, 529, 529, 695, + 610, 609, 695, 303, 304, 582, 303, 581, 698, 580, + 304, 303, 696, 303, 303, 579, 303, 578, 699, 577, + 344, 609, 610, 609, 609, 574, 575, 576, 574, 530, + 1078, 573, 304, 1078, 572, 571, 304, 576, 575, 576, + + 576, 570, 1078, 569, 304, 1078, 304, 609, 610, 609, + 609, 700, 568, 566, 252, 701, 252, 252, 402, 618, + 619, 620, 618, 620, 619, 620, 620, 621, 622, 623, + 621, 623, 622, 623, 623, 252, 563, 252, 252, 1079, + 252, 562, 252, 252, 779, 561, 252, 253, 252, 252, + 560, 1079, 777, 778, 559, 252, 558, 252, 252, 252, + 557, 252, 252, 303, 780, 781, 303, 556, 253, 242, + 555, 554, 252, 253, 252, 252, 782, 242, 252, 253, + 252, 252, 303, 553, 252, 303, 252, 252, 253, 552, + 551, 821, 253, 784, 785, 252, 304, 252, 252, 252, + + 783, 252, 252, 826, 252, 253, 252, 252, 550, 547, + 252, 253, 252, 252, 546, 304, 252, 253, 252, 252, + 545, 544, 787, 543, 786, 788, 542, 252, 253, 252, + 252, 252, 253, 252, 252, 539, 538, 253, 789, 537, + 361, 248, 790, 253, 791, 252, 450, 252, 252, 253, + 252, 1121, 252, 252, 1121, 252, 792, 252, 252, 252, + 253, 252, 252, 449, 253, 794, 793, 242, 303, 795, + 252, 303, 252, 252, 252, 238, 252, 252, 253, 798, + 796, 816, 252, 253, 252, 252, 448, 252, 253, 252, + 252, 252, 253, 252, 252, 234, 252, 799, 252, 252, + + 1122, 304, 797, 253, 229, 447, 800, 253, 252, 446, + 252, 252, 801, 445, 1078, 253, 802, 1078, 444, 803, + 253, 443, 442, 252, 253, 252, 252, 228, 252, 253, + 252, 252, 252, 804, 252, 252, 223, 252, 805, 252, + 252, 253, 252, 222, 252, 252, 656, 610, 656, 656, + 806, 252, 221, 252, 252, 658, 253, 252, 658, 440, + 437, 253, 807, 1079, 252, 253, 252, 252, 436, 252, + 253, 252, 252, 435, 252, 253, 252, 252, 813, 253, + 252, 813, 303, 434, 253, 303, 433, 303, 253, 808, + 303, 303, 303, 809, 303, 303, 432, 253, 431, 815, + + 430, 819, 253, 303, 659, 303, 303, 253, 303, 812, + 818, 253, 429, 810, 428, 304, 811, 817, 822, 427, + 304, 426, 820, 303, 304, 304, 303, 814, 303, 303, + 425, 303, 303, 823, 424, 421, 304, 303, 304, 420, + 303, 303, 303, 303, 303, 303, 303, 419, 303, 418, + 303, 303, 825, 303, 417, 1124, 304, 824, 1124, 829, + 833, 304, 304, 303, 416, 827, 303, 828, 830, 831, + 304, 413, 412, 411, 304, 304, 304, 303, 832, 303, + 303, 304, 303, 304, 183, 303, 303, 834, 303, 303, + 303, 303, 303, 303, 303, 303, 304, 395, 394, 303, + + 303, 837, 303, 303, 1125, 838, 393, 835, 839, 836, + 304, 841, 304, 303, 390, 387, 303, 844, 304, 304, + 840, 382, 381, 304, 304, 304, 303, 303, 303, 303, + 303, 303, 304, 304, 380, 369, 842, 843, 845, 695, + 610, 609, 695, 365, 303, 697, 304, 303, 697, 303, + 303, 362, 303, 303, 303, 851, 361, 303, 851, 304, + 304, 304, 252, 361, 252, 252, 252, 250, 252, 252, + 246, 243, 304, 303, 242, 846, 303, 304, 304, 238, + 234, 915, 304, 304, 229, 228, 847, 304, 304, 850, + 914, 223, 222, 221, 698, 253, 210, 849, 848, 253, + + 252, 945, 252, 252, 852, 252, 304, 252, 252, 252, + 209, 252, 252, 204, 252, 917, 252, 252, 252, 203, + 252, 252, 252, 202, 252, 252, 303, 916, 919, 303, + 191, 187, 918, 253, 252, 184, 252, 252, 253, 183, + 183, 946, 253, 252, 920, 252, 252, 253, 182, 1190, + 1190, 253, 1190, 921, 252, 253, 252, 252, 252, 304, + 252, 252, 1190, 252, 922, 252, 252, 253, 923, 252, + 1190, 252, 252, 924, 1190, 252, 253, 252, 252, 925, + 252, 303, 252, 252, 303, 1190, 252, 253, 252, 252, + 252, 253, 252, 252, 1190, 252, 253, 252, 252, 928, + + 1190, 303, 253, 926, 303, 1190, 1190, 927, 253, 252, + 1190, 252, 252, 253, 304, 929, 1190, 930, 252, 253, + 252, 252, 1190, 253, 252, 1190, 252, 252, 253, 252, + 1190, 252, 252, 252, 304, 252, 252, 1190, 252, 933, + 252, 252, 253, 934, 1190, 1190, 252, 931, 252, 252, + 1190, 253, 252, 932, 252, 252, 936, 253, 1190, 1190, + 935, 252, 253, 252, 252, 252, 253, 252, 252, 1190, + 252, 253, 252, 252, 252, 1190, 252, 252, 252, 253, + 252, 252, 937, 1190, 252, 253, 252, 252, 252, 1121, + 252, 252, 1121, 252, 253, 252, 252, 939, 253, 938, + + 1190, 1190, 252, 253, 252, 252, 813, 253, 252, 813, + 252, 253, 252, 252, 1190, 303, 1190, 253, 303, 940, + 303, 253, 941, 303, 303, 1190, 253, 303, 942, 303, + 948, 1190, 303, 1190, 950, 253, 943, 1190, 1122, 253, + 1190, 303, 947, 253, 303, 1190, 303, 949, 304, 303, + 1190, 951, 1190, 304, 1190, 814, 952, 304, 303, 944, + 303, 303, 304, 303, 303, 1190, 303, 303, 953, 303, + 954, 1190, 303, 1190, 304, 303, 955, 303, 1190, 304, + 303, 303, 956, 303, 303, 303, 303, 303, 303, 1190, + 303, 304, 957, 304, 1190, 303, 959, 304, 303, 304, + + 303, 1190, 1190, 303, 958, 304, 303, 1190, 961, 303, + 304, 1190, 960, 1190, 304, 1190, 304, 1190, 304, 1190, + 304, 1190, 303, 303, 962, 303, 303, 303, 304, 963, + 303, 303, 964, 304, 303, 303, 968, 965, 303, 304, + 303, 967, 1190, 303, 303, 966, 303, 303, 303, 303, + 303, 303, 1190, 303, 303, 304, 304, 303, 303, 1190, + 304, 303, 303, 1190, 304, 303, 851, 970, 304, 851, + 1190, 303, 1190, 304, 303, 969, 1190, 304, 1190, 304, + 1190, 304, 1190, 304, 1190, 1190, 1190, 304, 972, 971, + 1190, 304, 1190, 973, 1190, 304, 974, 1190, 252, 304, + + 252, 252, 1190, 252, 304, 252, 252, 252, 1016, 252, + 252, 303, 1190, 1017, 303, 852, 252, 1018, 252, 252, + 975, 252, 1190, 252, 252, 252, 1190, 252, 252, 1190, + 252, 253, 252, 252, 1190, 252, 253, 252, 252, 252, + 253, 252, 252, 252, 304, 252, 252, 1190, 303, 253, + 1019, 303, 1190, 252, 253, 252, 252, 252, 253, 252, + 252, 1190, 303, 253, 252, 303, 252, 252, 253, 1190, + 1190, 1190, 253, 1190, 1020, 252, 253, 252, 252, 1190, + 252, 304, 252, 252, 1190, 1190, 253, 1190, 1021, 1190, + 253, 252, 1190, 252, 252, 304, 252, 253, 252, 252, + + 252, 1190, 252, 252, 1022, 1023, 1025, 1190, 253, 252, + 1024, 252, 252, 253, 1190, 252, 1190, 252, 252, 1026, + 252, 1190, 252, 252, 253, 1027, 1190, 1190, 252, 253, + 252, 252, 252, 253, 252, 252, 252, 1190, 252, 252, + 1190, 1190, 253, 1028, 252, 1190, 252, 252, 253, 252, + 1190, 252, 252, 253, 1030, 1190, 1190, 252, 1029, 252, + 252, 253, 1190, 303, 1031, 253, 303, 1190, 252, 253, + 252, 252, 252, 1036, 252, 252, 252, 253, 252, 252, + 1190, 252, 253, 252, 252, 303, 303, 1190, 303, 303, + 253, 1190, 1190, 1190, 303, 1037, 304, 303, 1190, 303, + + 1190, 253, 303, 1032, 1038, 253, 1190, 303, 1034, 253, + 303, 1190, 1190, 303, 253, 1033, 303, 303, 304, 304, + 303, 303, 1035, 303, 303, 1190, 303, 304, 1039, 1190, + 1190, 303, 304, 1040, 303, 1190, 303, 1190, 303, 303, + 304, 303, 303, 1190, 1041, 303, 304, 1190, 303, 1190, + 304, 303, 1045, 1190, 304, 1190, 304, 1044, 1046, 1190, + 1042, 1043, 303, 303, 304, 303, 303, 303, 1190, 304, + 303, 304, 1047, 303, 303, 304, 303, 303, 1190, 303, + 303, 304, 303, 303, 303, 1190, 303, 303, 1048, 303, + 1050, 303, 1190, 1190, 303, 304, 304, 1190, 1190, 1051, + + 304, 1049, 303, 1190, 1190, 303, 304, 304, 303, 1190, + 1190, 303, 304, 304, 1190, 1190, 1190, 304, 303, 304, + 252, 303, 252, 252, 304, 252, 1124, 252, 252, 1124, + 1190, 252, 1052, 252, 252, 304, 1190, 252, 1053, 252, + 252, 304, 1190, 252, 1054, 252, 252, 1081, 1055, 1190, + 1190, 304, 252, 253, 252, 252, 1190, 303, 253, 252, + 303, 252, 252, 1190, 253, 252, 1190, 252, 252, 252, + 253, 252, 252, 1190, 1190, 1125, 253, 1082, 1083, 252, + 1121, 252, 252, 1121, 1190, 253, 252, 1084, 252, 252, + 304, 1085, 253, 252, 1190, 252, 252, 252, 253, 252, + + 252, 303, 253, 252, 303, 252, 252, 1086, 252, 1190, + 252, 252, 253, 252, 303, 252, 252, 303, 252, 253, + 252, 252, 1190, 1088, 1190, 252, 253, 252, 252, 1122, + 253, 1190, 1087, 1089, 304, 1091, 253, 252, 1091, 1190, + 252, 253, 252, 252, 1190, 303, 253, 304, 303, 303, + 303, 253, 303, 303, 1090, 1094, 1190, 1190, 253, 303, + 303, 1190, 303, 303, 303, 1190, 303, 303, 253, 303, + 1190, 303, 1190, 253, 303, 1095, 1093, 303, 304, 1096, + 303, 1097, 304, 304, 1092, 303, 1098, 303, 303, 1190, + 303, 303, 304, 304, 303, 1099, 1190, 304, 303, 304, + + 1190, 303, 303, 303, 304, 303, 303, 1190, 1101, 1104, + 304, 1102, 1104, 1190, 303, 1190, 1100, 303, 304, 252, + 304, 252, 252, 252, 304, 252, 252, 252, 1190, 252, + 252, 304, 1190, 1190, 1190, 304, 304, 252, 1103, 252, + 252, 252, 304, 252, 252, 1126, 1190, 304, 1190, 1127, + 1106, 1128, 253, 1190, 1190, 1190, 253, 1190, 1105, 1190, + 253, 252, 1190, 252, 252, 252, 1190, 252, 252, 252, + 253, 252, 252, 1190, 253, 1130, 1129, 252, 1190, 252, + 252, 1132, 1190, 252, 1132, 1091, 1190, 252, 1091, 252, + 1190, 252, 252, 1135, 253, 252, 1135, 1190, 253, 1190, + + 303, 1190, 253, 303, 303, 1190, 303, 303, 303, 303, + 253, 303, 1131, 303, 253, 1190, 303, 303, 253, 1140, + 303, 303, 253, 1190, 303, 1190, 253, 1139, 1137, 303, + 1133, 1141, 303, 304, 1092, 1138, 1190, 304, 1134, 304, + 303, 304, 1136, 303, 1143, 1104, 304, 1143, 1104, 303, + 304, 1190, 303, 1146, 304, 1124, 1146, 252, 1124, 252, + 252, 1190, 304, 1190, 1190, 1190, 252, 1158, 252, 252, + 1190, 1190, 1190, 304, 1190, 1142, 1190, 304, 304, 1190, + 1190, 1159, 304, 1190, 1190, 252, 304, 252, 252, 252, + 253, 252, 252, 1144, 1105, 1190, 1190, 303, 1145, 253, + + 303, 1190, 1147, 252, 1125, 252, 252, 252, 1190, 252, + 252, 1190, 1132, 1160, 252, 1132, 1190, 252, 253, 252, + 252, 252, 253, 252, 252, 1135, 1190, 252, 1135, 252, + 304, 252, 252, 1190, 303, 1190, 253, 303, 303, 303, + 253, 303, 303, 1161, 1164, 253, 1190, 1190, 303, 1166, + 253, 303, 303, 1165, 253, 303, 1143, 303, 253, 1143, + 303, 1133, 253, 1190, 1190, 303, 1162, 304, 303, 1190, + 1146, 304, 304, 1146, 1136, 1190, 303, 1190, 1163, 303, + 252, 304, 252, 252, 252, 304, 252, 252, 1167, 304, + 304, 1190, 1190, 252, 1174, 252, 252, 252, 304, 252, + + 252, 303, 1190, 304, 303, 1144, 1168, 1190, 252, 304, + 252, 252, 252, 253, 252, 252, 1190, 253, 303, 1147, + 303, 303, 1190, 303, 303, 1169, 253, 303, 1176, 303, + 253, 1190, 303, 303, 304, 252, 303, 252, 252, 303, + 1175, 253, 303, 1190, 252, 253, 252, 252, 1190, 303, + 1190, 304, 303, 304, 1190, 1190, 303, 304, 252, 303, + 252, 252, 304, 1190, 1190, 1190, 304, 1177, 253, 1190, + 303, 1190, 304, 303, 1190, 1190, 1190, 253, 252, 1190, + 252, 252, 304, 303, 1190, 1190, 303, 1190, 1188, 304, + 1180, 253, 1190, 1189, 1190, 1181, 252, 1184, 252, 252, + + 1190, 1190, 1190, 304, 1190, 1190, 1190, 1190, 1190, 1185, + 1190, 253, 1190, 1190, 1190, 1190, 304, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 253, + 53, 53, 53, 53, 53, 53, 58, 58, 58, 58, + 58, 58, 65, 65, 65, 65, 65, 65, 70, 70, + 70, 70, 70, 70, 175, 175, 175, 175, 175, 175, + 219, 219, 1190, 219, 219, 219, 230, 230, 230, 230, + 230, 230, 233, 1190, 1190, 1190, 233, 233, 235, 235, + 235, 235, 235, 235, 241, 241, 1190, 1190, 241, 241, + 247, 247, 247, 247, 247, 247, 251, 251, 1190, 251, + + 251, 251, 290, 290, 1190, 290, 290, 290, 302, 302, + 1190, 1190, 1190, 302, 342, 342, 1190, 342, 342, 342, + 400, 400, 1190, 1190, 1190, 400, 17, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190 } ; -static yyconst flex_int16_t yy_chk[3912] = +static yyconst flex_int16_t yy_chk[3980] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -1281,12 +1281,12 @@ static yyconst flex_int16_t yy_chk[3912] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 7, 7, 2, 2, 3, 3, 3, - 3, 1195, 2, 4, 4, 4, 4, 4, 5, 5, + 3, 1206, 2, 4, 4, 4, 4, 4, 5, 5, 6, 6, 8, 8, 19, 2, 34, 19, 4, 28, - 15, 15, 15, 15, 1175, 30, 28, 15, 2, 30, + 15, 15, 15, 15, 1186, 30, 28, 15, 2, 30, 34, 46, 33, 2, 35, 2, 30, 2, 39, 32, - 2, 2, 32, 33, 1172, 46, 32, 40, 4, 32, + 2, 2, 32, 33, 1183, 46, 32, 40, 4, 32, 39, 35, 5, 15, 6, 40, 51, 5, 51, 6, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, @@ -1298,7 +1298,7 @@ static yyconst flex_int16_t yy_chk[3912] = 61, 61, 68, 70, 70, 10, 50, 68, 152, 156, 154, 157, 156, 64, 154, 152, 156, 163, 10, 156, - 16, 154, 157, 10, 217, 10, 217, 10, 1171, 163, + 16, 154, 157, 10, 187, 10, 187, 10, 1182, 163, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, @@ -1308,414 +1308,420 @@ static yyconst flex_int16_t yy_chk[3912] = 109, 73, 73, 109, 12, 74, 74, 74, 74, 158, 164, 169, 173, 159, 194, 220, 220, 12, 164, 166, - 166, 166, 166, 181, 209, 169, 181, 209, 194, 1168, - 12, 244, 73, 109, 173, 12, 244, 12, 74, 12, - 247, 247, 12, 12, 13, 13, 13, 13, 13, 13, + 166, 166, 166, 181, 209, 169, 181, 209, 194, 217, + 12, 217, 73, 109, 173, 12, 244, 12, 74, 12, + 1179, 244, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, - 13, 13, 13, 13, 13, 13, 14, 392, 392, 14, + 13, 13, 13, 13, 13, 13, 14, 247, 247, 14, 14, 76, 76, 76, 76, 77, 14, 77, 77, 78, - 240, 78, 78, 1167, 79, 1162, 79, 79, 78, 14, + 240, 78, 78, 365, 79, 365, 79, 79, 78, 14, - 80, 1160, 80, 80, 81, 1159, 81, 81, 84, 80, + 80, 1178, 80, 80, 81, 1173, 81, 81, 84, 80, 84, 84, 14, 83, 76, 83, 83, 14, 77, 14, - 240, 14, 78, 84, 14, 14, 43, 79, 1144, 43, - 43, 83, 82, 80, 82, 82, 43, 81, 83, 1142, - 95, 84, 95, 95, 113, 1140, 83, 113, 82, 225, + 240, 14, 78, 84, 14, 14, 43, 79, 1171, 43, + 43, 83, 82, 80, 82, 82, 43, 81, 83, 1170, + 95, 84, 95, 95, 113, 1155, 83, 113, 82, 225, 85, 95, 85, 85, 397, 86, 372, 86, 86, 95, - 1139, 93, 43, 93, 93, 82, 745, 43, 85, 43, + 1153, 93, 43, 93, 93, 82, 754, 43, 85, 43, 372, 225, 85, 95, 43, 43, 397, 113, 92, 85, - 92, 92, 745, 85, 86, 232, 232, 232, 86, 87, - 93, 87, 87, 88, 93, 88, 88, 856, 1138, 89, - - 92, 89, 89, 884, 91, 87, 91, 91, 87, 88, - 89, 92, 87, 856, 90, 87, 90, 90, 387, 884, - 88, 387, 87, 1137, 89, 90, 88, 94, 1114, 94, - 94, 91, 89, 96, 1111, 96, 96, 91, 97, 97, - 97, 97, 90, 434, 424, 94, 434, 90, 96, 98, - 547, 98, 98, 99, 99, 99, 99, 94, 424, 100, - 94, 100, 100, 1109, 547, 101, 96, 101, 101, 1107, - 102, 97, 102, 102, 103, 1105, 103, 103, 237, 237, - 237, 102, 98, 1104, 1101, 98, 99, 104, 970, 104, - 104, 105, 100, 105, 105, 102, 1100, 117, 101, 106, - - 117, 106, 106, 102, 970, 1099, 107, 103, 107, 107, - 108, 557, 108, 108, 557, 1098, 1097, 103, 1096, 1068, - 104, 1065, 106, 1063, 105, 110, 110, 110, 110, 1061, - 117, 1060, 106, 118, 104, 105, 118, 1059, 119, 107, + 92, 92, 754, 85, 86, 232, 232, 232, 86, 87, + 93, 87, 87, 88, 93, 88, 88, 392, 392, 89, + + 92, 89, 89, 867, 91, 87, 91, 91, 87, 88, + 89, 92, 87, 1151, 90, 87, 90, 90, 387, 867, + 88, 387, 87, 1150, 89, 90, 88, 94, 1149, 94, + 94, 91, 89, 96, 1148, 96, 96, 91, 97, 97, + 97, 97, 90, 435, 425, 94, 435, 90, 96, 98, + 551, 98, 98, 99, 99, 99, 99, 94, 425, 100, + 94, 100, 100, 1125, 551, 101, 96, 101, 101, 1122, + 102, 97, 102, 102, 103, 1120, 103, 103, 237, 237, + 237, 102, 98, 1118, 1116, 98, 99, 104, 895, 104, + 104, 105, 100, 105, 105, 102, 1115, 117, 101, 106, + + 117, 106, 106, 102, 895, 981, 107, 103, 107, 107, + 108, 561, 108, 108, 561, 1112, 1111, 103, 1110, 1109, + 104, 981, 106, 1108, 105, 110, 110, 110, 110, 1107, + 117, 1079, 106, 118, 104, 105, 118, 1076, 119, 107, 107, 119, 107, 108, 106, 112, 112, 112, 112, 118, - 120, 114, 116, 120, 114, 116, 119, 1058, 110, 108, - 114, 116, 1056, 119, 121, 120, 118, 121, 1054, 122, - 1053, 119, 122, 123, 124, 1052, 123, 124, 112, 1051, - 1050, 1049, 121, 120, 114, 116, 121, 1048, 127, 123, - 124, 127, 123, 121, 1047, 1046, 123, 121, 122, 123, - - 125, 124, 122, 125, 1045, 128, 123, 124, 128, 126, - 129, 125, 126, 129, 130, 127, 132, 130, 1004, 132, - 126, 127, 1003, 1001, 1000, 125, 134, 128, 999, 134, - 997, 132, 130, 125, 996, 992, 991, 126, 128, 129, - 990, 989, 126, 129, 130, 131, 987, 130, 131, 132, - 133, 133, 133, 133, 137, 983, 131, 137, 139, 134, + 120, 114, 116, 120, 114, 116, 119, 1074, 110, 108, + 114, 116, 1072, 119, 121, 120, 118, 121, 1071, 122, + 1070, 119, 122, 123, 124, 1069, 123, 124, 112, 1067, + 1065, 1064, 121, 120, 114, 116, 121, 1063, 127, 123, + 124, 127, 123, 121, 1062, 1061, 123, 121, 122, 123, + + 125, 124, 122, 125, 1060, 128, 123, 124, 128, 126, + 129, 125, 126, 129, 130, 127, 132, 130, 1059, 132, + 126, 127, 1058, 1057, 1056, 125, 134, 128, 1015, 134, + 1014, 132, 130, 125, 1012, 1011, 1010, 126, 128, 129, + 1008, 1007, 126, 129, 130, 131, 1003, 130, 131, 132, + 133, 133, 133, 133, 137, 1002, 131, 137, 139, 134, 140, 139, 134, 140, 131, 135, 135, 135, 135, 136, - 138, 136, 136, 138, 982, 981, 136, 141, 131, 980, - 141, 138, 142, 133, 979, 142, 143, 137, 978, 143, - 977, 139, 976, 140, 975, 138, 144, 974, 135, 144, - - 973, 139, 136, 138, 972, 142, 175, 140, 971, 175, - 141, 145, 145, 145, 145, 142, 969, 968, 967, 143, - 143, 141, 143, 147, 147, 147, 147, 142, 966, 144, - 168, 168, 168, 168, 176, 176, 176, 176, 965, 175, + 138, 136, 136, 138, 1001, 1000, 136, 141, 131, 998, + 141, 138, 142, 133, 994, 142, 143, 137, 993, 143, + 992, 139, 991, 140, 990, 138, 144, 989, 135, 144, + + 988, 139, 136, 138, 987, 142, 175, 140, 986, 175, + 141, 145, 145, 145, 145, 142, 985, 984, 983, 143, + 143, 141, 143, 147, 147, 147, 147, 142, 982, 144, + 168, 168, 168, 168, 176, 176, 176, 176, 980, 175, 178, 178, 178, 178, 145, 144, 180, 180, 180, 180, - 246, 246, 246, 246, 902, 251, 147, 251, 251, 252, - 900, 252, 252, 168, 899, 898, 897, 176, 253, 253, - 253, 253, 896, 178, 254, 254, 254, 254, 895, 180, - 256, 256, 256, 256, 257, 257, 257, 257, 251, 894, - 892, 302, 252, 259, 302, 259, 259, 889, 888, 887, - - 246, 253, 259, 260, 886, 260, 260, 254, 261, 885, - 261, 261, 262, 256, 262, 262, 883, 875, 263, 261, - 263, 263, 873, 872, 302, 260, 259, 264, 871, 264, - 264, 870, 869, 868, 262, 265, 260, 265, 265, 867, - 866, 261, 264, 865, 263, 262, 265, 266, 864, 266, - 266, 263, 267, 863, 267, 267, 268, 862, 268, 268, - 264, 269, 861, 269, 269, 860, 266, 267, 265, 859, - 270, 268, 270, 270, 271, 858, 271, 271, 857, 442, - 266, 270, 442, 855, 272, 267, 272, 272, 565, 268, - 269, 565, 854, 853, 269, 270, 273, 303, 273, 273, - - 303, 271, 852, 270, 851, 850, 272, 271, 274, 849, - 274, 274, 275, 848, 275, 275, 276, 272, 276, 276, - 277, 273, 277, 277, 278, 847, 278, 278, 442, 273, - 303, 279, 846, 279, 279, 274, 275, 565, 845, 276, - 844, 274, 279, 278, 280, 275, 280, 280, 322, 276, - 277, 322, 281, 277, 281, 281, 282, 278, 282, 282, - 843, 842, 767, 280, 279, 766, 764, 283, 282, 283, - 283, 284, 763, 284, 284, 322, 285, 280, 285, 285, - 607, 322, 281, 607, 283, 281, 761, 760, 288, 282, - 288, 288, 759, 284, 290, 285, 290, 290, 285, 291, - - 283, 291, 291, 758, 284, 286, 286, 286, 286, 285, - 292, 292, 292, 292, 293, 611, 293, 293, 611, 755, - 294, 288, 294, 294, 754, 288, 753, 290, 295, 607, - 295, 295, 291, 296, 320, 296, 296, 320, 286, 752, - 293, 293, 298, 292, 298, 298, 297, 293, 297, 297, - 751, 750, 299, 294, 299, 299, 300, 297, 300, 300, - 294, 295, 295, 320, 611, 298, 296, 320, 301, 296, - 301, 301, 749, 746, 729, 298, 744, 729, 743, 297, - 304, 304, 304, 304, 742, 299, 741, 298, 312, 300, - 740, 312, 739, 299, 305, 305, 305, 305, 738, 312, - - 736, 301, 300, 307, 307, 307, 307, 308, 308, 308, - 308, 310, 311, 304, 310, 311, 313, 735, 734, 313, - 310, 312, 314, 729, 733, 314, 315, 305, 316, 315, - 732, 316, 317, 731, 311, 317, 307, 318, 313, 316, - 318, 315, 730, 319, 310, 311, 319, 323, 314, 313, - 323, 317, 318, 321, 324, 314, 321, 324, 319, 315, - 728, 316, 727, 325, 321, 317, 325, 726, 326, 323, - 318, 326, 327, 725, 328, 327, 319, 328, 321, 324, - 323, 329, 330, 724, 329, 330, 321, 324, 723, 722, - 325, 331, 326, 330, 331, 327, 325, 721, 720, 332, - - 329, 326, 332, 719, 328, 327, 333, 328, 334, 333, - 331, 334, 718, 335, 329, 330, 335, 717, 333, 337, - 337, 337, 337, 336, 331, 334, 336, 340, 765, 332, - 340, 765, 332, 716, 715, 335, 714, 713, 712, 333, - 346, 334, 336, 346, 711, 336, 335, 339, 339, 339, - 339, 342, 337, 342, 342, 710, 336, 709, 342, 343, - 340, 343, 343, 708, 340, 707, 343, 344, 344, 344, - 344, 706, 345, 346, 344, 345, 347, 765, 348, 347, - 346, 348, 349, 350, 342, 349, 350, 352, 351, 705, - 352, 351, 343, 349, 353, 704, 703, 353, 345, 345, - - 344, 354, 354, 354, 354, 345, 350, 702, 701, 347, - 347, 348, 700, 699, 348, 349, 350, 698, 697, 696, - 352, 351, 356, 356, 356, 356, 695, 353, 350, 351, - 612, 610, 609, 352, 354, 357, 357, 357, 357, 358, - 608, 358, 358, 388, 388, 388, 388, 400, 401, 606, - 400, 401, 603, 602, 601, 356, 402, 402, 402, 402, - 403, 403, 403, 403, 405, 405, 405, 405, 406, 406, - 406, 406, 358, 407, 600, 407, 407, 599, 598, 597, - 400, 401, 408, 408, 408, 408, 596, 595, 594, 402, - 593, 533, 592, 403, 533, 591, 590, 405, 410, 410, - - 410, 410, 440, 440, 440, 440, 407, 448, 448, 448, - 448, 449, 449, 449, 449, 408, 450, 450, 450, 450, - 452, 452, 452, 452, 533, 453, 453, 453, 453, 455, - 455, 455, 455, 533, 456, 589, 456, 456, 457, 588, - 457, 457, 587, 586, 458, 456, 458, 458, 585, 459, - 584, 459, 459, 460, 583, 460, 460, 448, 453, 582, - 500, 449, 457, 500, 581, 580, 450, 456, 579, 458, - 578, 457, 460, 461, 577, 461, 461, 458, 459, 500, - 576, 462, 459, 462, 462, 463, 460, 463, 463, 464, - 461, 464, 464, 500, 465, 575, 465, 465, 501, 574, - - 464, 501, 466, 462, 466, 466, 461, 573, 463, 465, - 467, 569, 467, 467, 462, 501, 568, 468, 463, 468, - 468, 469, 464, 469, 469, 567, 470, 465, 470, 470, - 466, 501, 469, 566, 467, 466, 564, 562, 473, 470, - 473, 473, 468, 467, 561, 471, 469, 471, 471, 472, - 468, 472, 472, 473, 469, 474, 560, 474, 474, 470, - 475, 497, 475, 475, 497, 1002, 471, 474, 1002, 559, - 476, 473, 476, 476, 558, 475, 1055, 472, 471, 1055, - 556, 555, 472, 476, 477, 497, 477, 477, 474, 478, - 554, 478, 478, 475, 497, 479, 553, 479, 479, 480, - - 552, 480, 480, 476, 1066, 478, 477, 1066, 551, 481, - 550, 481, 481, 482, 1002, 482, 482, 477, 483, 549, - 483, 483, 478, 479, 481, 1055, 479, 480, 479, 548, - 482, 483, 480, 484, 546, 484, 484, 485, 485, 485, - 485, 487, 481, 487, 487, 545, 482, 486, 486, 486, - 486, 483, 488, 1066, 488, 488, 489, 544, 489, 489, - 490, 543, 490, 490, 542, 498, 484, 484, 498, 491, - 485, 491, 491, 492, 487, 492, 492, 541, 540, 539, - 486, 496, 487, 538, 496, 488, 490, 537, 536, 489, - 498, 499, 496, 490, 499, 535, 534, 489, 498, 447, - - 502, 488, 491, 502, 503, 1067, 492, 503, 1067, 491, - 493, 493, 493, 493, 496, 492, 495, 495, 495, 495, - 499, 446, 502, 504, 499, 505, 504, 503, 505, 506, - 445, 444, 506, 502, 504, 507, 508, 503, 507, 508, - 505, 509, 510, 493, 509, 510, 511, 443, 512, 511, - 513, 512, 509, 513, 1067, 510, 504, 506, 505, 507, - 514, 508, 506, 514, 441, 513, 509, 511, 507, 508, - 515, 439, 514, 515, 509, 510, 512, 516, 438, 511, - 516, 512, 437, 513, 517, 515, 518, 517, 520, 518, - 516, 520, 519, 514, 521, 519, 522, 521, 523, 522, - - 436, 523, 518, 515, 524, 435, 517, 524, 433, 521, - 516, 523, 432, 522, 431, 528, 520, 517, 528, 518, - 519, 520, 430, 519, 429, 519, 428, 521, 427, 522, - 426, 523, 525, 525, 525, 525, 425, 524, 524, 525, - 526, 526, 526, 526, 527, 527, 527, 527, 528, 529, - 530, 423, 529, 530, 531, 532, 528, 531, 532, 563, - 563, 563, 563, 422, 421, 525, 570, 570, 570, 570, - 572, 572, 572, 572, 420, 1069, 419, 527, 1069, 418, - 531, 417, 529, 530, 416, 415, 1102, 531, 532, 1102, - 414, 530, 413, 412, 411, 532, 399, 398, 529, 570, - - 604, 604, 604, 604, 613, 613, 613, 613, 615, 615, - 615, 615, 616, 616, 616, 616, 618, 618, 618, 618, - 619, 396, 619, 619, 1069, 620, 657, 620, 620, 657, - 621, 395, 621, 621, 394, 1102, 393, 619, 620, 622, - 390, 622, 622, 657, 623, 386, 623, 623, 624, 385, - 624, 624, 658, 619, 613, 658, 384, 622, 620, 657, - 621, 623, 616, 621, 625, 658, 625, 625, 626, 383, - 626, 626, 622, 382, 381, 380, 624, 623, 626, 625, - 627, 624, 627, 627, 628, 658, 628, 628, 379, 629, - 378, 629, 629, 630, 377, 630, 630, 625, 376, 375, - - 374, 626, 631, 667, 631, 631, 667, 628, 373, 627, - 629, 371, 632, 627, 632, 632, 633, 628, 633, 633, - 659, 630, 629, 659, 667, 370, 630, 369, 631, 632, - 634, 661, 634, 634, 661, 631, 667, 635, 368, 635, - 635, 633, 367, 366, 636, 632, 636, 636, 661, 633, - 659, 634, 635, 659, 636, 637, 365, 637, 637, 638, - 364, 638, 638, 634, 661, 637, 639, 363, 639, 639, - 635, 640, 1103, 640, 640, 1103, 641, 636, 641, 641, - 642, 665, 642, 642, 665, 362, 640, 638, 637, 361, - 639, 641, 638, 249, 245, 643, 642, 643, 643, 639, - - 644, 242, 644, 644, 640, 645, 241, 645, 645, 641, - 665, 644, 239, 642, 665, 645, 646, 238, 646, 646, - 649, 1103, 649, 649, 643, 236, 646, 647, 643, 647, - 647, 231, 648, 644, 648, 648, 227, 226, 645, 650, - 650, 650, 650, 224, 651, 647, 651, 651, 652, 646, - 652, 652, 653, 649, 653, 653, 654, 648, 654, 654, - 647, 655, 223, 655, 655, 648, 656, 649, 656, 656, - 222, 670, 650, 660, 670, 663, 660, 651, 663, 662, - 221, 652, 662, 218, 671, 653, 651, 671, 670, 654, - 663, 660, 664, 216, 655, 664, 655, 652, 215, 656, - - 214, 653, 664, 654, 670, 210, 660, 662, 663, 671, - 666, 668, 662, 666, 668, 656, 669, 671, 208, 669, - 672, 673, 207, 672, 673, 664, 206, 674, 675, 676, - 674, 675, 676, 666, 205, 204, 673, 674, 675, 668, - 203, 672, 669, 666, 668, 677, 202, 680, 677, 669, - 680, 201, 678, 672, 673, 678, 679, 676, 200, 679, - 674, 675, 676, 680, 199, 681, 198, 678, 681, 677, - 682, 679, 683, 682, 684, 683, 687, 684, 677, 687, - 680, 682, 683, 685, 684, 678, 685, 686, 689, 679, - 686, 689, 197, 196, 681, 195, 690, 1110, 681, 690, - - 1110, 685, 193, 682, 192, 683, 191, 684, 692, 687, - 691, 692, 686, 691, 693, 694, 685, 693, 694, 190, - 686, 689, 189, 687, 688, 688, 688, 688, 805, 690, - 689, 805, 768, 188, 768, 768, 769, 187, 769, 769, - 186, 692, 185, 691, 184, 690, 1110, 693, 694, 693, - 770, 769, 770, 770, 183, 692, 805, 688, 172, 691, - 768, 805, 171, 170, 694, 768, 167, 165, 771, 769, - 771, 771, 772, 162, 772, 772, 161, 770, 771, 773, - 160, 773, 773, 770, 774, 809, 774, 774, 809, 773, - 772, 155, 153, 775, 774, 775, 775, 776, 151, 776, - - 776, 771, 149, 809, 148, 772, 777, 776, 777, 777, - 72, 778, 773, 778, 778, 69, 777, 774, 809, 67, - 812, 778, 779, 812, 779, 779, 775, 65, 63, 60, - 776, 780, 779, 780, 780, 781, 55, 781, 781, 777, - 782, 780, 782, 782, 778, 783, 52, 783, 783, 784, - 49, 784, 784, 812, 785, 779, 785, 785, 783, 786, - 48, 786, 786, 781, 780, 47, 42, 782, 781, 787, - 41, 787, 787, 782, 783, 38, 784, 788, 783, 788, - 788, 789, 784, 789, 789, 37, 790, 785, 790, 790, - 36, 789, 786, 31, 29, 27, 790, 792, 787, 792, - - 792, 791, 787, 791, 791, 1113, 788, 792, 1113, 793, - 788, 793, 793, 794, 789, 794, 794, 25, 795, 790, - 795, 795, 806, 791, 796, 806, 796, 796, 23, 797, - 792, 797, 797, 798, 791, 798, 798, 806, 799, 793, - 799, 799, 793, 21, 17, 800, 794, 800, 800, 0, - 0, 795, 797, 796, 1113, 806, 801, 796, 801, 801, - 0, 802, 797, 802, 802, 803, 798, 803, 803, 0, - 804, 799, 804, 804, 798, 0, 799, 807, 800, 0, - 807, 0, 808, 810, 0, 808, 810, 811, 0, 801, - 811, 801, 808, 810, 802, 802, 813, 811, 803, 813, - - 0, 0, 814, 804, 807, 814, 813, 0, 815, 0, - 807, 815, 814, 0, 803, 808, 810, 0, 815, 804, - 811, 816, 817, 818, 816, 817, 818, 0, 0, 813, - 819, 816, 817, 819, 821, 814, 820, 821, 0, 820, - 822, 815, 823, 822, 0, 823, 0, 824, 0, 820, - 824, 818, 0, 0, 816, 817, 818, 819, 0, 825, - 0, 821, 825, 819, 0, 820, 0, 821, 826, 820, - 0, 826, 0, 822, 827, 823, 824, 827, 826, 0, - 824, 0, 828, 829, 827, 828, 829, 830, 825, 0, - 830, 831, 825, 829, 831, 832, 833, 0, 832, 833, - - 834, 826, 835, 834, 828, 835, 836, 827, 837, 836, - 0, 837, 0, 0, 0, 828, 829, 830, 838, 840, - 830, 838, 840, 834, 831, 833, 0, 839, 832, 833, - 839, 841, 0, 834, 841, 835, 0, 0, 0, 836, - 0, 837, 0, 835, 836, 903, 0, 903, 903, 0, - 0, 838, 840, 838, 937, 903, 904, 937, 904, 904, - 839, 839, 0, 0, 841, 0, 904, 905, 840, 905, - 905, 906, 0, 906, 906, 0, 0, 905, 903, 907, - 841, 907, 907, 908, 0, 908, 908, 937, 909, 904, - 909, 909, 910, 0, 910, 910, 911, 0, 911, 911, - - 905, 0, 0, 912, 906, 912, 912, 913, 907, 913, - 913, 914, 907, 914, 914, 939, 908, 915, 939, 915, - 915, 909, 0, 0, 0, 910, 0, 915, 916, 911, - 916, 916, 0, 0, 0, 917, 912, 917, 917, 0, - 913, 916, 0, 918, 914, 918, 918, 0, 939, 919, - 915, 919, 919, 920, 0, 920, 920, 916, 0, 919, - 917, 916, 918, 920, 921, 0, 921, 921, 917, 922, - 0, 922, 922, 0, 921, 923, 918, 923, 923, 0, - 0, 924, 919, 924, 924, 925, 920, 925, 925, 926, - 0, 926, 926, 0, 0, 0, 924, 921, 929, 0, - - 929, 929, 922, 927, 0, 927, 927, 930, 923, 930, - 930, 926, 0, 927, 924, 0, 0, 928, 925, 928, - 928, 0, 926, 931, 0, 931, 931, 932, 0, 932, - 932, 929, 928, 0, 0, 933, 927, 933, 933, 934, - 930, 0, 934, 935, 929, 936, 935, 0, 936, 934, - 928, 0, 0, 935, 930, 936, 931, 0, 938, 931, - 932, 938, 940, 941, 942, 940, 941, 942, 933, 0, - 0, 943, 934, 932, 943, 0, 935, 944, 936, 945, - 944, 0, 945, 946, 0, 947, 946, 938, 947, 949, - 0, 938, 949, 946, 0, 940, 941, 942, 947, 948, - - 0, 0, 948, 950, 943, 0, 950, 0, 949, 0, - 944, 0, 945, 950, 947, 0, 946, 951, 947, 0, - 951, 0, 949, 952, 948, 953, 952, 951, 953, 0, - 0, 954, 948, 952, 954, 956, 950, 955, 956, 957, - 955, 958, 957, 960, 958, 959, 960, 0, 959, 0, - 951, 958, 955, 0, 961, 0, 952, 961, 953, 962, - 959, 957, 962, 963, 954, 0, 963, 0, 956, 0, - 955, 0, 957, 0, 958, 0, 960, 964, 959, 1005, - 964, 1005, 1005, 1006, 0, 1006, 1006, 961, 1007, 960, - 1007, 1007, 962, 0, 0, 962, 963, 1008, 0, 1008, - - 1008, 961, 1009, 0, 1009, 1009, 0, 1008, 0, 963, - 964, 1010, 1005, 1010, 1010, 1011, 1006, 1011, 1011, 0, - 1012, 1007, 1012, 1012, 1013, 0, 1013, 1013, 0, 1014, - 1008, 1014, 1014, 0, 1011, 1009, 1010, 1015, 0, 1015, - 1015, 0, 1012, 0, 1010, 0, 1013, 1016, 1011, 1016, - 1016, 0, 1018, 1012, 1018, 1018, 1017, 1013, 1017, 1017, - 0, 1019, 1014, 1019, 1019, 1020, 1017, 1020, 1020, 1021, - 1015, 1021, 1021, 0, 0, 1020, 1022, 1021, 1022, 1022, - 1016, 1018, 0, 0, 1023, 1018, 1023, 1023, 1024, 1017, - 1024, 1024, 1025, 1026, 1019, 1025, 1026, 1027, 1020, 0, - - 1027, 1028, 1021, 1029, 1028, 1032, 1029, 1030, 1032, 1022, - 1030, 1028, 1022, 0, 0, 1033, 1031, 1023, 1033, 1031, - 1034, 1024, 0, 1034, 1024, 1025, 1026, 1032, 1035, 0, - 1027, 1035, 1030, 1023, 1028, 1031, 1029, 1033, 1032, 1036, - 1030, 1037, 1036, 0, 1037, 0, 0, 1038, 1033, 1031, - 1038, 1037, 1039, 1034, 1040, 1039, 0, 1040, 0, 1041, - 1042, 1035, 1041, 1042, 1040, 1043, 1044, 1041, 1043, 1044, - 0, 0, 1036, 0, 1037, 1070, 1038, 1070, 1070, 1071, - 1038, 1071, 1071, 1083, 0, 1039, 1083, 1040, 1072, 0, - 1072, 1072, 1041, 1042, 0, 0, 1042, 0, 1043, 1044, - - 0, 1071, 1044, 1073, 0, 1073, 1073, 0, 1070, 0, - 1072, 0, 1071, 1073, 1043, 1074, 1083, 1074, 1074, 0, - 1075, 1072, 1075, 1075, 1076, 1087, 1076, 1076, 1087, 1077, - 1074, 1077, 1077, 0, 1076, 1078, 1073, 1078, 1078, 1079, - 1087, 1079, 1079, 1080, 0, 1080, 1080, 1081, 1074, 1081, - 1081, 0, 1082, 1075, 1082, 1082, 1084, 1076, 1087, 1084, - 1085, 1086, 1077, 1085, 1086, 0, 1088, 0, 1078, 1088, - 1078, 1086, 1079, 0, 1089, 0, 1080, 1089, 1084, 0, - 1081, 0, 1085, 1090, 1089, 1082, 1090, 1091, 1079, 1084, - 1091, 0, 1080, 1085, 1086, 1092, 1081, 1093, 1092, 1088, - - 1093, 1082, 1094, 1095, 0, 1094, 1095, 1089, 1115, 0, - 1115, 1115, 1116, 0, 1116, 1116, 1090, 0, 1115, 0, - 1091, 1117, 1091, 1117, 1117, 0, 0, 1116, 1092, 1118, - 1093, 1118, 1118, 0, 0, 1094, 1095, 0, 0, 1118, - 1119, 1115, 1119, 1119, 1092, 1116, 1093, 1120, 0, 1120, - 1120, 1094, 1095, 1121, 1117, 1121, 1121, 1122, 0, 1122, - 1122, 1123, 1118, 1123, 1123, 1124, 1126, 1124, 1124, 1126, - 0, 0, 1125, 1119, 1125, 1125, 1126, 0, 1127, 1128, - 1120, 1127, 1128, 1120, 1130, 1129, 1121, 1130, 1129, 1131, - 1122, 0, 1131, 1127, 1123, 1129, 0, 1132, 1124, 1126, - - 1132, 1133, 1121, 0, 1133, 1125, 1122, 1134, 0, 0, - 1134, 1127, 1128, 0, 1124, 0, 1135, 1130, 1129, 1135, - 1136, 1125, 1131, 1136, 1147, 1131, 1147, 1147, 0, 1148, - 1132, 1148, 1148, 1149, 1133, 1149, 1149, 0, 0, 1148, - 1134, 1150, 0, 1150, 1150, 1151, 1132, 1151, 1151, 1135, - 1133, 0, 1152, 1136, 1152, 1152, 1153, 1147, 1154, 1153, - 1155, 1154, 1148, 1155, 1156, 1135, 1149, 1156, 1154, 1136, - 1157, 0, 1158, 1157, 1150, 1158, 0, 1163, 1151, 1163, - 1163, 0, 0, 1165, 1150, 1152, 1165, 1166, 0, 1153, - 1166, 1154, 1164, 1155, 1164, 1164, 1169, 1156, 1169, 1169, - - 0, 1170, 0, 1157, 1170, 1158, 0, 1156, 0, 1173, - 1163, 1173, 1173, 0, 1174, 1178, 1165, 1174, 1178, 1173, - 1166, 0, 0, 0, 1174, 1164, 0, 0, 1177, 1169, - 1177, 1177, 0, 1166, 1170, 1169, 0, 0, 1164, 0, - 1170, 0, 1173, 0, 0, 0, 0, 1174, 1178, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1177, 1180, 1180, 1180, 1180, 1180, 1180, 1181, 1181, - 1181, 1181, 1181, 1181, 1182, 1182, 1182, 1182, 1182, 1182, - 1183, 1183, 1183, 1183, 1183, 1183, 1184, 1184, 1184, 1184, - 1184, 1184, 1185, 1185, 0, 1185, 1185, 1185, 1186, 1186, - - 1186, 1186, 1186, 1186, 1187, 0, 0, 0, 1187, 1187, - 1188, 1188, 1188, 1188, 1188, 1188, 1189, 1189, 0, 0, - 1189, 1189, 1190, 1190, 1190, 1190, 1190, 1190, 1191, 1191, - 0, 1191, 1191, 1191, 1192, 1192, 0, 1192, 1192, 1192, - 1193, 1193, 0, 0, 0, 1193, 1194, 1194, 0, 1194, - 1194, 1194, 1196, 1196, 0, 0, 0, 1196, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, - 1179 + 246, 246, 246, 246, 979, 251, 147, 251, 251, 252, + 978, 252, 252, 168, 977, 976, 913, 176, 253, 253, + 253, 253, 911, 178, 254, 254, 254, 254, 910, 180, + 256, 256, 256, 256, 257, 257, 257, 257, 251, 909, + 908, 302, 252, 259, 302, 259, 259, 907, 906, 905, + + 246, 253, 259, 260, 903, 260, 260, 254, 261, 900, + 261, 261, 262, 256, 262, 262, 899, 898, 263, 261, + 263, 263, 897, 896, 302, 260, 259, 264, 443, 264, + 264, 443, 303, 894, 262, 303, 260, 265, 886, 265, + 265, 261, 264, 884, 263, 262, 263, 266, 265, 266, + 266, 263, 267, 883, 267, 267, 268, 882, 268, 268, + 264, 269, 881, 269, 269, 303, 266, 267, 880, 879, + 265, 268, 270, 878, 270, 270, 271, 443, 271, 271, + 266, 877, 876, 270, 272, 267, 272, 272, 875, 268, + 269, 874, 873, 273, 269, 273, 273, 270, 274, 872, + + 274, 274, 871, 271, 310, 270, 272, 310, 275, 271, + 275, 275, 276, 310, 276, 276, 870, 272, 273, 277, + 869, 277, 277, 868, 866, 274, 273, 278, 865, 278, + 278, 274, 275, 864, 863, 276, 279, 310, 279, 279, + 280, 275, 280, 280, 862, 276, 278, 279, 281, 277, + 281, 281, 277, 282, 861, 282, 282, 860, 859, 280, + 278, 284, 858, 284, 284, 282, 857, 856, 283, 279, + 283, 283, 317, 280, 285, 317, 285, 285, 281, 855, + 854, 281, 853, 284, 776, 283, 282, 286, 286, 286, + 286, 317, 775, 285, 284, 288, 285, 288, 288, 773, + + 290, 283, 290, 290, 772, 317, 291, 285, 291, 291, + 292, 292, 292, 292, 293, 770, 293, 293, 769, 294, + 286, 294, 294, 295, 768, 295, 295, 296, 288, 296, + 296, 767, 288, 290, 297, 764, 297, 297, 763, 291, + 293, 293, 762, 292, 761, 297, 298, 293, 298, 298, + 760, 299, 294, 299, 299, 759, 295, 295, 758, 294, + 296, 755, 300, 296, 300, 300, 753, 297, 301, 298, + 301, 301, 304, 304, 304, 304, 752, 751, 750, 298, + 305, 305, 305, 305, 299, 307, 307, 307, 307, 749, + 311, 298, 299, 311, 748, 300, 308, 308, 308, 308, + + 312, 301, 747, 312, 313, 304, 314, 313, 300, 314, + 745, 312, 311, 305, 315, 744, 316, 315, 307, 316, + 743, 318, 741, 311, 318, 319, 313, 316, 319, 315, + 740, 739, 314, 312, 314, 320, 318, 313, 320, 314, + 319, 321, 322, 323, 321, 322, 323, 315, 324, 316, + 325, 324, 321, 325, 318, 738, 326, 736, 319, 326, + 330, 735, 734, 330, 320, 323, 321, 327, 320, 322, + 327, 330, 733, 324, 321, 322, 323, 325, 732, 328, + 326, 324, 328, 325, 329, 331, 731, 329, 331, 326, + 327, 332, 730, 330, 332, 333, 334, 729, 333, 334, + + 327, 728, 727, 329, 331, 335, 726, 333, 335, 328, + 725, 336, 328, 334, 336, 724, 340, 329, 331, 340, + 723, 332, 569, 353, 332, 569, 353, 335, 333, 334, + 336, 722, 721, 336, 337, 337, 337, 337, 335, 339, + 339, 339, 339, 342, 336, 342, 342, 720, 345, 340, + 342, 345, 343, 340, 343, 343, 353, 346, 719, 343, + 346, 344, 344, 344, 344, 718, 347, 337, 344, 347, + 348, 569, 717, 348, 345, 345, 342, 349, 716, 350, + 349, 345, 350, 352, 351, 343, 352, 351, 349, 358, + 346, 358, 358, 400, 344, 401, 400, 346, 401, 347, + + 347, 612, 350, 348, 612, 715, 348, 714, 713, 712, + 349, 616, 350, 711, 616, 710, 352, 351, 354, 354, + 354, 354, 358, 709, 350, 351, 400, 708, 401, 352, + 356, 356, 356, 356, 357, 357, 357, 357, 388, 388, + 388, 388, 402, 402, 402, 402, 403, 403, 403, 403, + 612, 354, 405, 405, 405, 405, 406, 406, 406, 406, + 616, 707, 407, 356, 407, 407, 408, 408, 408, 408, + 410, 410, 410, 410, 706, 402, 705, 704, 703, 403, + 441, 441, 441, 441, 702, 405, 449, 449, 449, 449, + 450, 450, 450, 450, 617, 407, 615, 614, 613, 408, + + 451, 451, 451, 451, 453, 453, 453, 453, 454, 454, + 454, 454, 456, 456, 456, 456, 457, 611, 457, 457, + 458, 608, 458, 458, 607, 606, 459, 457, 459, 459, + 605, 460, 604, 460, 460, 461, 449, 461, 461, 603, + 450, 454, 602, 462, 458, 462, 462, 601, 461, 457, + 451, 459, 463, 458, 463, 463, 600, 599, 598, 459, + 460, 597, 462, 465, 460, 465, 465, 596, 461, 463, + 464, 595, 464, 464, 594, 593, 462, 466, 592, 466, + 466, 468, 591, 468, 468, 463, 465, 467, 466, 467, + 467, 469, 464, 469, 469, 504, 465, 470, 504, 470, + + 470, 590, 467, 464, 472, 501, 472, 472, 501, 468, + 466, 589, 504, 588, 468, 469, 471, 472, 471, 471, + 467, 587, 470, 473, 469, 473, 473, 471, 504, 474, + 470, 474, 474, 475, 501, 475, 475, 472, 501, 586, + 476, 471, 476, 476, 473, 585, 584, 737, 475, 471, + 737, 774, 476, 583, 774, 582, 473, 474, 581, 580, + 579, 477, 474, 477, 477, 478, 475, 478, 478, 479, + 578, 479, 479, 476, 577, 573, 477, 480, 478, 480, + 480, 481, 572, 481, 481, 482, 571, 482, 482, 570, + 568, 479, 566, 480, 477, 565, 737, 564, 478, 563, + + 774, 483, 479, 483, 483, 484, 562, 484, 484, 481, + 480, 560, 481, 482, 481, 559, 483, 485, 482, 485, + 485, 486, 484, 486, 486, 487, 487, 487, 487, 489, + 485, 489, 489, 490, 483, 490, 490, 558, 484, 488, + 488, 488, 488, 491, 557, 491, 491, 556, 500, 555, + 485, 500, 554, 553, 486, 486, 552, 492, 487, 492, + 492, 493, 489, 493, 493, 494, 490, 494, 494, 550, + 489, 499, 488, 500, 499, 549, 491, 495, 495, 495, + 495, 500, 490, 492, 491, 497, 497, 497, 497, 498, + 492, 548, 498, 502, 493, 499, 502, 547, 494, 503, + + 498, 493, 503, 546, 499, 505, 502, 494, 505, 507, + 495, 506, 507, 508, 506, 545, 508, 544, 503, 543, + 507, 509, 498, 542, 509, 541, 502, 505, 508, 540, + 539, 538, 503, 510, 506, 537, 510, 511, 505, 448, + 511, 447, 507, 446, 506, 445, 508, 512, 513, 509, + 512, 513, 514, 444, 509, 514, 515, 510, 512, 515, + 516, 513, 511, 516, 517, 442, 510, 517, 518, 440, + 511, 518, 512, 514, 519, 516, 517, 519, 439, 521, + 512, 513, 521, 518, 515, 514, 438, 519, 520, 515, + 437, 520, 436, 516, 434, 521, 522, 517, 433, 522, + + 523, 518, 524, 523, 432, 524, 525, 519, 527, 525, + 520, 527, 521, 526, 431, 430, 526, 524, 429, 532, + 428, 520, 532, 525, 522, 427, 526, 522, 523, 522, + 426, 531, 424, 523, 531, 524, 423, 533, 422, 525, + 533, 527, 527, 421, 420, 419, 526, 528, 528, 528, + 528, 418, 532, 417, 528, 529, 529, 529, 529, 530, + 530, 530, 530, 534, 531, 416, 534, 415, 532, 414, + 533, 535, 531, 536, 535, 413, 536, 412, 533, 411, + 528, 567, 567, 567, 567, 574, 574, 574, 574, 534, + 1013, 399, 530, 1013, 398, 396, 534, 576, 576, 576, + + 576, 395, 1066, 394, 535, 1066, 536, 609, 609, 609, + 609, 535, 393, 390, 626, 536, 626, 626, 574, 618, + 618, 618, 618, 620, 620, 620, 620, 621, 621, 621, + 621, 623, 623, 623, 623, 624, 386, 624, 624, 1013, + 625, 385, 625, 625, 626, 384, 627, 626, 627, 627, + 383, 1066, 624, 625, 382, 628, 381, 628, 628, 629, + 380, 629, 629, 669, 627, 628, 669, 379, 624, 618, + 378, 377, 630, 625, 630, 630, 629, 621, 631, 627, + 631, 631, 674, 376, 632, 674, 632, 632, 628, 375, + 374, 669, 629, 631, 632, 633, 669, 633, 633, 634, + + 630, 634, 634, 674, 635, 630, 635, 635, 373, 371, + 636, 631, 636, 636, 370, 674, 637, 632, 637, 637, + 369, 368, 634, 367, 633, 635, 366, 638, 633, 638, + 638, 639, 634, 639, 639, 364, 363, 635, 636, 362, + 361, 249, 637, 636, 638, 640, 245, 640, 640, 637, + 641, 1077, 641, 641, 1077, 645, 639, 645, 645, 642, + 638, 642, 642, 242, 639, 641, 640, 241, 664, 642, + 643, 664, 643, 643, 644, 239, 644, 644, 640, 645, + 643, 664, 646, 641, 646, 646, 238, 649, 645, 649, + 649, 647, 642, 647, 647, 236, 648, 646, 648, 648, + + 1077, 664, 644, 643, 231, 227, 647, 644, 650, 226, + 650, 650, 648, 224, 1078, 646, 649, 1078, 223, 650, + 649, 222, 221, 651, 647, 651, 651, 218, 652, 648, + 652, 652, 653, 651, 653, 653, 216, 654, 652, 654, + 654, 650, 655, 215, 655, 655, 656, 656, 656, 656, + 653, 657, 214, 657, 657, 658, 651, 658, 658, 210, + 208, 652, 654, 1078, 659, 653, 659, 659, 207, 660, + 654, 660, 660, 206, 661, 655, 661, 661, 662, 656, + 662, 662, 663, 205, 657, 663, 204, 665, 658, 655, + 665, 667, 666, 657, 667, 666, 203, 659, 202, 663, + + 201, 667, 660, 670, 658, 668, 670, 661, 668, 661, + 666, 662, 200, 659, 199, 663, 660, 665, 670, 198, + 665, 197, 668, 671, 667, 666, 671, 662, 672, 673, + 196, 672, 673, 671, 195, 193, 670, 675, 668, 192, + 675, 676, 677, 678, 676, 677, 678, 191, 679, 190, + 681, 679, 673, 681, 189, 1080, 671, 672, 1080, 677, + 681, 672, 673, 680, 188, 675, 680, 676, 678, 679, + 675, 186, 185, 184, 676, 677, 678, 682, 680, 683, + 682, 679, 683, 681, 183, 684, 685, 682, 684, 685, + 686, 688, 687, 686, 688, 687, 680, 172, 171, 692, + + 689, 685, 692, 689, 1080, 686, 170, 683, 687, 684, + 682, 689, 683, 693, 167, 165, 693, 692, 684, 685, + 688, 162, 161, 686, 688, 687, 690, 691, 694, 690, + 691, 694, 692, 689, 160, 155, 690, 691, 693, 695, + 695, 695, 695, 153, 696, 697, 693, 696, 697, 698, + 699, 151, 698, 699, 700, 701, 149, 700, 701, 690, + 691, 694, 777, 148, 777, 777, 778, 72, 778, 778, + 69, 67, 695, 815, 65, 694, 815, 696, 697, 63, + 60, 778, 698, 699, 55, 52, 696, 700, 701, 700, + 777, 49, 48, 47, 697, 777, 42, 699, 698, 778, + + 779, 815, 779, 779, 701, 780, 815, 780, 780, 781, + 41, 781, 781, 38, 782, 780, 782, 782, 783, 37, + 783, 783, 785, 36, 785, 785, 816, 779, 783, 816, + 31, 29, 782, 779, 784, 27, 784, 784, 780, 25, + 23, 816, 781, 786, 784, 786, 786, 782, 21, 17, + 0, 783, 0, 786, 787, 785, 787, 787, 788, 816, + 788, 788, 0, 789, 787, 789, 789, 784, 788, 790, + 0, 790, 790, 789, 0, 791, 786, 791, 791, 790, + 792, 819, 792, 792, 819, 0, 793, 787, 793, 793, + 794, 788, 794, 794, 0, 795, 789, 795, 795, 793, + + 0, 823, 790, 791, 823, 0, 0, 792, 791, 796, + 0, 796, 796, 792, 819, 793, 0, 794, 797, 793, + 797, 797, 0, 794, 798, 0, 798, 798, 795, 799, + 0, 799, 799, 800, 823, 800, 800, 0, 801, 799, + 801, 801, 796, 800, 0, 0, 802, 797, 802, 802, + 0, 797, 803, 798, 803, 803, 802, 798, 0, 0, + 801, 804, 799, 804, 804, 805, 800, 805, 805, 0, + 806, 801, 806, 806, 807, 0, 807, 807, 808, 802, + 808, 808, 803, 0, 809, 803, 809, 809, 810, 1113, + 810, 810, 1113, 811, 804, 811, 811, 807, 805, 806, + + 0, 0, 812, 806, 812, 812, 813, 807, 813, 813, + 814, 808, 814, 814, 0, 817, 0, 809, 817, 808, + 818, 810, 809, 818, 821, 0, 811, 821, 811, 820, + 818, 0, 820, 0, 821, 812, 812, 0, 1113, 813, + 0, 822, 817, 814, 822, 0, 824, 820, 817, 824, + 0, 822, 0, 818, 0, 813, 824, 821, 825, 814, + 826, 825, 820, 826, 829, 0, 827, 829, 825, 827, + 826, 0, 828, 0, 822, 828, 827, 830, 0, 824, + 830, 832, 828, 831, 832, 833, 831, 834, 833, 0, + 834, 825, 829, 826, 0, 835, 831, 829, 835, 827, + + 836, 0, 0, 836, 830, 828, 841, 0, 832, 841, + 830, 0, 831, 0, 832, 0, 831, 0, 833, 0, + 834, 0, 837, 839, 835, 837, 839, 838, 835, 836, + 838, 840, 837, 836, 840, 842, 841, 838, 842, 841, + 843, 840, 0, 843, 845, 839, 844, 845, 846, 844, + 847, 846, 0, 847, 848, 837, 839, 848, 849, 0, + 838, 849, 850, 0, 840, 850, 851, 845, 842, 851, + 0, 852, 0, 843, 852, 844, 0, 845, 0, 844, + 0, 846, 0, 847, 0, 0, 0, 848, 847, 846, + 0, 849, 0, 849, 0, 850, 850, 0, 914, 851, + + 914, 914, 0, 915, 852, 915, 915, 916, 914, 916, + 916, 948, 0, 915, 948, 851, 917, 916, 917, 917, + 852, 918, 0, 918, 918, 919, 0, 919, 919, 0, + 920, 914, 920, 920, 0, 921, 915, 921, 921, 922, + 916, 922, 922, 923, 948, 923, 923, 0, 950, 917, + 918, 950, 0, 924, 918, 924, 924, 925, 919, 925, + 925, 0, 951, 920, 926, 951, 926, 926, 921, 0, + 0, 0, 922, 0, 926, 927, 923, 927, 927, 0, + 928, 950, 928, 928, 0, 0, 924, 0, 927, 0, + 925, 929, 0, 929, 929, 951, 930, 926, 930, 930, + + 933, 0, 933, 933, 927, 928, 930, 0, 927, 931, + 929, 931, 931, 928, 0, 932, 0, 932, 932, 931, + 934, 0, 934, 934, 929, 932, 0, 0, 935, 930, + 935, 935, 936, 933, 936, 936, 937, 0, 937, 937, + 0, 0, 931, 935, 938, 0, 938, 938, 932, 939, + 0, 939, 939, 934, 938, 0, 0, 940, 937, 940, + 940, 935, 0, 945, 939, 936, 945, 0, 941, 937, + 941, 941, 942, 945, 942, 942, 943, 938, 943, 943, + 0, 944, 939, 944, 944, 946, 952, 0, 946, 952, + 940, 0, 0, 0, 947, 946, 945, 947, 0, 949, + + 0, 941, 949, 940, 947, 942, 0, 953, 942, 943, + 953, 0, 0, 954, 944, 941, 954, 955, 946, 952, + 955, 956, 943, 957, 956, 0, 957, 947, 949, 0, + 0, 958, 949, 957, 958, 0, 959, 0, 960, 959, + 953, 960, 961, 0, 958, 961, 954, 0, 962, 0, + 955, 962, 961, 0, 956, 0, 957, 960, 962, 0, + 958, 959, 963, 964, 958, 963, 964, 965, 0, 959, + 965, 960, 963, 966, 967, 961, 966, 967, 0, 968, + 969, 962, 968, 969, 970, 0, 971, 970, 966, 971, + 969, 972, 0, 0, 972, 963, 964, 0, 0, 970, + + 965, 968, 974, 0, 0, 974, 966, 967, 973, 0, + 0, 973, 968, 969, 0, 0, 0, 970, 975, 971, + 1016, 975, 1016, 1016, 972, 1017, 1114, 1017, 1017, 1114, + 0, 1018, 971, 1018, 1018, 974, 0, 1019, 972, 1019, + 1019, 973, 0, 1020, 973, 1020, 1020, 1019, 974, 0, + 0, 975, 1021, 1016, 1021, 1021, 0, 1036, 1017, 1022, + 1036, 1022, 1022, 0, 1018, 1023, 0, 1023, 1023, 1024, + 1019, 1024, 1024, 0, 0, 1114, 1020, 1021, 1022, 1025, + 1121, 1025, 1025, 1121, 0, 1021, 1026, 1023, 1026, 1026, + 1036, 1024, 1022, 1027, 0, 1027, 1027, 1028, 1023, 1028, + + 1028, 1037, 1024, 1029, 1037, 1029, 1029, 1028, 1030, 0, + 1030, 1030, 1025, 1031, 1038, 1031, 1031, 1038, 1033, 1026, + 1033, 1033, 0, 1031, 0, 1032, 1027, 1032, 1032, 1121, + 1028, 0, 1029, 1032, 1037, 1034, 1029, 1034, 1034, 0, + 1035, 1030, 1035, 1035, 0, 1039, 1031, 1038, 1039, 1040, + 1041, 1033, 1040, 1041, 1033, 1039, 0, 0, 1032, 1043, + 1042, 0, 1043, 1042, 1044, 0, 1045, 1044, 1034, 1045, + 0, 1046, 0, 1035, 1046, 1041, 1035, 1047, 1039, 1042, + 1047, 1043, 1040, 1041, 1034, 1048, 1044, 1049, 1048, 0, + 1049, 1050, 1043, 1042, 1050, 1048, 0, 1044, 1051, 1045, + + 0, 1051, 1053, 1052, 1046, 1053, 1052, 0, 1051, 1054, + 1047, 1052, 1054, 0, 1055, 0, 1049, 1055, 1048, 1081, + 1049, 1081, 1081, 1082, 1050, 1082, 1082, 1083, 0, 1083, + 1083, 1051, 0, 0, 0, 1053, 1052, 1086, 1053, 1086, + 1086, 1084, 1054, 1084, 1084, 1082, 0, 1055, 0, 1083, + 1055, 1084, 1081, 0, 0, 0, 1082, 0, 1054, 0, + 1083, 1085, 0, 1085, 1085, 1087, 0, 1087, 1087, 1088, + 1086, 1088, 1088, 0, 1084, 1087, 1085, 1089, 0, 1089, + 1089, 1090, 0, 1090, 1090, 1091, 0, 1091, 1091, 1092, + 0, 1092, 1092, 1093, 1085, 1093, 1093, 0, 1087, 0, + + 1094, 0, 1088, 1094, 1098, 0, 1095, 1098, 1099, 1095, + 1089, 1099, 1089, 1096, 1090, 0, 1096, 1097, 1091, 1098, + 1097, 1100, 1092, 0, 1100, 0, 1093, 1097, 1095, 1101, + 1090, 1100, 1101, 1094, 1091, 1096, 0, 1098, 1092, 1095, + 1102, 1099, 1093, 1102, 1103, 1104, 1096, 1103, 1104, 1105, + 1097, 0, 1105, 1106, 1100, 1124, 1106, 1126, 1124, 1126, + 1126, 0, 1101, 0, 0, 0, 1127, 1126, 1127, 1127, + 0, 0, 0, 1102, 0, 1102, 0, 1103, 1104, 0, + 0, 1127, 1105, 0, 0, 1128, 1106, 1128, 1128, 1130, + 1126, 1130, 1130, 1103, 1104, 0, 0, 1139, 1105, 1127, + + 1139, 0, 1106, 1129, 1124, 1129, 1129, 1131, 0, 1131, + 1131, 0, 1132, 1129, 1132, 1132, 0, 1133, 1128, 1133, + 1133, 1134, 1130, 1134, 1134, 1135, 0, 1135, 1135, 1136, + 1139, 1136, 1136, 0, 1137, 0, 1129, 1137, 1138, 1140, + 1131, 1138, 1140, 1131, 1137, 1132, 0, 0, 1141, 1140, + 1133, 1141, 1142, 1138, 1134, 1142, 1143, 1144, 1135, 1143, + 1144, 1132, 1136, 0, 0, 1145, 1133, 1137, 1145, 0, + 1146, 1138, 1140, 1146, 1135, 0, 1147, 0, 1136, 1147, + 1158, 1141, 1158, 1158, 1159, 1142, 1159, 1159, 1142, 1143, + 1144, 0, 0, 1160, 1159, 1160, 1160, 1161, 1145, 1161, + + 1161, 1164, 0, 1146, 1164, 1143, 1144, 0, 1162, 1147, + 1162, 1162, 1163, 1158, 1163, 1163, 0, 1159, 1165, 1146, + 1166, 1165, 0, 1166, 1167, 1147, 1160, 1167, 1165, 1168, + 1161, 0, 1168, 1169, 1164, 1174, 1169, 1174, 1174, 1176, + 1161, 1162, 1176, 0, 1175, 1163, 1175, 1175, 0, 1177, + 0, 1165, 1177, 1166, 0, 0, 1189, 1167, 1180, 1189, + 1180, 1180, 1168, 0, 0, 0, 1169, 1167, 1174, 0, + 1181, 0, 1176, 1181, 0, 0, 0, 1175, 1184, 0, + 1184, 1184, 1177, 1185, 0, 0, 1185, 0, 1184, 1189, + 1175, 1180, 0, 1185, 0, 1177, 1188, 1180, 1188, 1188, + + 0, 0, 0, 1181, 0, 0, 0, 0, 0, 1181, + 0, 1184, 0, 0, 0, 0, 1185, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1188, + 1191, 1191, 1191, 1191, 1191, 1191, 1192, 1192, 1192, 1192, + 1192, 1192, 1193, 1193, 1193, 1193, 1193, 1193, 1194, 1194, + 1194, 1194, 1194, 1194, 1195, 1195, 1195, 1195, 1195, 1195, + 1196, 1196, 0, 1196, 1196, 1196, 1197, 1197, 1197, 1197, + 1197, 1197, 1198, 0, 0, 0, 1198, 1198, 1199, 1199, + 1199, 1199, 1199, 1199, 1200, 1200, 0, 0, 1200, 1200, + 1201, 1201, 1201, 1201, 1201, 1201, 1202, 1202, 0, 1202, + + 1202, 1202, 1203, 1203, 0, 1203, 1203, 1203, 1204, 1204, + 0, 0, 0, 1204, 1205, 1205, 0, 1205, 1205, 1205, + 1207, 1207, 0, 0, 0, 1207, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190 } ; /* Table of booleans, true if rule could match eol. */ -static yyconst flex_int32_t yy_rule_can_match_eol[85] = +static yyconst flex_int32_t yy_rule_can_match_eol[86] = { 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1, 0, 0, 0, }; + 0, 0, 1, 0, 0, 0, }; static yy_state_type yy_last_accepting_state; static char *yy_last_accepting_cpos; @@ -1855,7 +1861,7 @@ static void cattext(bool trim_right = false, int strip_trailing = 0) -#line 1859 "levcomp.lex.cc" +#line 1865 "levcomp.lex.cc" #define INITIAL 0 #define MAPDEF 1 @@ -1901,7 +1907,7 @@ FILE *yyget_out (void ); void yyset_out (FILE * out_str ); -int yyget_leng (void ); +yy_size_t yyget_leng (void ); char *yyget_text (void ); @@ -1943,12 +1949,7 @@ static int input (void ); /* Amount of stuff to slurp up with each read. */ #ifndef YY_READ_BUF_SIZE -#ifdef __ia64__ -/* On IA-64, the buffer size is 16k, not 8k */ -#define YY_READ_BUF_SIZE 16384 -#else #define YY_READ_BUF_SIZE 8192 -#endif /* __ia64__ */ #endif /* Copy whatever the last rule matched to the standard output. */ @@ -1956,7 +1957,7 @@ static int input (void ); /* This used to be an fputs(), but since the string might contain NUL's, * we now use fwrite(). */ -#define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0) +#define ECHO fwrite( yytext, yyleng, 1, yyout ) #endif /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, @@ -1967,7 +1968,7 @@ static int input (void ); if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ { \ int c = '*'; \ - size_t n; \ + yy_size_t n; \ for ( n = 0; n < max_size && \ (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ buf[n] = (char) c; \ @@ -2055,7 +2056,7 @@ YY_DECL #line 133 "levcomp.lpp" -#line 2059 "levcomp.lex.cc" +#line 2060 "levcomp.lex.cc" if ( !(yy_init) ) { @@ -2109,13 +2110,13 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1180 ) + if ( yy_current_state >= 1191 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; ++yy_cp; } - while ( yy_current_state != 1179 ); + while ( yy_current_state != 1190 ); yy_cp = (yy_last_accepting_cpos); yy_current_state = (yy_last_accepting_state); @@ -2427,37 +2428,37 @@ YY_RULE_SETUP case 45: YY_RULE_SETUP #line 235 "levcomp.lpp" -{ CBEGIN(ARGUMENT); return DEPTH; } +{ CBEGIN(ARGUMENT); return DESC; } YY_BREAK case 46: YY_RULE_SETUP #line 236 "levcomp.lpp" -{ CBEGIN(ARGUMENT); return ORIENT; } +{ CBEGIN(ARGUMENT); return DEPTH; } YY_BREAK case 47: YY_RULE_SETUP #line 237 "levcomp.lpp" -{ CBEGIN(ARGUMENT); return PLACE; } +{ CBEGIN(ARGUMENT); return ORIENT; } YY_BREAK case 48: YY_RULE_SETUP #line 238 "levcomp.lpp" -{ CBEGIN(ARGUMENT); return WELCOME; } +{ CBEGIN(ARGUMENT); return PLACE; } YY_BREAK case 49: YY_RULE_SETUP #line 239 "levcomp.lpp" -return CHANCE; +{ CBEGIN(ARGUMENT); return WELCOME; } YY_BREAK case 50: YY_RULE_SETUP #line 240 "levcomp.lpp" -return WEIGHT; +return CHANCE; YY_BREAK case 51: YY_RULE_SETUP #line 241 "levcomp.lpp" -{ CBEGIN(KEYWORDS); return TAGS; } +return WEIGHT; YY_BREAK case 52: YY_RULE_SETUP @@ -2467,154 +2468,154 @@ YY_RULE_SETUP case 53: YY_RULE_SETUP #line 243 "levcomp.lpp" -{ CBEGIN(ARGUMENT); return LFLAGS; } +{ CBEGIN(KEYWORDS); return TAGS; } YY_BREAK case 54: YY_RULE_SETUP #line 244 "levcomp.lpp" -{ CBEGIN(ARGUMENT); return BFLAGS; } +{ CBEGIN(ARGUMENT); return LFLAGS; } YY_BREAK case 55: YY_RULE_SETUP #line 245 "levcomp.lpp" -{ CBEGIN(ITEM_LIST); return SUBST; } +{ CBEGIN(ARGUMENT); return BFLAGS; } YY_BREAK case 56: YY_RULE_SETUP #line 246 "levcomp.lpp" -{ CBEGIN(ITEM_LIST); return NSUBST; } +{ CBEGIN(ITEM_LIST); return SUBST; } YY_BREAK case 57: YY_RULE_SETUP #line 247 "levcomp.lpp" -{ CBEGIN(ITEM_LIST); return COLOUR; } +{ CBEGIN(ITEM_LIST); return NSUBST; } YY_BREAK case 58: YY_RULE_SETUP #line 248 "levcomp.lpp" -{ CBEGIN(ARGUMENT); return LFLOORCOL; } +{ CBEGIN(ITEM_LIST); return COLOUR; } YY_BREAK case 59: YY_RULE_SETUP #line 249 "levcomp.lpp" -{ CBEGIN(ARGUMENT); return LROCKCOL; } +{ CBEGIN(ARGUMENT); return LFLOORCOL; } YY_BREAK case 60: YY_RULE_SETUP #line 250 "levcomp.lpp" -{ CBEGIN(ARGUMENT); return LFLOORTILE; } +{ CBEGIN(ARGUMENT); return LROCKCOL; } YY_BREAK case 61: YY_RULE_SETUP #line 251 "levcomp.lpp" -{ CBEGIN(ARGUMENT); return LROCKTILE; } +{ CBEGIN(ARGUMENT); return LFLOORTILE; } YY_BREAK case 62: YY_RULE_SETUP #line 252 "levcomp.lpp" -{ CBEGIN(ITEM_LIST); return FTILE; } +{ CBEGIN(ARGUMENT); return LROCKTILE; } YY_BREAK case 63: YY_RULE_SETUP #line 253 "levcomp.lpp" -{ CBEGIN(ITEM_LIST); return RTILE; } +{ CBEGIN(ITEM_LIST); return FTILE; } YY_BREAK case 64: YY_RULE_SETUP #line 254 "levcomp.lpp" -{ CBEGIN(ITEM_LIST); return TILE; } +{ CBEGIN(ITEM_LIST); return RTILE; } YY_BREAK case 65: YY_RULE_SETUP #line 255 "levcomp.lpp" -{ CBEGIN(ITEM_LIST); return FHEIGHT; } +{ CBEGIN(ITEM_LIST); return TILE; } YY_BREAK case 66: YY_RULE_SETUP #line 256 "levcomp.lpp" -{ CBEGIN(MNAME); return MONS; } +{ CBEGIN(ITEM_LIST); return FHEIGHT; } YY_BREAK case 67: YY_RULE_SETUP #line 257 "levcomp.lpp" -{ CBEGIN(ITEM_LIST); return ITEM; } +{ CBEGIN(MNAME); return MONS; } YY_BREAK case 68: YY_RULE_SETUP #line 258 "levcomp.lpp" -{ CBEGIN(ARGUMENT); return MARKER; } +{ CBEGIN(ITEM_LIST); return ITEM; } YY_BREAK case 69: YY_RULE_SETUP #line 259 "levcomp.lpp" -{ CBEGIN(ITEM_LIST); return SHUFFLE; } +{ CBEGIN(ARGUMENT); return MARKER; } YY_BREAK case 70: YY_RULE_SETUP -#line 261 "levcomp.lpp" -{ CBEGIN(ARGUMENT); return KFEAT; } +#line 260 "levcomp.lpp" +{ CBEGIN(ITEM_LIST); return SHUFFLE; } YY_BREAK case 71: YY_RULE_SETUP #line 262 "levcomp.lpp" -{ CBEGIN(ARGUMENT); return KITEM; } +{ CBEGIN(ARGUMENT); return KFEAT; } YY_BREAK case 72: YY_RULE_SETUP #line 263 "levcomp.lpp" -{ CBEGIN(ARGUMENT); return KMONS; } +{ CBEGIN(ARGUMENT); return KITEM; } YY_BREAK case 73: YY_RULE_SETUP #line 264 "levcomp.lpp" -{ CBEGIN(ARGUMENT); return KMASK; } +{ CBEGIN(ARGUMENT); return KMONS; } YY_BREAK case 74: YY_RULE_SETUP #line 265 "levcomp.lpp" -{ CBEGIN(ARGUMENT); return KPROP; } +{ CBEGIN(ARGUMENT); return KMASK; } YY_BREAK case 75: YY_RULE_SETUP #line 266 "levcomp.lpp" -{ CBEGIN(ARGUMENT); return SUBVAULT; } +{ CBEGIN(ARGUMENT); return KPROP; } YY_BREAK case 76: YY_RULE_SETUP -#line 268 "levcomp.lpp" -return COMMA; +#line 267 "levcomp.lpp" +{ CBEGIN(ARGUMENT); return SUBVAULT; } YY_BREAK case 77: YY_RULE_SETUP -#line 270 "levcomp.lpp" -return COLON; +#line 269 "levcomp.lpp" +return COMMA; YY_BREAK case 78: YY_RULE_SETUP -#line 272 "levcomp.lpp" -return PERC; +#line 271 "levcomp.lpp" +return COLON; YY_BREAK case 79: YY_RULE_SETUP -#line 274 "levcomp.lpp" +#line 273 "levcomp.lpp" +return PERC; + YY_BREAK +case 80: +YY_RULE_SETUP +#line 275 "levcomp.lpp" { clean(); yylval.i = atoi(yytext); return INTEGER; } YY_BREAK -case 80: -YY_RULE_SETUP -#line 280 "levcomp.lpp" -; - YY_BREAK case 81: -/* rule 81 can match eol */ YY_RULE_SETUP #line 281 "levcomp.lpp" ; YY_BREAK case 82: +/* rule 82 can match eol */ YY_RULE_SETUP #line 282 "levcomp.lpp" ; @@ -2622,14 +2623,19 @@ YY_RULE_SETUP case 83: YY_RULE_SETUP #line 283 "levcomp.lpp" -return CHARACTER; +; YY_BREAK case 84: YY_RULE_SETUP -#line 285 "levcomp.lpp" +#line 284 "levcomp.lpp" +return CHARACTER; + YY_BREAK +case 85: +YY_RULE_SETUP +#line 286 "levcomp.lpp" ECHO; YY_BREAK -#line 2633 "levcomp.lex.cc" +#line 2639 "levcomp.lex.cc" case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(MAPDEF): case YY_STATE_EOF(LUA): @@ -2823,7 +2829,7 @@ static int yy_get_next_buffer (void) else { - int num_to_read = + yy_size_t num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; while ( num_to_read <= 0 ) @@ -2837,7 +2843,7 @@ static int yy_get_next_buffer (void) if ( b->yy_is_our_buffer ) { - int new_size = b->yy_buf_size * 2; + yy_size_t new_size = b->yy_buf_size * 2; if ( new_size <= 0 ) b->yy_buf_size += b->yy_buf_size / 8; @@ -2868,7 +2874,7 @@ static int yy_get_next_buffer (void) /* Read in more data. */ YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), - (yy_n_chars), (size_t) num_to_read ); + (yy_n_chars), num_to_read ); YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); } @@ -2930,7 +2936,7 @@ static int yy_get_next_buffer (void) while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1180 ) + if ( yy_current_state >= 1191 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2958,11 +2964,11 @@ static int yy_get_next_buffer (void) while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1180 ) + if ( yy_current_state >= 1191 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 1179); + yy_is_jam = (yy_current_state == 1190); return yy_is_jam ? 0 : yy_current_state; } @@ -2979,7 +2985,7 @@ static int yy_get_next_buffer (void) if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) { /* need to shift things up to make room */ /* +2 for EOB chars. */ - register int number_to_move = (yy_n_chars) + 2; + register yy_size_t number_to_move = (yy_n_chars) + 2; register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; register char *source = @@ -3032,7 +3038,7 @@ static int yy_get_next_buffer (void) else { /* need more input */ - int offset = (yy_c_buf_p) - (yytext_ptr); + yy_size_t offset = (yy_c_buf_p) - (yytext_ptr); ++(yy_c_buf_p); switch ( yy_get_next_buffer( ) ) @@ -3056,7 +3062,7 @@ static int yy_get_next_buffer (void) case EOB_ACT_END_OF_FILE: { if ( yywrap( ) ) - return EOF; + return 0; if ( ! (yy_did_buffer_switch_on_eof) ) YY_NEW_FILE; @@ -3310,7 +3316,7 @@ void yypop_buffer_state (void) */ static void yyensure_buffer_stack (void) { - int num_to_alloc; + yy_size_t num_to_alloc; if (!(yy_buffer_stack)) { @@ -3402,17 +3408,16 @@ YY_BUFFER_STATE yy_scan_string (yyconst char * yystr ) /** Setup the input buffer state to scan the given bytes. The next call to yylex() will * scan from a @e copy of @a bytes. - * @param yybytes the byte buffer to scan - * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes. + * @param bytes the byte buffer to scan + * @param len the number of bytes in the buffer pointed to by @a bytes. * * @return the newly allocated buffer state object. */ -YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, int _yybytes_len ) +YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len ) { YY_BUFFER_STATE b; char *buf; - yy_size_t n; - int i; + yy_size_t n, i; /* Get memory for full buffer, including space for trailing EOB's. */ n = _yybytes_len + 2; @@ -3494,7 +3499,7 @@ FILE *yyget_out (void) /** Get the length of the current token. * */ -int yyget_leng (void) +yy_size_t yyget_leng (void) { return yyleng; } @@ -3645,7 +3650,7 @@ void yyfree (void * ptr ) #define YYTABLES_NAME "yytables" -#line 285 "levcomp.lpp" +#line 286 "levcomp.lpp" diff --git a/crawl-ref/source/prebuilt/levcomp.tab.cc b/crawl-ref/source/prebuilt/levcomp.tab.cc index c868a14615..9daa0f19e2 100644 --- a/crawl-ref/source/prebuilt/levcomp.tab.cc +++ b/crawl-ref/source/prebuilt/levcomp.tab.cc @@ -177,16 +177,17 @@ level_range set_range(const char *s, int start, int end) TILE = 292, SUBVAULT = 293, FHEIGHT = 294, - COMMA = 295, - COLON = 296, - PERC = 297, - INTEGER = 298, - CHARACTER = 299, - STRING = 300, - MAP_LINE = 301, - MONSTER_NAME = 302, - ITEM_INFO = 303, - LUA_LINE = 304 + DESC = 295, + COMMA = 296, + COLON = 297, + PERC = 298, + INTEGER = 299, + CHARACTER = 300, + STRING = 301, + MAP_LINE = 302, + MONSTER_NAME = 303, + ITEM_INFO = 304, + LUA_LINE = 305 }; #endif /* Tokens. */ @@ -227,16 +228,17 @@ level_range set_range(const char *s, int start, int end) #define TILE 292 #define SUBVAULT 293 #define FHEIGHT 294 -#define COMMA 295 -#define COLON 296 -#define PERC 297 -#define INTEGER 298 -#define CHARACTER 299 -#define STRING 300 -#define MAP_LINE 301 -#define MONSTER_NAME 302 -#define ITEM_INFO 303 -#define LUA_LINE 304 +#define DESC 295 +#define COMMA 296 +#define COLON 297 +#define PERC 298 +#define INTEGER 299 +#define CHARACTER 300 +#define STRING 301 +#define MAP_LINE 302 +#define MONSTER_NAME 303 +#define ITEM_INFO 304 +#define LUA_LINE 305 @@ -255,7 +257,7 @@ typedef union YYSTYPE /* Line 214 of yacc.c */ -#line 259 "levcomp.tab.c" +#line 261 "levcomp.tab.c" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ @@ -267,7 +269,7 @@ typedef union YYSTYPE /* Line 264 of yacc.c */ -#line 271 "levcomp.tab.c" +#line 273 "levcomp.tab.c" #ifdef short # undef short @@ -482,20 +484,20 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 3 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 113 +#define YYLAST 115 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 50 +#define YYNTOKENS 51 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 87 +#define YYNNTS 88 /* YYNRULES -- Number of rules. */ -#define YYNRULES 162 +#define YYNRULES 164 /* YYNRULES -- Number of states. */ -#define YYNSTATES 193 +#define YYNSTATES 196 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 304 +#define YYMAXUTOK 305 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -533,7 +535,7 @@ static const yytype_uint8 yytranslate[] = 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49 + 45, 46, 47, 48, 49, 50 }; #if YYDEBUG @@ -546,63 +548,64 @@ static const yytype_uint16 yyprhs[] = 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, - 102, 104, 106, 108, 111, 112, 115, 117, 120, 121, - 124, 126, 129, 130, 133, 135, 138, 139, 142, 144, - 147, 148, 151, 153, 156, 157, 160, 162, 164, 167, - 169, 172, 174, 177, 179, 182, 184, 187, 190, 192, - 196, 198, 201, 202, 205, 207, 210, 213, 216, 219, - 221, 224, 226, 229, 231, 234, 236, 239, 242, 244, - 248, 250, 253, 255, 259, 261, 264, 266, 270, 272, - 275, 277, 281, 283, 285, 289, 291, 294, 296, 300, - 302, 305, 307, 311, 313, 315, 318, 322, 324, 326, - 328, 331, 335, 337, 339, 342, 344, 347, 353, 358, - 362, 365, 368, 370, 373, 376, 378, 381, 383, 385, - 388, 390, 394 + 102, 104, 106, 108, 110, 113, 114, 117, 119, 122, + 123, 126, 128, 131, 132, 135, 137, 140, 141, 144, + 146, 149, 150, 153, 155, 158, 159, 162, 164, 166, + 169, 171, 174, 176, 179, 181, 184, 186, 189, 192, + 194, 198, 200, 203, 204, 207, 209, 212, 215, 218, + 221, 223, 226, 228, 231, 233, 236, 238, 241, 244, + 246, 250, 252, 255, 257, 261, 263, 266, 268, 272, + 274, 277, 279, 283, 285, 287, 291, 293, 296, 298, + 302, 304, 307, 309, 313, 315, 317, 320, 324, 326, + 328, 330, 333, 337, 339, 341, 344, 347, 349, 352, + 358, 363, 367, 370, 373, 375, 378, 381, 383, 386, + 388, 390, 393, 395, 399 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int16 yyrhs[] = { - 51, 0, -1, 52, -1, -1, 52, 53, -1, 55, - -1, 57, -1, 44, -1, 56, -1, 62, -1, 3, - 45, -1, 60, 58, -1, -1, 58, 59, -1, 61, - -1, 131, -1, 12, 45, -1, 125, -1, 126, -1, - 127, -1, 128, -1, 129, -1, 130, -1, 122, -1, - 119, -1, 93, -1, 116, -1, 113, -1, 94, -1, - 95, -1, 96, -1, 97, -1, 98, -1, 102, -1, - 105, -1, 108, -1, 85, -1, 88, -1, 91, -1, - 92, -1, 80, -1, 82, -1, 81, -1, 83, -1, - 84, -1, 99, -1, 134, -1, 65, -1, 74, -1, - 68, -1, 71, -1, 77, -1, 54, -1, 23, 63, - -1, -1, 63, 64, -1, 49, -1, 23, 66, -1, - -1, 66, 67, -1, 49, -1, 24, 69, -1, -1, - 69, 70, -1, 49, -1, 25, 72, -1, -1, 72, - 73, -1, 49, -1, 22, 75, -1, -1, 75, 76, - -1, 49, -1, 26, 78, -1, -1, 78, 79, -1, - 49, -1, 7, -1, 7, 45, -1, 9, -1, 9, - 45, -1, 8, -1, 8, 45, -1, 10, -1, 10, - 45, -1, 11, -1, 11, 45, -1, 4, 86, -1, - 87, -1, 86, 40, 87, -1, 48, -1, 6, 89, - -1, -1, 89, 90, -1, 45, -1, 29, 45, -1, - 30, 45, -1, 20, 45, -1, 21, 111, -1, 31, - -1, 31, 45, -1, 32, -1, 32, 45, -1, 33, - -1, 33, 45, -1, 34, -1, 34, 45, -1, 39, - 100, -1, 101, -1, 100, 40, 101, -1, 48, -1, - 35, 103, -1, 104, -1, 103, 40, 104, -1, 48, - -1, 36, 106, -1, 107, -1, 106, 40, 107, -1, - 48, -1, 37, 109, -1, 110, -1, 109, 40, 110, - -1, 48, -1, 112, -1, 111, 40, 112, -1, 48, - -1, 27, 114, -1, 115, -1, 114, 40, 115, -1, - 48, -1, 5, 117, -1, 118, -1, 118, 40, 117, - -1, 48, -1, 19, -1, 19, 120, -1, 120, 40, - 121, -1, 121, -1, 48, -1, 18, -1, 18, 123, - -1, 124, 40, 123, -1, 124, -1, 47, -1, 15, - 45, -1, 13, -1, 13, 45, -1, 16, 43, 41, - 43, 42, -1, 16, 43, 41, 43, -1, 16, 43, - 42, -1, 16, 43, -1, 17, 43, -1, 14, -1, - 14, 45, -1, 28, 45, -1, 132, -1, 132, 133, - -1, 133, -1, 46, -1, 38, 135, -1, 136, -1, - 135, 40, 136, -1, 45, -1 + 52, 0, -1, 53, -1, -1, 53, 54, -1, 56, + -1, 58, -1, 45, -1, 57, -1, 63, -1, 3, + 46, -1, 61, 59, -1, -1, 59, 60, -1, 62, + -1, 133, -1, 12, 46, -1, 126, -1, 127, -1, + 128, -1, 129, -1, 130, -1, 131, -1, 132, -1, + 123, -1, 120, -1, 94, -1, 117, -1, 114, -1, + 95, -1, 96, -1, 97, -1, 98, -1, 99, -1, + 103, -1, 106, -1, 109, -1, 86, -1, 89, -1, + 92, -1, 93, -1, 81, -1, 83, -1, 82, -1, + 84, -1, 85, -1, 100, -1, 136, -1, 66, -1, + 75, -1, 69, -1, 72, -1, 78, -1, 55, -1, + 23, 64, -1, -1, 64, 65, -1, 50, -1, 23, + 67, -1, -1, 67, 68, -1, 50, -1, 24, 70, + -1, -1, 70, 71, -1, 50, -1, 25, 73, -1, + -1, 73, 74, -1, 50, -1, 22, 76, -1, -1, + 76, 77, -1, 50, -1, 26, 79, -1, -1, 79, + 80, -1, 50, -1, 7, -1, 7, 46, -1, 9, + -1, 9, 46, -1, 8, -1, 8, 46, -1, 10, + -1, 10, 46, -1, 11, -1, 11, 46, -1, 4, + 87, -1, 88, -1, 87, 41, 88, -1, 49, -1, + 6, 90, -1, -1, 90, 91, -1, 46, -1, 29, + 46, -1, 30, 46, -1, 20, 46, -1, 21, 112, + -1, 31, -1, 31, 46, -1, 32, -1, 32, 46, + -1, 33, -1, 33, 46, -1, 34, -1, 34, 46, + -1, 39, 101, -1, 102, -1, 101, 41, 102, -1, + 49, -1, 35, 104, -1, 105, -1, 104, 41, 105, + -1, 49, -1, 36, 107, -1, 108, -1, 107, 41, + 108, -1, 49, -1, 37, 110, -1, 111, -1, 110, + 41, 111, -1, 49, -1, 113, -1, 112, 41, 113, + -1, 49, -1, 27, 115, -1, 116, -1, 115, 41, + 116, -1, 49, -1, 5, 118, -1, 119, -1, 119, + 41, 118, -1, 49, -1, 19, -1, 19, 121, -1, + 121, 41, 122, -1, 122, -1, 49, -1, 18, -1, + 18, 124, -1, 125, 41, 124, -1, 125, -1, 48, + -1, 15, 46, -1, 40, 46, -1, 13, -1, 13, + 46, -1, 16, 44, 42, 44, 43, -1, 16, 44, + 42, 44, -1, 16, 44, 43, -1, 16, 44, -1, + 17, 44, -1, 14, -1, 14, 46, -1, 28, 46, + -1, 134, -1, 134, 135, -1, 135, -1, 47, -1, + 38, 137, -1, 138, -1, 137, 41, 138, -1, 46, + -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -613,18 +616,18 @@ static const yytype_uint16 yyrline[] = 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, - 183, 184, 185, 188, 190, 191, 194, 199, 201, 202, - 205, 210, 212, 213, 216, 221, 223, 224, 227, 232, - 234, 235, 238, 243, 245, 246, 249, 254, 255, 263, - 264, 272, 273, 281, 282, 290, 291, 299, 302, 303, - 306, 314, 317, 318, 321, 330, 339, 348, 381, 384, - 385, 393, 394, 402, 403, 412, 413, 422, 424, 425, - 428, 437, 440, 441, 444, 453, 456, 457, 460, 469, - 472, 473, 476, 486, 487, 490, 499, 502, 503, 506, - 515, 518, 519, 522, 531, 532, 535, 536, 539, 547, - 548, 551, 552, 555, 564, 573, 574, 583, 590, 597, - 604, 612, 620, 621, 630, 639, 642, 643, 646, 655, - 658, 659, 662 + 183, 184, 185, 186, 189, 191, 192, 195, 200, 202, + 203, 206, 211, 213, 214, 217, 222, 224, 225, 228, + 233, 235, 236, 239, 244, 246, 247, 250, 255, 256, + 264, 265, 273, 274, 282, 283, 291, 292, 300, 303, + 304, 307, 315, 318, 319, 322, 331, 340, 349, 382, + 385, 386, 394, 395, 403, 404, 413, 414, 423, 425, + 426, 429, 438, 441, 442, 445, 454, 457, 458, 461, + 470, 473, 474, 477, 487, 488, 491, 500, 503, 504, + 507, 516, 519, 520, 523, 532, 533, 536, 537, 540, + 548, 549, 552, 553, 556, 565, 574, 583, 584, 593, + 600, 607, 614, 622, 630, 631, 640, 649, 652, 653, + 656, 665, 668, 669, 672 }; #endif @@ -638,8 +641,8 @@ static const char *const yytname[] = "ORIENT", "PLACE", "CHANCE", "WEIGHT", "MONS", "ITEM", "MARKER", "COLOUR", "PRELUDE", "MAIN", "VALIDATE", "VETO", "EPILOGUE", "NSUBST", "WELCOME", "LFLAGS", "BFLAGS", "LFLOORCOL", "LROCKCOL", "LFLOORTILE", - "LROCKTILE", "FTILE", "RTILE", "TILE", "SUBVAULT", "FHEIGHT", "COMMA", - "COLON", "PERC", "INTEGER", "CHARACTER", "STRING", "MAP_LINE", + "LROCKTILE", "FTILE", "RTILE", "TILE", "SUBVAULT", "FHEIGHT", "DESC", + "COMMA", "COLON", "PERC", "INTEGER", "CHARACTER", "STRING", "MAP_LINE", "MONSTER_NAME", "ITEM_INFO", "LUA_LINE", "$accept", "file", "definitions", "definition", "error_seq", "def", "defdepth", "level", "map_specs", "map_spec", "name", "metaline", "global_lua", @@ -656,9 +659,9 @@ static const char *const yytname[] = "tile", "tile_specifiers", "tile_specifier", "colour_specifiers", "colour_specifier", "nsubst", "nsubst_specifiers", "nsubst_spec", "subst", "subst_specifiers", "subst_spec", "items", "item_specifiers", - "item_specifier", "mons", "mnames", "mname", "place", "depth", "chance", - "weight", "orientation", "welcome", "map_def", "map_lines", "map_line", - "subvault", "subvault_specifiers", "subvault_specifier", 0 + "item_specifier", "mons", "mnames", "mname", "place", "desc", "depth", + "chance", "weight", "orientation", "welcome", "map_def", "map_lines", + "map_line", "subvault", "subvault_specifiers", "subvault_specifier", 0 }; #endif @@ -671,30 +674,31 @@ static const yytype_uint16 yytoknum[] = 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 296, 297, 298, 299, 300, 301, 302, 303, 304 + 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, + 305 }; # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint8 yyr1[] = { - 0, 50, 51, 52, 52, 53, 53, 54, 55, 55, - 56, 57, 58, 58, 59, 59, 60, 61, 61, 61, - 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, - 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, - 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, - 61, 61, 61, 62, 63, 63, 64, 65, 66, 66, - 67, 68, 69, 69, 70, 71, 72, 72, 73, 74, - 75, 75, 76, 77, 78, 78, 79, 80, 80, 81, - 81, 82, 82, 83, 83, 84, 84, 85, 86, 86, - 87, 88, 89, 89, 90, 91, 92, 93, 94, 95, - 95, 96, 96, 97, 97, 98, 98, 99, 100, 100, - 101, 102, 103, 103, 104, 105, 106, 106, 107, 108, - 109, 109, 110, 111, 111, 112, 113, 114, 114, 115, - 116, 117, 117, 118, 119, 119, 120, 120, 121, 122, - 122, 123, 123, 124, 125, 126, 126, 127, 127, 127, - 127, 128, 129, 129, 130, 131, 132, 132, 133, 134, - 135, 135, 136 + 0, 51, 52, 53, 53, 54, 54, 55, 56, 56, + 57, 58, 59, 59, 60, 60, 61, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 63, 64, 64, 65, 66, 67, + 67, 68, 69, 70, 70, 71, 72, 73, 73, 74, + 75, 76, 76, 77, 78, 79, 79, 80, 81, 81, + 82, 82, 83, 83, 84, 84, 85, 85, 86, 87, + 87, 88, 89, 90, 90, 91, 92, 93, 94, 95, + 96, 96, 97, 97, 98, 98, 99, 99, 100, 101, + 101, 102, 103, 104, 104, 105, 106, 107, 107, 108, + 109, 110, 110, 111, 112, 112, 113, 114, 115, 115, + 116, 117, 118, 118, 119, 120, 120, 121, 121, 122, + 123, 123, 124, 124, 125, 126, 127, 128, 128, 129, + 129, 129, 129, 130, 131, 131, 132, 133, 134, 134, + 135, 136, 137, 137, 138 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -705,18 +709,18 @@ static const yytype_uint8 yyr2[] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 2, 0, 2, 1, 2, 0, 2, - 1, 2, 0, 2, 1, 2, 0, 2, 1, 2, - 0, 2, 1, 2, 0, 2, 1, 1, 2, 1, - 2, 1, 2, 1, 2, 1, 2, 2, 1, 3, - 1, 2, 0, 2, 1, 2, 2, 2, 2, 1, - 2, 1, 2, 1, 2, 1, 2, 2, 1, 3, - 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, - 1, 3, 1, 1, 3, 1, 2, 1, 3, 1, - 2, 1, 3, 1, 1, 2, 3, 1, 1, 1, - 2, 3, 1, 1, 2, 1, 2, 5, 4, 3, - 2, 2, 1, 2, 2, 1, 2, 1, 1, 2, - 1, 3, 1 + 1, 1, 1, 1, 2, 0, 2, 1, 2, 0, + 2, 1, 2, 0, 2, 1, 2, 0, 2, 1, + 2, 0, 2, 1, 2, 0, 2, 1, 1, 2, + 1, 2, 1, 2, 1, 2, 1, 2, 2, 1, + 3, 1, 2, 0, 2, 1, 2, 2, 2, 2, + 1, 2, 1, 2, 1, 2, 1, 2, 2, 1, + 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, + 2, 1, 3, 1, 1, 3, 1, 2, 1, 3, + 1, 2, 1, 3, 1, 1, 2, 3, 1, 1, + 1, 2, 3, 1, 1, 2, 2, 1, 2, 5, + 4, 3, 2, 2, 1, 2, 2, 1, 2, 1, + 1, 2, 1, 3, 1 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -724,81 +728,81 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint8 yydefact[] = { - 3, 0, 2, 1, 0, 0, 54, 4, 5, 8, - 6, 12, 9, 10, 16, 53, 11, 56, 55, 0, - 0, 92, 77, 81, 79, 83, 85, 145, 152, 0, - 0, 0, 139, 134, 0, 0, 70, 58, 62, 66, - 74, 0, 0, 0, 0, 99, 101, 103, 105, 0, - 0, 0, 0, 0, 7, 158, 52, 13, 14, 47, - 49, 50, 48, 51, 40, 42, 41, 43, 44, 36, - 37, 38, 39, 25, 28, 29, 30, 31, 32, 45, - 33, 34, 35, 27, 26, 24, 23, 17, 18, 19, - 20, 21, 22, 15, 155, 157, 46, 90, 87, 88, - 133, 130, 131, 91, 78, 82, 80, 84, 86, 146, - 153, 144, 150, 151, 143, 140, 142, 138, 135, 137, - 97, 125, 98, 123, 69, 57, 61, 65, 73, 129, - 126, 127, 154, 95, 96, 100, 102, 104, 106, 114, - 111, 112, 118, 115, 116, 122, 119, 120, 162, 159, - 160, 110, 107, 108, 156, 0, 0, 94, 93, 0, - 149, 0, 0, 0, 72, 71, 60, 59, 64, 63, - 68, 67, 76, 75, 0, 0, 0, 0, 0, 0, - 89, 132, 148, 141, 136, 124, 128, 113, 117, 121, - 161, 109, 147 + 3, 0, 2, 1, 0, 0, 55, 4, 5, 8, + 6, 12, 9, 10, 16, 54, 11, 57, 56, 0, + 0, 93, 78, 82, 80, 84, 86, 147, 154, 0, + 0, 0, 140, 135, 0, 0, 71, 59, 63, 67, + 75, 0, 0, 0, 0, 100, 102, 104, 106, 0, + 0, 0, 0, 0, 0, 7, 160, 53, 13, 14, + 48, 50, 51, 49, 52, 41, 43, 42, 44, 45, + 37, 38, 39, 40, 26, 29, 30, 31, 32, 33, + 46, 34, 35, 36, 28, 27, 25, 24, 17, 18, + 19, 20, 21, 22, 23, 15, 157, 159, 47, 91, + 88, 89, 134, 131, 132, 92, 79, 83, 81, 85, + 87, 148, 155, 145, 152, 153, 144, 141, 143, 139, + 136, 138, 98, 126, 99, 124, 70, 58, 62, 66, + 74, 130, 127, 128, 156, 96, 97, 101, 103, 105, + 107, 115, 112, 113, 119, 116, 117, 123, 120, 121, + 164, 161, 162, 111, 108, 109, 146, 158, 0, 0, + 95, 94, 0, 151, 0, 0, 0, 73, 72, 61, + 60, 65, 64, 69, 68, 77, 76, 0, 0, 0, + 0, 0, 0, 90, 133, 150, 142, 137, 125, 129, + 114, 118, 122, 163, 110, 149 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 1, 2, 7, 56, 8, 9, 10, 16, 57, - 11, 58, 12, 15, 18, 59, 125, 167, 60, 126, - 169, 61, 127, 171, 62, 124, 165, 63, 128, 173, - 64, 65, 66, 67, 68, 69, 98, 99, 70, 103, - 158, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 152, 153, 80, 140, 141, 81, 143, 144, 82, 146, - 147, 122, 123, 83, 130, 131, 84, 101, 102, 85, - 118, 119, 86, 115, 116, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 149, 150 + -1, 1, 2, 7, 57, 8, 9, 10, 16, 58, + 11, 59, 12, 15, 18, 60, 127, 170, 61, 128, + 172, 62, 129, 174, 63, 126, 168, 64, 130, 176, + 65, 66, 67, 68, 69, 70, 100, 101, 71, 105, + 161, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 154, 155, 81, 142, 143, 82, 145, 146, 83, 148, + 149, 124, 125, 84, 132, 133, 85, 103, 104, 86, + 120, 121, 87, 117, 118, 88, 89, 90, 91, 92, + 93, 94, 95, 96, 97, 98, 151, 152 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -107 +#define YYPACT_NINF -108 static const yytype_int8 yypact[] = { - -107, 8, 33, -107, -8, -2, -107, -107, -107, -107, - -107, -107, -107, -107, -107, -5, -4, -107, -107, -7, - -1, -107, 1, 3, 4, 5, 6, 7, 9, 10, - 14, 15, 12, 13, 17, 16, -107, -107, -107, -107, - -107, 18, 20, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 34, 32, -107, -107, -107, -107, -107, -107, - -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, - -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, - -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, - -107, -107, -107, -107, 35, -107, -107, -107, 42, -107, - -107, -107, 43, 39, -107, -107, -107, -107, -107, -107, - -107, -107, -3, -107, -107, -107, 45, -107, 46, -107, - -107, -107, 47, -107, 11, 40, 41, 44, 48, -107, - 51, -107, -107, -107, -107, -107, -107, -107, -107, -107, - 52, -107, -107, 54, -107, -107, 55, -107, -107, 56, - -107, -107, 58, -107, -107, -7, -1, -107, -107, 31, - -107, 12, 13, 16, -107, -107, -107, -107, -107, -107, - -107, -107, -107, -107, 18, 28, 29, 30, 34, 32, - -107, -107, 21, -107, -107, -107, -107, -107, -107, -107, - -107, -107, -107 + -108, 8, 34, -108, -8, -2, -108, -108, -108, -108, + -108, -108, -108, -108, -108, -5, -4, -108, -108, -7, + -1, -108, 1, 3, 4, 5, 6, 7, 9, 10, + 14, 15, 12, 13, 17, 16, -108, -108, -108, -108, + -108, 18, 20, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 35, 31, 36, -108, -108, -108, -108, -108, + -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, + -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, + -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, + -108, -108, -108, -108, -108, -108, 37, -108, -108, -108, + 33, -108, -108, -108, 42, 39, -108, -108, -108, -108, + -108, -108, -108, -108, -3, -108, -108, -108, 45, -108, + 46, -108, -108, -108, 47, -108, 11, 40, 41, 43, + 44, -108, 48, -108, -108, -108, -108, -108, -108, -108, + -108, -108, 51, -108, -108, 54, -108, -108, 55, -108, + -108, 56, -108, -108, 57, -108, -108, -108, -7, -1, + -108, -108, 32, -108, 12, 13, 16, -108, -108, -108, + -108, -108, -108, -108, -108, -108, -108, 18, 28, 29, + 30, 35, 31, -108, -108, 21, -108, -108, -108, -108, + -108, -108, -108, -108, -108, -108 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int8 yypgoto[] = { - -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, - -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, - -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, - -107, -107, -107, -107, -107, -107, -107, -102, -107, -107, - -107, -107, -107, -107, -107, -107, -107, -107, -107, -107, - -107, -106, -107, -107, -100, -107, -107, -88, -107, -107, - -78, -107, -63, -107, -107, -73, -107, -54, -107, -107, - -107, -59, -107, -57, -107, -107, -107, -107, -107, -107, - -107, -107, -107, 19, -107, -107, -72 + -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, + -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, + -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, + -108, -108, -108, -108, -108, -108, -108, -104, -108, -108, + -108, -108, -108, -108, -108, -108, -108, -108, -108, -108, + -108, -107, -108, -108, -79, -108, -108, -78, -108, -108, + -80, -108, -64, -108, -108, -74, -108, -55, -108, -108, + -108, -60, -108, -58, -108, -108, -108, -108, -108, -108, + -108, -108, -108, -108, 19, -108, -108, -73 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -811,15 +815,15 @@ static const yytype_uint8 yytable[] = 19, 20, 21, 22, 23, 24, 25, 26, 3, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 4, 13, 159, 160, - 54, 97, 55, 14, 17, 5, 104, 100, 105, 106, - 107, 108, 109, 180, 110, 111, 6, 112, 113, 114, - 164, 117, 120, 192, 121, 132, 129, 133, 134, 135, - 136, 137, 138, 191, 182, 187, 139, 142, 145, 148, - 151, 55, 155, 156, 157, 161, 162, 163, 188, 166, - 168, 174, 175, 170, 176, 177, 178, 172, 179, 189, - 185, 186, 181, 184, 183, 0, 190, 0, 0, 0, - 0, 0, 0, 154 + 48, 49, 50, 51, 52, 53, 54, 4, 13, 162, + 163, 55, 99, 56, 14, 17, 5, 106, 102, 107, + 108, 109, 110, 111, 183, 112, 113, 6, 114, 115, + 116, 167, 119, 122, 195, 123, 134, 131, 135, 136, + 137, 138, 139, 140, 158, 194, 185, 141, 144, 147, + 153, 150, 156, 159, 56, 160, 164, 165, 166, 177, + 169, 171, 178, 173, 175, 179, 180, 181, 182, 190, + 192, 191, 188, 189, 184, 187, 186, 0, 193, 0, + 0, 0, 0, 0, 0, 157 }; static const yytype_int16 yycheck[] = @@ -827,41 +831,41 @@ static const yytype_int16 yycheck[] = 4, 5, 6, 7, 8, 9, 10, 11, 0, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 3, 45, 41, 42, - 44, 48, 46, 45, 49, 12, 45, 48, 45, 45, - 45, 45, 45, 155, 45, 45, 23, 43, 43, 47, - 49, 48, 45, 42, 48, 45, 48, 45, 45, 45, - 45, 45, 45, 179, 43, 175, 48, 48, 48, 45, - 48, 46, 40, 40, 45, 40, 40, 40, 176, 49, - 49, 40, 40, 49, 40, 40, 40, 49, 40, 177, - 163, 174, 156, 162, 161, -1, 178, -1, -1, -1, - -1, -1, -1, 94 + 34, 35, 36, 37, 38, 39, 40, 3, 46, 42, + 43, 45, 49, 47, 46, 50, 12, 46, 49, 46, + 46, 46, 46, 46, 158, 46, 46, 23, 44, 44, + 48, 50, 49, 46, 43, 49, 46, 49, 46, 46, + 46, 46, 46, 46, 41, 182, 44, 49, 49, 49, + 49, 46, 46, 41, 47, 46, 41, 41, 41, 41, + 50, 50, 41, 50, 50, 41, 41, 41, 41, 178, + 180, 179, 166, 177, 159, 165, 164, -1, 181, -1, + -1, -1, -1, -1, -1, 96 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint8 yystos[] = { - 0, 51, 52, 0, 3, 12, 23, 53, 55, 56, - 57, 60, 62, 45, 45, 63, 58, 49, 64, 4, + 0, 52, 53, 0, 3, 12, 23, 54, 56, 57, + 58, 61, 63, 46, 46, 64, 59, 50, 65, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 44, 46, 54, 59, 61, 65, - 68, 71, 74, 77, 80, 81, 82, 83, 84, 85, - 88, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 102, 105, 108, 113, 116, 119, 122, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, 48, 86, 87, - 48, 117, 118, 89, 45, 45, 45, 45, 45, 45, - 45, 45, 43, 43, 47, 123, 124, 48, 120, 121, - 45, 48, 111, 112, 75, 66, 69, 72, 78, 48, - 114, 115, 45, 45, 45, 45, 45, 45, 45, 48, - 103, 104, 48, 106, 107, 48, 109, 110, 45, 135, - 136, 48, 100, 101, 133, 40, 40, 45, 90, 41, - 42, 40, 40, 40, 49, 76, 49, 67, 49, 70, - 49, 73, 49, 79, 40, 40, 40, 40, 40, 40, - 87, 117, 43, 123, 121, 112, 115, 104, 107, 110, - 136, 101, 42 + 36, 37, 38, 39, 40, 45, 47, 55, 60, 62, + 66, 69, 72, 75, 78, 81, 82, 83, 84, 85, + 86, 89, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 103, 106, 109, 114, 117, 120, 123, 126, 127, + 128, 129, 130, 131, 132, 133, 134, 135, 136, 49, + 87, 88, 49, 118, 119, 90, 46, 46, 46, 46, + 46, 46, 46, 46, 44, 44, 48, 124, 125, 49, + 121, 122, 46, 49, 112, 113, 76, 67, 70, 73, + 79, 49, 115, 116, 46, 46, 46, 46, 46, 46, + 46, 49, 104, 105, 49, 107, 108, 49, 110, 111, + 46, 137, 138, 49, 101, 102, 46, 135, 41, 41, + 46, 91, 42, 43, 41, 41, 41, 50, 77, 50, + 68, 50, 71, 50, 74, 50, 80, 41, 41, 41, + 41, 41, 41, 88, 118, 44, 124, 122, 113, 116, + 105, 108, 111, 138, 102, 43 }; #define yyerrok (yyerrstatus = 0) @@ -1821,24 +1825,17 @@ yyreduce: } break; - case 52: - -/* Line 1455 of yacc.c */ -#line 185 "levcomp.ypp" - {} - break; - case 53: /* Line 1455 of yacc.c */ -#line 188 "levcomp.ypp" - { } +#line 186 "levcomp.ypp" + {} break; case 54: /* Line 1455 of yacc.c */ -#line 190 "levcomp.ypp" +#line 189 "levcomp.ypp" { } break; @@ -1852,23 +1849,23 @@ yyreduce: case 56: /* Line 1455 of yacc.c */ -#line 195 "levcomp.ypp" - { - lc_global_prelude.add(yylineno, (yyvsp[(1) - (1)].text)); - } +#line 192 "levcomp.ypp" + { } break; case 57: /* Line 1455 of yacc.c */ -#line 199 "levcomp.ypp" - { } +#line 196 "levcomp.ypp" + { + lc_global_prelude.add(yylineno, (yyvsp[(1) - (1)].text)); + } break; case 58: /* Line 1455 of yacc.c */ -#line 201 "levcomp.ypp" +#line 200 "levcomp.ypp" { } break; @@ -1882,23 +1879,23 @@ yyreduce: case 60: /* Line 1455 of yacc.c */ -#line 206 "levcomp.ypp" - { - lc_map.main.add(yylineno, (yyvsp[(1) - (1)].text)); - } +#line 203 "levcomp.ypp" + { } break; case 61: /* Line 1455 of yacc.c */ -#line 210 "levcomp.ypp" - { } +#line 207 "levcomp.ypp" + { + lc_map.main.add(yylineno, (yyvsp[(1) - (1)].text)); + } break; case 62: /* Line 1455 of yacc.c */ -#line 212 "levcomp.ypp" +#line 211 "levcomp.ypp" { } break; @@ -1912,23 +1909,23 @@ yyreduce: case 64: /* Line 1455 of yacc.c */ -#line 217 "levcomp.ypp" - { - lc_map.validate.add(yylineno, (yyvsp[(1) - (1)].text)); - } +#line 214 "levcomp.ypp" + { } break; case 65: /* Line 1455 of yacc.c */ -#line 221 "levcomp.ypp" - { } +#line 218 "levcomp.ypp" + { + lc_map.validate.add(yylineno, (yyvsp[(1) - (1)].text)); + } break; case 66: /* Line 1455 of yacc.c */ -#line 223 "levcomp.ypp" +#line 222 "levcomp.ypp" { } break; @@ -1942,23 +1939,23 @@ yyreduce: case 68: /* Line 1455 of yacc.c */ -#line 228 "levcomp.ypp" - { - lc_map.veto.add(yylineno, (yyvsp[(1) - (1)].text)); - } +#line 225 "levcomp.ypp" + { } break; case 69: /* Line 1455 of yacc.c */ -#line 232 "levcomp.ypp" - { } +#line 229 "levcomp.ypp" + { + lc_map.veto.add(yylineno, (yyvsp[(1) - (1)].text)); + } break; case 70: /* Line 1455 of yacc.c */ -#line 234 "levcomp.ypp" +#line 233 "levcomp.ypp" { } break; @@ -1972,23 +1969,23 @@ yyreduce: case 72: /* Line 1455 of yacc.c */ -#line 239 "levcomp.ypp" - { - lc_map.prelude.add(yylineno, (yyvsp[(1) - (1)].text)); - } +#line 236 "levcomp.ypp" + { } break; case 73: /* Line 1455 of yacc.c */ -#line 243 "levcomp.ypp" - { } +#line 240 "levcomp.ypp" + { + lc_map.prelude.add(yylineno, (yyvsp[(1) - (1)].text)); + } break; case 74: /* Line 1455 of yacc.c */ -#line 245 "levcomp.ypp" +#line 244 "levcomp.ypp" { } break; @@ -2002,23 +1999,30 @@ yyreduce: case 76: /* Line 1455 of yacc.c */ -#line 250 "levcomp.ypp" +#line 247 "levcomp.ypp" + { } + break; + + case 77: + +/* Line 1455 of yacc.c */ +#line 251 "levcomp.ypp" { lc_map.epilogue.add(yylineno, (yyvsp[(1) - (1)].text)); } break; - case 77: + case 78: /* Line 1455 of yacc.c */ -#line 254 "levcomp.ypp" +#line 255 "levcomp.ypp" { } break; - case 78: + case 79: /* Line 1455 of yacc.c */ -#line 256 "levcomp.ypp" +#line 257 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2027,17 +2031,17 @@ yyreduce: } break; - case 79: + case 80: /* Line 1455 of yacc.c */ -#line 263 "levcomp.ypp" +#line 264 "levcomp.ypp" { } break; - case 80: + case 81: /* Line 1455 of yacc.c */ -#line 265 "levcomp.ypp" +#line 266 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2046,17 +2050,17 @@ yyreduce: } break; - case 81: + case 82: /* Line 1455 of yacc.c */ -#line 272 "levcomp.ypp" +#line 273 "levcomp.ypp" { } break; - case 82: + case 83: /* Line 1455 of yacc.c */ -#line 274 "levcomp.ypp" +#line 275 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2065,17 +2069,17 @@ yyreduce: } break; - case 83: + case 84: /* Line 1455 of yacc.c */ -#line 281 "levcomp.ypp" +#line 282 "levcomp.ypp" { } break; - case 84: + case 85: /* Line 1455 of yacc.c */ -#line 283 "levcomp.ypp" +#line 284 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2084,17 +2088,17 @@ yyreduce: } break; - case 85: + case 86: /* Line 1455 of yacc.c */ -#line 290 "levcomp.ypp" +#line 291 "levcomp.ypp" { } break; - case 86: + case 87: /* Line 1455 of yacc.c */ -#line 292 "levcomp.ypp" +#line 293 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2103,17 +2107,17 @@ yyreduce: } break; - case 87: + case 88: /* Line 1455 of yacc.c */ -#line 299 "levcomp.ypp" +#line 300 "levcomp.ypp" {} break; - case 90: + case 91: /* Line 1455 of yacc.c */ -#line 307 "levcomp.ypp" +#line 308 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2122,17 +2126,17 @@ yyreduce: } break; - case 91: + case 92: /* Line 1455 of yacc.c */ -#line 314 "levcomp.ypp" +#line 315 "levcomp.ypp" {} break; - case 94: + case 95: /* Line 1455 of yacc.c */ -#line 322 "levcomp.ypp" +#line 323 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2141,10 +2145,10 @@ yyreduce: } break; - case 95: + case 96: /* Line 1455 of yacc.c */ -#line 331 "levcomp.ypp" +#line 332 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2153,10 +2157,10 @@ yyreduce: } break; - case 96: + case 97: /* Line 1455 of yacc.c */ -#line 340 "levcomp.ypp" +#line 341 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2165,10 +2169,10 @@ yyreduce: } break; - case 97: + case 98: /* Line 1455 of yacc.c */ -#line 349 "levcomp.ypp" +#line 350 "levcomp.ypp" { std::string key, arg; int sep(0); @@ -2201,24 +2205,24 @@ yyreduce: } break; - case 98: + case 99: /* Line 1455 of yacc.c */ -#line 381 "levcomp.ypp" +#line 382 "levcomp.ypp" { } break; - case 99: + case 100: /* Line 1455 of yacc.c */ -#line 384 "levcomp.ypp" +#line 385 "levcomp.ypp" { } break; - case 100: + case 101: /* Line 1455 of yacc.c */ -#line 386 "levcomp.ypp" +#line 387 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2227,17 +2231,17 @@ yyreduce: } break; - case 101: + case 102: /* Line 1455 of yacc.c */ -#line 393 "levcomp.ypp" +#line 394 "levcomp.ypp" { } break; - case 102: + case 103: /* Line 1455 of yacc.c */ -#line 395 "levcomp.ypp" +#line 396 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2246,17 +2250,17 @@ yyreduce: } break; - case 103: + case 104: /* Line 1455 of yacc.c */ -#line 402 "levcomp.ypp" +#line 403 "levcomp.ypp" { } break; - case 104: + case 105: /* Line 1455 of yacc.c */ -#line 404 "levcomp.ypp" +#line 405 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2265,17 +2269,17 @@ yyreduce: } break; - case 105: + case 106: /* Line 1455 of yacc.c */ -#line 412 "levcomp.ypp" +#line 413 "levcomp.ypp" { } break; - case 106: + case 107: /* Line 1455 of yacc.c */ -#line 414 "levcomp.ypp" +#line 415 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2284,10 +2288,10 @@ yyreduce: } break; - case 110: + case 111: /* Line 1455 of yacc.c */ -#line 429 "levcomp.ypp" +#line 430 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2296,10 +2300,10 @@ yyreduce: } break; - case 114: + case 115: /* Line 1455 of yacc.c */ -#line 445 "levcomp.ypp" +#line 446 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2308,10 +2312,10 @@ yyreduce: } break; - case 118: + case 119: /* Line 1455 of yacc.c */ -#line 461 "levcomp.ypp" +#line 462 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2320,10 +2324,10 @@ yyreduce: } break; - case 122: + case 123: /* Line 1455 of yacc.c */ -#line 477 "levcomp.ypp" +#line 478 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2332,24 +2336,24 @@ yyreduce: } break; - case 123: + case 124: /* Line 1455 of yacc.c */ -#line 486 "levcomp.ypp" +#line 487 "levcomp.ypp" { } break; - case 124: + case 125: /* Line 1455 of yacc.c */ -#line 487 "levcomp.ypp" +#line 488 "levcomp.ypp" { } break; - case 125: + case 126: /* Line 1455 of yacc.c */ -#line 491 "levcomp.ypp" +#line 492 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2358,31 +2362,31 @@ yyreduce: } break; - case 126: + case 127: /* Line 1455 of yacc.c */ -#line 499 "levcomp.ypp" +#line 500 "levcomp.ypp" { } break; - case 127: + case 128: /* Line 1455 of yacc.c */ -#line 502 "levcomp.ypp" +#line 503 "levcomp.ypp" { } break; - case 128: + case 129: /* Line 1455 of yacc.c */ -#line 503 "levcomp.ypp" +#line 504 "levcomp.ypp" { } break; - case 129: + case 130: /* Line 1455 of yacc.c */ -#line 507 "levcomp.ypp" +#line 508 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2391,17 +2395,17 @@ yyreduce: } break; - case 130: + case 131: /* Line 1455 of yacc.c */ -#line 515 "levcomp.ypp" +#line 516 "levcomp.ypp" { } break; - case 133: + case 134: /* Line 1455 of yacc.c */ -#line 523 "levcomp.ypp" +#line 524 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2410,24 +2414,24 @@ yyreduce: } break; - case 134: + case 135: /* Line 1455 of yacc.c */ -#line 531 "levcomp.ypp" +#line 532 "levcomp.ypp" {} break; - case 135: + case 136: /* Line 1455 of yacc.c */ -#line 532 "levcomp.ypp" +#line 533 "levcomp.ypp" {} break; - case 138: + case 139: /* Line 1455 of yacc.c */ -#line 540 "levcomp.ypp" +#line 541 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2436,24 +2440,24 @@ yyreduce: } break; - case 139: + case 140: /* Line 1455 of yacc.c */ -#line 547 "levcomp.ypp" +#line 548 "levcomp.ypp" {} break; - case 140: + case 141: /* Line 1455 of yacc.c */ -#line 548 "levcomp.ypp" +#line 549 "levcomp.ypp" {} break; - case 143: + case 144: /* Line 1455 of yacc.c */ -#line 556 "levcomp.ypp" +#line 557 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2462,10 +2466,10 @@ yyreduce: } break; - case 144: + case 145: /* Line 1455 of yacc.c */ -#line 565 "levcomp.ypp" +#line 566 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2474,17 +2478,29 @@ yyreduce: } break; - case 145: + case 146: /* Line 1455 of yacc.c */ -#line 573 "levcomp.ypp" +#line 575 "levcomp.ypp" + { + lc_map.main.add( + yylineno, + make_stringf("desc(\"%s\")", + quote_lua_string((yyvsp[(2) - (2)].text)).c_str())); + } + break; + + case 147: + +/* Line 1455 of yacc.c */ +#line 583 "levcomp.ypp" {} break; - case 146: + case 148: /* Line 1455 of yacc.c */ -#line 575 "levcomp.ypp" +#line 585 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2493,10 +2509,10 @@ yyreduce: } break; - case 147: + case 149: /* Line 1455 of yacc.c */ -#line 584 "levcomp.ypp" +#line 594 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2504,10 +2520,10 @@ yyreduce: } break; - case 148: + case 150: /* Line 1455 of yacc.c */ -#line 591 "levcomp.ypp" +#line 601 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2515,32 +2531,32 @@ yyreduce: } break; - case 149: + case 151: /* Line 1455 of yacc.c */ -#line 598 "levcomp.ypp" +#line 608 "levcomp.ypp" { lc_map.main.add( yylineno, - make_stringf("chance(0, %d)", (yyvsp[(2) - (3)].i) * 100)); + make_stringf("chance(%d)", (yyvsp[(2) - (3)].i) * 100)); } break; - case 150: + case 152: /* Line 1455 of yacc.c */ -#line 605 "levcomp.ypp" +#line 615 "levcomp.ypp" { lc_map.main.add( yylineno, - make_stringf("chance(0, %d)", (yyvsp[(2) - (2)].i))); + make_stringf("chance(%d)", (yyvsp[(2) - (2)].i))); } break; - case 151: + case 153: /* Line 1455 of yacc.c */ -#line 613 "levcomp.ypp" +#line 623 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2548,17 +2564,17 @@ yyreduce: } break; - case 152: + case 154: /* Line 1455 of yacc.c */ -#line 620 "levcomp.ypp" +#line 630 "levcomp.ypp" {} break; - case 153: + case 155: /* Line 1455 of yacc.c */ -#line 622 "levcomp.ypp" +#line 632 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2567,10 +2583,10 @@ yyreduce: } break; - case 154: + case 156: /* Line 1455 of yacc.c */ -#line 631 "levcomp.ypp" +#line 641 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2579,10 +2595,10 @@ yyreduce: } break; - case 158: + case 160: /* Line 1455 of yacc.c */ -#line 647 "levcomp.ypp" +#line 657 "levcomp.ypp" { lc_map.mapchunk.add( yylineno, @@ -2591,10 +2607,10 @@ yyreduce: } break; - case 162: + case 164: /* Line 1455 of yacc.c */ -#line 663 "levcomp.ypp" +#line 673 "levcomp.ypp" { lc_map.main.add( yylineno, @@ -2606,7 +2622,7 @@ yyreduce: /* Line 1455 of yacc.c */ -#line 2610 "levcomp.tab.c" +#line 2626 "levcomp.tab.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -2818,6 +2834,6 @@ yyreturn: /* Line 1675 of yacc.c */ -#line 671 "levcomp.ypp" +#line 681 "levcomp.ypp" diff --git a/crawl-ref/source/prebuilt/levcomp.tab.h b/crawl-ref/source/prebuilt/levcomp.tab.h index 495a4f923d..ebf4e0ecfe 100644 --- a/crawl-ref/source/prebuilt/levcomp.tab.h +++ b/crawl-ref/source/prebuilt/levcomp.tab.h @@ -76,16 +76,17 @@ TILE = 292, SUBVAULT = 293, FHEIGHT = 294, - COMMA = 295, - COLON = 296, - PERC = 297, - INTEGER = 298, - CHARACTER = 299, - STRING = 300, - MAP_LINE = 301, - MONSTER_NAME = 302, - ITEM_INFO = 303, - LUA_LINE = 304 + DESC = 295, + COMMA = 296, + COLON = 297, + PERC = 298, + INTEGER = 299, + CHARACTER = 300, + STRING = 301, + MAP_LINE = 302, + MONSTER_NAME = 303, + ITEM_INFO = 304, + LUA_LINE = 305 }; #endif /* Tokens. */ @@ -126,16 +127,17 @@ #define TILE 292 #define SUBVAULT 293 #define FHEIGHT 294 -#define COMMA 295 -#define COLON 296 -#define PERC 297 -#define INTEGER 298 -#define CHARACTER 299 -#define STRING 300 -#define MAP_LINE 301 -#define MONSTER_NAME 302 -#define ITEM_INFO 303 -#define LUA_LINE 304 +#define DESC 295 +#define COMMA 296 +#define COLON 297 +#define PERC 298 +#define INTEGER 299 +#define CHARACTER 300 +#define STRING 301 +#define MAP_LINE 302 +#define MONSTER_NAME 303 +#define ITEM_INFO 304 +#define LUA_LINE 305 @@ -154,7 +156,7 @@ typedef union YYSTYPE /* Line 1676 of yacc.c */ -#line 158 "levcomp.tab.h" +#line 160 "levcomp.tab.h" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ |