diff --git a/maplexer.c b/maplexer.c index fa809e4f05..a5f2b143db 100644 --- a/maplexer.c +++ b/maplexer.c @@ -6,29 +6,10 @@ /* A lexical scanner generated by flex */ -#define yy_create_buffer msyy_create_buffer -#define yy_delete_buffer msyy_delete_buffer -#define yy_flex_debug msyy_flex_debug -#define yy_init_buffer msyy_init_buffer -#define yy_flush_buffer msyy_flush_buffer -#define yy_load_buffer_state msyy_load_buffer_state -#define yy_switch_to_buffer msyy_switch_to_buffer -#define yyin msyyin -#define yyleng msyyleng -#define yylex msyylex -#define yylineno msyylineno -#define yyout msyyout -#define yyrestart msyyrestart -#define yytext msyytext -#define yywrap msyywrap -#define yyalloc msyyalloc -#define yyrealloc msyyrealloc -#define yyfree msyyfree - #define FLEX_SCANNER #define YY_FLEX_MAJOR_VERSION 2 #define YY_FLEX_MINOR_VERSION 5 -#define YY_FLEX_SUBMINOR_VERSION 35 +#define YY_FLEX_SUBMINOR_VERSION 33 #if YY_FLEX_SUBMINOR_VERSION > 0 #define FLEX_BETA #endif @@ -50,7 +31,7 @@ /* C99 systems have . Non-C99 systems may or may not. */ -#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L +#if __STDC_VERSION__ >= 199901L /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, * if you want the limit (max/min) macros for int types. @@ -73,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 @@ -103,8 +85,6 @@ typedef unsigned int flex_uint32_t; #define UINT32_MAX (4294967295U) #endif -#endif /* ! C99 */ - #endif /* ! FLEXINT_H */ #ifdef __cplusplus @@ -114,12 +94,11 @@ typedef unsigned int flex_uint32_t; #else /* ! __cplusplus */ -/* C99 requires __STDC__ to be defined as 1. */ -#if defined (__STDC__) +#if __STDC__ #define YY_USE_CONST -#endif /* defined (__STDC__) */ +#endif /* __STDC__ */ #endif /* ! __cplusplus */ #ifdef YY_USE_CONST @@ -161,15 +140,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. @@ -207,9 +178,14 @@ extern FILE *msyyin, *msyyout; #define unput(c) yyunput( c, (yytext_ptr) ) +/* The following is because we cannot portably get our hands on size_t + * (without autoconf's help, which isn't available because we want + * flex-generated scanners to compile on their own). + */ + #ifndef YY_TYPEDEF_YY_SIZE_T #define YY_TYPEDEF_YY_SIZE_T -typedef size_t yy_size_t; +typedef unsigned int yy_size_t; #endif #ifndef YY_STRUCT_YY_BUFFER_STATE @@ -388,8 +364,8 @@ static void yy_fatal_error (yyconst char msg[] ); *yy_cp = '\0'; \ (yy_c_buf_p) = yy_cp; -#define YY_NUM_RULES 332 -#define YY_END_OF_BUFFER 333 +#define YY_NUM_RULES 335 +#define YY_END_OF_BUFFER 336 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -397,220 +373,221 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[1926] = +static yyconst flex_int16_t yy_accept[1939] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 333, 330, 1, 328, 321, 2, 330, 330, - 314, 327, 314, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 330, 330, 329, - 329, 3, 330, 330, 330, 330, 330, 330, 330, 330, - 330, 330, 330, 330, 330, 330, 330, 1, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 331, 1, - 1, 6, 326, 331, 326, 331, 315, 315, 10, 7, - - 9, 331, 331, 331, 331, 331, 331, 331, 331, 331, - 331, 331, 331, 331, 331, 331, 331, 331, 329, 13, - 329, 332, 1, 332, 332, 324, 322, 322, 323, 1, - 2, 0, 319, 314, 314, 327, 314, 327, 0, 327, - 318, 314, 0, 327, 327, 327, 327, 327, 327, 327, - 327, 232, 327, 327, 327, 236, 327, 237, 327, 327, - 242, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 254, 327, - 327, 257, 327, 258, 327, 327, 327, 327, 327, 327, - - 327, 327, 327, 269, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 212, 327, 327, 296, 297, 327, 298, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 0, 307, - 0, 320, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 336, 333, 1, 331, 324, 2, 333, 333, + 317, 330, 317, 333, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 333, 332, + 332, 3, 333, 333, 333, 333, 333, 333, 333, 333, + 333, 333, 333, 333, 333, 333, 333, 1, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 334, 1, + 1, 6, 329, 334, 329, 334, 318, 318, 10, 7, + + 9, 334, 334, 334, 334, 334, 334, 334, 334, 334, + 334, 334, 334, 334, 334, 334, 334, 334, 334, 332, + 13, 332, 335, 1, 335, 335, 327, 325, 325, 326, + 1, 2, 0, 322, 317, 317, 330, 317, 330, 0, + 330, 321, 317, 0, 0, 310, 330, 330, 330, 330, + 330, 330, 330, 330, 235, 330, 330, 330, 239, 330, + 240, 330, 330, 245, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 257, 330, 330, 260, 330, 261, 330, 330, 330, + + 330, 330, 330, 330, 330, 330, 272, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 215, 330, 330, 299, 300, + 330, 301, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 0, 323, 0, 0, 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 306, 327, 327, 236, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 269, 327, 327, 327, 327, 327, 327, - - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 8, 0, 5, 0, 315, 315, 315, 0, 315, 0, - 12, 14, 7, 11, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 11, 9, 16, 12, 10, 0, 4, + 0, 0, 0, 330, 330, 239, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 272, 330, 330, 330, 330, 330, + + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 8, 0, 5, 0, 318, 318, 318, 0, 318, + 0, 12, 14, 7, 11, 0, 314, 0, 0, 0, + 0, 0, 319, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 11, 9, 16, 12, 0, 10, 0, 4, + 0, 0, 0, 0, 0, 0, 0, 15, 0, 328, + 0, 327, 325, 326, 317, 0, 0, 330, 317, 321, + 320, 317, 0, 0, 317, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 241, 330, 330, 330, + + 330, 330, 330, 330, 330, 330, 69, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 84, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 125, 126, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 270, 271, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 287, 330, 330, 330, 330, 330, 330, 330, 330, + + 330, 293, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 225, 306, + 330, 227, 307, 330, 0, 308, 0, 0, 0, 0, + 0, 0, 0, 0, 126, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 225, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 270, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 0, 0, 0, 0, 0, 318, 318, 0, 0, + 318, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 311, 0, 0, 316, 15, 0, 325, 0, 324, 322, - 322, 323, 314, 0, 0, 327, 314, 318, 317, 314, - 0, 0, 314, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 238, 327, 327, 327, 327, 327, - - 327, 327, 327, 327, 66, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 81, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 122, 123, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 267, 268, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 284, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 290, - - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 222, 303, 327, 224, - 304, 327, 0, 0, 0, 0, 0, 0, 0, 0, - 123, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 222, 0, 305, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 267, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 0, - 0, 0, 0, 0, 315, 315, 0, 0, 315, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, - - 0, 0, 0, 0, 0, 314, 317, 0, 314, 327, - 327, 327, 327, 327, 227, 327, 327, 327, 327, 327, - 327, 327, 231, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 59, 327, 327, 327, 327, 63, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 246, 327, 327, - 327, 76, 327, 327, 327, 80, 327, 327, 327, 83, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 101, 327, 327, 327, 327, 327, 327, 327, 327, - 255, 327, 256, 327, 126, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 157, 327, 265, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 195, 327, 327, 327, - 327, 327, 327, 327, 207, 327, 292, 327, 327, 327, - 327, 294, 218, 327, 327, 327, 327, 327, 327, 327, - 225, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 195, 0, 0, 0, 327, 327, - - 59, 327, 76, 327, 327, 327, 327, 327, 327, 327, - 195, 327, 327, 294, 312, 0, 315, 17, 0, 0, + + 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, + 317, 320, 0, 317, 330, 330, 330, 330, 330, 230, + 330, 330, 330, 330, 330, 330, 330, 234, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 62, 330, 330, + 330, 330, 66, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 249, 330, 330, 330, 79, 330, 330, 330, + 83, 330, 330, 330, 86, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 104, 330, 330, 330, + 330, 330, 330, 330, 330, 258, 330, 259, 330, 129, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 160, + 330, 268, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 198, 330, 330, 330, 330, 330, 330, 330, 210, + 330, 295, 330, 330, 330, 330, 297, 221, 330, 330, + 330, 330, 330, 330, 330, 228, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 198, + + 0, 0, 0, 330, 330, 62, 330, 79, 330, 330, + 330, 330, 330, 330, 330, 198, 330, 330, 297, 315, + 0, 318, 0, 0, 0, 316, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, + 330, 46, 330, 330, 231, 330, 330, 232, 330, 330, + 330, 330, 330, 330, 237, 330, 54, 330, 58, 330, + 330, 330, 330, 330, 64, 330, 330, 330, 330, 247, + 67, 330, 70, 330, 330, 248, 330, 330, 330, 330, + 330, 330, 81, 330, 330, 251, 330, 330, 89, 252, + + 330, 330, 91, 330, 330, 100, 330, 330, 177, 330, + 330, 330, 330, 108, 256, 330, 118, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 265, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 266, 330, 243, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 279, 330, 330, 330, 330, 330, 330, 330, 330, + 283, 330, 330, 330, 330, 330, 330, 330, 330, 285, + 286, 191, 330, 330, 330, 330, 330, 330, 291, 330, + + 330, 201, 330, 207, 330, 330, 330, 330, 214, 330, + 330, 330, 330, 302, 222, 330, 330, 330, 330, 226, + 46, 54, 0, 0, 0, 108, 118, 0, 0, 0, + 0, 0, 0, 201, 0, 222, 330, 58, 330, 330, + 330, 330, 330, 330, 330, 330, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 313, 41, 327, 43, 327, 327, 228, 327, 327, 229, - 327, 327, 327, 327, 327, 327, 234, 327, 51, 327, - 55, 327, 327, 327, 327, 327, 61, 327, 327, 327, - 327, 244, 64, 327, 67, 327, 327, 245, 327, 327, - 327, 327, 327, 327, 78, 327, 327, 248, 327, 327, - 86, 249, 327, 327, 88, 327, 327, 97, 327, 327, - - 174, 327, 327, 327, 327, 105, 253, 327, 115, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 262, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 263, 327, 240, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 276, 327, 327, 327, 327, 327, 327, - 327, 327, 280, 327, 327, 327, 327, 327, 327, 327, - 327, 282, 283, 188, 327, 327, 327, 327, 327, 327, - 288, 327, 327, 198, 327, 204, 327, 327, 327, 327, - - 211, 327, 327, 327, 327, 299, 219, 327, 327, 327, - 327, 223, 43, 51, 0, 0, 0, 105, 115, 0, - 0, 0, 0, 0, 0, 198, 0, 219, 327, 55, - 327, 327, 327, 327, 327, 327, 327, 327, 0, 0, + 0, 0, 23, 0, 21, 0, 0, 0, 0, 22, + 0, 330, 330, 330, 330, 330, 330, 233, 330, 52, + 236, 330, 238, 330, 330, 330, 330, 59, 330, 330, + 330, 330, 330, 330, 65, 330, 330, 330, 330, 72, + + 330, 75, 76, 250, 330, 78, 330, 330, 330, 330, + 90, 253, 330, 330, 330, 330, 330, 330, 254, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 117, 119, 120, 330, 330, 127, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 262, 330, 263, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 269, + 161, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 278, 277, 282, 176, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 284, 330, 186, + + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 289, 290, 330, 292, 200, 330, 203, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 224, + 305, 0, 72, 0, 0, 120, 0, 0, 0, 0, + 0, 0, 330, 203, 330, 0, 0, 0, 38, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 21, 0, 0, 0, 0, 0, 0, 0, 0, - 327, 327, 327, 327, 327, 327, 230, 327, 49, 233, - 327, 235, 327, 327, 327, 327, 56, 327, 327, 327, - 327, 327, 327, 62, 327, 327, 327, 327, 69, 327, - 72, 73, 247, 327, 75, 327, 327, 327, 327, 87, - - 250, 327, 327, 327, 327, 327, 327, 251, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 114, 116, 117, 327, 327, 124, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 259, 327, 260, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 266, 158, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 275, 274, 279, 173, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 281, 327, 183, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 286, - - 287, 327, 289, 197, 327, 200, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 221, 302, - 0, 69, 0, 0, 117, 0, 0, 0, 0, 0, - 0, 327, 200, 327, 35, 22, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 18, 0, 0, 0, 0, - 0, 33, 0, 0, 0, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 54, 327, 327, 301, 327, - 327, 241, 327, 243, 327, 327, 327, 71, 327, 77, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 96, 327, 327, 327, 327, 103, 327, 327, 327, 327, - - 327, 327, 327, 327, 327, 119, 327, 327, 127, 327, - 327, 327, 327, 327, 327, 327, 327, 136, 327, 327, - 327, 327, 327, 142, 327, 327, 327, 327, 327, 327, - 327, 153, 327, 327, 327, 327, 327, 159, 327, 160, - 327, 327, 327, 327, 327, 172, 327, 327, 277, 327, - 278, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 210, 327, - 327, 327, 327, 327, 327, 327, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 327, 327, 20, 0, 32, - - 0, 0, 36, 0, 0, 0, 0, 0, 0, 0, - 30, 0, 0, 308, 327, 327, 327, 327, 327, 47, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 65, - 327, 327, 327, 327, 327, 327, 84, 327, 327, 327, - 327, 327, 95, 327, 327, 327, 102, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 120, 327, 327, 327, - 327, 327, 327, 327, 327, 132, 327, 327, 139, 140, - 141, 327, 327, 327, 327, 327, 327, 149, 327, 327, - 156, 264, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 171, 327, 327, 175, 327, 327, - - 177, 327, 327, 327, 181, 327, 327, 327, 327, 185, - 327, 190, 327, 327, 285, 327, 327, 327, 327, 327, - 327, 327, 205, 94, 327, 209, 327, 327, 327, 293, - 295, 300, 327, 0, 0, 0, 0, 181, 0, 0, - 190, 0, 205, 34, 0, 29, 37, 0, 0, 31, - 24, 0, 19, 0, 0, 327, 327, 44, 327, 46, - 327, 50, 327, 52, 327, 327, 327, 39, 327, 327, - 70, 327, 327, 327, 85, 327, 92, 93, 327, 90, - 327, 99, 100, 327, 327, 327, 327, 108, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 135, - - 327, 327, 327, 327, 327, 327, 327, 327, 327, 152, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 40, 182, 327, 327, 327, 327, - 327, 327, 327, 194, 196, 199, 327, 203, 327, 208, - 213, 217, 327, 327, 0, 0, 90, 0, 182, 0, - 0, 0, 0, 0, 0, 27, 0, 0, 327, 226, - 327, 327, 53, 38, 57, 327, 327, 68, 74, 327, - 327, 89, 327, 98, 104, 252, 106, 327, 327, 327, - 327, 327, 327, 125, 128, 327, 327, 327, 327, 327, - - 327, 327, 327, 143, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 270, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 239, 327, 178, - 179, 327, 184, 327, 186, 189, 191, 327, 193, 327, - 327, 327, 327, 220, 0, 89, 179, 186, 0, 23, - 26, 28, 25, 0, 0, 42, 327, 327, 327, 60, - 327, 327, 327, 327, 107, 327, 327, 327, 327, 327, - 129, 130, 134, 131, 327, 327, 327, 138, 144, 327, - 151, 148, 327, 327, 155, 327, 271, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 169, 327, 273, 291, - - 327, 180, 327, 192, 201, 327, 327, 327, 216, 0, - 216, 0, 0, 327, 48, 327, 327, 79, 327, 91, - 327, 327, 327, 118, 327, 327, 327, 137, 327, 327, - 154, 327, 327, 161, 162, 163, 327, 165, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 215, 0, 0, - 0, 327, 327, 187, 82, 109, 111, 113, 327, 327, - 133, 327, 150, 261, 272, 327, 327, 327, 327, 170, - 327, 327, 327, 327, 327, 187, 0, 0, 327, 58, - 327, 327, 327, 327, 147, 327, 166, 167, 327, 176, - 145, 327, 327, 214, 0, 309, 45, 327, 327, 121, - - 146, 327, 327, 327, 206, 310, 327, 327, 327, 327, - 202, 327, 327, 327, 327, 110, 112, 327, 327, 327, - 168, 327, 327, 164, 0 + 18, 0, 0, 0, 0, 0, 36, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 57, 330, 330, + 304, 330, 330, 244, 330, 246, 330, 330, 330, 74, + 330, 80, 330, 330, 330, 330, 330, 330, 330, 330, + + 330, 330, 99, 330, 330, 330, 330, 106, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 122, 330, 330, + 130, 330, 330, 330, 330, 330, 330, 330, 330, 139, + 330, 330, 330, 330, 330, 145, 330, 330, 330, 330, + 330, 330, 330, 156, 330, 330, 330, 330, 330, 162, + 330, 163, 330, 330, 330, 330, 330, 175, 330, 330, + 280, 330, 281, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 213, 330, 330, 330, 330, 330, 330, 330, 0, 0, + + 0, 0, 0, 0, 0, 0, 0, 330, 330, 0, + 0, 311, 20, 0, 35, 0, 0, 39, 0, 0, + 24, 0, 0, 0, 0, 0, 33, 330, 330, 330, + 330, 330, 50, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 68, 330, 330, 330, 330, 330, 330, 87, + 330, 330, 330, 330, 330, 98, 330, 330, 330, 105, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 123, + 330, 330, 330, 330, 330, 330, 330, 330, 135, 330, + 330, 142, 143, 144, 330, 330, 330, 330, 330, 330, + 152, 330, 330, 159, 267, 330, 330, 330, 330, 330, + + 330, 330, 330, 330, 330, 330, 330, 174, 330, 330, + 178, 330, 330, 180, 330, 330, 330, 184, 330, 330, + 330, 330, 188, 330, 193, 330, 330, 288, 330, 330, + 330, 330, 330, 330, 330, 208, 97, 330, 212, 330, + 330, 330, 296, 298, 303, 330, 0, 0, 0, 0, + 184, 0, 0, 193, 0, 208, 0, 0, 37, 0, + 32, 40, 0, 0, 34, 27, 0, 19, 330, 330, + 47, 330, 49, 330, 53, 330, 55, 330, 330, 330, + 42, 330, 330, 73, 330, 330, 330, 88, 330, 95, + 96, 330, 93, 330, 102, 103, 330, 330, 330, 330, + + 111, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 138, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 155, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 43, 185, 330, + 330, 330, 330, 330, 330, 330, 197, 199, 202, 330, + 206, 330, 211, 216, 220, 330, 330, 0, 0, 93, + 0, 185, 0, 0, 0, 0, 0, 0, 0, 0, + 30, 330, 229, 330, 330, 56, 41, 60, 330, 330, + 71, 77, 330, 330, 92, 330, 101, 107, 255, 109, + + 330, 330, 330, 330, 330, 330, 128, 131, 330, 330, + 330, 330, 330, 330, 330, 330, 146, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 273, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 242, 330, 181, 182, 330, 187, 330, 189, 192, 194, + 330, 196, 330, 330, 330, 330, 223, 0, 92, 182, + 189, 0, 0, 0, 26, 29, 31, 28, 45, 330, + 330, 330, 63, 330, 330, 330, 330, 110, 330, 330, + 330, 330, 330, 132, 133, 137, 134, 330, 330, 330, + 141, 147, 330, 154, 151, 330, 330, 158, 330, 274, + + 330, 330, 330, 330, 330, 330, 330, 330, 330, 172, + 330, 276, 294, 330, 183, 330, 195, 204, 330, 330, + 330, 219, 0, 219, 0, 0, 330, 51, 330, 330, + 82, 330, 94, 330, 330, 330, 121, 330, 330, 330, + 140, 330, 330, 157, 330, 330, 164, 165, 166, 330, + 168, 330, 330, 330, 330, 330, 330, 330, 330, 330, + 218, 0, 0, 0, 330, 330, 190, 85, 112, 114, + 116, 330, 330, 136, 330, 153, 264, 275, 330, 330, + 330, 330, 173, 330, 330, 330, 330, 330, 190, 0, + 0, 330, 61, 330, 330, 330, 330, 150, 330, 169, + + 170, 330, 179, 148, 330, 330, 217, 0, 312, 48, + 330, 330, 124, 149, 330, 330, 330, 209, 313, 330, + 330, 330, 330, 205, 330, 330, 330, 330, 113, 115, + 330, 330, 330, 171, 330, 330, 167, 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -621,14 +598,14 @@ static yyconst flex_int32_t yy_ec[256] = 1, 5, 6, 7, 8, 1, 1, 9, 10, 11, 12, 13, 14, 1, 15, 16, 17, 18, 18, 19, 18, 18, 18, 18, 18, 18, 18, 1, 1, 20, - 21, 22, 1, 1, 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, 50, 51, 1, 52, 53, 54, 55, 56, 57, - - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 1, 1, 1, 1, + 21, 22, 1, 1, 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, + 23, 24, 25, 1, 26, 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, 54, 55, 56, 57, 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, 1, @@ -645,1447 +622,1004 @@ static yyconst flex_int32_t yy_ec[256] = 1, 1, 1, 1, 1 } ; -static yyconst flex_int32_t yy_meta[85] = +static yyconst flex_int32_t yy_meta[59] = { 0, 1, 1, 2, 1, 3, 1, 4, 1, 1, 5, 1, 1, 1, 1, 6, 7, 7, 7, 7, 1, - 6, 1, 7, 7, 7, 7, 7, 7, 7, 7, + 6, 1, 1, 8, 9, 6, 1, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, - 7, 7, 7, 7, 7, 7, 7, 7, 1, 8, - 9, 6, 1, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, - 7, 7, 7, 7, 7, 7, 7, 7, 7, 1, - 1, 1, 1, 1 + 7, 7, 7, 1, 1, 1, 1, 1 } ; -static yyconst flex_int16_t yy_base[1945] = +static yyconst flex_int16_t yy_base[1958] = { 0, - 0, 0, 84, 0, 168, 0, 252, 0, 335, 339, - 340, 341, 942, 4399, 350, 4399, 4399, 0, 924, 340, - 342, 400, 357, 351, 400, 460, 421, 468, 401, 484, - 482, 400, 320, 335, 533, 534, 473, 585, 593, 321, - 549, 640, 646, 655, 496, 700, 0, 880, 845, 4399, - 4399, 4399, 329, 333, 341, 375, 391, 520, 406, 394, - 394, 412, 537, 405, 410, 459, 533, 375, 607, 466, - 707, 716, 702, 595, 665, 471, 570, 532, 723, 663, - 476, 752, 761, 724, 763, 772, 782, 538, 4399, 840, - 846, 900, 835, 872, 827, 836, 838, 842, 796, 350, - - 746, 716, 588, 760, 647, 467, 526, 762, 573, 832, - 835, 762, 639, 832, 648, 714, 838, 321, 680, 744, - 4399, 4399, 866, 746, 739, 0, 777, 815, 868, 878, - 0, 717, 700, 888, 893, 0, 895, 620, 686, 953, - 835, 910, 873, 854, 949, 844, 883, 855, 940, 864, - 910, 0, 866, 917, 901, 954, 945, 0, 905, 942, - 0, 962, 956, 953, 955, 976, 967, 954, 957, 962, - 1015, 964, 1007, 964, 1001, 1003, 1023, 1025, 1007, 1027, - 1017, 1029, 1034, 1026, 1023, 1008, 1023, 1068, 0, 1035, - 1030, 0, 1038, 0, 1063, 1074, 1077, 1034, 1061, 1071, - - 1081, 1077, 1078, 1093, 1099, 1101, 1083, 1099, 1087, 1088, - 1084, 1095, 1131, 1133, 1127, 1127, 1145, 1137, 1124, 1148, - 1148, 1142, 1154, 1152, 1155, 1137, 1166, 1152, 1155, 1167, - 1181, 1190, 1158, 1202, 1190, 0, 0, 1198, 0, 1190, - 1200, 1210, 1212, 1196, 1212, 1197, 1199, 1218, 617, 4399, - 566, 560, 1213, 1220, 1218, 1206, 1226, 1228, 1221, 1213, - 1216, 1227, 1250, 1239, 1238, 1240, 1265, 1258, 1266, 568, - 1276, 4399, 1263, 1272, 1275, 1266, 1259, 1275, 1280, 1281, - 1270, 1276, 1277, 1278, 1293, 1323, 1277, 1301, 1298, 1295, - 1306, 1306, 1322, 0, 1309, 1325, 1311, 1312, 1328, 1323, - - 1322, 1339, 1315, 1341, 1331, 1332, 1365, 1336, 1329, 1342, - 4399, 534, 4399, 524, 1387, 1392, 1394, 929, 1397, 1408, - 4399, 4399, 4399, 4399, 1360, 1360, 1355, 1392, 1393, 1388, - 1403, 1401, 1397, 1399, 4399, 1394, 1401, 4399, 1397, 4399, - 1413, 1398, 1407, 1406, 1405, 1405, 502, 1430, 1431, 1439, - 4399, 473, 330, 4399, 4399, 505, 4399, 483, 0, 4399, - 4399, 4399, 1468, 1474, 530, 564, 795, 1418, 0, 1478, - 1484, 905, 907, 1447, 1453, 1457, 1457, 1470, 1467, 1473, - 1482, 1482, 1484, 1476, 1467, 1485, 1473, 1474, 1477, 1493, - 1478, 1479, 1484, 1517, 0, 1500, 1481, 1533, 1483, 1491, - - 1499, 1504, 1491, 1497, 0, 1501, 1517, 1536, 1525, 1525, - 1526, 1536, 1537, 1530, 1532, 1550, 1542, 0, 1544, 1544, - 1539, 1556, 1540, 1561, 1563, 1560, 1563, 1566, 1566, 1553, - 1580, 1580, 1582, 1588, 1584, 1598, 1599, 1596, 1605, 1607, - 1592, 1608, 1609, 0, 0, 1604, 1606, 1648, 1611, 1630, - 1617, 1620, 1702, 1628, 1627, 1641, 1654, 1641, 1660, 1656, - 1651, 0, 473, 1671, 1673, 1681, 1661, 1662, 1664, 1684, - 1707, 1688, 1702, 1716, 1710, 1708, 1726, 1709, 1724, 1712, - 1728, 1729, 1743, 1741, 1728, 1740, 1749, 1745, 1753, 0, - 1761, 1766, 1752, 1764, 1768, 1762, 1775, 1758, 1767, 0, - - 1779, 1771, 1768, 1765, 1782, 1764, 1779, 1787, 1779, 1793, - 1790, 1793, 1788, 1799, 1812, 1786, 0, 0, 1791, 0, - 0, 1801, 1807, 1808, 1810, 1825, 1825, 1830, 1831, 1833, - 4399, 1830, 1823, 1838, 1829, 1833, 1841, 1835, 1835, 1831, - 4399, 405, 4399, 1834, 1839, 1841, 1855, 1856, 1855, 1842, - 1845, 1861, 1862, 1868, 1870, 1876, 1878, 1871, 1880, 1876, - 1890, 1883, 1889, 1896, 1897, 1901, 1889, 1901, 1887, 382, - 331, 379, 368, 916, 1356, 1912, 1947, 1358, 1439, 1910, - 1900, 1910, 1905, 1899, 1903, 1918, 1917, 1910, 1919, 1930, - 1936, 1938, 4399, 1933, 1938, 1938, 1941, 1937, 1956, 1952, - - 1942, 1948, 1967, 1590, 1644, 1973, 4399, 1977, 1982, 1953, - 1960, 1975, 1961, 1983, 373, 1979, 1970, 1980, 1972, 1996, - 1981, 1996, 0, 1997, 2002, 1992, 1986, 1987, 1990, 2000, - 2005, 1998, 1998, 2011, 1998, 2016, 2019, 0, 2010, 2023, - 2004, 2026, 2019, 2037, 2029, 2041, 2027, 0, 2046, 2049, - 2041, 2040, 2057, 2058, 2063, 0, 2045, 2046, 2058, 2050, - 2054, 2063, 2067, 2055, 2071, 2073, 2059, 2057, 2074, 2066, - 2067, 0, 2075, 2083, 2076, 2079, 2099, 2090, 2090, 2105, - 0, 2099, 2115, 2111, 0, 2103, 2109, 2117, 2122, 2123, - 2115, 2126, 2110, 2145, 2128, 2125, 2116, 2134, 2122, 2123, - - 2123, 2127, 2131, 2141, 2146, 2148, 2147, 2162, 2169, 2165, - 2166, 2162, 2174, 2174, 0, 2178, 0, 2187, 2184, 2171, - 2185, 2183, 2187, 2178, 2188, 2193, 2199, 2200, 2195, 2207, - 2201, 2192, 2195, 2208, 2196, 2216, 2211, 2227, 2229, 2212, - 2235, 2237, 2227, 2233, 2229, 2249, 2242, 2240, 2233, 2251, - 2251, 2254, 2243, 2256, 2250, 2252, 2245, 2255, 2251, 2249, - 2267, 2259, 2270, 2278, 0, 2290, 0, 2272, 2267, 2272, - 2282, 2282, 0, 2290, 2288, 2291, 2307, 2307, 2298, 2306, - 0, 2310, 2298, 2313, 2305, 2315, 2311, 2306, 2312, 2323, - 2304, 2313, 2320, 2329, 4399, 2331, 2318, 2320, 2328, 2334, - - 0, 2339, 0, 2351, 2340, 2352, 2352, 2361, 2357, 2351, - 0, 2357, 2361, 0, 4399, 2378, 2380, 4399, 2365, 2375, - 2372, 2381, 2366, 2381, 2373, 2382, 2371, 2375, 2376, 2376, - 2386, 2395, 2389, 2385, 2388, 2399, 2399, 2413, 2404, 2399, - 4399, 0, 2391, 0, 2417, 2408, 0, 2405, 2417, 0, - 2430, 2419, 2436, 2425, 2426, 2444, 0, 2443, 2443, 2448, - 2437, 2449, 2455, 2438, 2459, 2460, 0, 2451, 2445, 2447, - 2448, 0, 0, 2459, 0, 2450, 2451, 0, 2455, 2472, - 2459, 2457, 2477, 2467, 0, 2468, 2475, 0, 2494, 2483, - 0, 0, 2487, 2501, 2509, 2490, 2506, 0, 2513, 2505, - - 0, 2514, 2492, 2519, 2516, 2529, 0, 2509, 0, 2513, - 2529, 2538, 2529, 2532, 2552, 2535, 2546, 2566, 2553, 2551, - 2558, 2569, 2575, 2551, 2577, 2567, 2578, 2570, 2583, 2566, - 0, 2562, 2585, 2565, 2572, 2591, 2578, 2574, 2581, 2596, - 2574, 2599, 2591, 2602, 0, 2593, 0, 2609, 2605, 2601, - 2607, 2614, 2610, 2628, 2620, 2616, 2637, 2638, 2623, 2628, - 2625, 2629, 2632, 2628, 2634, 2635, 2642, 2644, 2653, 2646, - 2637, 2654, 2653, 2654, 2650, 2666, 2660, 2670, 2663, 2671, - 2670, 0, 0, 2696, 2672, 2672, 2680, 2696, 2698, 2690, - 0, 2701, 2688, 2699, 2697, 0, 2710, 2711, 2699, 2697, - - 0, 2716, 2712, 2714, 2699, 0, 0, 2705, 2729, 2714, - 2718, 0, 4399, 4399, 2722, 2725, 2748, 4399, 4399, 2749, - 2751, 2744, 2753, 2739, 2760, 4399, 2747, 4399, 2762, 0, - 2745, 2763, 2748, 2765, 2772, 2756, 2765, 2777, 2775, 2762, - 2775, 2777, 2782, 2772, 2783, 2786, 2793, 2802, 2788, 2805, - 2814, 4399, 2807, 2811, 2811, 2817, 2810, 2798, 2827, 2828, - 2815, 2812, 2826, 2821, 2817, 2827, 0, 2834, 0, 0, - 2821, 0, 2824, 2823, 2827, 2847, 0, 2829, 2834, 2834, - 2844, 2839, 2845, 0, 2860, 2855, 2856, 2868, 0, 2873, - 0, 2872, 0, 2862, 0, 2869, 2885, 2866, 2883, 0, - - 0, 2877, 2878, 2893, 2874, 2872, 2880, 0, 2894, 2889, - 2901, 2902, 2897, 2900, 2904, 2890, 2910, 2899, 2896, 2930, - 2915, 0, 0, 2915, 2906, 2918, 2918, 2921, 2924, 2924, - 2926, 2925, 2944, 2943, 2936, 2943, 2951, 2953, 2943, 2940, - 0, 2941, 0, 2947, 2945, 2946, 2946, 2947, 2946, 2967, - 2966, 2964, 2973, 2978, 2967, 2964, 2977, 2992, 0, 0, - 2994, 374, 2976, 2983, 3000, 3000, 2983, 2998, 2997, 2992, - 0, 0, 0, 0, 3010, 3003, 3003, 3000, 3016, 3020, - 3003, 3006, 3006, 3012, 3027, 3009, 0, 3017, 0, 3012, - 3031, 3033, 3020, 3043, 3040, 3031, 3046, 3060, 3054, 0, - - 0, 3052, 0, 0, 3044, 3048, 3048, 3050, 3068, 3068, - 3055, 3064, 3065, 3080, 3071, 3068, 3080, 3067, 0, 0, - 3073, 4399, 3074, 3065, 4399, 3071, 3092, 3082, 3077, 3099, - 3101, 3081, 0, 3087, 4399, 4399, 3083, 3099, 3098, 3118, - 3111, 3112, 3105, 3118, 3127, 4399, 3118, 3129, 3117, 3126, - 3122, 4399, 3139, 3140, 335, 3128, 3137, 3146, 3128, 3145, - 3132, 3137, 3148, 3140, 3153, 0, 3145, 3153, 0, 3144, - 3163, 0, 3163, 0, 3172, 3176, 3172, 0, 3168, 0, - 3175, 3178, 3182, 3180, 3185, 3194, 3179, 3199, 3186, 3191, - 0, 3197, 3202, 3195, 3203, 0, 3200, 3206, 3209, 3195, - - 3209, 3191, 3203, 3203, 3206, 0, 3210, 3217, 0, 3223, - 3236, 3220, 3238, 3231, 3230, 3241, 3249, 0, 3247, 3246, - 3251, 3259, 3256, 0, 3253, 3263, 3244, 3257, 3249, 3249, - 3265, 0, 3262, 3261, 3266, 3270, 3264, 0, 3264, 0, - 3266, 3280, 3271, 3309, 3269, 0, 3293, 3293, 0, 3295, - 0, 3296, 3311, 3293, 3311, 3312, 3305, 3310, 3322, 3326, - 3326, 3323, 3314, 3326, 3318, 3323, 3327, 3335, 3326, 3335, - 3325, 3328, 3345, 3368, 3351, 3353, 3360, 3361, 0, 3374, - 3360, 3362, 3377, 3378, 3366, 3376, 3374, 3376, 3373, 3381, - 3375, 3390, 3385, 3377, 3379, 3427, 3395, 4399, 3382, 4399, - - 3389, 3386, 4399, 3387, 3401, 3409, 3399, 3398, 3418, 3426, - 4399, 3430, 3424, 4399, 3430, 3425, 3425, 3431, 3434, 0, - 3430, 3432, 3430, 3439, 3448, 3441, 3452, 3457, 3442, 0, - 3450, 3454, 3464, 3452, 3455, 3475, 0, 3469, 3480, 3481, - 3478, 3486, 0, 3491, 3490, 3478, 0, 3484, 3483, 3494, - 3491, 3493, 3488, 3489, 3488, 3492, 3499, 3487, 3488, 3503, - 3500, 3515, 3502, 3517, 3526, 3526, 3509, 3533, 0, 0, - 0, 3510, 3528, 3528, 3543, 3529, 3544, 3549, 3532, 3556, - 0, 0, 3546, 3559, 3549, 3563, 3551, 3559, 3551, 3569, - 3556, 3571, 3553, 3567, 0, 3568, 3560, 0, 3564, 3574, - - 0, 3573, 3574, 3580, 0, 3583, 3593, 3584, 3589, 0, - 3594, 0, 3598, 3609, 0, 3603, 3590, 3611, 3602, 3609, - 3624, 3606, 3612, 0, 3606, 0, 3626, 3619, 3628, 0, - 0, 0, 3619, 3615, 3622, 3633, 3626, 4399, 3637, 3628, - 4399, 3643, 0, 4399, 3646, 4399, 4399, 3625, 3634, 4399, - 3639, 3657, 4399, 3648, 3654, 3656, 3657, 0, 3671, 0, - 3663, 0, 3662, 0, 3676, 3670, 3669, 0, 3668, 3676, - 0, 3679, 3684, 3688, 0, 3677, 0, 0, 3687, 0, - 3682, 0, 0, 3692, 3681, 3698, 3703, 0, 3702, 3705, - 3701, 3698, 3712, 3709, 3711, 3714, 3715, 3702, 3727, 0, - - 3716, 3728, 3728, 3718, 3735, 3740, 3741, 3729, 3749, 0, - 3747, 3745, 3735, 3747, 3743, 3753, 3740, 3749, 3758, 3752, - 3763, 3755, 3746, 3758, 3753, 3749, 3763, 3773, 3774, 3770, - 3781, 3783, 3780, 3794, 0, 0, 3784, 3780, 3788, 3792, - 3794, 3796, 3807, 0, 0, 0, 3802, 0, 3815, 0, - 3796, 0, 3804, 3805, 3800, 3804, 4399, 3809, 4399, 3810, - 3813, 3823, 3824, 3813, 3814, 4399, 3823, 3827, 3817, 0, - 3835, 3839, 0, 0, 3821, 3830, 3848, 0, 0, 3846, - 3847, 0, 3844, 0, 0, 0, 0, 3847, 3869, 3872, - 3856, 3875, 3854, 0, 0, 3874, 3861, 3873, 3870, 3882, - - 3870, 3881, 3881, 0, 3882, 3870, 3882, 3879, 3880, 3892, - 3892, 3887, 3875, 0, 3893, 3888, 3886, 3907, 3908, 3908, - 3905, 3907, 3917, 3927, 3933, 3917, 3918, 0, 3939, 0, - 0, 3921, 0, 3941, 0, 0, 0, 3925, 0, 3939, - 3925, 3932, 3944, 0, 3939, 4399, 4399, 4399, 3929, 4399, - 4399, 4399, 4399, 3932, 3956, 0, 3937, 3933, 3931, 0, - 3943, 3945, 3944, 3943, 0, 3958, 3969, 3981, 3968, 3972, - 0, 0, 0, 0, 3978, 3979, 3992, 0, 0, 3989, - 0, 0, 3985, 3997, 0, 3998, 0, 4003, 3987, 3998, - 3987, 4001, 3991, 4001, 4002, 4004, 0, 3999, 0, 0, - - 4012, 0, 4002, 0, 4014, 4000, 4012, 3999, 0, 4011, - 4399, 4021, 4027, 4015, 0, 4016, 4029, 0, 4035, 0, - 4049, 4054, 4041, 0, 4053, 4057, 4052, 0, 4040, 4054, - 0, 4049, 4057, 0, 0, 0, 4052, 0, 4045, 4046, - 4059, 4063, 4068, 4074, 4073, 4075, 4061, 0, 4068, 4057, - 4087, 4072, 4083, 0, 0, 4085, 4090, 0, 4079, 4098, - 0, 4110, 0, 0, 0, 4102, 4116, 4117, 4119, 0, - 4121, 4122, 4114, 4111, 4111, 4399, 4127, 321, 4113, 0, - 4128, 4129, 4130, 4132, 0, 4117, 0, 0, 4136, 0, - 0, 4125, 4128, 0, 302, 4399, 0, 4129, 4130, 0, - - 0, 4131, 4132, 4136, 0, 4399, 4135, 4136, 4150, 4155, - 0, 4159, 4164, 4176, 4168, 0, 0, 4169, 4168, 4175, - 0, 4173, 4171, 0, 4399, 4242, 4251, 4260, 4269, 4273, - 4280, 4289, 4298, 4301, 4310, 4319, 4328, 4337, 4346, 4355, - 4362, 4371, 4380, 4389 + 0, 0, 56, 112, 168, 0, 226, 0, 59, 63, + 67, 73, 2416, 2417, 103, 2417, 2417, 0, 2403, 94, + 57, 284, 101, 2389, 82, 118, 143, 315, 86, 316, + 317, 62, 140, 2371, 49, 336, 113, 90, 343, 351, + 2364, 323, 367, 373, 382, 136, 396, 0, 2355, 2417, + 2417, 2417, 165, 2369, 2370, 2376, 2356, 2366, 192, 2377, + 2359, 2355, 2370, 320, 2356, 2359, 2367, 190, 332, 2370, + 403, 412, 398, 418, 94, 2365, 181, 338, 419, 353, + 2368, 423, 431, 368, 422, 443, 448, 98, 2417, 478, + 490, 2374, 2371, 2384, 2369, 480, 376, 484, 2370, 156, + + 2369, 466, 383, 372, 30, 312, 427, 2345, 2343, 77, + 2346, 472, 388, 377, 2344, 450, 2343, 2341, 2347, 2327, + 2368, 2417, 2417, 503, 2373, 2369, 0, 2342, 2341, 503, + 513, 0, 2364, 2363, 502, 506, 0, 510, 517, 2357, + 0, 2337, 521, 529, 2347, 2417, 2335, 511, 2323, 440, + 2320, 106, 2326, 476, 0, 2326, 2338, 2320, 498, 510, + 0, 2315, 2316, 0, 504, 2326, 2321, 2321, 521, 422, + 2314, 512, 2319, 528, 2318, 524, 2314, 2312, 2312, 2325, + 526, 2305, 2323, 2311, 2321, 540, 2316, 2311, 2294, 2306, + 528, 0, 544, 2303, 0, 2309, 0, 538, 437, 551, + + 2303, 2295, 534, 552, 2307, 2294, 2306, 2309, 2308, 2288, + 2302, 541, 2288, 2281, 2283, 560, 183, 2298, 554, 568, + 2295, 2280, 2299, 2294, 2286, 2296, 563, 2295, 2274, 533, + 2287, 2280, 2290, 554, 574, 2279, 581, 2274, 0, 0, + 2280, 0, 2270, 2275, 2283, 2283, 2265, 2279, 2262, 2262, + 2279, 2250, 2249, 2279, 600, 2417, 2269, 2274, 2268, 2253, + 2271, 579, 2264, 2254, 2254, 2263, 336, 2266, 2240, 2240, + 2263, 2254, 2260, 586, 2258, 2259, 583, 2239, 2252, 2255, + 2252, 583, 2243, 593, 2239, 2252, 606, 2227, 2249, 2244, + 2229, 2236, 2226, 2240, 0, 2225, 2239, 2223, 2218, 465, + + 2226, 2223, 2238, 2212, 2236, 2223, 588, 598, 2223, 2213, + 2224, 2417, 2234, 2417, 2233, 622, 628, 630, 637, 639, + 649, 2417, 2417, 2417, 2417, 2232, 2417, 437, 641, 640, + 2229, 634, 2417, 2224, 2222, 2201, 2219, 632, 2209, 391, + 2214, 2207, 2207, 2417, 634, 2206, 2196, 2417, 2198, 2417, + 2212, 2195, 2202, 2199, 628, 2197, 2192, 2417, 2231, 2417, + 2227, 0, 2417, 2417, 659, 665, 667, 669, 671, 2200, + 0, 674, 680, 678, 682, 2201, 2199, 2194, 2190, 2195, + 2188, 2191, 2197, 2195, 2195, 2185, 2174, 2190, 2175, 2174, + 2175, 2189, 2172, 2171, 2174, 669, 0, 2187, 2166, 675, + + 2164, 2169, 2175, 2178, 2162, 2166, 0, 2165, 2161, 2173, + 2158, 2156, 2155, 665, 2162, 2153, 2152, 675, 2158, 0, + 2157, 2155, 2148, 2163, 2145, 2162, 2160, 2154, 2155, 672, + 2156, 2140, 2154, 2145, 2143, 672, 2141, 2150, 2147, 2141, + 2147, 2147, 2130, 2144, 2143, 0, 0, 2136, 2135, 693, + 2136, 681, 2139, 2138, 716, 2137, 2121, 2123, 2134, 2118, + 2132, 2123, 2116, 0, 2146, 2130, 2129, 680, 2113, 2110, + 2109, 2125, 685, 2120, 2112, 686, 694, 2110, 156, 2106, + 2116, 2102, 2116, 2111, 2118, 2113, 2096, 2101, 2107, 2100, + 2101, 0, 2107, 536, 2095, 2103, 2104, 2096, 2106, 2086, + + 2093, 0, 2102, 2091, 2086, 2081, 2095, 2074, 2086, 2092, + 2082, 2094, 2089, 2088, 596, 2091, 698, 2071, 0, 0, + 2070, 0, 0, 2073, 2090, 2417, 2075, 2067, 2067, 2079, + 2076, 2077, 2076, 2075, 2417, 2069, 2060, 2072, 2061, 2063, + 2069, 2061, 2058, 2051, 2417, 2051, 2054, 2054, 2066, 2065, + 2060, 2044, 2043, 2055, 2053, 2055, 712, 2054, 2053, 2038, + 2044, 2037, 2049, 2039, 2043, 2047, 2045, 2047, 2032, 2042, + 2026, 2047, 726, 2046, 732, 718, 735, 741, 750, 752, + 756, 46, 736, 703, 751, 755, 2042, 2027, 2035, 2027, + 2019, 2019, 2031, 2026, 2015, 2021, 2028, 2012, 2026, 2023, + + 2024, 2417, 2010, 2013, 2010, 2010, 2004, 2020, 2017, 2013, + 765, 2417, 767, 769, 2006, 2004, 2013, 1997, 2015, 2023, + 2007, 1994, 2000, 1989, 2009, 1990, 2003, 0, 2002, 744, + 1994, 1986, 1984, 1985, 1993, 1996, 1985, 747, 1992, 1977, + 1992, 1991, 0, 1979, 1990, 1968, 1988, 1973, 1985, 1975, + 1983, 1966, 0, 1981, 1980, 1969, 1964, 1977, 1976, 1979, + 0, 1959, 1958, 1968, 1957, 1959, 1966, 1968, 1952, 1966, + 1965, 1948, 1944, 1958, 1948, 1946, 0, 1951, 753, 1950, + 1950, 1956, 1945, 1941, 1953, 0, 1943, 763, 1951, 0, + 1937, 1939, 1944, 1947, 1946, 1936, 1944, 1926, 765, 1942, + + 1937, 1924, 1940, 1925, 1923, 1921, 1922, 1924, 1929, 1932, + 1931, 1921, 1929, 767, 1928, 1923, 1913, 1921, 1917, 0, + 1919, 0, 1926, 745, 1906, 1916, 1912, 1914, 1901, 1909, + 1911, 1914, 1913, 1905, 1915, 1906, 1894, 1895, 1905, 1891, + 760, 1892, 1904, 1903, 1882, 1901, 1900, 1886, 1888, 1869, + 1878, 1865, 1859, 1850, 1854, 1850, 1851, 1798, 1799, 1772, + 1763, 81, 135, 485, 562, 591, 608, 650, 759, 0, + 768, 0, 724, 722, 759, 765, 760, 0, 767, 763, + 764, 780, 780, 774, 782, 0, 786, 773, 788, 780, + 790, 784, 779, 784, 794, 775, 783, 790, 798, 2417, + + 799, 786, 787, 788, 790, 0, 795, 0, 805, 793, + 803, 801, 809, 803, 796, 0, 802, 806, 0, 2417, + 828, 830, 825, 826, 829, 2417, 2417, 814, 824, 821, + 830, 813, 828, 819, 827, 816, 819, 835, 821, 820, + 823, 830, 839, 832, 826, 829, 840, 831, 841, 0, + 833, 0, 851, 841, 0, 836, 846, 0, 855, 841, + 853, 841, 842, 858, 0, 857, 856, 859, 848, 860, + 865, 848, 869, 870, 0, 860, 854, 856, 856, 0, + 0, 867, 0, 858, 859, 0, 862, 877, 864, 860, + 879, 867, 0, 866, 869, 0, 885, 869, 0, 0, + + 872, 886, 889, 874, 890, 0, 894, 885, 0, 895, + 872, 898, 895, 905, 0, 887, 0, 885, 900, 911, + 898, 897, 913, 893, 900, 919, 906, 902, 910, 920, + 925, 901, 926, 916, 926, 918, 931, 914, 0, 909, + 932, 912, 918, 937, 924, 920, 927, 941, 917, 942, + 932, 942, 0, 931, 0, 945, 937, 930, 931, 937, + 933, 949, 941, 936, 956, 957, 941, 946, 942, 946, + 949, 945, 950, 951, 958, 959, 968, 961, 952, 969, + 967, 965, 957, 971, 964, 970, 961, 964, 962, 0, + 0, 982, 965, 964, 972, 984, 985, 977, 0, 987, + + 974, 985, 983, 0, 995, 996, 984, 981, 0, 999, + 995, 996, 980, 0, 0, 986, 1006, 989, 991, 0, + 2417, 2417, 991, 992, 1010, 2417, 2417, 1010, 1012, 1003, + 1012, 997, 1017, 2417, 1004, 2417, 1014, 0, 1002, 1021, + 1003, 1017, 1026, 1009, 1017, 1030, 1034, 1036, 1038, 1033, + 1020, 1034, 1032, 1037, 1026, 1036, 1037, 1042, 1047, 1048, + 1031, 1043, 2417, 1051, 2417, 1044, 1046, 1046, 1051, 2417, + 1043, 1042, 1039, 1051, 1046, 1042, 1051, 0, 1058, 0, + 0, 1045, 0, 1048, 1047, 1050, 1068, 0, 1050, 1053, + 1052, 1059, 1054, 1060, 0, 1071, 1063, 1059, 1070, 0, + + 1075, 0, 1072, 0, 1062, 0, 1068, 1083, 1064, 1081, + 0, 0, 1072, 1073, 1088, 1069, 1066, 1074, 0, 1088, + 1082, 1094, 1095, 1090, 1093, 1096, 1080, 1100, 1087, 1083, + 1103, 1100, 0, 0, 1100, 1091, 1099, 1090, 1091, 1092, + 1093, 1094, 1092, 1111, 1110, 1100, 1107, 1115, 1117, 1106, + 1103, 0, 1104, 0, 1109, 1107, 1108, 1108, 1109, 1107, + 1126, 1125, 1121, 1129, 1131, 1120, 1117, 1126, 1138, 0, + 0, 1135, 1153, 1117, 1124, 1139, 1139, 1121, 1135, 1134, + 1129, 0, 0, 0, 0, 1144, 1137, 1137, 1134, 1149, + 1153, 1136, 1138, 1138, 1144, 1159, 1141, 0, 1148, 0, + + 1141, 1160, 1160, 1146, 1166, 1163, 1154, 1165, 1168, 1171, + 0, 0, 1164, 0, 0, 1154, 1156, 1156, 1157, 1174, + 1174, 1161, 1167, 1167, 1182, 1172, 1169, 1181, 1168, 0, + 0, 1174, 2417, 1175, 1166, 2417, 1172, 1192, 1180, 1175, + 1195, 1196, 1173, 0, 1179, 1202, 1203, 1204, 2417, 2417, + 1178, 1190, 1187, 1202, 1195, 1196, 1187, 1200, 1197, 1209, + 2417, 1199, 1210, 1198, 1204, 1200, 2417, 1205, 1212, 1221, + 1202, 1219, 1206, 1211, 1222, 1213, 1224, 0, 1216, 1222, + 0, 1212, 1226, 0, 1222, 0, 1228, 1227, 1222, 0, + 1218, 0, 1223, 1226, 1229, 1226, 1231, 1240, 1225, 1245, + + 1231, 1236, 0, 1242, 1247, 1239, 1247, 0, 1244, 1249, + 1252, 1238, 1252, 1234, 1245, 1243, 1246, 0, 1248, 1254, + 0, 1255, 1264, 1245, 1258, 1250, 1249, 1258, 1266, 0, + 1263, 1261, 1266, 1274, 1271, 0, 1268, 1277, 1258, 1271, + 1263, 1262, 1278, 0, 1275, 1273, 1278, 1282, 1276, 0, + 1276, 0, 1274, 1289, 1278, 1292, 1277, 0, 1296, 1292, + 0, 1285, 0, 1281, 1296, 1277, 1294, 1295, 1288, 1292, + 1304, 1307, 1308, 1305, 1296, 1307, 1299, 1304, 1308, 1316, + 1306, 1313, 1303, 1304, 1320, 1323, 1322, 1321, 1325, 1318, + 0, 1329, 1315, 1316, 1330, 1331, 1319, 1329, 1327, 1328, + + 1325, 1333, 1327, 1341, 1336, 1328, 1329, 1346, 1345, 1353, + 1354, 2417, 2417, 1334, 2417, 1340, 1335, 2417, 1336, 1348, + 2417, 1356, 1341, 1337, 1354, 1357, 2417, 1358, 1353, 1350, + 1356, 1358, 0, 1354, 1355, 1353, 1362, 1369, 1362, 1373, + 1374, 1359, 0, 1366, 1368, 1378, 1364, 1366, 1381, 0, + 1372, 1383, 1381, 1378, 1386, 0, 1391, 1388, 1375, 0, + 1381, 1378, 1389, 1385, 1386, 1381, 1382, 1381, 1385, 1391, + 1379, 1380, 1393, 1390, 1405, 1388, 1403, 1411, 1409, 1392, + 1414, 0, 0, 0, 1390, 1403, 1400, 1415, 1398, 1413, + 1418, 1401, 1423, 0, 0, 1412, 1425, 1413, 1427, 1414, + + 1421, 1413, 1431, 1418, 1433, 1414, 1427, 0, 1430, 1419, + 0, 1422, 1428, 0, 1427, 1428, 1431, 0, 1432, 1441, + 1427, 1429, 0, 1434, 0, 1435, 1446, 0, 1441, 1428, + 1447, 1437, 1444, 1457, 1439, 1444, 0, 1437, 0, 1457, + 1450, 1459, 0, 0, 0, 1450, 1445, 1452, 1463, 1454, + 2417, 1465, 1456, 2417, 1467, 0, 1475, 1476, 2417, 1472, + 2417, 2417, 1450, 1457, 2417, 1462, 1478, 2417, 1466, 1467, + 0, 1478, 0, 1470, 0, 1468, 0, 1480, 1472, 1471, + 0, 1470, 1477, 0, 1479, 1484, 1488, 0, 1477, 0, + 0, 1487, 0, 1481, 0, 0, 1491, 1480, 1495, 1500, + + 0, 1499, 1500, 1495, 1492, 1505, 1502, 1503, 1506, 1505, + 1491, 1511, 0, 1497, 1509, 1506, 1496, 1512, 1515, 1514, + 1500, 1520, 0, 1517, 1514, 1504, 1516, 1512, 1522, 1508, + 1517, 1526, 1518, 1529, 1521, 1510, 1521, 1516, 1511, 1525, + 1534, 1535, 1529, 1539, 1536, 1530, 1544, 0, 0, 1531, + 1527, 1534, 1536, 1536, 1536, 1547, 0, 0, 0, 1541, + 0, 1553, 0, 1534, 0, 1542, 1543, 1538, 1541, 2417, + 1546, 2417, 1547, 1548, 1565, 1566, 1560, 1561, 1548, 1548, + 2417, 1549, 0, 1567, 1570, 0, 0, 1552, 1559, 1565, + 0, 0, 1560, 1561, 0, 1558, 0, 0, 0, 0, + + 1559, 1579, 1580, 1564, 1582, 1560, 0, 0, 1581, 1568, + 1580, 1577, 1589, 1577, 1588, 1588, 0, 1589, 1576, 1588, + 1585, 1584, 1595, 1595, 1589, 1577, 0, 1594, 1589, 1585, + 1605, 1596, 1593, 1590, 1591, 1599, 1607, 1611, 1595, 1595, + 0, 1615, 0, 0, 1597, 0, 1617, 0, 0, 0, + 1601, 0, 1615, 1601, 1608, 1620, 0, 1615, 2417, 2417, + 2417, 1605, 1628, 1629, 2417, 2417, 2417, 2417, 0, 1613, + 1609, 1605, 0, 1616, 1618, 1615, 1609, 0, 1623, 1624, + 1632, 1619, 1622, 0, 0, 0, 0, 1628, 1628, 1639, + 0, 0, 1636, 0, 0, 1631, 1643, 0, 1644, 0, + + 1649, 1633, 1644, 1633, 1647, 1637, 1647, 1648, 1649, 0, + 1644, 0, 0, 1657, 0, 1647, 0, 1658, 1643, 1655, + 1640, 0, 1651, 2417, 1669, 1670, 1657, 0, 1654, 1657, + 0, 1659, 0, 1668, 1669, 1656, 0, 1667, 1670, 1666, + 0, 1654, 1668, 0, 1663, 1671, 0, 0, 0, 1666, + 0, 1659, 1660, 1673, 1676, 1681, 1687, 1686, 1687, 1673, + 0, 1680, 1697, 1699, 1683, 1694, 0, 0, 1696, 1697, + 0, 1676, 1691, 0, 1700, 0, 0, 0, 1691, 1702, + 1703, 1704, 0, 1705, 1706, 1698, 1695, 1695, 2417, 1717, + 1718, 1699, 0, 1713, 1714, 1715, 1716, 0, 1703, 0, + + 0, 1722, 0, 0, 1711, 1713, 0, 1730, 2417, 0, + 1715, 1716, 0, 0, 1717, 1717, 1720, 0, 2417, 1719, + 1720, 1732, 1725, 0, 1725, 1726, 1737, 1726, 0, 0, + 1727, 1725, 1732, 0, 1730, 1728, 0, 2417, 1773, 1782, + 1791, 1800, 1809, 1813, 1820, 1829, 1832, 1841, 1850, 1859, + 1868, 1877, 1886, 1893, 1902, 1911, 1920 } ; -static yyconst flex_int16_t yy_def[1945] = +static yyconst flex_int16_t yy_def[1958] = { 0, - 1925, 1, 1925, 3, 1925, 5, 1925, 7, 1926, 1926, - 1927, 1927, 1925, 1925, 1925, 1925, 1925, 1928, 1929, 1925, - 1930, 1931, 1925, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1932, 1933, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1934, 1925, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 35, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1935, 1936, 1925, 1925, - 1925, 1925, 1925, 1937, 1938, 1939, 1925, 1925, 1925, 1925, - 1928, 1929, 1929, 1925, 1925, 1930, 1930, 1930, 1940, 1931, - 1930, 1925, 1925, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1932, 1925, - 1933, 1933, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1941, - 1925, 1925, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1925, 1942, 1925, 1943, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1935, 1935, 1935, 1935, - 1925, 1936, 1944, 1925, 1925, 1937, 1925, 1938, 1939, 1925, - 1925, 1925, 1925, 1925, 1925, 1930, 1930, 1925, 1930, 1925, - 1925, 1925, 1925, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1941, 1925, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1942, - 1942, 1943, 1943, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - - 1935, 1935, 1935, 1944, 1944, 1925, 1925, 1925, 1925, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1930, 1930, - - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1935, 1935, 1935, - 1925, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1935, 1935, 1935, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1930, 1930, 1930, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1935, 1935, 1935, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1930, 1930, 1925, 1925, 1925, - - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1935, 1935, 1925, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1930, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1935, 1935, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1935, 1935, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1935, 1935, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1925, - 1925, 1935, 1935, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1925, 1935, - 1935, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1925, 1935, 1935, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1935, 1925, 1930, 1930, 1930, 1930, - - 1930, 1930, 1930, 1930, 1930, 1925, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, 1930, - 1930, 1930, 1930, 1930, 0, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925 + 1938, 1, 1939, 1939, 1, 5, 1938, 7, 1940, 1940, + 1941, 1941, 1938, 1938, 1938, 1938, 1938, 1942, 1943, 1938, + 1944, 1938, 1938, 1945, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1946, 1938, + 1938, 1938, 1947, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 36, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + + 1938, 1948, 1949, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1950, 1951, 1952, 1938, 1938, 1938, + 1938, 1942, 1943, 1943, 1938, 1938, 1944, 1944, 1944, 1953, + 22, 1944, 1938, 1938, 1945, 1938, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1946, 1946, 1954, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1938, 1955, 1938, 1956, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1948, 1938, 1948, 1948, 1948, + 1949, 1957, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1950, 1938, + 1951, 1952, 1938, 1938, 1938, 1938, 1938, 1944, 1944, 1938, + 1944, 1938, 1938, 1938, 1938, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1954, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1955, 1955, 1956, 1956, 1938, 1938, 1938, 1938, 1938, + 1938, 1948, 1948, 1948, 1957, 1957, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + + 1938, 1938, 1938, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1938, + 1938, 1938, 1948, 1948, 1948, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1948, 1948, 1948, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1944, 1944, 1944, 1948, 1948, 1948, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1938, 1938, + + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1944, 1944, 1948, + 1948, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1944, 1948, 1948, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1948, 1948, 1938, 1938, 1938, 1938, + 1938, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1938, 1938, 1938, + 1938, 1938, 1948, 1948, 1938, 1938, 1938, 1938, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1938, 1938, 1948, 1948, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1938, 1948, 1948, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1938, 1948, + 1948, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1948, 1938, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1938, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, + 1944, 1944, 1944, 1944, 1944, 1944, 1944, 0, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938 } ; -static yyconst flex_int16_t yy_nxt[4484] = +static yyconst flex_int16_t yy_nxt[2476] = { 0, 14, 15, 16, 15, 15, 14, 17, 18, 14, 17, 19, 14, 14, 14, 20, 21, 22, 23, 23, 14, - 14, 14, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 47, 47, 48, 14, - 14, 14, 14, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 47, 47, 49, - 14, 14, 14, 14, 14, 14, 50, 51, 14, 14, - 14, 14, 14, 14, 14, 14, 14, 14, 14, 52, - - 14, 14, 14, 14, 14, 14, 53, 14, 54, 55, - 56, 14, 14, 14, 57, 14, 14, 58, 59, 14, - 14, 60, 61, 62, 63, 64, 65, 14, 66, 14, - 14, 14, 67, 14, 14, 52, 14, 53, 14, 54, - 55, 56, 14, 14, 14, 57, 14, 14, 58, 59, - 14, 14, 60, 61, 62, 63, 64, 65, 14, 66, - 14, 14, 14, 14, 51, 14, 14, 51, 14, 15, - 50, 68, 15, 14, 17, 14, 14, 17, 19, 14, - 14, 14, 20, 21, 22, 23, 23, 14, 14, 14, - 69, 70, 71, 72, 73, 74, 75, 76, 77, 47, - - 78, 79, 80, 81, 82, 83, 47, 84, 85, 86, - 87, 47, 88, 47, 47, 47, 14, 14, 14, 14, - 14, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 47, 78, 79, 80, 81, 82, 83, 47, 84, 85, - 86, 87, 47, 88, 47, 47, 47, 49, 51, 14, - 14, 51, 89, 90, 50, 91, 90, 92, 93, 89, - 94, 95, 89, 89, 89, 89, 96, 97, 89, 98, - 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 89, 109, 89, 89, 110, 89, 111, 112, 89, - 89, 113, 114, 115, 89, 89, 116, 89, 89, 89, - - 117, 89, 89, 89, 118, 102, 103, 104, 105, 106, - 107, 108, 89, 109, 89, 89, 110, 89, 111, 112, - 89, 89, 113, 114, 115, 89, 89, 116, 89, 89, - 89, 89, 119, 89, 120, 121, 123, 815, 123, 123, - 123, 124, 123, 123, 125, 124, 127, 127, 125, 128, - 128, 130, 1906, 130, 130, 134, 185, 135, 135, 137, - 137, 186, 322, 215, 253, 187, 254, 255, 138, 353, - 323, 1896, 142, 354, 135, 135, 130, 815, 130, 130, - 605, 571, 354, 143, 144, 1414, 145, 185, 1339, 129, - 129, 847, 186, 146, 215, 253, 187, 254, 255, 138, - - 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, - 139, 139, 139, 139, 143, 144, 141, 145, 573, 139, - 256, 139, 147, 170, 146, 257, 148, 171, 260, 573, - 149, 172, 571, 261, 182, 183, 262, 173, 263, 150, - 174, 184, 151, 160, 267, 268, 161, 162, 139, 139, - 139, 256, 139, 147, 170, 543, 257, 148, 171, 260, - 163, 149, 172, 164, 261, 182, 183, 262, 173, 263, - 150, 174, 184, 151, 160, 267, 268, 161, 162, 139, - 139, 139, 139, 139, 152, 269, 153, 720, 274, 154, - 155, 163, 357, 156, 164, 200, 157, 180, 292, 158, - - 159, 165, 166, 167, 179, 323, 175, 168, 180, 201, - 176, 357, 181, 169, 177, 152, 269, 153, 241, 274, - 154, 155, 242, 178, 156, 354, 200, 157, 180, 292, - 158, 159, 165, 166, 167, 179, 323, 175, 168, 180, - 201, 176, 258, 181, 169, 177, 259, 606, 606, 241, - 271, 271, 351, 242, 178, 188, 195, 189, 287, 190, - 196, 264, 187, 191, 197, 333, 192, 265, 245, 193, - 246, 216, 194, 258, 573, 217, 198, 259, 266, 218, - 199, 367, 367, 272, 571, 219, 188, 195, 189, 287, - 190, 196, 264, 187, 191, 197, 333, 192, 265, 245, - - 193, 246, 216, 194, 285, 286, 217, 198, 336, 266, - 218, 199, 202, 203, 327, 209, 219, 170, 543, 210, - 204, 171, 205, 211, 206, 282, 212, 207, 208, 213, - 328, 283, 214, 365, 366, 285, 286, 367, 367, 336, - 144, 252, 273, 202, 203, 327, 209, 252, 170, 146, - 210, 204, 171, 205, 211, 206, 282, 212, 207, 208, - 213, 328, 283, 214, 220, 221, 222, 250, 230, 223, - 224, 144, 231, 273, 225, 342, 232, 331, 226, 236, - 146, 227, 233, 228, 345, 234, 229, 175, 237, 290, - 238, 332, 235, 291, 239, 220, 221, 222, 240, 230, - - 223, 224, 368, 231, 284, 225, 342, 232, 331, 226, - 236, 133, 227, 233, 228, 345, 234, 229, 175, 237, - 290, 238, 332, 235, 291, 239, 243, 244, 133, 240, - 245, 152, 246, 153, 247, 284, 279, 280, 277, 248, - 275, 161, 278, 276, 346, 288, 158, 281, 357, 289, - 301, 325, 357, 136, 218, 326, 355, 243, 244, 136, - 340, 245, 152, 246, 153, 247, 324, 279, 280, 277, - 248, 275, 161, 278, 276, 346, 288, 158, 281, 293, - 289, 301, 325, 297, 136, 218, 326, 294, 334, 205, - 136, 298, 302, 303, 295, 296, 329, 299, 306, 330, - - 300, 340, 307, 335, 304, 341, 236, 360, 308, 305, - 293, 309, 367, 367, 297, 237, 321, 310, 294, 334, - 205, 239, 298, 302, 303, 295, 296, 329, 299, 306, - 330, 300, 340, 307, 335, 304, 341, 236, 360, 308, - 305, 130, 309, 130, 130, 361, 237, 130, 310, 130, - 130, 315, 239, 316, 316, 317, 317, 319, 337, 316, - 316, 311, 343, 348, 318, 369, 344, 130, 320, 130, - 130, 339, 349, 338, 362, 314, 361, 362, 350, 130, - 313, 130, 130, 312, 374, 379, 372, 372, 351, 337, - 373, 373, 311, 343, 348, 318, 369, 344, 382, 320, - - 385, 388, 339, 349, 338, 363, 363, 380, 142, 350, - 135, 135, 137, 137, 364, 374, 379, 362, 381, 143, - 311, 138, 373, 373, 373, 373, 252, 370, 370, 382, - 250, 385, 388, 575, 575, 133, 371, 386, 380, 389, - 390, 1925, 574, 574, 1925, 364, 575, 575, 395, 381, - 143, 387, 138, 139, 139, 139, 139, 139, 139, 139, - 139, 139, 139, 139, 139, 139, 139, 371, 386, 141, - 389, 390, 139, 375, 139, 383, 391, 376, 393, 395, - 394, 384, 387, 396, 377, 397, 399, 400, 401, 398, - 378, 404, 405, 406, 407, 409, 392, 412, 408, 402, - - 417, 139, 139, 139, 375, 139, 383, 391, 376, 393, - 1925, 394, 384, 403, 396, 377, 397, 399, 400, 401, - 398, 378, 404, 405, 406, 407, 409, 392, 412, 408, - 402, 417, 139, 139, 139, 139, 139, 410, 418, 419, - 413, 411, 414, 415, 403, 420, 416, 421, 424, 425, - 426, 427, 432, 433, 434, 422, 435, 440, 428, 429, - 1925, 423, 441, 442, 430, 443, 444, 455, 410, 418, - 419, 413, 411, 414, 415, 431, 420, 416, 421, 424, - 425, 426, 427, 432, 433, 434, 422, 435, 440, 428, - 429, 436, 423, 441, 442, 430, 443, 444, 455, 449, - - 445, 456, 446, 447, 461, 457, 431, 437, 448, 438, - 451, 452, 453, 458, 439, 450, 459, 462, 454, 463, - 460, 464, 436, 465, 466, 467, 468, 470, 469, 471, - 449, 445, 456, 446, 447, 461, 457, 472, 437, 448, - 438, 451, 452, 453, 458, 439, 450, 459, 462, 454, - 463, 460, 464, 478, 465, 466, 467, 468, 470, 469, - 471, 473, 479, 476, 474, 487, 488, 480, 472, 477, - 489, 475, 481, 482, 490, 491, 492, 496, 483, 497, - 500, 1925, 484, 485, 478, 486, 493, 494, 498, 501, - 502, 508, 473, 479, 476, 474, 487, 488, 480, 495, - - 477, 489, 475, 481, 482, 490, 491, 492, 496, 483, - 497, 500, 499, 484, 485, 503, 486, 493, 494, 498, - 501, 502, 508, 505, 509, 506, 504, 512, 513, 514, - 495, 507, 510, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 524, 499, 511, 525, 503, 526, 527, 530, - 531, 528, 532, 533, 505, 509, 506, 504, 512, 513, - 514, 536, 507, 510, 515, 516, 517, 518, 519, 520, - 521, 522, 523, 524, 529, 511, 525, 534, 526, 527, - 530, 531, 528, 532, 533, 537, 538, 539, 540, 541, - 535, 376, 536, 271, 271, 1925, 380, 544, 377, 545, - - 547, 546, 548, 402, 378, 529, 405, 407, 534, 550, - 413, 549, 551, 415, 423, 552, 537, 538, 539, 540, - 541, 535, 376, 555, 556, 441, 272, 380, 544, 377, - 545, 547, 546, 548, 402, 378, 557, 405, 407, 451, - 550, 413, 549, 551, 415, 423, 552, 553, 458, 558, - 559, 560, 469, 430, 555, 556, 441, 561, 562, 477, - 485, 564, 565, 498, 554, 566, 567, 557, 563, 508, - 451, 568, 569, 575, 575, 579, 579, 504, 553, 458, - 558, 559, 560, 469, 430, 313, 580, 1925, 561, 562, - 477, 485, 564, 565, 498, 554, 566, 567, 505, 563, - - 508, 581, 568, 569, 317, 317, 507, 319, 504, 316, - 316, 317, 317, 318, 576, 576, 313, 580, 320, 582, - 318, 578, 578, 577, 585, 579, 579, 583, 584, 505, - 586, 588, 581, 589, 590, 591, 592, 507, 593, 594, - 595, 596, 597, 587, 318, 598, 600, 599, 607, 320, - 582, 318, 601, 602, 577, 585, 579, 579, 583, 584, - 1925, 586, 588, 1925, 589, 590, 591, 592, 603, 593, - 594, 595, 596, 597, 587, 610, 598, 600, 599, 607, - 351, 351, 611, 601, 602, 363, 363, 365, 365, 351, - 612, 606, 606, 613, 364, 370, 370, 608, 608, 603, - - 614, 609, 609, 615, 371, 616, 610, 617, 618, 619, - 620, 621, 622, 611, 623, 624, 625, 626, 627, 628, - 629, 612, 633, 634, 613, 364, 637, 1925, 638, 639, - 640, 614, 641, 642, 615, 371, 616, 643, 617, 618, - 619, 620, 621, 622, 630, 623, 624, 625, 626, 627, - 628, 629, 631, 633, 634, 635, 644, 637, 632, 638, - 639, 640, 645, 641, 642, 646, 647, 648, 643, 649, - 651, 652, 636, 653, 654, 630, 656, 650, 657, 658, - 659, 660, 661, 631, 655, 662, 635, 644, 663, 632, - 664, 665, 668, 645, 669, 666, 646, 647, 648, 667, - - 649, 651, 652, 636, 653, 654, 670, 656, 650, 657, - 658, 659, 660, 661, 671, 655, 662, 672, 673, 663, - 675, 664, 665, 668, 676, 669, 666, 677, 674, 678, - 667, 679, 680, 681, 682, 683, 684, 670, 685, 1925, - 605, 697, 354, 700, 1925, 671, 701, 1925, 672, 673, - 1925, 675, 698, 1925, 712, 676, 699, 1925, 677, 674, - 678, 1925, 679, 680, 681, 682, 683, 684, 713, 685, - 686, 687, 697, 688, 700, 689, 690, 701, 691, 714, - 715, 692, 716, 698, 693, 712, 717, 699, 694, 695, - 718, 719, 696, 1925, 605, 721, 841, 722, 1925, 713, - - 725, 686, 687, 726, 688, 727, 689, 690, 728, 691, - 714, 715, 692, 716, 723, 693, 731, 717, 724, 694, - 695, 718, 719, 696, 702, 703, 721, 704, 722, 705, - 706, 725, 707, 729, 726, 708, 727, 732, 733, 728, - 735, 730, 709, 710, 737, 723, 711, 731, 740, 724, - 738, 736, 741, 742, 743, 702, 703, 739, 704, 744, - 705, 706, 734, 707, 729, 745, 708, 746, 732, 733, - 747, 735, 730, 709, 710, 737, 748, 711, 749, 740, - 750, 738, 736, 741, 742, 743, 751, 752, 739, 755, - 744, 753, 756, 734, 757, 758, 745, 759, 746, 760, - - 761, 747, 762, 754, 763, 764, 765, 748, 766, 749, - 767, 750, 768, 769, 770, 771, 772, 751, 752, 773, - 755, 776, 753, 756, 774, 757, 758, 779, 759, 775, - 760, 761, 780, 762, 754, 763, 764, 765, 781, 766, - 782, 767, 777, 768, 769, 770, 771, 772, 783, 784, - 773, 785, 776, 786, 778, 774, 787, 788, 779, 789, - 775, 790, 791, 780, 792, 793, 794, 795, 796, 781, - 797, 782, 798, 777, 799, 800, 631, 801, 635, 783, - 784, 802, 785, 650, 786, 778, 803, 787, 788, 804, - 789, 666, 790, 791, 805, 792, 793, 794, 795, 796, - - 673, 797, 807, 798, 699, 799, 800, 631, 801, 635, - 806, 808, 802, 723, 650, 809, 729, 803, 810, 735, - 804, 753, 666, 811, 812, 805, 813, 814, 775, 576, - 576, 673, 818, 807, 1925, 699, 819, 820, 577, 821, - 822, 806, 808, 823, 723, 824, 809, 729, 825, 810, - 735, 826, 753, 827, 811, 812, 828, 813, 814, 775, - 816, 816, 829, 818, 817, 817, 830, 819, 820, 577, - 821, 822, 831, 832, 823, 833, 824, 834, 835, 825, - 836, 837, 826, 838, 827, 839, 1925, 828, 842, 840, - 606, 606, 351, 829, 609, 609, 843, 830, 351, 609, - - 609, 844, 845, 831, 832, 846, 833, 848, 834, 835, - 849, 836, 837, 850, 838, 851, 839, 351, 852, 842, - 840, 853, 854, 855, 856, 858, 859, 843, 860, 861, - 862, 863, 844, 845, 864, 865, 846, 866, 848, 867, - 868, 849, 869, 857, 850, 870, 851, 871, 872, 852, - 873, 874, 853, 854, 855, 856, 858, 859, 875, 860, - 861, 862, 863, 876, 877, 864, 865, 878, 866, 879, - 867, 868, 880, 869, 857, 881, 870, 882, 871, 872, - 883, 873, 874, 884, 885, 886, 887, 888, 889, 875, - 890, 891, 892, 893, 876, 877, 894, 895, 878, 896, - - 879, 897, 898, 880, 899, 900, 881, 901, 882, 902, - 905, 883, 906, 903, 884, 885, 886, 887, 888, 889, - 904, 890, 891, 892, 893, 907, 908, 894, 895, 909, - 896, 910, 897, 898, 911, 899, 900, 914, 901, 912, - 902, 905, 915, 906, 903, 916, 913, 917, 918, 919, - 920, 904, 921, 922, 926, 927, 907, 908, 928, 929, - 909, 930, 910, 931, 932, 911, 933, 934, 914, 923, - 912, 935, 936, 915, 937, 924, 916, 913, 917, 918, - 919, 920, 938, 921, 922, 926, 927, 925, 939, 928, - 929, 943, 930, 940, 931, 932, 944, 933, 934, 941, - - 923, 945, 935, 936, 946, 937, 924, 947, 948, 949, - 950, 942, 952, 938, 951, 953, 954, 955, 925, 939, - 956, 957, 943, 958, 940, 959, 960, 944, 961, 962, - 941, 963, 945, 964, 965, 946, 966, 967, 947, 948, - 949, 950, 942, 952, 968, 951, 953, 954, 955, 969, - 970, 956, 957, 971, 958, 972, 959, 960, 973, 961, - 962, 974, 963, 975, 964, 965, 976, 966, 967, 977, - 978, 979, 980, 981, 982, 968, 983, 984, 985, 986, - 969, 970, 987, 988, 971, 989, 972, 990, 991, 973, - 992, 993, 974, 994, 975, 995, 996, 976, 1001, 1925, - - 977, 978, 979, 980, 981, 982, 1002, 983, 984, 985, - 986, 997, 1003, 987, 988, 998, 989, 1004, 990, 991, - 999, 992, 993, 1005, 994, 1006, 995, 996, 1007, 1001, - 1000, 1008, 1009, 1010, 1011, 1012, 1013, 1002, 1014, 1015, - 1016, 1017, 997, 1003, 1018, 1019, 998, 1020, 1004, 1021, - 1022, 999, 1023, 1024, 1005, 1025, 1006, 1026, 1027, 1007, - 1028, 1000, 1008, 1009, 1010, 1011, 1012, 1013, 1029, 1014, - 1015, 1016, 1017, 1030, 1031, 1018, 1019, 1032, 1020, 1033, - 1021, 1022, 903, 1023, 1024, 1034, 1025, 950, 1026, 1027, - 1035, 1028, 1036, 1037, 1038, 817, 817, 817, 817, 1029, - - 1039, 1040, 1041, 1042, 1030, 1031, 1043, 1044, 1032, 1045, - 1033, 1046, 1047, 903, 1048, 1049, 1034, 1050, 950, 1051, - 1052, 1035, 1053, 1036, 1037, 1038, 1054, 1055, 1056, 1057, - 1061, 1039, 1040, 1041, 1042, 1058, 1060, 1043, 1044, 1062, - 1045, 1063, 1046, 1047, 1064, 1048, 1049, 1065, 1050, 351, - 1051, 1052, 1066, 1053, 351, 1059, 1067, 1054, 1055, 1056, - 1057, 1061, 1068, 351, 1069, 1070, 1058, 1060, 1071, 1072, - 1062, 1073, 1063, 1074, 1075, 1064, 1076, 1077, 1065, 1078, - 1079, 1080, 1081, 1066, 1082, 1083, 1084, 1067, 1085, 1086, - 1087, 1088, 1089, 1068, 1090, 1069, 1070, 1091, 1092, 1071, - - 1072, 1093, 1073, 1094, 1074, 1075, 1095, 1076, 1077, 1096, - 1078, 1079, 1080, 1081, 1097, 1082, 1083, 1084, 1098, 1085, - 1086, 1087, 1088, 1089, 1099, 1090, 1100, 1101, 1091, 1092, - 1108, 1109, 1093, 1102, 1094, 1110, 1113, 1095, 1111, 1114, - 1096, 1115, 1116, 1103, 1122, 1097, 1104, 1105, 1112, 1098, - 1106, 1107, 1123, 1117, 1124, 1099, 1118, 1100, 1101, 1119, - 1125, 1108, 1109, 1120, 1102, 1126, 1110, 1113, 1121, 1111, - 1114, 1127, 1115, 1116, 1103, 1122, 1128, 1104, 1105, 1112, - 1129, 1106, 1107, 1123, 1117, 1124, 1130, 1118, 1131, 1132, - 1119, 1125, 1133, 1134, 1120, 1135, 1126, 1136, 1137, 1121, - - 1138, 1139, 1127, 1140, 1141, 1142, 1143, 1128, 1144, 1145, - 1146, 1129, 1147, 1148, 1149, 1150, 1151, 1130, 1152, 1131, - 1132, 1153, 1154, 1133, 1134, 1155, 1135, 1156, 1136, 1137, - 1157, 1138, 1139, 1158, 1140, 1141, 1142, 1143, 1159, 1144, - 1145, 1146, 1160, 1147, 1148, 1149, 1150, 1151, 1161, 1152, - 1162, 1163, 1153, 1154, 1164, 1165, 1155, 1166, 1156, 1167, - 1168, 1157, 1169, 1170, 1158, 1171, 1172, 1173, 1174, 1159, - 1175, 1176, 1177, 1160, 1178, 1180, 1181, 1182, 1183, 1161, - 1184, 1162, 1163, 1179, 1186, 1164, 1165, 1185, 1166, 1187, - 1167, 1168, 1188, 1169, 1170, 1189, 1171, 1172, 1173, 1174, - - 1190, 1175, 1176, 1177, 1191, 1178, 1180, 1181, 1182, 1183, - 1192, 1184, 1193, 1197, 1179, 1186, 1198, 1199, 1185, 1194, - 1187, 1195, 1200, 1188, 1201, 1202, 1189, 1203, 1204, 1205, - 1206, 1190, 1207, 1208, 1209, 1191, 1211, 1196, 1212, 1213, - 1210, 1192, 1215, 1193, 1197, 1216, 1217, 1198, 1199, 1214, - 1194, 1218, 1195, 1200, 1219, 1201, 1202, 1220, 1203, 1204, - 1205, 1206, 1221, 1207, 1208, 1209, 1222, 1211, 1196, 1212, - 1213, 1210, 1223, 1215, 1225, 1226, 1216, 1217, 1227, 1228, - 1214, 1229, 1218, 1230, 1231, 1219, 1089, 1102, 1220, 1224, - 1073, 1112, 1074, 1221, 1232, 1119, 1174, 1222, 1233, 1234, - - 1235, 1236, 1237, 1223, 1121, 1225, 1226, 1238, 1239, 1227, - 1228, 1240, 1229, 1241, 1230, 1231, 1242, 1089, 1102, 1243, - 1224, 1073, 1112, 1074, 1244, 1232, 1119, 1174, 1245, 1233, - 1234, 1235, 1236, 1237, 1246, 1121, 1247, 1248, 1238, 1239, - 1249, 1250, 1240, 1251, 1241, 1252, 1925, 1242, 351, 1253, - 1243, 1254, 1256, 1257, 1255, 1244, 1258, 1259, 1260, 1245, - 1261, 1262, 1263, 1264, 1265, 1246, 1266, 1247, 1248, 1267, - 1268, 1249, 1250, 1269, 1251, 1270, 1252, 351, 351, 1271, - 1272, 1273, 1254, 1256, 1257, 1255, 1274, 1258, 1259, 1260, - 1275, 1261, 1262, 1263, 1264, 1265, 1276, 1266, 1277, 1278, - - 1267, 1268, 1279, 1280, 1269, 1281, 1270, 1282, 1283, 1284, - 1271, 1272, 1273, 1285, 1286, 1287, 1288, 1274, 1289, 1290, - 1291, 1275, 1292, 1293, 1294, 1295, 1296, 1276, 1297, 1277, - 1278, 1298, 1299, 1279, 1280, 1300, 1281, 1301, 1282, 1283, - 1284, 1304, 1305, 1306, 1285, 1286, 1287, 1288, 1307, 1289, - 1290, 1291, 1302, 1292, 1293, 1294, 1295, 1296, 1308, 1297, - 1303, 1309, 1298, 1299, 1310, 1311, 1300, 1312, 1301, 1313, - 1314, 1315, 1304, 1305, 1306, 1316, 1317, 1318, 1319, 1307, - 1320, 1321, 1322, 1302, 1323, 1324, 1325, 1326, 1327, 1308, - 1328, 1303, 1309, 1329, 1330, 1310, 1311, 1331, 1312, 1332, - - 1313, 1314, 1315, 1333, 1334, 1335, 1316, 1317, 1318, 1319, - 1336, 1320, 1321, 1322, 1337, 1323, 1324, 1325, 1326, 1327, - 1338, 1328, 1340, 1341, 1329, 1330, 1342, 1343, 1331, 1344, - 1332, 1345, 1346, 1347, 1333, 1334, 1335, 1348, 1349, 1350, - 1351, 1336, 1352, 1353, 1354, 1337, 1355, 1356, 1357, 1358, - 1359, 1338, 1360, 1340, 1341, 1361, 1362, 1342, 1343, 1363, - 1344, 1364, 1345, 1346, 1347, 1365, 1366, 1367, 1348, 1349, - 1350, 1351, 1368, 1352, 1353, 1354, 1371, 1355, 1356, 1357, - 1358, 1359, 1372, 1360, 1369, 1373, 1361, 1362, 1374, 1375, - 1363, 1376, 1364, 1377, 1378, 1379, 1365, 1366, 1367, 1380, - - 1370, 1381, 1382, 1368, 1383, 1384, 1385, 1371, 1386, 1387, - 1388, 1389, 1390, 1372, 1391, 1369, 1373, 1392, 1393, 1374, - 1375, 1394, 1376, 1395, 1377, 1378, 1379, 1396, 1397, 1398, - 1380, 1370, 1381, 1382, 1399, 1383, 1384, 1385, 1400, 1386, - 1387, 1388, 1389, 1390, 1401, 1391, 1402, 1403, 1392, 1393, - 1404, 1405, 1394, 1406, 1395, 1407, 1408, 1409, 1396, 1397, - 1398, 1410, 1411, 1412, 1415, 1399, 1413, 1416, 1417, 1400, - 1418, 1419, 1420, 1421, 1422, 1401, 1423, 1402, 1403, 1424, - 1425, 1404, 1405, 1426, 1406, 1427, 1407, 1408, 1409, 351, - 351, 1428, 1410, 1411, 1412, 1415, 1429, 1413, 1416, 1417, - - 1430, 1418, 1419, 1420, 1421, 1422, 1431, 1423, 1432, 1433, - 1424, 1425, 1434, 1435, 1426, 1436, 1427, 1437, 1438, 1439, - 1440, 1441, 1428, 1442, 1443, 1444, 1445, 1429, 1446, 1447, - 1448, 1430, 1449, 1450, 1451, 1452, 1453, 1431, 1454, 1432, - 1433, 1455, 1456, 1434, 1435, 1457, 1436, 1458, 1437, 1438, - 1439, 1440, 1441, 1459, 1442, 1443, 1444, 1445, 1460, 1446, - 1447, 1448, 1461, 1449, 1450, 1451, 1452, 1453, 1462, 1454, - 1463, 1464, 1455, 1456, 1465, 1466, 1457, 1467, 1458, 1468, - 1469, 1470, 1471, 1472, 1459, 1473, 1474, 1475, 1476, 1460, - 1477, 1478, 1479, 1461, 1480, 1481, 1482, 1483, 1484, 1462, - - 1485, 1463, 1464, 1486, 1487, 1465, 1466, 1489, 1467, 1495, - 1468, 1469, 1470, 1471, 1472, 1496, 1473, 1474, 1475, 1476, - 1497, 1477, 1478, 1479, 1488, 1480, 1481, 1482, 1483, 1484, - 1498, 1485, 1490, 1491, 1486, 1487, 1499, 1500, 1489, 1501, - 1495, 1502, 1503, 1492, 1504, 1493, 1496, 1505, 1506, 1494, - 1507, 1497, 1508, 1509, 1510, 1488, 1511, 1512, 1513, 1514, - 1515, 1498, 1516, 1490, 1491, 1517, 1518, 1499, 1500, 1519, - 1501, 1520, 1502, 1503, 1492, 1504, 1493, 1523, 1505, 1506, - 1494, 1507, 1524, 1508, 1509, 1510, 1525, 1511, 1512, 1513, - 1514, 1515, 1521, 1516, 1522, 1526, 1517, 1518, 1527, 1528, - - 1519, 1529, 1520, 1530, 1531, 1532, 1533, 1534, 1523, 1535, - 1536, 1537, 1538, 1524, 1539, 1540, 1541, 1525, 1542, 1925, - 1925, 1543, 1544, 1521, 1545, 1522, 1526, 1546, 1547, 1527, - 1528, 1548, 1529, 1549, 1530, 1531, 1532, 1533, 1534, 1550, - 1535, 1536, 1537, 1538, 1551, 1539, 1540, 1541, 1552, 1542, - 1490, 1491, 1543, 1544, 1553, 1545, 1554, 1555, 1546, 1547, - 1556, 1557, 1548, 1493, 1549, 1558, 1559, 1494, 1560, 1561, - 1550, 1562, 1563, 1564, 351, 1551, 1565, 1566, 1567, 1552, - 351, 1490, 1491, 1568, 1569, 1553, 1570, 1554, 1555, 1571, - 1572, 1556, 1557, 1573, 1493, 1574, 1558, 1559, 1494, 1560, - - 1561, 1575, 1562, 1563, 1564, 1576, 1577, 1565, 1566, 1567, - 1578, 1579, 1580, 1581, 1568, 1569, 1582, 1570, 1583, 1584, - 1571, 1572, 1585, 1586, 1573, 1587, 1574, 1588, 1589, 1590, - 1591, 1592, 1575, 1593, 1594, 1595, 1576, 1577, 1596, 1597, - 1598, 1578, 1579, 1580, 1581, 1599, 1600, 1582, 1601, 1583, - 1584, 1602, 1603, 1585, 1586, 1604, 1587, 1605, 1588, 1589, - 1590, 1591, 1592, 1606, 1593, 1594, 1595, 1607, 1608, 1596, - 1597, 1598, 1609, 1610, 1611, 1612, 1599, 1600, 1613, 1601, - 1614, 1615, 1602, 1603, 1616, 1617, 1604, 1618, 1605, 1619, - 1620, 1621, 1622, 1623, 1606, 1625, 1628, 1626, 1607, 1608, - - 1629, 1624, 1630, 1609, 1610, 1611, 1612, 1631, 1632, 1613, - 1633, 1614, 1615, 1627, 1634, 1616, 1617, 1635, 1618, 1636, - 1619, 1620, 1621, 1622, 1623, 1637, 1625, 1628, 1626, 1638, - 1639, 1629, 1624, 1630, 1640, 1641, 1642, 1643, 1631, 1632, - 1644, 1633, 1645, 1646, 1627, 1634, 1647, 1648, 1635, 1649, - 1636, 1650, 1651, 1652, 1653, 1654, 1637, 1655, 1656, 1657, - 1638, 1639, 1658, 1659, 1660, 1640, 1641, 1642, 1643, 1661, - 1662, 1644, 1663, 1645, 1646, 1664, 1665, 1647, 1648, 1666, - 1649, 1667, 1650, 1651, 1652, 1653, 1654, 1668, 1655, 1656, - 1657, 1669, 1670, 1658, 1659, 1660, 1671, 1672, 351, 1673, - - 1661, 1662, 1674, 1663, 351, 1675, 1664, 1665, 1676, 1677, - 1666, 1678, 1667, 1679, 1680, 1681, 1682, 1683, 1668, 1684, - 1685, 1686, 1669, 1670, 1687, 1688, 1689, 1671, 1672, 1690, - 1673, 1691, 1692, 1674, 1693, 1694, 1675, 1695, 1696, 1676, - 1677, 1697, 1678, 1698, 1679, 1680, 1681, 1682, 1683, 1699, - 1684, 1685, 1686, 1700, 1701, 1687, 1688, 1689, 1702, 1703, - 1690, 1704, 1691, 1692, 1705, 1693, 1694, 1706, 1695, 1696, - 1707, 1708, 1697, 1709, 1698, 1710, 1711, 1712, 1713, 1714, - 1699, 1715, 1716, 1717, 1700, 1701, 1718, 1719, 1720, 1702, - 1703, 1721, 1704, 1722, 1723, 1705, 1724, 1725, 1706, 1726, - - 1727, 1707, 1708, 1728, 1709, 1729, 1710, 1711, 1712, 1713, - 1714, 1730, 1715, 1716, 1717, 1731, 1732, 1718, 1719, 1720, - 1733, 1734, 1721, 1735, 1722, 1723, 1736, 1724, 1725, 1737, - 1726, 1727, 1738, 1739, 1728, 1740, 1729, 1741, 1742, 1743, - 1744, 1745, 1730, 1746, 1747, 1748, 1731, 1732, 1749, 1750, - 1751, 1733, 1734, 1752, 1735, 1753, 1754, 1736, 1756, 1757, - 1737, 1758, 1759, 1738, 1739, 1760, 1740, 1755, 1741, 1742, - 1743, 1744, 1745, 351, 1746, 1747, 1748, 351, 1761, 1749, - 1750, 1751, 1762, 1763, 1752, 1764, 1753, 1754, 1765, 1756, - 1757, 1766, 1758, 1759, 1767, 1768, 1760, 1769, 1755, 1770, - - 1771, 1772, 1773, 1774, 1775, 1776, 1777, 1778, 1779, 1761, - 1780, 1781, 1782, 1762, 1763, 1783, 1764, 1784, 1785, 1765, - 1786, 1787, 1766, 1788, 1789, 1767, 1768, 1790, 1769, 1791, - 1770, 1771, 1772, 1773, 1774, 1775, 1776, 1777, 1778, 1779, - 1792, 1780, 1781, 1782, 1793, 1794, 1783, 1795, 1784, 1785, - 1796, 1786, 1787, 1797, 1788, 1789, 1798, 1799, 1790, 1800, - 1791, 1801, 1802, 1803, 1804, 1805, 1806, 1807, 1808, 1810, - 1811, 1792, 1812, 1814, 1815, 1793, 1794, 1816, 1795, 1817, - 1818, 1796, 351, 1819, 1797, 1809, 1813, 1798, 1799, 1820, - 1800, 1821, 1801, 1802, 1803, 1804, 1805, 1806, 1807, 1808, - - 1810, 1811, 1822, 1812, 1814, 1815, 351, 1823, 1816, 1824, - 1817, 1818, 1825, 1826, 1819, 1827, 1809, 1813, 1828, 1829, - 1820, 1830, 1821, 1831, 1832, 1833, 1834, 1835, 1836, 1837, - 1838, 1839, 1840, 1822, 1841, 1842, 1843, 1844, 1823, 1845, - 1824, 1846, 1847, 1825, 1826, 1848, 1827, 1849, 1852, 1828, - 1829, 1850, 1830, 1853, 1831, 1832, 1833, 1834, 1835, 1836, - 1837, 1838, 1839, 1840, 1854, 1841, 1842, 1843, 1844, 1855, - 1845, 351, 1846, 1847, 1851, 1856, 1848, 351, 1849, 1852, - 1857, 1858, 1850, 1859, 1853, 1860, 1861, 1862, 1863, 1864, - 1865, 1866, 1867, 1868, 1869, 1854, 1870, 1871, 1872, 1873, - - 1855, 1874, 1875, 1876, 1877, 1851, 1856, 351, 1879, 1880, - 1881, 1857, 1858, 1878, 1859, 1882, 1860, 1861, 1862, 1863, - 1864, 1865, 1866, 1867, 1868, 1869, 1883, 1870, 1871, 1872, - 1873, 1884, 1874, 1875, 1876, 1877, 1885, 351, 1886, 1879, - 1880, 1881, 1887, 1888, 1878, 1889, 1882, 1890, 1891, 1892, - 1893, 1894, 1897, 1895, 1898, 1899, 1900, 1883, 1901, 1902, - 1903, 1904, 1884, 1905, 1907, 1908, 1909, 1885, 1910, 1886, - 1911, 1912, 1913, 1887, 1888, 1914, 1889, 351, 1890, 1891, - 1892, 1893, 1894, 1897, 1895, 1898, 1899, 1900, 1915, 1901, - 1902, 1903, 1904, 1916, 1905, 1907, 1908, 1909, 1917, 1910, - - 1918, 1911, 1912, 1913, 1919, 1920, 1914, 1921, 1922, 1923, - 1924, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1915, - 1925, 1925, 1925, 1925, 1916, 1925, 1925, 1925, 1925, 1917, - 1925, 1918, 1925, 1925, 1925, 1919, 1920, 1925, 1921, 1922, - 1923, 1924, 122, 122, 122, 122, 122, 122, 122, 122, - 122, 126, 126, 126, 126, 126, 126, 126, 126, 126, - 131, 1925, 131, 131, 131, 131, 131, 131, 131, 132, - 1925, 132, 132, 132, 132, 132, 132, 132, 136, 136, - 140, 140, 140, 140, 140, 140, 140, 140, 140, 249, - 249, 249, 249, 249, 249, 249, 249, 249, 251, 1925, - - 251, 251, 251, 251, 251, 251, 251, 270, 1925, 270, - 347, 347, 347, 347, 347, 347, 347, 347, 347, 352, - 352, 352, 352, 352, 352, 352, 352, 352, 356, 356, - 356, 356, 356, 356, 356, 356, 356, 358, 358, 358, - 358, 358, 358, 358, 358, 358, 359, 359, 359, 1925, - 1925, 359, 359, 1925, 359, 139, 139, 139, 139, 139, - 139, 139, 139, 139, 542, 1925, 1925, 542, 542, 1925, - 542, 570, 570, 570, 1925, 570, 570, 570, 570, 570, - 572, 572, 572, 572, 1925, 572, 572, 572, 572, 604, - 604, 604, 604, 604, 604, 604, 604, 604, 13, 1925, - - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925 + 14, 14, 24, 14, 14, 14, 14, 25, 26, 27, + 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 48, 48, 49, 14, 14, 14, 14, 50, 51, + 124, 336, 124, 124, 124, 125, 124, 124, 126, 125, + 327, 52, 126, 128, 138, 138, 129, 337, 53, 128, + 189, 52, 129, 54, 190, 55, 56, 57, 139, 182, + 130, 58, 823, 183, 59, 60, 130, 184, 61, 62, + + 63, 64, 65, 66, 131, 67, 131, 131, 343, 135, + 51, 136, 136, 51, 50, 51, 143, 203, 136, 136, + 147, 178, 148, 344, 168, 169, 170, 52, 998, 149, + 171, 204, 144, 248, 53, 249, 172, 52, 285, 54, + 198, 55, 56, 57, 199, 150, 385, 58, 200, 151, + 59, 60, 386, 152, 61, 62, 63, 64, 65, 66, + 201, 67, 153, 244, 202, 154, 51, 245, 323, 51, + 50, 68, 155, 999, 156, 14, 324, 157, 158, 185, + 186, 159, 255, 255, 160, 743, 187, 161, 162, 256, + 14, 131, 744, 131, 131, 69, 70, 71, 72, 73, + + 74, 75, 76, 77, 48, 78, 79, 80, 81, 82, + 83, 48, 84, 85, 86, 87, 48, 88, 478, 262, + 286, 287, 51, 263, 479, 51, 89, 90, 50, 91, + 90, 92, 93, 89, 94, 95, 89, 89, 89, 89, + 96, 97, 89, 98, 98, 99, 100, 101, 102, 89, + 89, 89, 103, 104, 105, 106, 107, 108, 109, 110, + 89, 111, 89, 89, 112, 89, 113, 114, 89, 89, + 115, 116, 117, 118, 89, 119, 89, 89, 89, 89, + 120, 89, 121, 122, 140, 140, 140, 140, 140, 140, + 140, 140, 140, 140, 140, 140, 140, 140, 141, 141, + + 142, 141, 141, 140, 141, 140, 140, 140, 140, 141, + 140, 141, 141, 141, 141, 141, 141, 141, 141, 141, + 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, + 141, 141, 141, 141, 141, 141, 141, 140, 140, 140, + 140, 140, 163, 173, 178, 164, 165, 174, 179, 268, + 219, 175, 180, 338, 220, 269, 339, 176, 221, 166, + 177, 181, 167, 191, 222, 192, 270, 193, 538, 288, + 147, 194, 274, 190, 195, 205, 206, 196, 212, 149, + 197, 539, 213, 207, 291, 208, 214, 209, 292, 215, + 210, 211, 216, 318, 318, 217, 223, 224, 225, 302, + + 233, 226, 227, 221, 234, 332, 228, 319, 235, 333, + 229, 239, 334, 230, 236, 231, 335, 237, 232, 312, + 240, 350, 241, 593, 238, 351, 242, 246, 247, 349, + 243, 248, 155, 249, 156, 250, 594, 280, 281, 278, + 251, 276, 164, 279, 277, 173, 289, 161, 282, 174, + 290, 406, 407, 283, 137, 294, 303, 304, 298, 284, + 137, 327, 340, 295, 582, 208, 299, 451, 305, 382, + 296, 297, 300, 306, 307, 301, 341, 239, 308, 131, + 383, 131, 131, 452, 309, 353, 240, 310, 311, 354, + 327, 131, 242, 131, 131, 316, 328, 317, 317, 320, + + 564, 317, 317, 346, 131, 329, 131, 131, 388, 364, + 565, 330, 364, 347, 131, 321, 131, 131, 348, 365, + 365, 143, 389, 136, 136, 393, 364, 138, 138, 1000, + 367, 368, 399, 366, 369, 369, 400, 144, 372, 372, + 377, 139, 374, 374, 378, 394, 375, 375, 395, 404, + 396, 379, 373, 423, 409, 412, 438, 380, 410, 413, + 500, 424, 415, 405, 416, 417, 758, 425, 418, 430, + 431, 442, 439, 459, 440, 432, 443, 444, 759, 441, + 447, 460, 448, 449, 501, 470, 433, 471, 450, 453, + 454, 455, 461, 505, 481, 475, 462, 456, 476, 482, + + 483, 484, 495, 496, 506, 477, 485, 532, 511, 1001, + 486, 487, 507, 488, 508, 497, 512, 255, 255, 378, + 509, 547, 1002, 548, 256, 409, 379, 569, 513, 551, + 533, 415, 380, 553, 417, 555, 507, 779, 506, 318, + 318, 432, 780, 320, 509, 317, 317, 318, 318, 1003, + 576, 576, 556, 319, 577, 577, 578, 578, 586, 321, + 333, 319, 580, 580, 327, 327, 581, 581, 583, 598, + 579, 590, 591, 607, 584, 608, 365, 365, 367, 367, + 599, 1004, 611, 611, 611, 611, 369, 369, 369, 369, + 366, 372, 372, 613, 613, 375, 375, 614, 614, 375, + + 375, 635, 640, 654, 659, 373, 671, 678, 703, 636, + 672, 655, 704, 738, 660, 637, 734, 679, 728, 641, + 691, 692, 729, 693, 735, 694, 695, 327, 696, 740, + 825, 697, 820, 782, 698, 577, 577, 739, 699, 700, + 741, 820, 701, 707, 708, 783, 709, 678, 710, 711, + 573, 712, 577, 577, 713, 1009, 575, 811, 578, 578, + 327, 714, 715, 821, 821, 716, 1010, 822, 822, 581, + 581, 864, 579, 581, 581, 586, 958, 333, 824, 586, + 959, 826, 611, 611, 614, 614, 614, 614, 911, 873, + 865, 874, 920, 976, 931, 912, 948, 1005, 977, 921, + + 932, 1006, 949, 1007, 1011, 1012, 1013, 1014, 1015, 1016, + 1017, 1018, 933, 1008, 950, 1019, 1020, 1021, 1022, 1023, + 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, + 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 911, 1042, + 958, 1043, 1044, 1045, 1046, 822, 822, 822, 822, 327, + 327, 1048, 1047, 327, 1050, 1051, 1052, 1053, 1054, 1055, + 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, + 1066, 1049, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, + 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, + 1086, 1085, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, + + 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, + 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1119, + 1120, 1121, 1124, 1122, 1125, 1126, 1127, 1133, 1114, 1134, + 1135, 1115, 1116, 1123, 1128, 1117, 1118, 1129, 1136, 1137, + 1130, 1138, 1139, 1140, 1131, 1141, 1142, 1143, 1144, 1132, + 1145, 1146, 1147, 1148, 1149, 1150, 1151, 1152, 1153, 1154, + 1155, 1156, 1157, 1158, 1159, 1160, 1161, 1162, 1163, 1164, + 1165, 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, + 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, + 1185, 1186, 1187, 1188, 1189, 1191, 1192, 1193, 1194, 1195, + + 1197, 1198, 1199, 1190, 1200, 1201, 1196, 1202, 1203, 1204, + 1205, 1208, 1206, 1209, 1210, 1211, 1212, 1213, 1214, 1215, + 1216, 1217, 1218, 1219, 1220, 1222, 1223, 1224, 1207, 1226, + 1221, 1227, 1228, 1229, 1230, 1231, 1232, 1225, 1233, 1234, + 1236, 1237, 1238, 1239, 1240, 1241, 1242, 1084, 1100, 1085, + 1113, 1123, 1130, 1243, 1185, 1244, 1235, 1245, 327, 1246, + 327, 1132, 327, 1249, 1250, 1247, 1251, 1252, 1253, 1248, + 1254, 1255, 1256, 1257, 1258, 1259, 1260, 1261, 1262, 1263, + 1264, 1265, 1266, 1267, 1268, 1269, 1270, 1271, 1272, 1273, + 1274, 1275, 1276, 1277, 1278, 1279, 1280, 1281, 1282, 1283, + + 1284, 1285, 1286, 1287, 1288, 1289, 1290, 1291, 1292, 1293, + 1294, 1295, 1296, 1297, 1298, 1299, 1300, 1301, 1302, 1303, + 1304, 1305, 1306, 1307, 1308, 1309, 1310, 1311, 1312, 1313, + 1314, 1316, 1317, 1318, 1319, 1320, 1321, 1322, 1315, 1323, + 1324, 1325, 1326, 1327, 1328, 1329, 1330, 1331, 1332, 1333, + 1334, 1335, 1336, 1337, 1338, 1339, 1340, 1341, 1342, 1343, + 1344, 1345, 1346, 1347, 1348, 1349, 1350, 1351, 1352, 1353, + 1354, 1355, 1356, 1357, 1358, 1359, 1360, 1361, 1362, 1363, + 1364, 1365, 1366, 1367, 1368, 1369, 1370, 1371, 1372, 1373, + 1374, 1375, 1376, 1377, 1378, 1379, 1380, 1381, 1383, 1384, + + 1385, 1386, 1387, 1388, 1389, 1390, 1391, 1392, 1393, 1394, + 1395, 1396, 1397, 1382, 1398, 1399, 1400, 1401, 1402, 1403, + 1404, 1405, 1406, 1407, 1408, 1409, 327, 327, 1412, 1413, + 1414, 1410, 1415, 1416, 1411, 1417, 1418, 1419, 1420, 1421, + 1422, 1423, 1424, 1425, 1426, 1427, 1428, 1429, 1430, 1431, + 1432, 1433, 1434, 1435, 1436, 1437, 1438, 1439, 1440, 1441, + 1442, 1443, 1444, 1445, 1446, 1447, 1448, 1449, 1450, 1451, + 1452, 1453, 1454, 1455, 1456, 1457, 1458, 1459, 1460, 1461, + 1462, 1463, 1464, 1465, 1466, 1467, 1468, 1469, 1470, 1471, + 1472, 1473, 1474, 1475, 1476, 1477, 1478, 1479, 1480, 1481, + + 1482, 1483, 1484, 1485, 1486, 1487, 1488, 1489, 1490, 1491, + 1492, 1493, 1494, 1495, 1496, 1497, 1499, 1498, 1500, 1502, + 1503, 1504, 1508, 1509, 1510, 1511, 1512, 1513, 1514, 1515, + 1516, 1505, 1517, 1506, 1518, 1519, 1520, 1507, 1501, 1521, + 1522, 1523, 1524, 1525, 1526, 1527, 1528, 1529, 1530, 1531, + 1532, 1533, 1534, 1536, 1535, 1537, 1538, 1539, 1540, 1541, + 1542, 1543, 1544, 1545, 1546, 1547, 1548, 1549, 1550, 1551, + 1552, 1553, 1554, 1555, 1503, 1504, 1556, 327, 327, 1559, + 1560, 1561, 1562, 1563, 1557, 1564, 1565, 1506, 1566, 1567, + 1568, 1507, 1558, 1569, 1570, 1571, 1572, 1573, 1574, 1575, + + 1576, 1577, 1578, 1579, 1580, 1581, 1582, 1583, 1584, 1585, + 1586, 1587, 1588, 1589, 1590, 1591, 1592, 1593, 1594, 1595, + 1596, 1597, 1598, 1599, 1600, 1601, 1602, 1603, 1604, 1605, + 1606, 1607, 1608, 1609, 1610, 1611, 1612, 1613, 1614, 1615, + 1616, 1617, 1618, 1619, 1620, 1621, 1622, 1623, 1624, 1625, + 1626, 1627, 1628, 1629, 1630, 1631, 1632, 1633, 1634, 1635, + 1636, 1638, 1639, 1641, 1642, 1643, 1644, 1645, 1637, 1646, + 1647, 1648, 1649, 1650, 1651, 1652, 1653, 1654, 1640, 1655, + 1656, 1657, 1658, 1659, 1660, 1661, 1662, 1663, 1664, 1665, + 1666, 1667, 1668, 1669, 1670, 1671, 1672, 1673, 1674, 327, + + 327, 1677, 1678, 1679, 1680, 1681, 1682, 1683, 1684, 1685, + 1686, 1687, 1688, 1675, 1676, 1689, 1690, 1691, 1692, 1693, + 1694, 1695, 1696, 1697, 1698, 1699, 1700, 1701, 1702, 1703, + 1704, 1705, 1706, 1707, 1708, 1709, 1710, 1711, 1712, 1713, + 1714, 1715, 1716, 1717, 1718, 1719, 1720, 1721, 1722, 1723, + 1724, 1725, 1726, 1727, 1728, 1729, 1730, 1731, 1732, 1733, + 1734, 1735, 1736, 1737, 1738, 1739, 1740, 1741, 1742, 1743, + 1744, 1745, 1746, 1747, 1748, 1749, 1750, 1751, 1752, 1753, + 1754, 1755, 1756, 1757, 1758, 1759, 1760, 1761, 1762, 327, + 327, 1765, 1766, 1767, 1768, 1769, 1770, 1771, 1772, 1773, + + 1774, 1775, 1776, 1763, 1777, 1778, 1779, 1780, 1781, 1782, + 1783, 1764, 1784, 1785, 1786, 1787, 1788, 1789, 1790, 1791, + 1792, 1793, 1794, 1795, 1796, 1797, 1798, 1799, 1800, 1801, + 1802, 1803, 1804, 1805, 1806, 1807, 1808, 1809, 1810, 1811, + 1812, 1813, 1814, 1815, 1816, 1817, 1818, 1819, 1820, 1821, + 1823, 1824, 327, 327, 1827, 1828, 1829, 1830, 1831, 1832, + 1833, 1834, 1835, 1836, 1826, 1837, 1822, 1838, 1839, 1840, + 1841, 1842, 1843, 1825, 1844, 1845, 1846, 1847, 1848, 1849, + 1850, 1851, 1852, 1853, 1854, 1855, 1856, 1857, 1858, 1859, + 1860, 1861, 1862, 327, 327, 1865, 1866, 1867, 1868, 1869, + + 1870, 1871, 1872, 1873, 1863, 1874, 1875, 1876, 1877, 1878, + 1879, 1880, 1881, 1882, 1883, 1884, 1885, 1886, 1887, 1888, + 1889, 327, 1864, 327, 1892, 1893, 1894, 1895, 1896, 1897, + 1891, 1898, 1899, 1900, 1901, 1902, 1903, 1904, 1905, 1906, + 1907, 327, 1909, 1910, 1911, 1912, 1913, 1914, 1908, 1890, + 1915, 1916, 1917, 1918, 1919, 1920, 1921, 1922, 1923, 1924, + 1925, 1926, 1927, 1928, 1929, 1930, 1931, 1932, 1933, 1934, + 1935, 1936, 1937, 14, 14, 14, 14, 14, 14, 14, + 14, 14, 123, 123, 123, 123, 123, 123, 123, 123, + 123, 127, 127, 127, 127, 127, 127, 127, 127, 127, + + 132, 997, 132, 132, 132, 132, 132, 132, 132, 133, + 996, 133, 133, 133, 133, 133, 133, 133, 137, 137, + 145, 145, 145, 145, 145, 145, 145, 145, 145, 252, + 995, 252, 252, 252, 252, 252, 252, 252, 254, 994, + 254, 326, 326, 326, 326, 326, 326, 326, 326, 326, + 331, 331, 331, 331, 331, 331, 331, 331, 331, 359, + 359, 359, 359, 359, 359, 359, 359, 359, 361, 361, + 361, 361, 361, 361, 361, 361, 361, 362, 362, 362, + 993, 992, 362, 362, 991, 362, 140, 140, 140, 140, + 140, 140, 140, 140, 140, 525, 990, 989, 525, 525, + + 988, 525, 572, 572, 572, 987, 572, 572, 572, 572, + 572, 574, 574, 574, 574, 986, 574, 574, 574, 574, + 585, 585, 585, 585, 585, 585, 585, 585, 585, 985, + 984, 983, 982, 981, 980, 979, 978, 975, 974, 973, + 972, 971, 970, 969, 968, 967, 966, 965, 964, 963, + 962, 961, 960, 957, 956, 955, 954, 953, 952, 951, + 947, 946, 945, 944, 943, 942, 941, 940, 939, 938, + 937, 936, 935, 934, 930, 929, 928, 927, 926, 925, + 924, 923, 922, 919, 918, 917, 916, 915, 914, 913, + 910, 909, 908, 907, 906, 905, 904, 903, 902, 901, + + 900, 899, 898, 897, 896, 895, 894, 893, 892, 891, + 890, 889, 888, 887, 886, 885, 884, 883, 882, 881, + 880, 879, 878, 877, 876, 875, 872, 871, 870, 869, + 868, 867, 866, 863, 862, 861, 860, 859, 858, 857, + 856, 855, 854, 853, 852, 851, 850, 849, 848, 847, + 846, 845, 844, 843, 842, 841, 840, 839, 838, 837, + 836, 835, 834, 833, 832, 831, 830, 829, 828, 827, + 575, 573, 780, 819, 818, 817, 816, 758, 740, 815, + 734, 814, 728, 813, 704, 812, 810, 671, 809, 808, + 655, 807, 640, 806, 636, 805, 804, 803, 802, 801, + + 800, 799, 798, 797, 796, 795, 794, 793, 792, 791, + 790, 789, 788, 787, 526, 786, 785, 784, 781, 778, + 777, 776, 775, 774, 773, 772, 771, 770, 769, 768, + 767, 766, 765, 764, 763, 762, 761, 760, 757, 756, + 755, 754, 753, 752, 751, 750, 749, 748, 747, 746, + 745, 742, 737, 736, 733, 732, 731, 730, 727, 726, + 725, 724, 723, 722, 721, 720, 719, 718, 717, 706, + 705, 702, 690, 689, 688, 687, 686, 685, 684, 683, + 682, 681, 680, 677, 676, 675, 674, 673, 670, 669, + 668, 667, 666, 665, 664, 663, 662, 661, 658, 657, + + 656, 653, 652, 651, 650, 649, 648, 647, 646, 645, + 644, 643, 642, 639, 638, 634, 633, 632, 631, 630, + 629, 628, 627, 626, 625, 624, 623, 622, 621, 620, + 619, 618, 617, 616, 615, 612, 360, 360, 610, 609, + 606, 605, 604, 603, 602, 601, 600, 597, 596, 595, + 592, 589, 588, 587, 314, 333, 327, 575, 573, 571, + 570, 510, 568, 500, 567, 566, 487, 479, 563, 471, + 562, 561, 560, 460, 453, 559, 443, 558, 557, 554, + 425, 552, 407, 404, 550, 549, 546, 382, 545, 544, + 543, 542, 541, 540, 537, 536, 535, 534, 531, 530, + + 529, 528, 527, 526, 253, 253, 524, 523, 522, 521, + 520, 519, 518, 517, 516, 515, 514, 510, 504, 503, + 502, 499, 498, 494, 493, 492, 491, 490, 489, 480, + 474, 473, 472, 469, 468, 467, 466, 465, 464, 463, + 458, 457, 446, 445, 437, 436, 435, 434, 429, 428, + 427, 426, 422, 421, 420, 419, 414, 411, 408, 403, + 402, 401, 398, 397, 392, 391, 390, 387, 384, 381, + 376, 146, 371, 370, 134, 134, 363, 363, 360, 360, + 358, 350, 357, 356, 355, 352, 345, 342, 324, 325, + 322, 315, 314, 313, 312, 293, 183, 275, 273, 272, + + 271, 267, 266, 265, 264, 261, 260, 259, 258, 257, + 253, 218, 188, 146, 134, 1938, 13, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938 } ; -static yyconst flex_int16_t yy_chk[4484] = +static yyconst flex_int16_t yy_chk[2476] = { 0, 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, 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, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 5, 5, - 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 1, 1, 1, 1, 1, 1, 1, 1, 3, 3, + 9, 105, 9, 9, 10, 9, 10, 10, 9, 10, + 582, 3, 10, 11, 21, 21, 11, 105, 3, 12, + 35, 3, 12, 3, 35, 3, 3, 3, 21, 32, + 11, 3, 582, 32, 3, 3, 12, 32, 3, 3, + + 3, 3, 3, 3, 15, 3, 15, 15, 110, 20, + 3, 20, 20, 3, 4, 4, 23, 38, 23, 23, + 25, 75, 25, 110, 29, 29, 29, 4, 762, 25, + 29, 38, 23, 88, 4, 88, 29, 4, 75, 4, + 37, 4, 4, 4, 37, 26, 152, 4, 37, 26, + 4, 4, 152, 26, 4, 4, 4, 4, 4, 4, + 37, 4, 26, 46, 37, 26, 4, 46, 100, 4, + 5, 5, 27, 763, 27, 5, 100, 27, 27, 33, + 33, 27, 53, 53, 27, 479, 33, 27, 27, 53, + 5, 68, 479, 68, 68, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - 5, 5, 7, 7, 7, 7, 7, 7, 7, 7, - 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, + 5, 5, 5, 5, 5, 5, 5, 5, 217, 59, + 77, 77, 5, 59, 217, 5, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, - 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, - 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, - 7, 7, 7, 7, 7, 7, 9, 571, 9, 9, - 10, 9, 10, 10, 9, 10, 11, 12, 10, 11, - 12, 15, 1895, 15, 15, 20, 33, 20, 20, 21, - 21, 34, 100, 40, 53, 34, 54, 55, 21, 118, - 100, 1878, 23, 118, 23, 23, 68, 573, 68, 68, - 353, 571, 353, 23, 24, 1255, 24, 33, 1162, 11, - 12, 615, 34, 24, 40, 53, 34, 54, 55, 21, + 7, 7, 7, 7, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, - 22, 22, 22, 22, 23, 24, 22, 24, 573, 22, - 56, 22, 25, 29, 24, 57, 25, 29, 59, 572, - 25, 29, 570, 60, 32, 32, 61, 29, 62, 25, - 29, 32, 25, 27, 64, 65, 27, 27, 22, 22, - 22, 56, 22, 25, 29, 542, 57, 25, 29, 59, - 27, 25, 29, 27, 60, 32, 32, 61, 29, 62, - 25, 29, 32, 25, 27, 64, 65, 27, 27, 22, - 22, 22, 22, 22, 26, 66, 26, 463, 70, 26, - 26, 27, 358, 26, 27, 37, 26, 76, 81, 26, - - 26, 28, 28, 28, 31, 106, 30, 28, 31, 37, - 30, 356, 31, 28, 30, 26, 66, 26, 45, 70, - 26, 26, 45, 30, 26, 352, 37, 26, 76, 81, - 26, 26, 28, 28, 28, 31, 106, 30, 28, 31, - 37, 30, 58, 31, 28, 30, 58, 365, 365, 45, - 67, 67, 347, 45, 30, 35, 36, 35, 78, 35, - 36, 63, 78, 35, 36, 107, 35, 63, 88, 35, - 88, 41, 35, 58, 314, 41, 36, 58, 63, 41, - 36, 366, 366, 67, 312, 41, 35, 36, 35, 78, - 35, 36, 63, 78, 35, 36, 107, 35, 63, 88, - - 35, 88, 41, 35, 77, 77, 41, 36, 109, 63, - 41, 36, 38, 38, 103, 39, 41, 74, 270, 39, - 38, 74, 38, 39, 38, 74, 39, 38, 38, 39, - 103, 74, 39, 138, 138, 77, 77, 138, 138, 109, - 69, 252, 69, 38, 38, 103, 39, 251, 74, 69, - 39, 38, 74, 38, 39, 38, 74, 39, 38, 38, - 39, 103, 74, 39, 42, 42, 42, 249, 43, 42, - 42, 69, 43, 69, 42, 113, 43, 105, 42, 44, - 69, 42, 43, 42, 115, 43, 42, 75, 44, 80, - 44, 105, 43, 80, 44, 42, 42, 42, 44, 43, - - 42, 42, 139, 43, 75, 42, 113, 43, 105, 42, - 44, 133, 42, 43, 42, 115, 43, 42, 75, 44, - 80, 44, 105, 43, 80, 44, 46, 46, 132, 44, - 46, 71, 46, 71, 46, 75, 73, 73, 72, 46, - 71, 72, 72, 71, 116, 79, 71, 73, 125, 79, - 84, 102, 124, 79, 84, 102, 120, 46, 46, 79, - 119, 46, 71, 46, 71, 46, 101, 73, 73, 72, - 46, 71, 72, 72, 71, 116, 79, 71, 73, 82, - 79, 84, 102, 83, 79, 84, 102, 82, 108, 82, - 79, 83, 85, 85, 82, 82, 104, 83, 86, 104, - - 83, 112, 86, 108, 85, 112, 87, 127, 86, 85, - 82, 86, 367, 367, 83, 87, 99, 87, 82, 108, - 82, 87, 83, 85, 85, 82, 82, 104, 83, 86, - 104, 83, 112, 86, 108, 85, 112, 87, 127, 86, - 85, 90, 86, 90, 90, 128, 87, 91, 87, 91, - 91, 96, 87, 96, 96, 97, 97, 98, 110, 98, - 98, 111, 114, 117, 97, 141, 114, 123, 98, 123, - 123, 111, 117, 110, 129, 95, 128, 129, 117, 130, - 94, 130, 130, 93, 144, 146, 143, 143, 117, 110, - 143, 143, 111, 114, 117, 97, 141, 114, 148, 98, - - 150, 153, 111, 117, 110, 134, 134, 147, 135, 117, - 135, 135, 137, 137, 134, 144, 146, 129, 147, 135, - 92, 137, 372, 372, 373, 373, 49, 142, 142, 148, - 48, 150, 153, 574, 574, 19, 142, 151, 147, 154, - 155, 13, 318, 318, 0, 134, 318, 318, 159, 147, - 135, 151, 137, 140, 140, 140, 140, 140, 140, 140, - 140, 140, 140, 140, 140, 140, 140, 142, 151, 140, - 154, 155, 140, 145, 140, 149, 156, 145, 157, 159, - 157, 149, 151, 160, 145, 162, 163, 164, 165, 162, - 145, 167, 167, 168, 169, 170, 156, 172, 169, 166, - - 174, 140, 140, 140, 145, 140, 149, 156, 145, 157, - 0, 157, 149, 166, 160, 145, 162, 163, 164, 165, - 162, 145, 167, 167, 168, 169, 170, 156, 172, 169, - 166, 174, 140, 140, 140, 140, 140, 171, 175, 176, - 173, 171, 173, 173, 166, 177, 173, 178, 179, 180, - 181, 182, 184, 185, 186, 178, 187, 190, 183, 183, - 0, 178, 190, 190, 183, 191, 193, 198, 171, 175, - 176, 173, 171, 173, 173, 183, 177, 173, 178, 179, - 180, 181, 182, 184, 185, 186, 178, 187, 190, 183, - 183, 188, 178, 190, 190, 183, 191, 193, 198, 196, - - 195, 199, 195, 195, 202, 200, 183, 188, 195, 188, - 197, 197, 197, 200, 188, 196, 201, 203, 197, 204, - 201, 205, 188, 206, 207, 208, 209, 210, 209, 211, - 196, 195, 199, 195, 195, 202, 200, 212, 188, 195, - 188, 197, 197, 197, 200, 188, 196, 201, 203, 197, - 204, 201, 205, 215, 206, 207, 208, 209, 210, 209, - 211, 213, 216, 214, 213, 218, 219, 216, 212, 214, - 220, 213, 217, 217, 221, 222, 223, 225, 217, 226, - 228, 0, 217, 217, 215, 217, 224, 224, 227, 229, - 230, 233, 213, 216, 214, 213, 218, 219, 216, 224, - - 214, 220, 213, 217, 217, 221, 222, 223, 225, 217, - 226, 228, 227, 217, 217, 231, 217, 224, 224, 227, - 229, 230, 233, 232, 234, 232, 231, 235, 238, 240, - 224, 232, 234, 241, 242, 243, 244, 245, 246, 247, - 248, 253, 254, 227, 234, 255, 231, 256, 257, 259, - 260, 258, 261, 262, 232, 234, 232, 231, 235, 238, - 240, 264, 232, 234, 241, 242, 243, 244, 245, 246, - 247, 248, 253, 254, 258, 234, 255, 263, 256, 257, - 259, 260, 258, 261, 262, 265, 266, 267, 268, 269, - 263, 273, 264, 271, 271, 0, 274, 275, 273, 276, - - 277, 276, 278, 279, 273, 258, 280, 281, 263, 282, - 283, 281, 283, 283, 284, 285, 265, 266, 267, 268, - 269, 263, 273, 287, 288, 289, 271, 274, 275, 273, - 276, 277, 276, 278, 279, 273, 290, 280, 281, 291, - 282, 283, 281, 283, 283, 284, 285, 286, 292, 293, - 295, 296, 297, 286, 287, 288, 289, 298, 299, 300, - 301, 302, 303, 304, 286, 305, 306, 290, 299, 308, - 291, 309, 310, 575, 575, 578, 578, 306, 286, 292, - 293, 295, 296, 297, 286, 325, 326, 0, 298, 299, - 300, 301, 302, 303, 304, 286, 305, 306, 307, 299, - - 308, 327, 309, 310, 315, 315, 307, 316, 306, 316, - 316, 317, 317, 315, 319, 319, 325, 326, 316, 328, - 317, 320, 320, 319, 330, 320, 320, 329, 329, 307, - 331, 332, 327, 333, 334, 336, 337, 307, 339, 341, - 342, 343, 344, 331, 315, 345, 346, 345, 368, 316, - 328, 317, 348, 349, 319, 330, 579, 579, 329, 329, - 0, 331, 332, 0, 333, 334, 336, 337, 350, 339, - 341, 342, 343, 344, 331, 374, 345, 346, 345, 368, - 348, 349, 375, 348, 349, 363, 363, 364, 364, 350, - 376, 364, 364, 377, 363, 370, 370, 371, 371, 350, - - 378, 371, 371, 379, 370, 380, 374, 381, 382, 383, - 384, 385, 386, 375, 387, 388, 389, 390, 391, 392, - 393, 376, 396, 397, 377, 363, 399, 0, 400, 401, - 402, 378, 403, 404, 379, 370, 380, 406, 381, 382, - 383, 384, 385, 386, 394, 387, 388, 389, 390, 391, - 392, 393, 394, 396, 397, 398, 407, 399, 394, 400, - 401, 402, 408, 403, 404, 409, 410, 411, 406, 412, - 413, 414, 398, 415, 416, 394, 417, 412, 419, 420, - 421, 422, 423, 394, 416, 424, 398, 407, 425, 394, - 426, 427, 429, 408, 430, 428, 409, 410, 411, 428, - - 412, 413, 414, 398, 415, 416, 431, 417, 412, 419, - 420, 421, 422, 423, 432, 416, 424, 433, 434, 425, - 435, 426, 427, 429, 436, 430, 428, 437, 434, 438, - 428, 439, 440, 441, 442, 443, 446, 431, 447, 0, - 604, 449, 604, 451, 0, 432, 452, 0, 433, 434, - 0, 435, 450, 0, 454, 436, 450, 0, 437, 434, - 438, 0, 439, 440, 441, 442, 443, 446, 455, 447, - 448, 448, 449, 448, 451, 448, 448, 452, 448, 456, - 457, 448, 458, 450, 448, 454, 459, 450, 448, 448, - 460, 461, 448, 0, 605, 464, 605, 465, 0, 455, - - 467, 448, 448, 468, 448, 469, 448, 448, 470, 448, - 456, 457, 448, 458, 466, 448, 472, 459, 466, 448, - 448, 460, 461, 448, 453, 453, 464, 453, 465, 453, - 453, 467, 453, 471, 468, 453, 469, 473, 474, 470, - 475, 471, 453, 453, 476, 466, 453, 472, 478, 466, - 477, 475, 479, 480, 481, 453, 453, 477, 453, 482, - 453, 453, 474, 453, 471, 483, 453, 484, 473, 474, - 485, 475, 471, 453, 453, 476, 486, 453, 487, 478, - 488, 477, 475, 479, 480, 481, 489, 491, 477, 493, - 482, 492, 494, 474, 495, 496, 483, 497, 484, 498, - - 499, 485, 501, 492, 502, 503, 504, 486, 505, 487, - 506, 488, 507, 508, 509, 510, 511, 489, 491, 512, - 493, 514, 492, 494, 513, 495, 496, 516, 497, 513, - 498, 499, 519, 501, 492, 502, 503, 504, 522, 505, - 523, 506, 515, 507, 508, 509, 510, 511, 524, 525, - 512, 526, 514, 527, 515, 513, 528, 529, 516, 530, - 513, 532, 533, 519, 534, 535, 536, 537, 538, 522, - 539, 523, 540, 515, 544, 545, 546, 547, 548, 524, - 525, 549, 526, 550, 527, 515, 551, 528, 529, 552, - 530, 553, 532, 533, 554, 534, 535, 536, 537, 538, - - 555, 539, 556, 540, 557, 544, 545, 546, 547, 548, - 555, 558, 549, 559, 550, 560, 561, 551, 562, 563, - 552, 564, 553, 565, 566, 554, 567, 568, 569, 576, - 576, 555, 580, 556, 0, 557, 581, 582, 576, 583, - 584, 555, 558, 585, 559, 586, 560, 561, 587, 562, - 563, 588, 564, 589, 565, 566, 590, 567, 568, 569, - 577, 577, 591, 580, 577, 577, 592, 581, 582, 576, - 583, 584, 594, 595, 585, 596, 586, 597, 598, 587, - 599, 600, 588, 601, 589, 602, 0, 590, 610, 603, - 606, 606, 601, 591, 608, 608, 611, 592, 602, 609, - - 609, 612, 613, 594, 595, 614, 596, 616, 597, 598, - 617, 599, 600, 618, 601, 619, 602, 603, 620, 610, - 603, 621, 622, 624, 625, 626, 627, 611, 628, 629, - 630, 631, 612, 613, 632, 633, 614, 633, 616, 634, - 635, 617, 636, 625, 618, 637, 619, 639, 640, 620, - 641, 642, 621, 622, 624, 625, 626, 627, 643, 628, - 629, 630, 631, 644, 645, 632, 633, 646, 633, 647, - 634, 635, 649, 636, 625, 650, 637, 651, 639, 640, - 652, 641, 642, 653, 654, 655, 657, 658, 659, 643, - 660, 661, 662, 663, 644, 645, 664, 665, 646, 666, - - 647, 667, 668, 649, 669, 670, 650, 671, 651, 673, - 675, 652, 676, 674, 653, 654, 655, 657, 658, 659, - 674, 660, 661, 662, 663, 677, 678, 664, 665, 679, - 666, 680, 667, 668, 682, 669, 670, 684, 671, 683, - 673, 675, 686, 676, 674, 687, 683, 688, 689, 690, - 691, 674, 692, 693, 695, 696, 677, 678, 697, 698, - 679, 699, 680, 700, 701, 682, 702, 703, 684, 694, - 683, 704, 705, 686, 706, 694, 687, 683, 688, 689, - 690, 691, 707, 692, 693, 695, 696, 694, 708, 697, - 698, 710, 699, 709, 700, 701, 711, 702, 703, 709, - - 694, 712, 704, 705, 713, 706, 694, 714, 716, 718, - 719, 709, 720, 707, 719, 721, 722, 723, 694, 708, - 724, 725, 710, 726, 709, 727, 728, 711, 729, 730, - 709, 731, 712, 732, 733, 713, 734, 735, 714, 716, - 718, 719, 709, 720, 736, 719, 721, 722, 723, 736, - 737, 724, 725, 738, 726, 739, 727, 728, 740, 729, - 730, 741, 731, 742, 732, 733, 743, 734, 735, 744, - 745, 746, 747, 748, 749, 736, 750, 751, 752, 753, - 736, 737, 754, 755, 738, 756, 739, 757, 758, 740, - 759, 760, 741, 761, 742, 762, 763, 743, 768, 0, - - 744, 745, 746, 747, 748, 749, 769, 750, 751, 752, - 753, 764, 770, 754, 755, 764, 756, 771, 757, 758, - 766, 759, 760, 772, 761, 774, 762, 763, 775, 768, - 766, 776, 777, 778, 779, 780, 782, 769, 783, 784, - 785, 786, 764, 770, 787, 788, 764, 789, 771, 790, - 791, 766, 792, 793, 772, 794, 774, 796, 797, 775, - 798, 766, 776, 777, 778, 779, 780, 782, 799, 783, - 784, 785, 786, 800, 802, 787, 788, 804, 789, 805, - 790, 791, 806, 792, 793, 807, 794, 808, 796, 797, - 809, 798, 810, 812, 813, 816, 816, 817, 817, 799, - - 819, 820, 821, 822, 800, 802, 823, 824, 804, 825, - 805, 826, 827, 806, 828, 829, 807, 830, 808, 831, - 832, 809, 833, 810, 812, 813, 834, 835, 836, 837, - 843, 819, 820, 821, 822, 838, 840, 823, 824, 845, - 825, 846, 826, 827, 848, 828, 829, 849, 830, 840, - 831, 832, 851, 833, 839, 839, 852, 834, 835, 836, - 837, 843, 853, 838, 854, 855, 838, 840, 856, 858, - 845, 859, 846, 859, 860, 848, 861, 862, 849, 863, - 864, 865, 866, 851, 868, 869, 870, 852, 871, 874, - 876, 877, 877, 853, 879, 854, 855, 880, 881, 856, - - 858, 882, 859, 883, 859, 860, 884, 861, 862, 886, - 863, 864, 865, 866, 887, 868, 869, 870, 889, 871, - 874, 876, 877, 877, 890, 879, 893, 894, 880, 881, - 896, 897, 882, 895, 883, 899, 902, 884, 900, 903, - 886, 904, 905, 895, 908, 887, 895, 895, 900, 889, - 895, 895, 910, 906, 911, 890, 906, 893, 894, 906, - 912, 896, 897, 906, 895, 913, 899, 902, 906, 900, - 903, 914, 904, 905, 895, 908, 915, 895, 895, 900, - 916, 895, 895, 910, 906, 911, 917, 906, 918, 919, - 906, 912, 920, 921, 906, 922, 913, 923, 924, 906, - - 925, 926, 914, 927, 928, 929, 930, 915, 932, 933, - 934, 916, 935, 936, 937, 938, 939, 917, 940, 918, - 919, 941, 942, 920, 921, 943, 922, 944, 923, 924, - 946, 925, 926, 948, 927, 928, 929, 930, 949, 932, - 933, 934, 950, 935, 936, 937, 938, 939, 951, 940, - 952, 953, 941, 942, 954, 955, 943, 956, 944, 957, - 958, 946, 959, 960, 948, 961, 962, 963, 964, 949, - 965, 966, 967, 950, 968, 969, 970, 971, 972, 951, - 973, 952, 953, 968, 974, 954, 955, 973, 956, 975, - 957, 958, 976, 959, 960, 977, 961, 962, 963, 964, - - 978, 965, 966, 967, 979, 968, 969, 970, 971, 972, - 980, 973, 981, 985, 968, 974, 986, 987, 973, 984, - 975, 984, 988, 976, 989, 990, 977, 992, 993, 994, - 995, 978, 997, 998, 999, 979, 1000, 984, 1002, 1003, - 999, 980, 1004, 981, 985, 1005, 1008, 986, 987, 1003, - 984, 1009, 984, 988, 1010, 989, 990, 1011, 992, 993, - 994, 995, 1015, 997, 998, 999, 1016, 1000, 984, 1002, - 1003, 999, 1017, 1004, 1020, 1021, 1005, 1008, 1022, 1023, - 1003, 1024, 1009, 1025, 1027, 1010, 1031, 1032, 1011, 1017, - 1029, 1033, 1029, 1015, 1035, 1034, 1036, 1016, 1037, 1038, - - 1039, 1040, 1041, 1017, 1034, 1020, 1021, 1042, 1043, 1022, - 1023, 1044, 1024, 1045, 1025, 1027, 1046, 1031, 1032, 1047, - 1017, 1029, 1033, 1029, 1048, 1035, 1034, 1036, 1049, 1037, - 1038, 1039, 1040, 1041, 1050, 1034, 1051, 1053, 1042, 1043, - 1054, 1055, 1044, 1056, 1045, 1057, 0, 1046, 1058, 1058, - 1047, 1059, 1061, 1062, 1060, 1048, 1063, 1064, 1065, 1049, - 1066, 1068, 1071, 1073, 1074, 1050, 1075, 1051, 1053, 1076, - 1078, 1054, 1055, 1079, 1056, 1080, 1057, 1059, 1060, 1081, - 1082, 1083, 1059, 1061, 1062, 1060, 1085, 1063, 1064, 1065, - 1086, 1066, 1068, 1071, 1073, 1074, 1087, 1075, 1088, 1090, - - 1076, 1078, 1092, 1094, 1079, 1096, 1080, 1097, 1098, 1099, - 1081, 1082, 1083, 1102, 1103, 1104, 1105, 1085, 1106, 1107, - 1109, 1086, 1110, 1111, 1112, 1113, 1114, 1087, 1115, 1088, - 1090, 1116, 1117, 1092, 1094, 1118, 1096, 1119, 1097, 1098, - 1099, 1121, 1124, 1125, 1102, 1103, 1104, 1105, 1126, 1106, - 1107, 1109, 1120, 1110, 1111, 1112, 1113, 1114, 1127, 1115, - 1120, 1128, 1116, 1117, 1129, 1130, 1118, 1131, 1119, 1132, - 1133, 1134, 1121, 1124, 1125, 1135, 1136, 1137, 1138, 1126, - 1139, 1140, 1142, 1120, 1144, 1145, 1146, 1147, 1148, 1127, - 1149, 1120, 1128, 1150, 1151, 1129, 1130, 1152, 1131, 1153, - - 1132, 1133, 1134, 1154, 1155, 1156, 1135, 1136, 1137, 1138, - 1157, 1139, 1140, 1142, 1158, 1144, 1145, 1146, 1147, 1148, - 1161, 1149, 1163, 1164, 1150, 1151, 1165, 1166, 1152, 1167, - 1153, 1168, 1169, 1170, 1154, 1155, 1156, 1175, 1176, 1177, - 1178, 1157, 1179, 1180, 1181, 1158, 1182, 1183, 1184, 1185, - 1186, 1161, 1188, 1163, 1164, 1190, 1191, 1165, 1166, 1192, - 1167, 1193, 1168, 1169, 1170, 1194, 1195, 1196, 1175, 1176, - 1177, 1178, 1197, 1179, 1180, 1181, 1199, 1182, 1183, 1184, - 1185, 1186, 1202, 1188, 1198, 1205, 1190, 1191, 1206, 1207, - 1192, 1208, 1193, 1209, 1210, 1211, 1194, 1195, 1196, 1212, - - 1198, 1213, 1214, 1197, 1215, 1216, 1217, 1199, 1218, 1221, - 1223, 1224, 1226, 1202, 1227, 1198, 1205, 1228, 1229, 1206, - 1207, 1230, 1208, 1231, 1209, 1210, 1211, 1232, 1234, 1237, - 1212, 1198, 1213, 1214, 1238, 1215, 1216, 1217, 1239, 1218, - 1221, 1223, 1224, 1226, 1240, 1227, 1241, 1242, 1228, 1229, - 1243, 1244, 1230, 1245, 1231, 1247, 1248, 1249, 1232, 1234, - 1237, 1250, 1251, 1253, 1256, 1238, 1254, 1257, 1258, 1239, - 1259, 1260, 1261, 1262, 1263, 1240, 1264, 1241, 1242, 1265, - 1267, 1243, 1244, 1268, 1245, 1270, 1247, 1248, 1249, 1253, - 1254, 1271, 1250, 1251, 1253, 1256, 1273, 1254, 1257, 1258, - - 1275, 1259, 1260, 1261, 1262, 1263, 1276, 1264, 1277, 1279, - 1265, 1267, 1281, 1282, 1268, 1283, 1270, 1284, 1285, 1286, - 1287, 1288, 1271, 1289, 1290, 1292, 1293, 1273, 1294, 1295, - 1297, 1275, 1298, 1299, 1300, 1301, 1302, 1276, 1303, 1277, - 1279, 1304, 1305, 1281, 1282, 1307, 1283, 1308, 1284, 1285, - 1286, 1287, 1288, 1310, 1289, 1290, 1292, 1293, 1311, 1294, - 1295, 1297, 1312, 1298, 1299, 1300, 1301, 1302, 1313, 1303, - 1314, 1315, 1304, 1305, 1316, 1317, 1307, 1319, 1308, 1320, - 1321, 1322, 1323, 1325, 1310, 1326, 1327, 1328, 1329, 1311, - 1330, 1331, 1333, 1312, 1334, 1335, 1336, 1337, 1339, 1313, - - 1339, 1314, 1315, 1341, 1342, 1316, 1317, 1343, 1319, 1345, - 1320, 1321, 1322, 1323, 1325, 1347, 1326, 1327, 1328, 1329, - 1348, 1330, 1331, 1333, 1342, 1334, 1335, 1336, 1337, 1339, - 1350, 1339, 1344, 1344, 1341, 1342, 1352, 1353, 1343, 1354, - 1345, 1355, 1356, 1344, 1357, 1344, 1347, 1358, 1359, 1344, - 1360, 1348, 1361, 1362, 1363, 1342, 1364, 1365, 1366, 1367, - 1368, 1350, 1369, 1344, 1344, 1370, 1371, 1352, 1353, 1372, - 1354, 1373, 1355, 1356, 1344, 1357, 1344, 1375, 1358, 1359, - 1344, 1360, 1376, 1361, 1362, 1363, 1377, 1364, 1365, 1366, - 1367, 1368, 1374, 1369, 1374, 1378, 1370, 1371, 1380, 1381, - - 1372, 1382, 1373, 1383, 1384, 1385, 1386, 1387, 1375, 1388, - 1389, 1390, 1391, 1376, 1392, 1393, 1394, 1377, 1395, 0, - 0, 1397, 1399, 1374, 1401, 1374, 1378, 1402, 1404, 1380, - 1381, 1405, 1382, 1406, 1383, 1384, 1385, 1386, 1387, 1407, - 1388, 1389, 1390, 1391, 1408, 1392, 1393, 1394, 1409, 1395, - 1396, 1396, 1397, 1399, 1410, 1401, 1412, 1413, 1402, 1404, - 1415, 1416, 1405, 1396, 1406, 1417, 1418, 1396, 1419, 1421, - 1407, 1422, 1423, 1424, 1413, 1408, 1425, 1426, 1427, 1409, - 1412, 1396, 1396, 1428, 1429, 1410, 1431, 1412, 1413, 1432, - 1433, 1415, 1416, 1434, 1396, 1435, 1417, 1418, 1396, 1419, - - 1421, 1436, 1422, 1423, 1424, 1438, 1439, 1425, 1426, 1427, - 1440, 1441, 1442, 1444, 1428, 1429, 1445, 1431, 1446, 1448, - 1432, 1433, 1449, 1450, 1434, 1451, 1435, 1452, 1453, 1454, - 1455, 1456, 1436, 1457, 1458, 1459, 1438, 1439, 1460, 1461, - 1462, 1440, 1441, 1442, 1444, 1463, 1464, 1445, 1465, 1446, - 1448, 1466, 1467, 1449, 1450, 1468, 1451, 1472, 1452, 1453, - 1454, 1455, 1456, 1473, 1457, 1458, 1459, 1474, 1475, 1460, - 1461, 1462, 1476, 1477, 1478, 1479, 1463, 1464, 1480, 1465, - 1483, 1484, 1466, 1467, 1485, 1486, 1468, 1487, 1472, 1488, - 1489, 1490, 1491, 1492, 1473, 1493, 1496, 1494, 1474, 1475, - - 1497, 1492, 1499, 1476, 1477, 1478, 1479, 1500, 1502, 1480, - 1503, 1483, 1484, 1494, 1504, 1485, 1486, 1506, 1487, 1507, - 1488, 1489, 1490, 1491, 1492, 1508, 1493, 1496, 1494, 1509, - 1511, 1497, 1492, 1499, 1513, 1514, 1516, 1517, 1500, 1502, - 1518, 1503, 1519, 1520, 1494, 1504, 1521, 1522, 1506, 1523, - 1507, 1525, 1527, 1528, 1529, 1533, 1508, 1534, 1535, 1536, - 1509, 1511, 1537, 1539, 1540, 1513, 1514, 1516, 1517, 1542, - 1545, 1518, 1548, 1519, 1520, 1549, 1551, 1521, 1522, 1552, - 1523, 1554, 1525, 1527, 1528, 1529, 1533, 1555, 1534, 1535, - 1536, 1556, 1557, 1537, 1539, 1540, 1559, 1561, 1554, 1563, - - 1542, 1545, 1565, 1548, 1555, 1566, 1549, 1551, 1567, 1569, - 1552, 1570, 1554, 1572, 1573, 1574, 1576, 1579, 1555, 1581, - 1584, 1585, 1556, 1557, 1586, 1587, 1589, 1559, 1561, 1590, - 1563, 1591, 1592, 1565, 1593, 1594, 1566, 1595, 1596, 1567, - 1569, 1597, 1570, 1598, 1572, 1573, 1574, 1576, 1579, 1599, - 1581, 1584, 1585, 1601, 1602, 1586, 1587, 1589, 1603, 1604, - 1590, 1605, 1591, 1592, 1606, 1593, 1594, 1607, 1595, 1596, - 1608, 1609, 1597, 1611, 1598, 1612, 1613, 1614, 1615, 1616, - 1599, 1617, 1618, 1619, 1601, 1602, 1620, 1621, 1622, 1603, - 1604, 1623, 1605, 1624, 1625, 1606, 1626, 1627, 1607, 1628, - - 1629, 1608, 1609, 1630, 1611, 1631, 1612, 1613, 1614, 1615, - 1616, 1632, 1617, 1618, 1619, 1633, 1634, 1620, 1621, 1622, - 1637, 1638, 1623, 1639, 1624, 1625, 1640, 1626, 1627, 1641, - 1628, 1629, 1642, 1643, 1630, 1647, 1631, 1649, 1651, 1653, - 1654, 1655, 1632, 1656, 1658, 1660, 1633, 1634, 1661, 1662, - 1663, 1637, 1638, 1664, 1639, 1665, 1667, 1640, 1669, 1671, - 1641, 1672, 1675, 1642, 1643, 1676, 1647, 1668, 1649, 1651, - 1653, 1654, 1655, 1667, 1656, 1658, 1660, 1668, 1677, 1661, - 1662, 1663, 1680, 1681, 1664, 1683, 1665, 1667, 1688, 1669, - 1671, 1689, 1672, 1675, 1690, 1691, 1676, 1692, 1668, 1693, - - 1696, 1697, 1698, 1699, 1700, 1701, 1702, 1703, 1705, 1677, - 1706, 1707, 1708, 1680, 1681, 1709, 1683, 1710, 1711, 1688, - 1712, 1713, 1689, 1715, 1716, 1690, 1691, 1717, 1692, 1718, - 1693, 1696, 1697, 1698, 1699, 1700, 1701, 1702, 1703, 1705, - 1719, 1706, 1707, 1708, 1720, 1721, 1709, 1722, 1710, 1711, - 1723, 1712, 1713, 1724, 1715, 1716, 1725, 1726, 1717, 1727, - 1718, 1729, 1732, 1734, 1738, 1740, 1741, 1742, 1743, 1745, - 1749, 1719, 1754, 1757, 1758, 1720, 1721, 1759, 1722, 1761, - 1762, 1723, 1754, 1763, 1724, 1743, 1755, 1725, 1726, 1764, - 1727, 1766, 1729, 1732, 1734, 1738, 1740, 1741, 1742, 1743, - - 1745, 1749, 1767, 1754, 1757, 1758, 1755, 1768, 1759, 1769, - 1761, 1762, 1770, 1775, 1763, 1776, 1743, 1755, 1777, 1780, - 1764, 1783, 1766, 1784, 1786, 1788, 1789, 1790, 1791, 1792, - 1793, 1794, 1795, 1767, 1796, 1798, 1801, 1803, 1768, 1805, - 1769, 1806, 1807, 1770, 1775, 1808, 1776, 1810, 1814, 1777, - 1780, 1812, 1783, 1816, 1784, 1786, 1788, 1789, 1790, 1791, - 1792, 1793, 1794, 1795, 1817, 1796, 1798, 1801, 1803, 1819, - 1805, 1812, 1806, 1807, 1813, 1821, 1808, 1813, 1810, 1814, - 1822, 1823, 1812, 1825, 1816, 1826, 1827, 1829, 1830, 1832, - 1833, 1837, 1839, 1840, 1841, 1817, 1842, 1843, 1844, 1845, - - 1819, 1846, 1847, 1849, 1850, 1813, 1821, 1850, 1852, 1853, - 1856, 1822, 1823, 1851, 1825, 1857, 1826, 1827, 1829, 1830, - 1832, 1833, 1837, 1839, 1840, 1841, 1859, 1842, 1843, 1844, - 1845, 1860, 1846, 1847, 1849, 1850, 1862, 1851, 1866, 1852, - 1853, 1856, 1867, 1868, 1851, 1869, 1857, 1871, 1872, 1873, - 1874, 1875, 1879, 1877, 1881, 1882, 1883, 1859, 1884, 1886, - 1889, 1892, 1860, 1893, 1898, 1899, 1902, 1862, 1903, 1866, - 1904, 1907, 1908, 1867, 1868, 1909, 1869, 1877, 1871, 1872, - 1873, 1874, 1875, 1879, 1877, 1881, 1882, 1883, 1910, 1884, - 1886, 1889, 1892, 1912, 1893, 1898, 1899, 1902, 1913, 1903, - - 1914, 1904, 1907, 1908, 1915, 1918, 1909, 1919, 1920, 1922, - 1923, 0, 0, 0, 0, 0, 0, 0, 0, 1910, - 0, 0, 0, 0, 1912, 0, 0, 0, 0, 1913, - 0, 1914, 0, 0, 0, 1915, 1918, 0, 1919, 1920, - 1922, 1923, 1926, 1926, 1926, 1926, 1926, 1926, 1926, 1926, - 1926, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, 1927, - 1928, 0, 1928, 1928, 1928, 1928, 1928, 1928, 1928, 1929, - 0, 1929, 1929, 1929, 1929, 1929, 1929, 1929, 1930, 1930, - 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1931, 1932, - 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1933, 0, - - 1933, 1933, 1933, 1933, 1933, 1933, 1933, 1934, 0, 1934, - 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1935, 1936, - 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1937, 1937, - 1937, 1937, 1937, 1937, 1937, 1937, 1937, 1938, 1938, 1938, - 1938, 1938, 1938, 1938, 1938, 1938, 1939, 1939, 1939, 0, - 0, 1939, 1939, 0, 1939, 1940, 1940, 1940, 1940, 1940, - 1940, 1940, 1940, 1940, 1941, 0, 0, 1941, 1941, 0, - 1941, 1942, 1942, 1942, 0, 1942, 1942, 1942, 1942, 1942, - 1943, 1943, 1943, 1943, 0, 1943, 1943, 1943, 1943, 1944, - 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1925, 1925, - - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, - 1925, 1925, 1925 + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 28, 30, 31, 28, 28, 30, 31, 64, + 42, 30, 31, 106, 42, 64, 106, 30, 42, 28, + 30, 31, 28, 36, 42, 36, 64, 36, 267, 78, + 69, 36, 69, 78, 36, 39, 39, 36, 40, 69, + 36, 267, 40, 39, 80, 39, 40, 39, 80, 40, + 39, 39, 40, 97, 97, 40, 43, 43, 43, 84, + + 44, 43, 43, 84, 44, 103, 43, 97, 44, 103, + 43, 45, 104, 43, 44, 43, 104, 44, 43, 113, + 45, 114, 45, 340, 44, 114, 45, 47, 47, 113, + 45, 47, 71, 47, 71, 47, 340, 73, 73, 72, + 47, 71, 72, 72, 71, 74, 79, 71, 73, 74, + 79, 170, 170, 74, 79, 82, 85, 85, 83, 74, + 79, 328, 107, 82, 328, 82, 83, 199, 85, 150, + 82, 82, 83, 85, 86, 83, 107, 87, 86, 90, + 150, 90, 90, 199, 86, 116, 87, 86, 87, 116, + 102, 91, 87, 91, 91, 96, 102, 96, 96, 98, + + 300, 98, 98, 112, 124, 102, 124, 124, 154, 130, + 300, 102, 130, 112, 131, 98, 131, 131, 112, 135, + 135, 136, 154, 136, 136, 159, 130, 138, 138, 764, + 139, 139, 165, 135, 139, 139, 165, 136, 143, 143, + 148, 138, 144, 144, 148, 159, 144, 144, 160, 169, + 160, 148, 143, 181, 172, 174, 191, 148, 172, 174, + 230, 181, 176, 169, 176, 176, 494, 181, 176, 186, + 186, 193, 191, 203, 191, 186, 193, 193, 494, 191, + 198, 203, 198, 198, 230, 212, 186, 212, 198, 200, + 200, 200, 204, 234, 219, 216, 204, 200, 216, 219, + + 220, 220, 227, 227, 234, 216, 220, 262, 237, 765, + 220, 220, 235, 220, 235, 227, 237, 255, 255, 274, + 235, 277, 766, 277, 255, 282, 274, 307, 237, 282, + 262, 284, 274, 284, 284, 287, 308, 515, 307, 316, + 316, 287, 515, 317, 308, 317, 317, 318, 318, 767, + 319, 319, 287, 316, 319, 319, 320, 320, 332, 317, + 332, 318, 321, 321, 330, 329, 321, 321, 329, 345, + 320, 338, 338, 355, 330, 355, 365, 365, 366, 366, + 345, 768, 366, 366, 367, 367, 368, 368, 369, 369, + 365, 372, 372, 373, 373, 374, 374, 373, 373, 375, + + 375, 396, 400, 414, 418, 372, 430, 436, 452, 396, + 430, 414, 452, 476, 418, 396, 473, 436, 468, 400, + 450, 450, 468, 450, 473, 450, 450, 584, 450, 477, + 584, 450, 573, 517, 450, 576, 576, 476, 450, 450, + 477, 575, 450, 455, 455, 517, 455, 557, 455, 455, + 573, 455, 577, 577, 455, 773, 575, 557, 578, 578, + 583, 455, 455, 579, 579, 455, 774, 579, 579, 580, + 580, 630, 578, 581, 581, 585, 724, 585, 583, 586, + 724, 586, 611, 611, 613, 613, 614, 614, 679, 638, + 630, 638, 688, 741, 699, 679, 714, 769, 741, 688, + + 699, 769, 714, 771, 775, 776, 777, 779, 780, 781, + 782, 783, 699, 771, 714, 784, 785, 787, 788, 789, + 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, + 801, 802, 803, 804, 805, 807, 809, 810, 811, 812, + 813, 814, 815, 817, 818, 821, 821, 822, 822, 823, + 824, 824, 823, 825, 828, 829, 830, 831, 832, 833, + 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, + 844, 825, 845, 846, 847, 848, 849, 851, 853, 854, + 856, 857, 859, 860, 861, 862, 863, 864, 866, 867, + 868, 867, 869, 870, 871, 872, 873, 874, 876, 877, + + 878, 879, 882, 884, 885, 885, 887, 888, 889, 890, + 891, 892, 894, 895, 897, 898, 901, 902, 903, 904, + 905, 907, 910, 908, 911, 912, 913, 916, 903, 918, + 919, 903, 903, 908, 914, 903, 903, 914, 920, 921, + 914, 922, 923, 924, 914, 925, 926, 927, 928, 914, + 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, + 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, + 950, 951, 952, 954, 956, 957, 958, 959, 960, 961, + 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, + 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, + + 982, 983, 984, 976, 985, 986, 981, 987, 988, 989, + 992, 993, 992, 994, 995, 996, 997, 998, 1000, 1001, + 1002, 1003, 1005, 1006, 1007, 1008, 1010, 1011, 992, 1012, + 1007, 1013, 1016, 1017, 1018, 1019, 1023, 1011, 1024, 1025, + 1028, 1029, 1030, 1031, 1032, 1033, 1035, 1037, 1039, 1037, + 1040, 1041, 1042, 1043, 1044, 1045, 1025, 1046, 1047, 1047, + 1048, 1042, 1049, 1050, 1051, 1048, 1052, 1053, 1054, 1049, + 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1064, 1066, + 1067, 1068, 1069, 1071, 1072, 1073, 1074, 1075, 1076, 1077, + 1079, 1082, 1084, 1085, 1086, 1087, 1089, 1090, 1091, 1092, + + 1093, 1094, 1096, 1097, 1098, 1099, 1101, 1103, 1105, 1107, + 1108, 1109, 1110, 1113, 1114, 1115, 1116, 1117, 1118, 1120, + 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, + 1131, 1132, 1135, 1136, 1137, 1138, 1139, 1140, 1131, 1141, + 1142, 1143, 1144, 1145, 1146, 1147, 1148, 1149, 1150, 1151, + 1153, 1155, 1156, 1157, 1158, 1159, 1160, 1161, 1162, 1163, + 1164, 1165, 1166, 1167, 1168, 1169, 1172, 1173, 1174, 1175, + 1176, 1177, 1178, 1179, 1180, 1181, 1186, 1187, 1188, 1189, + 1190, 1191, 1192, 1193, 1194, 1195, 1196, 1197, 1199, 1201, + 1202, 1203, 1204, 1205, 1206, 1207, 1208, 1209, 1210, 1213, + + 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225, + 1226, 1227, 1228, 1209, 1229, 1232, 1234, 1235, 1237, 1238, + 1239, 1240, 1241, 1242, 1243, 1245, 1246, 1247, 1248, 1251, + 1252, 1246, 1253, 1254, 1247, 1255, 1256, 1257, 1258, 1259, + 1260, 1262, 1263, 1264, 1265, 1266, 1268, 1269, 1270, 1271, + 1272, 1273, 1274, 1275, 1276, 1277, 1279, 1280, 1282, 1283, + 1285, 1287, 1288, 1289, 1291, 1293, 1294, 1295, 1296, 1297, + 1298, 1299, 1300, 1301, 1302, 1304, 1305, 1306, 1307, 1309, + 1310, 1311, 1312, 1313, 1314, 1315, 1316, 1317, 1319, 1320, + 1322, 1323, 1324, 1325, 1326, 1327, 1328, 1329, 1331, 1332, + + 1333, 1334, 1335, 1337, 1338, 1339, 1340, 1341, 1342, 1343, + 1345, 1346, 1347, 1348, 1349, 1351, 1353, 1351, 1354, 1355, + 1356, 1356, 1357, 1359, 1360, 1362, 1364, 1365, 1366, 1367, + 1368, 1356, 1369, 1356, 1370, 1371, 1372, 1356, 1354, 1373, + 1374, 1375, 1376, 1377, 1378, 1379, 1380, 1381, 1382, 1383, + 1384, 1385, 1386, 1387, 1386, 1388, 1389, 1390, 1392, 1393, + 1394, 1395, 1396, 1397, 1398, 1399, 1400, 1401, 1402, 1403, + 1404, 1405, 1406, 1407, 1408, 1408, 1409, 1410, 1411, 1414, + 1416, 1417, 1419, 1420, 1410, 1422, 1423, 1408, 1424, 1425, + 1426, 1408, 1411, 1428, 1429, 1430, 1431, 1432, 1434, 1435, + + 1436, 1437, 1438, 1439, 1440, 1441, 1442, 1444, 1445, 1446, + 1447, 1448, 1449, 1451, 1452, 1453, 1454, 1455, 1457, 1458, + 1459, 1461, 1462, 1463, 1464, 1465, 1466, 1467, 1468, 1469, + 1470, 1471, 1472, 1473, 1474, 1475, 1476, 1477, 1478, 1479, + 1480, 1481, 1485, 1486, 1487, 1488, 1489, 1490, 1491, 1492, + 1493, 1496, 1497, 1498, 1499, 1500, 1501, 1502, 1503, 1504, + 1505, 1506, 1507, 1509, 1510, 1512, 1513, 1515, 1505, 1516, + 1517, 1519, 1520, 1521, 1522, 1524, 1526, 1527, 1507, 1529, + 1530, 1531, 1532, 1533, 1534, 1535, 1536, 1538, 1540, 1541, + 1542, 1546, 1547, 1548, 1549, 1550, 1552, 1553, 1555, 1557, + + 1558, 1560, 1563, 1564, 1566, 1567, 1569, 1570, 1572, 1574, + 1576, 1578, 1579, 1557, 1558, 1580, 1582, 1583, 1585, 1586, + 1587, 1589, 1592, 1594, 1597, 1598, 1599, 1600, 1602, 1603, + 1604, 1605, 1606, 1607, 1608, 1609, 1610, 1611, 1612, 1614, + 1615, 1616, 1617, 1618, 1619, 1620, 1621, 1622, 1624, 1625, + 1626, 1627, 1628, 1629, 1630, 1631, 1632, 1633, 1634, 1635, + 1636, 1637, 1638, 1639, 1640, 1641, 1642, 1643, 1644, 1645, + 1646, 1647, 1650, 1651, 1652, 1653, 1654, 1655, 1656, 1660, + 1662, 1664, 1666, 1667, 1668, 1669, 1671, 1673, 1674, 1675, + 1676, 1677, 1678, 1679, 1680, 1682, 1684, 1685, 1688, 1689, + + 1690, 1693, 1694, 1675, 1696, 1701, 1702, 1703, 1704, 1705, + 1706, 1676, 1709, 1710, 1711, 1712, 1713, 1714, 1715, 1716, + 1718, 1719, 1720, 1721, 1722, 1723, 1724, 1725, 1726, 1728, + 1729, 1730, 1731, 1732, 1733, 1734, 1735, 1736, 1737, 1738, + 1739, 1740, 1742, 1745, 1747, 1751, 1753, 1754, 1755, 1756, + 1758, 1762, 1763, 1764, 1770, 1771, 1772, 1774, 1775, 1776, + 1777, 1779, 1780, 1781, 1764, 1782, 1756, 1783, 1788, 1789, + 1790, 1793, 1796, 1763, 1797, 1799, 1801, 1802, 1803, 1804, + 1805, 1806, 1807, 1808, 1809, 1811, 1814, 1816, 1818, 1819, + 1820, 1821, 1823, 1825, 1826, 1827, 1829, 1830, 1832, 1834, + + 1835, 1836, 1838, 1839, 1825, 1840, 1842, 1843, 1845, 1846, + 1850, 1852, 1853, 1854, 1855, 1856, 1857, 1858, 1859, 1860, + 1862, 1863, 1826, 1864, 1865, 1866, 1869, 1870, 1872, 1873, + 1864, 1875, 1879, 1880, 1881, 1882, 1884, 1885, 1886, 1887, + 1888, 1890, 1891, 1892, 1894, 1895, 1896, 1897, 1890, 1863, + 1899, 1902, 1905, 1906, 1908, 1911, 1912, 1915, 1916, 1917, + 1920, 1921, 1922, 1923, 1925, 1926, 1927, 1928, 1931, 1932, + 1933, 1935, 1936, 1939, 1939, 1939, 1939, 1939, 1939, 1939, + 1939, 1939, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940, + 1940, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, + + 1942, 761, 1942, 1942, 1942, 1942, 1942, 1942, 1942, 1943, + 760, 1943, 1943, 1943, 1943, 1943, 1943, 1943, 1944, 1944, + 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1945, 1946, + 759, 1946, 1946, 1946, 1946, 1946, 1946, 1946, 1947, 758, + 1947, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, 1948, + 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1949, 1950, + 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1950, 1951, 1951, + 1951, 1951, 1951, 1951, 1951, 1951, 1951, 1952, 1952, 1952, + 757, 756, 1952, 1952, 755, 1952, 1953, 1953, 1953, 1953, + 1953, 1953, 1953, 1953, 1953, 1954, 754, 753, 1954, 1954, + + 752, 1954, 1955, 1955, 1955, 751, 1955, 1955, 1955, 1955, + 1955, 1956, 1956, 1956, 1956, 750, 1956, 1956, 1956, 1956, + 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 749, + 748, 747, 746, 745, 744, 743, 742, 740, 739, 738, + 737, 736, 735, 734, 733, 732, 731, 730, 729, 728, + 727, 726, 725, 723, 721, 719, 718, 717, 716, 715, + 713, 712, 711, 710, 709, 708, 707, 706, 705, 704, + 703, 702, 701, 700, 698, 697, 696, 695, 694, 693, + 692, 691, 689, 687, 685, 684, 683, 682, 681, 680, + 678, 676, 675, 674, 673, 672, 671, 670, 669, 668, + + 667, 666, 665, 664, 663, 662, 660, 659, 658, 657, + 656, 655, 654, 652, 651, 650, 649, 648, 647, 646, + 645, 644, 642, 641, 640, 639, 637, 636, 635, 634, + 633, 632, 631, 629, 627, 626, 625, 624, 623, 622, + 621, 620, 619, 618, 617, 616, 615, 610, 609, 608, + 607, 606, 605, 604, 603, 601, 600, 599, 598, 597, + 596, 595, 594, 593, 592, 591, 590, 589, 588, 587, + 574, 572, 571, 570, 569, 568, 567, 566, 565, 564, + 563, 562, 561, 560, 559, 558, 556, 555, 554, 553, + 552, 551, 550, 549, 548, 547, 546, 544, 543, 542, + + 541, 540, 539, 538, 537, 536, 534, 533, 532, 531, + 530, 529, 528, 527, 525, 524, 521, 518, 516, 514, + 513, 512, 511, 510, 509, 508, 507, 506, 505, 504, + 503, 501, 500, 499, 498, 497, 496, 495, 493, 491, + 490, 489, 488, 487, 486, 485, 484, 483, 482, 481, + 480, 478, 475, 474, 472, 471, 470, 469, 467, 466, + 465, 463, 462, 461, 460, 459, 458, 457, 456, 454, + 453, 451, 449, 448, 445, 444, 443, 442, 441, 440, + 439, 438, 437, 435, 434, 433, 432, 431, 429, 428, + 427, 426, 425, 424, 423, 422, 421, 419, 417, 416, + + 415, 413, 412, 411, 410, 409, 408, 406, 405, 404, + 403, 402, 401, 399, 398, 395, 394, 393, 392, 391, + 390, 389, 388, 387, 386, 385, 384, 383, 382, 381, + 380, 379, 378, 377, 376, 370, 361, 359, 357, 356, + 354, 353, 352, 351, 349, 347, 346, 343, 342, 341, + 339, 337, 336, 335, 334, 331, 326, 315, 313, 311, + 310, 309, 306, 305, 304, 303, 302, 301, 299, 298, + 297, 296, 294, 293, 292, 291, 290, 289, 288, 286, + 285, 283, 281, 280, 279, 278, 276, 275, 273, 272, + 271, 270, 269, 268, 266, 265, 264, 263, 261, 260, + + 259, 258, 257, 254, 253, 252, 251, 250, 249, 248, + 247, 246, 245, 244, 243, 241, 238, 236, 233, 232, + 231, 229, 228, 226, 225, 224, 223, 222, 221, 218, + 215, 214, 213, 211, 210, 209, 208, 207, 206, 205, + 202, 201, 196, 194, 190, 189, 188, 187, 185, 184, + 183, 182, 180, 179, 178, 177, 175, 173, 171, 168, + 167, 166, 163, 162, 158, 157, 156, 153, 151, 149, + 147, 145, 142, 140, 134, 133, 129, 128, 126, 125, + 121, 120, 119, 118, 117, 115, 111, 109, 108, 101, + 99, 95, 94, 93, 92, 81, 76, 70, 67, 66, + + 65, 63, 62, 61, 60, 58, 57, 56, 55, 54, + 49, 41, 34, 24, 19, 13, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, 1938, + 1938, 1938, 1938, 1938, 1938 } ; static yy_state_type yy_last_accepting_state; @@ -2184,7 +1718,7 @@ char path[MS_MAXPATHLEN]; -#line 2188 "maplexer.c" +#line 1722 "maplexer.c" #define INITIAL 0 #define URL_VARIABLE 1 @@ -2199,35 +1733,6 @@ char path[MS_MAXPATHLEN]; static int yy_init_globals (void ); -/* Accessor methods to globals. - These are made visible to non-reentrant scanners for convenience. */ - -int msyylex_destroy (void ); - -int msyyget_debug (void ); - -void msyyset_debug (int debug_flag ); - -YY_EXTRA_TYPE msyyget_extra (void ); - -void msyyset_extra (YY_EXTRA_TYPE user_defined ); - -FILE *msyyget_in (void ); - -void msyyset_in (FILE * in_str ); - -FILE *msyyget_out (void ); - -void msyyset_out (FILE * out_str ); - -int msyyget_leng (void ); - -char *msyyget_text (void ); - -int msyyget_lineno (void ); - -void msyyset_lineno (int line_number ); - /* Macros after this point can all be overridden by user definitions in * section 1. */ @@ -2262,12 +1767,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. */ @@ -2275,7 +1775,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( msyytext, msyyleng, 1, msyyout )) {} } while (0) +#define ECHO (void) fwrite( msyytext, msyyleng, 1, msyyout ) #endif /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, @@ -2442,7 +1942,7 @@ YY_DECL break; } -#line 2446 "maplexer.c" +#line 1946 "maplexer.c" if ( !(yy_init) ) { @@ -2495,13 +1995,13 @@ YY_DECL 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 >= 1926 ) + if ( yy_current_state >= 1939 ) 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_base[yy_current_state] != 4399 ); + while ( yy_base[yy_current_state] != 2417 ); yy_find_action: yy_act = yy_accept[yy_current_state]; @@ -2632,1422 +2132,1437 @@ YY_RULE_SETUP YY_BREAK case 22: YY_RULE_SETUP -#line 186 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_BUFFER); } +#line 185 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_UPPER); } YY_BREAK case 23: YY_RULE_SETUP -#line 187 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_DIFFERENCE); } +#line 186 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_LOWER); } YY_BREAK case 24: YY_RULE_SETUP -#line 188 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_SIMPLIFY); } +#line 187 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_INITCAP); } YY_BREAK case 25: YY_RULE_SETUP #line 189 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_SIMPLIFYPT); } +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_BUFFER); } YY_BREAK case 26: YY_RULE_SETUP #line 190 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_GENERALIZE); } +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_DIFFERENCE); } YY_BREAK case 27: YY_RULE_SETUP #line 191 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_SMOOTHSIA); } +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_SIMPLIFY); } YY_BREAK case 28: YY_RULE_SETUP -#line 193 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_INTERSECTS); } +#line 192 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_SIMPLIFYPT); } YY_BREAK case 29: YY_RULE_SETUP -#line 194 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_DISJOINT); } +#line 193 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_GENERALIZE); } YY_BREAK case 30: YY_RULE_SETUP -#line 195 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_TOUCHES); } +#line 194 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_SMOOTHSIA); } YY_BREAK case 31: YY_RULE_SETUP #line 196 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_OVERLAPS); } +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_INTERSECTS); } YY_BREAK case 32: YY_RULE_SETUP #line 197 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_CROSSES); } +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_DISJOINT); } YY_BREAK case 33: YY_RULE_SETUP #line 198 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_WITHIN); } +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_TOUCHES); } YY_BREAK case 34: YY_RULE_SETUP #line 199 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_CONTAINS); } +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_OVERLAPS); } YY_BREAK case 35: YY_RULE_SETUP #line 200 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_BEYOND); } +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_CROSSES); } YY_BREAK case 36: YY_RULE_SETUP #line 201 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_DWITHIN); } +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_WITHIN); } YY_BREAK case 37: YY_RULE_SETUP -#line 203 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_FROMTEXT); } +#line 202 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_CONTAINS); } YY_BREAK case 38: YY_RULE_SETUP -#line 205 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(COLORRANGE); } +#line 203 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_BEYOND); } YY_BREAK case 39: YY_RULE_SETUP -#line 206 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(DATARANGE); } +#line 204 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_COMPARISON_DWITHIN); } YY_BREAK case 40: YY_RULE_SETUP -#line 207 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(RANGEITEM); } +#line 206 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_FROMTEXT); } YY_BREAK case 41: YY_RULE_SETUP -#line 209 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(ALIGN); } +#line 208 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(COLORRANGE); } YY_BREAK case 42: YY_RULE_SETUP -#line 210 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(ANCHORPOINT); } +#line 209 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(DATARANGE); } YY_BREAK case 43: YY_RULE_SETUP -#line 211 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(ANGLE); } +#line 210 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(RANGEITEM); } YY_BREAK case 44: YY_RULE_SETUP #line 212 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(ANTIALIAS); } +{ MS_LEXER_RETURN_TOKEN(ALIGN); } YY_BREAK case 45: YY_RULE_SETUP #line 213 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(BACKGROUNDCOLOR); } +{ MS_LEXER_RETURN_TOKEN(ANCHORPOINT); } YY_BREAK case 46: YY_RULE_SETUP #line 214 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(BANDSITEM); } +{ MS_LEXER_RETURN_TOKEN(ANGLE); } YY_BREAK case 47: YY_RULE_SETUP #line 215 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(BINDVALS); } +{ MS_LEXER_RETURN_TOKEN(ANTIALIAS); } YY_BREAK case 48: YY_RULE_SETUP #line 216 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(BROWSEFORMAT); } +{ MS_LEXER_RETURN_TOKEN(BACKGROUNDCOLOR); } YY_BREAK case 49: YY_RULE_SETUP #line 217 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(BUFFER); } +{ MS_LEXER_RETURN_TOKEN(BANDSITEM); } YY_BREAK case 50: YY_RULE_SETUP #line 218 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(CHARACTER); } +{ MS_LEXER_RETURN_TOKEN(BINDVALS); } YY_BREAK case 51: YY_RULE_SETUP #line 219 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(CLASS); } +{ MS_LEXER_RETURN_TOKEN(BROWSEFORMAT); } YY_BREAK case 52: YY_RULE_SETUP #line 220 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(CLASSITEM); } +{ MS_LEXER_RETURN_TOKEN(BUFFER); } YY_BREAK case 53: YY_RULE_SETUP #line 221 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(CLASSGROUP); } +{ MS_LEXER_RETURN_TOKEN(CHARACTER); } YY_BREAK case 54: YY_RULE_SETUP #line 222 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(CLUSTER); } +{ MS_LEXER_RETURN_TOKEN(CLASS); } YY_BREAK case 55: YY_RULE_SETUP #line 223 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(COLOR); } +{ MS_LEXER_RETURN_TOKEN(CLASSITEM); } YY_BREAK case 56: YY_RULE_SETUP #line 224 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(CONFIG); } +{ MS_LEXER_RETURN_TOKEN(CLASSGROUP); } YY_BREAK case 57: YY_RULE_SETUP #line 225 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(CONNECTION); } +{ MS_LEXER_RETURN_TOKEN(CLUSTER); } YY_BREAK case 58: YY_RULE_SETUP #line 226 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(CONNECTIONTYPE); } +{ MS_LEXER_RETURN_TOKEN(COLOR); } YY_BREAK case 59: YY_RULE_SETUP #line 227 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(DATA); } +{ MS_LEXER_RETURN_TOKEN(CONFIG); } YY_BREAK case 60: YY_RULE_SETUP #line 228 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(DATAPATTERN); } +{ MS_LEXER_RETURN_TOKEN(CONNECTION); } YY_BREAK case 61: YY_RULE_SETUP #line 229 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(DEBUG); } +{ MS_LEXER_RETURN_TOKEN(CONNECTIONTYPE); } YY_BREAK case 62: YY_RULE_SETUP #line 230 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(DRIVER); } +{ MS_LEXER_RETURN_TOKEN(DATA); } YY_BREAK case 63: YY_RULE_SETUP #line 231 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(DUMP); } +{ MS_LEXER_RETURN_TOKEN(DATAPATTERN); } YY_BREAK case 64: YY_RULE_SETUP #line 232 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(EMPTY); } +{ MS_LEXER_RETURN_TOKEN(DEBUG); } YY_BREAK case 65: YY_RULE_SETUP #line 233 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(ENCODING); } +{ MS_LEXER_RETURN_TOKEN(DRIVER); } YY_BREAK case 66: YY_RULE_SETUP #line 234 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(END); } +{ MS_LEXER_RETURN_TOKEN(DUMP); } YY_BREAK case 67: YY_RULE_SETUP #line 235 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(ERROR); } +{ MS_LEXER_RETURN_TOKEN(EMPTY); } YY_BREAK case 68: YY_RULE_SETUP #line 236 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(EXPRESSION); } +{ MS_LEXER_RETURN_TOKEN(ENCODING); } YY_BREAK case 69: YY_RULE_SETUP #line 237 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(EXTENT); } +{ MS_LEXER_RETURN_TOKEN(END); } YY_BREAK case 70: YY_RULE_SETUP #line 238 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(EXTENSION); } +{ MS_LEXER_RETURN_TOKEN(ERROR); } YY_BREAK case 71: YY_RULE_SETUP #line 239 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(FEATURE); } +{ MS_LEXER_RETURN_TOKEN(EXPRESSION); } YY_BREAK case 72: YY_RULE_SETUP #line 240 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(FILLED); } +{ MS_LEXER_RETURN_TOKEN(EXTENT); } YY_BREAK case 73: YY_RULE_SETUP #line 241 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(FILTER); } +{ MS_LEXER_RETURN_TOKEN(EXTENSION); } YY_BREAK case 74: YY_RULE_SETUP #line 242 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(FILTERITEM); } +{ MS_LEXER_RETURN_TOKEN(FEATURE); } YY_BREAK case 75: YY_RULE_SETUP #line 243 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(FOOTER); } +{ MS_LEXER_RETURN_TOKEN(FILLED); } YY_BREAK case 76: YY_RULE_SETUP #line 244 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(FONT); } +{ MS_LEXER_RETURN_TOKEN(FILTER); } YY_BREAK case 77: YY_RULE_SETUP #line 245 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(FONTSET); } +{ MS_LEXER_RETURN_TOKEN(FILTERITEM); } YY_BREAK case 78: YY_RULE_SETUP #line 246 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(FORCE); } +{ MS_LEXER_RETURN_TOKEN(FOOTER); } YY_BREAK case 79: YY_RULE_SETUP #line 247 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(FORMATOPTION); } +{ MS_LEXER_RETURN_TOKEN(FONT); } YY_BREAK case 80: YY_RULE_SETUP #line 248 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(FROM); } +{ MS_LEXER_RETURN_TOKEN(FONTSET); } YY_BREAK case 81: YY_RULE_SETUP #line 249 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(GAP); } +{ MS_LEXER_RETURN_TOKEN(FORCE); } YY_BREAK case 82: YY_RULE_SETUP #line 250 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(GEOMTRANSFORM); } +{ MS_LEXER_RETURN_TOKEN(FORMATOPTION); } YY_BREAK case 83: YY_RULE_SETUP #line 251 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(GRID); } +{ MS_LEXER_RETURN_TOKEN(FROM); } YY_BREAK case 84: YY_RULE_SETUP #line 252 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(GRIDSTEP); } +{ MS_LEXER_RETURN_TOKEN(GAP); } YY_BREAK case 85: YY_RULE_SETUP #line 253 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(GRATICULE); } +{ MS_LEXER_RETURN_TOKEN(GEOMTRANSFORM); } YY_BREAK case 86: YY_RULE_SETUP #line 254 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(GROUP); } +{ MS_LEXER_RETURN_TOKEN(GRID); } YY_BREAK case 87: YY_RULE_SETUP #line 255 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(HEADER); } +{ MS_LEXER_RETURN_TOKEN(GRIDSTEP); } YY_BREAK case 88: YY_RULE_SETUP #line 256 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(IMAGE); } +{ MS_LEXER_RETURN_TOKEN(GRATICULE); } YY_BREAK case 89: YY_RULE_SETUP #line 257 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(IMAGECOLOR); } +{ MS_LEXER_RETURN_TOKEN(GROUP); } YY_BREAK case 90: YY_RULE_SETUP #line 258 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(IMAGETYPE); } +{ MS_LEXER_RETURN_TOKEN(HEADER); } YY_BREAK case 91: YY_RULE_SETUP #line 259 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(IMAGEQUALITY); } +{ MS_LEXER_RETURN_TOKEN(IMAGE); } YY_BREAK case 92: YY_RULE_SETUP #line 260 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(IMAGEMODE); } +{ MS_LEXER_RETURN_TOKEN(IMAGECOLOR); } YY_BREAK case 93: YY_RULE_SETUP #line 261 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(IMAGEPATH); } +{ MS_LEXER_RETURN_TOKEN(IMAGETYPE); } YY_BREAK case 94: YY_RULE_SETUP #line 262 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(TEMPPATH); } +{ MS_LEXER_RETURN_TOKEN(IMAGEQUALITY); } YY_BREAK case 95: YY_RULE_SETUP #line 263 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(IMAGEURL); } +{ MS_LEXER_RETURN_TOKEN(IMAGEMODE); } YY_BREAK case 96: YY_RULE_SETUP #line 264 "maplexer.l" -{ BEGIN(INCLUDE); } +{ MS_LEXER_RETURN_TOKEN(IMAGEPATH); } YY_BREAK case 97: YY_RULE_SETUP #line 265 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(INDEX); } +{ MS_LEXER_RETURN_TOKEN(TEMPPATH); } YY_BREAK case 98: YY_RULE_SETUP #line 266 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(INITIALGAP); } +{ MS_LEXER_RETURN_TOKEN(IMAGEURL); } YY_BREAK case 99: YY_RULE_SETUP #line 267 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(INTERLACE); } +{ BEGIN(INCLUDE); } YY_BREAK case 100: YY_RULE_SETUP #line 268 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(INTERVALS); } +{ MS_LEXER_RETURN_TOKEN(INDEX); } YY_BREAK case 101: YY_RULE_SETUP #line 269 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(JOIN); } +{ MS_LEXER_RETURN_TOKEN(INITIALGAP); } YY_BREAK case 102: YY_RULE_SETUP #line 270 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(KEYIMAGE); } +{ MS_LEXER_RETURN_TOKEN(INTERLACE); } YY_BREAK case 103: YY_RULE_SETUP #line 271 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(KEYSIZE); } +{ MS_LEXER_RETURN_TOKEN(INTERVALS); } YY_BREAK case 104: YY_RULE_SETUP #line 272 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(KEYSPACING); } +{ MS_LEXER_RETURN_TOKEN(JOIN); } YY_BREAK case 105: YY_RULE_SETUP #line 273 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LABEL); } +{ MS_LEXER_RETURN_TOKEN(KEYIMAGE); } YY_BREAK case 106: YY_RULE_SETUP #line 274 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LABELCACHE); } +{ MS_LEXER_RETURN_TOKEN(KEYSIZE); } YY_BREAK case 107: YY_RULE_SETUP #line 275 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LABELFORMAT); } +{ MS_LEXER_RETURN_TOKEN(KEYSPACING); } YY_BREAK case 108: YY_RULE_SETUP #line 276 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LABELITEM); } +{ MS_LEXER_RETURN_TOKEN(LABEL); } YY_BREAK case 109: YY_RULE_SETUP #line 277 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LABELMAXSCALE); } +{ MS_LEXER_RETURN_TOKEN(LABELCACHE); } YY_BREAK case 110: YY_RULE_SETUP #line 278 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LABELMAXSCALEDENOM); } +{ MS_LEXER_RETURN_TOKEN(LABELFORMAT); } YY_BREAK case 111: YY_RULE_SETUP #line 279 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LABELMINSCALE); } +{ MS_LEXER_RETURN_TOKEN(LABELITEM); } YY_BREAK case 112: YY_RULE_SETUP #line 280 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LABELMINSCALEDENOM); } +{ MS_LEXER_RETURN_TOKEN(LABELMAXSCALE); } YY_BREAK case 113: YY_RULE_SETUP #line 281 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LABELREQUIRES); } +{ MS_LEXER_RETURN_TOKEN(LABELMAXSCALEDENOM); } YY_BREAK case 114: YY_RULE_SETUP #line 282 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LATLON); } +{ MS_LEXER_RETURN_TOKEN(LABELMINSCALE); } YY_BREAK case 115: YY_RULE_SETUP #line 283 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LAYER); } +{ MS_LEXER_RETURN_TOKEN(LABELMINSCALEDENOM); } YY_BREAK case 116: YY_RULE_SETUP #line 284 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LEADER); } +{ MS_LEXER_RETURN_TOKEN(LABELREQUIRES); } YY_BREAK case 117: YY_RULE_SETUP #line 285 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LEGEND); } +{ MS_LEXER_RETURN_TOKEN(LATLON); } YY_BREAK case 118: YY_RULE_SETUP #line 286 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LEGENDFORMAT); } +{ MS_LEXER_RETURN_TOKEN(LAYER); } YY_BREAK case 119: YY_RULE_SETUP #line 287 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LINECAP); } +{ MS_LEXER_RETURN_TOKEN(LEADER); } YY_BREAK case 120: YY_RULE_SETUP #line 288 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LINEJOIN); } +{ MS_LEXER_RETURN_TOKEN(LEGEND); } YY_BREAK case 121: YY_RULE_SETUP #line 289 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LINEJOINMAXSIZE); } +{ MS_LEXER_RETURN_TOKEN(LEGENDFORMAT); } YY_BREAK case 122: YY_RULE_SETUP #line 290 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(LOG); } +{ MS_LEXER_RETURN_TOKEN(LINECAP); } YY_BREAK case 123: YY_RULE_SETUP #line 291 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MAP); } +{ MS_LEXER_RETURN_TOKEN(LINEJOIN); } YY_BREAK case 124: YY_RULE_SETUP #line 292 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MARKER); } +{ MS_LEXER_RETURN_TOKEN(LINEJOINMAXSIZE); } YY_BREAK case 125: YY_RULE_SETUP #line 293 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MARKERSIZE); } +{ MS_LEXER_RETURN_TOKEN(LOG); } YY_BREAK case 126: YY_RULE_SETUP #line 294 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MASK); } +{ MS_LEXER_RETURN_TOKEN(MAP); } YY_BREAK case 127: YY_RULE_SETUP #line 295 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MAXARCS); } +{ MS_LEXER_RETURN_TOKEN(MARKER); } YY_BREAK case 128: YY_RULE_SETUP #line 296 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MAXBOXSIZE); } +{ MS_LEXER_RETURN_TOKEN(MARKERSIZE); } YY_BREAK case 129: YY_RULE_SETUP #line 297 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MAXDISTANCE); } +{ MS_LEXER_RETURN_TOKEN(MASK); } YY_BREAK case 130: YY_RULE_SETUP #line 298 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MAXFEATURES); } +{ MS_LEXER_RETURN_TOKEN(MAXARCS); } YY_BREAK case 131: YY_RULE_SETUP #line 299 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MAXINTERVAL); } +{ MS_LEXER_RETURN_TOKEN(MAXBOXSIZE); } YY_BREAK case 132: YY_RULE_SETUP #line 300 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MAXSCALE); } +{ MS_LEXER_RETURN_TOKEN(MAXDISTANCE); } YY_BREAK case 133: YY_RULE_SETUP #line 301 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MAXSCALEDENOM); } +{ MS_LEXER_RETURN_TOKEN(MAXFEATURES); } YY_BREAK case 134: YY_RULE_SETUP #line 302 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MAXGEOWIDTH); } +{ MS_LEXER_RETURN_TOKEN(MAXINTERVAL); } YY_BREAK case 135: YY_RULE_SETUP #line 303 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MAXLENGTH); } +{ MS_LEXER_RETURN_TOKEN(MAXSCALE); } YY_BREAK case 136: YY_RULE_SETUP #line 304 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MAXSIZE); } +{ MS_LEXER_RETURN_TOKEN(MAXSCALEDENOM); } YY_BREAK case 137: YY_RULE_SETUP #line 305 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MAXSUBDIVIDE); } +{ MS_LEXER_RETURN_TOKEN(MAXGEOWIDTH); } YY_BREAK case 138: YY_RULE_SETUP #line 306 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MAXTEMPLATE); } +{ MS_LEXER_RETURN_TOKEN(MAXLENGTH); } YY_BREAK case 139: YY_RULE_SETUP #line 307 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MAXWIDTH); } +{ MS_LEXER_RETURN_TOKEN(MAXSIZE); } YY_BREAK case 140: YY_RULE_SETUP #line 308 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(METADATA); } +{ MS_LEXER_RETURN_TOKEN(MAXSUBDIVIDE); } YY_BREAK case 141: YY_RULE_SETUP #line 309 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MIMETYPE); } +{ MS_LEXER_RETURN_TOKEN(MAXTEMPLATE); } YY_BREAK case 142: YY_RULE_SETUP #line 310 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MINARCS); } +{ MS_LEXER_RETURN_TOKEN(MAXWIDTH); } YY_BREAK case 143: YY_RULE_SETUP #line 311 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MINBOXSIZE); } +{ MS_LEXER_RETURN_TOKEN(METADATA); } YY_BREAK case 144: YY_RULE_SETUP #line 312 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MINDISTANCE); } +{ MS_LEXER_RETURN_TOKEN(MIMETYPE); } YY_BREAK case 145: YY_RULE_SETUP #line 313 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(REPEATDISTANCE); } +{ MS_LEXER_RETURN_TOKEN(MINARCS); } YY_BREAK case 146: YY_RULE_SETUP #line 314 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MAXOVERLAPANGLE); } +{ MS_LEXER_RETURN_TOKEN(MINBOXSIZE); } YY_BREAK case 147: YY_RULE_SETUP #line 315 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MINFEATURESIZE); } +{ MS_LEXER_RETURN_TOKEN(MINDISTANCE); } YY_BREAK case 148: YY_RULE_SETUP #line 316 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MININTERVAL); } +{ MS_LEXER_RETURN_TOKEN(REPEATDISTANCE); } YY_BREAK case 149: YY_RULE_SETUP #line 317 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MINSCALE); } +{ MS_LEXER_RETURN_TOKEN(MAXOVERLAPANGLE); } YY_BREAK case 150: YY_RULE_SETUP #line 318 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MINSCALEDENOM); } +{ MS_LEXER_RETURN_TOKEN(MINFEATURESIZE); } YY_BREAK case 151: YY_RULE_SETUP #line 319 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MINGEOWIDTH); } +{ MS_LEXER_RETURN_TOKEN(MININTERVAL); } YY_BREAK case 152: YY_RULE_SETUP #line 320 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MINLENGTH); } +{ MS_LEXER_RETURN_TOKEN(MINSCALE); } YY_BREAK case 153: YY_RULE_SETUP #line 321 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MINSIZE); } +{ MS_LEXER_RETURN_TOKEN(MINSCALEDENOM); } YY_BREAK case 154: YY_RULE_SETUP #line 322 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MINSUBDIVIDE); } +{ MS_LEXER_RETURN_TOKEN(MINGEOWIDTH); } YY_BREAK case 155: YY_RULE_SETUP #line 323 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MINTEMPLATE); } +{ MS_LEXER_RETURN_TOKEN(MINLENGTH); } YY_BREAK case 156: YY_RULE_SETUP #line 324 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MINWIDTH); } +{ MS_LEXER_RETURN_TOKEN(MINSIZE); } YY_BREAK case 157: YY_RULE_SETUP #line 325 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(NAME); } +{ MS_LEXER_RETURN_TOKEN(MINSUBDIVIDE); } YY_BREAK case 158: YY_RULE_SETUP #line 326 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(OFFSET); } +{ MS_LEXER_RETURN_TOKEN(MINTEMPLATE); } YY_BREAK case 159: YY_RULE_SETUP #line 327 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(OFFSITE); } +{ MS_LEXER_RETURN_TOKEN(MINWIDTH); } YY_BREAK case 160: YY_RULE_SETUP #line 328 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(OPACITY); } +{ MS_LEXER_RETURN_TOKEN(NAME); } YY_BREAK case 161: YY_RULE_SETUP #line 329 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(OUTLINECOLOR); } +{ MS_LEXER_RETURN_TOKEN(OFFSET); } YY_BREAK case 162: YY_RULE_SETUP #line 330 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(OUTLINEWIDTH); } +{ MS_LEXER_RETURN_TOKEN(OFFSITE); } YY_BREAK case 163: YY_RULE_SETUP #line 331 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(OUTPUTFORMAT); } +{ MS_LEXER_RETURN_TOKEN(OPACITY); } YY_BREAK case 164: YY_RULE_SETUP #line 332 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(OVERLAYBACKGROUNDCOLOR); } +{ MS_LEXER_RETURN_TOKEN(OUTLINECOLOR); } YY_BREAK case 165: YY_RULE_SETUP #line 333 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(OVERLAYCOLOR); } +{ MS_LEXER_RETURN_TOKEN(OUTLINEWIDTH); } YY_BREAK case 166: YY_RULE_SETUP #line 334 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(OVERLAYMAXSIZE); } +{ MS_LEXER_RETURN_TOKEN(OUTPUTFORMAT); } YY_BREAK case 167: YY_RULE_SETUP #line 335 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(OVERLAYMINSIZE); } +{ MS_LEXER_RETURN_TOKEN(OVERLAYBACKGROUNDCOLOR); } YY_BREAK case 168: YY_RULE_SETUP #line 336 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(OVERLAYOUTLINECOLOR); } +{ MS_LEXER_RETURN_TOKEN(OVERLAYCOLOR); } YY_BREAK case 169: YY_RULE_SETUP #line 337 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(OVERLAYSIZE); } +{ MS_LEXER_RETURN_TOKEN(OVERLAYMAXSIZE); } YY_BREAK case 170: YY_RULE_SETUP #line 338 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(OVERLAYSYMBOL); } +{ MS_LEXER_RETURN_TOKEN(OVERLAYMINSIZE); } YY_BREAK case 171: YY_RULE_SETUP #line 339 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(PARTIALS); } +{ MS_LEXER_RETURN_TOKEN(OVERLAYOUTLINECOLOR); } YY_BREAK case 172: YY_RULE_SETUP #line 340 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(PATTERN); } +{ MS_LEXER_RETURN_TOKEN(OVERLAYSIZE); } YY_BREAK case 173: YY_RULE_SETUP #line 341 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(POINTS); } +{ MS_LEXER_RETURN_TOKEN(OVERLAYSYMBOL); } YY_BREAK case 174: YY_RULE_SETUP #line 342 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(ITEMS); } +{ MS_LEXER_RETURN_TOKEN(PARTIALS); } YY_BREAK case 175: YY_RULE_SETUP #line 343 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(POSITION); } +{ MS_LEXER_RETURN_TOKEN(PATTERN); } YY_BREAK case 176: YY_RULE_SETUP #line 344 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(POSTLABELCACHE); } +{ MS_LEXER_RETURN_TOKEN(POINTS); } YY_BREAK case 177: YY_RULE_SETUP #line 345 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(PRIORITY); } +{ MS_LEXER_RETURN_TOKEN(ITEMS); } YY_BREAK case 178: YY_RULE_SETUP #line 346 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(PROCESSING); } +{ MS_LEXER_RETURN_TOKEN(POSITION); } YY_BREAK case 179: YY_RULE_SETUP #line 347 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(PROJECTION); } +{ MS_LEXER_RETURN_TOKEN(POSTLABELCACHE); } YY_BREAK case 180: YY_RULE_SETUP #line 348 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(QUERYFORMAT); } +{ MS_LEXER_RETURN_TOKEN(PRIORITY); } YY_BREAK case 181: YY_RULE_SETUP #line 349 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(QUERYMAP); } +{ MS_LEXER_RETURN_TOKEN(PROCESSING); } YY_BREAK case 182: YY_RULE_SETUP #line 350 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(REFERENCE); } +{ MS_LEXER_RETURN_TOKEN(PROJECTION); } YY_BREAK case 183: YY_RULE_SETUP #line 351 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(REGION); } +{ MS_LEXER_RETURN_TOKEN(QUERYFORMAT); } YY_BREAK case 184: YY_RULE_SETUP #line 352 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(RELATIVETO); } +{ MS_LEXER_RETURN_TOKEN(QUERYMAP); } YY_BREAK case 185: YY_RULE_SETUP #line 353 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(REQUIRES); } +{ MS_LEXER_RETURN_TOKEN(REFERENCE); } YY_BREAK case 186: YY_RULE_SETUP #line 354 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(RESOLUTION); } +{ MS_LEXER_RETURN_TOKEN(REGION); } YY_BREAK case 187: YY_RULE_SETUP #line 355 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(DEFRESOLUTION); } +{ MS_LEXER_RETURN_TOKEN(RELATIVETO); } YY_BREAK case 188: YY_RULE_SETUP #line 356 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(SCALE); } +{ MS_LEXER_RETURN_TOKEN(REQUIRES); } YY_BREAK case 189: YY_RULE_SETUP #line 357 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(SCALEDENOM); } +{ MS_LEXER_RETURN_TOKEN(RESOLUTION); } YY_BREAK case 190: YY_RULE_SETUP #line 358 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(SCALEBAR); } +{ MS_LEXER_RETURN_TOKEN(DEFRESOLUTION); } YY_BREAK case 191: YY_RULE_SETUP #line 359 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(SCALETOKEN); } +{ MS_LEXER_RETURN_TOKEN(SCALE); } YY_BREAK case 192: YY_RULE_SETUP #line 360 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(SHADOWCOLOR); } +{ MS_LEXER_RETURN_TOKEN(SCALEDENOM); } YY_BREAK case 193: YY_RULE_SETUP #line 361 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(SHADOWSIZE); } +{ MS_LEXER_RETURN_TOKEN(SCALEBAR); } YY_BREAK case 194: YY_RULE_SETUP #line 362 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(SHAPEPATH); } +{ MS_LEXER_RETURN_TOKEN(SCALETOKEN); } YY_BREAK case 195: YY_RULE_SETUP #line 363 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(SIZE); } +{ MS_LEXER_RETURN_TOKEN(SHADOWCOLOR); } YY_BREAK case 196: YY_RULE_SETUP #line 364 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(SIZEUNITS); } +{ MS_LEXER_RETURN_TOKEN(SHADOWSIZE); } YY_BREAK case 197: YY_RULE_SETUP #line 365 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(STATUS); } +{ MS_LEXER_RETURN_TOKEN(SHAPEPATH); } YY_BREAK case 198: YY_RULE_SETUP #line 366 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(STYLE); } +{ MS_LEXER_RETURN_TOKEN(SIZE); } YY_BREAK case 199: YY_RULE_SETUP #line 367 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(STYLEITEM); } +{ MS_LEXER_RETURN_TOKEN(SIZEUNITS); } YY_BREAK case 200: YY_RULE_SETUP #line 368 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(SYMBOL); } +{ MS_LEXER_RETURN_TOKEN(STATUS); } YY_BREAK case 201: YY_RULE_SETUP #line 369 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(SYMBOLSCALE); } +{ MS_LEXER_RETURN_TOKEN(STYLE); } YY_BREAK case 202: YY_RULE_SETUP #line 370 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(SYMBOLSCALEDENOM); } +{ MS_LEXER_RETURN_TOKEN(STYLEITEM); } YY_BREAK case 203: YY_RULE_SETUP #line 371 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(SYMBOLSET); } +{ MS_LEXER_RETURN_TOKEN(SYMBOL); } YY_BREAK case 204: YY_RULE_SETUP #line 372 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(TABLE); } +{ MS_LEXER_RETURN_TOKEN(SYMBOLSCALE); } YY_BREAK case 205: YY_RULE_SETUP #line 373 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(TEMPLATE); } +{ MS_LEXER_RETURN_TOKEN(SYMBOLSCALEDENOM); } YY_BREAK case 206: YY_RULE_SETUP #line 374 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(TEMPLATEPATTERN); } +{ MS_LEXER_RETURN_TOKEN(SYMBOLSET); } YY_BREAK case 207: YY_RULE_SETUP #line 375 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(TEXT); } +{ MS_LEXER_RETURN_TOKEN(TABLE); } YY_BREAK case 208: YY_RULE_SETUP #line 376 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(TILEINDEX); } +{ MS_LEXER_RETURN_TOKEN(TEMPLATE); } YY_BREAK case 209: YY_RULE_SETUP #line 377 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(TILEITEM); } +{ MS_LEXER_RETURN_TOKEN(TEMPLATEPATTERN); } YY_BREAK case 210: YY_RULE_SETUP #line 378 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(TILESRS); } +{ MS_LEXER_RETURN_TOKEN(TEXT); } YY_BREAK case 211: YY_RULE_SETUP #line 379 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(TITLE); } +{ MS_LEXER_RETURN_TOKEN(TILEINDEX); } YY_BREAK case 212: YY_RULE_SETUP #line 380 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(TO); } +{ MS_LEXER_RETURN_TOKEN(TILEITEM); } YY_BREAK case 213: YY_RULE_SETUP #line 381 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(TOLERANCE); } +{ MS_LEXER_RETURN_TOKEN(TILESRS); } YY_BREAK case 214: YY_RULE_SETUP #line 382 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(TOLERANCEUNITS); } +{ MS_LEXER_RETURN_TOKEN(TITLE); } YY_BREAK case 215: YY_RULE_SETUP #line 383 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(TRANSPARENCY); } +{ MS_LEXER_RETURN_TOKEN(TO); } YY_BREAK case 216: YY_RULE_SETUP #line 384 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(TRANSPARENT); } +{ MS_LEXER_RETURN_TOKEN(TOLERANCE); } YY_BREAK case 217: YY_RULE_SETUP #line 385 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(TRANSFORM); } +{ MS_LEXER_RETURN_TOKEN(TOLERANCEUNITS); } YY_BREAK case 218: YY_RULE_SETUP #line 386 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(TYPE); } +{ MS_LEXER_RETURN_TOKEN(TRANSPARENCY); } YY_BREAK case 219: YY_RULE_SETUP #line 387 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(UNITS); } +{ MS_LEXER_RETURN_TOKEN(TRANSPARENT); } YY_BREAK case 220: YY_RULE_SETUP #line 388 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(VALIDATION); } +{ MS_LEXER_RETURN_TOKEN(TRANSFORM); } YY_BREAK case 221: YY_RULE_SETUP #line 389 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(VALUES); } +{ MS_LEXER_RETURN_TOKEN(TYPE); } YY_BREAK case 222: YY_RULE_SETUP #line 390 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(WEB); } +{ MS_LEXER_RETURN_TOKEN(UNITS); } YY_BREAK case 223: YY_RULE_SETUP #line 391 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(WIDTH); } +{ MS_LEXER_RETURN_TOKEN(VALIDATION); } YY_BREAK case 224: YY_RULE_SETUP #line 392 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(WKT); } +{ MS_LEXER_RETURN_TOKEN(VALUES); } YY_BREAK case 225: YY_RULE_SETUP #line 393 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(WRAP); } +{ MS_LEXER_RETURN_TOKEN(WEB); } YY_BREAK case 226: YY_RULE_SETUP -#line 395 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_LAYER_ANNOTATION); } +#line 394 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(WIDTH); } YY_BREAK case 227: YY_RULE_SETUP -#line 396 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_AUTO); } +#line 395 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(WKT); } YY_BREAK case 228: YY_RULE_SETUP -#line 397 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_ANGLEMODE_AUTO2); } +#line 396 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(WRAP); } YY_BREAK case 229: YY_RULE_SETUP #line 398 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_CJC_BEVEL); } +{ MS_LEXER_RETURN_TOKEN(MS_LAYER_ANNOTATION); } YY_BREAK case 230: YY_RULE_SETUP #line 399 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_BITMAP); } +{ MS_LEXER_RETURN_TOKEN(MS_AUTO); } YY_BREAK case 231: YY_RULE_SETUP #line 400 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_CJC_BUTT); } +{ MS_LEXER_RETURN_TOKEN(MS_ANGLEMODE_AUTO2); } YY_BREAK case 232: YY_RULE_SETUP #line 401 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_CC); } +{ MS_LEXER_RETURN_TOKEN(MS_CJC_BEVEL); } YY_BREAK case 233: YY_RULE_SETUP #line 402 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_ALIGN_CENTER); } +{ MS_LEXER_RETURN_TOKEN(MS_BITMAP); } YY_BREAK case 234: YY_RULE_SETUP #line 403 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_LAYER_CHART); } +{ MS_LEXER_RETURN_TOKEN(MS_CJC_BUTT); } YY_BREAK case 235: YY_RULE_SETUP #line 404 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_LAYER_CIRCLE); } +{ MS_LEXER_RETURN_TOKEN(MS_CC); } YY_BREAK case 236: YY_RULE_SETUP #line 405 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_CL); } +{ MS_LEXER_RETURN_TOKEN(MS_ALIGN_CENTER); } YY_BREAK case 237: YY_RULE_SETUP #line 406 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_CR); } +{ MS_LEXER_RETURN_TOKEN(MS_LAYER_CHART); } YY_BREAK case 238: YY_RULE_SETUP #line 407 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_DB_CSV); } +{ MS_LEXER_RETURN_TOKEN(MS_LAYER_CIRCLE); } YY_BREAK case 239: YY_RULE_SETUP #line 408 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_DB_POSTGRES); } +{ MS_LEXER_RETURN_TOKEN(MS_CL); } YY_BREAK case 240: YY_RULE_SETUP #line 409 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_DB_MYSQL); } +{ MS_LEXER_RETURN_TOKEN(MS_CR); } YY_BREAK case 241: YY_RULE_SETUP #line 410 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_DEFAULT); } +{ MS_LEXER_RETURN_TOKEN(MS_DB_CSV); } YY_BREAK case 242: YY_RULE_SETUP #line 411 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_DD); } +{ MS_LEXER_RETURN_TOKEN(MS_DB_POSTGRES); } YY_BREAK case 243: YY_RULE_SETUP #line 412 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_SYMBOL_ELLIPSE); } +{ MS_LEXER_RETURN_TOKEN(MS_DB_MYSQL); } YY_BREAK case 244: YY_RULE_SETUP #line 413 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_EMBED); } +{ MS_LEXER_RETURN_TOKEN(MS_DEFAULT); } YY_BREAK case 245: YY_RULE_SETUP #line 414 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_FALSE); } +{ MS_LEXER_RETURN_TOKEN(MS_DD); } YY_BREAK case 246: YY_RULE_SETUP #line 415 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_FEET); } +{ MS_LEXER_RETURN_TOKEN(MS_SYMBOL_ELLIPSE); } YY_BREAK case 247: YY_RULE_SETUP #line 416 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_ANGLEMODE_FOLLOW); } +{ MS_LEXER_RETURN_TOKEN(MS_EMBED); } YY_BREAK case 248: YY_RULE_SETUP #line 417 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_GIANT); } +{ MS_LEXER_RETURN_TOKEN(MS_FALSE); } YY_BREAK case 249: YY_RULE_SETUP #line 418 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_SYMBOL_HATCH); } +{ MS_LEXER_RETURN_TOKEN(MS_FEET); } YY_BREAK case 250: YY_RULE_SETUP #line 419 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_HILITE); } +{ MS_LEXER_RETURN_TOKEN(MS_ANGLEMODE_FOLLOW); } YY_BREAK case 251: YY_RULE_SETUP #line 420 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_INCHES); } +{ MS_LEXER_RETURN_TOKEN(MS_GIANT); } YY_BREAK case 252: YY_RULE_SETUP #line 421 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_KILOMETERS); } +{ MS_LEXER_RETURN_TOKEN(MS_SYMBOL_HATCH); } YY_BREAK case 253: YY_RULE_SETUP #line 422 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_LARGE); } +{ MS_LEXER_RETURN_TOKEN(MS_HILITE); } YY_BREAK case 254: YY_RULE_SETUP #line 423 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_LC); } +{ MS_LEXER_RETURN_TOKEN(MS_INCHES); } YY_BREAK case 255: YY_RULE_SETUP #line 424 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_ALIGN_LEFT); } +{ MS_LEXER_RETURN_TOKEN(MS_KILOMETERS); } YY_BREAK case 256: YY_RULE_SETUP #line 425 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_LAYER_LINE); } +{ MS_LEXER_RETURN_TOKEN(MS_LARGE); } YY_BREAK case 257: YY_RULE_SETUP #line 426 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_LL); } +{ MS_LEXER_RETURN_TOKEN(MS_LC); } YY_BREAK case 258: YY_RULE_SETUP #line 427 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_LR); } +{ MS_LEXER_RETURN_TOKEN(MS_ALIGN_LEFT); } YY_BREAK case 259: YY_RULE_SETUP #line 428 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_MEDIUM); } +{ MS_LEXER_RETURN_TOKEN(MS_LAYER_LINE); } YY_BREAK case 260: YY_RULE_SETUP #line 429 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_METERS); } +{ MS_LEXER_RETURN_TOKEN(MS_LL); } YY_BREAK case 261: YY_RULE_SETUP #line 430 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_NAUTICALMILES); } +{ MS_LEXER_RETURN_TOKEN(MS_LR); } YY_BREAK case 262: YY_RULE_SETUP #line 431 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_MILES); } +{ MS_LEXER_RETURN_TOKEN(MS_MEDIUM); } YY_BREAK case 263: YY_RULE_SETUP #line 432 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_CJC_MITER); } +{ MS_LEXER_RETURN_TOKEN(MS_METERS); } YY_BREAK case 264: YY_RULE_SETUP #line 433 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_MULTIPLE); } +{ MS_LEXER_RETURN_TOKEN(MS_NAUTICALMILES); } YY_BREAK case 265: YY_RULE_SETUP #line 434 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_CJC_NONE); } +{ MS_LEXER_RETURN_TOKEN(MS_MILES); } YY_BREAK case 266: YY_RULE_SETUP #line 435 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_NORMAL); } +{ MS_LEXER_RETURN_TOKEN(MS_CJC_MITER); } YY_BREAK case 267: YY_RULE_SETUP #line 436 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_OFF); } +{ MS_LEXER_RETURN_TOKEN(MS_MULTIPLE); } YY_BREAK case 268: YY_RULE_SETUP #line 437 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_OGR); } +{ MS_LEXER_RETURN_TOKEN(MS_CJC_NONE); } YY_BREAK case 269: YY_RULE_SETUP #line 438 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_ON); } +{ MS_LEXER_RETURN_TOKEN(MS_NORMAL); } YY_BREAK case 270: YY_RULE_SETUP #line 439 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_JOIN_ONE_TO_ONE); } +{ MS_LEXER_RETURN_TOKEN(MS_OFF); } YY_BREAK case 271: YY_RULE_SETUP #line 440 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_JOIN_ONE_TO_MANY); } +{ MS_LEXER_RETURN_TOKEN(MS_OGR); } YY_BREAK case 272: YY_RULE_SETUP #line 441 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_ORACLESPATIAL); } +{ MS_LEXER_RETURN_TOKEN(MS_ON); } YY_BREAK case 273: YY_RULE_SETUP #line 442 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_PERCENTAGES); } +{ MS_LEXER_RETURN_TOKEN(MS_JOIN_ONE_TO_ONE); } YY_BREAK case 274: YY_RULE_SETUP #line 443 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_SYMBOL_PIXMAP); } +{ MS_LEXER_RETURN_TOKEN(MS_JOIN_ONE_TO_MANY); } YY_BREAK case 275: YY_RULE_SETUP #line 444 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_PIXELS); } +{ MS_LEXER_RETURN_TOKEN(MS_ORACLESPATIAL); } YY_BREAK case 276: YY_RULE_SETUP #line 445 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_LAYER_POINT); } +{ MS_LEXER_RETURN_TOKEN(MS_PERCENTAGES); } YY_BREAK case 277: YY_RULE_SETUP #line 446 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_LAYER_POLYGON); } +{ MS_LEXER_RETURN_TOKEN(MS_SYMBOL_PIXMAP); } YY_BREAK case 278: YY_RULE_SETUP #line 447 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_POSTGIS); } +{ MS_LEXER_RETURN_TOKEN(MS_PIXELS); } YY_BREAK case 279: YY_RULE_SETUP #line 448 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_PLUGIN); } +{ MS_LEXER_RETURN_TOKEN(MS_LAYER_POINT); } YY_BREAK case 280: YY_RULE_SETUP #line 449 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_LAYER_QUERY); } +{ MS_LEXER_RETURN_TOKEN(MS_LAYER_POLYGON); } YY_BREAK case 281: YY_RULE_SETUP #line 450 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_LAYER_RASTER); } +{ MS_LEXER_RETURN_TOKEN(MS_POSTGIS); } YY_BREAK case 282: YY_RULE_SETUP #line 451 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_ALIGN_RIGHT); } +{ MS_LEXER_RETURN_TOKEN(MS_PLUGIN); } YY_BREAK case 283: YY_RULE_SETUP #line 452 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_CJC_ROUND); } +{ MS_LEXER_RETURN_TOKEN(MS_LAYER_QUERY); } YY_BREAK case 284: YY_RULE_SETUP #line 453 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_SDE); } +{ MS_LEXER_RETURN_TOKEN(MS_LAYER_RASTER); } YY_BREAK case 285: YY_RULE_SETUP #line 454 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_SELECTED); } +{ MS_LEXER_RETURN_TOKEN(MS_ALIGN_RIGHT); } YY_BREAK case 286: YY_RULE_SETUP #line 455 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_SYMBOL_SIMPLE); } +{ MS_LEXER_RETURN_TOKEN(MS_CJC_ROUND); } YY_BREAK case 287: YY_RULE_SETUP #line 456 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_SINGLE); } +{ MS_LEXER_RETURN_TOKEN(MS_SDE); } YY_BREAK case 288: YY_RULE_SETUP #line 457 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_SMALL); } +{ MS_LEXER_RETURN_TOKEN(MS_SELECTED); } YY_BREAK case 289: YY_RULE_SETUP #line 458 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_CJC_SQUARE); } +{ MS_LEXER_RETURN_TOKEN(MS_SYMBOL_SIMPLE); } YY_BREAK case 290: YY_RULE_SETUP #line 459 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_SYMBOL_SVG); } +{ MS_LEXER_RETURN_TOKEN(MS_SINGLE); } YY_BREAK case 291: YY_RULE_SETUP #line 460 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(POLAROFFSET); } +{ MS_LEXER_RETURN_TOKEN(MS_SMALL); } YY_BREAK case 292: YY_RULE_SETUP #line 461 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TINY); } +{ MS_LEXER_RETURN_TOKEN(MS_CJC_SQUARE); } YY_BREAK case 293: YY_RULE_SETUP #line 462 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_CJC_TRIANGLE); } +{ MS_LEXER_RETURN_TOKEN(MS_SYMBOL_SVG); } YY_BREAK case 294: YY_RULE_SETUP #line 463 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TRUE); } +{ MS_LEXER_RETURN_TOKEN(POLAROFFSET); } YY_BREAK case 295: YY_RULE_SETUP #line 464 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_TRUETYPE); } +{ MS_LEXER_RETURN_TOKEN(MS_TINY); } YY_BREAK case 296: YY_RULE_SETUP #line 465 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_UC); } +{ MS_LEXER_RETURN_TOKEN(MS_CJC_TRIANGLE); } YY_BREAK case 297: YY_RULE_SETUP #line 466 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_UL); } +{ MS_LEXER_RETURN_TOKEN(MS_TRUE); } YY_BREAK case 298: YY_RULE_SETUP #line 467 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_UR); } +{ MS_LEXER_RETURN_TOKEN(MS_TRUETYPE); } YY_BREAK case 299: YY_RULE_SETUP #line 468 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_UNION); } +{ MS_LEXER_RETURN_TOKEN(MS_UC); } YY_BREAK case 300: YY_RULE_SETUP #line 469 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_UVRASTER); } +{ MS_LEXER_RETURN_TOKEN(MS_UL); } YY_BREAK case 301: YY_RULE_SETUP #line 470 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_CONTOUR); } +{ MS_LEXER_RETURN_TOKEN(MS_UR); } YY_BREAK case 302: YY_RULE_SETUP #line 471 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_SYMBOL_VECTOR); } +{ MS_LEXER_RETURN_TOKEN(MS_UNION); } YY_BREAK case 303: YY_RULE_SETUP #line 472 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_WFS); } +{ MS_LEXER_RETURN_TOKEN(MS_UVRASTER); } YY_BREAK case 304: YY_RULE_SETUP #line 473 "maplexer.l" -{ MS_LEXER_RETURN_TOKEN(MS_WMS); } +{ MS_LEXER_RETURN_TOKEN(MS_CONTOUR); } YY_BREAK case 305: YY_RULE_SETUP +#line 474 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(MS_SYMBOL_VECTOR); } + YY_BREAK +case 306: +YY_RULE_SETUP #line 475 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(MS_WFS); } + YY_BREAK +case 307: +YY_RULE_SETUP +#line 476 "maplexer.l" +{ MS_LEXER_RETURN_TOKEN(MS_WMS); } + YY_BREAK +case 308: +YY_RULE_SETUP +#line 478 "maplexer.l" { msyytext++; msyytext[strlen(msyytext)-1] = '\0'; @@ -4057,9 +3572,9 @@ YY_RULE_SETUP return(MS_STRING); } YY_BREAK -case 306: +case 309: YY_RULE_SETUP -#line 483 "maplexer.l" +#line 486 "maplexer.l" { msyytext++; msyytext[strlen(msyytext)-1] = '\0'; @@ -4070,10 +3585,10 @@ YY_RULE_SETUP return(MS_NUMBER); } YY_BREAK -case 307: -/* rule 307 can match eol */ +case 310: +/* rule 310 can match eol */ YY_RULE_SETUP -#line 493 "maplexer.l" +#line 496 "maplexer.l" { msyytext++; msyytext[strlen(msyytext)-1] = '\0'; @@ -4083,34 +3598,34 @@ YY_RULE_SETUP return(MS_BINDING); } YY_BREAK -case 308: +case 311: YY_RULE_SETUP -#line 502 "maplexer.l" +#line 505 "maplexer.l" { /* attribute binding - shape (fixed value) */ return(MS_TOKEN_BINDING_SHAPE); } YY_BREAK -case 309: +case 312: YY_RULE_SETUP -#line 506 "maplexer.l" +#line 509 "maplexer.l" { /* attribute binding - map cellsize */ return(MS_TOKEN_BINDING_MAP_CELLSIZE); } YY_BREAK -case 310: +case 313: YY_RULE_SETUP -#line 510 "maplexer.l" +#line 513 "maplexer.l" { /* attribute binding - data cellsize */ return(MS_TOKEN_BINDING_DATA_CELLSIZE); } YY_BREAK -case 311: -/* rule 311 can match eol */ +case 314: +/* rule 314 can match eol */ YY_RULE_SETUP -#line 514 "maplexer.l" +#line 517 "maplexer.l" { /* attribute binding - numeric (no quotes) */ msyytext++; @@ -4121,10 +3636,10 @@ YY_RULE_SETUP return(MS_TOKEN_BINDING_DOUBLE); } YY_BREAK -case 312: -/* rule 312 can match eol */ +case 315: +/* rule 315 can match eol */ YY_RULE_SETUP -#line 523 "maplexer.l" +#line 526 "maplexer.l" { /* attribute binding - string (single or double quotes) */ msyytext+=2; @@ -4135,10 +3650,10 @@ YY_RULE_SETUP return(MS_TOKEN_BINDING_STRING); } YY_BREAK -case 313: -/* rule 313 can match eol */ +case 316: +/* rule 316 can match eol */ YY_RULE_SETUP -#line 532 "maplexer.l" +#line 535 "maplexer.l" { /* attribute binding - time */ msyytext+=2; @@ -4149,9 +3664,9 @@ YY_RULE_SETUP return(MS_TOKEN_BINDING_TIME); } YY_BREAK -case 314: +case 317: YY_RULE_SETUP -#line 542 "maplexer.l" +#line 545 "maplexer.l" { MS_LEXER_STRING_REALLOC(msyystring_buffer, strlen(msyytext), msyystring_buffer_size, msyystring_buffer_ptr); @@ -4160,9 +3675,9 @@ YY_RULE_SETUP return(MS_NUMBER); } YY_BREAK -case 315: +case 318: YY_RULE_SETUP -#line 550 "maplexer.l" +#line 553 "maplexer.l" { MS_LEXER_STRING_REALLOC(msyystring_buffer, strlen(msyytext), msyystring_buffer_size, msyystring_buffer_ptr); @@ -4171,10 +3686,10 @@ YY_RULE_SETUP return(MS_TOKEN_LITERAL_NUMBER); } YY_BREAK -case 316: -/* rule 316 can match eol */ +case 319: +/* rule 319 can match eol */ YY_RULE_SETUP -#line 558 "maplexer.l" +#line 561 "maplexer.l" { msyytext++; msyytext[strlen(msyytext)-1] = '\0'; @@ -4184,10 +3699,10 @@ YY_RULE_SETUP return(MS_TOKEN_LITERAL_TIME); } YY_BREAK -case 317: -/* rule 317 can match eol */ +case 320: +/* rule 320 can match eol */ YY_RULE_SETUP -#line 567 "maplexer.l" +#line 570 "maplexer.l" { msyytext++; msyytext[strlen(msyytext)-2] = '\0'; @@ -4197,10 +3712,10 @@ YY_RULE_SETUP return(MS_IREGEX); } YY_BREAK -case 318: -/* rule 318 can match eol */ +case 321: +/* rule 321 can match eol */ YY_RULE_SETUP -#line 576 "maplexer.l" +#line 579 "maplexer.l" { msyytext++; msyytext[strlen(msyytext)-1] = '\0'; @@ -4210,9 +3725,9 @@ YY_RULE_SETUP return(MS_REGEX); } YY_BREAK -case 319: +case 322: YY_RULE_SETUP -#line 585 "maplexer.l" +#line 588 "maplexer.l" { msyytext++; msyytext[strlen(msyytext)-1] = '\0'; @@ -4222,9 +3737,9 @@ YY_RULE_SETUP return(MS_EXPRESSION); } YY_BREAK -case 320: +case 323: YY_RULE_SETUP -#line 594 "maplexer.l" +#line 597 "maplexer.l" { msyytext++; msyytext[strlen(msyytext)-1] = '\0'; @@ -4234,9 +3749,9 @@ YY_RULE_SETUP return(MS_LIST); } YY_BREAK -case 321: +case 324: YY_RULE_SETUP -#line 603 "maplexer.l" +#line 606 "maplexer.l" { msyystring_return_state = MS_STRING; msyystring_begin = msyytext[0]; @@ -4245,9 +3760,9 @@ YY_RULE_SETUP BEGIN(MSSTRING); } YY_BREAK -case 322: +case 325: YY_RULE_SETUP -#line 611 "maplexer.l" +#line 614 "maplexer.l" { MS_LEXER_STRING_REALLOC(msyystring_buffer, msyystring_size, msyystring_buffer_size, msyystring_buffer_ptr); @@ -4278,9 +3793,9 @@ YY_RULE_SETUP } } YY_BREAK -case 323: +case 326: YY_RULE_SETUP -#line 641 "maplexer.l" +#line 644 "maplexer.l" { MS_LEXER_STRING_REALLOC(msyystring_buffer, msyystring_size, msyystring_buffer_size, msyystring_buffer_ptr); @@ -4292,10 +3807,10 @@ YY_RULE_SETUP *msyystring_buffer_ptr++ = msyytext[0]; } YY_BREAK -case 324: -/* rule 324 can match eol */ +case 327: +/* rule 327 can match eol */ YY_RULE_SETUP -#line 652 "maplexer.l" +#line 655 "maplexer.l" { char *yptr = msyytext; while ( *yptr ) { @@ -4306,10 +3821,10 @@ YY_RULE_SETUP } } YY_BREAK -case 325: -/* rule 325 can match eol */ +case 328: +/* rule 328 can match eol */ YY_RULE_SETUP -#line 662 "maplexer.l" +#line 665 "maplexer.l" { msyytext++; msyytext[strlen(msyytext)-1] = '\0'; @@ -4335,9 +3850,9 @@ YY_RULE_SETUP BEGIN(INITIAL); } YY_BREAK -case 326: +case 329: YY_RULE_SETUP -#line 687 "maplexer.l" +#line 690 "maplexer.l" { msyystring_return_state = MS_TOKEN_LITERAL_STRING; msyystring_begin = msyytext[0]; @@ -4346,9 +3861,9 @@ YY_RULE_SETUP BEGIN(MSSTRING); } YY_BREAK -case 327: +case 330: YY_RULE_SETUP -#line 695 "maplexer.l" +#line 698 "maplexer.l" { MS_LEXER_STRING_REALLOC(msyystring_buffer, strlen(msyytext), msyystring_buffer_size, msyystring_buffer_ptr); @@ -4356,14 +3871,14 @@ YY_RULE_SETUP return(MS_STRING); } YY_BREAK -case 328: -/* rule 328 can match eol */ +case 331: +/* rule 331 can match eol */ YY_RULE_SETUP -#line 702 "maplexer.l" +#line 705 "maplexer.l" { msyylineno++; } YY_BREAK case YY_STATE_EOF(INITIAL): -#line 704 "maplexer.l" +#line 707 "maplexer.l" { if( --include_stack_ptr < 0 ) return(EOF); /* end of main file */ @@ -4375,17 +3890,17 @@ case YY_STATE_EOF(INITIAL): } } YY_BREAK -case 329: -/* rule 329 can match eol */ +case 332: +/* rule 332 can match eol */ YY_RULE_SETUP -#line 715 "maplexer.l" +#line 718 "maplexer.l" { return(0); } YY_BREAK -case 330: +case 333: YY_RULE_SETUP -#line 719 "maplexer.l" +#line 722 "maplexer.l" { MS_LEXER_STRING_REALLOC(msyystring_buffer, strlen(msyytext), msyystring_buffer_size, msyystring_buffer_ptr); @@ -4393,17 +3908,17 @@ YY_RULE_SETUP return(0); } YY_BREAK -case 331: +case 334: YY_RULE_SETUP -#line 725 "maplexer.l" +#line 728 "maplexer.l" { return(msyytext[0]); } YY_BREAK -case 332: +case 335: YY_RULE_SETUP -#line 726 "maplexer.l" +#line 729 "maplexer.l" ECHO; YY_BREAK -#line 4407 "maplexer.c" +#line 3922 "maplexer.c" case YY_STATE_EOF(URL_VARIABLE): case YY_STATE_EOF(URL_STRING): case YY_STATE_EOF(EXPRESSION_STRING): @@ -4662,14 +4177,6 @@ static int yy_get_next_buffer (void) else ret_val = EOB_ACT_CONTINUE_SCAN; - if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { - /* Extend the array by 50%, plus the number we really need. */ - yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); - YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) msyyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ); - if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) - YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); - } - (yy_n_chars) += number_to_move; YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; @@ -4690,7 +4197,7 @@ static int yy_get_next_buffer (void) for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) { - register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 84); + register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 58); if ( yy_accept[yy_current_state] ) { (yy_last_accepting_state) = yy_current_state; @@ -4699,7 +4206,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 >= 1926 ) + if ( yy_current_state >= 1939 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -4718,7 +4225,7 @@ static int yy_get_next_buffer (void) register int yy_is_jam; register char *yy_cp = (yy_c_buf_p); - register YY_CHAR yy_c = 84; + register YY_CHAR yy_c = 58; if ( yy_accept[yy_current_state] ) { (yy_last_accepting_state) = yy_current_state; @@ -4727,11 +4234,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 >= 1926 ) + if ( yy_current_state >= 1939 ) 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 == 1925); + yy_is_jam = (yy_current_state == 1938); return yy_is_jam ? 0 : yy_current_state; } @@ -5085,9 +4592,7 @@ static void msyyensure_buffer_stack (void) (yy_buffer_stack) = (struct yy_buffer_state**)msyyalloc (num_to_alloc * sizeof(struct yy_buffer_state*) ); - if ( ! (yy_buffer_stack) ) - YY_FATAL_ERROR( "out of dynamic memory in msyyensure_buffer_stack()" ); - + memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); (yy_buffer_stack_max) = num_to_alloc; @@ -5105,8 +4610,6 @@ static void msyyensure_buffer_stack (void) ((yy_buffer_stack), num_to_alloc * sizeof(struct yy_buffer_state*) ); - if ( ! (yy_buffer_stack) ) - YY_FATAL_ERROR( "out of dynamic memory in msyyensure_buffer_stack()" ); /* zero only the new slots.*/ memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); @@ -5165,8 +4668,8 @@ YY_BUFFER_STATE msyy_scan_string (yyconst char * yystr ) /** Setup the input buffer state to scan the given bytes. The next call to msyylex() 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. */ @@ -5405,7 +4908,7 @@ void msyyfree (void * ptr ) #define YYTABLES_NAME "yytables" -#line 726 "maplexer.l" +#line 729 "maplexer.l" diff --git a/maplexer.l b/maplexer.l index db8a08888e..d9d0b54d6b 100644 --- a/maplexer.l +++ b/maplexer.l @@ -182,6 +182,9 @@ char path[MS_MAXPATHLEN]; tostring { MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_TOSTRING); } commify { MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_COMMIFY); } round { MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_ROUND); } +upper { MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_UPPER); } +lower { MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_LOWER); } +initcap { MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_INITCAP); } buffer { MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_BUFFER); } difference { MS_LEXER_RETURN_TOKEN(MS_TOKEN_FUNCTION_DIFFERENCE); } diff --git a/mapparser.c b/mapparser.c index eb13b0ca8d..fd1eeeb47c 100644 --- a/mapparser.c +++ b/mapparser.c @@ -1,23 +1,24 @@ - -/* A Bison parser, made by GNU Bison 2.4.1. */ +/* A Bison parser, made by GNU Bison 2.3. */ /* Skeleton implementation for Bison's Yacc-like parsers in C - - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify + + This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - + the Free Software Foundation; either version 2, or (at your option) + any later version. + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License - along with this program. If not, see . */ + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. */ /* As a special exception, you may create a larger work that contains part or all of the Bison parser skeleton and distribute that work @@ -28,7 +29,7 @@ special exception, which will cause the skeleton and the resulting Bison output files to be licensed under the GNU General Public License without this special exception. - + This special exception was added by the Free Software Foundation in version 2.2 of Bison. */ @@ -46,7 +47,7 @@ #define YYBISON 1 /* Bison version. */ -#define YYBISON_VERSION "2.4.1" +#define YYBISON_VERSION "2.3" /* Skeleton name. */ #define YYSKELETON_NAME "yacc.c" @@ -54,61 +55,11 @@ /* Pure parsers. */ #define YYPURE 1 -/* Push parsers. */ -#define YYPUSH 0 - -/* Pull parsers. */ -#define YYPULL 1 - /* Using locations. */ #define YYLSP_NEEDED 0 -/* Copy the first part of user declarations. */ - -/* Line 189 of yacc.c */ -#line 5 "/home/even/mapserver/git/mapserver/mapparser.y" - -/* C declarations */ -#include -#include -#include -#include -#include - -#include "mapserver.h" /* for TRUE/FALSE and REGEX includes */ -#include "maptime.h" /* for time comparison routines */ -#include "mapprimitive.h" /* for shapeObj */ - -#include "mapparser.h" /* for YYSTYPE in the function prototype for yylex() */ - -int yylex(YYSTYPE *, parseObj *); /* prototype functions, defined after the grammar */ -int yyerror(parseObj *, const char *); - - -/* Line 189 of yacc.c */ -#line 92 "/home/even/mapserver/git/mapserver/mapparser.c" - -/* Enabling traces. */ -#ifndef YYDEBUG -# define YYDEBUG 0 -#endif - -/* Enabling verbose error messages. */ -#ifdef YYERROR_VERBOSE -# undef YYERROR_VERBOSE -# define YYERROR_VERBOSE 1 -#else -# define YYERROR_VERBOSE 0 -#endif - -/* Enabling the token table. */ -#ifndef YYTOKEN_TABLE -# define YYTOKEN_TABLE 0 -#endif - - /* Tokens. */ #ifndef YYTOKENTYPE # define YYTOKENTYPE @@ -145,48 +96,128 @@ int yyerror(parseObj *, const char *); COMMIFY = 285, LENGTH = 286, AREA = 287, - TOSTRING = 288, - SMOOTHSIA = 289, - GENERALIZE = 290, - SIMPLIFYPT = 291, - SIMPLIFY = 292, - DIFFERENCE = 293, - YYBUFFER = 294, - NEG = 295 + INITCAP = 288, + LOWER = 289, + UPPER = 290, + TOSTRING = 291, + SMOOTHSIA = 292, + GENERALIZE = 293, + SIMPLIFYPT = 294, + SIMPLIFY = 295, + DIFFERENCE = 296, + YYBUFFER = 297, + NEG = 298 }; #endif +/* Tokens. */ +#define NUMBER 258 +#define STRING 259 +#define TIME 260 +#define SHAPE 261 +#define OR 262 +#define AND 263 +#define NOT 264 +#define IRE 265 +#define IEQ 266 +#define IN 267 +#define GE 268 +#define LE 269 +#define GT 270 +#define LT 271 +#define NE 272 +#define EQ 273 +#define RE 274 +#define DWITHIN 275 +#define BEYOND 276 +#define CONTAINS 277 +#define WITHIN 278 +#define CROSSES 279 +#define OVERLAPS 280 +#define TOUCHES 281 +#define DISJOINT 282 +#define INTERSECTS 283 +#define ROUND 284 +#define COMMIFY 285 +#define LENGTH 286 +#define AREA 287 +#define INITCAP 288 +#define LOWER 289 +#define UPPER 290 +#define TOSTRING 291 +#define SMOOTHSIA 292 +#define GENERALIZE 293 +#define SIMPLIFYPT 294 +#define SIMPLIFY 295 +#define DIFFERENCE 296 +#define YYBUFFER 297 +#define NEG 298 + + + + +/* Copy the first part of user declarations. */ +#line 5 "mapparser.y" + +/* C declarations */ +#include +#include +#include +#include +#include + +#include "mapserver.h" /* for TRUE/FALSE and REGEX includes */ +#include "maptime.h" /* for time comparison routines */ +#include "mapprimitive.h" /* for shapeObj */ + +#include "mapparser.h" /* for YYSTYPE in the function prototype for yylex() */ + +int yylex(YYSTYPE *, parseObj *); /* prototype functions, defined after the grammar */ +int yyerror(parseObj *, const char *); + + +/* Enabling traces. */ +#ifndef YYDEBUG +# define YYDEBUG 0 +#endif +/* Enabling verbose error messages. */ +#ifdef YYERROR_VERBOSE +# undef YYERROR_VERBOSE +# define YYERROR_VERBOSE 1 +#else +# define YYERROR_VERBOSE 0 +#endif +/* Enabling the token table. */ +#ifndef YYTOKEN_TABLE +# define YYTOKEN_TABLE 0 +#endif #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE +#line 30 "mapparser.y" { - -/* Line 214 of yacc.c */ -#line 30 "/home/even/mapserver/git/mapserver/mapparser.y" - double dblval; int intval; char *strval; struct tm tmval; shapeObj *shpval; - - - -/* Line 214 of yacc.c */ -#line 178 "/home/even/mapserver/git/mapserver/mapparser.c" -} YYSTYPE; -# define YYSTYPE_IS_TRIVIAL 1 +} +/* Line 187 of yacc.c. */ +#line 208 "mapparser.c" + YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 +# define YYSTYPE_IS_TRIVIAL 1 #endif + /* Copy the second part of user declarations. */ -/* Line 264 of yacc.c */ -#line 190 "/home/even/mapserver/git/mapserver/mapparser.c" +/* Line 216 of yacc.c. */ +#line 221 "mapparser.c" #ifdef short # undef short @@ -261,14 +292,14 @@ typedef short int yytype_int16; #if (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) static int -YYID (int yyi) +YYID (int i) #else static int -YYID (yyi) - int yyi; +YYID (i) + int i; #endif { - return yyi; + return i; } #endif @@ -349,9 +380,9 @@ void free (void *); /* INFRINGES ON USER NAME SPACE */ /* A type that is properly aligned for any stack member. */ union yyalloc { - yytype_int16 yyss_alloc; - YYSTYPE yyvs_alloc; -}; + yytype_int16 yyss; + YYSTYPE yyvs; + }; /* The size of the maximum gap between one aligned stack and the next. */ # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) @@ -385,12 +416,12 @@ union yyalloc elements in the stack, and YYPTR gives the new location of the stack. Advance YYPTR to a properly aligned location for the next stack. */ -# define YYSTACK_RELOCATE(Stack_alloc, Stack) \ +# define YYSTACK_RELOCATE(Stack) \ do \ { \ YYSIZE_T yynewbytes; \ - YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ - Stack = &yyptr->Stack_alloc; \ + YYCOPY (&yyptr->Stack, Stack, yysize); \ + Stack = &yyptr->Stack; \ yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ yyptr += yynewbytes / sizeof (*yyptr); \ } \ @@ -399,22 +430,22 @@ union yyalloc #endif /* YYFINAL -- State number of the termination state. */ -#define YYFINAL 47 +#define YYFINAL 53 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 415 +#define YYLAST 446 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 50 +#define YYNTOKENS 53 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 7 /* YYNRULES -- Number of rules. */ -#define YYNRULES 82 +#define YYNRULES 85 /* YYNRULES -- Number of states. */ -#define YYNSTATES 201 +#define YYNSTATES 213 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 295 +#define YYMAXUTOK 298 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -425,13 +456,13 @@ static const yytype_uint8 yytranslate[] = 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 44, 2, 2, - 47, 48, 42, 40, 49, 41, 2, 43, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 47, 2, 2, + 50, 51, 45, 43, 52, 44, 2, 46, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 46, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 49, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -451,7 +482,7 @@ static const yytype_uint8 yytranslate[] = 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 45 + 35, 36, 37, 38, 39, 40, 41, 42, 48 }; #if YYDEBUG @@ -467,61 +498,62 @@ static const yytype_uint16 yyprhs[] = 182, 186, 190, 194, 196, 200, 204, 208, 212, 216, 220, 223, 227, 232, 237, 244, 246, 250, 257, 264, 271, 278, 285, 290, 297, 306, 317, 319, 323, 327, - 334, 339, 341 + 334, 339, 344, 349, 354, 356 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int8 yyrhs[] = { - 51, 0, -1, -1, 52, -1, 53, -1, 55, -1, - 54, -1, 52, 7, 52, -1, 52, 8, 52, -1, - 52, 7, 53, -1, 52, 8, 53, -1, 53, 7, - 52, -1, 53, 8, 52, -1, 53, 7, 53, -1, - 53, 8, 53, -1, 9, 52, -1, 9, 53, -1, - 55, 19, 55, -1, 55, 10, 55, -1, 53, 18, - 53, -1, 53, 17, 53, -1, 53, 15, 53, -1, - 53, 16, 53, -1, 53, 13, 53, -1, 53, 14, - 53, -1, 47, 52, 48, -1, 55, 18, 55, -1, - 55, 17, 55, -1, 55, 15, 55, -1, 55, 16, - 55, -1, 55, 13, 55, -1, 55, 14, 55, -1, - 56, 18, 56, -1, 56, 17, 56, -1, 56, 15, - 56, -1, 56, 16, 56, -1, 56, 13, 56, -1, - 56, 14, 56, -1, 55, 12, 55, -1, 53, 12, - 55, -1, 53, 11, 53, -1, 55, 11, 55, -1, - 56, 11, 56, -1, 54, 18, 54, -1, 54, 28, - 54, -1, 54, 27, 54, -1, 54, 26, 54, -1, - 54, 25, 54, -1, 54, 24, 54, -1, 54, 23, - 54, -1, 54, 22, 54, -1, 54, 20, 54, -1, - 54, 21, 54, -1, 3, -1, 47, 53, 48, -1, - 53, 40, 53, -1, 53, 41, 53, -1, 53, 42, - 53, -1, 53, 44, 53, -1, 53, 43, 53, -1, - 41, 53, -1, 53, 46, 53, -1, 31, 47, 55, - 48, -1, 32, 47, 54, 48, -1, 29, 47, 53, - 49, 53, 48, -1, 6, -1, 47, 54, 48, -1, - 39, 47, 54, 49, 53, 48, -1, 38, 47, 54, - 49, 54, 48, -1, 37, 47, 54, 49, 53, 48, - -1, 36, 47, 54, 49, 53, 48, -1, 35, 47, - 54, 49, 53, 48, -1, 34, 47, 54, 48, -1, - 34, 47, 54, 49, 53, 48, -1, 34, 47, 54, - 49, 53, 49, 53, 48, -1, 34, 47, 54, 49, - 53, 49, 53, 49, 55, 48, -1, 4, -1, 47, - 55, 48, -1, 55, 40, 55, -1, 33, 47, 53, - 49, 55, 48, -1, 30, 47, 55, 48, -1, 5, - -1, 47, 56, 48, -1 + 54, 0, -1, -1, 55, -1, 56, -1, 58, -1, + 57, -1, 55, 7, 55, -1, 55, 8, 55, -1, + 55, 7, 56, -1, 55, 8, 56, -1, 56, 7, + 55, -1, 56, 8, 55, -1, 56, 7, 56, -1, + 56, 8, 56, -1, 9, 55, -1, 9, 56, -1, + 58, 19, 58, -1, 58, 10, 58, -1, 56, 18, + 56, -1, 56, 17, 56, -1, 56, 15, 56, -1, + 56, 16, 56, -1, 56, 13, 56, -1, 56, 14, + 56, -1, 50, 55, 51, -1, 58, 18, 58, -1, + 58, 17, 58, -1, 58, 15, 58, -1, 58, 16, + 58, -1, 58, 13, 58, -1, 58, 14, 58, -1, + 59, 18, 59, -1, 59, 17, 59, -1, 59, 15, + 59, -1, 59, 16, 59, -1, 59, 13, 59, -1, + 59, 14, 59, -1, 58, 12, 58, -1, 56, 12, + 58, -1, 56, 11, 56, -1, 58, 11, 58, -1, + 59, 11, 59, -1, 57, 18, 57, -1, 57, 28, + 57, -1, 57, 27, 57, -1, 57, 26, 57, -1, + 57, 25, 57, -1, 57, 24, 57, -1, 57, 23, + 57, -1, 57, 22, 57, -1, 57, 20, 57, -1, + 57, 21, 57, -1, 3, -1, 50, 56, 51, -1, + 56, 43, 56, -1, 56, 44, 56, -1, 56, 45, + 56, -1, 56, 47, 56, -1, 56, 46, 56, -1, + 44, 56, -1, 56, 49, 56, -1, 31, 50, 58, + 51, -1, 32, 50, 57, 51, -1, 29, 50, 56, + 52, 56, 51, -1, 6, -1, 50, 57, 51, -1, + 42, 50, 57, 52, 56, 51, -1, 41, 50, 57, + 52, 57, 51, -1, 40, 50, 57, 52, 56, 51, + -1, 39, 50, 57, 52, 56, 51, -1, 38, 50, + 57, 52, 56, 51, -1, 37, 50, 57, 51, -1, + 37, 50, 57, 52, 56, 51, -1, 37, 50, 57, + 52, 56, 52, 56, 51, -1, 37, 50, 57, 52, + 56, 52, 56, 52, 58, 51, -1, 4, -1, 50, + 58, 51, -1, 58, 43, 58, -1, 36, 50, 56, + 52, 58, 51, -1, 30, 50, 58, 51, -1, 35, + 50, 58, 51, -1, 34, 50, 58, 51, -1, 33, + 50, 58, 51, -1, 5, -1, 50, 59, 51, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 65, 65, 66, 79, 93, 106, 117, 125, 134, - 142, 151, 159, 168, 176, 185, 186, 187, 202, 217, - 223, 229, 235, 241, 247, 253, 254, 262, 270, 279, - 287, 295, 303, 309, 315, 321, 327, 333, 339, 360, - 381, 387, 395, 402, 413, 424, 435, 446, 457, 468, - 479, 490, 500, 512, 513, 514, 515, 516, 517, 518, - 525, 526, 527, 528, 536, 539, 540, 541, 551, 561, - 571, 581, 591, 601, 611, 621, 634, 635, 636, 640, - 644, 650, 651 + 0, 66, 66, 67, 80, 94, 107, 118, 126, 135, + 143, 152, 160, 169, 177, 186, 187, 188, 203, 218, + 224, 230, 236, 242, 248, 254, 255, 263, 271, 280, + 288, 296, 304, 310, 316, 322, 328, 334, 340, 361, + 382, 388, 396, 403, 414, 425, 436, 447, 458, 469, + 480, 491, 501, 513, 514, 515, 516, 517, 518, 519, + 526, 527, 528, 529, 537, 540, 541, 542, 552, 562, + 572, 582, 592, 602, 612, 622, 635, 636, 637, 641, + 645, 649, 653, 657, 663, 664 }; #endif @@ -534,10 +566,11 @@ static const char *const yytname[] = "OR", "AND", "NOT", "IRE", "IEQ", "IN", "GE", "LE", "GT", "LT", "NE", "EQ", "RE", "DWITHIN", "BEYOND", "CONTAINS", "WITHIN", "CROSSES", "OVERLAPS", "TOUCHES", "DISJOINT", "INTERSECTS", "ROUND", "COMMIFY", - "LENGTH", "AREA", "TOSTRING", "SMOOTHSIA", "GENERALIZE", "SIMPLIFYPT", - "SIMPLIFY", "DIFFERENCE", "YYBUFFER", "'+'", "'-'", "'*'", "'/'", "'%'", - "NEG", "'^'", "'('", "')'", "','", "$accept", "input", "logical_exp", - "math_exp", "shape_exp", "string_exp", "time_exp", 0 + "LENGTH", "AREA", "INITCAP", "LOWER", "UPPER", "TOSTRING", "SMOOTHSIA", + "GENERALIZE", "SIMPLIFYPT", "SIMPLIFY", "DIFFERENCE", "YYBUFFER", "'+'", + "'-'", "'*'", "'/'", "'%'", "NEG", "'^'", "'('", "')'", "','", "$accept", + "input", "logical_exp", "math_exp", "shape_exp", "string_exp", + "time_exp", 0 }; #endif @@ -550,22 +583,23 @@ 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, - 43, 45, 42, 47, 37, 295, 94, 40, 41, 44 + 295, 296, 297, 43, 45, 42, 47, 37, 298, 94, + 40, 41, 44 }; # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint8 yyr1[] = { - 0, 50, 51, 51, 51, 51, 51, 52, 52, 52, - 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, - 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, - 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, - 52, 52, 52, 52, 52, 52, 52, 52, 52, 52, - 52, 52, 52, 53, 53, 53, 53, 53, 53, 53, - 53, 53, 53, 53, 53, 54, 54, 54, 54, 54, - 54, 54, 54, 54, 54, 54, 55, 55, 55, 55, - 55, 56, 56 + 0, 53, 54, 54, 54, 54, 54, 55, 55, 55, + 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 55, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 56, 57, 57, 57, 57, 57, + 57, 57, 57, 57, 57, 57, 58, 58, 58, 58, + 58, 58, 58, 58, 59, 59 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -579,7 +613,7 @@ static const yytype_uint8 yyr2[] = 3, 3, 3, 1, 3, 3, 3, 3, 3, 3, 2, 3, 4, 4, 6, 1, 3, 6, 6, 6, 6, 6, 4, 6, 8, 10, 1, 3, 3, 6, - 4, 1, 3 + 4, 4, 4, 4, 1, 3 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -587,67 +621,69 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint8 yydefact[] = { - 2, 53, 76, 81, 65, 0, 0, 0, 0, 0, + 2, 53, 76, 84, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 3, 4, 6, 5, 0, 15, 16, 0, 0, 0, + 0, 0, 0, 3, 4, 6, 5, 0, 15, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 60, 0, 0, 0, 0, 0, 1, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 60, 0, 0, + 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 25, 54, - 66, 77, 82, 7, 9, 8, 10, 11, 13, 12, - 14, 40, 39, 23, 24, 21, 22, 20, 19, 55, - 56, 57, 59, 58, 61, 43, 51, 52, 50, 49, - 48, 47, 46, 45, 44, 18, 41, 38, 30, 31, - 28, 29, 27, 26, 17, 78, 0, 42, 36, 37, - 34, 35, 33, 32, 0, 0, 80, 62, 0, 63, - 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 64, 79, 73, - 0, 71, 70, 69, 68, 67, 0, 74, 0, 0, - 75 + 0, 0, 0, 0, 0, 0, 0, 25, 54, 66, + 77, 85, 7, 9, 8, 10, 11, 13, 12, 14, + 40, 39, 23, 24, 21, 22, 20, 19, 55, 56, + 57, 59, 58, 61, 43, 51, 52, 50, 49, 48, + 47, 46, 45, 44, 18, 41, 38, 30, 31, 28, + 29, 27, 26, 17, 78, 0, 42, 36, 37, 34, + 35, 33, 32, 0, 0, 80, 62, 0, 63, 83, + 82, 81, 0, 72, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, + 79, 73, 0, 71, 70, 69, 68, 67, 0, 74, + 0, 0, 75 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int8 yydefgoto[] = { - -1, 19, 20, 21, 27, 28, 24 + -1, 22, 23, 24, 30, 31, 27 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -46 +#define YYPACT_NINF -50 static const yytype_int16 yypact[] = { - 85, -46, -46, -46, -46, 85, -45, -30, -24, -21, - -8, 26, 40, 46, 78, 80, 81, 13, 85, 21, - -3, 205, 293, 272, 253, -46, 263, 293, 272, 13, - -1, -1, 167, 13, 167, 167, 167, 167, 167, 167, - 13, 2, 27, 145, 274, 225, 120, -46, 85, 85, - 85, 85, 13, -1, 13, 13, 13, 13, 13, 13, - 13, 13, 13, 13, 13, 13, 167, 167, 167, 167, - 167, 167, 167, 167, 167, 167, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -4, -4, -4, - -4, -4, -4, -4, 304, -1, -26, -20, 167, 82, - 314, -11, 90, 101, 102, 105, 106, -33, -46, -46, - -46, -46, -46, 121, 216, -46, 263, 121, 216, -46, - 263, 369, 124, 369, 369, 369, 369, 369, 369, 61, - 61, 2, 2, 2, 2, -46, -46, -46, -46, -46, - -46, -46, -46, -46, -46, 124, 124, 124, 124, 124, - 124, 124, 124, 124, 124, -46, -4, -46, -46, -46, - -46, -46, -46, -46, 13, -7, -46, -46, 128, -46, - -1, -46, 13, 13, 13, 13, 167, 13, 129, 324, - 126, 283, 333, 342, 351, 130, 360, -46, -46, -46, - 13, -46, -46, -46, -46, -46, 294, -46, -1, 127, - -46 + 194, -50, -50, -50, -50, 194, -43, -21, 2, 30, + 31, 43, 44, 45, 46, 47, 48, 76, 82, 86, + 16, 194, 8, 18, 248, 343, 319, 202, -50, 310, + 343, 319, 16, 95, 95, 208, 95, 95, 95, 16, + 208, 208, 208, 208, 208, 208, 16, -18, 3, 126, + 321, 269, 150, -50, 194, 194, 194, 194, 16, 95, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 95, 95, 95, 95, 95, 95, 95, 95, + 95, 95, 95, -1, -1, -1, -1, -1, -1, -1, + -29, 95, -42, -38, 208, 65, -19, -8, 84, 340, + -49, -2, 94, 96, 97, 98, 350, -50, -50, -50, + -50, -50, 139, 260, -50, 310, 139, 260, -50, 310, + 270, 119, 270, 270, 270, 270, 270, 270, -5, -5, + -18, -18, -18, -18, -50, -50, -50, -50, -50, -50, + -50, -50, -50, -50, 119, 119, 119, 119, 119, 119, + 119, 119, 119, 119, -50, -1, -50, -50, -50, -50, + -50, -50, -50, 16, 133, -50, -50, 130, -50, -50, + -50, -50, 95, -50, 16, 16, 16, 16, 208, 16, + 134, 359, 135, 66, 368, 377, 386, 137, 395, -50, + -50, -50, 16, -50, -50, -50, -50, -50, 330, -50, + 95, 136, -50 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int8 yypgoto[] = { - -46, -46, 1, 7, 74, 0, 9 + -50, -50, 1, 7, 79, 0, 9 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -657,94 +693,100 @@ static const yytype_int8 yypgoto[] = #define YYTABLE_NINF -1 static const yytype_uint8 yytable[] = { - 23, 3, 29, 2, 48, 49, 25, 60, 61, 62, - 63, 64, 26, 65, 86, 109, 1, 30, 45, 42, - 86, 47, 166, 31, 41, 43, 32, 46, 167, 7, - 96, 97, 10, 86, 48, 49, 94, 171, 172, 33, - 100, 111, 6, 156, 8, 9, 95, 107, 65, 113, - 115, 117, 119, 122, 17, 114, 116, 118, 120, 121, - 40, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, 134, 34, 22, 108, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 35, 1, 2, - 3, 4, 44, 36, 5, 165, 157, 158, 159, 160, - 161, 162, 163, 62, 63, 64, 99, 65, 101, 102, - 103, 104, 105, 106, 6, 7, 8, 9, 10, 11, - 12, 13, 14, 15, 16, 37, 17, 38, 39, 49, - 169, 87, 18, 88, 89, 90, 91, 92, 93, 173, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 174, 175, 50, 51, 176, 177, 52, 53, 54, 55, - 56, 57, 58, 59, 86, 178, 86, 86, 112, 0, - 180, 179, 168, 4, 188, 200, 110, 112, 194, 181, - 182, 183, 184, 0, 186, 60, 61, 62, 63, 64, - 0, 65, 0, 109, 0, 0, 0, 196, 199, 0, - 0, 11, 12, 13, 14, 15, 16, 0, 0, 0, - 0, 0, 50, 51, 98, 0, 52, 53, 54, 55, - 56, 57, 58, 59, 51, 0, 0, 52, 53, 54, - 55, 56, 57, 58, 59, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 60, 61, 62, 63, 64, - 185, 65, 0, 0, 0, 0, 60, 61, 62, 63, - 64, 0, 65, 0, 87, 86, 88, 89, 90, 91, - 92, 93, 0, 111, 52, 53, 54, 55, 56, 57, - 58, 59, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 66, 0, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 60, 61, 62, 63, 64, 0, 65, - 0, 66, 86, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 110, 60, 61, 62, 63, 64, 0, 65, - 0, 189, 190, 0, 60, 61, 62, 63, 64, 0, - 65, 0, 197, 198, 60, 61, 62, 63, 64, 0, - 65, 0, 0, 164, 60, 61, 62, 63, 64, 0, - 65, 0, 0, 170, 60, 61, 62, 63, 64, 0, - 65, 0, 187, 60, 61, 62, 63, 64, 0, 65, - 0, 191, 60, 61, 62, 63, 64, 0, 65, 0, - 192, 60, 61, 62, 63, 64, 0, 65, 0, 193, - 60, 61, 62, 63, 64, 0, 65, 0, 195, 60, - 61, 62, 63, 64, 0, 65 + 26, 92, 183, 184, 3, 92, 28, 32, 53, 175, + 54, 55, 29, 176, 66, 67, 68, 69, 70, 1, + 71, 51, 48, 173, 92, 54, 55, 47, 49, 33, + 52, 71, 179, 102, 103, 92, 106, 107, 108, 100, + 68, 69, 70, 180, 71, 6, 109, 8, 9, 165, + 185, 0, 34, 116, 117, 122, 124, 126, 128, 131, + 20, 123, 125, 127, 129, 130, 46, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 25, + 35, 36, 154, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 37, 38, 39, 40, 41, 42, 2, + 50, 174, 166, 167, 168, 169, 170, 171, 172, 66, + 67, 68, 69, 70, 105, 71, 178, 201, 202, 110, + 111, 112, 113, 114, 115, 7, 43, 92, 10, 11, + 12, 13, 44, 56, 57, 181, 45, 58, 59, 60, + 61, 62, 63, 64, 65, 101, 186, 55, 187, 188, + 189, 144, 145, 146, 147, 148, 149, 150, 151, 152, + 153, 93, 92, 94, 95, 96, 97, 98, 99, 66, + 67, 68, 69, 70, 190, 71, 92, 118, 92, 92, + 191, 119, 192, 177, 120, 121, 200, 212, 206, 0, + 0, 193, 194, 195, 196, 0, 198, 1, 2, 3, + 4, 121, 0, 5, 0, 0, 0, 0, 0, 208, + 211, 0, 0, 93, 4, 94, 95, 96, 97, 98, + 99, 0, 0, 6, 7, 8, 9, 10, 11, 12, + 13, 14, 15, 16, 17, 18, 19, 0, 20, 0, + 0, 0, 0, 0, 21, 14, 15, 16, 17, 18, + 19, 0, 0, 0, 0, 56, 57, 0, 104, 58, + 59, 60, 61, 62, 63, 64, 65, 197, 57, 0, + 0, 58, 59, 60, 61, 62, 63, 64, 65, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 0, + 0, 66, 67, 68, 69, 70, 0, 71, 0, 0, + 0, 0, 0, 66, 67, 68, 69, 70, 0, 71, + 0, 0, 92, 66, 67, 68, 69, 70, 0, 71, + 120, 58, 59, 60, 61, 62, 63, 64, 65, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 72, + 0, 73, 74, 75, 76, 77, 78, 79, 80, 81, + 0, 0, 0, 66, 67, 68, 69, 70, 0, 71, + 0, 72, 92, 73, 74, 75, 76, 77, 78, 79, + 80, 81, 119, 66, 67, 68, 69, 70, 0, 71, + 0, 209, 210, 66, 67, 68, 69, 70, 0, 71, + 0, 0, 182, 66, 67, 68, 69, 70, 0, 71, + 0, 118, 66, 67, 68, 69, 70, 0, 71, 0, + 199, 66, 67, 68, 69, 70, 0, 71, 0, 203, + 66, 67, 68, 69, 70, 0, 71, 0, 204, 66, + 67, 68, 69, 70, 0, 71, 0, 205, 66, 67, + 68, 69, 70, 0, 71, 0, 207 }; static const yytype_int16 yycheck[] = { - 0, 5, 47, 4, 7, 8, 5, 40, 41, 42, - 43, 44, 5, 46, 40, 48, 3, 47, 18, 18, - 40, 0, 48, 47, 17, 18, 47, 18, 48, 30, - 30, 31, 33, 40, 7, 8, 29, 48, 49, 47, - 33, 48, 29, 47, 31, 32, 47, 40, 46, 48, - 49, 50, 51, 53, 41, 48, 49, 50, 51, 52, - 47, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 47, 0, 48, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 47, 3, 4, - 5, 6, 18, 47, 9, 95, 87, 88, 89, 90, - 91, 92, 93, 42, 43, 44, 32, 46, 34, 35, - 36, 37, 38, 39, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 47, 41, 47, 47, 8, - 48, 11, 47, 13, 14, 15, 16, 17, 18, 49, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 49, 49, 7, 8, 49, 49, 11, 12, 13, 14, - 15, 16, 17, 18, 40, 156, 40, 40, 48, -1, - 170, 164, 98, 6, 48, 48, 48, 48, 48, 172, - 173, 174, 175, -1, 177, 40, 41, 42, 43, 44, - -1, 46, -1, 48, -1, -1, -1, 190, 198, -1, - -1, 34, 35, 36, 37, 38, 39, -1, -1, -1, - -1, -1, 7, 8, 47, -1, 11, 12, 13, 14, - 15, 16, 17, 18, 8, -1, -1, 11, 12, 13, - 14, 15, 16, 17, 18, 10, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 40, 41, 42, 43, 44, - 176, 46, -1, -1, -1, -1, 40, 41, 42, 43, - 44, -1, 46, -1, 11, 40, 13, 14, 15, 16, - 17, 18, -1, 48, 11, 12, 13, 14, 15, 16, - 17, 18, 10, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 18, -1, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 40, 41, 42, 43, 44, -1, 46, - -1, 18, 40, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 48, 40, 41, 42, 43, 44, -1, 46, - -1, 48, 49, -1, 40, 41, 42, 43, 44, -1, - 46, -1, 48, 49, 40, 41, 42, 43, 44, -1, - 46, -1, -1, 49, 40, 41, 42, 43, 44, -1, - 46, -1, -1, 49, 40, 41, 42, 43, 44, -1, - 46, -1, 48, 40, 41, 42, 43, 44, -1, 46, - -1, 48, 40, 41, 42, 43, 44, -1, 46, -1, - 48, 40, 41, 42, 43, 44, -1, 46, -1, 48, - 40, 41, 42, 43, 44, -1, 46, -1, 48, 40, - 41, 42, 43, 44, -1, 46 + 0, 43, 51, 52, 5, 43, 5, 50, 0, 51, + 7, 8, 5, 51, 43, 44, 45, 46, 47, 3, + 49, 21, 21, 52, 43, 7, 8, 20, 21, 50, + 21, 49, 51, 33, 34, 43, 36, 37, 38, 32, + 45, 46, 47, 51, 49, 29, 39, 31, 32, 50, + 52, -1, 50, 46, 51, 54, 55, 56, 57, 59, + 44, 54, 55, 56, 57, 58, 50, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 70, 71, 0, + 50, 50, 82, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 50, 50, 50, 50, 50, 50, 4, + 21, 101, 93, 94, 95, 96, 97, 98, 99, 43, + 44, 45, 46, 47, 35, 49, 51, 51, 52, 40, + 41, 42, 43, 44, 45, 30, 50, 43, 33, 34, + 35, 36, 50, 7, 8, 51, 50, 11, 12, 13, + 14, 15, 16, 17, 18, 50, 52, 8, 52, 52, + 52, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 81, 11, 43, 13, 14, 15, 16, 17, 18, 43, + 44, 45, 46, 47, 165, 49, 43, 51, 43, 43, + 173, 51, 182, 104, 51, 51, 51, 51, 51, -1, + -1, 184, 185, 186, 187, -1, 189, 3, 4, 5, + 6, 51, -1, 9, -1, -1, -1, -1, -1, 202, + 210, -1, -1, 11, 6, 13, 14, 15, 16, 17, + 18, -1, -1, 29, 30, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, -1, 44, -1, + -1, -1, -1, -1, 50, 37, 38, 39, 40, 41, + 42, -1, -1, -1, -1, 7, 8, -1, 50, 11, + 12, 13, 14, 15, 16, 17, 18, 188, 8, -1, + -1, 11, 12, 13, 14, 15, 16, 17, 18, 10, + 11, 12, 13, 14, 15, 16, 17, 18, 19, -1, + -1, 43, 44, 45, 46, 47, -1, 49, -1, -1, + -1, -1, -1, 43, 44, 45, 46, 47, -1, 49, + -1, -1, 43, 43, 44, 45, 46, 47, -1, 49, + 51, 11, 12, 13, 14, 15, 16, 17, 18, 10, + 11, 12, 13, 14, 15, 16, 17, 18, 19, 18, + -1, 20, 21, 22, 23, 24, 25, 26, 27, 28, + -1, -1, -1, 43, 44, 45, 46, 47, -1, 49, + -1, 18, 43, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 51, 43, 44, 45, 46, 47, -1, 49, + -1, 51, 52, 43, 44, 45, 46, 47, -1, 49, + -1, -1, 52, 43, 44, 45, 46, 47, -1, 49, + -1, 51, 43, 44, 45, 46, 47, -1, 49, -1, + 51, 43, 44, 45, 46, 47, -1, 49, -1, 51, + 43, 44, 45, 46, 47, -1, 49, -1, 51, 43, + 44, 45, 46, 47, -1, 49, -1, 51, 43, 44, + 45, 46, 47, -1, 49, -1, 51 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -752,26 +794,27 @@ static const yytype_int16 yycheck[] = static const yytype_uint8 yystos[] = { 0, 3, 4, 5, 6, 9, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 41, 47, 51, - 52, 53, 54, 55, 56, 52, 53, 54, 55, 47, - 47, 47, 47, 47, 47, 47, 47, 47, 47, 47, - 47, 53, 52, 53, 54, 55, 56, 0, 7, 8, - 7, 8, 11, 12, 13, 14, 15, 16, 17, 18, - 40, 41, 42, 43, 44, 46, 18, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 10, 11, 12, 13, - 14, 15, 16, 17, 18, 19, 40, 11, 13, 14, - 15, 16, 17, 18, 53, 47, 55, 55, 47, 54, - 53, 54, 54, 54, 54, 54, 54, 53, 48, 48, - 48, 48, 48, 52, 53, 52, 53, 52, 53, 52, - 53, 53, 55, 53, 53, 53, 53, 53, 53, 53, - 53, 53, 53, 53, 53, 54, 54, 54, 54, 54, - 54, 54, 54, 54, 54, 55, 55, 55, 55, 55, - 55, 55, 55, 55, 55, 55, 47, 56, 56, 56, - 56, 56, 56, 56, 49, 55, 48, 48, 54, 48, - 49, 48, 49, 49, 49, 49, 49, 49, 56, 53, - 55, 53, 53, 53, 53, 54, 53, 48, 48, 48, - 49, 48, 48, 48, 48, 48, 53, 48, 49, 55, - 48 + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 44, 50, 54, 55, 56, 57, 58, 59, 55, 56, + 57, 58, 50, 50, 50, 50, 50, 50, 50, 50, + 50, 50, 50, 50, 50, 50, 50, 56, 55, 56, + 57, 58, 59, 0, 7, 8, 7, 8, 11, 12, + 13, 14, 15, 16, 17, 18, 43, 44, 45, 46, + 47, 49, 18, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 10, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 43, 11, 13, 14, 15, 16, 17, 18, + 56, 50, 58, 58, 50, 57, 58, 58, 58, 56, + 57, 57, 57, 57, 57, 57, 56, 51, 51, 51, + 51, 51, 55, 56, 55, 56, 55, 56, 55, 56, + 56, 58, 56, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 57, 57, 57, 57, 57, 57, + 57, 57, 57, 57, 58, 58, 58, 58, 58, 58, + 58, 58, 58, 58, 58, 50, 59, 59, 59, 59, + 59, 59, 59, 52, 58, 51, 51, 57, 51, 51, + 51, 51, 52, 51, 52, 52, 52, 52, 52, 52, + 59, 56, 58, 56, 56, 56, 56, 57, 56, 51, + 51, 51, 52, 51, 51, 51, 51, 51, 56, 51, + 52, 58, 51 }; #define yyerrok (yyerrstatus = 0) @@ -959,20 +1002,17 @@ yy_symbol_print (yyoutput, yytype, yyvaluep, p) #if (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) static void -yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop) +yy_stack_print (yytype_int16 *bottom, yytype_int16 *top) #else static void -yy_stack_print (yybottom, yytop) - yytype_int16 *yybottom; - yytype_int16 *yytop; +yy_stack_print (bottom, top) + yytype_int16 *bottom; + yytype_int16 *top; #endif { YYFPRINTF (stderr, "Stack now"); - for (; yybottom <= yytop; yybottom++) - { - int yybot = *yybottom; - YYFPRINTF (stderr, " %d", yybot); - } + for (; bottom <= top; ++bottom) + YYFPRINTF (stderr, " %d", *bottom); YYFPRINTF (stderr, "\n"); } @@ -1007,11 +1047,11 @@ yy_reduce_print (yyvsp, yyrule, p) /* The symbols being reduced. */ for (yyi = 0; yyi < yynrhs; yyi++) { - YYFPRINTF (stderr, " $%d = ", yyi + 1); + fprintf (stderr, " $%d = ", yyi + 1); yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi], &(yyvsp[(yyi + 1) - (yynrhs)]) , p); - YYFPRINTF (stderr, "\n"); + fprintf (stderr, "\n"); } } @@ -1293,8 +1333,10 @@ yydestruct (yymsg, yytype, yyvaluep, p) break; } } + /* Prevent warnings from -Wmissing-prototypes. */ + #ifdef YYPARSE_PARAM #if defined __STDC__ || defined __cplusplus int yyparse (void *YYPARSE_PARAM); @@ -1313,9 +1355,10 @@ int yyparse (); -/*-------------------------. -| yyparse or yypush_parse. | -`-------------------------*/ + +/*----------. +| yyparse. | +`----------*/ #ifdef YYPARSE_PARAM #if (defined __STDC__ || defined __C99__FUNC__ \ @@ -1339,46 +1382,22 @@ yyparse (p) #endif #endif { -/* The lookahead symbol. */ + /* The look-ahead symbol. */ int yychar; -/* The semantic value of the lookahead symbol. */ +/* The semantic value of the look-ahead symbol. */ YYSTYPE yylval; - /* Number of syntax errors so far. */ - int yynerrs; - - int yystate; - /* Number of tokens to shift before error messages enabled. */ - int yyerrstatus; - - /* The stacks and their tools: - `yyss': related to states. - `yyvs': related to semantic values. - - Refer to the stacks thru separate pointers, to allow yyoverflow - to reallocate them elsewhere. */ - - /* The state stack. */ - yytype_int16 yyssa[YYINITDEPTH]; - yytype_int16 *yyss; - yytype_int16 *yyssp; - - /* The semantic value stack. */ - YYSTYPE yyvsa[YYINITDEPTH]; - YYSTYPE *yyvs; - YYSTYPE *yyvsp; - - YYSIZE_T yystacksize; +/* Number of syntax errors so far. */ +int yynerrs; + int yystate; int yyn; int yyresult; - /* Lookahead token as an internal (translated) token number. */ - int yytoken; - /* The variables used to return semantic value and location from the - action routines. */ - YYSTYPE yyval; - + /* Number of tokens to shift before error messages enabled. */ + int yyerrstatus; + /* Look-ahead token as an internal (translated) token number. */ + int yytoken = 0; #if YYERROR_VERBOSE /* Buffer for error messages, and its allocated size. */ char yymsgbuf[128]; @@ -1386,28 +1405,51 @@ YYSTYPE yylval; YYSIZE_T yymsg_alloc = sizeof yymsgbuf; #endif + /* Three stacks and their tools: + `yyss': related to states, + `yyvs': related to semantic values, + `yyls': related to locations. + + Refer to the stacks thru separate pointers, to allow yyoverflow + to reallocate them elsewhere. */ + + /* The state stack. */ + yytype_int16 yyssa[YYINITDEPTH]; + yytype_int16 *yyss = yyssa; + yytype_int16 *yyssp; + + /* The semantic value stack. */ + YYSTYPE yyvsa[YYINITDEPTH]; + YYSTYPE *yyvs = yyvsa; + YYSTYPE *yyvsp; + + + #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) + YYSIZE_T yystacksize = YYINITDEPTH; + + /* The variables used to return semantic value and location from the + action routines. */ + YYSTYPE yyval; + + /* The number of symbols on the RHS of the reduced rule. Keep to zero when no symbol should be popped. */ int yylen = 0; - yytoken = 0; - yyss = yyssa; - yyvs = yyvsa; - yystacksize = YYINITDEPTH; - YYDPRINTF ((stderr, "Starting parse\n")); yystate = 0; yyerrstatus = 0; yynerrs = 0; - yychar = YYEMPTY; /* Cause a token to be read. */ + yychar = YYEMPTY; /* Cause a token to be read. */ /* Initialize stack pointers. Waste one element of value and location stack so that they stay on the same level as the state stack. The wasted elements are never initialized. */ + yyssp = yyss; yyvsp = yyvs; @@ -1437,6 +1479,7 @@ YYSTYPE yylval; YYSTYPE *yyvs1 = yyvs; yytype_int16 *yyss1 = yyss; + /* Each stack pointer address is followed by the size of the data in use in that stack, in bytes. This used to be a conditional around just the two extra args, but that might @@ -1444,6 +1487,7 @@ YYSTYPE yylval; yyoverflow (YY_("memory exhausted"), &yyss1, yysize * sizeof (*yyssp), &yyvs1, yysize * sizeof (*yyvsp), + &yystacksize); yyss = yyss1; @@ -1466,8 +1510,9 @@ YYSTYPE yylval; (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); if (! yyptr) goto yyexhaustedlab; - YYSTACK_RELOCATE (yyss_alloc, yyss); - YYSTACK_RELOCATE (yyvs_alloc, yyvs); + YYSTACK_RELOCATE (yyss); + YYSTACK_RELOCATE (yyvs); + # undef YYSTACK_RELOCATE if (yyss1 != yyssa) YYSTACK_FREE (yyss1); @@ -1478,6 +1523,7 @@ YYSTYPE yylval; yyssp = yyss + yysize - 1; yyvsp = yyvs + yysize - 1; + YYDPRINTF ((stderr, "Stack size increased to %lu\n", (unsigned long int) yystacksize)); @@ -1487,9 +1533,6 @@ YYSTYPE yylval; YYDPRINTF ((stderr, "Entering state %d\n", yystate)); - if (yystate == YYFINAL) - YYACCEPT; - goto yybackup; /*-----------. @@ -1498,16 +1541,16 @@ YYSTYPE yylval; yybackup: /* Do appropriate processing given the current state. Read a - lookahead token if we need one and don't already have one. */ + look-ahead token if we need one and don't already have one. */ - /* First try to decide what to do without reference to lookahead token. */ + /* First try to decide what to do without reference to look-ahead token. */ yyn = yypact[yystate]; if (yyn == YYPACT_NINF) goto yydefault; - /* Not known => get a lookahead token if don't already have one. */ + /* Not known => get a look-ahead token if don't already have one. */ - /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */ + /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */ if (yychar == YYEMPTY) { YYDPRINTF ((stderr, "Reading a token: ")); @@ -1539,16 +1582,20 @@ YYSTYPE yylval; goto yyreduce; } + if (yyn == YYFINAL) + YYACCEPT; + /* Count tokens shifted since error; after three, turn off error status. */ if (yyerrstatus) yyerrstatus--; - /* Shift the lookahead token. */ + /* Shift the look-ahead token. */ YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); - /* Discard the shifted token. */ - yychar = YYEMPTY; + /* Discard the shifted token unless it is eof. */ + if (yychar != YYEOF) + yychar = YYEMPTY; yystate = yyn; *++yyvsp = yylval; @@ -1588,9 +1635,7 @@ YYSTYPE yylval; switch (yyn) { case 3: - -/* Line 1455 of yacc.c */ -#line 66 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 67 "mapparser.y" { switch(p->type) { case(MS_PARSE_TYPE_BOOLEAN): @@ -1603,13 +1648,11 @@ YYSTYPE yylval; p->result.strval = strdup("false"); break; } - ;} + } break; case 4: - -/* Line 1455 of yacc.c */ -#line 79 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 80 "mapparser.y" { switch(p->type) { case(MS_PARSE_TYPE_BOOLEAN): @@ -1623,13 +1666,11 @@ YYSTYPE yylval; snprintf(p->result.strval, 64, "%g", (yyvsp[(1) - (1)].dblval)); break; } - ;} + } break; case 5: - -/* Line 1455 of yacc.c */ -#line 93 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 94 "mapparser.y" { switch(p->type) { case(MS_PARSE_TYPE_BOOLEAN): @@ -1642,13 +1683,11 @@ YYSTYPE yylval; p->result.strval = (yyvsp[(1) - (1)].strval); // strdup($1); break; } - ;} + } break; case 6: - -/* Line 1455 of yacc.c */ -#line 106 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 107 "mapparser.y" { switch(p->type) { case(MS_PARSE_TYPE_SHAPE): @@ -1656,13 +1695,11 @@ YYSTYPE yylval; p->result.shpval->scratch = MS_FALSE; break; } - ;} + } break; case 7: - -/* Line 1455 of yacc.c */ -#line 117 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 118 "mapparser.y" { if((yyvsp[(1) - (3)].intval) == MS_TRUE) (yyval.intval) = MS_TRUE; @@ -1670,13 +1707,11 @@ YYSTYPE yylval; (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 8: - -/* Line 1455 of yacc.c */ -#line 125 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 126 "mapparser.y" { if((yyvsp[(1) - (3)].intval) == MS_TRUE) { if((yyvsp[(3) - (3)].intval) == MS_TRUE) @@ -1685,13 +1720,11 @@ YYSTYPE yylval; (yyval.intval) = MS_FALSE; } else (yyval.intval) = MS_FALSE; - ;} + } break; case 9: - -/* Line 1455 of yacc.c */ -#line 134 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 135 "mapparser.y" { if((yyvsp[(1) - (3)].intval) == MS_TRUE) (yyval.intval) = MS_TRUE; @@ -1699,13 +1732,11 @@ YYSTYPE yylval; (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 10: - -/* Line 1455 of yacc.c */ -#line 142 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 143 "mapparser.y" { if((yyvsp[(1) - (3)].intval) == MS_TRUE) { if((yyvsp[(3) - (3)].dblval) != 0) @@ -1714,13 +1745,11 @@ YYSTYPE yylval; (yyval.intval) = MS_FALSE; } else (yyval.intval) = MS_FALSE; - ;} + } break; case 11: - -/* Line 1455 of yacc.c */ -#line 151 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 152 "mapparser.y" { if((yyvsp[(1) - (3)].dblval) != 0) (yyval.intval) = MS_TRUE; @@ -1728,13 +1757,11 @@ YYSTYPE yylval; (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 12: - -/* Line 1455 of yacc.c */ -#line 159 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 160 "mapparser.y" { if((yyvsp[(1) - (3)].dblval) != 0) { if((yyvsp[(3) - (3)].intval) == MS_TRUE) @@ -1743,13 +1770,11 @@ YYSTYPE yylval; (yyval.intval) = MS_FALSE; } else (yyval.intval) = MS_FALSE; - ;} + } break; case 13: - -/* Line 1455 of yacc.c */ -#line 168 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 169 "mapparser.y" { if((yyvsp[(1) - (3)].dblval) != 0) (yyval.intval) = MS_TRUE; @@ -1757,13 +1782,11 @@ YYSTYPE yylval; (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 14: - -/* Line 1455 of yacc.c */ -#line 176 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 177 "mapparser.y" { if((yyvsp[(1) - (3)].dblval) != 0) { if((yyvsp[(3) - (3)].dblval) != 0) @@ -1772,27 +1795,21 @@ YYSTYPE yylval; (yyval.intval) = MS_FALSE; } else (yyval.intval) = MS_FALSE; - ;} + } break; case 15: - -/* Line 1455 of yacc.c */ -#line 185 "/home/even/mapserver/git/mapserver/mapparser.y" - { (yyval.intval) = !(yyvsp[(2) - (2)].intval); ;} +#line 186 "mapparser.y" + { (yyval.intval) = !(yyvsp[(2) - (2)].intval); } break; case 16: - -/* Line 1455 of yacc.c */ -#line 186 "/home/even/mapserver/git/mapserver/mapparser.y" - { (yyval.intval) = !(yyvsp[(2) - (2)].dblval); ;} +#line 187 "mapparser.y" + { (yyval.intval) = !(yyvsp[(2) - (2)].dblval); } break; case 17: - -/* Line 1455 of yacc.c */ -#line 187 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 188 "mapparser.y" { ms_regex_t re; @@ -1807,13 +1824,11 @@ YYSTYPE yylval; ms_regfree(&re); free((yyvsp[(1) - (3)].strval)); free((yyvsp[(3) - (3)].strval)); - ;} + } break; case 18: - -/* Line 1455 of yacc.c */ -#line 202 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 203 "mapparser.y" { ms_regex_t re; @@ -1828,92 +1843,76 @@ YYSTYPE yylval; ms_regfree(&re); free((yyvsp[(1) - (3)].strval)); free((yyvsp[(3) - (3)].strval)); - ;} + } break; case 19: - -/* Line 1455 of yacc.c */ -#line 217 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 218 "mapparser.y" { if((yyvsp[(1) - (3)].dblval) == (yyvsp[(3) - (3)].dblval)) (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 20: - -/* Line 1455 of yacc.c */ -#line 223 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 224 "mapparser.y" { if((yyvsp[(1) - (3)].dblval) != (yyvsp[(3) - (3)].dblval)) (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 21: - -/* Line 1455 of yacc.c */ -#line 229 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 230 "mapparser.y" { if((yyvsp[(1) - (3)].dblval) > (yyvsp[(3) - (3)].dblval)) (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 22: - -/* Line 1455 of yacc.c */ -#line 235 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 236 "mapparser.y" { if((yyvsp[(1) - (3)].dblval) < (yyvsp[(3) - (3)].dblval)) (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 23: - -/* Line 1455 of yacc.c */ -#line 241 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 242 "mapparser.y" { if((yyvsp[(1) - (3)].dblval) >= (yyvsp[(3) - (3)].dblval)) (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 24: - -/* Line 1455 of yacc.c */ -#line 247 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 248 "mapparser.y" { if((yyvsp[(1) - (3)].dblval) <= (yyvsp[(3) - (3)].dblval)) (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 25: - -/* Line 1455 of yacc.c */ -#line 253 "/home/even/mapserver/git/mapserver/mapparser.y" - { (yyval.intval) = (yyvsp[(2) - (3)].intval); ;} +#line 254 "mapparser.y" + { (yyval.intval) = (yyvsp[(2) - (3)].intval); } break; case 26: - -/* Line 1455 of yacc.c */ -#line 254 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 255 "mapparser.y" { if(strcmp((yyvsp[(1) - (3)].strval), (yyvsp[(3) - (3)].strval)) == 0) (yyval.intval) = MS_TRUE; @@ -1921,13 +1920,11 @@ YYSTYPE yylval; (yyval.intval) = MS_FALSE; free((yyvsp[(1) - (3)].strval)); free((yyvsp[(3) - (3)].strval)); - ;} + } break; case 27: - -/* Line 1455 of yacc.c */ -#line 262 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 263 "mapparser.y" { if(strcmp((yyvsp[(1) - (3)].strval), (yyvsp[(3) - (3)].strval)) != 0) (yyval.intval) = MS_TRUE; @@ -1935,13 +1932,11 @@ YYSTYPE yylval; (yyval.intval) = MS_FALSE; free((yyvsp[(1) - (3)].strval)); free((yyvsp[(3) - (3)].strval)); - ;} + } break; case 28: - -/* Line 1455 of yacc.c */ -#line 270 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 271 "mapparser.y" { if(strcmp((yyvsp[(1) - (3)].strval), (yyvsp[(3) - (3)].strval)) > 0) (yyval.intval) = MS_TRUE; @@ -1950,13 +1945,11 @@ YYSTYPE yylval; /* printf("Not freeing: %s >= %s\n",$1, $3); */ free((yyvsp[(1) - (3)].strval)); free((yyvsp[(3) - (3)].strval)); - ;} + } break; case 29: - -/* Line 1455 of yacc.c */ -#line 279 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 280 "mapparser.y" { if(strcmp((yyvsp[(1) - (3)].strval), (yyvsp[(3) - (3)].strval)) < 0) (yyval.intval) = MS_TRUE; @@ -1964,13 +1957,11 @@ YYSTYPE yylval; (yyval.intval) = MS_FALSE; free((yyvsp[(1) - (3)].strval)); free((yyvsp[(3) - (3)].strval)); - ;} + } break; case 30: - -/* Line 1455 of yacc.c */ -#line 287 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 288 "mapparser.y" { if(strcmp((yyvsp[(1) - (3)].strval), (yyvsp[(3) - (3)].strval)) >= 0) (yyval.intval) = MS_TRUE; @@ -1978,13 +1969,11 @@ YYSTYPE yylval; (yyval.intval) = MS_FALSE; free((yyvsp[(1) - (3)].strval)); free((yyvsp[(3) - (3)].strval)); - ;} + } break; case 31: - -/* Line 1455 of yacc.c */ -#line 295 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 296 "mapparser.y" { if(strcmp((yyvsp[(1) - (3)].strval), (yyvsp[(3) - (3)].strval)) <= 0) (yyval.intval) = MS_TRUE; @@ -1992,85 +1981,71 @@ YYSTYPE yylval; (yyval.intval) = MS_FALSE; free((yyvsp[(1) - (3)].strval)); free((yyvsp[(3) - (3)].strval)); - ;} + } break; case 32: - -/* Line 1455 of yacc.c */ -#line 303 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 304 "mapparser.y" { if(msTimeCompare(&((yyvsp[(1) - (3)].tmval)), &((yyvsp[(3) - (3)].tmval))) == 0) (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 33: - -/* Line 1455 of yacc.c */ -#line 309 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 310 "mapparser.y" { if(msTimeCompare(&((yyvsp[(1) - (3)].tmval)), &((yyvsp[(3) - (3)].tmval))) != 0) (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 34: - -/* Line 1455 of yacc.c */ -#line 315 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 316 "mapparser.y" { if(msTimeCompare(&((yyvsp[(1) - (3)].tmval)), &((yyvsp[(3) - (3)].tmval))) > 0) (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 35: - -/* Line 1455 of yacc.c */ -#line 321 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 322 "mapparser.y" { if(msTimeCompare(&((yyvsp[(1) - (3)].tmval)), &((yyvsp[(3) - (3)].tmval))) < 0) (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 36: - -/* Line 1455 of yacc.c */ -#line 327 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 328 "mapparser.y" { if(msTimeCompare(&((yyvsp[(1) - (3)].tmval)), &((yyvsp[(3) - (3)].tmval))) >= 0) (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 37: - -/* Line 1455 of yacc.c */ -#line 333 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 334 "mapparser.y" { if(msTimeCompare(&((yyvsp[(1) - (3)].tmval)), &((yyvsp[(3) - (3)].tmval))) <= 0) (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 38: - -/* Line 1455 of yacc.c */ -#line 339 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 340 "mapparser.y" { char *delim,*bufferp; @@ -2091,13 +2066,11 @@ YYSTYPE yylval; (yyval.intval) = MS_TRUE; free((yyvsp[(1) - (3)].strval)); free((yyvsp[(3) - (3)].strval)); - ;} + } break; case 39: - -/* Line 1455 of yacc.c */ -#line 360 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 361 "mapparser.y" { char *delim,*bufferp; @@ -2118,25 +2091,21 @@ YYSTYPE yylval; (yyval.intval) = MS_TRUE; free((yyvsp[(3) - (3)].strval)); - ;} + } break; case 40: - -/* Line 1455 of yacc.c */ -#line 381 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 382 "mapparser.y" { if((yyvsp[(1) - (3)].dblval) == (yyvsp[(3) - (3)].dblval)) (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 41: - -/* Line 1455 of yacc.c */ -#line 387 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 388 "mapparser.y" { if(strcasecmp((yyvsp[(1) - (3)].strval), (yyvsp[(3) - (3)].strval)) == 0) (yyval.intval) = MS_TRUE; @@ -2144,25 +2113,21 @@ YYSTYPE yylval; (yyval.intval) = MS_FALSE; free((yyvsp[(1) - (3)].strval)); free((yyvsp[(3) - (3)].strval)); - ;} + } break; case 42: - -/* Line 1455 of yacc.c */ -#line 395 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 396 "mapparser.y" { if(msTimeCompare(&((yyvsp[(1) - (3)].tmval)), &((yyvsp[(3) - (3)].tmval))) == 0) (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 43: - -/* Line 1455 of yacc.c */ -#line 402 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 403 "mapparser.y" { int rval; rval = msGEOSEquals((yyvsp[(1) - (3)].shpval), (yyvsp[(3) - (3)].shpval)); @@ -2173,13 +2138,11 @@ YYSTYPE yylval; return(-1); } else (yyval.intval) = rval; - ;} + } break; case 44: - -/* Line 1455 of yacc.c */ -#line 413 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 414 "mapparser.y" { int rval; rval = msGEOSIntersects((yyvsp[(1) - (3)].shpval), (yyvsp[(3) - (3)].shpval)); @@ -2190,13 +2153,11 @@ YYSTYPE yylval; return(-1); } else (yyval.intval) = rval; - ;} + } break; case 45: - -/* Line 1455 of yacc.c */ -#line 424 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 425 "mapparser.y" { int rval; rval = msGEOSDisjoint((yyvsp[(1) - (3)].shpval), (yyvsp[(3) - (3)].shpval)); @@ -2207,13 +2168,11 @@ YYSTYPE yylval; return(-1); } else (yyval.intval) = rval; - ;} + } break; case 46: - -/* Line 1455 of yacc.c */ -#line 435 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 436 "mapparser.y" { int rval; rval = msGEOSTouches((yyvsp[(1) - (3)].shpval), (yyvsp[(3) - (3)].shpval)); @@ -2224,13 +2183,11 @@ YYSTYPE yylval; return(-1); } else (yyval.intval) = rval; - ;} + } break; case 47: - -/* Line 1455 of yacc.c */ -#line 446 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 447 "mapparser.y" { int rval; rval = msGEOSOverlaps((yyvsp[(1) - (3)].shpval), (yyvsp[(3) - (3)].shpval)); @@ -2241,13 +2198,11 @@ YYSTYPE yylval; return(-1); } else (yyval.intval) = rval; - ;} + } break; case 48: - -/* Line 1455 of yacc.c */ -#line 457 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 458 "mapparser.y" { int rval; rval = msGEOSCrosses((yyvsp[(1) - (3)].shpval), (yyvsp[(3) - (3)].shpval)); @@ -2258,13 +2213,11 @@ YYSTYPE yylval; return(-1); } else (yyval.intval) = rval; - ;} + } break; case 49: - -/* Line 1455 of yacc.c */ -#line 468 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 469 "mapparser.y" { int rval; rval = msGEOSWithin((yyvsp[(1) - (3)].shpval), (yyvsp[(3) - (3)].shpval)); @@ -2275,13 +2228,11 @@ YYSTYPE yylval; return(-1); } else (yyval.intval) = rval; - ;} + } break; case 50: - -/* Line 1455 of yacc.c */ -#line 479 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 480 "mapparser.y" { int rval; rval = msGEOSContains((yyvsp[(1) - (3)].shpval), (yyvsp[(3) - (3)].shpval)); @@ -2292,13 +2243,11 @@ YYSTYPE yylval; return(-1); } else (yyval.intval) = rval; - ;} + } break; case 51: - -/* Line 1455 of yacc.c */ -#line 490 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 491 "mapparser.y" { double d; d = msGEOSDistance((yyvsp[(1) - (3)].shpval), (yyvsp[(3) - (3)].shpval)); @@ -2308,13 +2257,11 @@ YYSTYPE yylval; (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 52: - -/* Line 1455 of yacc.c */ -#line 500 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 501 "mapparser.y" { double d; d = msGEOSDistance((yyvsp[(1) - (3)].shpval), (yyvsp[(3) - (3)].shpval)); @@ -2324,82 +2271,62 @@ YYSTYPE yylval; (yyval.intval) = MS_TRUE; else (yyval.intval) = MS_FALSE; - ;} + } break; case 54: - -/* Line 1455 of yacc.c */ -#line 513 "/home/even/mapserver/git/mapserver/mapparser.y" - { (yyval.dblval) = (yyvsp[(2) - (3)].dblval); ;} +#line 514 "mapparser.y" + { (yyval.dblval) = (yyvsp[(2) - (3)].dblval); } break; case 55: - -/* Line 1455 of yacc.c */ -#line 514 "/home/even/mapserver/git/mapserver/mapparser.y" - { (yyval.dblval) = (yyvsp[(1) - (3)].dblval) + (yyvsp[(3) - (3)].dblval); ;} +#line 515 "mapparser.y" + { (yyval.dblval) = (yyvsp[(1) - (3)].dblval) + (yyvsp[(3) - (3)].dblval); } break; case 56: - -/* Line 1455 of yacc.c */ -#line 515 "/home/even/mapserver/git/mapserver/mapparser.y" - { (yyval.dblval) = (yyvsp[(1) - (3)].dblval) - (yyvsp[(3) - (3)].dblval); ;} +#line 516 "mapparser.y" + { (yyval.dblval) = (yyvsp[(1) - (3)].dblval) - (yyvsp[(3) - (3)].dblval); } break; case 57: - -/* Line 1455 of yacc.c */ -#line 516 "/home/even/mapserver/git/mapserver/mapparser.y" - { (yyval.dblval) = (yyvsp[(1) - (3)].dblval) * (yyvsp[(3) - (3)].dblval); ;} +#line 517 "mapparser.y" + { (yyval.dblval) = (yyvsp[(1) - (3)].dblval) * (yyvsp[(3) - (3)].dblval); } break; case 58: - -/* Line 1455 of yacc.c */ -#line 517 "/home/even/mapserver/git/mapserver/mapparser.y" - { (yyval.dblval) = (int)(yyvsp[(1) - (3)].dblval) % (int)(yyvsp[(3) - (3)].dblval); ;} +#line 518 "mapparser.y" + { (yyval.dblval) = (int)(yyvsp[(1) - (3)].dblval) % (int)(yyvsp[(3) - (3)].dblval); } break; case 59: - -/* Line 1455 of yacc.c */ -#line 518 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 519 "mapparser.y" { if((yyvsp[(3) - (3)].dblval) == 0.0) { yyerror(p, "Division by zero."); return(-1); } else (yyval.dblval) = (yyvsp[(1) - (3)].dblval) / (yyvsp[(3) - (3)].dblval); - ;} + } break; case 60: - -/* Line 1455 of yacc.c */ -#line 525 "/home/even/mapserver/git/mapserver/mapparser.y" - { (yyval.dblval) = (yyvsp[(2) - (2)].dblval); ;} +#line 526 "mapparser.y" + { (yyval.dblval) = (yyvsp[(2) - (2)].dblval); } break; case 61: - -/* Line 1455 of yacc.c */ -#line 526 "/home/even/mapserver/git/mapserver/mapparser.y" - { (yyval.dblval) = pow((yyvsp[(1) - (3)].dblval), (yyvsp[(3) - (3)].dblval)); ;} +#line 527 "mapparser.y" + { (yyval.dblval) = pow((yyvsp[(1) - (3)].dblval), (yyvsp[(3) - (3)].dblval)); } break; case 62: - -/* Line 1455 of yacc.c */ -#line 527 "/home/even/mapserver/git/mapserver/mapparser.y" - { (yyval.dblval) = strlen((yyvsp[(3) - (4)].strval)); ;} +#line 528 "mapparser.y" + { (yyval.dblval) = strlen((yyvsp[(3) - (4)].strval)); } break; case 63: - -/* Line 1455 of yacc.c */ -#line 528 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 529 "mapparser.y" { if((yyvsp[(3) - (4)].shpval)->type != MS_SHAPE_POLYGON) { yyerror(p, "Area can only be computed for polygon shapes."); @@ -2407,27 +2334,21 @@ YYSTYPE yylval; } (yyval.dblval) = msGetPolygonArea((yyvsp[(3) - (4)].shpval)); if((yyvsp[(3) - (4)].shpval)->scratch == MS_TRUE) msFreeShape((yyvsp[(3) - (4)].shpval)); - ;} + } break; case 64: - -/* Line 1455 of yacc.c */ -#line 536 "/home/even/mapserver/git/mapserver/mapparser.y" - { (yyval.dblval) = (MS_NINT((yyvsp[(3) - (6)].dblval)/(yyvsp[(5) - (6)].dblval)))*(yyvsp[(5) - (6)].dblval); ;} +#line 537 "mapparser.y" + { (yyval.dblval) = (MS_NINT((yyvsp[(3) - (6)].dblval)/(yyvsp[(5) - (6)].dblval)))*(yyvsp[(5) - (6)].dblval); } break; case 66: - -/* Line 1455 of yacc.c */ -#line 540 "/home/even/mapserver/git/mapserver/mapparser.y" - { (yyval.shpval) = (yyvsp[(2) - (3)].shpval); ;} +#line 541 "mapparser.y" + { (yyval.shpval) = (yyvsp[(2) - (3)].shpval); } break; case 67: - -/* Line 1455 of yacc.c */ -#line 541 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 542 "mapparser.y" { shapeObj *s; s = msGEOSBuffer((yyvsp[(3) - (6)].shpval), (yyvsp[(5) - (6)].dblval)); @@ -2437,13 +2358,11 @@ YYSTYPE yylval; } s->scratch = MS_TRUE; (yyval.shpval) = s; - ;} + } break; case 68: - -/* Line 1455 of yacc.c */ -#line 551 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 552 "mapparser.y" { shapeObj *s; s = msGEOSDifference((yyvsp[(3) - (6)].shpval), (yyvsp[(5) - (6)].shpval)); @@ -2453,13 +2372,11 @@ YYSTYPE yylval; } s->scratch = MS_TRUE; (yyval.shpval) = s; - ;} + } break; case 69: - -/* Line 1455 of yacc.c */ -#line 561 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 562 "mapparser.y" { shapeObj *s; s = msGEOSSimplify((yyvsp[(3) - (6)].shpval), (yyvsp[(5) - (6)].dblval)); @@ -2469,13 +2386,11 @@ YYSTYPE yylval; } s->scratch = MS_TRUE; (yyval.shpval) = s; - ;} + } break; case 70: - -/* Line 1455 of yacc.c */ -#line 571 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 572 "mapparser.y" { shapeObj *s; s = msGEOSTopologyPreservingSimplify((yyvsp[(3) - (6)].shpval), (yyvsp[(5) - (6)].dblval)); @@ -2485,13 +2400,11 @@ YYSTYPE yylval; } s->scratch = MS_TRUE; (yyval.shpval) = s; - ;} + } break; case 71: - -/* Line 1455 of yacc.c */ -#line 581 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 582 "mapparser.y" { shapeObj *s; s = msGeneralize((yyvsp[(3) - (6)].shpval), (yyvsp[(5) - (6)].dblval)); @@ -2501,13 +2414,11 @@ YYSTYPE yylval; } s->scratch = MS_TRUE; (yyval.shpval) = s; - ;} + } break; case 72: - -/* Line 1455 of yacc.c */ -#line 591 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 592 "mapparser.y" { shapeObj *s; s = msSmoothShapeSIA((yyvsp[(3) - (4)].shpval), 3, 1, NULL); @@ -2517,13 +2428,11 @@ YYSTYPE yylval; } s->scratch = MS_TRUE; (yyval.shpval) = s; - ;} + } break; case 73: - -/* Line 1455 of yacc.c */ -#line 601 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 602 "mapparser.y" { shapeObj *s; s = msSmoothShapeSIA((yyvsp[(3) - (6)].shpval), (yyvsp[(5) - (6)].dblval), 1, NULL); @@ -2533,13 +2442,11 @@ YYSTYPE yylval; } s->scratch = MS_TRUE; (yyval.shpval) = s; - ;} + } break; case 74: - -/* Line 1455 of yacc.c */ -#line 611 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 612 "mapparser.y" { shapeObj *s; s = msSmoothShapeSIA((yyvsp[(3) - (8)].shpval), (yyvsp[(5) - (8)].dblval), (yyvsp[(7) - (8)].dblval), NULL); @@ -2549,13 +2456,11 @@ YYSTYPE yylval; } s->scratch = MS_TRUE; (yyval.shpval) = s; - ;} + } break; case 75: - -/* Line 1455 of yacc.c */ -#line 621 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 622 "mapparser.y" { shapeObj *s; s = msSmoothShapeSIA((yyvsp[(3) - (10)].shpval), (yyvsp[(5) - (10)].dblval), (yyvsp[(7) - (10)].dblval), (yyvsp[(9) - (10)].strval)); @@ -2566,57 +2471,70 @@ YYSTYPE yylval; } s->scratch = MS_TRUE; (yyval.shpval) = s; - ;} + } break; case 77: - -/* Line 1455 of yacc.c */ -#line 635 "/home/even/mapserver/git/mapserver/mapparser.y" - { (yyval.strval) = (yyvsp[(2) - (3)].strval); ;} +#line 636 "mapparser.y" + { (yyval.strval) = (yyvsp[(2) - (3)].strval); } break; case 78: - -/* Line 1455 of yacc.c */ -#line 636 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 637 "mapparser.y" { (yyval.strval) = (char *)malloc(strlen((yyvsp[(1) - (3)].strval)) + strlen((yyvsp[(3) - (3)].strval)) + 1); sprintf((yyval.strval), "%s%s", (yyvsp[(1) - (3)].strval), (yyvsp[(3) - (3)].strval)); free((yyvsp[(1) - (3)].strval)); free((yyvsp[(3) - (3)].strval)); - ;} + } break; case 79: - -/* Line 1455 of yacc.c */ -#line 640 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 641 "mapparser.y" { (yyval.strval) = (char *) malloc(strlen((yyvsp[(5) - (6)].strval)) + 64); /* Plenty big? Should use snprintf below... */ sprintf((yyval.strval), (yyvsp[(5) - (6)].strval), (yyvsp[(3) - (6)].dblval)); - ;} + } break; case 80: - -/* Line 1455 of yacc.c */ -#line 644 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 645 "mapparser.y" { (yyvsp[(3) - (4)].strval) = msCommifyString((yyvsp[(3) - (4)].strval)); (yyval.strval) = (yyvsp[(3) - (4)].strval); - ;} + } + break; + + case 81: +#line 649 "mapparser.y" + { + msStringToUpper((yyvsp[(3) - (4)].strval)); + (yyval.strval) = (yyvsp[(3) - (4)].strval); + } break; case 82: +#line 653 "mapparser.y" + { + msStringToLower((yyvsp[(3) - (4)].strval)); + (yyval.strval) = (yyvsp[(3) - (4)].strval); + } + break; -/* Line 1455 of yacc.c */ -#line 651 "/home/even/mapserver/git/mapserver/mapparser.y" - { (yyval.tmval) = (yyvsp[(2) - (3)].tmval); ;} + case 83: +#line 657 "mapparser.y" + { + msStringInitCap((yyvsp[(3) - (4)].strval)); + (yyval.strval) = (yyvsp[(3) - (4)].strval); + } break; + case 85: +#line 664 "mapparser.y" + { (yyval.tmval) = (yyvsp[(2) - (3)].tmval); } + break; -/* Line 1455 of yacc.c */ -#line 2620 "/home/even/mapserver/git/mapserver/mapparser.c" +/* Line 1267 of yacc.c. */ +#line 2538 "mapparser.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -2627,6 +2545,7 @@ YYSTYPE yylval; *++yyvsp = yyval; + /* Now `shift' the result of the reduction. Determine what state that goes to, based on the state we popped back to and the rule number reduced by. */ @@ -2691,7 +2610,7 @@ YYSTYPE yylval; if (yyerrstatus == 3) { - /* If just tried and failed to reuse lookahead token after an + /* If just tried and failed to reuse look-ahead token after an error, discard it. */ if (yychar <= YYEOF) @@ -2708,7 +2627,7 @@ YYSTYPE yylval; } } - /* Else will try to reuse lookahead token after shifting the error + /* Else will try to reuse look-ahead token after shifting the error token. */ goto yyerrlab1; @@ -2765,6 +2684,9 @@ YYSTYPE yylval; YY_STACK_PRINT (yyss, yyssp); } + if (yyn == YYFINAL) + YYACCEPT; + *++yyvsp = yylval; @@ -2789,7 +2711,7 @@ YYSTYPE yylval; yyresult = 1; goto yyreturn; -#if !defined(yyoverflow) || YYERROR_VERBOSE +#ifndef yyoverflow /*-------------------------------------------------. | yyexhaustedlab -- memory exhaustion comes here. | `-------------------------------------------------*/ @@ -2800,7 +2722,7 @@ YYSTYPE yylval; #endif yyreturn: - if (yychar != YYEMPTY) + if (yychar != YYEOF && yychar != YYEMPTY) yydestruct ("Cleanup: discarding lookahead", yytoken, &yylval, p); /* Do not reclaim the symbols of the rule which action triggered @@ -2826,9 +2748,7 @@ YYSTYPE yylval; } - -/* Line 1675 of yacc.c */ -#line 654 "/home/even/mapserver/git/mapserver/mapparser.y" +#line 667 "mapparser.y" /* @@ -2923,6 +2843,9 @@ int yylex(YYSTYPE *lvalp, parseObj *p) case MS_TOKEN_FUNCTION_LENGTH: token = LENGTH; break; case MS_TOKEN_FUNCTION_TOSTRING: token = TOSTRING; break; case MS_TOKEN_FUNCTION_COMMIFY: token = COMMIFY; break; + case MS_TOKEN_FUNCTION_UPPER: token = UPPER; break; + case MS_TOKEN_FUNCTION_LOWER: token = LOWER; break; + case MS_TOKEN_FUNCTION_INITCAP: token = INITCAP; break; case MS_TOKEN_FUNCTION_ROUND: token = ROUND; break; case MS_TOKEN_FUNCTION_BUFFER: token = YYBUFFER; break; diff --git a/mapparser.h b/mapparser.h index 6dcc7705b2..365db5ee60 100644 --- a/mapparser.h +++ b/mapparser.h @@ -1,23 +1,24 @@ - -/* A Bison parser, made by GNU Bison 2.4.1. */ +/* A Bison parser, made by GNU Bison 2.3. */ /* Skeleton interface for Bison's Yacc-like parsers in C - - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify + + This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - + the Free Software Foundation; either version 2, or (at your option) + any later version. + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License - along with this program. If not, see . */ + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. */ /* As a special exception, you may create a larger work that contains part or all of the Bison parser skeleton and distribute that work @@ -28,11 +29,10 @@ special exception, which will cause the skeleton and the resulting Bison output files to be licensed under the GNU General Public License without this special exception. - + This special exception was added by the Free Software Foundation in version 2.2 of Bison. */ - /* Tokens. */ #ifndef YYTOKENTYPE # define YYTOKENTYPE @@ -69,42 +69,82 @@ COMMIFY = 285, LENGTH = 286, AREA = 287, - TOSTRING = 288, - SMOOTHSIA = 289, - GENERALIZE = 290, - SIMPLIFYPT = 291, - SIMPLIFY = 292, - DIFFERENCE = 293, - YYBUFFER = 294, - NEG = 295 + INITCAP = 288, + LOWER = 289, + UPPER = 290, + TOSTRING = 291, + SMOOTHSIA = 292, + GENERALIZE = 293, + SIMPLIFYPT = 294, + SIMPLIFY = 295, + DIFFERENCE = 296, + YYBUFFER = 297, + NEG = 298 }; #endif +/* Tokens. */ +#define NUMBER 258 +#define STRING 259 +#define TIME 260 +#define SHAPE 261 +#define OR 262 +#define AND 263 +#define NOT 264 +#define IRE 265 +#define IEQ 266 +#define IN 267 +#define GE 268 +#define LE 269 +#define GT 270 +#define LT 271 +#define NE 272 +#define EQ 273 +#define RE 274 +#define DWITHIN 275 +#define BEYOND 276 +#define CONTAINS 277 +#define WITHIN 278 +#define CROSSES 279 +#define OVERLAPS 280 +#define TOUCHES 281 +#define DISJOINT 282 +#define INTERSECTS 283 +#define ROUND 284 +#define COMMIFY 285 +#define LENGTH 286 +#define AREA 287 +#define INITCAP 288 +#define LOWER 289 +#define UPPER 290 +#define TOSTRING 291 +#define SMOOTHSIA 292 +#define GENERALIZE 293 +#define SIMPLIFYPT 294 +#define SIMPLIFY 295 +#define DIFFERENCE 296 +#define YYBUFFER 297 +#define NEG 298 + #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE +#line 30 "mapparser.y" { - -/* Line 1676 of yacc.c */ -#line 30 "/home/even/mapserver/git/mapserver/mapparser.y" - double dblval; int intval; char *strval; struct tm tmval; shapeObj *shpval; - - - -/* Line 1676 of yacc.c */ -#line 102 "/home/even/mapserver/git/mapserver/mapparser.h" -} YYSTYPE; -# define YYSTYPE_IS_TRIVIAL 1 +} +/* Line 1489 of yacc.c. */ +#line 143 "mapparser.h" + YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 +# define YYSTYPE_IS_TRIVIAL 1 #endif - diff --git a/mapparser.y b/mapparser.y index ea9b5f062a..62b433ac7b 100644 --- a/mapparser.y +++ b/mapparser.y @@ -45,6 +45,7 @@ int yyerror(parseObj *, const char *); %left RE EQ NE LT GT LE GE IN IEQ IRE %left INTERSECTS DISJOINT TOUCHES OVERLAPS CROSSES WITHIN CONTAINS BEYOND DWITHIN %left AREA LENGTH COMMIFY ROUND +%left UPPER LOWER INITCAP %left TOSTRING %left YYBUFFER DIFFERENCE SIMPLIFY SIMPLIFYPT GENERALIZE SMOOTHSIA %left '+' '-' @@ -645,6 +646,18 @@ string_exp: STRING $3 = msCommifyString($3); $$ = $3; } + | UPPER '(' string_exp ')' { + msStringToUpper($3); + $$ = $3; + } + | LOWER '(' string_exp ')' { + msStringToLower($3); + $$ = $3; + } + | INITCAP '(' string_exp ')' { + msStringInitCap($3); + $$ = $3; + } ; time_exp: TIME @@ -745,6 +758,9 @@ int yylex(YYSTYPE *lvalp, parseObj *p) case MS_TOKEN_FUNCTION_LENGTH: token = LENGTH; break; case MS_TOKEN_FUNCTION_TOSTRING: token = TOSTRING; break; case MS_TOKEN_FUNCTION_COMMIFY: token = COMMIFY; break; + case MS_TOKEN_FUNCTION_UPPER: token = UPPER; break; + case MS_TOKEN_FUNCTION_LOWER: token = LOWER; break; + case MS_TOKEN_FUNCTION_INITCAP: token = INITCAP; break; case MS_TOKEN_FUNCTION_ROUND: token = ROUND; break; case MS_TOKEN_FUNCTION_BUFFER: token = YYBUFFER; break; diff --git a/mapserver.h b/mapserver.h index 9aa95bd9be..ac97257e88 100644 --- a/mapserver.h +++ b/mapserver.h @@ -657,7 +657,8 @@ extern "C" { }; enum MS_TOKEN_FUNCTION_ENUM { MS_TOKEN_FUNCTION_LENGTH=340, MS_TOKEN_FUNCTION_TOSTRING, MS_TOKEN_FUNCTION_COMMIFY, MS_TOKEN_FUNCTION_AREA, MS_TOKEN_FUNCTION_ROUND, MS_TOKEN_FUNCTION_FROMTEXT, - MS_TOKEN_FUNCTION_BUFFER, MS_TOKEN_FUNCTION_DIFFERENCE, MS_TOKEN_FUNCTION_SIMPLIFY, MS_TOKEN_FUNCTION_SIMPLIFYPT, MS_TOKEN_FUNCTION_GENERALIZE, MS_TOKEN_FUNCTION_SMOOTHSIA + MS_TOKEN_FUNCTION_BUFFER, MS_TOKEN_FUNCTION_DIFFERENCE, MS_TOKEN_FUNCTION_SIMPLIFY, MS_TOKEN_FUNCTION_SIMPLIFYPT, MS_TOKEN_FUNCTION_GENERALIZE, MS_TOKEN_FUNCTION_SMOOTHSIA, + MS_TOKEN_FUNCTION_UPPER, MS_TOKEN_FUNCTION_LOWER, MS_TOKEN_FUNCTION_INITCAP }; enum MS_TOKEN_BINDING_ENUM { MS_TOKEN_BINDING_DOUBLE=360, MS_TOKEN_BINDING_INTEGER, MS_TOKEN_BINDING_STRING, MS_TOKEN_BINDING_TIME, MS_TOKEN_BINDING_SHAPE, MS_TOKEN_BINDING_MAP_CELLSIZE, MS_TOKEN_BINDING_DATA_CELLSIZE }; enum MS_PARSE_TYPE_ENUM { MS_PARSE_TYPE_BOOLEAN, MS_PARSE_TYPE_STRING, MS_PARSE_TYPE_SHAPE }; diff --git a/mapstring.c b/mapstring.c index 00e4b47ea7..f07d96ac31 100644 --- a/mapstring.c +++ b/mapstring.c @@ -414,6 +414,25 @@ void msStringToLower(char *string) } } +void msStringInitCap(char *string) +{ + int i; + int start = 1; + if (string != NULL) { + for (i = 0; i < (int)strlen(string); i++) { + if (string[i] == ' ') + start = 1; + else if (start) { + string[i] = toupper(string[i]); + start = 0; + } + else { + string[i] = tolower(string[i]); + } + } + } +} + char *msStringChop(char *string) { int n;