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