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