1 2 #line 2 "<stdout>" 3 4 #define YY_INT_ALIGNED short int 5 6 /* A lexical scanner generated by flex */ 7 8 #define FLEX_SCANNER 9 #define YY_FLEX_MAJOR_VERSION 2 10 #define YY_FLEX_MINOR_VERSION 6 11 #define YY_FLEX_SUBMINOR_VERSION 4 12 #if YY_FLEX_SUBMINOR_VERSION > 0 13 #define FLEX_BETA 14 #endif 15 16 /* First, we deal with platform-specific or compiler-specific issues. */ 17 18 /* begin standard C headers. */ 19 #include <stdio.h> 20 #include <string.h> 21 #include <errno.h> 22 #include <stdlib.h> 23 24 /* end standard C headers. */ 25 26 /* flex integer type definitions */ 27 28 #ifndef FLEXINT_H 29 #define FLEXINT_H 30 31 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */ 32 33 #if defined(__FreeBSD__) || \ 34 (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) 35 36 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, 37 * if you want the limit (max/min) macros for int types. 38 */ 39 #ifndef __STDC_LIMIT_MACROS 40 #define __STDC_LIMIT_MACROS 1 41 #endif 42 43 #include <inttypes.h> 44 typedef int8_t flex_int8_t; 45 typedef uint8_t flex_uint8_t; 46 typedef int16_t flex_int16_t; 47 typedef uint16_t flex_uint16_t; 48 typedef int32_t flex_int32_t; 49 typedef uint32_t flex_uint32_t; 50 #else 51 typedef signed char flex_int8_t; 52 typedef short int flex_int16_t; 53 typedef int flex_int32_t; 54 typedef unsigned char flex_uint8_t; 55 typedef unsigned short int flex_uint16_t; 56 typedef unsigned int flex_uint32_t; 57 58 /* Limits of integral types. */ 59 #ifndef INT8_MIN 60 #define INT8_MIN (-128) 61 #endif 62 #ifndef INT16_MIN 63 #define INT16_MIN (-32767-1) 64 #endif 65 #ifndef INT32_MIN 66 #define INT32_MIN (-2147483647-1) 67 #endif 68 #ifndef INT8_MAX 69 #define INT8_MAX (127) 70 #endif 71 #ifndef INT16_MAX 72 #define INT16_MAX (32767) 73 #endif 74 #ifndef INT32_MAX 75 #define INT32_MAX (2147483647) 76 #endif 77 #ifndef UINT8_MAX 78 #define UINT8_MAX (255U) 79 #endif 80 #ifndef UINT16_MAX 81 #define UINT16_MAX (65535U) 82 #endif 83 #ifndef UINT32_MAX 84 #define UINT32_MAX (4294967295U) 85 #endif 86 87 #ifndef SIZE_MAX 88 #define SIZE_MAX (~(size_t)0) 89 #endif 90 91 #endif /* ! C99 */ 92 93 #endif /* ! FLEXINT_H */ 94 95 /* begin standard C++ headers. */ 96 97 /* TODO: this is always defined, so inline it */ 98 #define yyconst const 99 100 #if defined(__GNUC__) && __GNUC__ >= 3 101 #define yynoreturn __attribute__((__noreturn__)) 102 #else 103 #define yynoreturn 104 #endif 105 106 /* Returned upon end-of-file. */ 107 #define YY_NULL 0 108 109 /* Promotes a possibly negative, possibly signed char to an 110 * integer in range [0..255] for use as an array index. 111 */ 112 #define YY_SC_TO_UI(c) ((YY_CHAR) (c)) 113 114 /* Enter a start condition. This macro really ought to take a parameter, 115 * but we do it the disgusting crufty way forced on us by the ()-less 116 * definition of BEGIN. 117 */ 118 #define BEGIN (yy_start) = 1 + 2 * 119 /* Translate the current start state into a value that can be later handed 120 * to BEGIN to return to the state. The YYSTATE alias is for lex 121 * compatibility. 122 */ 123 #define YY_START (((yy_start) - 1) / 2) 124 #define YYSTATE YY_START 125 /* Action number for EOF rule of a given start state. */ 126 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) 127 /* Special action meaning "start processing a new file". */ 128 #define YY_NEW_FILE yyrestart( yyin ) 129 #define YY_END_OF_BUFFER_CHAR 0 130 131 /* Size of default input buffer. */ 132 #ifndef YY_BUF_SIZE 133 #ifdef __ia64__ 134 /* On IA-64, the buffer size is 16k, not 8k. 135 * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case. 136 * Ditto for the __ia64__ case accordingly. 137 */ 138 #define YY_BUF_SIZE 32768 139 #else 140 #define YY_BUF_SIZE 16384 141 #endif /* __ia64__ */ 142 #endif 143 144 /* The state buf must be large enough to hold one state per character in the main buffer. 145 */ 146 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) 147 148 #ifndef YY_TYPEDEF_YY_BUFFER_STATE 149 #define YY_TYPEDEF_YY_BUFFER_STATE 150 typedef struct yy_buffer_state *YY_BUFFER_STATE; 151 #endif 152 153 #ifndef YY_TYPEDEF_YY_SIZE_T 154 #define YY_TYPEDEF_YY_SIZE_T 155 typedef size_t yy_size_t; 156 #endif 157 158 extern int yyleng; 159 160 extern FILE *yyin, *yyout; 161 162 #define EOB_ACT_CONTINUE_SCAN 0 163 #define EOB_ACT_END_OF_FILE 1 164 #define EOB_ACT_LAST_MATCH 2 165 166 #define YY_LESS_LINENO(n) 167 #define YY_LINENO_REWIND_TO(ptr) 168 169 /* Return all but the first "n" matched characters back to the input stream. */ 170 #define yyless(n) \ 171 do \ 172 { \ 173 /* Undo effects of setting up yytext. */ \ 174 int yyless_macro_arg = (n); \ 175 YY_LESS_LINENO(yyless_macro_arg);\ 176 *yy_cp = (yy_hold_char); \ 177 YY_RESTORE_YY_MORE_OFFSET \ 178 (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ 179 YY_DO_BEFORE_ACTION; /* set up yytext again */ \ 180 } \ 181 while ( 0 ) 182 #define unput(c) yyunput( c, (yytext_ptr) ) 183 184 #ifndef YY_STRUCT_YY_BUFFER_STATE 185 #define YY_STRUCT_YY_BUFFER_STATE 186 struct yy_buffer_state 187 { 188 FILE *yy_input_file; 189 190 char *yy_ch_buf; /* input buffer */ 191 char *yy_buf_pos; /* current position in input buffer */ 192 193 /* Size of input buffer in bytes, not including room for EOB 194 * characters. 195 */ 196 int yy_buf_size; 197 198 /* Number of characters read into yy_ch_buf, not including EOB 199 * characters. 200 */ 201 int yy_n_chars; 202 203 /* Whether we "own" the buffer - i.e., we know we created it, 204 * and can realloc() it to grow it, and should free() it to 205 * delete it. 206 */ 207 int yy_is_our_buffer; 208 209 /* Whether this is an "interactive" input source; if so, and 210 * if we're using stdio for input, then we want to use getc() 211 * instead of fread(), to make sure we stop fetching input after 212 * each newline. 213 */ 214 int yy_is_interactive; 215 216 /* Whether we're considered to be at the beginning of a line. 217 * If so, '^' rules will be active on the next match, otherwise 218 * not. 219 */ 220 int yy_at_bol; 221 222 int yy_bs_lineno; /**< The line count. */ 223 int yy_bs_column; /**< The column count. */ 224 225 /* Whether to try to fill the input buffer when we reach the 226 * end of it. 227 */ 228 int yy_fill_buffer; 229 230 int yy_buffer_status; 231 232 #define YY_BUFFER_NEW 0 233 #define YY_BUFFER_NORMAL 1 234 /* When an EOF's been seen but there's still some text to process 235 * then we mark the buffer as YY_EOF_PENDING, to indicate that we 236 * shouldn't try reading from the input source any more. We might 237 * still have a bunch of tokens to match, though, because of 238 * possible backing-up. 239 * 240 * When we actually see the EOF, we change the status to "new" 241 * (via yyrestart()), so that the user can continue scanning by 242 * just pointing yyin at a new input file. 243 */ 244 #define YY_BUFFER_EOF_PENDING 2 245 246 }; 247 #endif /* !YY_STRUCT_YY_BUFFER_STATE */ 248 249 /* Stack of input buffers. */ 250 static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */ 251 static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */ 252 static YY_BUFFER_STATE * yy_buffer_stack = NULL; /**< Stack as an array. */ 253 254 /* We provide macros for accessing buffer states in case in the 255 * future we want to put the buffer states in a more general 256 * "scanner state". 257 * 258 * Returns the top of the stack, or NULL. 259 */ 260 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ 261 ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ 262 : NULL) 263 #define yy_current_buffer YY_CURRENT_BUFFER 264 /* Same as previous macro, but useful when we know that the buffer stack is not 265 * NULL or when we need an lvalue. For internal use only. 266 */ 267 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] 268 269 /* yy_hold_char holds the character lost when yytext is formed. */ 270 static char yy_hold_char; 271 static int yy_n_chars; /* number of characters read into yy_ch_buf */ 272 int yyleng; 273 274 /* Points to current character in buffer. */ 275 static char *yy_c_buf_p = NULL; 276 static int yy_init = 0; /* whether we need to initialize */ 277 static int yy_start = 0; /* start state number */ 278 279 /* Flag which is used to allow yywrap()'s to do buffer switches 280 * instead of setting up a fresh yyin. A bit of a hack ... 281 */ 282 static int yy_did_buffer_switch_on_eof; 283 284 void yyrestart ( FILE *input_file ); 285 void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer ); 286 YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size ); 287 void yy_delete_buffer ( YY_BUFFER_STATE b ); 288 void yy_flush_buffer ( YY_BUFFER_STATE b ); 289 void yypush_buffer_state ( YY_BUFFER_STATE new_buffer ); 290 void yypop_buffer_state ( void ); 291 292 static void yyensure_buffer_stack ( void ); 293 static void yy_load_buffer_state ( void ); 294 static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file ); 295 #define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER ) 296 297 YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size ); 298 YY_BUFFER_STATE yy_scan_string ( const char *yy_str ); 299 YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len ); 300 301 void *yyalloc ( yy_size_t ); 302 void *yyrealloc ( void *, yy_size_t ); 303 void yyfree ( void * ); 304 305 #define yy_new_buffer yy_create_buffer 306 #define yy_set_interactive(is_interactive) \ 307 { \ 308 if ( ! YY_CURRENT_BUFFER ){ \ 309 yyensure_buffer_stack (); \ 310 YY_CURRENT_BUFFER_LVALUE = \ 311 yy_create_buffer( yyin, YY_BUF_SIZE ); \ 312 } \ 313 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ 314 } 315 #define yy_set_bol(at_bol) \ 316 { \ 317 if ( ! YY_CURRENT_BUFFER ){\ 318 yyensure_buffer_stack (); \ 319 YY_CURRENT_BUFFER_LVALUE = \ 320 yy_create_buffer( yyin, YY_BUF_SIZE ); \ 321 } \ 322 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ 323 } 324 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) 325 326 /* Begin user sect3 */ 327 typedef flex_uint8_t YY_CHAR; 328 329 FILE *yyin = NULL, *yyout = NULL; 330 331 typedef int yy_state_type; 332 333 extern int yylineno; 334 int yylineno = 1; 335 336 extern char *yytext; 337 #ifdef yytext_ptr 338 #undef yytext_ptr 339 #endif 340 #define yytext_ptr yytext 341 342 static yy_state_type yy_get_previous_state ( void ); 343 static yy_state_type yy_try_NUL_trans ( yy_state_type current_state ); 344 static int yy_get_next_buffer ( void ); 345 static void yynoreturn yy_fatal_error ( const char* msg ); 346 347 /* Done after the current pattern has been matched and before the 348 * corresponding action - sets up yytext. 349 */ 350 #define YY_DO_BEFORE_ACTION \ 351 (yytext_ptr) = yy_bp; \ 352 yyleng = (int) (yy_cp - yy_bp); \ 353 (yy_hold_char) = *yy_cp; \ 354 *yy_cp = '\0'; \ 355 (yy_c_buf_p) = yy_cp; 356 #define YY_NUM_RULES 253 357 #define YY_END_OF_BUFFER 254 358 /* This struct is not used in this scanner, 359 but its presence is necessary. */ 360 struct yy_trans_info 361 { 362 flex_int32_t yy_verify; 363 flex_int32_t yy_nxt; 364 }; 365 static const flex_int16_t yy_accept[1114] = 366 { 0, 367 0, 0, 0, 0, 0, 0, 246, 246, 40, 40, 368 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 369 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, 370 239, 239, 0, 0, 0, 0, 0, 0, 0, 0, 371 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, 372 250, 250, 239, 239, 254, 252, 9, 20, 252, 18, 373 1, 19, 252, 252, 252, 252, 17, 163, 148, 149, 374 163, 141, 163, 160, 161, 162, 162, 163, 163, 163, 375 162, 147, 137, 163, 163, 139, 140, 135, 136, 135, 376 134, 133, 134, 246, 247, 247, 40, 42, 40, 41, 377 378 40, 40, 41, 41, 41, 50, 49, 51, 252, 169, 379 169, 164, 169, 165, 166, 168, 170, 218, 219, 218, 380 216, 215, 217, 171, 173, 171, 172, 171, 185, 185, 381 185, 185, 187, 189, 187, 187, 187, 187, 188, 228, 382 233, 228, 232, 231, 234, 229, 229, 229, 234, 234, 383 226, 227, 252, 130, 252, 21, 23, 21, 22, 22, 384 22, 235, 241, 235, 236, 242, 242, 242, 224, 224, 385 225, 224, 224, 224, 224, 224, 224, 224, 129, 53, 386 52, 129, 129, 129, 129, 54, 129, 129, 129, 129, 387 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 388 389 129, 129, 129, 129, 129, 129, 129, 36, 33, 36, 390 34, 48, 45, 252, 48, 48, 44, 43, 175, 174, 391 176, 177, 178, 179, 180, 181, 182, 31, 32, 31, 392 30, 28, 29, 28, 27, 22, 250, 251, 251, 237, 393 237, 238, 9, 20, 0, 18, 1, 19, 0, 0, 394 0, 16, 10, 0, 0, 0, 0, 4, 16, 5, 395 0, 2, 17, 148, 149, 0, 0, 0, 143, 0, 396 159, 157, 0, 153, 153, 0, 243, 243, 243, 0, 397 0, 142, 0, 147, 137, 0, 0, 0, 139, 140, 398 152, 138, 0, 136, 134, 133, 131, 132, 246, 244, 399 400 245, 40, 42, 40, 40, 37, 38, 0, 50, 49, 401 51, 0, 164, 0, 164, 167, 168, 219, 215, 173, 402 0, 183, 184, 189, 186, 228, 233, 0, 0, 221, 403 229, 229, 229, 0, 130, 0, 21, 23, 24, 235, 404 241, 240, 239, 240, 0, 0, 225, 220, 0, 0, 405 53, 52, 0, 128, 0, 0, 129, 129, 129, 129, 406 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 407 129, 129, 129, 129, 129, 129, 55, 129, 129, 129, 408 129, 129, 129, 129, 129, 129, 129, 129, 0, 35, 409 34, 48, 45, 46, 47, 31, 32, 29, 26, 25, 410 411 250, 248, 249, 237, 0, 16, 10, 0, 14, 0, 412 0, 0, 0, 0, 4, 16, 5, 0, 6, 0, 413 144, 0, 145, 0, 158, 0, 153, 153, 0, 153, 414 153, 153, 243, 243, 155, 154, 0, 156, 138, 146, 415 0, 152, 0, 131, 132, 40, 40, 0, 39, 0, 416 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 417 0, 0, 230, 229, 229, 0, 0, 220, 0, 0, 418 0, 0, 129, 129, 129, 129, 129, 129, 65, 129, 419 129, 129, 70, 129, 129, 129, 129, 129, 129, 129, 420 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 421 422 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 423 129, 129, 129, 129, 129, 129, 129, 129, 0, 0, 424 0, 0, 14, 0, 0, 0, 0, 0, 0, 4, 425 8, 5, 0, 153, 153, 153, 153, 153, 153, 153, 426 243, 156, 0, 0, 40, 40, 0, 0, 0, 0, 427 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 428 0, 0, 0, 0, 0, 0, 0, 0, 229, 229, 429 0, 0, 56, 57, 129, 129, 129, 129, 129, 129, 430 129, 129, 129, 129, 71, 72, 129, 129, 129, 129, 431 77, 78, 129, 129, 129, 129, 129, 129, 129, 83, 432 433 129, 129, 129, 129, 129, 129, 129, 129, 129, 92, 434 129, 129, 129, 129, 129, 129, 129, 129, 129, 0, 435 0, 0, 0, 15, 0, 0, 0, 0, 0, 8, 436 8, 8, 0, 153, 153, 153, 153, 153, 153, 153, 437 0, 0, 40, 40, 214, 0, 0, 0, 0, 0, 438 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 439 0, 0, 0, 0, 0, 0, 0, 0, 229, 229, 440 0, 0, 58, 129, 60, 129, 62, 129, 129, 129, 441 129, 68, 129, 129, 129, 73, 129, 129, 129, 129, 442 129, 129, 129, 129, 129, 129, 129, 86, 129, 129, 443 444 129, 129, 90, 129, 129, 129, 129, 129, 129, 129, 445 129, 129, 129, 0, 0, 0, 0, 3, 0, 0, 446 0, 8, 7, 8, 0, 153, 153, 153, 0, 0, 447 40, 40, 0, 0, 0, 0, 0, 0, 0, 0, 448 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 449 0, 0, 0, 0, 0, 0, 222, 223, 222, 223, 450 129, 61, 129, 129, 129, 129, 129, 129, 129, 125, 451 129, 129, 129, 129, 129, 129, 129, 129, 123, 129, 452 85, 129, 88, 129, 89, 129, 129, 129, 104, 0, 453 129, 94, 129, 0, 95, 0, 0, 0, 0, 0, 454 455 12, 0, 13, 0, 151, 0, 150, 0, 0, 0, 456 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 457 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 458 0, 129, 129, 129, 129, 129, 66, 129, 69, 129, 459 129, 129, 129, 129, 129, 122, 129, 82, 129, 129, 460 87, 129, 91, 102, 124, 0, 0, 0, 0, 0, 461 0, 129, 129, 0, 0, 0, 0, 0, 0, 0, 462 0, 0, 0, 150, 0, 0, 0, 0, 0, 0, 463 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 464 0, 0, 0, 0, 0, 0, 0, 0, 129, 129, 465 466 129, 129, 129, 67, 129, 129, 129, 129, 79, 129, 467 129, 129, 129, 129, 129, 0, 0, 113, 0, 0, 468 0, 0, 0, 0, 93, 129, 0, 0, 114, 0, 469 0, 0, 0, 0, 0, 0, 0, 0, 11, 0, 470 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 471 200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 472 0, 0, 0, 0, 129, 129, 129, 129, 129, 129, 473 129, 129, 129, 129, 129, 129, 84, 129, 129, 0, 474 0, 0, 0, 0, 0, 115, 0, 103, 0, 0, 475 0, 0, 0, 116, 0, 0, 0, 0, 0, 201, 476 477 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 478 212, 0, 129, 129, 129, 129, 129, 121, 129, 129, 479 75, 129, 129, 129, 129, 129, 0, 0, 109, 0, 480 119, 117, 110, 0, 0, 0, 120, 118, 0, 0, 481 0, 0, 0, 0, 213, 129, 129, 129, 129, 129, 482 125, 74, 129, 81, 129, 126, 129, 105, 107, 0, 483 106, 108, 0, 0, 0, 0, 0, 0, 0, 129, 484 63, 129, 129, 129, 129, 76, 129, 111, 112, 97, 485 0, 0, 0, 0, 98, 129, 129, 129, 129, 129, 486 127, 96, 0, 100, 0, 129, 129, 129, 66, 129, 487 488 99, 101, 129, 64, 129, 129, 129, 67, 129, 129, 489 80, 59, 0 490 } ; 491 492 static const YY_CHAR yy_ec[256] = 493 { 0, 494 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 495 4, 4, 5, 1, 1, 1, 1, 1, 1, 1, 496 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 497 1, 2, 1, 6, 7, 8, 9, 1, 10, 11, 498 12, 13, 14, 15, 16, 17, 18, 19, 19, 19, 499 19, 19, 19, 19, 20, 21, 22, 23, 1, 24, 500 25, 26, 27, 1, 28, 29, 30, 31, 32, 33, 501 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 502 44, 45, 46, 47, 48, 49, 50, 51, 52, 44, 503 53, 54, 55, 56, 57, 1, 58, 59, 60, 61, 504 505 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 506 72, 73, 44, 74, 75, 76, 77, 78, 79, 80, 507 81, 44, 82, 83, 84, 1, 1, 1, 1, 1, 508 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 509 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 510 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 511 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 512 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 513 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 514 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 515 516 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 517 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 518 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 519 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 520 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 521 1, 1, 1, 1, 1 522 } ; 523 524 static const YY_CHAR yy_meta[85] = 525 { 0, 526 1, 1, 2, 1, 3, 4, 1, 1, 5, 6, 527 1, 7, 8, 9, 1, 10, 1, 11, 12, 12, 528 12, 12, 13, 1, 1, 1, 1, 14, 14, 14, 529 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 530 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 531 15, 15, 16, 17, 18, 1, 19, 14, 14, 14, 532 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 533 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 534 15, 20, 1, 21 535 } ; 536 537 static const flex_int16_t yy_base[1221] = 538 { 0, 539 0, 84, 167, 250, 171, 184, 135, 142, 220, 231, 540 196, 200, 334, 0, 3627, 3625, 211, 416, 203, 212, 541 189, 225, 266, 417, 500, 0, 207, 208, 234, 421, 542 424, 436, 583, 588, 669, 0, 294, 304, 584, 751, 543 579, 580, 417, 576, 287, 306, 241, 441, 595, 608, 544 169, 238, 440, 754, 3680, 4511, 325, 4511, 3676, 0, 545 446, 4511, 3673, 430, 827, 3661, 0, 4511, 758, 4511, 546 3650, 4511, 453, 3621, 4511, 4511, 3619, 3584, 129, 746, 547 445, 766, 4511, 3604, 198, 3582, 4511, 4511, 4511, 3600, 548 0, 3599, 214, 0, 3506, 3483, 0, 4511, 3532, 4511, 549 550 420, 119, 3481, 3478, 3446, 0, 3526, 4511, 3520, 4511, 551 482, 3520, 3518, 4511, 3455, 0, 4511, 4511, 4511, 3504, 552 4511, 598, 4511, 4511, 4511, 3499, 4511, 754, 4511, 3477, 553 759, 180, 4511, 4511, 3467, 0, 3442, 762, 4511, 0, 554 4511, 3459, 4511, 3406, 3434, 0, 562, 167, 3393, 3370, 555 4511, 4511, 326, 4511, 420, 0, 4511, 3418, 3402, 3366, 556 3342, 0, 4511, 3368, 4511, 3317, 444, 3314, 4511, 471, 557 4511, 3354, 3271, 3337, 572, 189, 3295, 3285, 4511, 3332, 558 4511, 3307, 3303, 585, 594, 4511, 746, 734, 744, 754, 559 763, 770, 0, 755, 748, 763, 818, 789, 240, 822, 560 561 762, 381, 802, 791, 813, 824, 577, 4511, 4511, 3302, 562 871, 0, 4511, 3302, 3250, 3231, 4511, 4511, 4511, 4511, 563 4511, 4511, 4511, 4511, 4511, 4511, 4511, 0, 4511, 3279, 564 4511, 4511, 4511, 3276, 3260, 3259, 0, 3221, 3214, 0, 565 3264, 4511, 835, 4511, 3262, 0, 903, 4511, 3257, 842, 566 817, 0, 0, 910, 914, 918, 922, 0, 814, 0, 567 457, 4511, 0, 943, 4511, 3241, 3141, 483, 4511, 3217, 568 3212, 4511, 826, 556, 903, 930, 4511, 757, 0, 3134, 569 3131, 4511, 3129, 964, 4511, 3190, 3110, 3174, 3161, 4511, 570 0, 4511, 896, 4511, 0, 3172, 0, 0, 0, 4511, 571 572 4511, 0, 4511, 910, 913, 4511, 4511, 602, 0, 3169, 573 4511, 957, 3164, 3161, 3127, 4511, 0, 4511, 976, 4511, 574 1020, 4511, 4511, 4511, 4511, 0, 4511, 3116, 0, 4511, 575 0, 926, 930, 644, 4511, 662, 0, 4511, 4511, 0, 576 4511, 4511, 3071, 3121, 794, 3037, 4511, 0, 934, 932, 577 3117, 4511, 3091, 4511, 938, 939, 0, 940, 738, 956, 578 802, 3059, 876, 978, 933, 933, 939, 948, 964, 1030, 579 938, 958, 976, 968, 0, 996, 4511, 999, 1057, 1068, 580 981, 1079, 1077, 1080, 1074, 1068, 1070, 1120, 3062, 4511, 581 1014, 0, 4511, 4511, 4511, 0, 4511, 4511, 4511, 4511, 582 583 0, 4511, 4511, 0, 1078, 0, 0, 1153, 4511, 3063, 584 1166, 1077, 1076, 1091, 0, 1089, 0, 1018, 4511, 1022, 585 4511, 1025, 4511, 1035, 4511, 1091, 1067, 1138, 1162, 1242, 586 1177, 1308, 1105, 0, 4511, 4511, 2954, 1198, 4511, 4511, 587 1144, 0, 1137, 0, 0, 1161, 1156, 1123, 4511, 1202, 588 1308, 1309, 1310, 1319, 3013, 1312, 1311, 1327, 1320, 1321, 589 1323, 1382, 4511, 1172, 1166, 2589, 2537, 0, 1178, 1169, 590 1169, 1298, 1315, 1324, 1330, 1321, 1330, 1323, 0, 1341, 591 1332, 1348, 0, 1346, 1350, 1348, 1361, 1350, 1367, 2573, 592 1370, 1366, 1380, 1382, 1382, 1385, 1378, 1387, 1391, 1400, 593 594 1393, 1403, 1406, 1414, 1400, 1401, 1404, 1429, 1419, 1424, 595 1428, 1425, 1436, 1435, 1430, 1441, 1442, 1432, 1432, 1450, 596 1209, 1508, 4511, 1215, 1512, 1219, 1461, 1455, 1451, 0, 597 1143, 0, 1461, 1534, 1600, 1636, 204, 2525, 1606, 1681, 598 4511, 4511, 1453, 1463, 1591, 1442, 2524, 1599, 1604, 1600, 599 1607, 1605, 1611, 1608, 1650, 1620, 1606, 1614, 1613, 1654, 600 1663, 1652, 1661, 1666, 1682, 1664, 1693, 1694, 1655, 1674, 601 1662, 1675, 4511, 4511, 1683, 1676, 1677, 1683, 1697, 1692, 602 1731, 1711, 1702, 1718, 0, 0, 1719, 1706, 1716, 1735, 603 0, 0, 2553, 1722, 1732, 2540, 1725, 1722, 1733, 0, 604 605 1727, 1747, 1740, 1739, 1735, 1752, 1739, 1740, 1746, 0, 606 1750, 1763, 1760, 1750, 1752, 1759, 1777, 1762, 1778, 1769, 607 1783, 1778, 2514, 4511, 1224, 1230, 1772, 1783, 1780, 0, 608 1507, 1234, 2364, 732, 2273, 1809, 1845, 1430, 1076, 1585, 609 1797, 2286, 1785, 1807, 4511, 1811, 1814, 1829, 1835, 1821, 610 1808, 1822, 1845, 1859, 1860, 1862, 1868, 1869, 1870, 1825, 611 1888, 1890, 1876, 1891, 1874, 1902, 1894, 1898, 1795, 1891, 612 1882, 1899, 0, 1887, 0, 1892, 0, 2260, 1900, 1891, 613 1909, 0, 1904, 2253, 1902, 0, 1916, 1907, 1918, 2227, 614 1912, 1909, 1924, 2201, 1908, 1918, 1922, 0, 1934, 1925, 615 616 1931, 1947, 0, 1936, 1942, 1941, 1953, 2103, 1957, 1958, 617 1952, 2085, 1950, 1951, 1950, 1969, 1956, 2133, 1515, 1961, 618 1971, 2002, 4511, 2117, 2038, 1981, 1592, 1842, 2025, 1983, 619 0, 0, 1972, 1990, 1999, 1987, 1994, 2008, 2005, 2007, 620 2015, 2023, 2016, 2021, 2017, 2024, 2022, 2026, 2030, 2029, 621 2037, 2035, 2045, 2051, 2054, 2061, 0, 0, 4511, 4511, 622 1922, 0, 2049, 2039, 2050, 2053, 2051, 2051, 2054, 1831, 623 2073, 2064, 2077, 2073, 2081, 2082, 2072, 2085, 0, 2091, 624 0, 2074, 0, 1824, 0, 2091, 2094, 2082, 0, 2116, 625 2088, 0, 2092, 2133, 0, 1728, 2097, 2095, 1714, 1678, 626 627 4511, 2135, 4511, 2096, 4511, 1726, 4511, 1703, 1612, 1601, 628 1514, 1500, 1477, 1377, 1373, 1333, 1274, 1203, 2133, 2128, 629 2148, 2151, 2144, 2150, 2156, 2158, 2161, 2163, 2184, 2167, 630 2164, 2157, 2151, 2159, 2158, 2173, 0, 2165, 0, 2166, 631 2182, 2173, 2179, 2178, 2186, 0, 2185, 0, 2187, 2193, 632 0, 2202, 0, 0, 0, 2204, 2187, 2201, 2224, 2200, 633 2222, 2213, 2219, 2230, 2199, 2227, 2239, 2222, 2225, 1162, 634 1158, 2228, 2278, 4511, 1112, 1109, 1081, 1063, 1057, 984, 635 976, 969, 923, 913, 910, 931, 895, 891, 887, 881, 636 874, 856, 848, 843, 840, 804, 788, 2259, 2248, 2258, 637 638 2265, 2264, 2241, 0, 2254, 2265, 2268, 2279, 0, 2262, 639 2268, 2271, 2266, 2278, 2283, 2289, 2273, 4511, 2280, 2281, 640 2281, 2300, 2283, 2281, 0, 2303, 2307, 2292, 4511, 2302, 641 2304, 2319, 2303, 2307, 2309, 2328, 2309, 2357, 4511, 2362, 642 4511, 4511, 4511, 4511, 4511, 4511, 4511, 4511, 4511, 4511, 643 4511, 746, 725, 597, 577, 441, 426, 420, 267, 253, 644 247, 230, 183, 181, 2317, 2338, 2342, 2330, 2336, 2343, 645 2339, 2331, 2334, 2350, 2341, 2345, 0, 2350, 2346, 2344, 646 2349, 2361, 2364, 2367, 2359, 4511, 2357, 0, 2358, 2362, 647 2379, 2383, 2375, 4511, 2388, 2375, 2382, 2377, 2389, 4511, 648 649 4511, 4511, 4511, 4511, 4511, 4511, 4511, 4511, 4511, 4511, 650 4511, 122, 2399, 2398, 2382, 2391, 2391, 0, 2407, 2408, 651 0, 2397, 2398, 2420, 2417, 2414, 2418, 2426, 4511, 2414, 652 4511, 4511, 4511, 2422, 2429, 2419, 4511, 4511, 2417, 2437, 653 2435, 2425, 2428, 2428, 4511, 2431, 2445, 2445, 2447, 2452, 654 0, 0, 2461, 0, 2444, 0, 2459, 4511, 4511, 2452, 655 4511, 4511, 2454, 2465, 2452, 2467, 2471, 2470, 2476, 2481, 656 0, 2468, 2465, 2465, 2485, 0, 2465, 4511, 4511, 4511, 657 2489, 2491, 2479, 2488, 4511, 2501, 2491, 2498, 2503, 2490, 658 0, 4511, 2497, 4511, 2510, 2500, 2502, 2500, 0, 2514, 659 660 4511, 4511, 2516, 0, 2523, 2508, 2509, 0, 2528, 2531, 661 0, 0, 4511, 2593, 2614, 2635, 2656, 2677, 2698, 2719, 662 2740, 2761, 2782, 2803, 2824, 2845, 2866, 2887, 2908, 2929, 663 2950, 2971, 2992, 3013, 3025, 3044, 3055, 3074, 3095, 3108, 664 3127, 3148, 3169, 3190, 3202, 3221, 3242, 3263, 3280, 3292, 665 3311, 3332, 3353, 3374, 3395, 3408, 2553, 3423, 3444, 3463, 666 3484, 3505, 3517, 3536, 3557, 2569, 3057, 3578, 3590, 3609, 667 3630, 3651, 2558, 3663, 3684, 3705, 3726, 3747, 3768, 3789, 668 3810, 3831, 3843, 3862, 3879, 3891, 3910, 3931, 3952, 3973, 669 3994, 4007, 4022, 4043, 4062, 4083, 4104, 4125, 4146, 4167, 670 671 4179, 4189, 4208, 4229, 4250, 2561, 4262, 4283, 4304, 4325, 672 4346, 4367, 3028, 4379, 4398, 4419, 4432, 4447, 4468, 4489 673 } ; 674 675 static const flex_int16_t yy_def[1221] = 676 { 0, 677 1113, 1113, 1114, 1114, 1115, 1116, 1117, 1117, 1118, 1118, 678 1119, 1119, 1113, 13, 1120, 1120, 1121, 1121, 1122, 1122, 679 1123, 1123, 1124, 1124, 1113, 25, 1125, 1125, 1126, 1126, 680 1127, 1127, 1128, 1128, 1113, 35, 1129, 1129, 1130, 1130, 681 1120, 1120, 1120, 1120, 1131, 1131, 1132, 1132, 1126, 1126, 682 1133, 1133, 1134, 1134, 1113, 1113, 1113, 1113, 1113, 1135, 683 1113, 1113, 1113, 1113, 1136, 1113, 1137, 1113, 1113, 1113, 684 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1138, 1139, 685 1140, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 686 1141, 1113, 1141, 1142, 1113, 1113, 1143, 1113, 1143, 1113, 687 688 1143, 1143, 1113, 1113, 1113, 1144, 1113, 1113, 1113, 1113, 689 1113, 1113, 1113, 1113, 1113, 1145, 1113, 1113, 1113, 1113, 690 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1139, 1113, 1113, 691 1139, 1146, 1113, 1113, 1113, 1147, 1113, 1139, 1113, 1148, 692 1113, 1148, 1113, 1149, 1113, 1150, 1150, 1150, 1113, 1113, 693 1113, 1113, 1151, 1113, 1151, 1152, 1113, 1152, 1113, 1113, 694 1113, 1153, 1113, 1153, 1113, 1113, 1154, 1113, 1113, 1113, 695 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 696 1113, 1113, 1155, 1113, 1113, 1113, 1156, 1156, 1156, 1156, 697 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1157, 1156, 1156, 698 699 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1113, 1113, 1158, 700 1113, 1159, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 701 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1160, 1113, 1160, 702 1113, 1113, 1113, 1113, 1113, 1113, 1161, 1113, 1113, 1162, 703 1162, 1113, 1113, 1113, 1113, 1163, 1113, 1113, 1113, 1113, 704 1113, 1164, 1165, 1113, 1113, 1113, 1113, 1166, 1164, 1167, 705 1168, 1113, 1169, 1113, 1113, 1113, 1113, 1170, 1113, 1113, 706 1113, 1113, 1113, 1171, 1171, 1172, 1113, 1113, 1173, 1113, 707 1113, 1113, 1174, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 708 1175, 1113, 1113, 1113, 1176, 1113, 1177, 1178, 1179, 1113, 709 710 1113, 1180, 1113, 1180, 1180, 1113, 1113, 1181, 1182, 1113, 711 1113, 1113, 1113, 1113, 1113, 1113, 1183, 1113, 1113, 1113, 712 1113, 1113, 1113, 1113, 1113, 1184, 1113, 1113, 1185, 1113, 713 1186, 1186, 1186, 1187, 1113, 1187, 1188, 1113, 1113, 1189, 714 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1190, 1113, 1113, 715 1113, 1113, 1191, 1113, 1113, 1113, 1192, 1192, 1192, 1192, 716 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 717 1192, 1192, 1192, 1192, 1192, 1192, 1113, 1192, 1192, 1192, 718 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1193, 1113, 719 1113, 1194, 1113, 1113, 1113, 1195, 1113, 1113, 1113, 1113, 720 721 1196, 1113, 1113, 1197, 1113, 1198, 1199, 1200, 1113, 1113, 722 1113, 1113, 1113, 1113, 1201, 1198, 1202, 1203, 1113, 1203, 723 1113, 1204, 1113, 1204, 1113, 1113, 1205, 1205, 1205, 1113, 724 1205, 1205, 1113, 1206, 1113, 1113, 1207, 1113, 1113, 1113, 725 1113, 1208, 1113, 1209, 1210, 1211, 1211, 1212, 1113, 1212, 726 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 727 1213, 1213, 1113, 1214, 1214, 1113, 1215, 1216, 1113, 1113, 728 1113, 1113, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 729 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 730 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 731 732 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 733 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1113, 1113, 734 1200, 1200, 1113, 1200, 1200, 1113, 1113, 1113, 1113, 1201, 735 1218, 1202, 1113, 1113, 1205, 432, 430, 430, 1205, 432, 736 1113, 1113, 1113, 1113, 1211, 1211, 1113, 1213, 1213, 1213, 737 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 738 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1214, 1214, 739 1113, 1113, 1113, 1113, 1217, 1217, 1217, 1217, 1217, 1217, 740 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 741 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 742 743 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 744 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1113, 745 1113, 1113, 1113, 1113, 1200, 1200, 1113, 1113, 1113, 1218, 746 1218, 1218, 1113, 534, 534, 1205, 432, 1205, 1205, 1205, 747 1113, 1113, 1211, 1211, 1113, 1213, 1213, 1213, 1213, 1213, 748 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 749 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1214, 1214, 750 1113, 1113, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 751 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 752 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 753 754 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 755 1217, 1217, 1217, 1113, 1113, 1113, 1113, 1113, 1219, 1113, 756 1113, 1218, 1113, 1218, 1113, 1205, 1205, 1205, 1113, 1113, 757 1211, 1211, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 758 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 759 1213, 1213, 1213, 1213, 1213, 1213, 1214, 1214, 1113, 1113, 760 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 761 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 762 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1113, 763 1217, 1217, 1217, 1113, 1217, 1113, 1113, 1113, 1113, 1219, 764 765 1113, 1219, 1113, 1113, 1113, 1113, 1113, 1213, 1213, 1213, 766 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 767 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 768 1213, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 769 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 770 1217, 1217, 1217, 1217, 1217, 1113, 1113, 1113, 1113, 1113, 771 1113, 1217, 1217, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 772 1113, 1113, 1220, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 773 1113, 1113, 1113, 1113, 1113, 1213, 1213, 1213, 1213, 1213, 774 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1217, 1217, 775 776 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 777 1217, 1217, 1217, 1217, 1217, 1113, 1113, 1113, 1113, 1113, 778 1113, 1113, 1113, 1113, 1217, 1217, 1113, 1113, 1113, 1113, 779 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1220, 1113, 1220, 780 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 781 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 782 1113, 1113, 1113, 1213, 1217, 1217, 1217, 1217, 1217, 1217, 783 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1113, 784 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1217, 1113, 1113, 785 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 786 787 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 788 1113, 1113, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 789 1217, 1217, 1217, 1217, 1217, 1217, 1113, 1113, 1113, 1113, 790 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 791 1113, 1113, 1113, 1113, 1113, 1217, 1217, 1217, 1217, 1217, 792 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1113, 1113, 1113, 793 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1217, 794 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1113, 1113, 1113, 795 1113, 1113, 1113, 1113, 1113, 1217, 1217, 1217, 1217, 1217, 796 1217, 1113, 1113, 1113, 1113, 1217, 1217, 1217, 1217, 1217, 797 798 1113, 1113, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 799 1217, 1217, 0, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 800 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 801 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 802 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 803 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 804 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 805 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 806 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 807 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 808 809 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 810 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113 811 } ; 812 813 static const flex_int16_t yy_nxt[4596] = 814 { 0, 815 56, 57, 58, 56, 59, 56, 56, 56, 56, 56, 816 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 817 56, 56, 56, 56, 56, 56, 56, 60, 60, 60, 818 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 819 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 820 60, 60, 56, 56, 56, 56, 60, 60, 60, 60, 821 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 822 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 823 60, 56, 56, 56, 56, 61, 62, 56, 63, 56, 824 64, 56, 65, 56, 56, 56, 56, 56, 56, 56, 825 826 56, 66, 56, 56, 56, 56, 56, 56, 56, 56, 827 56, 67, 67, 67, 67, 67, 67, 67, 67, 67, 828 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 829 67, 67, 67, 67, 67, 67, 56, 56, 56, 56, 830 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 831 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 832 67, 67, 67, 67, 67, 56, 56, 56, 69, 70, 833 305, 71, 72, 89, 73, 90, 1045, 74, 75, 76, 834 76, 275, 276, 76, 77, 92, 89, 95, 90, 96, 835 78, 56, 93, 76, 95, 323, 96, 107, 108, 305, 836 837 109, 107, 108, 1012, 109, 125, 291, 126, 127, 154, 838 154, 155, 155, 119, 125, 120, 126, 127, 333, 79, 839 80, 238, 98, 239, 99, 121, 638, 56, 100, 122, 840 122, 122, 122, 98, 323, 99, 157, 1011, 158, 105, 841 350, 130, 131, 233, 132, 234, 159, 333, 81, 76, 842 76, 82, 83, 235, 84, 72, 128, 73, 85, 427, 843 74, 75, 76, 76, 101, 128, 76, 77, 134, 350, 844 135, 102, 103, 86, 104, 101, 76, 130, 131, 292, 845 132, 136, 102, 103, 1010, 104, 160, 378, 161, 229, 846 238, 230, 239, 101, 123, 297, 209, 298, 231, 210, 847 848 102, 1009, 79, 80, 101, 87, 209, 1008, 229, 210, 849 230, 102, 211, 211, 211, 211, 378, 231, 137, 138, 850 139, 1007, 211, 211, 211, 211, 243, 244, 335, 245, 851 336, 81, 76, 76, 110, 111, 112, 110, 113, 110, 852 110, 110, 110, 110, 110, 110, 114, 110, 114, 110, 853 110, 110, 110, 110, 110, 110, 110, 110, 110, 115, 854 110, 116, 116, 116, 116, 116, 116, 116, 116, 116, 855 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 856 116, 116, 116, 116, 116, 116, 110, 110, 110, 110, 857 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 858 859 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 860 116, 116, 116, 116, 116, 110, 110, 110, 119, 134, 861 120, 135, 335, 157, 336, 158, 163, 383, 164, 165, 862 121, 250, 136, 159, 122, 122, 122, 122, 163, 224, 863 164, 165, 163, 233, 241, 234, 343, 247, 248, 242, 864 249, 304, 225, 235, 269, 269, 383, 270, 280, 419, 865 281, 420, 226, 282, 282, 282, 282, 227, 251, 137, 866 138, 139, 345, 160, 1006, 161, 166, 167, 168, 346, 867 1005, 304, 225, 312, 313, 423, 314, 424, 166, 167, 868 168, 226, 166, 167, 168, 1004, 227, 344, 251, 123, 869 870 140, 140, 141, 140, 142, 143, 140, 140, 140, 144, 871 140, 140, 140, 140, 140, 140, 140, 145, 140, 140, 872 140, 140, 140, 140, 140, 140, 140, 146, 146, 146, 873 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 874 146, 146, 146, 146, 147, 146, 146, 146, 146, 146, 875 146, 148, 149, 140, 150, 140, 146, 146, 146, 146, 876 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, 877 146, 146, 146, 147, 146, 146, 146, 146, 146, 146, 878 148, 151, 140, 152, 170, 171, 213, 172, 214, 170, 879 171, 173, 172, 332, 219, 219, 173, 157, 224, 158, 880 881 174, 220, 220, 349, 449, 174, 450, 236, 428, 429, 882 157, 225, 158, 355, 221, 221, 319, 319, 319, 319, 883 236, 226, 356, 332, 222, 222, 227, 175, 388, 223, 884 223, 1003, 175, 349, 176, 177, 215, 178, 216, 176, 885 177, 225, 178, 355, 221, 221, 335, 160, 336, 161, 886 226, 1002, 356, 222, 222, 227, 175, 388, 223, 223, 887 160, 175, 161, 176, 335, 217, 336, 218, 176, 179, 888 180, 181, 179, 182, 183, 179, 179, 179, 179, 179, 889 179, 179, 179, 179, 179, 179, 179, 179, 184, 185, 890 179, 179, 179, 186, 179, 179, 187, 188, 189, 190, 891 892 191, 192, 193, 194, 195, 193, 193, 196, 197, 198, 893 199, 200, 193, 201, 202, 203, 204, 205, 206, 193, 894 207, 179, 179, 179, 179, 179, 187, 188, 189, 190, 895 191, 192, 193, 194, 195, 193, 193, 196, 197, 198, 896 199, 200, 201, 202, 203, 204, 205, 206, 193, 207, 897 179, 179, 179, 213, 726, 214, 163, 362, 241, 264, 898 265, 360, 266, 242, 278, 278, 267, 284, 285, 361, 899 286, 363, 278, 278, 287, 433, 433, 278, 278, 1001, 900 278, 278, 475, 288, 358, 364, 369, 427, 370, 289, 901 359, 360, 365, 382, 371, 345, 279, 367, 372, 361, 902 903 1000, 363, 346, 215, 279, 216, 166, 167, 168, 279, 904 963, 475, 279, 366, 358, 364, 369, 368, 370, 359, 905 376, 290, 365, 382, 371, 279, 962, 367, 372, 384, 906 377, 385, 217, 279, 218, 253, 243, 244, 279, 245, 907 268, 279, 366, 250, 386, 373, 368, 478, 268, 374, 908 376, 387, 405, 379, 254, 416, 255, 426, 255, 384, 909 377, 385, 961, 380, 255, 960, 381, 255, 256, 257, 910 959, 255, 258, 259, 386, 373, 478, 260, 958, 374, 911 251, 387, 405, 379, 254, 416, 255, 426, 255, 391, 912 391, 391, 391, 380, 255, 381, 957, 255, 256, 257, 913 914 255, 258, 259, 956, 247, 248, 260, 249, 261, 955, 915 251, 408, 409, 954, 410, 408, 409, 953, 410, 408, 916 409, 480, 410, 408, 409, 430, 410, 443, 411, 411, 917 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, 918 411, 411, 411, 411, 264, 265, 446, 266, 431, 431, 919 480, 267, 447, 952, 412, 428, 429, 443, 312, 313, 920 413, 314, 464, 414, 951, 284, 285, 950, 286, 465, 921 469, 470, 287, 471, 472, 473, 446, 949, 483, 484, 922 432, 288, 447, 412, 485, 476, 486, 289, 490, 474, 923 413, 487, 464, 414, 319, 319, 319, 319, 491, 465, 924 925 469, 470, 477, 471, 472, 473, 481, 483, 484, 432, 926 482, 492, 499, 485, 493, 476, 486, 490, 474, 290, 927 419, 487, 420, 948, 419, 268, 420, 423, 491, 424, 928 947, 477, 391, 391, 391, 391, 481, 423, 946, 424, 929 482, 492, 499, 493, 494, 495, 268, 451, 452, 453, 930 454, 455, 455, 456, 455, 455, 455, 455, 457, 455, 931 455, 455, 458, 455, 455, 459, 455, 460, 455, 455, 932 461, 455, 488, 494, 495, 462, 489, 451, 452, 453, 933 454, 455, 455, 456, 455, 455, 455, 455, 457, 455, 934 455, 455, 458, 455, 459, 455, 460, 455, 455, 461, 935 936 455, 496, 488, 497, 503, 489, 500, 504, 505, 506, 937 501, 945, 508, 498, 509, 502, 507, 944, 520, 428, 938 429, 527, 528, 277, 277, 449, 529, 450, 428, 429, 939 496, 531, 533, 497, 503, 943, 500, 504, 505, 506, 940 501, 508, 498, 509, 631, 502, 507, 510, 520, 511, 941 527, 528, 512, 513, 522, 523, 529, 524, 514, 515, 942 534, 531, 533, 942, 516, 517, 941, 526, 409, 518, 943 410, 525, 525, 525, 525, 543, 519, 510, 544, 511, 944 535, 535, 512, 513, 411, 411, 411, 411, 514, 515, 945 428, 429, 545, 516, 517, 539, 539, 546, 518, 542, 946 947 542, 542, 542, 569, 449, 543, 450, 570, 544, 571, 948 572, 624, 536, 625, 936, 573, 427, 523, 935, 625, 949 526, 409, 545, 410, 632, 885, 624, 546, 625, 428, 950 429, 626, 523, 569, 524, 722, 723, 570, 724, 571, 951 572, 536, 427, 427, 573, 427, 427, 427, 427, 427, 952 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 953 427, 427, 427, 427, 427, 427, 427, 427, 427, 537, 954 537, 537, 537, 537, 537, 537, 537, 537, 537, 537, 955 537, 537, 537, 537, 537, 537, 537, 537, 537, 537, 956 537, 537, 537, 537, 428, 429, 884, 538, 427, 537, 957 958 537, 537, 537, 537, 537, 537, 537, 537, 537, 537, 959 537, 537, 537, 537, 537, 537, 537, 537, 537, 537, 960 537, 537, 537, 427, 427, 427, 540, 540, 540, 540, 961 547, 547, 547, 547, 547, 540, 540, 540, 540, 540, 962 540, 547, 547, 547, 574, 547, 548, 549, 575, 547, 963 550, 576, 553, 558, 551, 883, 552, 577, 578, 579, 964 428, 429, 556, 557, 580, 540, 540, 540, 540, 540, 965 540, 554, 581, 574, 555, 583, 548, 549, 575, 582, 966 550, 576, 553, 558, 551, 552, 586, 577, 578, 579, 967 584, 587, 556, 557, 580, 882, 585, 588, 589, 881, 968 969 554, 591, 581, 555, 1113, 583, 592, 593, 582, 559, 970 560, 561, 562, 594, 595, 563, 586, 596, 597, 584, 971 564, 587, 598, 599, 565, 585, 588, 566, 589, 567, 972 600, 591, 568, 601, 602, 603, 592, 593, 606, 559, 973 560, 561, 562, 594, 595, 563, 607, 596, 597, 604, 974 564, 608, 598, 599, 565, 605, 566, 609, 567, 610, 975 600, 568, 611, 601, 602, 603, 612, 614, 606, 613, 976 615, 616, 617, 618, 620, 607, 619, 621, 622, 604, 977 608, 623, 428, 429, 274, 605, 644, 609, 627, 610, 978 628, 629, 611, 633, 641, 642, 612, 614, 613, 880, 979 980 615, 616, 617, 618, 620, 619, 621, 622, 631, 522, 981 523, 623, 524, 626, 523, 644, 524, 801, 627, 802, 982 628, 629, 879, 633, 641, 642, 525, 525, 525, 525, 983 525, 525, 525, 525, 427, 427, 878, 427, 427, 427, 984 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 985 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, 986 427, 634, 634, 634, 634, 634, 634, 634, 634, 634, 987 634, 634, 634, 634, 634, 634, 634, 634, 634, 634, 988 634, 634, 634, 634, 634, 634, 428, 429, 632, 635, 989 427, 634, 634, 634, 634, 634, 634, 634, 634, 634, 990 991 634, 634, 634, 634, 634, 634, 634, 634, 634, 634, 992 634, 634, 634, 634, 634, 427, 427, 427, 636, 636, 993 643, 547, 547, 877, 639, 639, 547, 547, 547, 547, 994 547, 648, 651, 547, 876, 547, 547, 428, 429, 646, 995 650, 647, 547, 653, 428, 429, 649, 655, 656, 657, 996 643, 658, 428, 429, 637, 637, 637, 637, 428, 429, 997 652, 648, 651, 637, 637, 637, 637, 637, 637, 646, 998 650, 647, 547, 653, 547, 649, 547, 655, 656, 657, 999 801, 658, 802, 547, 669, 547, 547, 661, 547, 652, 1000 654, 671, 659, 637, 637, 637, 637, 637, 637, 640, 1001 1002 640, 640, 640, 660, 547, 662, 666, 663, 640, 640, 1003 640, 640, 640, 640, 669, 547, 547, 661, 670, 672, 1004 654, 671, 659, 673, 668, 875, 664, 674, 675, 665, 1005 676, 677, 678, 660, 662, 667, 666, 663, 640, 640, 1006 640, 640, 640, 640, 682, 684, 679, 670, 672, 683, 1007 685, 874, 686, 673, 668, 664, 674, 675, 665, 676, 1008 687, 677, 678, 680, 688, 667, 690, 691, 695, 681, 1009 872, 693, 694, 696, 682, 684, 697, 698, 683, 699, 1010 685, 686, 700, 701, 869, 702, 703, 704, 705, 687, 1011 706, 707, 709, 680, 688, 690, 708, 691, 695, 681, 1012 1013 693, 694, 696, 710, 711, 713, 697, 698, 712, 699, 1014 714, 700, 716, 701, 702, 703, 715, 704, 705, 717, 1015 706, 707, 709, 719, 720, 708, 721, 727, 727, 729, 1016 547, 731, 710, 547, 711, 713, 547, 712, 732, 852, 1017 714, 757, 716, 547, 547, 715, 841, 547, 734, 717, 1018 738, 547, 719, 739, 720, 721, 737, 547, 733, 729, 1019 731, 428, 429, 728, 728, 728, 728, 547, 732, 735, 1020 757, 748, 728, 728, 728, 728, 728, 728, 734, 736, 1021 738, 547, 547, 739, 547, 740, 737, 733, 741, 742, 1022 547, 547, 547, 743, 428, 429, 547, 747, 547, 735, 1023 1024 748, 744, 728, 728, 728, 728, 728, 728, 736, 745, 1025 547, 746, 547, 547, 753, 740, 547, 750, 741, 742, 1026 547, 749, 758, 743, 547, 751, 752, 747, 759, 754, 1027 760, 744, 761, 756, 762, 764, 755, 832, 766, 745, 1028 767, 746, 768, 771, 753, 765, 770, 750, 772, 773, 1029 775, 749, 758, 776, 751, 777, 752, 759, 779, 754, 1030 760, 761, 780, 756, 762, 764, 755, 766, 781, 782, 1031 767, 783, 768, 771, 765, 770, 784, 785, 772, 773, 1032 775, 786, 776, 787, 789, 777, 788, 779, 791, 792, 1033 793, 780, 795, 796, 547, 797, 798, 781, 799, 782, 1034 1035 783, 803, 804, 722, 723, 784, 724, 785, 807, 547, 1036 786, 808, 547, 787, 789, 788, 547, 809, 791, 792, 1037 793, 547, 795, 796, 797, 811, 798, 547, 799, 547, 1038 547, 803, 804, 428, 429, 427, 810, 547, 547, 547, 1039 812, 808, 813, 547, 547, 547, 547, 809, 547, 814, 1040 806, 547, 547, 815, 817, 811, 819, 547, 821, 547, 1041 818, 816, 822, 805, 820, 824, 810, 547, 826, 812, 1042 823, 825, 813, 547, 828, 827, 547, 833, 814, 835, 1043 829, 836, 815, 547, 817, 830, 819, 834, 821, 818, 1044 816, 837, 822, 820, 831, 824, 838, 839, 826, 823, 1045 1046 840, 825, 842, 843, 828, 827, 844, 833, 845, 835, 1047 829, 836, 846, 847, 849, 830, 848, 834, 850, 723, 1048 851, 837, 853, 854, 831, 838, 839, 855, 862, 840, 1049 863, 870, 842, 843, 718, 871, 844, 801, 845, 802, 1050 873, 794, 846, 847, 849, 848, 856, 857, 850, 851, 1051 547, 858, 853, 854, 859, 547, 855, 860, 862, 790, 1052 863, 870, 861, 864, 865, 871, 547, 887, 866, 873, 1053 547, 867, 547, 547, 868, 888, 856, 857, 547, 886, 1054 547, 858, 890, 547, 859, 547, 547, 860, 889, 547, 1055 892, 861, 899, 864, 865, 900, 891, 887, 866, 898, 1056 1057 901, 867, 893, 902, 868, 888, 547, 894, 886, 895, 1058 904, 897, 890, 903, 906, 896, 778, 905, 889, 907, 1059 892, 908, 899, 909, 900, 891, 910, 911, 912, 898, 1060 901, 893, 902, 913, 914, 916, 894, 917, 895, 904, 1061 897, 918, 774, 903, 906, 896, 905, 923, 907, 928, 1062 915, 908, 909, 924, 925, 919, 910, 911, 912, 920, 1063 926, 927, 921, 913, 914, 916, 917, 929, 769, 933, 1064 934, 918, 922, 937, 930, 763, 923, 931, 928, 915, 1065 939, 547, 940, 924, 925, 919, 969, 932, 965, 920, 1066 926, 927, 921, 966, 967, 968, 970, 929, 933, 934, 1067 1068 971, 922, 937, 972, 930, 964, 973, 931, 974, 975, 1069 976, 730, 977, 978, 979, 969, 932, 980, 965, 981, 1070 982, 983, 984, 966, 967, 968, 970, 985, 427, 986, 1071 971, 987, 988, 972, 964, 989, 973, 974, 990, 975, 1072 976, 977, 991, 978, 979, 992, 993, 980, 981, 994, 1073 982, 983, 984, 995, 996, 999, 997, 985, 986, 939, 1074 987, 940, 988, 1013, 939, 989, 940, 990, 1014, 1015, 1075 1016, 1017, 991, 998, 1018, 992, 993, 1019, 994, 1020, 1076 1021, 1022, 995, 996, 999, 1023, 997, 1024, 1025, 725, 1077 1026, 1027, 1013, 1028, 1029, 1030, 1031, 1032, 1014, 1015, 1078 1079 1016, 1017, 998, 1033, 1018, 1034, 1035, 1019, 1020, 1021, 1080 1036, 1022, 1037, 1038, 1023, 1039, 1044, 1024, 1025, 1026, 1081 1027, 1040, 1028, 1043, 1029, 1030, 1031, 1032, 1048, 1041, 1082 1046, 1047, 1033, 1042, 1034, 1035, 1049, 1050, 1051, 1052, 1083 1036, 1053, 1037, 1038, 1054, 1039, 1044, 1055, 1056, 1057, 1084 1040, 1058, 1043, 1059, 1060, 1061, 1062, 1048, 1041, 1063, 1085 1046, 1047, 1042, 1064, 1065, 1049, 1050, 1066, 1051, 1052, 1086 1053, 1067, 1068, 1054, 1069, 1070, 1071, 1055, 1056, 1057, 1087 1072, 1058, 1073, 1059, 1060, 1061, 1062, 1074, 1075, 1063, 1088 1076, 1077, 1064, 1078, 1065, 1079, 1080, 1066, 1081, 1082, 1089 1090 1067, 1068, 1083, 1069, 1070, 1084, 1071, 1085, 1086, 1087, 1091 1072, 1088, 1073, 1089, 1090, 718, 1091, 1074, 1075, 1076, 1092 1092, 1077, 1093, 1078, 1094, 1079, 1080, 1081, 1095, 1082, 1093 1096, 1097, 1083, 1098, 1099, 1084, 1100, 1085, 1086, 1087, 1094 1088, 1101, 1089, 1102, 1090, 1091, 1103, 1104, 1105, 1106, 1095 1092, 1107, 1093, 1094, 1108, 692, 1109, 1110, 1095, 1111, 1096 1096, 1097, 1112, 1098, 1099, 1100, 375, 375, 689, 434, 1097 1101, 434, 541, 1102, 541, 1103, 1104, 1105, 645, 1106, 1098 427, 1107, 415, 415, 1108, 1109, 1110, 415, 590, 1111, 1099 344, 343, 1112, 68, 68, 68, 68, 68, 68, 68, 1100 1101 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 1102 68, 68, 68, 68, 88, 88, 88, 88, 88, 88, 1103 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 1104 88, 88, 88, 88, 88, 91, 91, 91, 91, 91, 1105 91, 91, 91, 91, 91, 91, 91, 91, 91, 91, 1106 91, 91, 91, 91, 91, 91, 94, 94, 94, 94, 1107 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 1108 94, 94, 94, 94, 94, 94, 94, 97, 97, 97, 1109 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1110 97, 97, 97, 97, 97, 97, 97, 97, 106, 106, 1111 1112 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 1113 106, 106, 106, 106, 106, 106, 106, 106, 106, 56, 1114 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 1115 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, 1116 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 1117 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 1118 118, 124, 124, 124, 124, 124, 124, 124, 124, 124, 1119 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 1120 124, 124, 129, 129, 129, 129, 129, 129, 129, 129, 1121 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 1122 1123 129, 129, 129, 133, 133, 133, 133, 133, 133, 133, 1124 133, 133, 133, 133, 133, 133, 133, 133, 133, 133, 1125 133, 133, 133, 133, 153, 153, 153, 153, 153, 153, 1126 153, 153, 153, 153, 153, 153, 153, 153, 153, 153, 1127 153, 153, 153, 153, 153, 156, 156, 156, 156, 156, 1128 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, 1129 156, 156, 156, 156, 156, 156, 162, 162, 162, 162, 1130 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, 1131 162, 162, 162, 162, 162, 162, 162, 169, 169, 169, 1132 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 1133 1134 169, 169, 169, 169, 169, 169, 169, 169, 208, 208, 1135 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 1136 208, 208, 208, 208, 208, 208, 208, 208, 208, 212, 1137 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 1138 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 1139 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, 1140 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, 1141 228, 232, 232, 232, 232, 232, 232, 232, 232, 232, 1142 232, 232, 232, 232, 232, 232, 232, 232, 232, 232, 1143 232, 232, 237, 237, 237, 237, 237, 237, 237, 237, 1144 1145 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 1146 237, 237, 237, 240, 240, 240, 240, 240, 240, 240, 1147 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, 1148 240, 240, 240, 240, 246, 547, 246, 438, 246, 246, 1149 455, 455, 455, 246, 252, 252, 252, 252, 252, 252, 1150 252, 252, 252, 252, 252, 252, 252, 252, 252, 252, 1151 252, 252, 252, 252, 263, 409, 263, 390, 263, 263, 1152 417, 417, 479, 263, 274, 417, 274, 274, 274, 274, 1153 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 1154 274, 274, 274, 274, 274, 277, 354, 277, 277, 277, 1155 1156 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 1157 277, 277, 277, 277, 277, 277, 283, 283, 351, 283, 1158 348, 283, 283, 467, 466, 463, 283, 295, 315, 295, 1159 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 1160 295, 295, 295, 295, 295, 295, 295, 295, 299, 299, 1161 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 1162 299, 299, 299, 313, 299, 315, 299, 299, 299, 302, 1163 310, 302, 302, 296, 302, 302, 302, 302, 302, 302, 1164 302, 302, 302, 302, 441, 302, 440, 302, 302, 302, 1165 309, 439, 285, 309, 309, 309, 309, 309, 309, 309, 1166 1167 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, 1168 309, 317, 438, 317, 436, 317, 317, 435, 425, 269, 1169 317, 322, 421, 322, 322, 322, 322, 322, 322, 322, 1170 322, 322, 322, 322, 322, 322, 322, 322, 322, 322, 1171 322, 322, 325, 265, 325, 325, 325, 325, 325, 325, 1172 325, 325, 325, 325, 325, 325, 325, 325, 325, 248, 1173 325, 325, 325, 326, 244, 326, 341, 326, 403, 326, 1174 326, 326, 326, 402, 326, 326, 400, 399, 398, 326, 1175 328, 397, 328, 328, 328, 395, 328, 328, 328, 328, 1176 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 1177 1178 328, 331, 394, 331, 393, 331, 331, 390, 354, 352, 1179 331, 334, 334, 334, 334, 334, 334, 334, 334, 334, 1180 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, 1181 334, 334, 337, 351, 337, 337, 337, 337, 337, 307, 1182 337, 337, 337, 337, 337, 337, 337, 306, 337, 330, 1183 337, 337, 337, 340, 348, 340, 347, 340, 340, 340, 1184 340, 340, 340, 340, 340, 340, 340, 340, 307, 306, 1185 341, 340, 340, 340, 342, 342, 342, 342, 342, 342, 1186 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 1187 342, 342, 342, 342, 342, 353, 307, 353, 353, 353, 1188 1189 353, 353, 353, 353, 353, 353, 353, 353, 353, 353, 1190 353, 353, 353, 353, 353, 353, 357, 357, 306, 339, 1191 338, 357, 357, 389, 307, 389, 389, 389, 389, 389, 1192 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 1193 389, 389, 389, 389, 392, 306, 330, 392, 392, 392, 1194 392, 392, 392, 392, 392, 392, 392, 392, 392, 329, 1195 392, 327, 392, 396, 321, 396, 396, 396, 396, 324, 1196 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 1197 396, 396, 396, 396, 401, 401, 401, 401, 401, 401, 1198 401, 401, 401, 401, 401, 401, 401, 401, 401, 321, 1199 1200 401, 320, 401, 401, 401, 404, 318, 404, 404, 404, 1201 316, 404, 404, 404, 404, 404, 404, 404, 404, 404, 1202 313, 315, 311, 404, 404, 404, 246, 310, 246, 308, 1203 246, 246, 307, 306, 303, 246, 406, 301, 406, 406, 1204 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 1205 406, 406, 406, 406, 406, 406, 406, 407, 300, 407, 1206 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 1207 407, 407, 407, 407, 407, 407, 407, 407, 418, 418, 1208 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 1209 418, 418, 418, 418, 418, 418, 418, 418, 418, 263, 1210 1211 296, 263, 294, 263, 263, 293, 285, 273, 263, 422, 1212 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 1213 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 1214 427, 272, 427, 427, 427, 427, 427, 427, 427, 427, 1215 427, 427, 427, 427, 427, 427, 427, 271, 427, 427, 1216 427, 274, 265, 274, 274, 274, 274, 274, 274, 274, 1217 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 1218 274, 274, 437, 262, 437, 248, 437, 437, 244, 1113, 1219 117, 437, 117, 437, 442, 1113, 442, 442, 442, 442, 1220 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 1221 1222 442, 442, 442, 442, 442, 295, 1113, 295, 295, 295, 1223 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 1224 295, 295, 295, 295, 295, 295, 444, 1113, 444, 444, 1225 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 1226 444, 444, 444, 444, 444, 444, 444, 445, 1113, 445, 1227 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 1228 445, 445, 445, 445, 445, 445, 445, 445, 299, 299, 1229 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 1230 299, 299, 299, 1113, 299, 1113, 299, 299, 299, 302, 1231 1113, 302, 302, 1113, 302, 302, 302, 302, 302, 302, 1232 1233 302, 302, 302, 302, 1113, 302, 1113, 302, 302, 302, 1234 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 1235 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 1236 448, 309, 1113, 1113, 309, 309, 309, 309, 309, 309, 1237 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, 1238 309, 309, 317, 1113, 317, 1113, 317, 317, 1113, 1113, 1239 1113, 317, 326, 1113, 326, 1113, 326, 1113, 326, 326, 1240 326, 326, 1113, 326, 326, 1113, 1113, 1113, 326, 328, 1241 1113, 328, 328, 328, 328, 328, 328, 328, 328, 328, 1242 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 1243 1244 331, 1113, 331, 1113, 331, 331, 1113, 1113, 1113, 331, 1245 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, 1246 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, 1247 334, 337, 1113, 337, 337, 337, 337, 337, 1113, 337, 1248 337, 337, 337, 337, 337, 337, 1113, 337, 1113, 337, 1249 337, 337, 340, 1113, 340, 1113, 340, 340, 340, 340, 1250 340, 340, 340, 340, 340, 340, 340, 1113, 1113, 1113, 1251 340, 340, 340, 468, 1113, 468, 468, 468, 468, 468, 1252 468, 468, 468, 468, 468, 468, 468, 468, 468, 468, 1253 468, 468, 468, 468, 353, 1113, 353, 353, 353, 353, 1254 1255 353, 353, 353, 353, 353, 353, 353, 353, 353, 353, 1256 353, 353, 353, 353, 353, 357, 357, 1113, 1113, 1113, 1257 357, 357, 389, 1113, 389, 389, 389, 389, 389, 389, 1258 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 1259 389, 389, 389, 392, 1113, 1113, 392, 392, 392, 392, 1260 392, 392, 392, 392, 392, 392, 392, 392, 1113, 392, 1261 1113, 392, 396, 1113, 396, 396, 396, 396, 1113, 396, 1262 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, 1263 396, 396, 396, 401, 401, 401, 401, 401, 401, 401, 1264 401, 401, 401, 401, 401, 401, 401, 401, 1113, 401, 1265 1266 1113, 401, 401, 401, 404, 1113, 404, 404, 404, 1113, 1267 404, 404, 404, 404, 404, 404, 404, 404, 404, 1113, 1268 1113, 1113, 404, 404, 404, 406, 1113, 406, 406, 406, 1269 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, 1270 406, 406, 406, 406, 406, 406, 407, 1113, 407, 407, 1271 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 1272 407, 407, 407, 407, 407, 407, 407, 521, 521, 521, 1273 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1274 521, 521, 521, 521, 521, 521, 521, 521, 530, 1113, 1275 530, 1113, 530, 530, 1113, 1113, 1113, 530, 532, 1113, 1276 1277 532, 1113, 532, 532, 1113, 1113, 1113, 532, 418, 418, 1278 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, 1279 418, 418, 418, 418, 418, 418, 418, 418, 418, 422, 1280 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 1281 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, 1282 427, 1113, 427, 427, 427, 427, 427, 427, 427, 427, 1283 427, 427, 427, 427, 427, 427, 427, 1113, 427, 427, 1284 427, 437, 1113, 437, 1113, 437, 437, 1113, 1113, 1113, 1285 437, 1113, 437, 442, 1113, 442, 442, 442, 442, 442, 1286 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, 1287 1288 442, 442, 442, 442, 444, 1113, 444, 444, 444, 444, 1289 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, 1290 444, 444, 444, 444, 444, 445, 1113, 445, 445, 445, 1291 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, 1292 445, 445, 445, 445, 445, 445, 302, 1113, 302, 302, 1293 1113, 302, 302, 302, 302, 302, 302, 302, 302, 302, 1294 302, 1113, 302, 1113, 302, 302, 302, 448, 448, 448, 1295 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 1296 448, 448, 448, 448, 448, 448, 448, 448, 331, 1113, 1297 331, 1113, 331, 331, 1113, 1113, 1113, 331, 342, 1113, 1298 1299 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, 1300 342, 342, 342, 342, 342, 342, 342, 342, 342, 468, 1301 1113, 468, 468, 468, 468, 468, 468, 468, 468, 468, 1302 468, 468, 468, 468, 468, 468, 468, 468, 468, 468, 1303 357, 357, 1113, 1113, 1113, 357, 357, 630, 1113, 630, 1304 630, 630, 630, 630, 630, 630, 630, 630, 630, 630, 1305 630, 630, 630, 630, 630, 630, 630, 630, 800, 800, 1306 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, 1307 800, 800, 800, 800, 800, 800, 800, 800, 800, 938, 1308 938, 938, 938, 938, 938, 938, 938, 938, 938, 938, 1309 1310 938, 938, 938, 938, 938, 938, 938, 938, 938, 938, 1311 55, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1312 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1313 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1314 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1315 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1316 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1317 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1318 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1319 1113, 1113, 1113, 1113, 1113 1320 1321 } ; 1322 1323 static const flex_int16_t yy_chk[4596] = 1324 { 0, 1325 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1326 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1327 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1328 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1329 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1330 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1331 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1332 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1333 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 1334 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1335 1336 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1337 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1338 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1339 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1340 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1341 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1342 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 1343 102, 3, 3, 5, 3, 5, 1012, 3, 3, 3, 1344 3, 79, 79, 3, 3, 6, 6, 7, 6, 7, 1345 3, 21, 6, 3, 8, 132, 8, 11, 11, 102, 1346 1347 11, 12, 12, 964, 12, 19, 85, 19, 19, 27, 1348 28, 27, 28, 17, 20, 17, 20, 20, 148, 3, 1349 3, 51, 9, 51, 9, 17, 537, 22, 9, 17, 1350 17, 17, 17, 10, 132, 10, 29, 963, 29, 10, 1351 176, 21, 21, 47, 21, 47, 29, 148, 3, 3, 1352 3, 4, 4, 47, 4, 4, 19, 4, 4, 537, 1353 4, 4, 4, 4, 9, 20, 4, 4, 23, 176, 1354 23, 9, 9, 4, 9, 10, 4, 22, 22, 85, 1355 22, 23, 10, 10, 962, 10, 29, 199, 29, 45, 1356 52, 45, 52, 9, 17, 93, 37, 93, 45, 37, 1357 1358 9, 961, 4, 4, 10, 4, 38, 960, 46, 38, 1359 46, 10, 37, 37, 37, 37, 199, 46, 23, 23, 1360 23, 959, 38, 38, 38, 38, 57, 57, 153, 57, 1361 153, 4, 4, 4, 13, 13, 13, 13, 13, 13, 1362 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 1363 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 1364 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 1365 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 1366 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 1367 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 1368 1369 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 1370 13, 13, 13, 13, 13, 13, 13, 13, 18, 24, 1371 18, 24, 155, 30, 155, 30, 31, 202, 31, 31, 1372 18, 64, 24, 30, 18, 18, 18, 18, 32, 43, 1373 32, 32, 53, 48, 53, 48, 167, 61, 61, 53, 1374 61, 101, 43, 48, 73, 73, 202, 73, 81, 261, 1375 81, 261, 43, 81, 81, 81, 81, 43, 64, 24, 1376 24, 24, 170, 30, 958, 30, 31, 31, 31, 170, 1377 957, 101, 43, 111, 111, 268, 111, 268, 32, 32, 1378 32, 43, 53, 53, 53, 956, 43, 167, 64, 18, 1379 1380 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 1381 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 1382 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 1383 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 1384 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 1385 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 1386 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 1387 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 1388 25, 25, 25, 25, 33, 33, 39, 33, 39, 34, 1389 34, 33, 34, 147, 41, 42, 34, 49, 44, 49, 1390 1391 33, 41, 42, 175, 308, 34, 308, 49, 274, 274, 1392 50, 44, 50, 184, 41, 42, 122, 122, 122, 122, 1393 50, 44, 185, 147, 41, 42, 44, 33, 207, 41, 1394 42, 955, 34, 175, 33, 33, 39, 33, 39, 34, 1395 34, 44, 34, 184, 41, 42, 334, 49, 334, 49, 1396 44, 954, 185, 41, 42, 44, 33, 207, 41, 42, 1397 50, 34, 50, 33, 336, 39, 336, 39, 34, 35, 1398 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 1399 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 1400 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 1401 1402 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 1403 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 1404 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 1405 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 1406 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 1407 35, 35, 35, 40, 634, 40, 54, 189, 54, 69, 1408 69, 188, 69, 54, 80, 80, 69, 82, 82, 188, 1409 82, 189, 128, 128, 82, 278, 278, 131, 131, 953, 1410 138, 138, 359, 82, 187, 190, 194, 634, 195, 82, 1411 187, 188, 191, 201, 196, 345, 80, 192, 196, 188, 1412 1413 952, 189, 345, 40, 128, 40, 54, 54, 54, 131, 1414 897, 359, 138, 191, 187, 190, 194, 192, 195, 187, 1415 198, 82, 191, 201, 196, 80, 896, 192, 196, 203, 1416 198, 204, 40, 128, 40, 65, 243, 243, 131, 243, 1417 69, 138, 191, 250, 205, 197, 192, 361, 82, 197, 1418 198, 206, 251, 200, 65, 259, 65, 273, 65, 203, 1419 198, 204, 895, 200, 65, 894, 200, 65, 65, 65, 1420 893, 65, 65, 65, 205, 197, 361, 65, 892, 197, 1421 250, 206, 251, 200, 65, 259, 65, 273, 65, 211, 1422 211, 211, 211, 200, 65, 200, 891, 65, 65, 65, 1423 1424 65, 65, 65, 890, 247, 247, 65, 247, 65, 889, 1425 250, 254, 254, 888, 254, 255, 255, 887, 255, 256, 1426 256, 363, 256, 257, 257, 275, 257, 293, 254, 254, 1427 254, 254, 255, 255, 255, 255, 256, 256, 256, 256, 1428 257, 257, 257, 257, 264, 264, 304, 264, 276, 276, 1429 363, 264, 305, 886, 254, 275, 275, 293, 312, 312, 1430 256, 312, 332, 257, 885, 284, 284, 884, 284, 333, 1431 349, 350, 284, 355, 356, 358, 304, 883, 365, 366, 1432 276, 284, 305, 254, 367, 360, 368, 284, 371, 358, 1433 256, 369, 332, 257, 319, 319, 319, 319, 372, 333, 1434 1435 349, 350, 360, 355, 356, 358, 364, 365, 366, 276, 1436 364, 373, 381, 367, 374, 360, 368, 371, 358, 284, 1437 418, 369, 418, 882, 420, 264, 420, 422, 372, 422, 1438 881, 360, 391, 391, 391, 391, 364, 424, 880, 424, 1439 364, 373, 381, 374, 376, 378, 284, 321, 321, 321, 1440 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 1441 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 1442 321, 321, 370, 376, 378, 321, 370, 321, 321, 321, 1443 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 1444 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, 1445 1446 321, 379, 370, 380, 383, 370, 382, 383, 384, 385, 1447 382, 879, 386, 380, 387, 382, 385, 878, 405, 427, 1448 427, 412, 413, 433, 433, 448, 414, 448, 639, 639, 1449 379, 416, 426, 380, 383, 877, 382, 383, 384, 385, 1450 382, 386, 380, 387, 531, 382, 385, 388, 405, 388, 1451 412, 413, 388, 388, 408, 408, 414, 408, 388, 388, 1452 428, 416, 426, 876, 388, 388, 875, 411, 411, 388, 1453 411, 408, 408, 408, 408, 441, 388, 388, 443, 388, 1454 429, 429, 388, 388, 411, 411, 411, 411, 388, 388, 1455 428, 428, 446, 388, 388, 431, 431, 447, 388, 438, 1456 1457 438, 438, 438, 464, 450, 441, 450, 465, 443, 469, 1458 470, 521, 429, 521, 871, 471, 429, 524, 870, 524, 1459 526, 526, 446, 526, 531, 818, 625, 447, 625, 431, 1460 431, 626, 626, 464, 626, 632, 632, 465, 632, 469, 1461 470, 429, 430, 430, 471, 430, 430, 430, 430, 430, 1462 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 1463 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 1464 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 1465 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 1466 430, 430, 430, 430, 430, 430, 817, 430, 430, 430, 1467 1468 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 1469 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, 1470 430, 430, 430, 430, 430, 430, 432, 432, 432, 432, 1471 451, 452, 453, 457, 456, 432, 432, 432, 432, 432, 1472 432, 454, 459, 460, 472, 461, 451, 452, 473, 458, 1473 453, 474, 457, 461, 454, 816, 456, 475, 476, 477, 1474 432, 432, 459, 460, 478, 432, 432, 432, 432, 432, 1475 432, 458, 480, 472, 458, 482, 451, 452, 473, 481, 1476 453, 474, 457, 461, 454, 456, 486, 475, 476, 477, 1477 484, 487, 459, 460, 478, 815, 485, 488, 489, 814, 1478 1479 458, 491, 480, 458, 462, 482, 492, 493, 481, 462, 1480 462, 462, 462, 494, 495, 462, 486, 496, 497, 484, 1481 462, 487, 498, 499, 462, 485, 488, 462, 489, 462, 1482 500, 491, 462, 501, 502, 503, 492, 493, 505, 462, 1483 462, 462, 462, 494, 495, 462, 506, 496, 497, 504, 1484 462, 507, 498, 499, 462, 504, 462, 508, 462, 509, 1485 500, 462, 510, 501, 502, 503, 511, 513, 505, 512, 1486 514, 515, 516, 517, 519, 506, 518, 519, 519, 504, 1487 507, 520, 638, 638, 638, 504, 546, 508, 527, 509, 1488 528, 529, 510, 533, 543, 544, 511, 513, 512, 813, 1489 1490 514, 515, 516, 517, 519, 518, 519, 519, 631, 522, 1491 522, 520, 522, 525, 525, 546, 525, 719, 527, 719, 1492 528, 529, 812, 533, 543, 544, 522, 522, 522, 522, 1493 525, 525, 525, 525, 534, 534, 811, 534, 534, 534, 1494 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1495 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1496 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1497 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1498 534, 534, 534, 534, 534, 534, 534, 534, 631, 534, 1499 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1500 1501 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1502 534, 534, 534, 534, 534, 534, 534, 534, 535, 535, 1503 545, 548, 550, 810, 539, 539, 549, 552, 557, 551, 1504 554, 549, 552, 553, 809, 559, 558, 640, 640, 548, 1505 551, 548, 556, 554, 727, 727, 550, 556, 557, 558, 1506 545, 559, 535, 535, 536, 536, 536, 536, 539, 539, 1507 553, 549, 552, 536, 536, 536, 536, 536, 536, 548, 1508 551, 548, 555, 554, 562, 550, 560, 556, 557, 558, 1509 800, 559, 800, 563, 569, 561, 566, 562, 564, 553, 1510 555, 571, 560, 536, 536, 536, 536, 536, 536, 540, 1511 1512 540, 540, 540, 561, 565, 563, 566, 564, 540, 540, 1513 540, 540, 540, 540, 569, 567, 568, 562, 570, 572, 1514 555, 571, 560, 575, 568, 808, 565, 576, 577, 565, 1515 578, 579, 580, 561, 563, 567, 566, 564, 540, 540, 1516 540, 540, 540, 540, 582, 584, 581, 570, 572, 583, 1517 587, 806, 588, 575, 568, 565, 576, 577, 565, 578, 1518 589, 579, 580, 581, 590, 567, 594, 595, 599, 581, 1519 799, 597, 598, 601, 582, 584, 602, 603, 583, 604, 1520 587, 588, 605, 606, 796, 607, 608, 609, 611, 589, 1521 612, 613, 615, 581, 590, 594, 614, 595, 599, 581, 1522 1523 597, 598, 601, 616, 617, 619, 602, 603, 618, 604, 1524 620, 605, 621, 606, 607, 608, 620, 609, 611, 622, 1525 612, 613, 615, 627, 628, 614, 629, 636, 636, 641, 1526 651, 643, 616, 646, 617, 619, 647, 618, 644, 784, 1527 620, 669, 621, 650, 652, 620, 770, 660, 647, 622, 1528 651, 648, 627, 652, 628, 629, 650, 649, 646, 641, 1529 643, 636, 636, 637, 637, 637, 637, 653, 644, 648, 1530 669, 660, 637, 637, 637, 637, 637, 637, 647, 649, 1531 651, 654, 655, 652, 656, 653, 650, 646, 654, 655, 1532 657, 658, 659, 656, 728, 728, 665, 659, 663, 648, 1533 1534 660, 657, 637, 637, 637, 637, 637, 637, 649, 658, 1535 661, 658, 662, 664, 665, 653, 667, 662, 654, 655, 1536 668, 661, 670, 656, 666, 663, 664, 659, 671, 666, 1537 672, 657, 674, 668, 676, 679, 667, 761, 680, 658, 1538 681, 658, 683, 687, 665, 679, 685, 662, 688, 689, 1539 691, 661, 670, 692, 663, 693, 664, 671, 695, 666, 1540 672, 674, 696, 668, 676, 679, 667, 680, 697, 699, 1541 681, 700, 683, 687, 679, 685, 701, 702, 688, 689, 1542 691, 704, 692, 705, 707, 693, 706, 695, 709, 710, 1543 711, 696, 713, 714, 733, 715, 716, 697, 717, 699, 1544 1545 700, 720, 721, 722, 722, 701, 722, 702, 730, 736, 1546 704, 733, 734, 705, 707, 706, 737, 734, 709, 710, 1547 711, 735, 713, 714, 715, 736, 716, 739, 717, 740, 1548 738, 720, 721, 726, 726, 726, 735, 741, 743, 745, 1549 737, 733, 738, 744, 747, 742, 746, 734, 748, 739, 1550 729, 750, 749, 740, 742, 736, 744, 752, 746, 751, 1551 743, 741, 747, 725, 745, 749, 735, 753, 751, 737, 1552 748, 750, 738, 754, 753, 752, 755, 763, 739, 764, 1553 754, 765, 740, 756, 742, 755, 744, 763, 746, 743, 1554 741, 766, 747, 745, 756, 749, 767, 768, 751, 748, 1555 1556 769, 750, 771, 772, 753, 752, 773, 763, 774, 764, 1557 754, 765, 775, 776, 778, 755, 777, 763, 780, 724, 1558 782, 766, 786, 787, 756, 767, 768, 788, 791, 769, 1559 793, 797, 771, 772, 718, 798, 773, 802, 774, 802, 1560 804, 712, 775, 776, 778, 777, 790, 790, 780, 782, 1561 820, 790, 786, 787, 790, 819, 788, 790, 791, 708, 1562 793, 797, 790, 794, 794, 798, 823, 820, 794, 804, 1563 821, 794, 824, 822, 794, 821, 790, 790, 825, 819, 1564 826, 790, 823, 827, 790, 828, 831, 790, 822, 830, 1565 825, 790, 832, 794, 794, 833, 824, 820, 794, 831, 1566 1567 834, 794, 826, 835, 794, 821, 829, 827, 819, 828, 1568 838, 830, 823, 836, 841, 829, 694, 840, 822, 842, 1569 825, 843, 832, 844, 833, 824, 845, 847, 849, 831, 1570 834, 826, 835, 850, 852, 856, 827, 857, 828, 838, 1571 830, 858, 690, 836, 841, 829, 840, 860, 842, 865, 1572 852, 843, 844, 861, 862, 859, 845, 847, 849, 859, 1573 863, 864, 859, 850, 852, 856, 857, 866, 684, 868, 1574 869, 858, 859, 872, 867, 678, 860, 867, 865, 852, 1575 873, 898, 873, 861, 862, 859, 903, 867, 899, 859, 1576 863, 864, 859, 900, 901, 902, 905, 866, 868, 869, 1577 1578 906, 859, 872, 907, 867, 898, 908, 867, 910, 911, 1579 912, 642, 913, 914, 915, 903, 867, 916, 899, 917, 1580 919, 920, 921, 900, 901, 902, 905, 922, 635, 923, 1581 906, 924, 926, 907, 898, 927, 908, 910, 928, 911, 1582 912, 913, 930, 914, 915, 931, 932, 916, 917, 933, 1583 919, 920, 921, 934, 935, 937, 936, 922, 923, 938, 1584 924, 938, 926, 965, 940, 927, 940, 928, 966, 967, 1585 968, 969, 930, 936, 970, 931, 932, 971, 933, 972, 1586 973, 974, 934, 935, 937, 975, 936, 976, 978, 633, 1587 979, 980, 965, 981, 982, 983, 984, 985, 966, 967, 1588 1589 968, 969, 936, 987, 970, 989, 990, 971, 972, 973, 1590 991, 974, 992, 993, 975, 995, 999, 976, 978, 979, 1591 980, 996, 981, 998, 982, 983, 984, 985, 1015, 997, 1592 1013, 1014, 987, 997, 989, 990, 1016, 1017, 1019, 1020, 1593 991, 1022, 992, 993, 1023, 995, 999, 1024, 1025, 1026, 1594 996, 1027, 998, 1028, 1030, 1034, 1035, 1015, 997, 1036, 1595 1013, 1014, 997, 1039, 1040, 1016, 1017, 1041, 1019, 1020, 1596 1022, 1042, 1043, 1023, 1044, 1046, 1047, 1024, 1025, 1026, 1597 1048, 1027, 1049, 1028, 1030, 1034, 1035, 1050, 1053, 1036, 1598 1055, 1057, 1039, 1060, 1040, 1063, 1064, 1041, 1065, 1066, 1599 1600 1042, 1043, 1067, 1044, 1046, 1068, 1047, 1069, 1070, 1072, 1601 1048, 1073, 1049, 1074, 1075, 623, 1077, 1050, 1053, 1055, 1602 1081, 1057, 1082, 1060, 1083, 1063, 1064, 1065, 1084, 1066, 1603 1086, 1087, 1067, 1088, 1089, 1068, 1090, 1069, 1070, 1072, 1604 1073, 1093, 1074, 1095, 1075, 1077, 1096, 1097, 1098, 1100, 1605 1081, 1103, 1082, 1083, 1105, 596, 1106, 1107, 1084, 1109, 1606 1086, 1087, 1110, 1088, 1089, 1090, 1157, 1157, 593, 1173, 1607 1093, 1173, 1206, 1095, 1206, 1096, 1097, 1098, 547, 1100, 1608 538, 1103, 1166, 1166, 1105, 1106, 1107, 1166, 490, 1109, 1609 467, 466, 1110, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1610 1611 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1612 1114, 1114, 1114, 1114, 1115, 1115, 1115, 1115, 1115, 1115, 1613 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1614 1115, 1115, 1115, 1115, 1115, 1116, 1116, 1116, 1116, 1116, 1615 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1616 1116, 1116, 1116, 1116, 1116, 1116, 1117, 1117, 1117, 1117, 1617 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1618 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1118, 1118, 1118, 1619 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1620 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1119, 1119, 1621 1622 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1623 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1120, 1624 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1625 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1626 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1627 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1628 1121, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1629 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1630 1122, 1122, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1631 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1632 1633 1123, 1123, 1123, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1634 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1635 1124, 1124, 1124, 1124, 1125, 1125, 1125, 1125, 1125, 1125, 1636 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1637 1125, 1125, 1125, 1125, 1125, 1126, 1126, 1126, 1126, 1126, 1638 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1639 1126, 1126, 1126, 1126, 1126, 1126, 1127, 1127, 1127, 1127, 1640 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1641 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1128, 1128, 1128, 1642 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1643 1644 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1129, 1129, 1645 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1646 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1130, 1647 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1648 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1649 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1650 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1651 1131, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1652 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1653 1132, 1132, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1654 1655 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1656 1133, 1133, 1133, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1657 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1658 1134, 1134, 1134, 1134, 1135, 455, 1135, 437, 1135, 1135, 1659 1213, 1213, 1213, 1135, 1136, 1136, 1136, 1136, 1136, 1136, 1660 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1661 1136, 1136, 1136, 1136, 1137, 410, 1137, 389, 1137, 1137, 1662 1167, 1167, 362, 1137, 1138, 1167, 1138, 1138, 1138, 1138, 1663 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1664 1138, 1138, 1138, 1138, 1138, 1139, 353, 1139, 1139, 1139, 1665 1666 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1667 1139, 1139, 1139, 1139, 1139, 1139, 1140, 1140, 351, 1140, 1668 346, 1140, 1140, 344, 343, 328, 1140, 1141, 315, 1141, 1669 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1670 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1142, 1142, 1671 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1672 1142, 1142, 1142, 314, 1142, 313, 1142, 1142, 1142, 1143, 1673 310, 1143, 1143, 296, 1143, 1143, 1143, 1143, 1143, 1143, 1674 1143, 1143, 1143, 1143, 289, 1143, 288, 1143, 1143, 1143, 1675 1144, 287, 286, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1676 1677 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1678 1144, 1145, 283, 1145, 281, 1145, 1145, 280, 271, 270, 1679 1145, 1146, 267, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1680 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1681 1146, 1146, 1147, 266, 1147, 1147, 1147, 1147, 1147, 1147, 1682 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 249, 1683 1147, 1147, 1147, 1148, 245, 1148, 241, 1148, 239, 1148, 1684 1148, 1148, 1148, 238, 1148, 1148, 236, 235, 234, 1148, 1685 1149, 230, 1149, 1149, 1149, 216, 1149, 1149, 1149, 1149, 1686 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1687 1688 1149, 1150, 215, 1150, 214, 1150, 1150, 210, 183, 182, 1689 1150, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1690 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1691 1151, 1151, 1152, 180, 1152, 1152, 1152, 1152, 1152, 178, 1692 1152, 1152, 1152, 1152, 1152, 1152, 1152, 177, 1152, 174, 1693 1152, 1152, 1152, 1153, 173, 1153, 172, 1153, 1153, 1153, 1694 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 168, 166, 1695 164, 1153, 1153, 1153, 1154, 1154, 1154, 1154, 1154, 1154, 1696 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1697 1154, 1154, 1154, 1154, 1154, 1155, 161, 1155, 1155, 1155, 1698 1699 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1700 1155, 1155, 1155, 1155, 1155, 1155, 1156, 1156, 160, 159, 1701 158, 1156, 1156, 1158, 150, 1158, 1158, 1158, 1158, 1158, 1702 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1703 1158, 1158, 1158, 1158, 1159, 149, 145, 1159, 1159, 1159, 1704 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 144, 1705 1159, 142, 1159, 1160, 137, 1160, 1160, 1160, 1160, 135, 1706 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1707 1160, 1160, 1160, 1160, 1161, 1161, 1161, 1161, 1161, 1161, 1708 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 130, 1709 1710 1161, 126, 1161, 1161, 1161, 1162, 120, 1162, 1162, 1162, 1711 115, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1712 113, 112, 109, 1162, 1162, 1162, 1163, 107, 1163, 105, 1713 1163, 1163, 104, 103, 99, 1163, 1164, 96, 1164, 1164, 1714 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1715 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1165, 95, 1165, 1716 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1717 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1168, 1168, 1718 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1719 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1169, 1720 1721 92, 1169, 90, 1169, 1169, 86, 84, 78, 1169, 1170, 1722 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1723 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1724 1171, 77, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1725 1171, 1171, 1171, 1171, 1171, 1171, 1171, 74, 1171, 1171, 1726 1171, 1172, 71, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1727 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1728 1172, 1172, 1174, 66, 1174, 63, 1174, 1174, 59, 55, 1729 16, 1174, 15, 1174, 1175, 0, 1175, 1175, 1175, 1175, 1730 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1731 1732 1175, 1175, 1175, 1175, 1175, 1176, 0, 1176, 1176, 1176, 1733 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1734 1176, 1176, 1176, 1176, 1176, 1176, 1177, 0, 1177, 1177, 1735 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1736 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1178, 0, 1178, 1737 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1738 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1179, 1179, 1739 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1740 1179, 1179, 1179, 0, 1179, 0, 1179, 1179, 1179, 1180, 1741 0, 1180, 1180, 0, 1180, 1180, 1180, 1180, 1180, 1180, 1742 1743 1180, 1180, 1180, 1180, 0, 1180, 0, 1180, 1180, 1180, 1744 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1745 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1746 1181, 1182, 0, 0, 1182, 1182, 1182, 1182, 1182, 1182, 1747 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1748 1182, 1182, 1183, 0, 1183, 0, 1183, 1183, 0, 0, 1749 0, 1183, 1184, 0, 1184, 0, 1184, 0, 1184, 1184, 1750 1184, 1184, 0, 1184, 1184, 0, 0, 0, 1184, 1185, 1751 0, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1752 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1753 1754 1186, 0, 1186, 0, 1186, 1186, 0, 0, 0, 1186, 1755 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1756 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1757 1187, 1188, 0, 1188, 1188, 1188, 1188, 1188, 0, 1188, 1758 1188, 1188, 1188, 1188, 1188, 1188, 0, 1188, 0, 1188, 1759 1188, 1188, 1189, 0, 1189, 0, 1189, 1189, 1189, 1189, 1760 1189, 1189, 1189, 1189, 1189, 1189, 1189, 0, 0, 0, 1761 1189, 1189, 1189, 1190, 0, 1190, 1190, 1190, 1190, 1190, 1762 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1763 1190, 1190, 1190, 1190, 1191, 0, 1191, 1191, 1191, 1191, 1764 1765 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1766 1191, 1191, 1191, 1191, 1191, 1192, 1192, 0, 0, 0, 1767 1192, 1192, 1193, 0, 1193, 1193, 1193, 1193, 1193, 1193, 1768 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1769 1193, 1193, 1193, 1194, 0, 0, 1194, 1194, 1194, 1194, 1770 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 0, 1194, 1771 0, 1194, 1195, 0, 1195, 1195, 1195, 1195, 0, 1195, 1772 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1773 1195, 1195, 1195, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1774 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 0, 1196, 1775 1776 0, 1196, 1196, 1196, 1197, 0, 1197, 1197, 1197, 0, 1777 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 0, 1778 0, 0, 1197, 1197, 1197, 1198, 0, 1198, 1198, 1198, 1779 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1780 1198, 1198, 1198, 1198, 1198, 1198, 1199, 0, 1199, 1199, 1781 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1782 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1200, 1200, 1200, 1783 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1784 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1201, 0, 1785 1201, 0, 1201, 1201, 0, 0, 0, 1201, 1202, 0, 1786 1787 1202, 0, 1202, 1202, 0, 0, 0, 1202, 1203, 1203, 1788 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1789 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1204, 1790 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1791 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1792 1205, 0, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1793 1205, 1205, 1205, 1205, 1205, 1205, 1205, 0, 1205, 1205, 1794 1205, 1207, 0, 1207, 0, 1207, 1207, 0, 0, 0, 1795 1207, 0, 1207, 1208, 0, 1208, 1208, 1208, 1208, 1208, 1796 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1797 1798 1208, 1208, 1208, 1208, 1209, 0, 1209, 1209, 1209, 1209, 1799 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1800 1209, 1209, 1209, 1209, 1209, 1210, 0, 1210, 1210, 1210, 1801 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1802 1210, 1210, 1210, 1210, 1210, 1210, 1211, 0, 1211, 1211, 1803 0, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1804 1211, 0, 1211, 0, 1211, 1211, 1211, 1212, 1212, 1212, 1805 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1806 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1214, 0, 1807 1214, 0, 1214, 1214, 0, 0, 0, 1214, 1215, 0, 1808 1809 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1810 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1216, 1811 0, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1812 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1813 1217, 1217, 0, 0, 0, 1217, 1217, 1218, 0, 1218, 1814 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1815 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1219, 1219, 1816 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1817 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1220, 1818 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1819 1820 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1821 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1822 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1823 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1824 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1825 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1826 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1827 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1828 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1829 1113, 1113, 1113, 1113, 1113 1830 1831 } ; 1832 1833 static yy_state_type yy_last_accepting_state; 1834 static char *yy_last_accepting_cpos; 1835 1836 extern int yy_flex_debug; 1837 int yy_flex_debug = 0; 1838 1839 /* The intent behind this definition is that it'll catch 1840 * any uses of REJECT which flex missed. 1841 */ 1842 #define REJECT reject_used_but_not_detected 1843 #define yymore() yymore_used_but_not_detected 1844 #define YY_MORE_ADJ 0 1845 #define YY_RESTORE_YY_MORE_OFFSET 1846 char *yytext; 1847 #line 1 "scan.l" 1848 /* scan.l - scanner for flex input -*-C-*- */ 1849 #line 4 "scan.l" 1850 /* Copyright (c) 1990 The Regents of the University of California. */ 1851 /* All rights reserved. */ 1852 1853 /* This code is derived from software contributed to Berkeley by */ 1854 /* Vern Paxson. */ 1855 1856 /* The United States Government has rights in this work pursuant */ 1857 /* to contract no. DE-AC03-76SF00098 between the United States */ 1858 /* Department of Energy and the University of California. */ 1859 1860 /* This file is part of flex. */ 1861 1862 /* Redistribution and use in source and binary forms, with or without */ 1863 /* modification, are permitted provided that the following conditions */ 1864 /* are met: */ 1865 1866 /* 1. Redistributions of source code must retain the above copyright */ 1867 /* notice, this list of conditions and the following disclaimer. */ 1868 /* 2. Redistributions in binary form must reproduce the above copyright */ 1869 /* notice, this list of conditions and the following disclaimer in the */ 1870 /* documentation and/or other materials provided with the distribution. */ 1871 1872 /* Neither the name of the University nor the names of its contributors */ 1873 /* may be used to endorse or promote products derived from this software */ 1874 /* without specific prior written permission. */ 1875 1876 /* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR */ 1877 /* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED */ 1878 /* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR */ 1879 /* PURPOSE. */ 1880 1881 #include "flexdef.h" 1882 #include "parse.h" 1883 extern bool tablesverify, tablesext; 1884 extern int trlcontxt; /* Set in parse.y for each rule. */ 1885 extern const char *escaped_qstart, *escaped_qend; 1886 extern int yylval; 1887 1888 #define M4QSTART "[""[" 1889 #define M4QEND "]""]" 1890 1891 #define ESCAPED_QSTART "[" M4QEND M4QSTART "[" M4QEND M4QSTART 1892 #define ESCAPED_QEND M4QEND "]" M4QSTART M4QEND "]" M4QSTART 1893 1894 #define ACTION_ECHO add_action( yytext ) 1895 #define ACTION_IFDEF(def, should_define) \ 1896 { \ 1897 if ( should_define ) \ 1898 action_define( def, 1 ); \ 1899 } 1900 1901 #define ACTION_ECHO_QSTART add_action (ESCAPED_QSTART) 1902 #define ACTION_ECHO_QEND add_action (ESCAPED_QEND) 1903 1904 #define ACTION_M4_IFDEF(def, should_define) \ 1905 do{ \ 1906 if ( should_define ) \ 1907 buf_m4_define( &m4defs_buf, def, NULL);\ 1908 else \ 1909 buf_m4_undefine( &m4defs_buf, def);\ 1910 } while(0) 1911 1912 #define MARK_END_OF_PROLOG mark_prolog(); 1913 1914 #define YY_DECL \ 1915 int flexscan(void) 1916 1917 #define RETURNCHAR \ 1918 yylval = (unsigned char) yytext[0]; \ 1919 return CHAR; 1920 1921 #define RETURNNAME \ 1922 if(yyleng < MAXLINE) \ 1923 { \ 1924 strncpy( nmstr, yytext, sizeof(nmstr) ); \ 1925 return NAME; \ 1926 } \ 1927 else \ 1928 do { \ 1929 synerr(_("Input line too long\n")); \ 1930 FLEX_EXIT(EXIT_FAILURE); \ 1931 } while (0) 1932 1933 #define PUT_BACK_STRING(str, start) \ 1934 { size_t i = strlen( str ); \ 1935 while ( i > start ) \ 1936 unput((str)[--i]); \ 1937 } 1938 1939 #define CHECK_REJECT(str) \ 1940 if ( all_upper( str ) ) \ 1941 reject = true; 1942 1943 #define CHECK_YYMORE(str) \ 1944 if ( all_lower( str ) ) \ 1945 yymore_used = true; 1946 1947 #define YY_USER_INIT \ 1948 if ( getenv("POSIXLY_CORRECT") ) \ 1949 posix_compat = true; 1950 1951 #define START_CODEBLOCK(x) do { \ 1952 /* Emit the needed line directive... */\ 1953 if (indented_code == false) { \ 1954 linenum++; \ 1955 line_directive_out(NULL, 1); \ 1956 } \ 1957 add_action(M4QSTART); \ 1958 yy_push_state(CODEBLOCK); \ 1959 if ((indented_code = x)) ACTION_ECHO; \ 1960 } while(0) 1961 1962 #define END_CODEBLOCK do { \ 1963 yy_pop_state();\ 1964 add_action(M4QEND); \ 1965 if (!indented_code) line_directive_out(NULL, 0);\ 1966 } while (0) 1967 1968 #line 1968 "<stdout>" 1969 1970 #line 1970 "<stdout>" 1971 1972 #define INITIAL 0 1973 #define SECT2 1 1974 #define SECT2PROLOG 2 1975 #define SECT3 3 1976 #define CODEBLOCK 4 1977 #define PICKUPDEF 5 1978 #define SC 6 1979 #define CARETISBOL 7 1980 #define NUM 8 1981 #define QUOTE 9 1982 #define FIRSTCCL 10 1983 #define CCL 11 1984 #define ACTION 12 1985 #define RECOVER 13 1986 #define COMMENT 14 1987 #define ACTION_STRING 15 1988 #define PERCENT_BRACE_ACTION 16 1989 #define OPTION 17 1990 #define LINEDIR 18 1991 #define CODEBLOCK_MATCH_BRACE 19 1992 #define GROUP_WITH_PARAMS 20 1993 #define GROUP_MINUS_PARAMS 21 1994 #define EXTENDED_COMMENT 22 1995 #define COMMENT_DISCARD 23 1996 #define CODE_COMMENT 24 1997 #define SECT3_NOESCAPE 25 1998 #define CHARACTER_CONSTANT 26 1999 2000 #ifndef YY_NO_UNISTD_H 2001 /* Special case for "unistd.h", since it is non-ANSI. We include it way 2002 * down here because we want the user's section 1 to have been scanned first. 2003 * The user has a chance to override it with an option. 2004 */ 2005 #include <unistd.h> 2006 #endif 2007 2008 #ifndef YY_EXTRA_TYPE 2009 #define YY_EXTRA_TYPE void * 2010 #endif 2011 2012 static int yy_init_globals ( void ); 2013 2014 /* Accessor methods to globals. 2015 These are made visible to non-reentrant scanners for convenience. */ 2016 2017 int yylex_destroy ( void ); 2018 2019 int yyget_debug ( void ); 2020 2021 void yyset_debug ( int debug_flag ); 2022 2023 YY_EXTRA_TYPE yyget_extra ( void ); 2024 2025 void yyset_extra ( YY_EXTRA_TYPE user_defined ); 2026 2027 FILE *yyget_in ( void ); 2028 2029 void yyset_in ( FILE * _in_str ); 2030 2031 FILE *yyget_out ( void ); 2032 2033 void yyset_out ( FILE * _out_str ); 2034 2035 int yyget_leng ( void ); 2036 2037 char *yyget_text ( void ); 2038 2039 int yyget_lineno ( void ); 2040 2041 void yyset_lineno ( int _line_number ); 2042 2043 /* Macros after this point can all be overridden by user definitions in 2044 * section 1. 2045 */ 2046 2047 #ifndef YY_SKIP_YYWRAP 2048 #ifdef __cplusplus 2049 extern "C" int yywrap ( void ); 2050 #else 2051 extern int yywrap ( void ); 2052 #endif 2053 #endif 2054 2055 #ifndef YY_NO_UNPUT 2056 2057 static void yyunput ( int c, char *buf_ptr ); 2058 2059 #endif 2060 2061 #ifndef yytext_ptr 2062 static void yy_flex_strncpy ( char *, const char *, int ); 2063 #endif 2064 2065 #ifdef YY_NEED_STRLEN 2066 static int yy_flex_strlen ( const char * ); 2067 #endif 2068 2069 #ifndef YY_NO_INPUT 2070 #ifdef __cplusplus 2071 static int yyinput ( void ); 2072 #else 2073 static int input ( void ); 2074 #endif 2075 2076 #endif 2077 2078 static int yy_start_stack_ptr = 0; 2079 static int yy_start_stack_depth = 0; 2080 static int *yy_start_stack = NULL; 2081 2082 static void yy_push_state ( int _new_state ); 2083 2084 static void yy_pop_state ( void ); 2085 2086 /* Amount of stuff to slurp up with each read. */ 2087 #ifndef YY_READ_BUF_SIZE 2088 #ifdef __ia64__ 2089 /* On IA-64, the buffer size is 16k, not 8k */ 2090 #define YY_READ_BUF_SIZE 16384 2091 #else 2092 #define YY_READ_BUF_SIZE 8192 2093 #endif /* __ia64__ */ 2094 #endif 2095 2096 /* Copy whatever the last rule matched to the standard output. */ 2097 #ifndef ECHO 2098 /* This used to be an fputs(), but since the string might contain NUL's, 2099 * we now use fwrite(). 2100 */ 2101 #define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0) 2102 #endif 2103 2104 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, 2105 * is returned in "result". 2106 */ 2107 #ifndef YY_INPUT 2108 #define YY_INPUT(buf,result,max_size) \ 2109 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ 2110 { \ 2111 int c = '*'; \ 2112 int n; \ 2113 for ( n = 0; n < max_size && \ 2114 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ 2115 buf[n] = (char) c; \ 2116 if ( c == '\n' ) \ 2117 buf[n++] = (char) c; \ 2118 if ( c == EOF && ferror( yyin ) ) \ 2119 YY_FATAL_ERROR( "input in flex scanner failed" ); \ 2120 result = n; \ 2121 } \ 2122 else \ 2123 { \ 2124 errno=0; \ 2125 while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \ 2126 { \ 2127 if( errno != EINTR) \ 2128 { \ 2129 YY_FATAL_ERROR( "input in flex scanner failed" ); \ 2130 break; \ 2131 } \ 2132 errno=0; \ 2133 clearerr(yyin); \ 2134 } \ 2135 }\ 2136 \ 2137 2138 #endif 2139 2140 /* No semi-colon after return; correct usage is to write "yyterminate();" - 2141 * we don't want an extra ';' after the "return" because that will cause 2142 * some compilers to complain about unreachable statements. 2143 */ 2144 #ifndef yyterminate 2145 #define yyterminate() return YY_NULL 2146 #endif 2147 2148 /* Number of entries by which start-condition stack grows. */ 2149 #ifndef YY_START_STACK_INCR 2150 #define YY_START_STACK_INCR 25 2151 #endif 2152 2153 /* Report a fatal error. */ 2154 #ifndef YY_FATAL_ERROR 2155 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg ) 2156 #endif 2157 2158 /* end tables serialization structures and prototypes */ 2159 2160 /* Default declaration of generated scanner - a define so the user can 2161 * easily add parameters. 2162 */ 2163 #ifndef YY_DECL 2164 #define YY_DECL_IS_OURS 1 2165 2166 extern int yylex (void); 2167 2168 #define YY_DECL int yylex (void) 2169 #endif /* !YY_DECL */ 2170 2171 /* Code executed at the beginning of each rule, after yytext and yyleng 2172 * have been set up. 2173 */ 2174 #ifndef YY_USER_ACTION 2175 #define YY_USER_ACTION 2176 #endif 2177 2178 /* Code executed at the end of each rule. */ 2179 #ifndef YY_BREAK 2180 #define YY_BREAK /*LINTED*/break; 2181 #endif 2182 2183 #define YY_RULE_SETUP \ 2184 if ( yyleng > 0 ) \ 2185 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \ 2186 (yytext[yyleng - 1] == '\n'); \ 2187 YY_USER_ACTION 2188 2189 /** The main scanner function which does all the work. 2190 */ 2191 YY_DECL 2192 { 2193 yy_state_type yy_current_state; 2194 char *yy_cp, *yy_bp; 2195 int yy_act; 2196 2197 if ( !(yy_init) ) 2198 { 2199 (yy_init) = 1; 2200 2201 #ifdef YY_USER_INIT 2202 YY_USER_INIT; 2203 #endif 2204 2205 if ( ! (yy_start) ) 2206 (yy_start) = 1; /* first start state */ 2207 2208 if ( ! yyin ) 2209 yyin = stdin; 2210 2211 if ( ! yyout ) 2212 yyout = stdout; 2213 2214 if ( ! YY_CURRENT_BUFFER ) { 2215 yyensure_buffer_stack (); 2216 YY_CURRENT_BUFFER_LVALUE = 2217 yy_create_buffer( yyin, YY_BUF_SIZE ); 2218 } 2219 2220 yy_load_buffer_state( ); 2221 } 2222 2223 { 2224 #line 159 "scan.l" 2225 2226 #line 161 "scan.l" 2227 static int bracelevel, didadef, indented_code; 2228 static int doing_rule_action = false; 2229 static int option_sense; 2230 2231 int doing_codeblock = false; 2232 int brace_depth=0, brace_start_line=0; 2233 char nmdef[MAXLINE]; 2234 2235 2236 #line 2236 "<stdout>" 2237 2238 while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */ 2239 { 2240 yy_cp = (yy_c_buf_p); 2241 2242 /* Support of yytext. */ 2243 *yy_cp = (yy_hold_char); 2244 2245 /* yy_bp points to the position in yy_ch_buf of the start of 2246 * the current run. 2247 */ 2248 yy_bp = yy_cp; 2249 2250 yy_current_state = (yy_start); 2251 yy_current_state += YY_AT_BOL(); 2252 yy_match: 2253 do 2254 { 2255 YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ; 2256 if ( yy_accept[yy_current_state] ) 2257 { 2258 (yy_last_accepting_state) = yy_current_state; 2259 (yy_last_accepting_cpos) = yy_cp; 2260 } 2261 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 2262 { 2263 yy_current_state = (int) yy_def[yy_current_state]; 2264 if ( yy_current_state >= 1114 ) 2265 yy_c = yy_meta[yy_c]; 2266 } 2267 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; 2268 ++yy_cp; 2269 } 2270 while ( yy_base[yy_current_state] != 4511 ); 2271 2272 yy_find_action: 2273 yy_act = yy_accept[yy_current_state]; 2274 if ( yy_act == 0 ) 2275 { /* have to back up */ 2276 yy_cp = (yy_last_accepting_cpos); 2277 yy_current_state = (yy_last_accepting_state); 2278 yy_act = yy_accept[yy_current_state]; 2279 } 2280 2281 YY_DO_BEFORE_ACTION; 2282 2283 do_action: /* This label is used only to access EOF actions. */ 2284 2285 switch ( yy_act ) 2286 { /* beginning of action switch */ 2287 case 0: /* must back up */ 2288 /* undo the effects of YY_DO_BEFORE_ACTION */ 2289 *yy_cp = (yy_hold_char); 2290 yy_cp = (yy_last_accepting_cpos); 2291 yy_current_state = (yy_last_accepting_state); 2292 goto yy_find_action; 2293 2294 case 1: 2295 YY_RULE_SETUP 2296 #line 171 "scan.l" 2297 START_CODEBLOCK(true); 2298 YY_BREAK 2299 case 2: 2300 YY_RULE_SETUP 2301 #line 172 "scan.l" 2302 add_action("/*[""["); yy_push_state( COMMENT ); 2303 YY_BREAK 2304 case 3: 2305 YY_RULE_SETUP 2306 #line 173 "scan.l" 2307 yy_push_state( LINEDIR ); 2308 YY_BREAK 2309 case 4: 2310 YY_RULE_SETUP 2311 #line 174 "scan.l" 2312 return SCDECL; 2313 YY_BREAK 2314 case 5: 2315 YY_RULE_SETUP 2316 #line 175 "scan.l" 2317 return XSCDECL; 2318 YY_BREAK 2319 case 6: 2320 /* rule 6 can match eol */ 2321 YY_RULE_SETUP 2322 #line 176 "scan.l" 2323 START_CODEBLOCK(false); 2324 YY_BREAK 2325 case 7: 2326 /* rule 7 can match eol */ 2327 YY_RULE_SETUP 2328 #line 177 "scan.l" 2329 { 2330 brace_start_line = linenum; 2331 ++linenum; 2332 buf_linedir( &top_buf, infilename?infilename:"<stdin>", linenum); 2333 brace_depth = 1; 2334 yy_push_state(CODEBLOCK_MATCH_BRACE); 2335 } 2336 YY_BREAK 2337 case 8: 2338 YY_RULE_SETUP 2339 #line 185 "scan.l" 2340 synerr( _("malformed '%top' directive") ); 2341 YY_BREAK 2342 case 9: 2343 YY_RULE_SETUP 2344 #line 187 "scan.l" 2345 /* discard */ 2346 YY_BREAK 2347 case 10: 2348 YY_RULE_SETUP 2349 #line 189 "scan.l" 2350 { 2351 sectnum = 2; 2352 bracelevel = 0; 2353 mark_defs1(); 2354 line_directive_out(NULL, 1); 2355 BEGIN(SECT2PROLOG); 2356 return SECTEND; 2357 } 2358 YY_BREAK 2359 case 11: 2360 /* rule 11 can match eol */ 2361 YY_RULE_SETUP 2362 #line 198 "scan.l" 2363 yytext_is_array = false; ++linenum; 2364 YY_BREAK 2365 case 12: 2366 /* rule 12 can match eol */ 2367 YY_RULE_SETUP 2368 #line 199 "scan.l" 2369 yytext_is_array = true; ++linenum; 2370 YY_BREAK 2371 case 13: 2372 YY_RULE_SETUP 2373 #line 201 "scan.l" 2374 BEGIN(OPTION); return TOK_OPTION; 2375 YY_BREAK 2376 case 14: 2377 /* rule 14 can match eol */ 2378 YY_RULE_SETUP 2379 #line 203 "scan.l" 2380 ++linenum; /* ignore */ 2381 YY_BREAK 2382 case 15: 2383 /* rule 15 can match eol */ 2384 YY_RULE_SETUP 2385 #line 204 "scan.l" 2386 ++linenum; /* ignore */ 2387 YY_BREAK 2388 /* xgettext: no-c-format */ 2389 case 16: 2390 /* rule 16 can match eol */ 2391 YY_RULE_SETUP 2392 #line 207 "scan.l" 2393 synerr( _( "unrecognized '%' directive" ) ); 2394 YY_BREAK 2395 case 17: 2396 YY_RULE_SETUP 2397 #line 209 "scan.l" 2398 { 2399 if(yyleng < MAXLINE) 2400 { 2401 strncpy( nmstr, yytext, sizeof(nmstr) ); 2402 } 2403 else 2404 { 2405 synerr( _("Definition name too long\n")); 2406 FLEX_EXIT(EXIT_FAILURE); 2407 } 2408 2409 didadef = false; 2410 BEGIN(PICKUPDEF); 2411 } 2412 YY_BREAK 2413 case 18: 2414 YY_RULE_SETUP 2415 #line 224 "scan.l" 2416 RETURNNAME; 2417 YY_BREAK 2418 case 19: 2419 /* rule 19 can match eol */ 2420 YY_RULE_SETUP 2421 #line 225 "scan.l" 2422 ++linenum; /* allows blank lines in section 1 */ 2423 YY_BREAK 2424 case 20: 2425 /* rule 20 can match eol */ 2426 YY_RULE_SETUP 2427 #line 226 "scan.l" 2428 ACTION_ECHO; ++linenum; /* maybe end of comment line */ 2429 YY_BREAK 2430 2431 /* */ 2432 case 21: 2433 YY_RULE_SETUP 2434 #line 231 "scan.l" 2435 ACTION_ECHO; 2436 YY_BREAK 2437 case 22: 2438 YY_RULE_SETUP 2439 #line 232 "scan.l" 2440 ACTION_ECHO; 2441 YY_BREAK 2442 case 23: 2443 /* rule 23 can match eol */ 2444 YY_RULE_SETUP 2445 #line 234 "scan.l" 2446 ++linenum; ACTION_ECHO; 2447 YY_BREAK 2448 2449 2450 case 24: 2451 YY_RULE_SETUP 2452 #line 237 "scan.l" 2453 add_action("*/]""]"); yy_pop_state(); 2454 YY_BREAK 2455 2456 2457 case 25: 2458 YY_RULE_SETUP 2459 #line 240 "scan.l" 2460 ACTION_ECHO; yy_pop_state(); 2461 YY_BREAK 2462 2463 2464 /* This is the same as COMMENT, but is discarded rather than output. */ 2465 case 26: 2466 YY_RULE_SETUP 2467 #line 245 "scan.l" 2468 yy_pop_state(); 2469 YY_BREAK 2470 case 27: 2471 YY_RULE_SETUP 2472 #line 246 "scan.l" 2473 ; 2474 YY_BREAK 2475 case 28: 2476 YY_RULE_SETUP 2477 #line 247 "scan.l" 2478 ; 2479 YY_BREAK 2480 case 29: 2481 /* rule 29 can match eol */ 2482 YY_RULE_SETUP 2483 #line 248 "scan.l" 2484 ++linenum; 2485 YY_BREAK 2486 2487 2488 case 30: 2489 YY_RULE_SETUP 2490 #line 252 "scan.l" 2491 yy_pop_state(); 2492 YY_BREAK 2493 case 31: 2494 YY_RULE_SETUP 2495 #line 253 "scan.l" 2496 ; 2497 YY_BREAK 2498 case 32: 2499 /* rule 32 can match eol */ 2500 YY_RULE_SETUP 2501 #line 254 "scan.l" 2502 ++linenum; 2503 YY_BREAK 2504 2505 2506 case 33: 2507 /* rule 33 can match eol */ 2508 YY_RULE_SETUP 2509 #line 258 "scan.l" 2510 yy_pop_state(); 2511 YY_BREAK 2512 case 34: 2513 YY_RULE_SETUP 2514 #line 259 "scan.l" 2515 linenum = myctoi( yytext ); 2516 YY_BREAK 2517 case 35: 2518 YY_RULE_SETUP 2519 #line 261 "scan.l" 2520 { 2521 free(infilename); 2522 infilename = xstrdup(yytext + 1); 2523 infilename[strlen( infilename ) - 1] = '\0'; 2524 } 2525 YY_BREAK 2526 case 36: 2527 YY_RULE_SETUP 2528 #line 266 "scan.l" 2529 /* ignore spurious characters */ 2530 YY_BREAK 2531 2532 2533 case 37: 2534 YY_RULE_SETUP 2535 #line 269 "scan.l" 2536 ACTION_ECHO_QSTART; 2537 YY_BREAK 2538 case 38: 2539 YY_RULE_SETUP 2540 #line 270 "scan.l" 2541 ACTION_ECHO_QEND; 2542 YY_BREAK 2543 2544 2545 case 39: 2546 /* rule 39 can match eol */ 2547 YY_RULE_SETUP 2548 #line 274 "scan.l" 2549 ++linenum; END_CODEBLOCK; 2550 YY_BREAK 2551 case 40: 2552 YY_RULE_SETUP 2553 #line 275 "scan.l" 2554 ACTION_ECHO; 2555 YY_BREAK 2556 case 41: 2557 YY_RULE_SETUP 2558 #line 276 "scan.l" 2559 ACTION_ECHO; 2560 YY_BREAK 2561 case 42: 2562 /* rule 42 can match eol */ 2563 YY_RULE_SETUP 2564 #line 277 "scan.l" 2565 { 2566 ++linenum; 2567 ACTION_ECHO; 2568 if ( indented_code ) END_CODEBLOCK; 2569 } 2570 YY_BREAK 2571 2572 2573 case 43: 2574 YY_RULE_SETUP 2575 #line 285 "scan.l" 2576 { 2577 if( --brace_depth == 0){ 2578 /* TODO: Matched. */ 2579 yy_pop_state(); 2580 }else 2581 buf_strnappend(&top_buf, yytext, yyleng); 2582 } 2583 YY_BREAK 2584 case 44: 2585 YY_RULE_SETUP 2586 #line 293 "scan.l" 2587 { 2588 brace_depth++; 2589 buf_strnappend(&top_buf, yytext, yyleng); 2590 } 2591 YY_BREAK 2592 case 45: 2593 /* rule 45 can match eol */ 2594 YY_RULE_SETUP 2595 #line 298 "scan.l" 2596 { 2597 ++linenum; 2598 buf_strnappend(&top_buf, yytext, yyleng); 2599 } 2600 YY_BREAK 2601 case 46: 2602 YY_RULE_SETUP 2603 #line 303 "scan.l" 2604 buf_strnappend(&top_buf, escaped_qstart, (int) strlen(escaped_qstart)); 2605 YY_BREAK 2606 case 47: 2607 YY_RULE_SETUP 2608 #line 304 "scan.l" 2609 buf_strnappend(&top_buf, escaped_qend, (int) strlen(escaped_qend)); 2610 YY_BREAK 2611 case 48: 2612 YY_RULE_SETUP 2613 #line 305 "scan.l" 2614 { 2615 buf_strnappend(&top_buf, yytext, yyleng); 2616 } 2617 YY_BREAK 2618 case YY_STATE_EOF(CODEBLOCK_MATCH_BRACE): 2619 #line 309 "scan.l" 2620 { 2621 linenum = brace_start_line; 2622 synerr(_("Unmatched '{'")); 2623 yyterminate(); 2624 } 2625 YY_BREAK 2626 2627 2628 case 49: 2629 YY_RULE_SETUP 2630 #line 318 "scan.l" 2631 /* separates name and definition */ 2632 YY_BREAK 2633 case 50: 2634 YY_RULE_SETUP 2635 #line 320 "scan.l" 2636 { 2637 if(yyleng < MAXLINE) 2638 { 2639 strncpy( nmdef, yytext, sizeof(nmdef) ); 2640 } 2641 else 2642 { 2643 format_synerr( _("Definition value for {%s} too long\n"), nmstr); 2644 FLEX_EXIT(EXIT_FAILURE); 2645 } 2646 /* Skip trailing whitespace. */ 2647 { 2648 size_t i = strlen( nmdef ); 2649 while (i > 0 && (nmdef[i-1] == ' ' || nmdef[i-1] == '\t')) 2650 --i; 2651 nmdef[i] = '\0'; 2652 } 2653 2654 ndinstal( nmstr, nmdef ); 2655 didadef = true; 2656 } 2657 YY_BREAK 2658 case 51: 2659 /* rule 51 can match eol */ 2660 YY_RULE_SETUP 2661 #line 342 "scan.l" 2662 { 2663 if ( ! didadef ) 2664 synerr( _( "incomplete name definition" ) ); 2665 BEGIN(INITIAL); 2666 ++linenum; 2667 } 2668 YY_BREAK 2669 2670 2671 case 52: 2672 /* rule 52 can match eol */ 2673 YY_RULE_SETUP 2674 #line 352 "scan.l" 2675 ++linenum; BEGIN(INITIAL); 2676 YY_BREAK 2677 case 53: 2678 YY_RULE_SETUP 2679 #line 353 "scan.l" 2680 option_sense = true; 2681 YY_BREAK 2682 case 54: 2683 YY_RULE_SETUP 2684 #line 355 "scan.l" 2685 return '='; 2686 YY_BREAK 2687 case 55: 2688 YY_RULE_SETUP 2689 #line 357 "scan.l" 2690 option_sense = ! option_sense; 2691 YY_BREAK 2692 case 56: 2693 YY_RULE_SETUP 2694 #line 359 "scan.l" 2695 csize = option_sense ? 128 : 256; 2696 YY_BREAK 2697 case 57: 2698 YY_RULE_SETUP 2699 #line 360 "scan.l" 2700 csize = option_sense ? 256 : 128; 2701 YY_BREAK 2702 case 58: 2703 YY_RULE_SETUP 2704 #line 362 "scan.l" 2705 long_align = option_sense; 2706 YY_BREAK 2707 case 59: 2708 YY_RULE_SETUP 2709 #line 363 "scan.l" 2710 { 2711 ACTION_M4_IFDEF( "M4""_YY_ALWAYS_INTERACTIVE", option_sense ); 2712 interactive = option_sense; 2713 } 2714 YY_BREAK 2715 case 60: 2716 YY_RULE_SETUP 2717 #line 367 "scan.l" 2718 yytext_is_array = option_sense; 2719 YY_BREAK 2720 case 61: 2721 YY_RULE_SETUP 2722 #line 368 "scan.l" 2723 backing_up_report = option_sense; 2724 YY_BREAK 2725 case 62: 2726 YY_RULE_SETUP 2727 #line 369 "scan.l" 2728 interactive = ! option_sense; 2729 YY_BREAK 2730 case 63: 2731 YY_RULE_SETUP 2732 #line 370 "scan.l" 2733 bison_bridge_lval = option_sense; 2734 YY_BREAK 2735 case 64: 2736 YY_RULE_SETUP 2737 #line 371 "scan.l" 2738 { if((bison_bridge_lloc = option_sense)) 2739 bison_bridge_lval = true; 2740 } 2741 YY_BREAK 2742 case 65: 2743 YY_RULE_SETUP 2744 #line 374 "scan.l" 2745 C_plus_plus = option_sense; 2746 YY_BREAK 2747 case 66: 2748 YY_RULE_SETUP 2749 #line 375 "scan.l" 2750 sf_set_case_ins(!option_sense); 2751 YY_BREAK 2752 case 67: 2753 YY_RULE_SETUP 2754 #line 376 "scan.l" 2755 sf_set_case_ins(option_sense); 2756 YY_BREAK 2757 case 68: 2758 YY_RULE_SETUP 2759 #line 377 "scan.l" 2760 ddebug = option_sense; 2761 YY_BREAK 2762 case 69: 2763 YY_RULE_SETUP 2764 #line 378 "scan.l" 2765 spprdflt = ! option_sense; 2766 YY_BREAK 2767 case 70: 2768 YY_RULE_SETUP 2769 #line 379 "scan.l" 2770 useecs = option_sense; 2771 YY_BREAK 2772 case 71: 2773 YY_RULE_SETUP 2774 #line 380 "scan.l" 2775 { 2776 useecs = usemecs = false; 2777 use_read = fullspd = true; 2778 } 2779 YY_BREAK 2780 case 72: 2781 YY_RULE_SETUP 2782 #line 384 "scan.l" 2783 { 2784 useecs = usemecs = false; 2785 use_read = fulltbl = true; 2786 } 2787 YY_BREAK 2788 case 73: 2789 YY_RULE_SETUP 2790 #line 388 "scan.l" 2791 ACTION_IFDEF("YY_NO_INPUT", ! option_sense); 2792 YY_BREAK 2793 case 74: 2794 YY_RULE_SETUP 2795 #line 389 "scan.l" 2796 interactive = option_sense; 2797 YY_BREAK 2798 case 75: 2799 YY_RULE_SETUP 2800 #line 390 "scan.l" 2801 lex_compat = option_sense; 2802 YY_BREAK 2803 case 76: 2804 YY_RULE_SETUP 2805 #line 391 "scan.l" 2806 posix_compat = option_sense; 2807 YY_BREAK 2808 case 77: 2809 YY_RULE_SETUP 2810 #line 392 "scan.l" 2811 gen_line_dirs = option_sense; 2812 YY_BREAK 2813 case 78: 2814 YY_RULE_SETUP 2815 #line 393 "scan.l" 2816 { 2817 ACTION_M4_IFDEF( "M4""_YY_MAIN", option_sense); 2818 /* Override yywrap */ 2819 if( option_sense == true ) 2820 do_yywrap = false; 2821 } 2822 YY_BREAK 2823 case 79: 2824 YY_RULE_SETUP 2825 #line 399 "scan.l" 2826 usemecs = option_sense; 2827 YY_BREAK 2828 case 80: 2829 YY_RULE_SETUP 2830 #line 400 "scan.l" 2831 { 2832 ACTION_M4_IFDEF( "M4""_YY_NEVER_INTERACTIVE", option_sense ); 2833 interactive = !option_sense; 2834 } 2835 YY_BREAK 2836 case 81: 2837 YY_RULE_SETUP 2838 #line 404 "scan.l" 2839 performance_report += option_sense ? 1 : -1; 2840 YY_BREAK 2841 case 82: 2842 YY_RULE_SETUP 2843 #line 405 "scan.l" 2844 yytext_is_array = ! option_sense; 2845 YY_BREAK 2846 case 83: 2847 YY_RULE_SETUP 2848 #line 406 "scan.l" 2849 use_read = option_sense; 2850 YY_BREAK 2851 case 84: 2852 YY_RULE_SETUP 2853 #line 407 "scan.l" 2854 reentrant = option_sense; 2855 YY_BREAK 2856 case 85: 2857 YY_RULE_SETUP 2858 #line 408 "scan.l" 2859 reject_really_used = option_sense; 2860 YY_BREAK 2861 case 86: 2862 YY_RULE_SETUP 2863 #line 409 "scan.l" 2864 ACTION_M4_IFDEF( "M4""_YY_STACK_USED", option_sense ); 2865 YY_BREAK 2866 case 87: 2867 YY_RULE_SETUP 2868 #line 410 "scan.l" 2869 do_stdinit = option_sense; 2870 YY_BREAK 2871 case 88: 2872 YY_RULE_SETUP 2873 #line 411 "scan.l" 2874 use_stdout = option_sense; 2875 YY_BREAK 2876 case 89: 2877 YY_RULE_SETUP 2878 #line 412 "scan.l" 2879 ACTION_IFDEF("YY_NO_UNISTD_H", ! option_sense); 2880 YY_BREAK 2881 case 90: 2882 YY_RULE_SETUP 2883 #line 413 "scan.l" 2884 ACTION_M4_IFDEF("M4""_YY_NO_UNPUT", ! option_sense); 2885 YY_BREAK 2886 case 91: 2887 YY_RULE_SETUP 2888 #line 414 "scan.l" 2889 printstats = option_sense; 2890 YY_BREAK 2891 case 92: 2892 YY_RULE_SETUP 2893 #line 415 "scan.l" 2894 nowarn = ! option_sense; 2895 YY_BREAK 2896 case 93: 2897 YY_RULE_SETUP 2898 #line 416 "scan.l" 2899 do_yylineno = option_sense; ACTION_M4_IFDEF("M4""_YY_USE_LINENO", option_sense); 2900 YY_BREAK 2901 case 94: 2902 YY_RULE_SETUP 2903 #line 417 "scan.l" 2904 yymore_really_used = option_sense; 2905 YY_BREAK 2906 case 95: 2907 YY_RULE_SETUP 2908 #line 418 "scan.l" 2909 do_yywrap = option_sense; 2910 YY_BREAK 2911 case 96: 2912 YY_RULE_SETUP 2913 #line 420 "scan.l" 2914 ACTION_M4_IFDEF("M4""_YY_NO_PUSH_STATE", ! option_sense); 2915 YY_BREAK 2916 case 97: 2917 YY_RULE_SETUP 2918 #line 421 "scan.l" 2919 ACTION_M4_IFDEF("M4""_YY_NO_POP_STATE", ! option_sense); 2920 YY_BREAK 2921 case 98: 2922 YY_RULE_SETUP 2923 #line 422 "scan.l" 2924 ACTION_M4_IFDEF("M4""_YY_NO_TOP_STATE", ! option_sense); 2925 YY_BREAK 2926 case 99: 2927 YY_RULE_SETUP 2928 #line 424 "scan.l" 2929 ACTION_M4_IFDEF("M4""_YY_NO_SCAN_BUFFER", ! option_sense); 2930 YY_BREAK 2931 case 100: 2932 YY_RULE_SETUP 2933 #line 425 "scan.l" 2934 ACTION_M4_IFDEF("M4""_YY_NO_SCAN_BYTES", ! option_sense); 2935 YY_BREAK 2936 case 101: 2937 YY_RULE_SETUP 2938 #line 426 "scan.l" 2939 ACTION_M4_IFDEF("M4""_YY_NO_SCAN_STRING", ! option_sense); 2940 YY_BREAK 2941 case 102: 2942 YY_RULE_SETUP 2943 #line 428 "scan.l" 2944 ACTION_M4_IFDEF("M4""_YY_NO_FLEX_ALLOC", ! option_sense); 2945 YY_BREAK 2946 case 103: 2947 YY_RULE_SETUP 2948 #line 429 "scan.l" 2949 ACTION_M4_IFDEF("M4""_YY_NO_FLEX_REALLOC", ! option_sense); 2950 YY_BREAK 2951 case 104: 2952 YY_RULE_SETUP 2953 #line 430 "scan.l" 2954 ACTION_M4_IFDEF("M4""_YY_NO_FLEX_FREE", ! option_sense); 2955 YY_BREAK 2956 case 105: 2957 YY_RULE_SETUP 2958 #line 432 "scan.l" 2959 ACTION_M4_IFDEF("M4""_YY_NO_GET_DEBUG", ! option_sense); 2960 YY_BREAK 2961 case 106: 2962 YY_RULE_SETUP 2963 #line 433 "scan.l" 2964 ACTION_M4_IFDEF("M4""_YY_NO_SET_DEBUG", ! option_sense); 2965 YY_BREAK 2966 case 107: 2967 YY_RULE_SETUP 2968 #line 434 "scan.l" 2969 ACTION_M4_IFDEF("M4""_YY_NO_GET_EXTRA", ! option_sense); 2970 YY_BREAK 2971 case 108: 2972 YY_RULE_SETUP 2973 #line 435 "scan.l" 2974 ACTION_M4_IFDEF("M4""_YY_NO_SET_EXTRA", ! option_sense); 2975 YY_BREAK 2976 case 109: 2977 YY_RULE_SETUP 2978 #line 436 "scan.l" 2979 ACTION_M4_IFDEF("M4""_YY_NO_GET_LENG", ! option_sense); 2980 YY_BREAK 2981 case 110: 2982 YY_RULE_SETUP 2983 #line 437 "scan.l" 2984 ACTION_M4_IFDEF("M4""_YY_NO_GET_TEXT", ! option_sense); 2985 YY_BREAK 2986 case 111: 2987 YY_RULE_SETUP 2988 #line 438 "scan.l" 2989 ACTION_M4_IFDEF("M4""_YY_NO_GET_LINENO", ! option_sense); 2990 YY_BREAK 2991 case 112: 2992 YY_RULE_SETUP 2993 #line 439 "scan.l" 2994 ACTION_M4_IFDEF("M4""_YY_NO_SET_LINENO", ! option_sense); 2995 YY_BREAK 2996 case 113: 2997 YY_RULE_SETUP 2998 #line 440 "scan.l" 2999 ACTION_M4_IFDEF("M4""_YY_NO_GET_IN", ! option_sense); 3000 YY_BREAK 3001 case 114: 3002 YY_RULE_SETUP 3003 #line 441 "scan.l" 3004 ACTION_M4_IFDEF("M4""_YY_NO_SET_IN", ! option_sense); 3005 YY_BREAK 3006 case 115: 3007 YY_RULE_SETUP 3008 #line 442 "scan.l" 3009 ACTION_M4_IFDEF("M4""_YY_NO_GET_OUT", ! option_sense); 3010 YY_BREAK 3011 case 116: 3012 YY_RULE_SETUP 3013 #line 443 "scan.l" 3014 ACTION_M4_IFDEF("M4""_YY_NO_SET_OUT", ! option_sense); 3015 YY_BREAK 3016 case 117: 3017 YY_RULE_SETUP 3018 #line 444 "scan.l" 3019 ACTION_M4_IFDEF("M4""_YY_NO_GET_LVAL", ! option_sense); 3020 YY_BREAK 3021 case 118: 3022 YY_RULE_SETUP 3023 #line 445 "scan.l" 3024 ACTION_M4_IFDEF("M4""_YY_NO_SET_LVAL", ! option_sense); 3025 YY_BREAK 3026 case 119: 3027 YY_RULE_SETUP 3028 #line 446 "scan.l" 3029 ACTION_M4_IFDEF("M4""_YY_NO_GET_LLOC", ! option_sense); 3030 YY_BREAK 3031 case 120: 3032 YY_RULE_SETUP 3033 #line 447 "scan.l" 3034 ACTION_M4_IFDEF("M4""_YY_NO_SET_LLOC", ! option_sense); 3035 YY_BREAK 3036 case 121: 3037 YY_RULE_SETUP 3038 #line 449 "scan.l" 3039 return TOK_EXTRA_TYPE; 3040 YY_BREAK 3041 case 122: 3042 YY_RULE_SETUP 3043 #line 450 "scan.l" 3044 return TOK_OUTFILE; 3045 YY_BREAK 3046 case 123: 3047 YY_RULE_SETUP 3048 #line 451 "scan.l" 3049 return TOK_PREFIX; 3050 YY_BREAK 3051 case 124: 3052 YY_RULE_SETUP 3053 #line 452 "scan.l" 3054 return TOK_YYCLASS; 3055 YY_BREAK 3056 case 125: 3057 YY_RULE_SETUP 3058 #line 453 "scan.l" 3059 return TOK_HEADER_FILE; 3060 YY_BREAK 3061 case 126: 3062 YY_RULE_SETUP 3063 #line 454 "scan.l" 3064 return TOK_TABLES_FILE; 3065 YY_BREAK 3066 case 127: 3067 YY_RULE_SETUP 3068 #line 455 "scan.l" 3069 { 3070 tablesverify = option_sense; 3071 if(!tablesext && option_sense) 3072 tablesext = true; 3073 } 3074 YY_BREAK 3075 case 128: 3076 YY_RULE_SETUP 3077 #line 462 "scan.l" 3078 { 3079 if(yyleng-1 < MAXLINE) 3080 { 3081 strncpy( nmstr, yytext + 1, sizeof(nmstr) ); 3082 } 3083 else 3084 { 3085 synerr( _("Option line too long\n")); 3086 FLEX_EXIT(EXIT_FAILURE); 3087 } 3088 nmstr[strlen( nmstr ) - 1] = '\0'; 3089 return NAME; 3090 } 3091 YY_BREAK 3092 case 129: 3093 YY_RULE_SETUP 3094 #line 476 "scan.l" 3095 { 3096 format_synerr( _( "unrecognized %%option: %s" ), 3097 yytext ); 3098 BEGIN(RECOVER); 3099 } 3100 YY_BREAK 3101 3102 case 130: 3103 /* rule 130 can match eol */ 3104 YY_RULE_SETUP 3105 #line 483 "scan.l" 3106 ++linenum; BEGIN(INITIAL); 3107 YY_BREAK 3108 3109 case 131: 3110 YY_RULE_SETUP 3111 #line 487 "scan.l" 3112 ++bracelevel; yyless( 2 ); /* eat only %{ */ 3113 YY_BREAK 3114 case 132: 3115 YY_RULE_SETUP 3116 #line 488 "scan.l" 3117 --bracelevel; yyless( 2 ); /* eat only %} */ 3118 YY_BREAK 3119 case 133: 3120 YY_RULE_SETUP 3121 #line 490 "scan.l" 3122 START_CODEBLOCK(true); /* indented code in prolog */ 3123 YY_BREAK 3124 case 134: 3125 YY_RULE_SETUP 3126 #line 492 "scan.l" 3127 { 3128 /* non-indented code */ 3129 if ( bracelevel <= 0 ) { 3130 /* not in %{ ... %} */ 3131 yyless( 0 ); /* put it all back */ 3132 yy_set_bol( 1 ); 3133 mark_prolog(); 3134 BEGIN(SECT2); 3135 } else { 3136 START_CODEBLOCK(true); 3137 } 3138 } 3139 YY_BREAK 3140 case 135: 3141 YY_RULE_SETUP 3142 #line 505 "scan.l" 3143 ACTION_ECHO; 3144 YY_BREAK 3145 case 136: 3146 /* rule 136 can match eol */ 3147 YY_RULE_SETUP 3148 #line 506 "scan.l" 3149 ++linenum; ACTION_ECHO; 3150 YY_BREAK 3151 case YY_STATE_EOF(SECT2PROLOG): 3152 #line 508 "scan.l" 3153 { 3154 mark_prolog(); 3155 sectnum = 0; 3156 yyterminate(); /* to stop the parser */ 3157 } 3158 YY_BREAK 3159 3160 3161 case 137: 3162 /* rule 137 can match eol */ 3163 YY_RULE_SETUP 3164 #line 516 "scan.l" 3165 ++linenum; /* allow blank lines in section 2 */ 3166 YY_BREAK 3167 case 138: 3168 YY_RULE_SETUP 3169 #line 518 "scan.l" 3170 { 3171 indented_code = false; 3172 doing_codeblock = true; 3173 bracelevel = 1; 3174 BEGIN(PERCENT_BRACE_ACTION); 3175 } 3176 YY_BREAK 3177 case 139: 3178 YY_RULE_SETUP 3179 #line 525 "scan.l" 3180 { 3181 /* Allow "<" to appear in (?x) patterns. */ 3182 if (!sf_skip_ws()) 3183 BEGIN(SC); 3184 return '<'; 3185 } 3186 YY_BREAK 3187 case 140: 3188 YY_RULE_SETUP 3189 #line 531 "scan.l" 3190 return '^'; 3191 YY_BREAK 3192 case 141: 3193 YY_RULE_SETUP 3194 #line 532 "scan.l" 3195 BEGIN(QUOTE); return '"'; 3196 YY_BREAK 3197 case 142: 3198 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ 3199 (yy_c_buf_p) = yy_cp = yy_bp + 1; 3200 YY_DO_BEFORE_ACTION; /* set up yytext again */ 3201 YY_RULE_SETUP 3202 #line 533 "scan.l" 3203 { 3204 BEGIN(NUM); 3205 if ( lex_compat || posix_compat ) 3206 return BEGIN_REPEAT_POSIX; 3207 else 3208 return BEGIN_REPEAT_FLEX; 3209 } 3210 YY_BREAK 3211 case 143: 3212 /* rule 143 can match eol */ 3213 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ 3214 YY_LINENO_REWIND_TO(yy_bp + 1); 3215 (yy_c_buf_p) = yy_cp = yy_bp + 1; 3216 YY_DO_BEFORE_ACTION; /* set up yytext again */ 3217 YY_RULE_SETUP 3218 #line 540 "scan.l" 3219 return '$'; 3220 YY_BREAK 3221 case 144: 3222 YY_RULE_SETUP 3223 #line 542 "scan.l" 3224 { 3225 bracelevel = 1; 3226 BEGIN(PERCENT_BRACE_ACTION); 3227 3228 if ( in_rule ) 3229 { 3230 doing_rule_action = true; 3231 in_rule = false; 3232 return '\n'; 3233 } 3234 } 3235 YY_BREAK 3236 case 145: 3237 /* rule 145 can match eol */ 3238 YY_RULE_SETUP 3239 #line 553 "scan.l" 3240 { 3241 if (sf_skip_ws()){ 3242 /* We're in the middle of a (?x: ) pattern. */ 3243 /* Push back everything starting at the "|" */ 3244 int amt = (int) (strchr (yytext, '|') - yytext); 3245 yyless(amt); 3246 } 3247 else { 3248 add_action("]""]"); 3249 continued_action = true; 3250 ++linenum; 3251 return '\n'; 3252 } 3253 } 3254 YY_BREAK 3255 case 146: 3256 YY_RULE_SETUP 3257 #line 568 "scan.l" 3258 { 3259 3260 if (sf_skip_ws()){ 3261 /* We're in the middle of a (?x: ) pattern. */ 3262 yy_push_state(COMMENT_DISCARD); 3263 } 3264 else{ 3265 yyless( yyleng - 2 ); /* put back '/', '*' */ 3266 bracelevel = 0; 3267 continued_action = false; 3268 BEGIN(ACTION); 3269 } 3270 } 3271 YY_BREAK 3272 case 147: 3273 YY_RULE_SETUP 3274 #line 582 "scan.l" 3275 /* allow indented rules */ ; 3276 YY_BREAK 3277 case 148: 3278 YY_RULE_SETUP 3279 #line 584 "scan.l" 3280 { 3281 if (sf_skip_ws()){ 3282 /* We're in the middle of a (?x: ) pattern. */ 3283 } 3284 else{ 3285 /* This rule is separate from the one below because 3286 * otherwise we get variable trailing context, so 3287 * we can't build the scanner using -{f,F}. 3288 */ 3289 bracelevel = 0; 3290 continued_action = false; 3291 BEGIN(ACTION); 3292 3293 if ( in_rule ) 3294 { 3295 doing_rule_action = true; 3296 in_rule = false; 3297 return '\n'; 3298 } 3299 } 3300 } 3301 YY_BREAK 3302 case 149: 3303 /* rule 149 can match eol */ 3304 YY_RULE_SETUP 3305 #line 606 "scan.l" 3306 { 3307 if (sf_skip_ws()){ 3308 /* We're in the middle of a (?x: ) pattern. */ 3309 ++linenum; 3310 } 3311 else{ 3312 bracelevel = 0; 3313 continued_action = false; 3314 BEGIN(ACTION); 3315 unput( '\n' ); /* so <ACTION> sees it */ 3316 3317 if ( in_rule ) 3318 { 3319 doing_rule_action = true; 3320 in_rule = false; 3321 return '\n'; 3322 } 3323 } 3324 } 3325 YY_BREAK 3326 case 150: 3327 #line 627 "scan.l" 3328 case 151: 3329 YY_RULE_SETUP 3330 #line 627 "scan.l" 3331 return EOF_OP; 3332 YY_BREAK 3333 case 152: 3334 YY_RULE_SETUP 3335 #line 629 "scan.l" 3336 { 3337 sectnum = 3; 3338 BEGIN(no_section3_escape ? SECT3_NOESCAPE : SECT3); 3339 outn("/* Begin user sect3 */"); 3340 yyterminate(); /* to stop the parser */ 3341 3342 } 3343 YY_BREAK 3344 case 153: 3345 YY_RULE_SETUP 3346 #line 637 "scan.l" 3347 { 3348 int cclval; 3349 3350 if(yyleng < MAXLINE) 3351 { 3352 strncpy( nmstr, yytext, sizeof(nmstr) ); 3353 } 3354 else 3355 { 3356 synerr( _("Input line too long\n")); 3357 FLEX_EXIT(EXIT_FAILURE); 3358 } 3359 3360 /* Check to see if we've already encountered this 3361 * ccl. 3362 */ 3363 if (0 /* <--- This "0" effectively disables the reuse of a 3364 * character class (purely based on its source text). 3365 * The reason it was disabled is so yacc/bison can parse 3366 * ccl operations, such as ccl difference and union. 3367 */ 3368 && (cclval = ccllookup( nmstr )) != 0 ) 3369 { 3370 if ( input() != ']' ) 3371 synerr( _( "bad character class" ) ); 3372 3373 yylval = cclval; 3374 ++cclreuse; 3375 return PREVCCL; 3376 } 3377 else 3378 { 3379 /* We fudge a bit. We know that this ccl will 3380 * soon be numbered as lastccl + 1 by cclinit. 3381 */ 3382 cclinstal( nmstr, lastccl + 1 ); 3383 3384 /* Push back everything but the leading bracket 3385 * so the ccl can be rescanned. 3386 */ 3387 yyless( 1 ); 3388 3389 BEGIN(FIRSTCCL); 3390 return '['; 3391 } 3392 } 3393 YY_BREAK 3394 case 154: 3395 YY_RULE_SETUP 3396 #line 683 "scan.l" 3397 return CCL_OP_DIFF; 3398 YY_BREAK 3399 case 155: 3400 YY_RULE_SETUP 3401 #line 684 "scan.l" 3402 return CCL_OP_UNION; 3403 YY_BREAK 3404 /* Check for :space: at the end of the rule so we don't 3405 * wrap the expanded regex in '(' ')' -- breaking trailing 3406 * context. 3407 */ 3408 case 156: 3409 /* rule 156 can match eol */ 3410 YY_RULE_SETUP 3411 #line 691 "scan.l" 3412 { 3413 char *nmdefptr; 3414 int end_is_ws, end_ch; 3415 3416 end_ch = yytext[yyleng-1]; 3417 end_is_ws = end_ch != '}' ? 1 : 0; 3418 3419 if(yyleng-1 < MAXLINE) 3420 { 3421 strncpy( nmstr, yytext + 1, sizeof(nmstr) ); 3422 } 3423 else 3424 { 3425 synerr( _("Input line too long\n")); 3426 FLEX_EXIT(EXIT_FAILURE); 3427 } 3428 nmstr[yyleng - 2 - end_is_ws] = '\0'; /* chop trailing brace */ 3429 3430 if ( (nmdefptr = ndlookup( nmstr )) == NULL ) 3431 format_synerr( 3432 _( "undefined definition {%s}" ), 3433 nmstr ); 3434 3435 else 3436 { /* push back name surrounded by ()'s */ 3437 size_t len = strlen( nmdefptr ); 3438 if (end_is_ws) 3439 unput(end_ch); 3440 3441 if ( lex_compat || nmdefptr[0] == '^' || 3442 (len > 0 && nmdefptr[len - 1] == '$') 3443 || (end_is_ws && trlcontxt && !sf_skip_ws())) 3444 { /* don't use ()'s after all */ 3445 PUT_BACK_STRING(nmdefptr, 0); 3446 3447 if ( nmdefptr[0] == '^' ) 3448 BEGIN(CARETISBOL); 3449 } 3450 3451 else 3452 { 3453 unput(')'); 3454 PUT_BACK_STRING(nmdefptr, 0); 3455 unput('('); 3456 } 3457 } 3458 } 3459 YY_BREAK 3460 case 157: 3461 YY_RULE_SETUP 3462 #line 739 "scan.l" 3463 { 3464 if (sf_skip_ws()) 3465 yy_push_state(COMMENT_DISCARD); 3466 else{ 3467 /* Push back the "*" and return "/" as usual. */ 3468 yyless(1); 3469 return '/'; 3470 } 3471 } 3472 YY_BREAK 3473 case 158: 3474 YY_RULE_SETUP 3475 #line 749 "scan.l" 3476 { 3477 if (lex_compat || posix_compat){ 3478 /* Push back the "?#" and treat it like a normal parens. */ 3479 yyless(1); 3480 sf_push(); 3481 return '('; 3482 } 3483 else 3484 yy_push_state(EXTENDED_COMMENT); 3485 } 3486 YY_BREAK 3487 case 159: 3488 YY_RULE_SETUP 3489 #line 759 "scan.l" 3490 { 3491 sf_push(); 3492 if (lex_compat || posix_compat) 3493 /* Push back the "?" and treat it like a normal parens. */ 3494 yyless(1); 3495 else 3496 BEGIN(GROUP_WITH_PARAMS); 3497 return '('; 3498 } 3499 YY_BREAK 3500 case 160: 3501 YY_RULE_SETUP 3502 #line 768 "scan.l" 3503 sf_push(); return '('; 3504 YY_BREAK 3505 case 161: 3506 YY_RULE_SETUP 3507 #line 769 "scan.l" 3508 { 3509 if (_sf_top_ix > 0) { 3510 sf_pop(); 3511 return ')'; 3512 } else 3513 synerr(_("unbalanced parenthesis")); 3514 } 3515 YY_BREAK 3516 case 162: 3517 YY_RULE_SETUP 3518 #line 777 "scan.l" 3519 return (unsigned char) yytext[0]; 3520 YY_BREAK 3521 case 163: 3522 YY_RULE_SETUP 3523 #line 778 "scan.l" 3524 RETURNCHAR; 3525 YY_BREAK 3526 3527 3528 case 164: 3529 /* rule 164 can match eol */ 3530 YY_RULE_SETUP 3531 #line 783 "scan.l" 3532 ++linenum; /* Allow blank lines & continuations */ 3533 YY_BREAK 3534 case 165: 3535 YY_RULE_SETUP 3536 #line 784 "scan.l" 3537 return (unsigned char) yytext[0]; 3538 YY_BREAK 3539 case 166: 3540 YY_RULE_SETUP 3541 #line 785 "scan.l" 3542 BEGIN(SECT2); return '>'; 3543 YY_BREAK 3544 case 167: 3545 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ 3546 (yy_c_buf_p) = yy_cp = yy_bp + 1; 3547 YY_DO_BEFORE_ACTION; /* set up yytext again */ 3548 YY_RULE_SETUP 3549 #line 786 "scan.l" 3550 BEGIN(CARETISBOL); return '>'; 3551 YY_BREAK 3552 case 168: 3553 YY_RULE_SETUP 3554 #line 787 "scan.l" 3555 RETURNNAME; 3556 YY_BREAK 3557 case 169: 3558 YY_RULE_SETUP 3559 #line 788 "scan.l" 3560 { 3561 format_synerr( _( "bad <start condition>: %s" ), 3562 yytext ); 3563 } 3564 YY_BREAK 3565 3566 case 170: 3567 YY_RULE_SETUP 3568 #line 794 "scan.l" 3569 BEGIN(SECT2); return '^'; 3570 YY_BREAK 3571 3572 case 171: 3573 YY_RULE_SETUP 3574 #line 798 "scan.l" 3575 RETURNCHAR; 3576 YY_BREAK 3577 case 172: 3578 YY_RULE_SETUP 3579 #line 799 "scan.l" 3580 BEGIN(SECT2); return '"'; 3581 YY_BREAK 3582 case 173: 3583 /* rule 173 can match eol */ 3584 YY_RULE_SETUP 3585 #line 801 "scan.l" 3586 { 3587 synerr( _( "missing quote" ) ); 3588 BEGIN(SECT2); 3589 ++linenum; 3590 return '"'; 3591 } 3592 YY_BREAK 3593 3594 3595 case 174: 3596 YY_RULE_SETUP 3597 #line 810 "scan.l" 3598 BEGIN(SECT2); 3599 YY_BREAK 3600 case 175: 3601 YY_RULE_SETUP 3602 #line 811 "scan.l" 3603 BEGIN(GROUP_MINUS_PARAMS); 3604 YY_BREAK 3605 case 176: 3606 YY_RULE_SETUP 3607 #line 812 "scan.l" 3608 sf_set_case_ins(1); 3609 YY_BREAK 3610 case 177: 3611 YY_RULE_SETUP 3612 #line 813 "scan.l" 3613 sf_set_dot_all(1); 3614 YY_BREAK 3615 case 178: 3616 YY_RULE_SETUP 3617 #line 814 "scan.l" 3618 sf_set_skip_ws(1); 3619 YY_BREAK 3620 3621 3622 case 179: 3623 YY_RULE_SETUP 3624 #line 817 "scan.l" 3625 BEGIN(SECT2); 3626 YY_BREAK 3627 case 180: 3628 YY_RULE_SETUP 3629 #line 818 "scan.l" 3630 sf_set_case_ins(0); 3631 YY_BREAK 3632 case 181: 3633 YY_RULE_SETUP 3634 #line 819 "scan.l" 3635 sf_set_dot_all(0); 3636 YY_BREAK 3637 case 182: 3638 YY_RULE_SETUP 3639 #line 820 "scan.l" 3640 sf_set_skip_ws(0); 3641 YY_BREAK 3642 3643 3644 case 183: 3645 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ 3646 (yy_c_buf_p) = yy_cp = yy_bp + 1; 3647 YY_DO_BEFORE_ACTION; /* set up yytext again */ 3648 YY_RULE_SETUP 3649 #line 824 "scan.l" 3650 BEGIN(CCL); return '^'; 3651 YY_BREAK 3652 case 184: 3653 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ 3654 (yy_c_buf_p) = yy_cp = yy_bp + 1; 3655 YY_DO_BEFORE_ACTION; /* set up yytext again */ 3656 YY_RULE_SETUP 3657 #line 825 "scan.l" 3658 return '^'; 3659 YY_BREAK 3660 case 185: 3661 YY_RULE_SETUP 3662 #line 826 "scan.l" 3663 BEGIN(CCL); RETURNCHAR; 3664 YY_BREAK 3665 3666 3667 case 186: 3668 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ 3669 (yy_c_buf_p) = yy_cp = yy_bp + 1; 3670 YY_DO_BEFORE_ACTION; /* set up yytext again */ 3671 YY_RULE_SETUP 3672 #line 830 "scan.l" 3673 return '-'; 3674 YY_BREAK 3675 case 187: 3676 YY_RULE_SETUP 3677 #line 831 "scan.l" 3678 RETURNCHAR; 3679 YY_BREAK 3680 case 188: 3681 YY_RULE_SETUP 3682 #line 832 "scan.l" 3683 BEGIN(SECT2); return ']'; 3684 YY_BREAK 3685 case 189: 3686 /* rule 189 can match eol */ 3687 YY_RULE_SETUP 3688 #line 833 "scan.l" 3689 { 3690 synerr( _( "bad character class" ) ); 3691 BEGIN(SECT2); 3692 return ']'; 3693 } 3694 YY_BREAK 3695 3696 3697 case 190: 3698 YY_RULE_SETUP 3699 #line 841 "scan.l" 3700 BEGIN(CCL); return CCE_ALNUM; 3701 YY_BREAK 3702 case 191: 3703 YY_RULE_SETUP 3704 #line 842 "scan.l" 3705 BEGIN(CCL); return CCE_ALPHA; 3706 YY_BREAK 3707 case 192: 3708 YY_RULE_SETUP 3709 #line 843 "scan.l" 3710 BEGIN(CCL); return CCE_BLANK; 3711 YY_BREAK 3712 case 193: 3713 YY_RULE_SETUP 3714 #line 844 "scan.l" 3715 BEGIN(CCL); return CCE_CNTRL; 3716 YY_BREAK 3717 case 194: 3718 YY_RULE_SETUP 3719 #line 845 "scan.l" 3720 BEGIN(CCL); return CCE_DIGIT; 3721 YY_BREAK 3722 case 195: 3723 YY_RULE_SETUP 3724 #line 846 "scan.l" 3725 BEGIN(CCL); return CCE_GRAPH; 3726 YY_BREAK 3727 case 196: 3728 YY_RULE_SETUP 3729 #line 847 "scan.l" 3730 BEGIN(CCL); return CCE_LOWER; 3731 YY_BREAK 3732 case 197: 3733 YY_RULE_SETUP 3734 #line 848 "scan.l" 3735 BEGIN(CCL); return CCE_PRINT; 3736 YY_BREAK 3737 case 198: 3738 YY_RULE_SETUP 3739 #line 849 "scan.l" 3740 BEGIN(CCL); return CCE_PUNCT; 3741 YY_BREAK 3742 case 199: 3743 YY_RULE_SETUP 3744 #line 850 "scan.l" 3745 BEGIN(CCL); return CCE_SPACE; 3746 YY_BREAK 3747 case 200: 3748 YY_RULE_SETUP 3749 #line 851 "scan.l" 3750 BEGIN(CCL); return CCE_UPPER; 3751 YY_BREAK 3752 case 201: 3753 YY_RULE_SETUP 3754 #line 852 "scan.l" 3755 BEGIN(CCL); return CCE_XDIGIT; 3756 YY_BREAK 3757 case 202: 3758 YY_RULE_SETUP 3759 #line 854 "scan.l" 3760 BEGIN(CCL); return CCE_NEG_ALNUM; 3761 YY_BREAK 3762 case 203: 3763 YY_RULE_SETUP 3764 #line 855 "scan.l" 3765 BEGIN(CCL); return CCE_NEG_ALPHA; 3766 YY_BREAK 3767 case 204: 3768 YY_RULE_SETUP 3769 #line 856 "scan.l" 3770 BEGIN(CCL); return CCE_NEG_BLANK; 3771 YY_BREAK 3772 case 205: 3773 YY_RULE_SETUP 3774 #line 857 "scan.l" 3775 BEGIN(CCL); return CCE_NEG_CNTRL; 3776 YY_BREAK 3777 case 206: 3778 YY_RULE_SETUP 3779 #line 858 "scan.l" 3780 BEGIN(CCL); return CCE_NEG_DIGIT; 3781 YY_BREAK 3782 case 207: 3783 YY_RULE_SETUP 3784 #line 859 "scan.l" 3785 BEGIN(CCL); return CCE_NEG_GRAPH; 3786 YY_BREAK 3787 case 208: 3788 YY_RULE_SETUP 3789 #line 860 "scan.l" 3790 BEGIN(CCL); return CCE_NEG_LOWER; 3791 YY_BREAK 3792 case 209: 3793 YY_RULE_SETUP 3794 #line 861 "scan.l" 3795 BEGIN(CCL); return CCE_NEG_PRINT; 3796 YY_BREAK 3797 case 210: 3798 YY_RULE_SETUP 3799 #line 862 "scan.l" 3800 BEGIN(CCL); return CCE_NEG_PUNCT; 3801 YY_BREAK 3802 case 211: 3803 YY_RULE_SETUP 3804 #line 863 "scan.l" 3805 BEGIN(CCL); return CCE_NEG_SPACE; 3806 YY_BREAK 3807 case 212: 3808 YY_RULE_SETUP 3809 #line 864 "scan.l" 3810 BEGIN(CCL); return CCE_NEG_UPPER; 3811 YY_BREAK 3812 case 213: 3813 YY_RULE_SETUP 3814 #line 865 "scan.l" 3815 BEGIN(CCL); return CCE_NEG_XDIGIT; 3816 YY_BREAK 3817 case 214: 3818 YY_RULE_SETUP 3819 #line 866 "scan.l" 3820 { 3821 format_synerr( 3822 _( "bad character class expression: %s" ), 3823 yytext ); 3824 BEGIN(CCL); return CCE_ALNUM; 3825 } 3826 YY_BREAK 3827 3828 3829 case 215: 3830 YY_RULE_SETUP 3831 #line 875 "scan.l" 3832 { 3833 yylval = myctoi( yytext ); 3834 return NUMBER; 3835 } 3836 YY_BREAK 3837 case 216: 3838 YY_RULE_SETUP 3839 #line 880 "scan.l" 3840 return ','; 3841 YY_BREAK 3842 case 217: 3843 YY_RULE_SETUP 3844 #line 881 "scan.l" 3845 { 3846 BEGIN(SECT2); 3847 if ( lex_compat || posix_compat ) 3848 return END_REPEAT_POSIX; 3849 else 3850 return END_REPEAT_FLEX; 3851 } 3852 YY_BREAK 3853 case 218: 3854 YY_RULE_SETUP 3855 #line 889 "scan.l" 3856 { 3857 synerr( _( "bad character inside {}'s" ) ); 3858 BEGIN(SECT2); 3859 return '}'; 3860 } 3861 YY_BREAK 3862 case 219: 3863 /* rule 219 can match eol */ 3864 YY_RULE_SETUP 3865 #line 895 "scan.l" 3866 { 3867 synerr( _( "missing }" ) ); 3868 BEGIN(SECT2); 3869 ++linenum; 3870 return '}'; 3871 } 3872 YY_BREAK 3873 3874 3875 case 220: 3876 YY_RULE_SETUP 3877 #line 905 "scan.l" 3878 bracelevel = 0; 3879 YY_BREAK 3880 case 221: 3881 YY_RULE_SETUP 3882 #line 907 "scan.l" 3883 ACTION_ECHO; yy_push_state( CODE_COMMENT ); 3884 YY_BREAK 3885 3886 case 222: 3887 YY_RULE_SETUP 3888 #line 910 "scan.l" 3889 { 3890 ACTION_ECHO; 3891 CHECK_REJECT(yytext); 3892 } 3893 YY_BREAK 3894 case 223: 3895 YY_RULE_SETUP 3896 #line 914 "scan.l" 3897 { 3898 ACTION_ECHO; 3899 CHECK_YYMORE(yytext); 3900 } 3901 YY_BREAK 3902 3903 case 224: 3904 YY_RULE_SETUP 3905 #line 920 "scan.l" 3906 ACTION_ECHO; 3907 YY_BREAK 3908 case 225: 3909 /* rule 225 can match eol */ 3910 YY_RULE_SETUP 3911 #line 921 "scan.l" 3912 { 3913 ++linenum; 3914 ACTION_ECHO; 3915 if (bracelevel <= 0 || (doing_codeblock && indented_code)) { 3916 if ( doing_rule_action ) 3917 add_action( "\tYY_BREAK]""]\n" ); 3918 3919 doing_rule_action = doing_codeblock = false; 3920 BEGIN(SECT2); 3921 } 3922 } 3923 YY_BREAK 3924 3925 /* Reject and YYmore() are checked for above, in PERCENT_BRACE_ACTION */ 3926 3927 case 226: 3928 YY_RULE_SETUP 3929 #line 937 "scan.l" 3930 ACTION_ECHO; ++bracelevel; 3931 YY_BREAK 3932 case 227: 3933 YY_RULE_SETUP 3934 #line 938 "scan.l" 3935 ACTION_ECHO; --bracelevel; 3936 YY_BREAK 3937 case 228: 3938 YY_RULE_SETUP 3939 #line 939 "scan.l" 3940 ACTION_ECHO; 3941 YY_BREAK 3942 case 229: 3943 YY_RULE_SETUP 3944 #line 940 "scan.l" 3945 ACTION_ECHO; 3946 YY_BREAK 3947 case 230: 3948 YY_RULE_SETUP 3949 #line 941 "scan.l" 3950 ACTION_ECHO; /* character constant */ 3951 YY_BREAK 3952 case 231: 3953 YY_RULE_SETUP 3954 #line 942 "scan.l" 3955 ACTION_ECHO; BEGIN(CHARACTER_CONSTANT); 3956 YY_BREAK 3957 case 232: 3958 YY_RULE_SETUP 3959 #line 943 "scan.l" 3960 ACTION_ECHO; BEGIN(ACTION_STRING); 3961 YY_BREAK 3962 case 233: 3963 /* rule 233 can match eol */ 3964 YY_RULE_SETUP 3965 #line 944 "scan.l" 3966 { 3967 ++linenum; 3968 ACTION_ECHO; 3969 if (bracelevel <= 0) { 3970 if ( doing_rule_action ) 3971 add_action( "\tYY_BREAK]""]\n" ); 3972 3973 doing_rule_action = false; 3974 BEGIN(SECT2); 3975 } 3976 } 3977 YY_BREAK 3978 case 234: 3979 YY_RULE_SETUP 3980 #line 955 "scan.l" 3981 ACTION_ECHO; 3982 YY_BREAK 3983 3984 3985 case 235: 3986 YY_RULE_SETUP 3987 #line 959 "scan.l" 3988 ACTION_ECHO; 3989 YY_BREAK 3990 case 236: 3991 YY_RULE_SETUP 3992 #line 960 "scan.l" 3993 ACTION_ECHO; BEGIN(ACTION); 3994 YY_BREAK 3995 3996 3997 case 237: 3998 YY_RULE_SETUP 3999 #line 963 "scan.l" 4000 ACTION_ECHO; 4001 YY_BREAK 4002 case 238: 4003 YY_RULE_SETUP 4004 #line 964 "scan.l" 4005 ACTION_ECHO; BEGIN(ACTION); 4006 YY_BREAK 4007 4008 4009 case 239: 4010 /* rule 239 can match eol */ 4011 YY_RULE_SETUP 4012 #line 967 "scan.l" 4013 ACTION_ECHO; 4014 YY_BREAK 4015 case 240: 4016 /* rule 240 can match eol */ 4017 YY_RULE_SETUP 4018 #line 968 "scan.l" 4019 ACTION_ECHO; 4020 YY_BREAK 4021 case 241: 4022 /* rule 241 can match eol */ 4023 YY_RULE_SETUP 4024 #line 969 "scan.l" 4025 ++linenum; ACTION_ECHO; if (bracelevel <= 0) { BEGIN(SECT2); } else { BEGIN(ACTION); } 4026 YY_BREAK 4027 case 242: 4028 YY_RULE_SETUP 4029 #line 970 "scan.l" 4030 ACTION_ECHO; 4031 YY_BREAK 4032 4033 case YY_STATE_EOF(COMMENT): 4034 case YY_STATE_EOF(CODE_COMMENT): 4035 case YY_STATE_EOF(COMMENT_DISCARD): 4036 case YY_STATE_EOF(ACTION): 4037 case YY_STATE_EOF(ACTION_STRING): 4038 case YY_STATE_EOF(CHARACTER_CONSTANT): 4039 #line 973 "scan.l" 4040 { 4041 synerr( _( "EOF encountered inside an action" ) ); 4042 yyterminate(); 4043 } 4044 YY_BREAK 4045 case YY_STATE_EOF(EXTENDED_COMMENT): 4046 case YY_STATE_EOF(GROUP_WITH_PARAMS): 4047 case YY_STATE_EOF(GROUP_MINUS_PARAMS): 4048 #line 978 "scan.l" 4049 { 4050 synerr( _( "EOF encountered inside pattern" ) ); 4051 yyterminate(); 4052 } 4053 YY_BREAK 4054 case 243: 4055 YY_RULE_SETUP 4056 #line 983 "scan.l" 4057 { 4058 yylval = myesc( (unsigned char *) yytext ); 4059 4060 if ( YY_START == FIRSTCCL ) 4061 BEGIN(CCL); 4062 4063 return CHAR; 4064 } 4065 YY_BREAK 4066 4067 case 244: 4068 YY_RULE_SETUP 4069 #line 993 "scan.l" 4070 fputs(escaped_qstart, yyout); 4071 YY_BREAK 4072 case 245: 4073 YY_RULE_SETUP 4074 #line 994 "scan.l" 4075 fputs(escaped_qend, yyout); 4076 YY_BREAK 4077 case 246: 4078 /* rule 246 can match eol */ 4079 YY_RULE_SETUP 4080 #line 995 "scan.l" 4081 ECHO; 4082 YY_BREAK 4083 case 247: 4084 YY_RULE_SETUP 4085 #line 996 "scan.l" 4086 ECHO; 4087 YY_BREAK 4088 case YY_STATE_EOF(SECT3): 4089 #line 997 "scan.l" 4090 { 4091 sectnum = 0; 4092 yyterminate(); 4093 } 4094 YY_BREAK 4095 4096 4097 case 248: 4098 YY_RULE_SETUP 4099 #line 1003 "scan.l" 4100 fprintf(yyout, "[""[%s]""]", escaped_qstart); 4101 YY_BREAK 4102 case 249: 4103 YY_RULE_SETUP 4104 #line 1004 "scan.l" 4105 fprintf(yyout, "[""[%s]""]", escaped_qend); 4106 YY_BREAK 4107 case 250: 4108 /* rule 250 can match eol */ 4109 YY_RULE_SETUP 4110 #line 1005 "scan.l" 4111 ECHO; 4112 YY_BREAK 4113 case 251: 4114 YY_RULE_SETUP 4115 #line 1006 "scan.l" 4116 ECHO; 4117 YY_BREAK 4118 case YY_STATE_EOF(SECT3_NOESCAPE): 4119 #line 1007 "scan.l" 4120 { 4121 sectnum = 0; 4122 yyterminate(); 4123 } 4124 YY_BREAK 4125 4126 case 252: 4127 /* rule 252 can match eol */ 4128 YY_RULE_SETUP 4129 #line 1012 "scan.l" 4130 format_synerr( _( "bad character: %s" ), yytext ); 4131 YY_BREAK 4132 case 253: 4133 YY_RULE_SETUP 4134 #line 1014 "scan.l" 4135 YY_FATAL_ERROR( "flex scanner jammed" ); 4136 YY_BREAK 4137 #line 4137 "<stdout>" 4138 case YY_STATE_EOF(INITIAL): 4139 case YY_STATE_EOF(SECT2): 4140 case YY_STATE_EOF(CODEBLOCK): 4141 case YY_STATE_EOF(PICKUPDEF): 4142 case YY_STATE_EOF(SC): 4143 case YY_STATE_EOF(CARETISBOL): 4144 case YY_STATE_EOF(NUM): 4145 case YY_STATE_EOF(QUOTE): 4146 case YY_STATE_EOF(FIRSTCCL): 4147 case YY_STATE_EOF(CCL): 4148 case YY_STATE_EOF(RECOVER): 4149 case YY_STATE_EOF(PERCENT_BRACE_ACTION): 4150 case YY_STATE_EOF(OPTION): 4151 case YY_STATE_EOF(LINEDIR): 4152 yyterminate(); 4153 4154 case YY_END_OF_BUFFER: 4155 { 4156 /* Amount of text matched not including the EOB char. */ 4157 int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; 4158 4159 /* Undo the effects of YY_DO_BEFORE_ACTION. */ 4160 *yy_cp = (yy_hold_char); 4161 YY_RESTORE_YY_MORE_OFFSET 4162 4163 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) 4164 { 4165 /* We're scanning a new file or input source. It's 4166 * possible that this happened because the user 4167 * just pointed yyin at a new source and called 4168 * yylex(). If so, then we have to assure 4169 * consistency between YY_CURRENT_BUFFER and our 4170 * globals. Here is the right place to do so, because 4171 * this is the first action (other than possibly a 4172 * back-up) that will match for the new input source. 4173 */ 4174 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; 4175 YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin; 4176 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; 4177 } 4178 4179 /* Note that here we test for yy_c_buf_p "<=" to the position 4180 * of the first EOB in the buffer, since yy_c_buf_p will 4181 * already have been incremented past the NUL character 4182 * (since all states make transitions on EOB to the 4183 * end-of-buffer state). Contrast this with the test 4184 * in input(). 4185 */ 4186 if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) 4187 { /* This was really a NUL. */ 4188 yy_state_type yy_next_state; 4189 4190 (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; 4191 4192 yy_current_state = yy_get_previous_state( ); 4193 4194 /* Okay, we're now positioned to make the NUL 4195 * transition. We couldn't have 4196 * yy_get_previous_state() go ahead and do it 4197 * for us because it doesn't know how to deal 4198 * with the possibility of jamming (and we don't 4199 * want to build jamming into it because then it 4200 * will run more slowly). 4201 */ 4202 4203 yy_next_state = yy_try_NUL_trans( yy_current_state ); 4204 4205 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 4206 4207 if ( yy_next_state ) 4208 { 4209 /* Consume the NUL. */ 4210 yy_cp = ++(yy_c_buf_p); 4211 yy_current_state = yy_next_state; 4212 goto yy_match; 4213 } 4214 4215 else 4216 { 4217 yy_cp = (yy_c_buf_p); 4218 goto yy_find_action; 4219 } 4220 } 4221 4222 else switch ( yy_get_next_buffer( ) ) 4223 { 4224 case EOB_ACT_END_OF_FILE: 4225 { 4226 (yy_did_buffer_switch_on_eof) = 0; 4227 4228 if ( yywrap( ) ) 4229 { 4230 /* Note: because we've taken care in 4231 * yy_get_next_buffer() to have set up 4232 * yytext, we can now set up 4233 * yy_c_buf_p so that if some total 4234 * hoser (like flex itself) wants to 4235 * call the scanner after we return the 4236 * YY_NULL, it'll still work - another 4237 * YY_NULL will get returned. 4238 */ 4239 (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; 4240 4241 yy_act = YY_STATE_EOF(YY_START); 4242 goto do_action; 4243 } 4244 4245 else 4246 { 4247 if ( ! (yy_did_buffer_switch_on_eof) ) 4248 YY_NEW_FILE; 4249 } 4250 break; 4251 } 4252 4253 case EOB_ACT_CONTINUE_SCAN: 4254 (yy_c_buf_p) = 4255 (yytext_ptr) + yy_amount_of_matched_text; 4256 4257 yy_current_state = yy_get_previous_state( ); 4258 4259 yy_cp = (yy_c_buf_p); 4260 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 4261 goto yy_match; 4262 4263 case EOB_ACT_LAST_MATCH: 4264 (yy_c_buf_p) = 4265 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; 4266 4267 yy_current_state = yy_get_previous_state( ); 4268 4269 yy_cp = (yy_c_buf_p); 4270 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 4271 goto yy_find_action; 4272 } 4273 break; 4274 } 4275 4276 default: 4277 YY_FATAL_ERROR( 4278 "fatal flex scanner internal error--no action found" ); 4279 } /* end of action switch */ 4280 } /* end of scanning one token */ 4281 } /* end of user's declarations */ 4282 } /* end of yylex */ 4283 4284 /* yy_get_next_buffer - try to read in a new buffer 4285 * 4286 * Returns a code representing an action: 4287 * EOB_ACT_LAST_MATCH - 4288 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position 4289 * EOB_ACT_END_OF_FILE - end of file 4290 */ 4291 static int yy_get_next_buffer (void) 4292 { 4293 char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; 4294 char *source = (yytext_ptr); 4295 int number_to_move, i; 4296 int ret_val; 4297 4298 if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) 4299 YY_FATAL_ERROR( 4300 "fatal flex scanner internal error--end of buffer missed" ); 4301 4302 if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) 4303 { /* Don't try to fill the buffer, so this is an EOF. */ 4304 if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) 4305 { 4306 /* We matched a single character, the EOB, so 4307 * treat this as a final EOF. 4308 */ 4309 return EOB_ACT_END_OF_FILE; 4310 } 4311 4312 else 4313 { 4314 /* We matched some text prior to the EOB, first 4315 * process it. 4316 */ 4317 return EOB_ACT_LAST_MATCH; 4318 } 4319 } 4320 4321 /* Try to read more data. */ 4322 4323 /* First move last chars to start of buffer. */ 4324 number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr) - 1); 4325 4326 for ( i = 0; i < number_to_move; ++i ) 4327 *(dest++) = *(source++); 4328 4329 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) 4330 /* don't do the read, it's not guaranteed to return an EOF, 4331 * just force an EOF 4332 */ 4333 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; 4334 4335 else 4336 { 4337 int num_to_read = 4338 YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; 4339 4340 while ( num_to_read <= 0 ) 4341 { /* Not enough room in the buffer - grow it. */ 4342 4343 /* just a shorter name for the current buffer */ 4344 YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE; 4345 4346 int yy_c_buf_p_offset = 4347 (int) ((yy_c_buf_p) - b->yy_ch_buf); 4348 4349 if ( b->yy_is_our_buffer ) 4350 { 4351 int new_size = b->yy_buf_size * 2; 4352 4353 if ( new_size <= 0 ) 4354 b->yy_buf_size += b->yy_buf_size / 8; 4355 else 4356 b->yy_buf_size *= 2; 4357 4358 b->yy_ch_buf = (char *) 4359 /* Include room in for 2 EOB chars. */ 4360 yyrealloc( (void *) b->yy_ch_buf, 4361 (yy_size_t) (b->yy_buf_size + 2) ); 4362 } 4363 else 4364 /* Can't grow it, we don't own it. */ 4365 b->yy_ch_buf = NULL; 4366 4367 if ( ! b->yy_ch_buf ) 4368 YY_FATAL_ERROR( 4369 "fatal error - scanner input buffer overflow" ); 4370 4371 (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset]; 4372 4373 num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - 4374 number_to_move - 1; 4375 4376 } 4377 4378 if ( num_to_read > YY_READ_BUF_SIZE ) 4379 num_to_read = YY_READ_BUF_SIZE; 4380 4381 /* Read in more data. */ 4382 YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), 4383 (yy_n_chars), num_to_read ); 4384 4385 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 4386 } 4387 4388 if ( (yy_n_chars) == 0 ) 4389 { 4390 if ( number_to_move == YY_MORE_ADJ ) 4391 { 4392 ret_val = EOB_ACT_END_OF_FILE; 4393 yyrestart( yyin ); 4394 } 4395 4396 else 4397 { 4398 ret_val = EOB_ACT_LAST_MATCH; 4399 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = 4400 YY_BUFFER_EOF_PENDING; 4401 } 4402 } 4403 4404 else 4405 ret_val = EOB_ACT_CONTINUE_SCAN; 4406 4407 if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { 4408 /* Extend the array by 50%, plus the number we really need. */ 4409 int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); 4410 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc( 4411 (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size ); 4412 if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) 4413 YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); 4414 /* "- 2" to take care of EOB's */ 4415 YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2); 4416 } 4417 4418 (yy_n_chars) += number_to_move; 4419 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; 4420 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; 4421 4422 (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; 4423 4424 return ret_val; 4425 } 4426 4427 /* yy_get_previous_state - get the state just before the EOB char was reached */ 4428 4429 static yy_state_type yy_get_previous_state (void) 4430 { 4431 yy_state_type yy_current_state; 4432 char *yy_cp; 4433 4434 yy_current_state = (yy_start); 4435 yy_current_state += YY_AT_BOL(); 4436 4437 for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) 4438 { 4439 YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); 4440 if ( yy_accept[yy_current_state] ) 4441 { 4442 (yy_last_accepting_state) = yy_current_state; 4443 (yy_last_accepting_cpos) = yy_cp; 4444 } 4445 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 4446 { 4447 yy_current_state = (int) yy_def[yy_current_state]; 4448 if ( yy_current_state >= 1114 ) 4449 yy_c = yy_meta[yy_c]; 4450 } 4451 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; 4452 } 4453 4454 return yy_current_state; 4455 } 4456 4457 /* yy_try_NUL_trans - try to make a transition on the NUL character 4458 * 4459 * synopsis 4460 * next_state = yy_try_NUL_trans( current_state ); 4461 */ 4462 static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state ) 4463 { 4464 int yy_is_jam; 4465 char *yy_cp = (yy_c_buf_p); 4466 4467 YY_CHAR yy_c = 1; 4468 if ( yy_accept[yy_current_state] ) 4469 { 4470 (yy_last_accepting_state) = yy_current_state; 4471 (yy_last_accepting_cpos) = yy_cp; 4472 } 4473 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 4474 { 4475 yy_current_state = (int) yy_def[yy_current_state]; 4476 if ( yy_current_state >= 1114 ) 4477 yy_c = yy_meta[yy_c]; 4478 } 4479 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; 4480 yy_is_jam = (yy_current_state == 1113); 4481 4482 return yy_is_jam ? 0 : yy_current_state; 4483 } 4484 4485 #ifndef YY_NO_UNPUT 4486 4487 static void yyunput (int c, char * yy_bp ) 4488 { 4489 char *yy_cp; 4490 4491 yy_cp = (yy_c_buf_p); 4492 4493 /* undo effects of setting up yytext */ 4494 *yy_cp = (yy_hold_char); 4495 4496 if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) 4497 { /* need to shift things up to make room */ 4498 /* +2 for EOB chars. */ 4499 int number_to_move = (yy_n_chars) + 2; 4500 char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ 4501 YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; 4502 char *source = 4503 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]; 4504 4505 while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) 4506 *--dest = *--source; 4507 4508 yy_cp += (int) (dest - source); 4509 yy_bp += (int) (dest - source); 4510 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = 4511 (yy_n_chars) = (int) YY_CURRENT_BUFFER_LVALUE->yy_buf_size; 4512 4513 if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) 4514 YY_FATAL_ERROR( "flex scanner push-back overflow" ); 4515 } 4516 4517 *--yy_cp = (char) c; 4518 4519 (yytext_ptr) = yy_bp; 4520 (yy_hold_char) = *yy_cp; 4521 (yy_c_buf_p) = yy_cp; 4522 } 4523 4524 #endif 4525 4526 #ifndef YY_NO_INPUT 4527 #ifdef __cplusplus 4528 static int yyinput (void) 4529 #else 4530 static int input (void) 4531 #endif 4532 4533 { 4534 int c; 4535 4536 *(yy_c_buf_p) = (yy_hold_char); 4537 4538 if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) 4539 { 4540 /* yy_c_buf_p now points to the character we want to return. 4541 * If this occurs *before* the EOB characters, then it's a 4542 * valid NUL; if not, then we've hit the end of the buffer. 4543 */ 4544 if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) 4545 /* This was really a NUL. */ 4546 *(yy_c_buf_p) = '\0'; 4547 4548 else 4549 { /* need more input */ 4550 int offset = (int) ((yy_c_buf_p) - (yytext_ptr)); 4551 ++(yy_c_buf_p); 4552 4553 switch ( yy_get_next_buffer( ) ) 4554 { 4555 case EOB_ACT_LAST_MATCH: 4556 /* This happens because yy_g_n_b() 4557 * sees that we've accumulated a 4558 * token and flags that we need to 4559 * try matching the token before 4560 * proceeding. But for input(), 4561 * there's no matching to consider. 4562 * So convert the EOB_ACT_LAST_MATCH 4563 * to EOB_ACT_END_OF_FILE. 4564 */ 4565 4566 /* Reset buffer status. */ 4567 yyrestart( yyin ); 4568 4569 /*FALLTHROUGH*/ 4570 4571 case EOB_ACT_END_OF_FILE: 4572 { 4573 if ( yywrap( ) ) 4574 #ifdef YY_FLEX_LEX_COMPAT 4575 return 0; 4576 #else 4577 return EOF; 4578 #endif 4579 4580 if ( ! (yy_did_buffer_switch_on_eof) ) 4581 YY_NEW_FILE; 4582 #ifdef __cplusplus 4583 return yyinput(); 4584 #else 4585 return input(); 4586 #endif 4587 } 4588 4589 case EOB_ACT_CONTINUE_SCAN: 4590 (yy_c_buf_p) = (yytext_ptr) + offset; 4591 break; 4592 } 4593 } 4594 } 4595 4596 c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */ 4597 *(yy_c_buf_p) = '\0'; /* preserve yytext */ 4598 (yy_hold_char) = *++(yy_c_buf_p); 4599 4600 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = (c == '\n'); 4601 4602 return c; 4603 } 4604 #endif /* ifndef YY_NO_INPUT */ 4605 4606 /** Immediately switch to a different input stream. 4607 * @param input_file A readable stream. 4608 * 4609 * @note This function does not reset the start condition to @c INITIAL . 4610 */ 4611 void yyrestart (FILE * input_file ) 4612 { 4613 4614 if ( ! YY_CURRENT_BUFFER ){ 4615 yyensure_buffer_stack (); 4616 YY_CURRENT_BUFFER_LVALUE = 4617 yy_create_buffer( yyin, YY_BUF_SIZE ); 4618 } 4619 4620 yy_init_buffer( YY_CURRENT_BUFFER, input_file ); 4621 yy_load_buffer_state( ); 4622 } 4623 4624 /** Switch to a different input buffer. 4625 * @param new_buffer The new input buffer. 4626 * 4627 */ 4628 void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ) 4629 { 4630 4631 /* TODO. We should be able to replace this entire function body 4632 * with 4633 * yypop_buffer_state(); 4634 * yypush_buffer_state(new_buffer); 4635 */ 4636 yyensure_buffer_stack (); 4637 if ( YY_CURRENT_BUFFER == new_buffer ) 4638 return; 4639 4640 if ( YY_CURRENT_BUFFER ) 4641 { 4642 /* Flush out information for old buffer. */ 4643 *(yy_c_buf_p) = (yy_hold_char); 4644 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); 4645 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 4646 } 4647 4648 YY_CURRENT_BUFFER_LVALUE = new_buffer; 4649 yy_load_buffer_state( ); 4650 4651 /* We don't actually know whether we did this switch during 4652 * EOF (yywrap()) processing, but the only time this flag 4653 * is looked at is after yywrap() is called, so it's safe 4654 * to go ahead and always set it. 4655 */ 4656 (yy_did_buffer_switch_on_eof) = 1; 4657 } 4658 4659 static void yy_load_buffer_state (void) 4660 { 4661 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; 4662 (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; 4663 yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; 4664 (yy_hold_char) = *(yy_c_buf_p); 4665 } 4666 4667 /** Allocate and initialize an input buffer state. 4668 * @param file A readable stream. 4669 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE. 4670 * 4671 * @return the allocated buffer state. 4672 */ 4673 YY_BUFFER_STATE yy_create_buffer (FILE * file, int size ) 4674 { 4675 YY_BUFFER_STATE b; 4676 4677 b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) ); 4678 if ( ! b ) 4679 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); 4680 4681 b->yy_buf_size = size; 4682 4683 /* yy_ch_buf has to be 2 characters longer than the size given because 4684 * we need to put in 2 end-of-buffer characters. 4685 */ 4686 b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2) ); 4687 if ( ! b->yy_ch_buf ) 4688 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); 4689 4690 b->yy_is_our_buffer = 1; 4691 4692 yy_init_buffer( b, file ); 4693 4694 return b; 4695 } 4696 4697 /** Destroy the buffer. 4698 * @param b a buffer created with yy_create_buffer() 4699 * 4700 */ 4701 void yy_delete_buffer (YY_BUFFER_STATE b ) 4702 { 4703 4704 if ( ! b ) 4705 return; 4706 4707 if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ 4708 YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; 4709 4710 if ( b->yy_is_our_buffer ) 4711 yyfree( (void *) b->yy_ch_buf ); 4712 4713 yyfree( (void *) b ); 4714 } 4715 4716 /* Initializes or reinitializes a buffer. 4717 * This function is sometimes called more than once on the same buffer, 4718 * such as during a yyrestart() or at EOF. 4719 */ 4720 static void yy_init_buffer (YY_BUFFER_STATE b, FILE * file ) 4721 4722 { 4723 int oerrno = errno; 4724 4725 yy_flush_buffer( b ); 4726 4727 b->yy_input_file = file; 4728 b->yy_fill_buffer = 1; 4729 4730 /* If b is the current buffer, then yy_init_buffer was _probably_ 4731 * called from yyrestart() or through yy_get_next_buffer. 4732 * In that case, we don't want to reset the lineno or column. 4733 */ 4734 if (b != YY_CURRENT_BUFFER){ 4735 b->yy_bs_lineno = 1; 4736 b->yy_bs_column = 0; 4737 } 4738 4739 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0; 4740 4741 errno = oerrno; 4742 } 4743 4744 /** Discard all buffered characters. On the next scan, YY_INPUT will be called. 4745 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER. 4746 * 4747 */ 4748 void yy_flush_buffer (YY_BUFFER_STATE b ) 4749 { 4750 if ( ! b ) 4751 return; 4752 4753 b->yy_n_chars = 0; 4754 4755 /* We always need two end-of-buffer characters. The first causes 4756 * a transition to the end-of-buffer state. The second causes 4757 * a jam in that state. 4758 */ 4759 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR; 4760 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR; 4761 4762 b->yy_buf_pos = &b->yy_ch_buf[0]; 4763 4764 b->yy_at_bol = 1; 4765 b->yy_buffer_status = YY_BUFFER_NEW; 4766 4767 if ( b == YY_CURRENT_BUFFER ) 4768 yy_load_buffer_state( ); 4769 } 4770 4771 /** Pushes the new state onto the stack. The new state becomes 4772 * the current state. This function will allocate the stack 4773 * if necessary. 4774 * @param new_buffer The new state. 4775 * 4776 */ 4777 void yypush_buffer_state (YY_BUFFER_STATE new_buffer ) 4778 { 4779 if (new_buffer == NULL) 4780 return; 4781 4782 yyensure_buffer_stack(); 4783 4784 /* This block is copied from yy_switch_to_buffer. */ 4785 if ( YY_CURRENT_BUFFER ) 4786 { 4787 /* Flush out information for old buffer. */ 4788 *(yy_c_buf_p) = (yy_hold_char); 4789 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); 4790 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 4791 } 4792 4793 /* Only push if top exists. Otherwise, replace top. */ 4794 if (YY_CURRENT_BUFFER) 4795 (yy_buffer_stack_top)++; 4796 YY_CURRENT_BUFFER_LVALUE = new_buffer; 4797 4798 /* copied from yy_switch_to_buffer. */ 4799 yy_load_buffer_state( ); 4800 (yy_did_buffer_switch_on_eof) = 1; 4801 } 4802 4803 /** Removes and deletes the top of the stack, if present. 4804 * The next element becomes the new top. 4805 * 4806 */ 4807 void yypop_buffer_state (void) 4808 { 4809 if (!YY_CURRENT_BUFFER) 4810 return; 4811 4812 yy_delete_buffer(YY_CURRENT_BUFFER ); 4813 YY_CURRENT_BUFFER_LVALUE = NULL; 4814 if ((yy_buffer_stack_top) > 0) 4815 --(yy_buffer_stack_top); 4816 4817 if (YY_CURRENT_BUFFER) { 4818 yy_load_buffer_state( ); 4819 (yy_did_buffer_switch_on_eof) = 1; 4820 } 4821 } 4822 4823 /* Allocates the stack if it does not exist. 4824 * Guarantees space for at least one push. 4825 */ 4826 static void yyensure_buffer_stack (void) 4827 { 4828 yy_size_t num_to_alloc; 4829 4830 if (!(yy_buffer_stack)) { 4831 4832 /* First allocation is just for 2 elements, since we don't know if this 4833 * scanner will even need a stack. We use 2 instead of 1 to avoid an 4834 * immediate realloc on the next call. 4835 */ 4836 num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */ 4837 (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc 4838 (num_to_alloc * sizeof(struct yy_buffer_state*) 4839 ); 4840 if ( ! (yy_buffer_stack) ) 4841 YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); 4842 4843 memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); 4844 4845 (yy_buffer_stack_max) = num_to_alloc; 4846 (yy_buffer_stack_top) = 0; 4847 return; 4848 } 4849 4850 if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ 4851 4852 /* Increase the buffer to prepare for a possible push. */ 4853 yy_size_t grow_size = 8 /* arbitrary grow size */; 4854 4855 num_to_alloc = (yy_buffer_stack_max) + grow_size; 4856 (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc 4857 ((yy_buffer_stack), 4858 num_to_alloc * sizeof(struct yy_buffer_state*) 4859 ); 4860 if ( ! (yy_buffer_stack) ) 4861 YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); 4862 4863 /* zero only the new slots.*/ 4864 memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); 4865 (yy_buffer_stack_max) = num_to_alloc; 4866 } 4867 } 4868 4869 /** Setup the input buffer state to scan directly from a user-specified character buffer. 4870 * @param base the character buffer 4871 * @param size the size in bytes of the character buffer 4872 * 4873 * @return the newly allocated buffer state object. 4874 */ 4875 YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) 4876 { 4877 YY_BUFFER_STATE b; 4878 4879 if ( size < 2 || 4880 base[size-2] != YY_END_OF_BUFFER_CHAR || 4881 base[size-1] != YY_END_OF_BUFFER_CHAR ) 4882 /* They forgot to leave room for the EOB's. */ 4883 return NULL; 4884 4885 b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) ); 4886 if ( ! b ) 4887 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" ); 4888 4889 b->yy_buf_size = (int) (size - 2); /* "- 2" to take care of EOB's */ 4890 b->yy_buf_pos = b->yy_ch_buf = base; 4891 b->yy_is_our_buffer = 0; 4892 b->yy_input_file = NULL; 4893 b->yy_n_chars = b->yy_buf_size; 4894 b->yy_is_interactive = 0; 4895 b->yy_at_bol = 1; 4896 b->yy_fill_buffer = 0; 4897 b->yy_buffer_status = YY_BUFFER_NEW; 4898 4899 yy_switch_to_buffer( b ); 4900 4901 return b; 4902 } 4903 4904 /** Setup the input buffer state to scan a string. The next call to yylex() will 4905 * scan from a @e copy of @a str. 4906 * @param yystr a NUL-terminated string to scan 4907 * 4908 * @return the newly allocated buffer state object. 4909 * @note If you want to scan bytes that may contain NUL values, then use 4910 * yy_scan_bytes() instead. 4911 */ 4912 YY_BUFFER_STATE yy_scan_string (const char * yystr ) 4913 { 4914 4915 return yy_scan_bytes( yystr, (int) strlen(yystr) ); 4916 } 4917 4918 /** Setup the input buffer state to scan the given bytes. The next call to yylex() will 4919 * scan from a @e copy of @a bytes. 4920 * @param yybytes the byte buffer to scan 4921 * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes. 4922 * 4923 * @return the newly allocated buffer state object. 4924 */ 4925 YY_BUFFER_STATE yy_scan_bytes (const char * yybytes, int _yybytes_len ) 4926 { 4927 YY_BUFFER_STATE b; 4928 char *buf; 4929 yy_size_t n; 4930 int i; 4931 4932 /* Get memory for full buffer, including space for trailing EOB's. */ 4933 n = (yy_size_t) (_yybytes_len + 2); 4934 buf = (char *) yyalloc( n ); 4935 if ( ! buf ) 4936 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" ); 4937 4938 for ( i = 0; i < _yybytes_len; ++i ) 4939 buf[i] = yybytes[i]; 4940 4941 buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; 4942 4943 b = yy_scan_buffer( buf, n ); 4944 if ( ! b ) 4945 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" ); 4946 4947 /* It's okay to grow etc. this buffer, and we should throw it 4948 * away when we're done. 4949 */ 4950 b->yy_is_our_buffer = 1; 4951 4952 return b; 4953 } 4954 4955 static void yy_push_state (int _new_state ) 4956 { 4957 if ( (yy_start_stack_ptr) >= (yy_start_stack_depth) ) 4958 { 4959 yy_size_t new_size; 4960 4961 (yy_start_stack_depth) += YY_START_STACK_INCR; 4962 new_size = (yy_size_t) (yy_start_stack_depth) * sizeof( int ); 4963 4964 if ( ! (yy_start_stack) ) 4965 (yy_start_stack) = (int *) yyalloc( new_size ); 4966 4967 else 4968 (yy_start_stack) = (int *) yyrealloc( 4969 (void *) (yy_start_stack), new_size ); 4970 4971 if ( ! (yy_start_stack) ) 4972 YY_FATAL_ERROR( "out of memory expanding start-condition stack" ); 4973 } 4974 4975 (yy_start_stack)[(yy_start_stack_ptr)++] = YY_START; 4976 4977 BEGIN(_new_state); 4978 } 4979 4980 static void yy_pop_state (void) 4981 { 4982 if ( --(yy_start_stack_ptr) < 0 ) 4983 YY_FATAL_ERROR( "start-condition stack underflow" ); 4984 4985 BEGIN((yy_start_stack)[(yy_start_stack_ptr)]); 4986 } 4987 4988 #ifndef YY_EXIT_FAILURE 4989 #define YY_EXIT_FAILURE 2 4990 #endif 4991 4992 static void yynoreturn yy_fatal_error (const char* msg ) 4993 { 4994 fprintf( stderr, "%s\n", msg ); 4995 exit( YY_EXIT_FAILURE ); 4996 } 4997 4998 /* Redefine yyless() so it works in section 3 code. */ 4999 5000 #undef yyless 5001 #define yyless(n) \ 5002 do \ 5003 { \ 5004 /* Undo effects of setting up yytext. */ \ 5005 int yyless_macro_arg = (n); \ 5006 YY_LESS_LINENO(yyless_macro_arg);\ 5007 yytext[yyleng] = (yy_hold_char); \ 5008 (yy_c_buf_p) = yytext + yyless_macro_arg; \ 5009 (yy_hold_char) = *(yy_c_buf_p); \ 5010 *(yy_c_buf_p) = '\0'; \ 5011 yyleng = yyless_macro_arg; \ 5012 } \ 5013 while ( 0 ) 5014 5015 /* Accessor methods (get/set functions) to struct members. */ 5016 5017 /** Get the current line number. 5018 * 5019 */ 5020 int yyget_lineno (void) 5021 { 5022 5023 return yylineno; 5024 } 5025 5026 /** Get the input stream. 5027 * 5028 */ 5029 FILE *yyget_in (void) 5030 { 5031 return yyin; 5032 } 5033 5034 /** Get the output stream. 5035 * 5036 */ 5037 FILE *yyget_out (void) 5038 { 5039 return yyout; 5040 } 5041 5042 /** Get the length of the current token. 5043 * 5044 */ 5045 int yyget_leng (void) 5046 { 5047 return yyleng; 5048 } 5049 5050 /** Get the current token. 5051 * 5052 */ 5053 5054 char *yyget_text (void) 5055 { 5056 return yytext; 5057 } 5058 5059 /** Set the current line number. 5060 * @param _line_number line number 5061 * 5062 */ 5063 void yyset_lineno (int _line_number ) 5064 { 5065 5066 yylineno = _line_number; 5067 } 5068 5069 /** Set the input stream. This does not discard the current 5070 * input buffer. 5071 * @param _in_str A readable stream. 5072 * 5073 * @see yy_switch_to_buffer 5074 */ 5075 void yyset_in (FILE * _in_str ) 5076 { 5077 yyin = _in_str ; 5078 } 5079 5080 void yyset_out (FILE * _out_str ) 5081 { 5082 yyout = _out_str ; 5083 } 5084 5085 int yyget_debug (void) 5086 { 5087 return yy_flex_debug; 5088 } 5089 5090 void yyset_debug (int _bdebug ) 5091 { 5092 yy_flex_debug = _bdebug ; 5093 } 5094 5095 static int yy_init_globals (void) 5096 { 5097 /* Initialization is the same as for the non-reentrant scanner. 5098 * This function is called from yylex_destroy(), so don't allocate here. 5099 */ 5100 5101 (yy_buffer_stack) = NULL; 5102 (yy_buffer_stack_top) = 0; 5103 (yy_buffer_stack_max) = 0; 5104 (yy_c_buf_p) = NULL; 5105 (yy_init) = 0; 5106 (yy_start) = 0; 5107 5108 (yy_start_stack_ptr) = 0; 5109 (yy_start_stack_depth) = 0; 5110 (yy_start_stack) = NULL; 5111 5112 /* Defined in main.c */ 5113 #ifdef YY_STDINIT 5114 yyin = stdin; 5115 yyout = stdout; 5116 #else 5117 yyin = NULL; 5118 yyout = NULL; 5119 #endif 5120 5121 /* For future reference: Set errno on error, since we are called by 5122 * yylex_init() 5123 */ 5124 return 0; 5125 } 5126 5127 /* yylex_destroy is for both reentrant and non-reentrant scanners. */ 5128 int yylex_destroy (void) 5129 { 5130 5131 /* Pop the buffer stack, destroying each element. */ 5132 while(YY_CURRENT_BUFFER){ 5133 yy_delete_buffer( YY_CURRENT_BUFFER ); 5134 YY_CURRENT_BUFFER_LVALUE = NULL; 5135 yypop_buffer_state(); 5136 } 5137 5138 /* Destroy the stack itself. */ 5139 yyfree((yy_buffer_stack) ); 5140 (yy_buffer_stack) = NULL; 5141 5142 /* Destroy the start condition stack. */ 5143 yyfree( (yy_start_stack) ); 5144 (yy_start_stack) = NULL; 5145 5146 /* Reset the globals. This is important in a non-reentrant scanner so the next time 5147 * yylex() is called, initialization will occur. */ 5148 yy_init_globals( ); 5149 5150 return 0; 5151 } 5152 5153 /* 5154 * Internal utility routines. 5155 */ 5156 5157 #ifndef yytext_ptr 5158 static void yy_flex_strncpy (char* s1, const char * s2, int n ) 5159 { 5160 5161 int i; 5162 for ( i = 0; i < n; ++i ) 5163 s1[i] = s2[i]; 5164 } 5165 #endif 5166 5167 #ifdef YY_NEED_STRLEN 5168 static int yy_flex_strlen (const char * s ) 5169 { 5170 int n; 5171 for ( n = 0; s[n]; ++n ) 5172 ; 5173 5174 return n; 5175 } 5176 #endif 5177 5178 void *yyalloc (yy_size_t size ) 5179 { 5180 return malloc(size); 5181 } 5182 5183 void *yyrealloc (void * ptr, yy_size_t size ) 5184 { 5185 5186 /* The cast to (char *) in the following accommodates both 5187 * implementations that use char* generic pointers, and those 5188 * that use void* generic pointers. It works with the latter 5189 * because both ANSI C and C++ allow castless assignment from 5190 * any pointer type to void*, and deal with argument conversions 5191 * as though doing an assignment. 5192 */ 5193 return realloc(ptr, size); 5194 } 5195 5196 void yyfree (void * ptr ) 5197 { 5198 free( (char *) ptr ); /* see yyrealloc() for (char *) cast */ 5199 } 5200 5201 #define YYTABLES_NAME "yytables" 5202 5203 #line 1014 "scan.l" 5204 5205 5206 5207 int yywrap(void) 5208 { 5209 if ( --num_input_files > 0 ) 5210 { 5211 set_input_file( *++input_files ); 5212 return 0; 5213 } 5214 5215 else 5216 return 1; 5217 } 5218 5219 5220 /* set_input_file - open the given file (if NULL, stdin) for scanning */ 5221 5222 void set_input_file( char *file ) 5223 { 5224 if ( file && strcmp( file, "-" ) ) 5225 { 5226 infilename = xstrdup(file); 5227 yyin = fopen( infilename, "r" ); 5228 5229 if ( yyin == NULL ) 5230 lerr( _( "can't open %s" ), file ); 5231 } 5232 5233 else 5234 { 5235 yyin = stdin; 5236 infilename = xstrdup("<stdin>"); 5237 } 5238 5239 linenum = 1; 5240 } 5241 5242