1 #include "config.h" 2 #include "util/configyyrename.h" 3 4 #line 3 "<stdout>" 5 6 #define YY_INT_ALIGNED short int 7 8 /* A lexical scanner generated by flex */ 9 10 #define FLEX_SCANNER 11 #define YY_FLEX_MAJOR_VERSION 2 12 #define YY_FLEX_MINOR_VERSION 5 13 #define YY_FLEX_SUBMINOR_VERSION 37 14 #if YY_FLEX_SUBMINOR_VERSION > 0 15 #define FLEX_BETA 16 #endif 17 18 /* First, we deal with platform-specific or compiler-specific issues. */ 19 20 #if defined(__FreeBSD__) 21 #ifndef __STDC_LIMIT_MACROS 22 #define __STDC_LIMIT_MACROS 23 #endif 24 #include <sys/cdefs.h> 25 #include <stdint.h> 26 #else 27 #define __dead2 28 #endif 29 30 /* begin standard C headers. */ 31 #include <stdio.h> 32 #include <string.h> 33 #include <errno.h> 34 #include <stdlib.h> 35 36 /* end standard C headers. */ 37 38 /* flex integer type definitions */ 39 40 #ifndef FLEXINT_H 41 #define FLEXINT_H 42 43 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */ 44 45 #if defined(__FreeBSD__) || \ 46 (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) 47 48 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, 49 * if you want the limit (max/min) macros for int types. 50 */ 51 #ifndef __STDC_LIMIT_MACROS 52 #define __STDC_LIMIT_MACROS 1 53 #endif 54 55 #include <inttypes.h> 56 typedef int8_t flex_int8_t; 57 typedef uint8_t flex_uint8_t; 58 typedef int16_t flex_int16_t; 59 typedef uint16_t flex_uint16_t; 60 typedef int32_t flex_int32_t; 61 typedef uint32_t flex_uint32_t; 62 #else 63 typedef signed char flex_int8_t; 64 typedef short int flex_int16_t; 65 typedef int flex_int32_t; 66 typedef unsigned char flex_uint8_t; 67 typedef unsigned short int flex_uint16_t; 68 typedef unsigned int flex_uint32_t; 69 70 /* Limits of integral types. */ 71 #ifndef INT8_MIN 72 #define INT8_MIN (-128) 73 #endif 74 #ifndef INT16_MIN 75 #define INT16_MIN (-32767-1) 76 #endif 77 #ifndef INT32_MIN 78 #define INT32_MIN (-2147483647-1) 79 #endif 80 #ifndef INT8_MAX 81 #define INT8_MAX (127) 82 #endif 83 #ifndef INT16_MAX 84 #define INT16_MAX (32767) 85 #endif 86 #ifndef INT32_MAX 87 #define INT32_MAX (2147483647) 88 #endif 89 #ifndef UINT8_MAX 90 #define UINT8_MAX (255U) 91 #endif 92 #ifndef UINT16_MAX 93 #define UINT16_MAX (65535U) 94 #endif 95 #ifndef UINT32_MAX 96 #define UINT32_MAX (4294967295U) 97 #endif 98 99 #endif /* ! C99 */ 100 101 #endif /* ! FLEXINT_H */ 102 103 #ifdef __cplusplus 104 105 /* The "const" storage-class-modifier is valid. */ 106 #define YY_USE_CONST 107 108 #else /* ! __cplusplus */ 109 110 /* C99 requires __STDC__ to be defined as 1. */ 111 #if defined (__STDC__) 112 113 #define YY_USE_CONST 114 115 #endif /* defined (__STDC__) */ 116 #endif /* ! __cplusplus */ 117 118 #ifdef YY_USE_CONST 119 #define yyconst const 120 #else 121 #define yyconst 122 #endif 123 124 /* Returned upon end-of-file. */ 125 #define YY_NULL 0 126 127 /* Promotes a possibly negative, possibly signed char to an unsigned 128 * integer for use as an array index. If the signed char is negative, 129 * we want to instead treat it as an 8-bit unsigned char, hence the 130 * double cast. 131 */ 132 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c) 133 134 /* Enter a start condition. This macro really ought to take a parameter, 135 * but we do it the disgusting crufty way forced on us by the ()-less 136 * definition of BEGIN. 137 */ 138 #define BEGIN (yy_start) = 1 + 2 * 139 140 /* Translate the current start state into a value that can be later handed 141 * to BEGIN to return to the state. The YYSTATE alias is for lex 142 * compatibility. 143 */ 144 #define YY_START (((yy_start) - 1) / 2) 145 #define YYSTATE YY_START 146 147 /* Action number for EOF rule of a given start state. */ 148 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) 149 150 /* Special action meaning "start processing a new file". */ 151 #define YY_NEW_FILE yyrestart(yyin ) 152 153 #define YY_END_OF_BUFFER_CHAR 0 154 155 /* Size of default input buffer. */ 156 #ifndef YY_BUF_SIZE 157 #define YY_BUF_SIZE 16384 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 184 /* Return all but the first "n" matched characters back to the input stream. */ 185 #define yyless(n) \ 186 do \ 187 { \ 188 /* Undo effects of setting up yytext. */ \ 189 int yyless_macro_arg = (n); \ 190 YY_LESS_LINENO(yyless_macro_arg);\ 191 *yy_cp = (yy_hold_char); \ 192 YY_RESTORE_YY_MORE_OFFSET \ 193 (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ 194 YY_DO_BEFORE_ACTION; /* set up yytext again */ \ 195 } \ 196 while ( 0 ) 197 198 #define unput(c) yyunput( c, (yytext_ptr) ) 199 200 #ifndef YY_STRUCT_YY_BUFFER_STATE 201 #define YY_STRUCT_YY_BUFFER_STATE 202 struct yy_buffer_state 203 { 204 FILE *yy_input_file; 205 206 char *yy_ch_buf; /* input buffer */ 207 char *yy_buf_pos; /* current position in input buffer */ 208 209 /* Size of input buffer in bytes, not including room for EOB 210 * characters. 211 */ 212 yy_size_t yy_buf_size; 213 214 /* Number of characters read into yy_ch_buf, not including EOB 215 * characters. 216 */ 217 yy_size_t yy_n_chars; 218 219 /* Whether we "own" the buffer - i.e., we know we created it, 220 * and can realloc() it to grow it, and should free() it to 221 * delete it. 222 */ 223 int yy_is_our_buffer; 224 225 /* Whether this is an "interactive" input source; if so, and 226 * if we're using stdio for input, then we want to use getc() 227 * instead of fread(), to make sure we stop fetching input after 228 * each newline. 229 */ 230 int yy_is_interactive; 231 232 /* Whether we're considered to be at the beginning of a line. 233 * If so, '^' rules will be active on the next match, otherwise 234 * not. 235 */ 236 int yy_at_bol; 237 238 int yy_bs_lineno; /**< The line count. */ 239 int yy_bs_column; /**< The column count. */ 240 241 /* Whether to try to fill the input buffer when we reach the 242 * end of it. 243 */ 244 int yy_fill_buffer; 245 246 int yy_buffer_status; 247 248 #define YY_BUFFER_NEW 0 249 #define YY_BUFFER_NORMAL 1 250 /* When an EOF's been seen but there's still some text to process 251 * then we mark the buffer as YY_EOF_PENDING, to indicate that we 252 * shouldn't try reading from the input source any more. We might 253 * still have a bunch of tokens to match, though, because of 254 * possible backing-up. 255 * 256 * When we actually see the EOF, we change the status to "new" 257 * (via yyrestart()), so that the user can continue scanning by 258 * just pointing yyin at a new input file. 259 */ 260 #define YY_BUFFER_EOF_PENDING 2 261 262 }; 263 #endif /* !YY_STRUCT_YY_BUFFER_STATE */ 264 265 /* Stack of input buffers. */ 266 static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */ 267 static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */ 268 static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ 269 270 /* We provide macros for accessing buffer states in case in the 271 * future we want to put the buffer states in a more general 272 * "scanner state". 273 * 274 * Returns the top of the stack, or NULL. 275 */ 276 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ 277 ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ 278 : NULL) 279 #define yy_current_buffer YY_CURRENT_BUFFER 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 #define yytext_ptr yytext 361 362 static yy_state_type yy_get_previous_state (void ); 363 static yy_state_type yy_try_NUL_trans (yy_state_type current_state ); 364 static int yy_get_next_buffer (void ); 365 static void yy_fatal_error (yyconst char msg[] ) __dead2; 366 367 /* Done after the current pattern has been matched and before the 368 * corresponding action - sets up yytext. 369 */ 370 #define YY_DO_BEFORE_ACTION \ 371 (yytext_ptr) = yy_bp; \ 372 (yytext_ptr) -= (yy_more_len); \ 373 yyleng = (size_t) (yy_cp - (yytext_ptr)); \ 374 (yy_hold_char) = *yy_cp; \ 375 *yy_cp = '\0'; \ 376 (yy_c_buf_p) = yy_cp; 377 378 #define YY_NUM_RULES 142 379 #define YY_END_OF_BUFFER 143 380 /* This struct is not used in this scanner, 381 but its presence is necessary. */ 382 struct yy_trans_info 383 { 384 flex_int32_t yy_verify; 385 flex_int32_t yy_nxt; 386 }; 387 static yyconst flex_int16_t yy_accept[1343] = 388 { 0, 389 1, 1, 124, 124, 128, 128, 132, 132, 136, 136, 390 1, 1, 143, 140, 1, 122, 122, 141, 2, 141, 391 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 392 140, 140, 140, 140, 140, 140, 140, 140, 140, 124, 393 125, 125, 126, 141, 128, 129, 129, 130, 141, 135, 394 132, 133, 133, 134, 141, 136, 137, 137, 138, 141, 395 139, 123, 2, 127, 141, 139, 140, 0, 1, 2, 396 2, 2, 2, 140, 140, 140, 140, 140, 140, 140, 397 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 398 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 399 400 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 401 140, 140, 140, 140, 140, 140, 140, 140, 140, 124, 402 0, 128, 0, 135, 0, 132, 136, 0, 139, 0, 403 2, 2, 139, 140, 140, 140, 140, 140, 140, 140, 404 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 405 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 406 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 407 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 408 140, 140, 140, 140, 140, 140, 139, 140, 140, 140, 409 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 410 411 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 412 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 413 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 414 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 415 140, 140, 140, 140, 140, 140, 140, 140, 140, 139, 416 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 417 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 418 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 419 140, 140, 140, 140, 140, 140, 140, 62, 140, 140, 420 140, 140, 140, 6, 140, 140, 140, 140, 140, 140, 421 422 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 423 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 424 140, 140, 140, 140, 139, 140, 140, 140, 140, 140, 425 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 426 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 427 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 428 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 429 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 430 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 431 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 432 433 140, 140, 140, 140, 139, 140, 140, 140, 140, 27, 434 140, 140, 140, 140, 140, 12, 13, 140, 15, 14, 435 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 436 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 437 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 438 140, 140, 140, 140, 140, 118, 140, 140, 140, 140, 439 140, 3, 140, 140, 140, 140, 140, 140, 140, 140, 440 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 441 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 442 139, 140, 140, 140, 140, 140, 140, 140, 140, 140, 443 444 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 445 140, 140, 140, 140, 140, 140, 131, 140, 140, 140, 446 140, 140, 140, 140, 140, 140, 140, 140, 140, 30, 447 140, 140, 140, 140, 140, 140, 140, 140, 31, 140, 448 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 449 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 450 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 451 140, 140, 140, 140, 140, 77, 131, 140, 140, 140, 452 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 453 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 454 455 140, 140, 140, 140, 140, 140, 140, 76, 140, 140, 456 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 457 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 458 60, 140, 140, 140, 140, 140, 140, 140, 140, 140, 459 140, 140, 20, 140, 140, 140, 140, 140, 140, 140, 460 140, 140, 140, 140, 140, 140, 140, 140, 28, 140, 461 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 462 140, 140, 140, 140, 140, 140, 140, 140, 29, 140, 463 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 464 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 465 466 140, 140, 140, 22, 140, 140, 140, 140, 140, 140, 467 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 468 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 469 140, 140, 25, 26, 140, 140, 140, 63, 140, 64, 470 140, 61, 140, 140, 140, 140, 140, 140, 140, 140, 471 140, 140, 140, 140, 140, 140, 5, 140, 140, 140, 472 140, 140, 140, 140, 140, 140, 140, 140, 140, 79, 473 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 474 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 475 140, 140, 140, 140, 140, 140, 140, 104, 103, 140, 476 477 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 478 140, 140, 140, 140, 140, 140, 140, 32, 140, 140, 479 140, 140, 140, 140, 140, 66, 65, 140, 140, 140, 480 140, 140, 140, 100, 140, 140, 140, 140, 140, 140, 481 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 482 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 483 140, 140, 140, 140, 51, 140, 140, 140, 140, 140, 484 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 485 140, 102, 140, 140, 140, 140, 140, 140, 140, 140, 486 4, 140, 140, 140, 140, 140, 140, 140, 140, 140, 487 488 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 489 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 490 140, 140, 97, 140, 140, 140, 140, 140, 140, 140, 491 112, 98, 140, 21, 140, 140, 140, 140, 68, 140, 492 69, 67, 140, 140, 140, 140, 140, 140, 75, 140, 493 140, 140, 140, 140, 140, 140, 140, 140, 99, 140, 494 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 495 140, 140, 140, 140, 59, 140, 140, 140, 140, 140, 496 140, 140, 140, 140, 140, 17, 140, 140, 140, 16, 497 140, 84, 140, 140, 140, 140, 140, 140, 140, 140, 498 499 140, 140, 140, 140, 39, 40, 140, 140, 140, 140, 500 140, 140, 140, 140, 140, 140, 70, 140, 140, 140, 501 140, 140, 74, 140, 140, 140, 140, 140, 140, 140, 502 140, 140, 140, 140, 140, 140, 140, 78, 140, 140, 503 140, 140, 140, 140, 140, 140, 140, 140, 140, 117, 504 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 505 140, 140, 140, 140, 140, 88, 140, 92, 140, 140, 506 140, 140, 73, 140, 140, 110, 140, 140, 140, 140, 507 140, 140, 140, 140, 140, 140, 140, 140, 140, 91, 508 140, 140, 140, 140, 41, 42, 140, 47, 93, 140, 509 510 105, 101, 140, 140, 35, 140, 95, 140, 140, 140, 511 140, 140, 7, 140, 58, 109, 140, 140, 140, 140, 512 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 513 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 514 80, 140, 140, 119, 140, 140, 140, 140, 140, 140, 515 140, 140, 140, 140, 140, 140, 94, 140, 34, 36, 516 140, 140, 140, 140, 140, 57, 140, 140, 140, 140, 517 113, 18, 19, 140, 140, 140, 140, 140, 140, 55, 518 140, 140, 140, 140, 140, 140, 140, 140, 140, 115, 519 140, 140, 33, 140, 140, 140, 140, 140, 140, 11, 520 521 140, 140, 140, 140, 140, 140, 140, 10, 140, 140, 522 37, 140, 121, 114, 140, 140, 140, 140, 140, 140, 523 140, 140, 140, 140, 87, 86, 140, 116, 111, 140, 524 140, 140, 140, 140, 140, 140, 140, 140, 140, 43, 525 140, 120, 140, 140, 140, 140, 38, 140, 140, 140, 526 81, 83, 140, 140, 140, 85, 140, 140, 140, 140, 527 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 528 23, 140, 140, 140, 140, 140, 140, 140, 140, 140, 529 140, 140, 140, 108, 140, 140, 140, 140, 140, 140, 530 140, 24, 140, 9, 140, 140, 106, 48, 140, 140, 531 532 140, 90, 140, 71, 140, 140, 140, 50, 54, 49, 533 140, 44, 140, 8, 140, 140, 89, 140, 140, 140, 534 53, 140, 45, 140, 107, 140, 140, 82, 72, 52, 535 46, 140, 140, 140, 140, 56, 140, 140, 140, 140, 536 96, 0 537 } ; 538 539 static yyconst flex_int32_t yy_ec[256] = 540 { 0, 541 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 542 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, 543 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 544 1, 2, 1, 5, 6, 1, 1, 1, 7, 1, 545 1, 1, 1, 1, 8, 1, 1, 1, 1, 1, 546 9, 10, 1, 11, 1, 1, 1, 12, 1, 1, 547 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 548 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 549 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 550 1, 13, 1, 1, 1, 1, 14, 15, 16, 17, 551 552 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 553 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 554 38, 39, 1, 1, 1, 1, 1, 1, 1, 1, 555 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 556 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 557 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 558 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 559 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 560 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 561 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 562 563 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 564 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 565 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 566 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 567 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 568 1, 1, 1, 1, 1 569 } ; 570 571 static yyconst flex_int32_t yy_meta[40] = 572 { 0, 573 1, 2, 3, 4, 5, 1, 6, 1, 1, 1, 574 1, 7, 1, 1, 1, 1, 1, 1, 1, 1, 575 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 576 1, 1, 1, 1, 1, 1, 1, 1, 1 577 } ; 578 579 static yyconst flex_int16_t yy_base[1357] = 580 { 0, 581 0, 0, 37, 40, 44, 51, 63, 75, 56, 68, 582 87, 108, 2577, 2563, 50, 2683, 2683, 2683, 129, 94, 583 70, 104, 122, 90, 92, 115, 126, 95, 84, 132, 584 135, 138, 50, 142, 148, 156, 169, 164, 179, 2493, 585 2683, 2683, 2683, 70, 2371, 2683, 2683, 2683, 42, 2326, 586 1987, 2683, 2683, 2683, 197, 1681, 2683, 2683, 2683, 154, 587 1191, 2683, 201, 2683, 205, 111, 1082, 211, 120, 0, 588 222, 0, 0, 103, 158, 165, 149, 155, 168, 206, 589 207, 198, 217, 209, 204, 208, 215, 177, 136, 227, 590 228, 219, 232, 236, 235, 240, 245, 229, 246, 247, 591 592 250, 251, 254, 256, 258, 262, 259, 263, 266, 269, 593 267, 276, 268, 271, 273, 49, 280, 281, 283, 853, 594 297, 751, 301, 603, 311, 572, 360, 299, 298, 315, 595 319, 0, 296, 312, 320, 314, 316, 318, 321, 327, 596 323, 330, 342, 331, 326, 334, 335, 336, 338, 347, 597 337, 353, 348, 344, 350, 355, 359, 372, 369, 367, 598 357, 379, 377, 385, 386, 383, 387, 384, 388, 389, 599 391, 392, 395, 396, 397, 398, 405, 402, 406, 403, 600 414, 412, 420, 418, 428, 424, 425, 427, 430, 434, 601 435, 432, 433, 441, 439, 444, 452, 448, 450, 454, 602 603 455, 458, 461, 460, 462, 466, 473, 469, 470, 472, 604 477, 475, 478, 479, 485, 481, 482, 483, 486, 492, 605 487, 504, 498, 508, 501, 502, 510, 513, 509, 515, 606 520, 522, 528, 524, 525, 526, 527, 531, 534, 537, 607 533, 536, 539, 540, 545, 546, 565, 551, 549, 553, 608 556, 555, 562, 576, 563, 572, 573, 569, 578, 585, 609 596, 586, 591, 595, 598, 597, 600, 601, 602, 605, 610 608, 610, 609, 620, 623, 622, 621, 624, 630, 638, 611 625, 632, 635, 639, 643, 634, 644, 2683, 649, 636, 612 651, 652, 642, 2683, 653, 656, 658, 660, 662, 668, 613 614 664, 666, 667, 669, 674, 675, 677, 697, 680, 678, 615 690, 681, 686, 683, 692, 689, 699, 702, 706, 707, 616 709, 710, 712, 715, 716, 726, 722, 718, 724, 728, 617 732, 733, 735, 738, 739, 743, 747, 753, 755, 757, 618 763, 740, 759, 762, 765, 767, 768, 749, 775, 772, 619 774, 778, 779, 787, 776, 789, 791, 793, 783, 794, 620 797, 805, 801, 803, 808, 810, 784, 804, 814, 813, 621 820, 827, 828, 812, 829, 835, 831, 836, 824, 837, 622 839, 840, 841, 843, 844, 846, 848, 854, 850, 856, 623 861, 862, 866, 851, 868, 871, 872, 873, 874, 883, 624 625 875, 884, 876, 886, 887, 894, 895, 889, 902, 2683, 626 901, 904, 898, 905, 906, 2683, 2683, 890, 2683, 2683, 627 909, 914, 915, 917, 922, 923, 925, 927, 930, 932, 628 935, 936, 938, 944, 946, 939, 947, 948, 950, 954, 629 955, 957, 961, 963, 964, 965, 968, 970, 972, 974, 630 975, 981, 977, 988, 984, 2683, 986, 987, 991, 993, 631 994, 2683, 995, 996, 998, 999, 1000, 1002, 1006, 1004, 632 1007, 1014, 1013, 1009, 1012, 1019, 1029, 1030, 1025, 1028, 633 1031, 1035, 1037, 1046, 1039, 1043, 1045, 1052, 1048, 1050, 634 1054, 1051, 1055, 1057, 1060, 1063, 1085, 1065, 1062, 1064, 635 636 1067, 1070, 1072, 1074, 1078, 1092, 1097, 1075, 1071, 1103, 637 1105, 1099, 1095, 1106, 1112, 1113, 2683, 1119, 1120, 1108, 638 1115, 1116, 1122, 1124, 1129, 1126, 1130, 1132, 1138, 2683, 639 1135, 1136, 1137, 1140, 1147, 1139, 1149, 1159, 2683, 1161, 640 1162, 1155, 1157, 1164, 1165, 1167, 1169, 1170, 1171, 1173, 641 1181, 1176, 1178, 1183, 1182, 1187, 1189, 1190, 1192, 1193, 642 1194, 1199, 1204, 1210, 1213, 1201, 1218, 1195, 1207, 1211, 643 1224, 1219, 1222, 1225, 1226, 2683, 174, 1227, 1228, 1229, 644 1235, 1238, 1234, 1232, 1236, 1240, 1242, 1247, 1253, 1248, 645 1254, 1255, 1256, 1259, 1258, 1261, 1267, 1268, 1269, 1270, 646 647 1271, 1272, 1273, 1274, 1279, 1278, 1286, 2683, 1292, 1285, 648 1281, 1288, 1296, 1305, 1297, 1302, 1312, 1313, 1315, 1316, 649 1317, 1319, 1309, 1322, 1330, 1331, 1327, 1329, 1328, 1334, 650 2683, 1335, 1336, 1338, 1341, 1343, 1349, 1347, 1348, 1350, 651 1353, 1359, 2683, 1303, 1360, 1354, 1364, 1367, 1369, 1371, 652 1378, 1370, 1374, 1372, 1381, 1382, 1383, 1384, 2683, 1393, 653 1397, 1394, 1401, 1395, 1398, 1402, 1406, 1403, 1385, 1412, 654 1409, 1410, 1414, 1415, 1411, 1418, 1419, 1421, 2683, 1425, 655 1422, 1427, 1428, 1434, 1426, 1435, 1436, 1438, 1441, 1447, 656 1440, 1451, 1442, 1453, 1450, 1460, 1461, 1464, 1463, 1466, 657 658 1472, 1478, 1474, 2683, 1477, 1465, 1480, 1486, 1488, 1483, 659 1489, 1490, 1491, 1498, 1492, 1494, 1495, 1496, 1503, 1500, 660 1501, 1504, 1507, 1506, 1518, 1519, 1520, 1523, 1524, 1526, 661 1525, 1532, 2683, 2683, 1533, 1534, 1541, 2683, 1543, 2683, 662 1547, 2683, 1548, 1549, 1537, 1539, 1553, 1544, 1555, 1556, 663 1560, 1557, 1562, 1563, 1565, 1566, 2683, 1568, 1569, 1574, 664 1570, 1572, 1577, 1578, 1582, 1593, 1581, 1585, 1589, 2683, 665 1591, 1594, 1600, 1607, 1604, 1598, 1606, 1608, 1609, 1610, 666 1612, 1621, 1613, 1611, 1615, 1622, 1623, 1624, 1626, 1632, 667 1630, 1631, 1634, 1638, 1640, 1645, 1643, 2683, 2683, 1649, 668 669 1641, 1646, 1652, 1656, 1658, 1660, 1668, 1665, 1666, 1671, 670 1672, 1673, 1674, 1676, 1677, 1679, 1680, 2683, 1688, 1682, 671 1696, 1697, 1706, 1689, 1704, 2683, 2683, 1685, 1692, 1708, 672 1709, 1711, 1712, 2683, 1714, 1715, 1716, 1717, 1718, 1720, 673 1710, 1724, 1732, 1735, 1725, 1736, 1743, 1740, 1741, 1744, 674 1746, 1754, 1742, 1756, 1762, 1747, 1758, 1760, 1764, 1761, 675 1766, 1770, 1772, 1771, 2683, 1778, 1775, 1784, 1776, 1783, 676 1785, 1792, 1788, 1789, 1790, 1791, 1794, 1796, 1797, 1798, 677 1804, 2683, 1803, 1805, 1806, 1808, 1814, 1818, 1816, 1821, 678 2683, 1822, 1830, 1826, 1828, 1832, 1829, 1836, 1833, 1839, 679 680 1838, 1841, 1843, 1850, 1844, 1848, 1851, 1852, 1863, 1862, 681 1869, 1870, 1867, 1876, 1873, 1874, 1875, 1877, 1886, 1882, 682 1888, 1880, 2683, 1890, 1895, 1897, 1899, 1884, 1900, 1898, 683 2683, 2683, 1891, 2683, 1908, 1901, 1912, 1913, 2683, 1911, 684 2683, 2683, 1914, 1923, 1915, 1916, 1924, 1930, 2683, 1927, 685 1925, 1935, 1931, 1937, 1938, 1939, 1933, 1940, 2683, 1941, 686 1942, 1943, 1947, 1953, 1955, 1957, 1958, 1962, 1965, 1966, 687 1959, 1968, 1974, 1973, 2683, 1972, 1975, 1980, 1981, 1985, 688 1982, 1986, 1987, 1996, 1998, 2683, 1992, 1990, 2000, 2683, 689 2002, 2683, 2006, 2004, 2009, 2014, 2011, 2022, 2007, 2015, 690 691 2023, 2017, 2025, 2027, 2683, 2683, 2031, 2033, 2036, 2034, 692 2038, 2041, 2039, 2042, 2044, 2048, 2683, 2049, 2050, 2051, 693 2052, 2053, 2683, 2056, 2057, 2058, 2062, 2065, 2077, 2079, 694 2068, 2083, 2085, 2061, 2087, 2089, 2090, 2683, 2091, 2093, 695 2094, 2098, 2099, 2095, 2100, 2104, 2107, 2102, 2111, 2683, 696 2115, 2108, 2118, 2116, 2112, 2122, 2123, 2126, 2128, 2130, 697 2129, 2131, 2132, 2138, 2059, 2683, 2136, 2683, 2137, 2142, 698 2150, 2151, 2683, 2147, 2153, 2683, 2154, 2158, 2167, 2155, 699 2161, 2169, 2170, 2171, 2172, 2173, 2174, 2182, 2178, 2683, 700 2180, 2181, 2187, 2183, 2683, 2683, 2188, 2683, 2683, 2198, 701 702 2683, 2683, 2194, 2201, 2683, 2203, 2683, 2209, 2205, 2192, 703 2190, 2210, 2683, 2214, 2683, 2683, 2211, 2217, 2207, 2218, 704 2225, 2227, 2229, 2220, 2222, 2230, 2231, 2233, 2234, 2236, 705 2237, 2238, 2239, 2244, 2241, 2247, 2248, 2250, 2251, 2253, 706 2683, 2249, 2262, 2683, 2269, 2270, 2258, 2260, 2271, 2272, 707 2274, 2276, 2282, 2280, 2281, 2283, 2683, 2285, 2683, 2683, 708 2286, 2284, 2291, 2292, 2294, 2683, 2297, 2298, 2302, 2309, 709 2683, 2683, 2683, 2310, 2299, 2305, 2313, 2315, 2316, 2683, 710 2319, 2322, 2323, 2325, 2330, 2332, 2338, 2336, 2342, 2683, 711 2339, 2337, 2683, 2343, 2345, 2347, 2348, 2350, 2352, 2683, 712 713 2353, 2354, 2360, 2355, 2363, 2366, 2365, 2683, 2367, 2368, 714 2683, 2378, 2683, 2683, 2369, 2379, 2382, 2384, 2387, 2375, 715 2388, 2395, 2392, 2394, 2683, 2683, 2397, 2683, 2683, 2396, 716 2399, 2400, 2404, 2401, 2406, 2408, 2409, 2412, 2410, 2683, 717 2413, 2683, 2414, 2423, 2420, 2418, 2683, 2425, 2426, 2429, 718 2683, 2683, 2431, 2439, 2433, 2683, 2441, 2443, 2437, 2444, 719 2448, 2449, 2445, 2450, 2455, 2457, 2451, 2453, 2465, 2466, 720 2683, 2468, 2460, 2470, 2474, 2476, 2478, 2479, 2481, 2483, 721 2484, 2486, 2487, 2683, 2488, 2489, 2499, 2504, 2508, 2490, 722 2510, 2683, 2511, 2683, 2514, 2500, 2683, 2683, 2515, 2517, 723 724 2519, 2683, 2520, 2683, 2518, 2522, 2526, 2683, 2683, 2683, 725 2528, 2683, 2529, 2683, 2532, 2534, 2683, 2535, 2537, 2540, 726 2683, 2542, 2683, 2544, 2683, 2545, 2546, 2683, 2683, 2683, 727 2683, 2548, 2550, 2555, 2551, 2683, 2556, 2558, 2559, 2562, 728 2683, 2683, 2591, 2598, 2605, 2612, 2619, 94, 2626, 2633, 729 2640, 2647, 2654, 2661, 2668, 2675 730 } ; 731 732 static yyconst flex_int16_t yy_def[1357] = 733 { 0, 734 1342, 1, 1343, 1343, 1344, 1344, 1345, 1345, 1346, 1346, 735 1347, 1347, 1342, 1348, 1342, 1342, 1342, 1342, 1349, 1348, 736 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 737 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1350, 738 1342, 1342, 1342, 1350, 1351, 1342, 1342, 1342, 1351, 1352, 739 1342, 1342, 1342, 1342, 1352, 1353, 1342, 1342, 1342, 1353, 740 1354, 1342, 1355, 1342, 1354, 1354, 1348, 1348, 1342, 1356, 741 1349, 1356, 1349, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 742 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 743 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 744 745 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 746 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1350, 747 1350, 1351, 1351, 1352, 1352, 1342, 1353, 1353, 1354, 1354, 748 1355, 1355, 1354, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 749 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 750 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 751 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 752 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 753 1348, 1348, 1348, 1348, 1348, 1348, 1354, 1348, 1348, 1348, 754 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 755 756 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 757 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 758 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 759 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 760 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1354, 761 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 762 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 763 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 764 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 1348, 1348, 765 1348, 1348, 1348, 1342, 1348, 1348, 1348, 1348, 1348, 1348, 766 767 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 768 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 769 1348, 1348, 1348, 1348, 1354, 1348, 1348, 1348, 1348, 1348, 770 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 771 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 772 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 773 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 774 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 775 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 776 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 777 778 1348, 1348, 1348, 1348, 1354, 1348, 1348, 1348, 1348, 1342, 779 1348, 1348, 1348, 1348, 1348, 1342, 1342, 1348, 1342, 1342, 780 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 781 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 782 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 783 1348, 1348, 1348, 1348, 1348, 1342, 1348, 1348, 1348, 1348, 784 1348, 1342, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 785 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 786 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 787 1354, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 788 789 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 790 1348, 1348, 1348, 1348, 1348, 1348, 1342, 1348, 1348, 1348, 791 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 792 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 1348, 793 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 794 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 795 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 796 1348, 1348, 1348, 1348, 1348, 1342, 1354, 1348, 1348, 1348, 797 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 798 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 799 800 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 1348, 1348, 801 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 802 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 803 1342, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 804 1348, 1348, 1342, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 805 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 1348, 806 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 807 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 1348, 808 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 809 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 810 811 1348, 1348, 1348, 1342, 1348, 1348, 1348, 1348, 1348, 1348, 812 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 813 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 814 1348, 1348, 1342, 1342, 1348, 1348, 1348, 1342, 1348, 1342, 815 1348, 1342, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 816 1348, 1348, 1348, 1348, 1348, 1348, 1342, 1348, 1348, 1348, 817 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 818 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 819 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 820 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 1342, 1348, 821 822 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 823 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 1348, 1348, 824 1348, 1348, 1348, 1348, 1348, 1342, 1342, 1348, 1348, 1348, 825 1348, 1348, 1348, 1342, 1348, 1348, 1348, 1348, 1348, 1348, 826 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 827 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 828 1348, 1348, 1348, 1348, 1342, 1348, 1348, 1348, 1348, 1348, 829 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 830 1348, 1342, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 831 1342, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 832 833 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 834 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 835 1348, 1348, 1342, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 836 1342, 1342, 1348, 1342, 1348, 1348, 1348, 1348, 1342, 1348, 837 1342, 1342, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 1348, 838 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 1348, 839 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 840 1348, 1348, 1348, 1348, 1342, 1348, 1348, 1348, 1348, 1348, 841 1348, 1348, 1348, 1348, 1348, 1342, 1348, 1348, 1348, 1342, 842 1348, 1342, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 843 844 1348, 1348, 1348, 1348, 1342, 1342, 1348, 1348, 1348, 1348, 845 1348, 1348, 1348, 1348, 1348, 1348, 1342, 1348, 1348, 1348, 846 1348, 1348, 1342, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 847 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 1348, 1348, 848 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 849 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 850 1348, 1348, 1348, 1348, 1348, 1342, 1348, 1342, 1348, 1348, 851 1348, 1348, 1342, 1348, 1348, 1342, 1348, 1348, 1348, 1348, 852 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 853 1348, 1348, 1348, 1348, 1342, 1342, 1348, 1342, 1342, 1348, 854 855 1342, 1342, 1348, 1348, 1342, 1348, 1342, 1348, 1348, 1348, 856 1348, 1348, 1342, 1348, 1342, 1342, 1348, 1348, 1348, 1348, 857 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 858 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 859 1342, 1348, 1348, 1342, 1348, 1348, 1348, 1348, 1348, 1348, 860 1348, 1348, 1348, 1348, 1348, 1348, 1342, 1348, 1342, 1342, 861 1348, 1348, 1348, 1348, 1348, 1342, 1348, 1348, 1348, 1348, 862 1342, 1342, 1342, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 863 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 864 1348, 1348, 1342, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 865 866 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 1348, 1348, 867 1342, 1348, 1342, 1342, 1348, 1348, 1348, 1348, 1348, 1348, 868 1348, 1348, 1348, 1348, 1342, 1342, 1348, 1342, 1342, 1348, 869 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1342, 870 1348, 1342, 1348, 1348, 1348, 1348, 1342, 1348, 1348, 1348, 871 1342, 1342, 1348, 1348, 1348, 1342, 1348, 1348, 1348, 1348, 872 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 873 1342, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 1348, 874 1348, 1348, 1348, 1342, 1348, 1348, 1348, 1348, 1348, 1348, 875 1348, 1342, 1348, 1342, 1348, 1348, 1342, 1342, 1348, 1348, 876 877 1348, 1342, 1348, 1342, 1348, 1348, 1348, 1342, 1342, 1342, 878 1348, 1342, 1348, 1342, 1348, 1348, 1342, 1348, 1348, 1348, 879 1342, 1348, 1342, 1348, 1342, 1348, 1348, 1342, 1342, 1342, 880 1342, 1348, 1348, 1348, 1348, 1342, 1348, 1348, 1348, 1348, 881 1342, 0, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 882 1342, 1342, 1342, 1342, 1342, 1342 883 } ; 884 885 static yyconst flex_int16_t yy_nxt[2723] = 886 { 0, 887 14, 15, 16, 17, 18, 19, 18, 14, 14, 14, 888 14, 18, 20, 21, 14, 22, 23, 24, 25, 14, 889 26, 27, 28, 29, 30, 31, 32, 33, 34, 14, 890 35, 36, 37, 38, 39, 14, 14, 14, 14, 41, 891 42, 43, 41, 42, 43, 122, 46, 47, 122, 44, 892 48, 69, 44, 46, 47, 70, 49, 48, 57, 58, 893 59, 68, 68, 49, 51, 52, 53, 54, 60, 18, 894 57, 58, 59, 120, 120, 55, 51, 52, 53, 54, 895 60, 18, 68, 101, 183, 74, 75, 55, 15, 16, 896 17, 62, 63, 64, 67, 67, 68, 67, 67, 65, 897 898 67, 93, 68, 76, 68, 67, 84, 68, 66, 15, 899 16, 17, 62, 63, 64, 68, 68, 77, 134, 86, 900 65, 69, 92, 130, 78, 70, 85, 68, 87, 66, 901 72, 79, 72, 72, 68, 72, 88, 133, 68, 80, 902 72, 73, 89, 81, 68, 90, 82, 68, 68, 83, 903 68, 98, 91, 150, 68, 99, 95, 127, 127, 94, 904 68, 68, 96, 102, 137, 106, 97, 68, 68, 103, 905 68, 100, 104, 109, 135, 107, 68, 68, 108, 105, 906 68, 68, 113, 110, 114, 138, 130, 111, 112, 68, 907 116, 68, 118, 149, 139, 117, 119, 136, 124, 115, 908 909 124, 124, 72, 124, 72, 72, 129, 72, 129, 129, 910 68, 129, 67, 132, 67, 67, 68, 67, 68, 68, 911 68, 68, 67, 72, 143, 72, 72, 68, 72, 68, 912 140, 68, 142, 72, 73, 145, 146, 141, 147, 68, 913 68, 68, 144, 152, 68, 148, 153, 68, 68, 156, 914 155, 158, 68, 151, 163, 159, 161, 68, 68, 68, 915 154, 160, 68, 68, 162, 164, 68, 167, 68, 157, 916 68, 68, 165, 169, 68, 68, 176, 170, 68, 68, 917 68, 68, 166, 68, 168, 68, 173, 172, 68, 178, 918 171, 177, 68, 68, 174, 68, 175, 184, 180, 181, 919 920 120, 120, 127, 127, 122, 185, 182, 122, 130, 179, 921 130, 187, 124, 186, 124, 124, 129, 124, 129, 129, 922 72, 129, 72, 72, 68, 72, 68, 189, 68, 188, 923 68, 132, 68, 68, 194, 68, 191, 196, 68, 68, 924 195, 190, 68, 68, 202, 192, 68, 68, 68, 68, 925 68, 204, 206, 193, 68, 207, 68, 203, 197, 68, 926 68, 213, 68, 198, 209, 68, 216, 68, 199, 68, 927 205, 68, 128, 208, 200, 201, 218, 210, 212, 68, 928 211, 68, 214, 215, 68, 217, 222, 219, 220, 68, 929 221, 68, 224, 225, 223, 68, 68, 68, 68, 68, 930 931 68, 68, 226, 68, 68, 227, 229, 68, 68, 68, 932 68, 231, 238, 234, 68, 68, 228, 68, 68, 232, 933 240, 242, 241, 230, 68, 245, 68, 233, 236, 237, 934 68, 235, 68, 244, 239, 247, 68, 130, 248, 68, 935 68, 253, 68, 243, 68, 68, 68, 68, 246, 250, 936 252, 68, 254, 68, 258, 249, 68, 259, 251, 255, 937 68, 257, 68, 256, 68, 260, 68, 68, 266, 263, 938 68, 264, 68, 68, 68, 268, 261, 262, 68, 265, 939 270, 68, 68, 269, 68, 68, 267, 68, 275, 68, 940 68, 68, 278, 68, 68, 68, 279, 68, 68, 68, 941 942 272, 271, 274, 277, 68, 273, 280, 283, 276, 288, 943 68, 285, 281, 68, 68, 282, 68, 284, 286, 287, 944 68, 68, 68, 289, 294, 68, 295, 68, 296, 292, 945 290, 293, 68, 291, 68, 299, 68, 68, 68, 68, 946 68, 302, 301, 68, 308, 68, 68, 297, 68, 68, 947 309, 68, 68, 303, 298, 307, 300, 68, 68, 304, 948 313, 68, 305, 68, 306, 130, 312, 68, 68, 310, 949 324, 311, 315, 126, 68, 68, 314, 68, 323, 316, 950 317, 68, 327, 329, 68, 68, 325, 326, 68, 318, 951 68, 319, 320, 321, 328, 330, 322, 68, 68, 331, 952 953 332, 333, 335, 68, 334, 336, 337, 68, 68, 68, 954 68, 342, 68, 68, 68, 125, 343, 68, 338, 339, 955 68, 68, 68, 340, 341, 350, 346, 349, 345, 348, 956 352, 344, 68, 68, 68, 68, 68, 68, 354, 347, 957 353, 351, 68, 356, 68, 357, 68, 68, 68, 355, 958 68, 68, 361, 359, 68, 68, 68, 364, 358, 360, 959 362, 68, 365, 68, 68, 68, 369, 363, 68, 366, 960 68, 367, 68, 368, 68, 375, 68, 373, 68, 68, 961 68, 68, 374, 378, 372, 370, 68, 68, 371, 68, 962 68, 380, 68, 68, 376, 68, 379, 390, 68, 393, 963 964 377, 68, 68, 381, 68, 395, 389, 391, 382, 68, 965 383, 68, 388, 392, 68, 384, 396, 385, 68, 68, 966 394, 68, 68, 397, 68, 386, 401, 68, 130, 398, 967 68, 402, 405, 406, 68, 387, 68, 399, 68, 410, 968 68, 400, 404, 403, 68, 68, 407, 68, 408, 409, 969 68, 68, 68, 414, 416, 68, 411, 412, 417, 68, 970 418, 68, 413, 123, 415, 68, 419, 68, 420, 68, 971 421, 68, 425, 422, 68, 68, 423, 68, 424, 68, 972 68, 428, 429, 426, 68, 427, 68, 68, 68, 430, 973 68, 68, 435, 432, 436, 68, 68, 437, 433, 68, 974 975 431, 68, 434, 68, 438, 68, 68, 439, 442, 68, 976 441, 443, 445, 68, 450, 68, 68, 68, 447, 446, 977 68, 444, 68, 448, 68, 68, 68, 449, 453, 440, 978 451, 452, 68, 458, 455, 457, 68, 454, 456, 68, 979 68, 68, 461, 68, 459, 463, 462, 68, 68, 68, 980 464, 68, 68, 68, 465, 68, 68, 469, 68, 460, 981 68, 474, 68, 68, 470, 121, 68, 466, 68, 476, 982 467, 471, 468, 68, 68, 473, 472, 477, 68, 478, 983 68, 475, 480, 68, 68, 68, 68, 68, 68, 483, 984 482, 485, 484, 481, 479, 68, 68, 489, 68, 130, 985 986 486, 68, 68, 488, 491, 487, 68, 68, 497, 492, 987 68, 493, 490, 68, 68, 495, 68, 68, 68, 502, 988 498, 68, 494, 496, 506, 500, 68, 68, 499, 68, 989 503, 505, 504, 501, 68, 68, 507, 68, 508, 68, 990 513, 509, 68, 517, 68, 516, 510, 68, 68, 519, 991 68, 68, 511, 512, 518, 514, 68, 521, 68, 68, 992 68, 522, 68, 526, 515, 520, 68, 68, 525, 68, 993 531, 523, 530, 68, 529, 68, 68, 68, 524, 532, 994 68, 527, 68, 533, 68, 528, 68, 68, 534, 68, 995 535, 537, 539, 68, 538, 541, 68, 540, 68, 68, 996 997 68, 543, 536, 68, 545, 68, 68, 68, 68, 547, 998 68, 68, 68, 544, 68, 542, 68, 548, 68, 68, 999 546, 68, 555, 554, 68, 68, 68, 560, 549, 550, 1000 551, 68, 553, 552, 556, 558, 563, 68, 557, 559, 1001 68, 68, 68, 68, 561, 562, 564, 68, 567, 68, 1002 569, 68, 566, 570, 571, 68, 565, 68, 68, 574, 1003 68, 576, 68, 68, 68, 577, 130, 68, 568, 68, 1004 573, 579, 68, 572, 68, 68, 68, 68, 578, 68, 1005 575, 588, 68, 68, 68, 595, 68, 68, 580, 582, 1006 68, 590, 594, 591, 68, 602, 581, 68, 593, 589, 1007 1008 583, 601, 584, 592, 68, 596, 585, 68, 586, 68, 1009 597, 68, 598, 587, 600, 68, 603, 68, 68, 605, 1010 68, 606, 604, 608, 68, 68, 610, 68, 68, 609, 1011 599, 68, 68, 614, 68, 611, 68, 607, 68, 612, 1012 613, 68, 68, 615, 68, 621, 617, 68, 68, 68, 1013 68, 68, 68, 620, 624, 616, 619, 625, 618, 68, 1014 627, 68, 628, 623, 626, 622, 629, 68, 630, 68, 1015 634, 68, 631, 68, 68, 632, 68, 68, 633, 68, 1016 637, 68, 68, 68, 635, 68, 639, 640, 68, 641, 1017 68, 642, 643, 68, 68, 68, 636, 644, 646, 68, 1018 1019 638, 68, 68, 130, 68, 68, 68, 68, 645, 651, 1020 652, 68, 647, 68, 654, 650, 68, 656, 648, 68, 1021 657, 649, 68, 68, 653, 68, 660, 655, 658, 659, 1022 68, 68, 663, 661, 68, 662, 68, 68, 68, 68, 1023 68, 68, 671, 665, 68, 672, 68, 68, 68, 664, 1024 68, 673, 68, 668, 68, 669, 666, 676, 674, 68, 1025 68, 670, 675, 667, 679, 68, 68, 68, 68, 677, 1026 68, 68, 682, 68, 678, 681, 684, 686, 680, 68, 1027 68, 68, 68, 68, 68, 68, 68, 683, 687, 685, 1028 68, 68, 694, 68, 690, 688, 689, 68, 68, 698, 1029 1030 68, 700, 691, 693, 68, 692, 695, 697, 68, 68, 1031 696, 699, 703, 702, 68, 68, 704, 68, 735, 707, 1032 701, 68, 705, 706, 68, 68, 708, 68, 68, 68, 1033 711, 68, 709, 710, 68, 713, 712, 715, 716, 68, 1034 68, 68, 68, 68, 717, 718, 68, 68, 68, 719, 1035 68, 724, 714, 68, 720, 68, 721, 723, 722, 68, 1036 68, 68, 68, 725, 733, 68, 68, 727, 726, 729, 1037 734, 68, 68, 730, 728, 738, 68, 736, 731, 68, 1038 740, 68, 68, 68, 68, 737, 68, 732, 741, 742, 1039 68, 744, 745, 68, 68, 68, 68, 68, 746, 739, 1040 1041 750, 748, 743, 749, 751, 68, 68, 68, 753, 68, 1042 68, 752, 747, 68, 68, 68, 754, 757, 68, 760, 1043 759, 68, 68, 68, 68, 756, 68, 68, 764, 755, 1044 68, 68, 769, 68, 68, 758, 770, 68, 68, 68, 1045 68, 761, 762, 765, 763, 773, 68, 68, 68, 767, 1046 68, 776, 68, 68, 68, 766, 768, 772, 775, 68, 1047 771, 783, 68, 68, 774, 68, 777, 779, 782, 778, 1048 784, 781, 68, 68, 780, 68, 68, 68, 68, 791, 1049 785, 786, 788, 790, 68, 792, 68, 793, 787, 68, 1050 68, 795, 68, 797, 794, 68, 789, 798, 68, 799, 1051 1052 68, 68, 68, 68, 68, 804, 68, 68, 68, 803, 1053 68, 796, 68, 68, 800, 68, 68, 812, 68, 68, 1054 801, 802, 814, 805, 813, 806, 807, 808, 811, 809, 1055 68, 68, 68, 810, 818, 68, 68, 68, 68, 822, 1056 816, 819, 820, 815, 68, 68, 68, 824, 825, 68, 1057 823, 68, 817, 68, 826, 68, 68, 821, 827, 68, 1058 68, 68, 829, 828, 830, 68, 834, 68, 68, 68, 1059 832, 833, 68, 836, 68, 68, 831, 68, 68, 839, 1060 68, 68, 68, 841, 68, 838, 68, 844, 835, 68, 1061 68, 837, 848, 68, 68, 843, 840, 68, 842, 849, 1062 1063 850, 68, 845, 68, 846, 68, 68, 853, 854, 847, 1064 68, 852, 68, 851, 857, 856, 68, 858, 68, 68, 1065 68, 68, 68, 68, 68, 68, 862, 68, 859, 864, 1066 866, 855, 865, 68, 68, 68, 68, 860, 68, 873, 1067 861, 867, 68, 68, 68, 863, 68, 868, 871, 870, 1068 68, 872, 68, 68, 869, 68, 883, 68, 68, 878, 1069 882, 68, 874, 875, 68, 877, 879, 876, 68, 880, 1070 68, 881, 68, 885, 884, 890, 891, 68, 68, 887, 1071 68, 889, 888, 68, 68, 68, 68, 886, 68, 68, 1072 898, 68, 68, 128, 68, 901, 893, 68, 892, 895, 1073 1074 68, 68, 894, 903, 68, 909, 897, 899, 68, 68, 1075 900, 896, 902, 905, 906, 904, 68, 910, 68, 907, 1076 68, 68, 68, 68, 68, 908, 68, 68, 68, 68, 1077 68, 916, 68, 917, 918, 919, 68, 68, 911, 913, 1078 912, 920, 914, 923, 68, 921, 915, 68, 68, 925, 1079 927, 922, 68, 68, 68, 68, 68, 931, 68, 68, 1080 926, 924, 930, 933, 928, 932, 68, 934, 68, 935, 1081 68, 929, 68, 68, 68, 939, 68, 941, 68, 943, 1082 936, 942, 68, 68, 68, 945, 944, 68, 68, 937, 1083 68, 947, 938, 940, 949, 68, 68, 68, 950, 951, 1084 1085 68, 68, 68, 68, 68, 946, 68, 959, 68, 68, 1086 68, 961, 952, 948, 953, 68, 68, 68, 68, 954, 1087 68, 955, 956, 957, 963, 965, 68, 958, 68, 966, 1088 68, 968, 964, 68, 68, 960, 962, 972, 68, 971, 1089 68, 68, 68, 975, 68, 68, 976, 974, 68, 970, 1090 68, 68, 967, 68, 969, 68, 68, 977, 973, 986, 1091 68, 982, 68, 68, 68, 978, 979, 984, 981, 980, 1092 989, 983, 985, 990, 68, 68, 991, 993, 988, 68, 1093 992, 68, 68, 995, 987, 68, 68, 68, 68, 68, 1094 997, 994, 68, 1000, 68, 1002, 68, 996, 68, 998, 1095 1096 68, 1008, 68, 68, 1003, 1004, 1005, 68, 1006, 68, 1097 68, 68, 68, 68, 999, 1011, 1001, 1007, 1009, 1010, 1098 68, 1012, 1017, 68, 68, 68, 68, 68, 68, 1021, 1099 1019, 1014, 1013, 1015, 1016, 68, 68, 68, 1022, 68, 1100 1018, 1023, 68, 68, 1020, 68, 1024, 68, 1026, 68, 1101 68, 68, 68, 68, 68, 68, 1034, 1025, 1033, 68, 1102 1031, 1028, 1029, 1030, 1027, 68, 1038, 68, 1036, 68, 1103 68, 68, 1032, 1035, 68, 1040, 1041, 68, 68, 1037, 1104 68, 1046, 1042, 1043, 68, 68, 68, 68, 126, 1044, 1105 1047, 1050, 68, 68, 68, 1039, 1054, 68, 68, 68, 1106 1107 1045, 1049, 68, 1048, 68, 1051, 1052, 1055, 68, 1053, 1108 68, 1056, 68, 1057, 68, 1058, 68, 1059, 68, 68, 1109 1062, 68, 1060, 68, 1063, 1066, 68, 68, 1061, 68, 1110 1065, 1070, 1067, 1068, 68, 68, 1073, 68, 1069, 68, 1111 1071, 1064, 1072, 68, 1076, 68, 68, 1074, 68, 1077, 1112 68, 68, 1075, 68, 68, 1079, 68, 1080, 1078, 1082, 1113 68, 68, 68, 68, 68, 68, 1081, 1090, 68, 68, 1114 68, 68, 1091, 68, 68, 1130, 1088, 68, 1094, 1084, 1115 68, 1086, 1083, 1092, 1087, 1085, 1089, 1093, 1095, 68, 1116 1096, 68, 1100, 1097, 1098, 68, 1099, 68, 1101, 68, 1117 1118 1102, 68, 68, 68, 1105, 68, 68, 68, 1104, 1107, 1119 68, 68, 68, 1109, 68, 1110, 68, 1111, 1113, 68, 1120 68, 1103, 1115, 68, 68, 1106, 1116, 68, 68, 1108, 1121 68, 1118, 1112, 1114, 68, 68, 1120, 1119, 68, 1121, 1122 68, 68, 68, 68, 68, 1129, 1117, 1125, 68, 68, 1123 68, 1123, 1127, 1128, 68, 1133, 1126, 1134, 1132, 68, 1124 1122, 1124, 68, 68, 1135, 68, 68, 68, 1131, 1139, 1125 68, 1142, 1136, 68, 1137, 1140, 1143, 1138, 1141, 68, 1126 1144, 68, 68, 68, 68, 68, 68, 1145, 1147, 1150, 1127 68, 1149, 68, 68, 68, 68, 1151, 1155, 1153, 68, 1128 1129 68, 1156, 68, 1146, 68, 1148, 68, 1154, 1152, 1157, 1130 68, 1158, 1159, 68, 1160, 68, 1161, 68, 1162, 68, 1131 1163, 68, 68, 68, 1164, 1166, 68, 1165, 1167, 68, 1132 68, 1168, 68, 1169, 68, 1170, 1171, 68, 1172, 68, 1133 1173, 68, 68, 68, 1174, 68, 68, 1180, 68, 68, 1134 68, 68, 1175, 68, 1176, 1177, 68, 1178, 1181, 68, 1135 68, 68, 68, 68, 1190, 68, 1179, 1188, 1189, 1184, 1136 68, 1183, 68, 1186, 68, 1192, 1182, 1185, 1187, 1191, 1137 1193, 68, 68, 68, 68, 1195, 68, 1200, 68, 1201, 1138 1196, 1194, 68, 68, 68, 68, 68, 68, 68, 1207, 1139 1140 1198, 1197, 1208, 68, 68, 1199, 68, 1202, 1211, 68, 1141 68, 68, 1203, 1213, 68, 1204, 1205, 68, 1206, 1209, 1142 1214, 68, 68, 1215, 1210, 68, 1217, 68, 68, 1212, 1143 1218, 68, 1219, 1216, 68, 68, 1220, 68, 125, 1222, 1144 1223, 1225, 68, 1226, 68, 1227, 1221, 1228, 68, 68, 1145 68, 68, 1224, 1229, 68, 68, 1230, 68, 1232, 68, 1146 68, 1231, 68, 1236, 68, 68, 68, 68, 1234, 1235, 1147 1233, 1240, 68, 1237, 1242, 68, 1241, 68, 68, 68, 1148 68, 68, 1244, 123, 1238, 1239, 1243, 68, 1245, 1247, 1149 68, 68, 1249, 1246, 68, 1251, 68, 1250, 1252, 68, 1150 1151 68, 1248, 1255, 1256, 68, 1253, 68, 68, 68, 68, 1152 1257, 68, 68, 68, 1254, 1258, 68, 1262, 68, 1260, 1153 68, 68, 68, 1264, 68, 68, 68, 1259, 1269, 1263, 1154 68, 1261, 68, 1267, 1271, 68, 1272, 68, 68, 1273, 1155 1265, 68, 1268, 68, 1270, 68, 1274, 1266, 1277, 68, 1156 1275, 68, 1278, 68, 1279, 68, 68, 68, 1280, 1284, 1157 68, 68, 68, 68, 1281, 68, 1276, 68, 1282, 68, 1158 1285, 1283, 68, 1286, 1289, 1288, 1292, 68, 68, 1294, 1159 68, 1287, 68, 1293, 1291, 1297, 68, 1298, 68, 1290, 1160 68, 68, 1295, 68, 1302, 68, 68, 1304, 68, 68, 1161 1162 68, 68, 68, 1300, 1296, 121, 1307, 1311, 1303, 1299, 1163 1308, 68, 68, 1301, 1306, 1309, 68, 1315, 1305, 1310, 1164 68, 1312, 68, 68, 1313, 1314, 68, 68, 1317, 68, 1165 68, 68, 68, 1321, 68, 1316, 1318, 1319, 68, 1323, 1166 68, 68, 1322, 1325, 68, 1324, 68, 68, 1328, 68, 1167 1320, 1329, 68, 1330, 68, 1331, 68, 68, 68, 1333, 1168 68, 1326, 68, 68, 1334, 1327, 1336, 68, 68, 1332, 1169 68, 68, 1337, 1341, 68, 68, 1342, 1342, 1342, 1342, 1170 1342, 1342, 1335, 1338, 1339, 1342, 1342, 1342, 1342, 1342, 1171 1340, 40, 40, 40, 40, 40, 40, 40, 45, 45, 1172 1173 45, 45, 45, 45, 45, 50, 50, 50, 50, 50, 1174 50, 50, 56, 56, 56, 56, 56, 56, 56, 61, 1175 61, 61, 61, 61, 61, 61, 71, 71, 1342, 71, 1176 71, 71, 71, 120, 120, 1342, 1342, 1342, 120, 120, 1177 122, 122, 1342, 1342, 122, 1342, 122, 124, 1342, 1342, 1178 1342, 1342, 1342, 124, 127, 127, 1342, 1342, 1342, 127, 1179 127, 129, 1342, 1342, 1342, 1342, 1342, 129, 131, 131, 1180 1342, 131, 131, 131, 131, 72, 72, 1342, 72, 72, 1181 72, 72, 13, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1182 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1183 1184 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1185 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1186 1342, 1342 1187 } ; 1188 1189 static yyconst flex_int16_t yy_chk[2723] = 1190 { 0, 1191 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1192 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1193 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1194 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1195 3, 3, 4, 4, 4, 49, 5, 5, 49, 3, 1196 5, 15, 4, 6, 6, 15, 5, 6, 9, 9, 1197 9, 116, 33, 6, 7, 7, 7, 7, 9, 7, 1198 10, 10, 10, 44, 44, 7, 8, 8, 8, 8, 1199 10, 8, 21, 33, 116, 21, 21, 8, 11, 11, 1200 11, 11, 11, 11, 1348, 20, 29, 20, 20, 11, 1201 1202 20, 29, 24, 21, 25, 20, 24, 28, 11, 12, 1203 12, 12, 12, 12, 12, 74, 22, 22, 74, 25, 1204 12, 69, 28, 66, 22, 69, 24, 26, 26, 12, 1205 19, 22, 19, 19, 23, 19, 26, 66, 27, 23, 1206 19, 19, 27, 23, 30, 27, 23, 31, 89, 23, 1207 32, 32, 27, 89, 34, 32, 31, 60, 60, 30, 1208 35, 77, 31, 34, 77, 35, 31, 78, 36, 34, 1209 75, 32, 34, 36, 75, 35, 38, 76, 35, 34, 1210 79, 37, 37, 36, 37, 78, 577, 36, 36, 88, 1211 38, 39, 39, 88, 79, 38, 39, 76, 55, 37, 1212 1213 55, 55, 63, 55, 63, 63, 65, 63, 65, 65, 1214 82, 65, 68, 63, 68, 68, 85, 68, 80, 81, 1215 86, 84, 68, 71, 83, 71, 71, 87, 71, 83, 1216 80, 92, 82, 71, 71, 84, 85, 81, 86, 90, 1217 91, 98, 83, 91, 93, 87, 91, 95, 94, 93, 1218 92, 94, 96, 90, 98, 94, 96, 97, 99, 100, 1219 91, 95, 101, 102, 97, 99, 103, 102, 104, 93, 1220 105, 107, 100, 104, 106, 108, 110, 104, 109, 111, 1221 113, 110, 101, 114, 103, 115, 107, 106, 112, 112, 1222 105, 111, 117, 118, 108, 119, 109, 117, 113, 114, 1223 1224 121, 121, 128, 128, 123, 118, 115, 123, 133, 112, 1225 129, 133, 125, 119, 125, 125, 130, 125, 130, 130, 1226 131, 130, 131, 131, 134, 131, 136, 135, 137, 134, 1227 138, 131, 135, 139, 140, 141, 137, 142, 145, 140, 1228 141, 136, 142, 144, 144, 138, 146, 147, 148, 151, 1229 149, 146, 148, 139, 143, 149, 154, 145, 143, 150, 1230 153, 154, 155, 143, 151, 152, 157, 156, 143, 161, 1231 147, 157, 127, 150, 143, 143, 159, 152, 153, 160, 1232 152, 159, 155, 156, 158, 158, 162, 159, 160, 163, 1233 161, 162, 164, 165, 163, 166, 168, 164, 165, 167, 1234 1235 169, 170, 166, 171, 172, 167, 169, 173, 174, 175, 1236 176, 171, 177, 174, 178, 180, 168, 177, 179, 172, 1237 179, 181, 180, 170, 182, 184, 181, 173, 176, 176, 1238 184, 175, 183, 183, 178, 185, 186, 187, 186, 188, 1239 185, 190, 189, 182, 192, 193, 190, 191, 184, 187, 1240 189, 195, 191, 194, 195, 186, 196, 196, 188, 192, 1241 198, 194, 199, 193, 197, 197, 200, 201, 203, 200, 1242 202, 201, 204, 203, 205, 205, 198, 199, 206, 202, 1243 207, 208, 209, 206, 210, 207, 204, 212, 212, 211, 1244 213, 214, 215, 216, 217, 218, 216, 215, 219, 221, 1245 1246 209, 208, 211, 214, 220, 210, 217, 219, 213, 223, 1247 223, 221, 218, 225, 226, 218, 222, 220, 222, 222, 1248 224, 229, 227, 224, 228, 228, 229, 230, 230, 226, 1249 225, 227, 231, 225, 232, 233, 234, 235, 236, 237, 1250 233, 236, 235, 238, 240, 241, 239, 231, 242, 240, 1251 241, 243, 244, 237, 232, 239, 234, 245, 246, 238, 1252 245, 249, 238, 248, 238, 250, 244, 252, 251, 242, 1253 249, 243, 246, 126, 253, 255, 245, 247, 248, 247, 1254 247, 258, 252, 254, 256, 257, 250, 251, 254, 247, 1255 259, 247, 247, 247, 253, 255, 247, 260, 262, 256, 1256 1257 257, 258, 260, 263, 259, 261, 261, 264, 261, 266, 1258 265, 266, 267, 268, 269, 124, 267, 270, 262, 263, 1259 271, 273, 272, 264, 265, 273, 270, 272, 269, 271, 1260 275, 268, 274, 277, 276, 275, 278, 281, 277, 270, 1261 276, 274, 279, 279, 282, 280, 286, 283, 290, 278, 1262 280, 284, 284, 282, 293, 285, 287, 287, 281, 283, 1263 285, 289, 289, 291, 292, 295, 293, 286, 296, 290, 1264 297, 291, 298, 292, 299, 300, 301, 298, 302, 303, 1265 300, 304, 299, 303, 297, 295, 305, 306, 296, 307, 1266 310, 305, 309, 312, 301, 314, 304, 311, 313, 313, 1267 1268 302, 316, 311, 306, 315, 315, 310, 311, 307, 308, 1269 308, 317, 309, 312, 318, 308, 316, 308, 319, 320, 1270 314, 321, 322, 317, 323, 308, 321, 324, 325, 318, 1271 328, 322, 325, 326, 327, 308, 329, 319, 326, 330, 1272 330, 320, 324, 323, 331, 332, 327, 333, 328, 329, 1273 334, 335, 342, 334, 336, 336, 331, 332, 337, 337, 1274 338, 348, 333, 122, 335, 338, 339, 339, 340, 340, 1275 341, 343, 345, 342, 344, 341, 343, 345, 344, 346, 1276 347, 348, 349, 346, 350, 347, 351, 349, 355, 350, 1277 352, 353, 353, 352, 354, 359, 367, 355, 352, 354, 1278 1279 351, 356, 352, 357, 356, 358, 360, 357, 359, 361, 1280 358, 360, 362, 363, 367, 364, 368, 362, 364, 363, 1281 365, 361, 366, 365, 374, 370, 369, 366, 370, 357, 1282 368, 369, 371, 374, 372, 373, 379, 371, 372, 372, 1283 373, 375, 376, 377, 375, 377, 376, 376, 378, 380, 1284 378, 381, 382, 383, 379, 384, 385, 383, 386, 375, 1285 387, 388, 389, 394, 384, 120, 388, 380, 390, 390, 1286 381, 385, 382, 391, 392, 387, 386, 391, 393, 392, 1287 395, 389, 394, 396, 397, 398, 399, 401, 403, 397, 1288 396, 399, 398, 395, 393, 400, 402, 403, 404, 405, 1289 1290 400, 408, 418, 402, 405, 401, 406, 407, 411, 406, 1291 413, 407, 404, 411, 409, 409, 412, 414, 415, 418, 1292 412, 421, 408, 409, 424, 414, 422, 423, 413, 424, 1293 421, 423, 422, 415, 425, 426, 425, 427, 425, 428, 1294 426, 425, 429, 430, 430, 429, 425, 431, 432, 432, 1295 433, 436, 425, 425, 431, 427, 434, 434, 435, 437, 1296 438, 435, 439, 439, 428, 433, 440, 441, 438, 442, 1297 444, 436, 443, 443, 442, 444, 445, 446, 437, 445, 1298 447, 440, 448, 446, 449, 441, 450, 451, 447, 453, 1299 448, 450, 452, 452, 451, 454, 455, 453, 457, 458, 1300 1301 454, 457, 449, 459, 459, 460, 461, 463, 464, 461, 1302 465, 466, 467, 458, 468, 455, 470, 461, 469, 471, 1303 460, 474, 469, 468, 475, 473, 472, 474, 463, 464, 1304 465, 476, 467, 466, 470, 472, 477, 479, 471, 473, 1305 480, 477, 478, 481, 475, 476, 478, 482, 481, 483, 1306 483, 485, 480, 484, 485, 486, 479, 487, 484, 488, 1307 489, 490, 490, 492, 488, 491, 491, 493, 482, 494, 1308 487, 493, 495, 486, 499, 496, 500, 498, 492, 501, 1309 489, 498, 502, 509, 503, 505, 504, 508, 494, 496, 1310 505, 500, 504, 501, 67, 509, 495, 497, 503, 499, 1311 1312 497, 508, 497, 502, 506, 506, 497, 513, 497, 507, 1313 506, 512, 506, 497, 507, 510, 510, 511, 514, 512, 1314 520, 513, 511, 515, 515, 516, 518, 521, 522, 516, 1315 506, 518, 519, 522, 523, 519, 524, 514, 526, 520, 1316 521, 525, 527, 523, 528, 529, 525, 531, 532, 533, 1317 529, 536, 534, 528, 533, 524, 527, 534, 526, 535, 1318 536, 537, 537, 532, 535, 531, 538, 542, 540, 543, 1319 542, 538, 540, 540, 541, 541, 544, 545, 541, 546, 1320 545, 547, 548, 549, 543, 550, 547, 548, 552, 549, 1321 553, 550, 551, 551, 555, 554, 544, 552, 554, 556, 1322 1323 546, 557, 558, 61, 559, 560, 561, 568, 553, 559, 1324 560, 562, 555, 566, 562, 558, 563, 564, 556, 569, 1325 565, 557, 564, 570, 561, 565, 568, 563, 566, 567, 1326 567, 572, 571, 569, 573, 570, 571, 574, 575, 578, 1327 579, 580, 581, 573, 584, 582, 583, 581, 585, 572, 1328 582, 583, 586, 578, 587, 579, 574, 586, 584, 588, 1329 590, 580, 585, 575, 589, 589, 591, 592, 593, 587, 1330 595, 594, 592, 596, 588, 591, 594, 596, 590, 597, 1331 598, 599, 600, 601, 602, 603, 604, 593, 597, 595, 1332 606, 605, 604, 611, 600, 598, 599, 610, 607, 609, 1333 1334 612, 611, 601, 603, 609, 602, 605, 607, 613, 615, 1335 606, 610, 614, 613, 616, 644, 614, 614, 644, 617, 1336 612, 623, 615, 616, 617, 618, 618, 619, 620, 621, 1337 621, 622, 619, 620, 624, 623, 622, 625, 626, 627, 1338 629, 628, 625, 626, 627, 628, 630, 632, 633, 629, 1339 634, 632, 624, 635, 629, 636, 629, 630, 629, 638, 1340 639, 637, 640, 633, 641, 641, 646, 635, 634, 637, 1341 642, 642, 645, 638, 636, 647, 647, 645, 639, 648, 1342 649, 649, 652, 650, 654, 646, 653, 640, 650, 651, 1343 651, 653, 654, 655, 656, 657, 658, 669, 655, 648, 1344 1345 660, 657, 652, 658, 661, 660, 662, 664, 663, 661, 1346 665, 662, 656, 663, 666, 668, 664, 667, 667, 670, 1347 669, 671, 672, 675, 670, 666, 673, 674, 674, 665, 1348 676, 677, 680, 678, 681, 668, 680, 680, 685, 682, 1349 683, 671, 672, 675, 673, 683, 684, 686, 687, 677, 1350 688, 686, 691, 689, 693, 676, 678, 682, 685, 690, 1351 681, 693, 695, 692, 684, 694, 687, 689, 692, 688, 1352 694, 691, 696, 697, 690, 699, 698, 706, 700, 701, 1353 695, 696, 698, 700, 701, 702, 703, 703, 697, 705, 1354 702, 706, 707, 708, 705, 710, 699, 708, 708, 709, 1355 1356 709, 711, 712, 713, 715, 714, 716, 717, 718, 713, 1357 714, 707, 720, 721, 710, 719, 722, 722, 724, 723, 1358 711, 712, 724, 715, 723, 716, 717, 718, 721, 719, 1359 725, 726, 727, 720, 728, 728, 729, 731, 730, 732, 1360 726, 729, 730, 725, 732, 735, 736, 736, 737, 745, 1361 735, 746, 727, 737, 739, 739, 748, 731, 741, 741, 1362 743, 744, 744, 743, 745, 747, 749, 749, 750, 752, 1363 747, 748, 751, 751, 753, 754, 746, 755, 756, 754, 1364 758, 759, 761, 756, 762, 753, 760, 760, 750, 763, 1365 764, 752, 764, 767, 765, 759, 755, 768, 758, 765, 1366 1367 766, 769, 761, 771, 762, 766, 772, 769, 771, 763, 1368 776, 768, 773, 767, 774, 773, 775, 775, 777, 774, 1369 778, 779, 780, 784, 781, 783, 779, 785, 776, 781, 1370 783, 772, 782, 782, 786, 787, 788, 777, 789, 790, 1371 778, 784, 791, 792, 790, 780, 793, 785, 788, 787, 1372 794, 789, 795, 801, 786, 797, 801, 796, 802, 795, 1373 800, 800, 791, 792, 803, 794, 796, 793, 804, 796, 1374 805, 797, 806, 803, 802, 807, 808, 808, 809, 805, 1375 807, 806, 805, 810, 811, 812, 813, 804, 814, 815, 1376 815, 816, 817, 56, 820, 819, 810, 828, 809, 812, 1377 1378 819, 824, 811, 821, 829, 828, 814, 816, 821, 822, 1379 817, 813, 820, 823, 824, 822, 825, 829, 823, 825, 1380 830, 831, 841, 832, 833, 825, 835, 836, 837, 838, 1381 839, 836, 840, 837, 838, 839, 842, 845, 830, 832, 1382 831, 840, 833, 843, 843, 841, 835, 844, 846, 845, 1383 847, 842, 848, 849, 853, 847, 850, 851, 851, 856, 1384 846, 844, 850, 853, 848, 852, 852, 854, 854, 855, 1385 857, 849, 858, 860, 855, 859, 859, 861, 861, 863, 1386 856, 862, 862, 864, 863, 866, 864, 867, 869, 857, 1387 866, 868, 858, 860, 870, 870, 868, 871, 871, 872, 1388 1389 873, 874, 875, 876, 872, 867, 877, 878, 878, 879, 1390 880, 880, 873, 869, 873, 883, 881, 884, 885, 873, 1391 886, 874, 875, 876, 883, 885, 887, 877, 889, 886, 1392 888, 888, 884, 890, 892, 879, 881, 893, 894, 892, 1393 895, 897, 893, 896, 896, 899, 897, 895, 898, 890, 1394 901, 900, 887, 902, 889, 903, 905, 898, 894, 906, 1395 906, 903, 904, 907, 908, 899, 900, 905, 902, 901, 1396 909, 904, 905, 910, 910, 909, 911, 912, 908, 913, 1397 911, 911, 912, 914, 907, 915, 916, 917, 914, 918, 1398 916, 913, 922, 919, 920, 921, 928, 915, 919, 917, 1399 1400 921, 928, 924, 933, 922, 924, 925, 925, 926, 926, 1401 930, 927, 929, 936, 918, 933, 920, 927, 929, 930, 1402 935, 935, 940, 940, 937, 938, 943, 945, 946, 946, 1403 944, 936, 935, 937, 938, 944, 947, 951, 947, 950, 1404 943, 948, 948, 953, 945, 957, 950, 952, 952, 954, 1405 955, 956, 958, 960, 961, 962, 961, 951, 960, 963, 1406 957, 954, 955, 956, 953, 964, 965, 965, 963, 966, 1407 967, 971, 958, 962, 968, 967, 968, 969, 970, 964, 1408 972, 973, 969, 970, 976, 974, 973, 977, 51, 971, 1409 974, 978, 978, 979, 981, 966, 981, 980, 982, 983, 1410 1411 972, 977, 988, 976, 987, 979, 980, 982, 984, 980, 1412 985, 983, 989, 984, 991, 985, 994, 987, 993, 999, 1413 991, 995, 988, 997, 993, 996, 996, 1000, 989, 1002, 1414 995, 1000, 997, 998, 998, 1001, 1003, 1003, 999, 1004, 1415 1001, 994, 1002, 1007, 1008, 1008, 1010, 1004, 1009, 1009, 1416 1011, 1013, 1007, 1012, 1014, 1011, 1015, 1012, 1010, 1014, 1417 1016, 1018, 1019, 1020, 1021, 1022, 1013, 1024, 1024, 1025, 1418 1026, 1065, 1025, 1034, 1027, 1065, 1021, 1028, 1028, 1016, 1419 1031, 1019, 1015, 1026, 1020, 1018, 1022, 1027, 1029, 1029, 1420 1030, 1030, 1034, 1031, 1032, 1032, 1033, 1033, 1035, 1035, 1421 1422 1036, 1036, 1037, 1039, 1040, 1040, 1041, 1044, 1039, 1042, 1423 1042, 1043, 1045, 1044, 1048, 1045, 1046, 1046, 1047, 1047, 1424 1052, 1037, 1049, 1049, 1055, 1041, 1051, 1051, 1054, 1043, 1425 1053, 1053, 1046, 1048, 1056, 1057, 1055, 1054, 1058, 1056, 1426 1059, 1061, 1060, 1062, 1063, 1064, 1052, 1060, 1067, 1069, 1427 1064, 1058, 1062, 1063, 1070, 1070, 1061, 1071, 1069, 1074, 1428 1057, 1059, 1071, 1072, 1072, 1075, 1077, 1080, 1067, 1077, 1429 1078, 1080, 1072, 1081, 1074, 1078, 1081, 1075, 1079, 1079, 1430 1082, 1082, 1083, 1084, 1085, 1086, 1087, 1083, 1085, 1088, 1431 1089, 1087, 1091, 1092, 1088, 1094, 1089, 1094, 1092, 1093, 1432 1433 1097, 1097, 1111, 1084, 1110, 1086, 1103, 1093, 1091, 1100, 1434 1100, 1103, 1104, 1104, 1106, 1106, 1108, 1109, 1109, 1119, 1435 1110, 1108, 1112, 1117, 1111, 1114, 1114, 1112, 1117, 1118, 1436 1120, 1118, 1124, 1119, 1125, 1120, 1121, 1121, 1122, 1122, 1437 1123, 1123, 1126, 1127, 1124, 1128, 1129, 1130, 1130, 1131, 1438 1132, 1133, 1125, 1135, 1126, 1127, 1134, 1128, 1131, 1136, 1439 1137, 1142, 1138, 1139, 1140, 1140, 1129, 1138, 1139, 1134, 1440 1147, 1133, 1148, 1136, 1143, 1143, 1132, 1135, 1137, 1142, 1441 1145, 1145, 1146, 1149, 1150, 1147, 1151, 1152, 1152, 1153, 1442 1148, 1146, 1154, 1155, 1153, 1156, 1162, 1158, 1161, 1162, 1443 1444 1150, 1149, 1163, 1163, 1164, 1151, 1165, 1154, 1167, 1167, 1445 1168, 1175, 1155, 1169, 1169, 1156, 1158, 1176, 1161, 1164, 1446 1170, 1170, 1174, 1174, 1165, 1177, 1176, 1178, 1179, 1168, 1447 1177, 1181, 1178, 1175, 1182, 1183, 1179, 1184, 50, 1182, 1448 1183, 1185, 1185, 1186, 1186, 1187, 1181, 1188, 1188, 1192, 1449 1187, 1191, 1184, 1189, 1189, 1194, 1191, 1195, 1194, 1196, 1450 1197, 1192, 1198, 1198, 1199, 1201, 1202, 1204, 1196, 1197, 1451 1195, 1203, 1203, 1199, 1205, 1205, 1204, 1207, 1206, 1209, 1452 1210, 1215, 1207, 45, 1201, 1202, 1206, 1220, 1209, 1212, 1453 1212, 1216, 1216, 1210, 1217, 1218, 1218, 1217, 1219, 1219, 1454 1455 1221, 1215, 1222, 1223, 1223, 1220, 1224, 1222, 1230, 1227, 1456 1224, 1231, 1232, 1234, 1221, 1227, 1233, 1233, 1235, 1231, 1457 1236, 1237, 1239, 1235, 1238, 1241, 1243, 1230, 1241, 1234, 1458 1246, 1232, 1245, 1238, 1244, 1244, 1245, 1248, 1249, 1246, 1459 1236, 1250, 1239, 1253, 1243, 1255, 1248, 1237, 1253, 1259, 1460 1249, 1254, 1254, 1257, 1255, 1258, 1260, 1263, 1257, 1261, 1461 1261, 1262, 1264, 1267, 1258, 1268, 1250, 1265, 1259, 1266, 1462 1262, 1260, 1273, 1263, 1266, 1265, 1269, 1269, 1270, 1272, 1463 1272, 1264, 1274, 1270, 1268, 1275, 1275, 1276, 1276, 1267, 1464 1277, 1278, 1273, 1279, 1280, 1280, 1281, 1282, 1282, 1283, 1465 1466 1285, 1286, 1290, 1278, 1274, 40, 1286, 1290, 1281, 1277, 1467 1287, 1287, 1296, 1279, 1285, 1288, 1288, 1296, 1283, 1289, 1468 1289, 1291, 1291, 1293, 1293, 1295, 1295, 1299, 1300, 1300, 1469 1305, 1301, 1303, 1306, 1306, 1299, 1301, 1303, 1307, 1311, 1470 1311, 1313, 1307, 1315, 1315, 1313, 1316, 1318, 1319, 1319, 1471 1305, 1320, 1320, 1322, 1322, 1324, 1324, 1326, 1327, 1327, 1472 1332, 1316, 1333, 1335, 1332, 1318, 1334, 1334, 1337, 1326, 1473 1338, 1339, 1335, 1340, 1340, 14, 13, 0, 0, 0, 1474 0, 0, 1333, 1337, 1338, 0, 0, 0, 0, 0, 1475 1339, 1343, 1343, 1343, 1343, 1343, 1343, 1343, 1344, 1344, 1476 1477 1344, 1344, 1344, 1344, 1344, 1345, 1345, 1345, 1345, 1345, 1478 1345, 1345, 1346, 1346, 1346, 1346, 1346, 1346, 1346, 1347, 1479 1347, 1347, 1347, 1347, 1347, 1347, 1349, 1349, 0, 1349, 1480 1349, 1349, 1349, 1350, 1350, 0, 0, 0, 1350, 1350, 1481 1351, 1351, 0, 0, 1351, 0, 1351, 1352, 0, 0, 1482 0, 0, 0, 1352, 1353, 1353, 0, 0, 0, 1353, 1483 1353, 1354, 0, 0, 0, 0, 0, 1354, 1355, 1355, 1484 0, 1355, 1355, 1355, 1355, 1356, 1356, 0, 1356, 1356, 1485 1356, 1356, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1486 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1487 1488 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1489 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1342, 1490 1342, 1342 1491 } ; 1492 1493 static yy_state_type yy_last_accepting_state; 1494 static char *yy_last_accepting_cpos; 1495 1496 extern int yy_flex_debug; 1497 int yy_flex_debug = 0; 1498 1499 /* The intent behind this definition is that it'll catch 1500 * any uses of REJECT which flex missed. 1501 */ 1502 #define REJECT reject_used_but_not_detected 1503 static int yy_more_flag = 0; 1504 static int yy_more_len = 0; 1505 #define yymore() ((yy_more_flag) = 1) 1506 #define YY_MORE_ADJ (yy_more_len) 1507 #define YY_RESTORE_YY_MORE_OFFSET 1508 char *yytext; 1509 /* 1510 * configlexer.lex - lexical analyzer for unbound config file 1511 * 1512 * Copyright (c) 2001-2006, NLnet Labs. All rights reserved 1513 * 1514 * See LICENSE for the license. 1515 * 1516 */ 1517 1518 #include <ctype.h> 1519 #include <string.h> 1520 #include <strings.h> 1521 #ifdef HAVE_GLOB_H 1522 # include <glob.h> 1523 #endif 1524 1525 #include "util/config_file.h" 1526 #include "util/configparser.h" 1527 void ub_c_error(const char *message); 1528 1529 #if 0 1530 #define LEXOUT(s) printf s /* used ONLY when debugging */ 1531 #else 1532 #define LEXOUT(s) 1533 #endif 1534 1535 /** avoid warning in about fwrite return value */ 1536 #define ECHO ub_c_error_msg("syntax error at text: %s", yytext) 1537 1538 /** A parser variable, this is a statement in the config file which is 1539 * of the form variable: value1 value2 ... nargs is the number of values. */ 1540 #define YDVAR(nargs, var) \ 1541 num_args=(nargs); \ 1542 LEXOUT(("v(%s%d) ", yytext, num_args)); \ 1543 if(num_args > 0) { BEGIN(val); } \ 1544 return (var); 1545 1546 struct inc_state { 1547 char* filename; 1548 int line; 1549 }; 1550 static struct inc_state parse_stack[MAXINCLUDES]; 1551 static YY_BUFFER_STATE include_stack[MAXINCLUDES]; 1552 static int config_include_stack_ptr = 0; 1553 static int inc_prev = 0; 1554 static int num_args = 0; 1555 1556 static void config_start_include(const char* filename) 1557 { 1558 FILE *input; 1559 if(strlen(filename) == 0) { 1560 ub_c_error_msg("empty include file name"); 1561 return; 1562 } 1563 if(config_include_stack_ptr >= MAXINCLUDES) { 1564 ub_c_error_msg("includes nested too deeply, skipped (>%d)", MAXINCLUDES); 1565 return; 1566 } 1567 if(cfg_parser->chroot && strncmp(filename, cfg_parser->chroot, 1568 strlen(cfg_parser->chroot)) == 0) { 1569 filename += strlen(cfg_parser->chroot); 1570 } 1571 input = fopen(filename, "r"); 1572 if(!input) { 1573 ub_c_error_msg("cannot open include file '%s': %s", 1574 filename, strerror(errno)); 1575 return; 1576 } 1577 LEXOUT(("switch_to_include_file(%s) ", filename)); 1578 parse_stack[config_include_stack_ptr].filename = cfg_parser->filename; 1579 parse_stack[config_include_stack_ptr].line = cfg_parser->line; 1580 include_stack[config_include_stack_ptr] = YY_CURRENT_BUFFER; 1581 cfg_parser->filename = strdup(filename); 1582 cfg_parser->line = 1; 1583 yy_switch_to_buffer(yy_create_buffer(input,YY_BUF_SIZE)); 1584 ++config_include_stack_ptr; 1585 } 1586 1587 static void config_start_include_glob(const char* filename) 1588 { 1589 1590 /* check for wildcards */ 1591 #ifdef HAVE_GLOB 1592 glob_t g; 1593 size_t i; 1594 int r, flags; 1595 if(!(!strchr(filename, '*') && !strchr(filename, '?') && !strchr(filename, '[') && 1596 !strchr(filename, '{') && !strchr(filename, '~'))) { 1597 flags = 0 1598 #ifdef GLOB_ERR 1599 | GLOB_ERR 1600 #endif 1601 #ifdef GLOB_NOSORT 1602 | GLOB_NOSORT 1603 #endif 1604 #ifdef GLOB_BRACE 1605 | GLOB_BRACE 1606 #endif 1607 #ifdef GLOB_TILDE 1608 | GLOB_TILDE 1609 #endif 1610 ; 1611 memset(&g, 0, sizeof(g)); 1612 r = glob(filename, flags, NULL, &g); 1613 if(r) { 1614 /* some error */ 1615 globfree(&g); 1616 config_start_include(filename); /* let original deal with it */ 1617 return; 1618 } 1619 /* process files found, if any */ 1620 for(i=0; i<(size_t)g.gl_pathc; i++) { 1621 config_start_include(g.gl_pathv[i]); 1622 } 1623 globfree(&g); 1624 return; 1625 } 1626 #endif /* HAVE_GLOB */ 1627 1628 config_start_include(filename); 1629 } 1630 1631 static void config_end_include(void) 1632 { 1633 --config_include_stack_ptr; 1634 free(cfg_parser->filename); 1635 cfg_parser->filename = parse_stack[config_include_stack_ptr].filename; 1636 cfg_parser->line = parse_stack[config_include_stack_ptr].line; 1637 yy_delete_buffer(YY_CURRENT_BUFFER); 1638 yy_switch_to_buffer(include_stack[config_include_stack_ptr]); 1639 } 1640 1641 #ifndef yy_set_bol /* compat definition, for flex 2.4.6 */ 1642 #define yy_set_bol(at_bol) \ 1643 { \ 1644 if ( ! yy_current_buffer ) \ 1645 yy_current_buffer = yy_create_buffer(yyin,YY_BUF_SIZE ); \ 1646 yy_current_buffer->yy_ch_buf[0] = ((at_bol)?'\n':' '); \ 1647 } 1648 #endif 1649 1650 #define YY_NO_INPUT 1 1651 #ifndef YY_NO_UNPUT 1652 #define YY_NO_UNPUT 1 1653 #endif 1654 #ifndef YY_NO_INPUT 1655 #define YY_NO_INPUT 1 1656 #endif 1657 1658 #define INITIAL 0 1659 #define quotedstring 1 1660 #define singlequotedstr 2 1661 #define include 3 1662 #define include_quoted 4 1663 #define val 5 1664 1665 #ifndef YY_NO_UNISTD_H 1666 /* Special case for "unistd.h", since it is non-ANSI. We include it way 1667 * down here because we want the user's section 1 to have been scanned first. 1668 * The user has a chance to override it with an option. 1669 */ 1670 #include <unistd.h> 1671 #endif 1672 1673 #ifndef YY_EXTRA_TYPE 1674 #define YY_EXTRA_TYPE void * 1675 #endif 1676 1677 static int yy_init_globals (void ); 1678 1679 /* Accessor methods to globals. 1680 These are made visible to non-reentrant scanners for convenience. */ 1681 1682 int yylex_destroy (void ); 1683 1684 int yyget_debug (void ); 1685 1686 void yyset_debug (int debug_flag ); 1687 1688 YY_EXTRA_TYPE yyget_extra (void ); 1689 1690 void yyset_extra (YY_EXTRA_TYPE user_defined ); 1691 1692 FILE *yyget_in (void ); 1693 1694 void yyset_in (FILE * in_str ); 1695 1696 FILE *yyget_out (void ); 1697 1698 void yyset_out (FILE * out_str ); 1699 1700 yy_size_t yyget_leng (void ); 1701 1702 char *yyget_text (void ); 1703 1704 int yyget_lineno (void ); 1705 1706 void yyset_lineno (int line_number ); 1707 1708 /* Macros after this point can all be overridden by user definitions in 1709 * section 1. 1710 */ 1711 1712 #ifndef YY_SKIP_YYWRAP 1713 #ifdef __cplusplus 1714 extern "C" int yywrap (void ); 1715 #else 1716 extern int yywrap (void ); 1717 #endif 1718 #endif 1719 1720 #ifndef yytext_ptr 1721 static void yy_flex_strncpy (char *,yyconst char *,int ); 1722 #endif 1723 1724 #ifdef YY_NEED_STRLEN 1725 static int yy_flex_strlen (yyconst char * ); 1726 #endif 1727 1728 #ifndef YY_NO_INPUT 1729 1730 #ifdef __cplusplus 1731 static int yyinput (void ); 1732 #else 1733 static int input (void ); 1734 #endif 1735 1736 #endif 1737 1738 /* Amount of stuff to slurp up with each read. */ 1739 #ifndef YY_READ_BUF_SIZE 1740 #define YY_READ_BUF_SIZE 8192 1741 #endif 1742 1743 /* Copy whatever the last rule matched to the standard output. */ 1744 #ifndef ECHO 1745 /* This used to be an fputs(), but since the string might contain NUL's, 1746 * we now use fwrite(). 1747 */ 1748 #define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0) 1749 #endif 1750 1751 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, 1752 * is returned in "result". 1753 */ 1754 #ifndef YY_INPUT 1755 #define YY_INPUT(buf,result,max_size) \ 1756 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ 1757 { \ 1758 int c = '*'; \ 1759 size_t n; \ 1760 for ( n = 0; n < max_size && \ 1761 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ 1762 buf[n] = (char) c; \ 1763 if ( c == '\n' ) \ 1764 buf[n++] = (char) c; \ 1765 if ( c == EOF && ferror( yyin ) ) \ 1766 YY_FATAL_ERROR( "input in flex scanner failed" ); \ 1767 result = n; \ 1768 } \ 1769 else \ 1770 { \ 1771 errno=0; \ 1772 while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \ 1773 { \ 1774 if( errno != EINTR) \ 1775 { \ 1776 YY_FATAL_ERROR( "input in flex scanner failed" ); \ 1777 break; \ 1778 } \ 1779 errno=0; \ 1780 clearerr(yyin); \ 1781 } \ 1782 }\ 1783 \ 1784 1785 #endif 1786 1787 /* No semi-colon after return; correct usage is to write "yyterminate();" - 1788 * we don't want an extra ';' after the "return" because that will cause 1789 * some compilers to complain about unreachable statements. 1790 */ 1791 #ifndef yyterminate 1792 #define yyterminate() return YY_NULL 1793 #endif 1794 1795 /* Number of entries by which start-condition stack grows. */ 1796 #ifndef YY_START_STACK_INCR 1797 #define YY_START_STACK_INCR 25 1798 #endif 1799 1800 /* Report a fatal error. */ 1801 #ifndef YY_FATAL_ERROR 1802 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg ) 1803 #endif 1804 1805 /* end tables serialization structures and prototypes */ 1806 1807 /* Default declaration of generated scanner - a define so the user can 1808 * easily add parameters. 1809 */ 1810 #ifndef YY_DECL 1811 #define YY_DECL_IS_OURS 1 1812 1813 extern int yylex (void); 1814 1815 #define YY_DECL int yylex (void) 1816 #endif /* !YY_DECL */ 1817 1818 /* Code executed at the beginning of each rule, after yytext and yyleng 1819 * have been set up. 1820 */ 1821 #ifndef YY_USER_ACTION 1822 #define YY_USER_ACTION 1823 #endif 1824 1825 /* Code executed at the end of each rule. */ 1826 #ifndef YY_BREAK 1827 #define YY_BREAK break; 1828 #endif 1829 1830 #define YY_RULE_SETUP \ 1831 YY_USER_ACTION 1832 1833 /** The main scanner function which does all the work. 1834 */ 1835 YY_DECL 1836 { 1837 yy_state_type yy_current_state; 1838 char *yy_cp, *yy_bp; 1839 int yy_act; 1840 1841 if ( !(yy_init) ) 1842 { 1843 (yy_init) = 1; 1844 1845 #ifdef YY_USER_INIT 1846 YY_USER_INIT; 1847 #endif 1848 1849 if ( ! (yy_start) ) 1850 (yy_start) = 1; /* first start state */ 1851 1852 if ( ! yyin ) 1853 yyin = stdin; 1854 1855 if ( ! yyout ) 1856 yyout = stdout; 1857 1858 if ( ! YY_CURRENT_BUFFER ) { 1859 yyensure_buffer_stack (); 1860 YY_CURRENT_BUFFER_LVALUE = 1861 yy_create_buffer(yyin,YY_BUF_SIZE ); 1862 } 1863 1864 yy_load_buffer_state( ); 1865 } 1866 1867 while ( 1 ) /* loops until end-of-file is reached */ 1868 { 1869 (yy_more_len) = 0; 1870 if ( (yy_more_flag) ) 1871 { 1872 (yy_more_len) = (yy_c_buf_p) - (yytext_ptr); 1873 (yy_more_flag) = 0; 1874 } 1875 yy_cp = (yy_c_buf_p); 1876 1877 /* Support of yytext. */ 1878 *yy_cp = (yy_hold_char); 1879 1880 /* yy_bp points to the position in yy_ch_buf of the start of 1881 * the current run. 1882 */ 1883 yy_bp = yy_cp; 1884 1885 yy_current_state = (yy_start); 1886 yy_match: 1887 do 1888 { 1889 YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ; 1890 if ( yy_accept[yy_current_state] ) 1891 { 1892 (yy_last_accepting_state) = yy_current_state; 1893 (yy_last_accepting_cpos) = yy_cp; 1894 } 1895 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 1896 { 1897 yy_current_state = (int) yy_def[yy_current_state]; 1898 if ( yy_current_state >= 1343 ) 1899 yy_c = yy_meta[(unsigned int) yy_c]; 1900 } 1901 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; 1902 ++yy_cp; 1903 } 1904 while ( yy_base[yy_current_state] != 2683 ); 1905 1906 yy_find_action: 1907 yy_act = yy_accept[yy_current_state]; 1908 if ( yy_act == 0 ) 1909 { /* have to back up */ 1910 yy_cp = (yy_last_accepting_cpos); 1911 yy_current_state = (yy_last_accepting_state); 1912 yy_act = yy_accept[yy_current_state]; 1913 } 1914 1915 YY_DO_BEFORE_ACTION; 1916 1917 do_action: /* This label is used only to access EOF actions. */ 1918 1919 switch ( yy_act ) 1920 { /* beginning of action switch */ 1921 case 0: /* must back up */ 1922 /* undo the effects of YY_DO_BEFORE_ACTION */ 1923 *yy_cp = (yy_hold_char); 1924 yy_cp = (yy_last_accepting_cpos); 1925 yy_current_state = (yy_last_accepting_state); 1926 goto yy_find_action; 1927 1928 case 1: 1929 YY_RULE_SETUP 1930 { 1931 LEXOUT(("SP ")); /* ignore */ } 1932 YY_BREAK 1933 case 2: 1934 YY_RULE_SETUP 1935 { 1936 /* note that flex makes the longest match and '.' is any but not nl */ 1937 LEXOUT(("comment(%s) ", yytext)); /* ignore */ } 1938 YY_BREAK 1939 case 3: 1940 YY_RULE_SETUP 1941 { YDVAR(0, VAR_SERVER) } 1942 YY_BREAK 1943 case 4: 1944 YY_RULE_SETUP 1945 { YDVAR(1, VAR_NUM_THREADS) } 1946 YY_BREAK 1947 case 5: 1948 YY_RULE_SETUP 1949 { YDVAR(1, VAR_VERBOSITY) } 1950 YY_BREAK 1951 case 6: 1952 YY_RULE_SETUP 1953 { YDVAR(1, VAR_PORT) } 1954 YY_BREAK 1955 case 7: 1956 YY_RULE_SETUP 1957 { YDVAR(1, VAR_OUTGOING_RANGE) } 1958 YY_BREAK 1959 case 8: 1960 YY_RULE_SETUP 1961 { YDVAR(1, VAR_OUTGOING_PORT_PERMIT) } 1962 YY_BREAK 1963 case 9: 1964 YY_RULE_SETUP 1965 { YDVAR(1, VAR_OUTGOING_PORT_AVOID) } 1966 YY_BREAK 1967 case 10: 1968 YY_RULE_SETUP 1969 { YDVAR(1, VAR_OUTGOING_NUM_TCP) } 1970 YY_BREAK 1971 case 11: 1972 YY_RULE_SETUP 1973 { YDVAR(1, VAR_INCOMING_NUM_TCP) } 1974 YY_BREAK 1975 case 12: 1976 YY_RULE_SETUP 1977 { YDVAR(1, VAR_DO_IP4) } 1978 YY_BREAK 1979 case 13: 1980 YY_RULE_SETUP 1981 { YDVAR(1, VAR_DO_IP6) } 1982 YY_BREAK 1983 case 14: 1984 YY_RULE_SETUP 1985 { YDVAR(1, VAR_DO_UDP) } 1986 YY_BREAK 1987 case 15: 1988 YY_RULE_SETUP 1989 { YDVAR(1, VAR_DO_TCP) } 1990 YY_BREAK 1991 case 16: 1992 YY_RULE_SETUP 1993 { YDVAR(1, VAR_TCP_UPSTREAM) } 1994 YY_BREAK 1995 case 17: 1996 YY_RULE_SETUP 1997 { YDVAR(1, VAR_SSL_UPSTREAM) } 1998 YY_BREAK 1999 case 18: 2000 YY_RULE_SETUP 2001 { YDVAR(1, VAR_SSL_SERVICE_KEY) } 2002 YY_BREAK 2003 case 19: 2004 YY_RULE_SETUP 2005 { YDVAR(1, VAR_SSL_SERVICE_PEM) } 2006 YY_BREAK 2007 case 20: 2008 YY_RULE_SETUP 2009 { YDVAR(1, VAR_SSL_PORT) } 2010 YY_BREAK 2011 case 21: 2012 YY_RULE_SETUP 2013 { YDVAR(1, VAR_DO_DAEMONIZE) } 2014 YY_BREAK 2015 case 22: 2016 YY_RULE_SETUP 2017 { YDVAR(1, VAR_INTERFACE) } 2018 YY_BREAK 2019 case 23: 2020 YY_RULE_SETUP 2021 { YDVAR(1, VAR_OUTGOING_INTERFACE) } 2022 YY_BREAK 2023 case 24: 2024 YY_RULE_SETUP 2025 { YDVAR(1, VAR_INTERFACE_AUTOMATIC) } 2026 YY_BREAK 2027 case 25: 2028 YY_RULE_SETUP 2029 { YDVAR(1, VAR_SO_RCVBUF) } 2030 YY_BREAK 2031 case 26: 2032 YY_RULE_SETUP 2033 { YDVAR(1, VAR_SO_SNDBUF) } 2034 YY_BREAK 2035 case 27: 2036 YY_RULE_SETUP 2037 { YDVAR(1, VAR_CHROOT) } 2038 YY_BREAK 2039 case 28: 2040 YY_RULE_SETUP 2041 { YDVAR(1, VAR_USERNAME) } 2042 YY_BREAK 2043 case 29: 2044 YY_RULE_SETUP 2045 { YDVAR(1, VAR_DIRECTORY) } 2046 YY_BREAK 2047 case 30: 2048 YY_RULE_SETUP 2049 { YDVAR(1, VAR_LOGFILE) } 2050 YY_BREAK 2051 case 31: 2052 YY_RULE_SETUP 2053 { YDVAR(1, VAR_PIDFILE) } 2054 YY_BREAK 2055 case 32: 2056 YY_RULE_SETUP 2057 { YDVAR(1, VAR_ROOT_HINTS) } 2058 YY_BREAK 2059 case 33: 2060 YY_RULE_SETUP 2061 { YDVAR(1, VAR_EDNS_BUFFER_SIZE) } 2062 YY_BREAK 2063 case 34: 2064 YY_RULE_SETUP 2065 { YDVAR(1, VAR_MSG_BUFFER_SIZE) } 2066 YY_BREAK 2067 case 35: 2068 YY_RULE_SETUP 2069 { YDVAR(1, VAR_MSG_CACHE_SIZE) } 2070 YY_BREAK 2071 case 36: 2072 YY_RULE_SETUP 2073 { YDVAR(1, VAR_MSG_CACHE_SLABS) } 2074 YY_BREAK 2075 case 37: 2076 YY_RULE_SETUP 2077 { YDVAR(1, VAR_RRSET_CACHE_SIZE) } 2078 YY_BREAK 2079 case 38: 2080 YY_RULE_SETUP 2081 { YDVAR(1, VAR_RRSET_CACHE_SLABS) } 2082 YY_BREAK 2083 case 39: 2084 YY_RULE_SETUP 2085 { YDVAR(1, VAR_CACHE_MAX_TTL) } 2086 YY_BREAK 2087 case 40: 2088 YY_RULE_SETUP 2089 { YDVAR(1, VAR_CACHE_MIN_TTL) } 2090 YY_BREAK 2091 case 41: 2092 YY_RULE_SETUP 2093 { YDVAR(1, VAR_INFRA_HOST_TTL) } 2094 YY_BREAK 2095 case 42: 2096 YY_RULE_SETUP 2097 { YDVAR(1, VAR_INFRA_LAME_TTL) } 2098 YY_BREAK 2099 case 43: 2100 YY_RULE_SETUP 2101 { YDVAR(1, VAR_INFRA_CACHE_SLABS) } 2102 YY_BREAK 2103 case 44: 2104 YY_RULE_SETUP 2105 { YDVAR(1, VAR_INFRA_CACHE_NUMHOSTS) } 2106 YY_BREAK 2107 case 45: 2108 YY_RULE_SETUP 2109 { YDVAR(1, VAR_INFRA_CACHE_LAME_SIZE) } 2110 YY_BREAK 2111 case 46: 2112 YY_RULE_SETUP 2113 { YDVAR(1, VAR_NUM_QUERIES_PER_THREAD) } 2114 YY_BREAK 2115 case 47: 2116 YY_RULE_SETUP 2117 { YDVAR(1, VAR_JOSTLE_TIMEOUT) } 2118 YY_BREAK 2119 case 48: 2120 YY_RULE_SETUP 2121 { YDVAR(1, VAR_TARGET_FETCH_POLICY) } 2122 YY_BREAK 2123 case 49: 2124 YY_RULE_SETUP 2125 { YDVAR(1, VAR_HARDEN_SHORT_BUFSIZE) } 2126 YY_BREAK 2127 case 50: 2128 YY_RULE_SETUP 2129 { YDVAR(1, VAR_HARDEN_LARGE_QUERIES) } 2130 YY_BREAK 2131 case 51: 2132 YY_RULE_SETUP 2133 { YDVAR(1, VAR_HARDEN_GLUE) } 2134 YY_BREAK 2135 case 52: 2136 YY_RULE_SETUP 2137 { YDVAR(1, VAR_HARDEN_DNSSEC_STRIPPED) } 2138 YY_BREAK 2139 case 53: 2140 YY_RULE_SETUP 2141 { YDVAR(1, VAR_HARDEN_BELOW_NXDOMAIN) } 2142 YY_BREAK 2143 case 54: 2144 YY_RULE_SETUP 2145 { YDVAR(1, VAR_HARDEN_REFERRAL_PATH) } 2146 YY_BREAK 2147 case 55: 2148 YY_RULE_SETUP 2149 { YDVAR(1, VAR_USE_CAPS_FOR_ID) } 2150 YY_BREAK 2151 case 56: 2152 YY_RULE_SETUP 2153 { YDVAR(1, VAR_UNWANTED_REPLY_THRESHOLD) } 2154 YY_BREAK 2155 case 57: 2156 YY_RULE_SETUP 2157 { YDVAR(1, VAR_PRIVATE_ADDRESS) } 2158 YY_BREAK 2159 case 58: 2160 YY_RULE_SETUP 2161 { YDVAR(1, VAR_PRIVATE_DOMAIN) } 2162 YY_BREAK 2163 case 59: 2164 YY_RULE_SETUP 2165 { YDVAR(1, VAR_PREFETCH_KEY) } 2166 YY_BREAK 2167 case 60: 2168 YY_RULE_SETUP 2169 { YDVAR(1, VAR_PREFETCH) } 2170 YY_BREAK 2171 case 61: 2172 YY_RULE_SETUP 2173 { YDVAR(0, VAR_STUB_ZONE) } 2174 YY_BREAK 2175 case 62: 2176 YY_RULE_SETUP 2177 { YDVAR(1, VAR_NAME) } 2178 YY_BREAK 2179 case 63: 2180 YY_RULE_SETUP 2181 { YDVAR(1, VAR_STUB_ADDR) } 2182 YY_BREAK 2183 case 64: 2184 YY_RULE_SETUP 2185 { YDVAR(1, VAR_STUB_HOST) } 2186 YY_BREAK 2187 case 65: 2188 YY_RULE_SETUP 2189 { YDVAR(1, VAR_STUB_PRIME) } 2190 YY_BREAK 2191 case 66: 2192 YY_RULE_SETUP 2193 { YDVAR(1, VAR_STUB_FIRST) } 2194 YY_BREAK 2195 case 67: 2196 YY_RULE_SETUP 2197 { YDVAR(0, VAR_FORWARD_ZONE) } 2198 YY_BREAK 2199 case 68: 2200 YY_RULE_SETUP 2201 { YDVAR(1, VAR_FORWARD_ADDR) } 2202 YY_BREAK 2203 case 69: 2204 YY_RULE_SETUP 2205 { YDVAR(1, VAR_FORWARD_HOST) } 2206 YY_BREAK 2207 case 70: 2208 YY_RULE_SETUP 2209 { YDVAR(1, VAR_FORWARD_FIRST) } 2210 YY_BREAK 2211 case 71: 2212 YY_RULE_SETUP 2213 { YDVAR(1, VAR_DO_NOT_QUERY_ADDRESS) } 2214 YY_BREAK 2215 case 72: 2216 YY_RULE_SETUP 2217 { YDVAR(1, VAR_DO_NOT_QUERY_LOCALHOST) } 2218 YY_BREAK 2219 case 73: 2220 YY_RULE_SETUP 2221 { YDVAR(2, VAR_ACCESS_CONTROL) } 2222 YY_BREAK 2223 case 74: 2224 YY_RULE_SETUP 2225 { YDVAR(1, VAR_HIDE_IDENTITY) } 2226 YY_BREAK 2227 case 75: 2228 YY_RULE_SETUP 2229 { YDVAR(1, VAR_HIDE_VERSION) } 2230 YY_BREAK 2231 case 76: 2232 YY_RULE_SETUP 2233 { YDVAR(1, VAR_IDENTITY) } 2234 YY_BREAK 2235 case 77: 2236 YY_RULE_SETUP 2237 { YDVAR(1, VAR_VERSION) } 2238 YY_BREAK 2239 case 78: 2240 YY_RULE_SETUP 2241 { YDVAR(1, VAR_MODULE_CONF) } 2242 YY_BREAK 2243 case 79: 2244 YY_RULE_SETUP 2245 { YDVAR(1, VAR_DLV_ANCHOR) } 2246 YY_BREAK 2247 case 80: 2248 YY_RULE_SETUP 2249 { YDVAR(1, VAR_DLV_ANCHOR_FILE) } 2250 YY_BREAK 2251 case 81: 2252 YY_RULE_SETUP 2253 { YDVAR(1, VAR_TRUST_ANCHOR_FILE) } 2254 YY_BREAK 2255 case 82: 2256 YY_RULE_SETUP 2257 { YDVAR(1, VAR_AUTO_TRUST_ANCHOR_FILE) } 2258 YY_BREAK 2259 case 83: 2260 YY_RULE_SETUP 2261 { YDVAR(1, VAR_TRUSTED_KEYS_FILE) } 2262 YY_BREAK 2263 case 84: 2264 YY_RULE_SETUP 2265 { YDVAR(1, VAR_TRUST_ANCHOR) } 2266 YY_BREAK 2267 case 85: 2268 YY_RULE_SETUP 2269 { YDVAR(1, VAR_VAL_OVERRIDE_DATE) } 2270 YY_BREAK 2271 case 86: 2272 YY_RULE_SETUP 2273 { YDVAR(1, VAR_VAL_SIG_SKEW_MIN) } 2274 YY_BREAK 2275 case 87: 2276 YY_RULE_SETUP 2277 { YDVAR(1, VAR_VAL_SIG_SKEW_MAX) } 2278 YY_BREAK 2279 case 88: 2280 YY_RULE_SETUP 2281 { YDVAR(1, VAR_BOGUS_TTL) } 2282 YY_BREAK 2283 case 89: 2284 YY_RULE_SETUP 2285 { YDVAR(1, VAR_VAL_CLEAN_ADDITIONAL) } 2286 YY_BREAK 2287 case 90: 2288 YY_RULE_SETUP 2289 { YDVAR(1, VAR_VAL_PERMISSIVE_MODE) } 2290 YY_BREAK 2291 case 91: 2292 YY_RULE_SETUP 2293 { YDVAR(1, VAR_IGNORE_CD_FLAG) } 2294 YY_BREAK 2295 case 92: 2296 YY_RULE_SETUP 2297 { YDVAR(1, VAR_VAL_LOG_LEVEL) } 2298 YY_BREAK 2299 case 93: 2300 YY_RULE_SETUP 2301 { YDVAR(1, VAR_KEY_CACHE_SIZE) } 2302 YY_BREAK 2303 case 94: 2304 YY_RULE_SETUP 2305 { YDVAR(1, VAR_KEY_CACHE_SLABS) } 2306 YY_BREAK 2307 case 95: 2308 YY_RULE_SETUP 2309 { YDVAR(1, VAR_NEG_CACHE_SIZE) } 2310 YY_BREAK 2311 case 96: 2312 YY_RULE_SETUP 2313 { 2314 YDVAR(1, VAR_VAL_NSEC3_KEYSIZE_ITERATIONS) } 2315 YY_BREAK 2316 case 97: 2317 YY_RULE_SETUP 2318 { YDVAR(1, VAR_ADD_HOLDDOWN) } 2319 YY_BREAK 2320 case 98: 2321 YY_RULE_SETUP 2322 { YDVAR(1, VAR_DEL_HOLDDOWN) } 2323 YY_BREAK 2324 case 99: 2325 YY_RULE_SETUP 2326 { YDVAR(1, VAR_KEEP_MISSING) } 2327 YY_BREAK 2328 case 100: 2329 YY_RULE_SETUP 2330 { YDVAR(1, VAR_USE_SYSLOG) } 2331 YY_BREAK 2332 case 101: 2333 YY_RULE_SETUP 2334 { YDVAR(1, VAR_LOG_TIME_ASCII) } 2335 YY_BREAK 2336 case 102: 2337 YY_RULE_SETUP 2338 { YDVAR(1, VAR_LOG_QUERIES) } 2339 YY_BREAK 2340 case 103: 2341 YY_RULE_SETUP 2342 { YDVAR(2, VAR_LOCAL_ZONE) } 2343 YY_BREAK 2344 case 104: 2345 YY_RULE_SETUP 2346 { YDVAR(1, VAR_LOCAL_DATA) } 2347 YY_BREAK 2348 case 105: 2349 YY_RULE_SETUP 2350 { YDVAR(1, VAR_LOCAL_DATA_PTR) } 2351 YY_BREAK 2352 case 106: 2353 YY_RULE_SETUP 2354 { YDVAR(1, VAR_STATISTICS_INTERVAL) } 2355 YY_BREAK 2356 case 107: 2357 YY_RULE_SETUP 2358 { YDVAR(1, VAR_STATISTICS_CUMULATIVE) } 2359 YY_BREAK 2360 case 108: 2361 YY_RULE_SETUP 2362 { YDVAR(1, VAR_EXTENDED_STATISTICS) } 2363 YY_BREAK 2364 case 109: 2365 YY_RULE_SETUP 2366 { YDVAR(0, VAR_REMOTE_CONTROL) } 2367 YY_BREAK 2368 case 110: 2369 YY_RULE_SETUP 2370 { YDVAR(1, VAR_CONTROL_ENABLE) } 2371 YY_BREAK 2372 case 111: 2373 YY_RULE_SETUP 2374 { YDVAR(1, VAR_CONTROL_INTERFACE) } 2375 YY_BREAK 2376 case 112: 2377 YY_RULE_SETUP 2378 { YDVAR(1, VAR_CONTROL_PORT) } 2379 YY_BREAK 2380 case 113: 2381 YY_RULE_SETUP 2382 { YDVAR(1, VAR_SERVER_KEY_FILE) } 2383 YY_BREAK 2384 case 114: 2385 YY_RULE_SETUP 2386 { YDVAR(1, VAR_SERVER_CERT_FILE) } 2387 YY_BREAK 2388 case 115: 2389 YY_RULE_SETUP 2390 { YDVAR(1, VAR_CONTROL_KEY_FILE) } 2391 YY_BREAK 2392 case 116: 2393 YY_RULE_SETUP 2394 { YDVAR(1, VAR_CONTROL_CERT_FILE) } 2395 YY_BREAK 2396 case 117: 2397 YY_RULE_SETUP 2398 { YDVAR(1, VAR_PYTHON_SCRIPT) } 2399 YY_BREAK 2400 case 118: 2401 YY_RULE_SETUP 2402 { YDVAR(0, VAR_PYTHON) } 2403 YY_BREAK 2404 case 119: 2405 YY_RULE_SETUP 2406 { YDVAR(1, VAR_DOMAIN_INSECURE) } 2407 YY_BREAK 2408 case 120: 2409 YY_RULE_SETUP 2410 { YDVAR(1, VAR_MINIMAL_RESPONSES) } 2411 YY_BREAK 2412 case 121: 2413 YY_RULE_SETUP 2414 { YDVAR(1, VAR_RRSET_ROUNDROBIN) } 2415 YY_BREAK 2416 case 122: 2417 /* rule 122 can match eol */ 2418 YY_RULE_SETUP 2419 { LEXOUT(("NL\n")); cfg_parser->line++; } 2420 YY_BREAK 2421 /* Quoted strings. Strip leading and ending quotes */ 2422 case 123: 2423 YY_RULE_SETUP 2424 { BEGIN(quotedstring); LEXOUT(("QS ")); } 2425 YY_BREAK 2426 case YY_STATE_EOF(quotedstring): 2427 { 2428 yyerror("EOF inside quoted string"); 2429 if(--num_args == 0) { BEGIN(INITIAL); } 2430 else { BEGIN(val); } 2431 } 2432 YY_BREAK 2433 case 124: 2434 YY_RULE_SETUP 2435 { LEXOUT(("STR(%s) ", yytext)); yymore(); } 2436 YY_BREAK 2437 case 125: 2438 /* rule 125 can match eol */ 2439 YY_RULE_SETUP 2440 { yyerror("newline inside quoted string, no end \""); 2441 cfg_parser->line++; BEGIN(INITIAL); } 2442 YY_BREAK 2443 case 126: 2444 YY_RULE_SETUP 2445 { 2446 LEXOUT(("QE ")); 2447 if(--num_args == 0) { BEGIN(INITIAL); } 2448 else { BEGIN(val); } 2449 yytext[yyleng - 1] = '\0'; 2450 yylval.str = strdup(yytext); 2451 if(!yylval.str) 2452 yyerror("out of memory"); 2453 return STRING_ARG; 2454 } 2455 YY_BREAK 2456 /* Single Quoted strings. Strip leading and ending quotes */ 2457 case 127: 2458 YY_RULE_SETUP 2459 { BEGIN(singlequotedstr); LEXOUT(("SQS ")); } 2460 YY_BREAK 2461 case YY_STATE_EOF(singlequotedstr): 2462 { 2463 yyerror("EOF inside quoted string"); 2464 if(--num_args == 0) { BEGIN(INITIAL); } 2465 else { BEGIN(val); } 2466 } 2467 YY_BREAK 2468 case 128: 2469 YY_RULE_SETUP 2470 { LEXOUT(("STR(%s) ", yytext)); yymore(); } 2471 YY_BREAK 2472 case 129: 2473 /* rule 129 can match eol */ 2474 YY_RULE_SETUP 2475 { yyerror("newline inside quoted string, no end '"); 2476 cfg_parser->line++; BEGIN(INITIAL); } 2477 YY_BREAK 2478 case 130: 2479 YY_RULE_SETUP 2480 { 2481 LEXOUT(("SQE ")); 2482 if(--num_args == 0) { BEGIN(INITIAL); } 2483 else { BEGIN(val); } 2484 yytext[yyleng - 1] = '\0'; 2485 yylval.str = strdup(yytext); 2486 if(!yylval.str) 2487 yyerror("out of memory"); 2488 return STRING_ARG; 2489 } 2490 YY_BREAK 2491 /* include: directive */ 2492 case 131: 2493 YY_RULE_SETUP 2494 { 2495 LEXOUT(("v(%s) ", yytext)); inc_prev = YYSTATE; BEGIN(include); } 2496 YY_BREAK 2497 case YY_STATE_EOF(include): 2498 { 2499 yyerror("EOF inside include directive"); 2500 BEGIN(inc_prev); 2501 } 2502 YY_BREAK 2503 case 132: 2504 YY_RULE_SETUP 2505 { LEXOUT(("ISP ")); /* ignore */ } 2506 YY_BREAK 2507 case 133: 2508 /* rule 133 can match eol */ 2509 YY_RULE_SETUP 2510 { LEXOUT(("NL\n")); cfg_parser->line++;} 2511 YY_BREAK 2512 case 134: 2513 YY_RULE_SETUP 2514 { LEXOUT(("IQS ")); BEGIN(include_quoted); } 2515 YY_BREAK 2516 case 135: 2517 YY_RULE_SETUP 2518 { 2519 LEXOUT(("Iunquotedstr(%s) ", yytext)); 2520 config_start_include_glob(yytext); 2521 BEGIN(inc_prev); 2522 } 2523 YY_BREAK 2524 case YY_STATE_EOF(include_quoted): 2525 { 2526 yyerror("EOF inside quoted string"); 2527 BEGIN(inc_prev); 2528 } 2529 YY_BREAK 2530 case 136: 2531 YY_RULE_SETUP 2532 { LEXOUT(("ISTR(%s) ", yytext)); yymore(); } 2533 YY_BREAK 2534 case 137: 2535 /* rule 137 can match eol */ 2536 YY_RULE_SETUP 2537 { yyerror("newline before \" in include name"); 2538 cfg_parser->line++; BEGIN(inc_prev); } 2539 YY_BREAK 2540 case 138: 2541 YY_RULE_SETUP 2542 { 2543 LEXOUT(("IQE ")); 2544 yytext[yyleng - 1] = '\0'; 2545 config_start_include_glob(yytext); 2546 BEGIN(inc_prev); 2547 } 2548 YY_BREAK 2549 case YY_STATE_EOF(INITIAL): 2550 case YY_STATE_EOF(val): 2551 { 2552 yy_set_bol(1); /* Set beginning of line, so "^" rules match. */ 2553 if (config_include_stack_ptr == 0) { 2554 yyterminate(); 2555 } else { 2556 fclose(yyin); 2557 config_end_include(); 2558 } 2559 } 2560 YY_BREAK 2561 case 139: 2562 YY_RULE_SETUP 2563 { LEXOUT(("unquotedstr(%s) ", yytext)); 2564 if(--num_args == 0) { BEGIN(INITIAL); } 2565 yylval.str = strdup(yytext); return STRING_ARG; } 2566 YY_BREAK 2567 case 140: 2568 YY_RULE_SETUP 2569 { 2570 ub_c_error_msg("unknown keyword '%s'", yytext); 2571 } 2572 YY_BREAK 2573 case 141: 2574 YY_RULE_SETUP 2575 { 2576 ub_c_error_msg("stray '%s'", yytext); 2577 } 2578 YY_BREAK 2579 case 142: 2580 YY_RULE_SETUP 2581 ECHO; 2582 YY_BREAK 2583 2584 case YY_END_OF_BUFFER: 2585 { 2586 /* Amount of text matched not including the EOB char. */ 2587 int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; 2588 2589 /* Undo the effects of YY_DO_BEFORE_ACTION. */ 2590 *yy_cp = (yy_hold_char); 2591 YY_RESTORE_YY_MORE_OFFSET 2592 2593 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) 2594 { 2595 /* We're scanning a new file or input source. It's 2596 * possible that this happened because the user 2597 * just pointed yyin at a new source and called 2598 * yylex(). If so, then we have to assure 2599 * consistency between YY_CURRENT_BUFFER and our 2600 * globals. Here is the right place to do so, because 2601 * this is the first action (other than possibly a 2602 * back-up) that will match for the new input source. 2603 */ 2604 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; 2605 YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin; 2606 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; 2607 } 2608 2609 /* Note that here we test for yy_c_buf_p "<=" to the position 2610 * of the first EOB in the buffer, since yy_c_buf_p will 2611 * already have been incremented past the NUL character 2612 * (since all states make transitions on EOB to the 2613 * end-of-buffer state). Contrast this with the test 2614 * in input(). 2615 */ 2616 if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) 2617 { /* This was really a NUL. */ 2618 yy_state_type yy_next_state; 2619 2620 (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; 2621 2622 yy_current_state = yy_get_previous_state( ); 2623 2624 /* Okay, we're now positioned to make the NUL 2625 * transition. We couldn't have 2626 * yy_get_previous_state() go ahead and do it 2627 * for us because it doesn't know how to deal 2628 * with the possibility of jamming (and we don't 2629 * want to build jamming into it because then it 2630 * will run more slowly). 2631 */ 2632 2633 yy_next_state = yy_try_NUL_trans( yy_current_state ); 2634 2635 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 2636 2637 if ( yy_next_state ) 2638 { 2639 /* Consume the NUL. */ 2640 yy_cp = ++(yy_c_buf_p); 2641 yy_current_state = yy_next_state; 2642 goto yy_match; 2643 } 2644 2645 else 2646 { 2647 yy_cp = (yy_c_buf_p); 2648 goto yy_find_action; 2649 } 2650 } 2651 2652 else switch ( yy_get_next_buffer( ) ) 2653 { 2654 case EOB_ACT_END_OF_FILE: 2655 { 2656 (yy_did_buffer_switch_on_eof) = 0; 2657 2658 if ( yywrap( ) ) 2659 { 2660 /* Note: because we've taken care in 2661 * yy_get_next_buffer() to have set up 2662 * yytext, we can now set up 2663 * yy_c_buf_p so that if some total 2664 * hoser (like flex itself) wants to 2665 * call the scanner after we return the 2666 * YY_NULL, it'll still work - another 2667 * YY_NULL will get returned. 2668 */ 2669 (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; 2670 2671 yy_act = YY_STATE_EOF(YY_START); 2672 goto do_action; 2673 } 2674 2675 else 2676 { 2677 if ( ! (yy_did_buffer_switch_on_eof) ) 2678 YY_NEW_FILE; 2679 } 2680 break; 2681 } 2682 2683 case EOB_ACT_CONTINUE_SCAN: 2684 (yy_c_buf_p) = 2685 (yytext_ptr) + yy_amount_of_matched_text; 2686 2687 yy_current_state = yy_get_previous_state( ); 2688 2689 yy_cp = (yy_c_buf_p); 2690 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 2691 goto yy_match; 2692 2693 case EOB_ACT_LAST_MATCH: 2694 (yy_c_buf_p) = 2695 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; 2696 2697 yy_current_state = yy_get_previous_state( ); 2698 2699 yy_cp = (yy_c_buf_p); 2700 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 2701 goto yy_find_action; 2702 } 2703 break; 2704 } 2705 2706 default: 2707 YY_FATAL_ERROR( 2708 "fatal flex scanner internal error--no action found" ); 2709 } /* end of action switch */ 2710 } /* end of scanning one token */ 2711 } /* end of yylex */ 2712 2713 /* yy_get_next_buffer - try to read in a new buffer 2714 * 2715 * Returns a code representing an action: 2716 * EOB_ACT_LAST_MATCH - 2717 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position 2718 * EOB_ACT_END_OF_FILE - end of file 2719 */ 2720 static int yy_get_next_buffer (void) 2721 { 2722 char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; 2723 char *source = (yytext_ptr); 2724 int number_to_move, i; 2725 int ret_val; 2726 2727 if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) 2728 YY_FATAL_ERROR( 2729 "fatal flex scanner internal error--end of buffer missed" ); 2730 2731 if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) 2732 { /* Don't try to fill the buffer, so this is an EOF. */ 2733 if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) 2734 { 2735 /* We matched a single character, the EOB, so 2736 * treat this as a final EOF. 2737 */ 2738 return EOB_ACT_END_OF_FILE; 2739 } 2740 2741 else 2742 { 2743 /* We matched some text prior to the EOB, first 2744 * process it. 2745 */ 2746 return EOB_ACT_LAST_MATCH; 2747 } 2748 } 2749 2750 /* Try to read more data. */ 2751 2752 /* First move last chars to start of buffer. */ 2753 number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1; 2754 2755 for ( i = 0; i < number_to_move; ++i ) 2756 *(dest++) = *(source++); 2757 2758 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) 2759 /* don't do the read, it's not guaranteed to return an EOF, 2760 * just force an EOF 2761 */ 2762 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; 2763 2764 else 2765 { 2766 yy_size_t num_to_read = 2767 YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; 2768 2769 while ( num_to_read <= 0 ) 2770 { /* Not enough room in the buffer - grow it. */ 2771 2772 /* just a shorter name for the current buffer */ 2773 YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE; 2774 2775 int yy_c_buf_p_offset = 2776 (int) ((yy_c_buf_p) - b->yy_ch_buf); 2777 2778 if ( b->yy_is_our_buffer ) 2779 { 2780 yy_size_t new_size = b->yy_buf_size * 2; 2781 2782 if ( new_size <= 0 ) 2783 b->yy_buf_size += b->yy_buf_size / 8; 2784 else 2785 b->yy_buf_size *= 2; 2786 2787 b->yy_ch_buf = (char *) 2788 /* Include room in for 2 EOB chars. */ 2789 yyrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 ); 2790 } 2791 else 2792 /* Can't grow it, we don't own it. */ 2793 b->yy_ch_buf = 0; 2794 2795 if ( ! b->yy_ch_buf ) 2796 YY_FATAL_ERROR( 2797 "fatal error - scanner input buffer overflow" ); 2798 2799 (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset]; 2800 2801 num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - 2802 number_to_move - 1; 2803 2804 } 2805 2806 if ( num_to_read > YY_READ_BUF_SIZE ) 2807 num_to_read = YY_READ_BUF_SIZE; 2808 2809 /* Read in more data. */ 2810 YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), 2811 (yy_n_chars), num_to_read ); 2812 2813 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 2814 } 2815 2816 if ( (yy_n_chars) == 0 ) 2817 { 2818 if ( number_to_move == YY_MORE_ADJ ) 2819 { 2820 ret_val = EOB_ACT_END_OF_FILE; 2821 yyrestart(yyin ); 2822 } 2823 2824 else 2825 { 2826 ret_val = EOB_ACT_LAST_MATCH; 2827 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = 2828 YY_BUFFER_EOF_PENDING; 2829 } 2830 } 2831 2832 else 2833 ret_val = EOB_ACT_CONTINUE_SCAN; 2834 2835 if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { 2836 /* Extend the array by 50%, plus the number we really need. */ 2837 yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); 2838 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ); 2839 if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) 2840 YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); 2841 } 2842 2843 (yy_n_chars) += number_to_move; 2844 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; 2845 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; 2846 2847 (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; 2848 2849 return ret_val; 2850 } 2851 2852 /* yy_get_previous_state - get the state just before the EOB char was reached */ 2853 2854 static yy_state_type yy_get_previous_state (void) 2855 { 2856 yy_state_type yy_current_state; 2857 char *yy_cp; 2858 2859 yy_current_state = (yy_start); 2860 2861 for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) 2862 { 2863 YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); 2864 if ( yy_accept[yy_current_state] ) 2865 { 2866 (yy_last_accepting_state) = yy_current_state; 2867 (yy_last_accepting_cpos) = yy_cp; 2868 } 2869 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 2870 { 2871 yy_current_state = (int) yy_def[yy_current_state]; 2872 if ( yy_current_state >= 1343 ) 2873 yy_c = yy_meta[(unsigned int) yy_c]; 2874 } 2875 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; 2876 } 2877 2878 return yy_current_state; 2879 } 2880 2881 /* yy_try_NUL_trans - try to make a transition on the NUL character 2882 * 2883 * synopsis 2884 * next_state = yy_try_NUL_trans( current_state ); 2885 */ 2886 static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state ) 2887 { 2888 int yy_is_jam; 2889 char *yy_cp = (yy_c_buf_p); 2890 2891 YY_CHAR yy_c = 1; 2892 if ( yy_accept[yy_current_state] ) 2893 { 2894 (yy_last_accepting_state) = yy_current_state; 2895 (yy_last_accepting_cpos) = yy_cp; 2896 } 2897 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 2898 { 2899 yy_current_state = (int) yy_def[yy_current_state]; 2900 if ( yy_current_state >= 1343 ) 2901 yy_c = yy_meta[(unsigned int) yy_c]; 2902 } 2903 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; 2904 yy_is_jam = (yy_current_state == 1342); 2905 2906 return yy_is_jam ? 0 : yy_current_state; 2907 } 2908 2909 #ifndef YY_NO_INPUT 2910 #ifdef __cplusplus 2911 static int yyinput (void) 2912 #else 2913 static int input (void) 2914 #endif 2915 2916 { 2917 int c; 2918 2919 *(yy_c_buf_p) = (yy_hold_char); 2920 2921 if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) 2922 { 2923 /* yy_c_buf_p now points to the character we want to return. 2924 * If this occurs *before* the EOB characters, then it's a 2925 * valid NUL; if not, then we've hit the end of the buffer. 2926 */ 2927 if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) 2928 /* This was really a NUL. */ 2929 *(yy_c_buf_p) = '\0'; 2930 2931 else 2932 { /* need more input */ 2933 yy_size_t offset = (yy_c_buf_p) - (yytext_ptr); 2934 ++(yy_c_buf_p); 2935 2936 switch ( yy_get_next_buffer( ) ) 2937 { 2938 case EOB_ACT_LAST_MATCH: 2939 /* This happens because yy_g_n_b() 2940 * sees that we've accumulated a 2941 * token and flags that we need to 2942 * try matching the token before 2943 * proceeding. But for input(), 2944 * there's no matching to consider. 2945 * So convert the EOB_ACT_LAST_MATCH 2946 * to EOB_ACT_END_OF_FILE. 2947 */ 2948 2949 /* Reset buffer status. */ 2950 yyrestart(yyin ); 2951 2952 /*FALLTHROUGH*/ 2953 2954 case EOB_ACT_END_OF_FILE: 2955 { 2956 if ( yywrap( ) ) 2957 return EOF; 2958 2959 if ( ! (yy_did_buffer_switch_on_eof) ) 2960 YY_NEW_FILE; 2961 #ifdef __cplusplus 2962 return yyinput(); 2963 #else 2964 return input(); 2965 #endif 2966 } 2967 2968 case EOB_ACT_CONTINUE_SCAN: 2969 (yy_c_buf_p) = (yytext_ptr) + offset; 2970 break; 2971 } 2972 } 2973 } 2974 2975 c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */ 2976 *(yy_c_buf_p) = '\0'; /* preserve yytext */ 2977 (yy_hold_char) = *++(yy_c_buf_p); 2978 2979 return c; 2980 } 2981 #endif /* ifndef YY_NO_INPUT */ 2982 2983 /** Immediately switch to a different input stream. 2984 * @param input_file A readable stream. 2985 * 2986 * @note This function does not reset the start condition to @c INITIAL . 2987 */ 2988 void yyrestart (FILE * input_file ) 2989 { 2990 2991 if ( ! YY_CURRENT_BUFFER ){ 2992 yyensure_buffer_stack (); 2993 YY_CURRENT_BUFFER_LVALUE = 2994 yy_create_buffer(yyin,YY_BUF_SIZE ); 2995 } 2996 2997 yy_init_buffer(YY_CURRENT_BUFFER,input_file ); 2998 yy_load_buffer_state( ); 2999 } 3000 3001 /** Switch to a different input buffer. 3002 * @param new_buffer The new input buffer. 3003 * 3004 */ 3005 void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ) 3006 { 3007 3008 /* TODO. We should be able to replace this entire function body 3009 * with 3010 * yypop_buffer_state(); 3011 * yypush_buffer_state(new_buffer); 3012 */ 3013 yyensure_buffer_stack (); 3014 if ( YY_CURRENT_BUFFER == new_buffer ) 3015 return; 3016 3017 if ( YY_CURRENT_BUFFER ) 3018 { 3019 /* Flush out information for old buffer. */ 3020 *(yy_c_buf_p) = (yy_hold_char); 3021 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); 3022 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 3023 } 3024 3025 YY_CURRENT_BUFFER_LVALUE = new_buffer; 3026 yy_load_buffer_state( ); 3027 3028 /* We don't actually know whether we did this switch during 3029 * EOF (yywrap()) processing, but the only time this flag 3030 * is looked at is after yywrap() is called, so it's safe 3031 * to go ahead and always set it. 3032 */ 3033 (yy_did_buffer_switch_on_eof) = 1; 3034 } 3035 3036 static void yy_load_buffer_state (void) 3037 { 3038 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; 3039 (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; 3040 yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; 3041 (yy_hold_char) = *(yy_c_buf_p); 3042 } 3043 3044 /** Allocate and initialize an input buffer state. 3045 * @param file A readable stream. 3046 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE. 3047 * 3048 * @return the allocated buffer state. 3049 */ 3050 YY_BUFFER_STATE yy_create_buffer (FILE * file, int size ) 3051 { 3052 YY_BUFFER_STATE b; 3053 3054 b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); 3055 if ( ! b ) 3056 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); 3057 3058 b->yy_buf_size = size; 3059 3060 /* yy_ch_buf has to be 2 characters longer than the size given because 3061 * we need to put in 2 end-of-buffer characters. 3062 */ 3063 b->yy_ch_buf = (char *) yyalloc(b->yy_buf_size + 2 ); 3064 if ( ! b->yy_ch_buf ) 3065 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); 3066 3067 b->yy_is_our_buffer = 1; 3068 3069 yy_init_buffer(b,file ); 3070 3071 return b; 3072 } 3073 3074 /** Destroy the buffer. 3075 * @param b a buffer created with yy_create_buffer() 3076 * 3077 */ 3078 void yy_delete_buffer (YY_BUFFER_STATE b ) 3079 { 3080 3081 if ( ! b ) 3082 return; 3083 3084 if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ 3085 YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; 3086 3087 if ( b->yy_is_our_buffer ) 3088 yyfree((void *) b->yy_ch_buf ); 3089 3090 yyfree((void *) b ); 3091 } 3092 3093 /* Initializes or reinitializes a buffer. 3094 * This function is sometimes called more than once on the same buffer, 3095 * such as during a yyrestart() or at EOF. 3096 */ 3097 static void yy_init_buffer (YY_BUFFER_STATE b, FILE * file ) 3098 3099 { 3100 int oerrno = errno; 3101 3102 yy_flush_buffer(b ); 3103 3104 b->yy_input_file = file; 3105 b->yy_fill_buffer = 1; 3106 3107 /* If b is the current buffer, then yy_init_buffer was _probably_ 3108 * called from yyrestart() or through yy_get_next_buffer. 3109 * In that case, we don't want to reset the lineno or column. 3110 */ 3111 if (b != YY_CURRENT_BUFFER){ 3112 b->yy_bs_lineno = 1; 3113 b->yy_bs_column = 0; 3114 } 3115 3116 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0; 3117 3118 errno = oerrno; 3119 } 3120 3121 /** Discard all buffered characters. On the next scan, YY_INPUT will be called. 3122 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER. 3123 * 3124 */ 3125 void yy_flush_buffer (YY_BUFFER_STATE b ) 3126 { 3127 if ( ! b ) 3128 return; 3129 3130 b->yy_n_chars = 0; 3131 3132 /* We always need two end-of-buffer characters. The first causes 3133 * a transition to the end-of-buffer state. The second causes 3134 * a jam in that state. 3135 */ 3136 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR; 3137 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR; 3138 3139 b->yy_buf_pos = &b->yy_ch_buf[0]; 3140 3141 b->yy_at_bol = 1; 3142 b->yy_buffer_status = YY_BUFFER_NEW; 3143 3144 if ( b == YY_CURRENT_BUFFER ) 3145 yy_load_buffer_state( ); 3146 } 3147 3148 /** Pushes the new state onto the stack. The new state becomes 3149 * the current state. This function will allocate the stack 3150 * if necessary. 3151 * @param new_buffer The new state. 3152 * 3153 */ 3154 void yypush_buffer_state (YY_BUFFER_STATE new_buffer ) 3155 { 3156 if (new_buffer == NULL) 3157 return; 3158 3159 yyensure_buffer_stack(); 3160 3161 /* This block is copied from yy_switch_to_buffer. */ 3162 if ( YY_CURRENT_BUFFER ) 3163 { 3164 /* Flush out information for old buffer. */ 3165 *(yy_c_buf_p) = (yy_hold_char); 3166 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); 3167 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 3168 } 3169 3170 /* Only push if top exists. Otherwise, replace top. */ 3171 if (YY_CURRENT_BUFFER) 3172 (yy_buffer_stack_top)++; 3173 YY_CURRENT_BUFFER_LVALUE = new_buffer; 3174 3175 /* copied from yy_switch_to_buffer. */ 3176 yy_load_buffer_state( ); 3177 (yy_did_buffer_switch_on_eof) = 1; 3178 } 3179 3180 /** Removes and deletes the top of the stack, if present. 3181 * The next element becomes the new top. 3182 * 3183 */ 3184 void yypop_buffer_state (void) 3185 { 3186 if (!YY_CURRENT_BUFFER) 3187 return; 3188 3189 yy_delete_buffer(YY_CURRENT_BUFFER ); 3190 YY_CURRENT_BUFFER_LVALUE = NULL; 3191 if ((yy_buffer_stack_top) > 0) 3192 --(yy_buffer_stack_top); 3193 3194 if (YY_CURRENT_BUFFER) { 3195 yy_load_buffer_state( ); 3196 (yy_did_buffer_switch_on_eof) = 1; 3197 } 3198 } 3199 3200 /* Allocates the stack if it does not exist. 3201 * Guarantees space for at least one push. 3202 */ 3203 static void yyensure_buffer_stack (void) 3204 { 3205 yy_size_t num_to_alloc; 3206 3207 if (!(yy_buffer_stack)) { 3208 3209 /* First allocation is just for 2 elements, since we don't know if this 3210 * scanner will even need a stack. We use 2 instead of 1 to avoid an 3211 * immediate realloc on the next call. 3212 */ 3213 num_to_alloc = 1; 3214 (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc 3215 (num_to_alloc * sizeof(struct yy_buffer_state*) 3216 ); 3217 if ( ! (yy_buffer_stack) ) 3218 YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); 3219 3220 memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); 3221 3222 (yy_buffer_stack_max) = num_to_alloc; 3223 (yy_buffer_stack_top) = 0; 3224 return; 3225 } 3226 3227 if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ 3228 3229 /* Increase the buffer to prepare for a possible push. */ 3230 int grow_size = 8 /* arbitrary grow size */; 3231 3232 num_to_alloc = (yy_buffer_stack_max) + grow_size; 3233 (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc 3234 ((yy_buffer_stack), 3235 num_to_alloc * sizeof(struct yy_buffer_state*) 3236 ); 3237 if ( ! (yy_buffer_stack) ) 3238 YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); 3239 3240 /* zero only the new slots.*/ 3241 memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); 3242 (yy_buffer_stack_max) = num_to_alloc; 3243 } 3244 } 3245 3246 /** Setup the input buffer state to scan directly from a user-specified character buffer. 3247 * @param base the character buffer 3248 * @param size the size in bytes of the character buffer 3249 * 3250 * @return the newly allocated buffer state object. 3251 */ 3252 YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) 3253 { 3254 YY_BUFFER_STATE b; 3255 3256 if ( size < 2 || 3257 base[size-2] != YY_END_OF_BUFFER_CHAR || 3258 base[size-1] != YY_END_OF_BUFFER_CHAR ) 3259 /* They forgot to leave room for the EOB's. */ 3260 return 0; 3261 3262 b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); 3263 if ( ! b ) 3264 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" ); 3265 3266 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */ 3267 b->yy_buf_pos = b->yy_ch_buf = base; 3268 b->yy_is_our_buffer = 0; 3269 b->yy_input_file = 0; 3270 b->yy_n_chars = b->yy_buf_size; 3271 b->yy_is_interactive = 0; 3272 b->yy_at_bol = 1; 3273 b->yy_fill_buffer = 0; 3274 b->yy_buffer_status = YY_BUFFER_NEW; 3275 3276 yy_switch_to_buffer(b ); 3277 3278 return b; 3279 } 3280 3281 /** Setup the input buffer state to scan a string. The next call to yylex() will 3282 * scan from a @e copy of @a str. 3283 * @param yystr a NUL-terminated string to scan 3284 * 3285 * @return the newly allocated buffer state object. 3286 * @note If you want to scan bytes that may contain NUL values, then use 3287 * yy_scan_bytes() instead. 3288 */ 3289 YY_BUFFER_STATE yy_scan_string (yyconst char * yystr ) 3290 { 3291 3292 return yy_scan_bytes(yystr,strlen(yystr) ); 3293 } 3294 3295 /** Setup the input buffer state to scan the given bytes. The next call to yylex() will 3296 * scan from a @e copy of @a bytes. 3297 * @param yybytes the byte buffer to scan 3298 * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes. 3299 * 3300 * @return the newly allocated buffer state object. 3301 */ 3302 YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len ) 3303 { 3304 YY_BUFFER_STATE b; 3305 char *buf; 3306 yy_size_t n; 3307 yy_size_t i; 3308 3309 /* Get memory for full buffer, including space for trailing EOB's. */ 3310 n = _yybytes_len + 2; 3311 buf = (char *) yyalloc(n ); 3312 if ( ! buf ) 3313 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" ); 3314 3315 for ( i = 0; i < _yybytes_len; ++i ) 3316 buf[i] = yybytes[i]; 3317 3318 buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; 3319 3320 b = yy_scan_buffer(buf,n ); 3321 if ( ! b ) 3322 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" ); 3323 3324 /* It's okay to grow etc. this buffer, and we should throw it 3325 * away when we're done. 3326 */ 3327 b->yy_is_our_buffer = 1; 3328 3329 return b; 3330 } 3331 3332 #ifndef YY_EXIT_FAILURE 3333 #define YY_EXIT_FAILURE 2 3334 #endif 3335 3336 static void yy_fatal_error (yyconst char* msg ) 3337 { 3338 (void) fprintf( stderr, "%s\n", msg ); 3339 exit( YY_EXIT_FAILURE ); 3340 } 3341 3342 /* Redefine yyless() so it works in section 3 code. */ 3343 3344 #undef yyless 3345 #define yyless(n) \ 3346 do \ 3347 { \ 3348 /* Undo effects of setting up yytext. */ \ 3349 int yyless_macro_arg = (n); \ 3350 YY_LESS_LINENO(yyless_macro_arg);\ 3351 yytext[yyleng] = (yy_hold_char); \ 3352 (yy_c_buf_p) = yytext + yyless_macro_arg; \ 3353 (yy_hold_char) = *(yy_c_buf_p); \ 3354 *(yy_c_buf_p) = '\0'; \ 3355 yyleng = yyless_macro_arg; \ 3356 } \ 3357 while ( 0 ) 3358 3359 /* Accessor methods (get/set functions) to struct members. */ 3360 3361 /** Get the current line number. 3362 * 3363 */ 3364 int yyget_lineno (void) 3365 { 3366 3367 return yylineno; 3368 } 3369 3370 /** Get the input stream. 3371 * 3372 */ 3373 FILE *yyget_in (void) 3374 { 3375 return yyin; 3376 } 3377 3378 /** Get the output stream. 3379 * 3380 */ 3381 FILE *yyget_out (void) 3382 { 3383 return yyout; 3384 } 3385 3386 /** Get the length of the current token. 3387 * 3388 */ 3389 yy_size_t yyget_leng (void) 3390 { 3391 return yyleng; 3392 } 3393 3394 /** Get the current token. 3395 * 3396 */ 3397 3398 char *yyget_text (void) 3399 { 3400 return yytext; 3401 } 3402 3403 /** Set the current line number. 3404 * @param line_number 3405 * 3406 */ 3407 void yyset_lineno (int line_number ) 3408 { 3409 3410 yylineno = line_number; 3411 } 3412 3413 /** Set the input stream. This does not discard the current 3414 * input buffer. 3415 * @param in_str A readable stream. 3416 * 3417 * @see yy_switch_to_buffer 3418 */ 3419 void yyset_in (FILE * in_str ) 3420 { 3421 yyin = in_str ; 3422 } 3423 3424 void yyset_out (FILE * out_str ) 3425 { 3426 yyout = out_str ; 3427 } 3428 3429 int yyget_debug (void) 3430 { 3431 return yy_flex_debug; 3432 } 3433 3434 void yyset_debug (int bdebug ) 3435 { 3436 yy_flex_debug = bdebug ; 3437 } 3438 3439 static int yy_init_globals (void) 3440 { 3441 /* Initialization is the same as for the non-reentrant scanner. 3442 * This function is called from yylex_destroy(), so don't allocate here. 3443 */ 3444 3445 (yy_buffer_stack) = 0; 3446 (yy_buffer_stack_top) = 0; 3447 (yy_buffer_stack_max) = 0; 3448 (yy_c_buf_p) = (char *) 0; 3449 (yy_init) = 0; 3450 (yy_start) = 0; 3451 3452 /* Defined in main.c */ 3453 #ifdef YY_STDINIT 3454 yyin = stdin; 3455 yyout = stdout; 3456 #else 3457 yyin = (FILE *) 0; 3458 yyout = (FILE *) 0; 3459 #endif 3460 3461 /* For future reference: Set errno on error, since we are called by 3462 * yylex_init() 3463 */ 3464 return 0; 3465 } 3466 3467 /* yylex_destroy is for both reentrant and non-reentrant scanners. */ 3468 int yylex_destroy (void) 3469 { 3470 3471 /* Pop the buffer stack, destroying each element. */ 3472 while(YY_CURRENT_BUFFER){ 3473 yy_delete_buffer(YY_CURRENT_BUFFER ); 3474 YY_CURRENT_BUFFER_LVALUE = NULL; 3475 yypop_buffer_state(); 3476 } 3477 3478 /* Destroy the stack itself. */ 3479 yyfree((yy_buffer_stack) ); 3480 (yy_buffer_stack) = NULL; 3481 3482 /* Reset the globals. This is important in a non-reentrant scanner so the next time 3483 * yylex() is called, initialization will occur. */ 3484 yy_init_globals( ); 3485 3486 return 0; 3487 } 3488 3489 /* 3490 * Internal utility routines. 3491 */ 3492 3493 #ifndef yytext_ptr 3494 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) 3495 { 3496 int i; 3497 for ( i = 0; i < n; ++i ) 3498 s1[i] = s2[i]; 3499 } 3500 #endif 3501 3502 #ifdef YY_NEED_STRLEN 3503 static int yy_flex_strlen (yyconst char * s ) 3504 { 3505 int n; 3506 for ( n = 0; s[n]; ++n ) 3507 ; 3508 3509 return n; 3510 } 3511 #endif 3512 3513 void *yyalloc (yy_size_t size ) 3514 { 3515 return (void *) malloc( size ); 3516 } 3517 3518 void *yyrealloc (void * ptr, yy_size_t size ) 3519 { 3520 /* The cast to (char *) in the following accommodates both 3521 * implementations that use char* generic pointers, and those 3522 * that use void* generic pointers. It works with the latter 3523 * because both ANSI C and C++ allow castless assignment from 3524 * any pointer type to void*, and deal with argument conversions 3525 * as though doing an assignment. 3526 */ 3527 return (void *) realloc( (char *) ptr, size ); 3528 } 3529 3530 void yyfree (void * ptr ) 3531 { 3532 free( (char *) ptr ); /* see yyrealloc() for (char *) cast */ 3533 } 3534 3535 #define YYTABLES_NAME "yytables" 3536 3537