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