1 #include "config.h" 2 #include "util/configyyrename.h" 3 4 #line 3 "<stdout>" 5 6 #define YY_INT_ALIGNED short int 7 8 /* $OpenBSD: configlexer.c,v 1.10 2021/03/16 18:38:05 florian Exp $ */ 9 10 /* A lexical scanner generated by flex */ 11 12 #define FLEX_SCANNER 13 #define YY_FLEX_MAJOR_VERSION 2 14 #define YY_FLEX_MINOR_VERSION 5 15 #define YY_FLEX_SUBMINOR_VERSION 39 16 #if YY_FLEX_SUBMINOR_VERSION > 0 17 #define FLEX_BETA 18 #endif 19 20 /* First, we deal with platform-specific or compiler-specific issues. */ 21 22 /* begin standard C headers. */ 23 #include <stdio.h> 24 #include <string.h> 25 #include <errno.h> 26 #include <stdlib.h> 27 28 /* end standard C headers. */ 29 30 /* $OpenBSD: configlexer.c,v 1.10 2021/03/16 18:38:05 florian Exp $ */ 31 32 /* flex integer type definitions */ 33 34 #ifndef FLEXINT_H 35 #define FLEXINT_H 36 37 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */ 38 39 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L 40 41 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, 42 * if you want the limit (max/min) macros for int types. 43 */ 44 #ifndef __STDC_LIMIT_MACROS 45 #define __STDC_LIMIT_MACROS 1 46 #endif 47 48 #include <inttypes.h> 49 typedef int8_t flex_int8_t; 50 typedef uint8_t flex_uint8_t; 51 typedef int16_t flex_int16_t; 52 typedef uint16_t flex_uint16_t; 53 typedef int32_t flex_int32_t; 54 typedef uint32_t flex_uint32_t; 55 #else 56 typedef signed char flex_int8_t; 57 typedef short int flex_int16_t; 58 typedef int flex_int32_t; 59 typedef unsigned char flex_uint8_t; 60 typedef unsigned short int flex_uint16_t; 61 typedef unsigned int flex_uint32_t; 62 63 /* Limits of integral types. */ 64 #ifndef INT8_MIN 65 #define INT8_MIN (-128) 66 #endif 67 #ifndef INT16_MIN 68 #define INT16_MIN (-32767-1) 69 #endif 70 #ifndef INT32_MIN 71 #define INT32_MIN (-2147483647-1) 72 #endif 73 #ifndef INT8_MAX 74 #define INT8_MAX (127) 75 #endif 76 #ifndef INT16_MAX 77 #define INT16_MAX (32767) 78 #endif 79 #ifndef INT32_MAX 80 #define INT32_MAX (2147483647) 81 #endif 82 #ifndef UINT8_MAX 83 #define UINT8_MAX (255U) 84 #endif 85 #ifndef UINT16_MAX 86 #define UINT16_MAX (65535U) 87 #endif 88 #ifndef UINT32_MAX 89 #define UINT32_MAX (4294967295U) 90 #endif 91 92 #endif /* ! C99 */ 93 94 #endif /* ! FLEXINT_H */ 95 96 #ifdef __cplusplus 97 98 /* The "const" storage-class-modifier is valid. */ 99 #define YY_USE_CONST 100 101 #else /* ! __cplusplus */ 102 103 /* C99 requires __STDC__ to be defined as 1. */ 104 #if defined (__STDC__) 105 106 #define YY_USE_CONST 107 108 #endif /* defined (__STDC__) */ 109 #endif /* ! __cplusplus */ 110 111 #ifdef YY_USE_CONST 112 #define yyconst const 113 #else 114 #define yyconst 115 #endif 116 117 /* Returned upon end-of-file. */ 118 #define YY_NULL 0 119 120 /* Promotes a possibly negative, possibly signed char to an unsigned 121 * integer for use as an array index. If the signed char is negative, 122 * we want to instead treat it as an 8-bit unsigned char, hence the 123 * double cast. 124 */ 125 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c) 126 127 /* Enter a start condition. This macro really ought to take a parameter, 128 * but we do it the disgusting crufty way forced on us by the ()-less 129 * definition of BEGIN. 130 */ 131 #define BEGIN (yy_start) = 1 + 2 * 132 133 /* Translate the current start state into a value that can be later handed 134 * to BEGIN to return to the state. The YYSTATE alias is for lex 135 * compatibility. 136 */ 137 #define YY_START (((yy_start) - 1) / 2) 138 #define YYSTATE YY_START 139 140 /* Action number for EOF rule of a given start state. */ 141 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) 142 143 /* Special action meaning "start processing a new file". */ 144 #define YY_NEW_FILE yyrestart(yyin ) 145 146 #define YY_END_OF_BUFFER_CHAR 0 147 148 /* Size of default input buffer. */ 149 #ifndef YY_BUF_SIZE 150 #define YY_BUF_SIZE 16384 151 #endif 152 153 /* The state buf must be large enough to hold one state per character in the main buffer. 154 */ 155 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) 156 157 #ifndef YY_TYPEDEF_YY_BUFFER_STATE 158 #define YY_TYPEDEF_YY_BUFFER_STATE 159 typedef struct yy_buffer_state *YY_BUFFER_STATE; 160 #endif 161 162 #ifndef YY_TYPEDEF_YY_SIZE_T 163 #define YY_TYPEDEF_YY_SIZE_T 164 typedef size_t yy_size_t; 165 #endif 166 167 extern yy_size_t yyleng; 168 169 extern FILE *yyin, *yyout; 170 171 #define EOB_ACT_CONTINUE_SCAN 0 172 #define EOB_ACT_END_OF_FILE 1 173 #define EOB_ACT_LAST_MATCH 2 174 175 #define YY_LESS_LINENO(n) 176 #define YY_LINENO_REWIND_TO(ptr) 177 178 /* Return all but the first "n" matched characters back to the input stream. */ 179 #define yyless(n) \ 180 do \ 181 { \ 182 /* Undo effects of setting up yytext. */ \ 183 int yyless_macro_arg = (n); \ 184 YY_LESS_LINENO(yyless_macro_arg);\ 185 *yy_cp = (yy_hold_char); \ 186 YY_RESTORE_YY_MORE_OFFSET \ 187 (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ 188 YY_DO_BEFORE_ACTION; /* set up yytext again */ \ 189 } \ 190 while ( 0 ) 191 192 #define unput(c) yyunput( c, (yytext_ptr) ) 193 194 #ifndef YY_STRUCT_YY_BUFFER_STATE 195 #define YY_STRUCT_YY_BUFFER_STATE 196 struct yy_buffer_state 197 { 198 FILE *yy_input_file; 199 200 char *yy_ch_buf; /* input buffer */ 201 char *yy_buf_pos; /* current position in input buffer */ 202 203 /* Size of input buffer in bytes, not including room for EOB 204 * characters. 205 */ 206 yy_size_t yy_buf_size; 207 208 /* Number of characters read into yy_ch_buf, not including EOB 209 * characters. 210 */ 211 yy_size_t yy_n_chars; 212 213 /* Whether we "own" the buffer - i.e., we know we created it, 214 * and can realloc() it to grow it, and should free() it to 215 * delete it. 216 */ 217 int yy_is_our_buffer; 218 219 /* Whether this is an "interactive" input source; if so, and 220 * if we're using stdio for input, then we want to use getc() 221 * instead of fread(), to make sure we stop fetching input after 222 * each newline. 223 */ 224 int yy_is_interactive; 225 226 /* Whether we're considered to be at the beginning of a line. 227 * If so, '^' rules will be active on the next match, otherwise 228 * not. 229 */ 230 int yy_at_bol; 231 232 int yy_bs_lineno; /**< The line count. */ 233 int yy_bs_column; /**< The column count. */ 234 235 /* Whether to try to fill the input buffer when we reach the 236 * end of it. 237 */ 238 int yy_fill_buffer; 239 240 int yy_buffer_status; 241 242 #define YY_BUFFER_NEW 0 243 #define YY_BUFFER_NORMAL 1 244 /* When an EOF's been seen but there's still some text to process 245 * then we mark the buffer as YY_EOF_PENDING, to indicate that we 246 * shouldn't try reading from the input source any more. We might 247 * still have a bunch of tokens to match, though, because of 248 * possible backing-up. 249 * 250 * When we actually see the EOF, we change the status to "new" 251 * (via yyrestart()), so that the user can continue scanning by 252 * just pointing yyin at a new input file. 253 */ 254 #define YY_BUFFER_EOF_PENDING 2 255 256 }; 257 #endif /* !YY_STRUCT_YY_BUFFER_STATE */ 258 259 /* Stack of input buffers. */ 260 static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */ 261 static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */ 262 static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ 263 264 /* We provide macros for accessing buffer states in case in the 265 * future we want to put the buffer states in a more general 266 * "scanner state". 267 * 268 * Returns the top of the stack, or NULL. 269 */ 270 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ 271 ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ 272 : NULL) 273 274 /* Same as previous macro, but useful when we know that the buffer stack is not 275 * NULL or when we need an lvalue. For internal use only. 276 */ 277 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] 278 279 /* yy_hold_char holds the character lost when yytext is formed. */ 280 static char yy_hold_char; 281 static yy_size_t yy_n_chars; /* number of characters read into yy_ch_buf */ 282 yy_size_t yyleng; 283 284 /* Points to current character in buffer. */ 285 static char *yy_c_buf_p = (char *) 0; 286 static int yy_init = 0; /* whether we need to initialize */ 287 static int yy_start = 0; /* start state number */ 288 289 /* Flag which is used to allow yywrap()'s to do buffer switches 290 * instead of setting up a fresh yyin. A bit of a hack ... 291 */ 292 static int yy_did_buffer_switch_on_eof; 293 294 void yyrestart (FILE *input_file ); 295 void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ); 296 YY_BUFFER_STATE yy_create_buffer (FILE *file,int size ); 297 void yy_delete_buffer (YY_BUFFER_STATE b ); 298 void yy_flush_buffer (YY_BUFFER_STATE b ); 299 void yypush_buffer_state (YY_BUFFER_STATE new_buffer ); 300 void yypop_buffer_state (void ); 301 302 static void yyensure_buffer_stack (void ); 303 static void yy_load_buffer_state (void ); 304 static void yy_init_buffer (YY_BUFFER_STATE b,FILE *file ); 305 306 #define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER ) 307 308 YY_BUFFER_STATE yy_scan_buffer (char *base,yy_size_t size ); 309 YY_BUFFER_STATE yy_scan_string (yyconst char *yy_str ); 310 YY_BUFFER_STATE yy_scan_bytes (yyconst char *bytes,yy_size_t len ); 311 312 void *yyalloc (yy_size_t ); 313 void *yyrealloc (void *,yy_size_t ); 314 void yyfree (void * ); 315 316 #define yy_new_buffer yy_create_buffer 317 318 #define yy_set_interactive(is_interactive) \ 319 { \ 320 if ( ! YY_CURRENT_BUFFER ){ \ 321 yyensure_buffer_stack (); \ 322 YY_CURRENT_BUFFER_LVALUE = \ 323 yy_create_buffer(yyin,YY_BUF_SIZE ); \ 324 } \ 325 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ 326 } 327 328 #define yy_set_bol(at_bol) \ 329 { \ 330 if ( ! YY_CURRENT_BUFFER ){\ 331 yyensure_buffer_stack (); \ 332 YY_CURRENT_BUFFER_LVALUE = \ 333 yy_create_buffer(yyin,YY_BUF_SIZE ); \ 334 } \ 335 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ 336 } 337 338 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) 339 340 /* Begin user sect3 */ 341 342 typedef unsigned char YY_CHAR; 343 344 FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0; 345 346 typedef int yy_state_type; 347 348 extern int yylineno; 349 350 int yylineno = 1; 351 352 extern char *yytext; 353 #define yytext_ptr yytext 354 355 static yy_state_type yy_get_previous_state (void ); 356 static yy_state_type yy_try_NUL_trans (yy_state_type current_state ); 357 static int yy_get_next_buffer (void ); 358 static void yy_fatal_error (yyconst char msg[] ); 359 360 /* Done after the current pattern has been matched and before the 361 * corresponding action - sets up yytext. 362 */ 363 #define YY_DO_BEFORE_ACTION \ 364 (yytext_ptr) = yy_bp; \ 365 (yytext_ptr) -= (yy_more_len); \ 366 yyleng = (size_t) (yy_cp - (yytext_ptr)); \ 367 (yy_hold_char) = *yy_cp; \ 368 *yy_cp = '\0'; \ 369 (yy_c_buf_p) = yy_cp; 370 371 #define YY_NUM_RULES 343 372 #define YY_END_OF_BUFFER 344 373 /* This struct is not used in this scanner, 374 but its presence is necessary. */ 375 struct yy_trans_info 376 { 377 flex_int32_t yy_verify; 378 flex_int32_t yy_nxt; 379 }; 380 static yyconst flex_int16_t yy_accept[3354] = 381 { 0, 382 1, 1, 317, 317, 321, 321, 325, 325, 329, 329, 383 1, 1, 333, 333, 337, 337, 344, 341, 1, 315, 384 315, 342, 2, 342, 341, 341, 341, 341, 341, 341, 385 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 386 341, 341, 341, 341, 341, 341, 317, 318, 318, 319, 387 342, 321, 322, 322, 323, 342, 328, 325, 326, 326, 388 327, 342, 329, 330, 330, 331, 342, 340, 316, 2, 389 320, 342, 340, 336, 333, 334, 334, 335, 342, 337, 390 338, 338, 339, 342, 341, 0, 1, 2, 2, 2, 391 2, 341, 341, 341, 341, 341, 341, 341, 341, 341, 392 393 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 394 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 395 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 396 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 397 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 398 341, 341, 341, 341, 341, 341, 341, 341, 341, 317, 399 0, 321, 0, 328, 0, 325, 329, 0, 340, 0, 400 2, 2, 340, 336, 0, 333, 337, 0, 341, 341, 401 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 402 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 403 404 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 405 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 406 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 407 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 408 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 409 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 410 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 411 341, 340, 341, 341, 341, 341, 341, 341, 341, 341, 412 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 413 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 414 415 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 416 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 417 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 418 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 419 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 420 341, 341, 341, 341, 341, 341, 341, 341, 125, 341, 421 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 422 341, 341, 341, 341, 341, 341, 341, 341, 341, 134, 423 341, 341, 341, 341, 341, 341, 341, 340, 341, 341, 424 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 425 426 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 427 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 428 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 429 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 430 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 431 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 432 341, 341, 341, 341, 341, 341, 109, 341, 314, 341, 433 341, 341, 341, 341, 341, 341, 8, 341, 341, 341, 434 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 435 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 436 437 341, 341, 341, 341, 341, 341, 126, 341, 341, 341, 438 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 439 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 440 341, 341, 341, 341, 341, 341, 341, 139, 341, 340, 441 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 442 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 443 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 444 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 445 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 446 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 447 448 341, 341, 341, 341, 341, 341, 341, 307, 341, 341, 449 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 450 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 451 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 452 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 453 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 454 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 455 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 456 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 457 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 458 459 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 460 341, 341, 340, 341, 341, 341, 341, 341, 341, 341, 461 341, 341, 341, 341, 341, 64, 341, 341, 341, 341, 462 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 463 239, 341, 14, 15, 341, 19, 18, 341, 341, 223, 464 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 465 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 466 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 467 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 468 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 469 470 341, 132, 341, 341, 341, 341, 341, 341, 341, 341, 471 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 472 341, 341, 341, 341, 341, 221, 341, 341, 341, 341, 473 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 474 341, 341, 341, 341, 341, 3, 341, 341, 341, 341, 475 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 476 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 477 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 478 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 479 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 480 481 340, 341, 341, 341, 341, 341, 341, 341, 301, 341, 482 341, 300, 341, 341, 341, 341, 341, 341, 341, 341, 483 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 484 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 485 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 486 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 487 341, 341, 341, 341, 341, 341, 341, 341, 341, 324, 488 341, 341, 341, 341, 341, 341, 341, 341, 63, 341, 489 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 490 341, 341, 341, 341, 341, 67, 341, 270, 341, 341, 491 492 341, 341, 341, 341, 341, 341, 308, 309, 341, 341, 493 341, 341, 341, 341, 341, 68, 341, 341, 133, 341, 494 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 495 341, 341, 341, 129, 341, 341, 341, 341, 341, 341, 496 341, 341, 341, 210, 341, 341, 341, 341, 341, 341, 497 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 498 341, 341, 341, 341, 21, 341, 341, 341, 341, 341, 499 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 500 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 501 341, 341, 341, 341, 158, 341, 341, 340, 324, 341, 502 503 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 504 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 505 107, 341, 341, 341, 341, 341, 341, 341, 278, 341, 506 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 507 341, 341, 341, 341, 341, 341, 182, 341, 341, 341, 508 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 509 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 510 341, 341, 341, 341, 341, 341, 157, 341, 341, 341, 511 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 512 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 513 514 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 515 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 516 341, 106, 341, 341, 341, 341, 341, 341, 341, 341, 517 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 518 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 519 32, 341, 341, 341, 341, 341, 341, 341, 341, 341, 520 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 521 33, 341, 341, 341, 341, 341, 341, 341, 341, 341, 522 341, 341, 341, 341, 341, 341, 65, 341, 341, 341, 523 341, 341, 341, 341, 341, 341, 131, 340, 341, 341, 524 525 341, 341, 341, 124, 341, 341, 341, 341, 341, 341, 526 341, 341, 341, 341, 341, 341, 341, 341, 341, 66, 527 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 528 341, 341, 243, 341, 341, 341, 341, 341, 341, 341, 529 341, 341, 341, 341, 341, 341, 183, 341, 341, 341, 530 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 531 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 532 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 533 341, 341, 341, 341, 54, 341, 341, 341, 341, 341, 534 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 535 536 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 537 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 538 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 539 341, 341, 341, 341, 341, 341, 341, 261, 341, 341, 540 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 541 341, 341, 341, 341, 341, 341, 341, 58, 341, 59, 542 341, 341, 341, 341, 341, 110, 341, 111, 341, 341, 543 341, 341, 108, 341, 341, 341, 341, 341, 341, 341, 544 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 545 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 546 547 341, 341, 7, 341, 340, 341, 341, 341, 341, 341, 548 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 549 341, 341, 341, 232, 341, 341, 341, 341, 160, 341, 550 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 551 341, 341, 341, 341, 341, 244, 341, 341, 341, 341, 552 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 553 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 554 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 555 341, 341, 45, 341, 341, 341, 341, 341, 341, 341, 556 341, 341, 55, 341, 341, 341, 341, 341, 341, 341, 557 558 341, 341, 341, 341, 341, 341, 341, 202, 341, 201, 559 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 560 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 561 341, 341, 341, 341, 341, 341, 341, 341, 16, 17, 562 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 563 341, 341, 341, 69, 341, 341, 341, 341, 341, 341, 564 341, 341, 341, 341, 341, 341, 209, 341, 341, 341, 565 341, 341, 341, 113, 341, 112, 341, 341, 341, 341, 566 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 567 341, 341, 341, 341, 341, 341, 341, 341, 193, 341, 568 569 341, 341, 341, 341, 341, 341, 341, 140, 340, 341, 570 341, 341, 341, 341, 341, 341, 341, 341, 341, 101, 571 341, 341, 341, 341, 341, 341, 341, 341, 341, 89, 572 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 573 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 574 341, 341, 341, 341, 341, 222, 341, 341, 341, 341, 575 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 576 341, 341, 341, 341, 94, 341, 341, 341, 341, 341, 577 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 578 341, 341, 341, 341, 341, 341, 62, 341, 341, 341, 579 580 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 581 341, 341, 341, 341, 341, 196, 197, 341, 341, 341, 582 272, 341, 341, 341, 341, 341, 341, 341, 341, 341, 583 341, 341, 341, 6, 341, 341, 341, 341, 341, 341, 584 291, 341, 341, 341, 341, 341, 341, 341, 341, 341, 585 341, 341, 341, 341, 341, 341, 341, 341, 276, 341, 586 341, 341, 341, 341, 341, 302, 341, 341, 341, 341, 587 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 588 341, 341, 341, 341, 341, 341, 341, 42, 341, 341, 589 341, 341, 44, 341, 341, 341, 90, 341, 341, 341, 590 591 341, 341, 52, 341, 341, 341, 341, 341, 341, 341, 592 340, 341, 189, 341, 341, 341, 135, 341, 341, 341, 593 341, 341, 341, 341, 341, 341, 341, 214, 341, 190, 594 341, 341, 341, 229, 341, 341, 341, 341, 341, 341, 595 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 596 341, 341, 341, 341, 53, 341, 341, 341, 341, 341, 597 341, 341, 341, 341, 341, 137, 118, 341, 119, 341, 598 341, 341, 117, 341, 341, 341, 341, 341, 341, 341, 599 341, 155, 341, 341, 50, 341, 341, 341, 341, 341, 600 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 601 602 341, 260, 341, 341, 341, 341, 341, 341, 341, 341, 603 341, 191, 341, 341, 341, 341, 341, 194, 341, 200, 604 341, 341, 341, 341, 341, 228, 341, 341, 341, 341, 605 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 606 341, 341, 105, 341, 341, 341, 341, 341, 341, 341, 607 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 608 341, 130, 341, 341, 341, 341, 341, 341, 341, 60, 609 341, 341, 341, 26, 341, 341, 341, 341, 341, 341, 610 341, 341, 341, 20, 341, 341, 341, 341, 341, 341, 611 27, 36, 341, 165, 341, 341, 341, 341, 341, 341, 612 613 341, 341, 341, 341, 341, 341, 341, 340, 341, 341, 614 341, 341, 341, 341, 77, 79, 341, 341, 341, 341, 615 341, 341, 341, 341, 341, 341, 341, 341, 341, 280, 616 341, 341, 341, 341, 240, 341, 341, 341, 341, 341, 617 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 618 341, 341, 341, 341, 341, 341, 341, 120, 341, 341, 619 341, 341, 341, 341, 341, 341, 341, 154, 341, 46, 620 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 621 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 622 341, 295, 341, 341, 341, 341, 341, 341, 341, 341, 623 624 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 625 159, 341, 341, 341, 341, 341, 341, 341, 341, 341, 626 341, 341, 341, 289, 341, 341, 341, 220, 341, 341, 627 341, 341, 341, 341, 341, 341, 341, 305, 341, 341, 628 341, 341, 341, 341, 341, 341, 341, 341, 341, 176, 629 341, 341, 341, 341, 341, 341, 341, 341, 341, 114, 630 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 631 341, 341, 341, 341, 341, 341, 341, 341, 341, 171, 632 341, 184, 341, 341, 341, 341, 340, 341, 143, 341, 633 341, 341, 341, 341, 100, 341, 341, 341, 341, 212, 634 635 341, 341, 341, 341, 341, 341, 230, 341, 341, 341, 636 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 637 341, 341, 341, 252, 341, 341, 341, 341, 341, 341, 638 341, 341, 341, 341, 136, 341, 341, 341, 341, 341, 639 341, 341, 341, 341, 341, 341, 341, 341, 341, 175, 640 341, 341, 341, 341, 341, 341, 80, 341, 81, 341, 641 341, 341, 341, 341, 61, 298, 341, 341, 341, 341, 642 341, 88, 185, 341, 203, 341, 233, 341, 341, 195, 643 273, 341, 341, 341, 341, 341, 73, 341, 187, 341, 644 341, 341, 341, 341, 9, 341, 341, 341, 341, 341, 645 646 104, 341, 341, 341, 341, 265, 341, 341, 341, 341, 647 211, 341, 341, 341, 341, 341, 341, 341, 341, 341, 648 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 649 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 650 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 651 341, 341, 341, 341, 341, 341, 341, 340, 341, 341, 652 341, 341, 174, 341, 341, 341, 341, 341, 341, 341, 653 341, 341, 341, 161, 341, 279, 341, 341, 341, 341, 654 341, 251, 341, 341, 341, 341, 341, 341, 341, 341, 655 341, 341, 341, 224, 341, 341, 341, 341, 341, 271, 656 657 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 658 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 659 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 660 299, 341, 186, 341, 341, 341, 341, 341, 341, 341, 661 72, 74, 341, 341, 341, 341, 341, 341, 341, 341, 662 341, 103, 341, 341, 341, 341, 263, 341, 341, 341, 663 341, 275, 341, 341, 341, 341, 341, 341, 341, 341, 664 341, 341, 341, 341, 216, 34, 28, 30, 341, 341, 665 341, 341, 341, 341, 341, 341, 341, 35, 341, 29, 666 31, 341, 341, 341, 341, 341, 341, 341, 341, 99, 667 668 341, 341, 341, 341, 341, 341, 340, 341, 341, 341, 669 341, 341, 341, 341, 341, 341, 341, 341, 218, 215, 670 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 671 341, 341, 341, 341, 341, 341, 341, 341, 71, 341, 672 341, 341, 138, 341, 121, 341, 341, 341, 341, 341, 673 341, 341, 341, 156, 47, 341, 341, 341, 332, 13, 674 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 675 293, 341, 296, 341, 341, 341, 341, 341, 341, 341, 676 341, 341, 341, 12, 341, 341, 22, 341, 341, 341, 677 341, 341, 269, 341, 341, 341, 341, 277, 341, 341, 678 679 341, 75, 341, 226, 341, 341, 341, 341, 341, 217, 680 341, 341, 70, 341, 341, 341, 341, 23, 341, 43, 681 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 682 341, 341, 170, 169, 332, 341, 341, 341, 341, 341, 683 341, 341, 341, 341, 219, 213, 341, 231, 341, 341, 684 281, 341, 341, 341, 341, 341, 341, 341, 341, 341, 685 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 686 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 687 341, 341, 341, 82, 341, 341, 341, 341, 264, 341, 688 341, 341, 341, 199, 341, 341, 341, 341, 225, 341, 689 690 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 691 303, 304, 167, 341, 341, 76, 341, 341, 341, 341, 692 177, 341, 341, 341, 115, 116, 341, 341, 341, 341, 693 162, 341, 164, 341, 204, 341, 341, 341, 341, 168, 694 341, 341, 234, 341, 341, 341, 341, 341, 341, 341, 695 145, 341, 341, 341, 341, 341, 341, 341, 341, 341, 696 341, 341, 341, 242, 341, 341, 341, 341, 341, 341, 697 341, 312, 341, 24, 341, 274, 341, 341, 341, 341, 698 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 699 86, 205, 341, 341, 262, 341, 297, 341, 198, 341, 700 701 341, 341, 341, 56, 341, 341, 341, 341, 341, 341, 702 4, 341, 341, 341, 341, 128, 144, 341, 341, 341, 703 181, 341, 341, 341, 341, 341, 341, 341, 341, 341, 704 341, 341, 341, 341, 341, 341, 237, 37, 38, 341, 705 341, 341, 341, 341, 341, 341, 282, 341, 341, 341, 706 341, 341, 341, 341, 250, 341, 341, 341, 341, 341, 707 341, 341, 341, 208, 341, 341, 341, 341, 341, 341, 708 341, 341, 341, 341, 341, 341, 85, 341, 57, 268, 709 341, 238, 341, 341, 341, 341, 11, 341, 341, 341, 710 341, 341, 341, 341, 341, 127, 341, 341, 341, 341, 711 712 206, 91, 341, 40, 341, 341, 341, 341, 341, 341, 713 341, 341, 173, 341, 341, 341, 341, 341, 147, 341, 714 341, 341, 341, 241, 341, 341, 341, 341, 341, 249, 715 341, 341, 341, 341, 141, 341, 341, 341, 122, 123, 716 341, 341, 341, 93, 97, 92, 341, 341, 341, 341, 717 83, 341, 341, 341, 341, 341, 10, 341, 341, 341, 718 341, 341, 266, 306, 341, 341, 341, 341, 311, 39, 719 341, 341, 341, 341, 341, 172, 341, 341, 341, 341, 720 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 721 341, 341, 341, 341, 341, 341, 341, 341, 341, 98, 722 723 96, 341, 51, 341, 341, 84, 294, 341, 341, 341, 724 341, 341, 341, 341, 341, 341, 192, 341, 341, 341, 725 341, 341, 207, 341, 341, 341, 341, 341, 341, 341, 726 341, 163, 78, 341, 341, 341, 341, 341, 283, 341, 727 341, 341, 341, 341, 341, 341, 246, 341, 341, 245, 728 142, 341, 341, 95, 48, 341, 148, 149, 152, 153, 729 150, 151, 87, 292, 341, 341, 267, 341, 341, 341, 730 341, 166, 341, 341, 341, 341, 341, 236, 341, 341, 731 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 732 341, 341, 341, 341, 341, 341, 341, 341, 179, 178, 733 734 41, 341, 341, 341, 341, 341, 341, 341, 341, 341, 735 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 736 341, 341, 341, 290, 341, 341, 341, 341, 102, 341, 737 235, 341, 259, 287, 341, 341, 341, 341, 341, 341, 738 341, 341, 341, 341, 341, 313, 341, 49, 5, 341, 739 341, 227, 341, 341, 288, 341, 341, 341, 341, 341, 740 341, 341, 341, 341, 247, 25, 341, 341, 341, 341, 741 341, 341, 341, 341, 341, 341, 341, 341, 248, 341, 742 341, 341, 146, 341, 341, 341, 341, 341, 341, 341, 743 341, 180, 341, 188, 341, 341, 341, 341, 341, 341, 744 745 341, 341, 341, 284, 341, 341, 341, 341, 341, 341, 746 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, 747 341, 310, 341, 341, 255, 341, 341, 341, 341, 341, 748 285, 341, 341, 341, 341, 341, 341, 286, 341, 341, 749 341, 253, 341, 256, 257, 341, 341, 341, 341, 341, 750 254, 258, 0 751 } ; 752 753 static yyconst flex_int32_t yy_ec[256] = 754 { 0, 755 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 756 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, 757 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 758 1, 2, 1, 5, 6, 1, 1, 1, 7, 1, 759 1, 1, 1, 1, 8, 1, 1, 1, 9, 1, 760 10, 11, 1, 12, 1, 1, 1, 13, 1, 1, 761 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 762 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 763 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 764 1, 14, 1, 1, 1, 1, 15, 16, 17, 18, 765 766 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 767 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 768 39, 40, 1, 1, 1, 1, 1, 1, 1, 1, 769 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 770 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 771 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 772 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 773 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 774 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 775 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 776 777 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 778 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 779 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 780 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 781 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 782 1, 1, 1, 1, 1 783 } ; 784 785 static yyconst flex_int32_t yy_meta[41] = 786 { 0, 787 1, 2, 3, 4, 5, 1, 6, 1, 1, 1, 788 1, 1, 7, 1, 1, 1, 1, 1, 1, 1, 789 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 790 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 791 } ; 792 793 static yyconst flex_int16_t yy_base[3372] = 794 { 0, 795 0, 0, 38, 41, 44, 46, 59, 65, 71, 77, 796 90, 112, 96, 118, 124, 136, 4327, 4282, 81, 6547, 797 6547, 6547, 129, 52, 130, 63, 131, 152, 70, 140, 798 149, 156, 57, 88, 76, 173, 175, 95, 197, 145, 799 185, 199, 208, 213, 178, 123, 4186, 6547, 6547, 6547, 800 107, 4109, 6547, 6547, 6547, 154, 4045, 3722, 6547, 6547, 801 6547, 245, 3578, 6547, 6547, 6547, 163, 3220, 6547, 249, 802 6547, 253, 148, 2696, 2594, 6547, 6547, 6547, 257, 2157, 803 6547, 6547, 6547, 233, 1707, 263, 201, 0, 267, 0, 804 0, 165, 191, 221, 252, 205, 181, 265, 92, 261, 805 806 216, 263, 271, 272, 210, 279, 274, 282, 278, 291, 807 283, 286, 276, 285, 295, 293, 306, 314, 297, 313, 808 317, 311, 315, 319, 321, 331, 327, 332, 336, 322, 809 339, 337, 346, 345, 347, 348, 353, 351, 357, 284, 810 358, 359, 369, 360, 380, 365, 381, 379, 375, 366, 811 367, 389, 390, 394, 393, 395, 396, 403, 404, 1665, 812 419, 1172, 422, 924, 429, 854, 832, 433, 781, 437, 813 441, 0, 433, 705, 447, 479, 287, 452, 411, 445, 814 426, 446, 447, 448, 449, 450, 451, 453, 452, 456, 815 470, 234, 463, 473, 481, 479, 476, 483, 486, 487, 816 817 488, 489, 491, 492, 501, 500, 502, 505, 508, 510, 818 511, 460, 509, 513, 527, 515, 516, 519, 538, 529, 819 540, 543, 539, 548, 555, 400, 550, 551, 558, 553, 820 560, 561, 569, 562, 565, 566, 567, 570, 572, 574, 821 576, 579, 578, 582, 577, 590, 591, 585, 595, 594, 822 606, 601, 608, 604, 605, 362, 607, 611, 615, 623, 823 612, 627, 613, 614, 629, 633, 640, 641, 636, 622, 824 637, 639, 643, 644, 646, 648, 647, 656, 660, 659, 825 663, 667, 657, 665, 669, 671, 673, 649, 682, 675, 826 684, 688, 680, 683, 690, 692, 694, 696, 695, 699, 827 828 697, 700, 708, 704, 713, 712, 721, 716, 722, 719, 829 731, 732, 727, 717, 728, 729, 733, 736, 730, 740, 830 738, 741, 745, 743, 750, 752, 760, 755, 756, 771, 831 763, 766, 762, 773, 774, 769, 775, 793, 798, 799, 832 786, 800, 801, 804, 803, 805, 807, 808, 809, 818, 833 811, 823, 815, 824, 825, 829, 836, 834, 6547, 831, 834 833, 847, 848, 849, 852, 765, 856, 858, 839, 868, 835 864, 861, 870, 892, 865, 878, 869, 871, 874, 6547, 836 887, 880, 916, 882, 889, 902, 903, 900, 904, 905, 837 917, 910, 933, 850, 914, 922, 943, 939, 925, 938, 838 839 940, 907, 941, 948, 949, 946, 951, 953, 960, 952, 840 957, 959, 971, 961, 970, 972, 965, 974, 980, 985, 841 987, 992, 975, 984, 995, 978, 990, 998, 1008, 1003, 842 1001, 1009, 1012, 1015, 1023, 1019, 1027, 1028, 1002, 1029, 843 1030, 1035, 1031, 1038, 1041, 1039, 1042, 1051, 1049, 1047, 844 1048, 1054, 1055, 1056, 1058, 1061, 1064, 1063, 1068, 1072, 845 1066, 1073, 1079, 1067, 1085, 1077, 6547, 1089, 6547, 1080, 846 1083, 1087, 1092, 1093, 1094, 1095, 6547, 1097, 1100, 1102, 847 1105, 1109, 1111, 1110, 1116, 1112, 1123, 1124, 1125, 1128, 848 1135, 1130, 1133, 1138, 1137, 1140, 1141, 1144, 1142, 1147, 849 850 1149, 1148, 1154, 1155, 1158, 1175, 6547, 1157, 1167, 1162, 851 1159, 1168, 1169, 1187, 1185, 1188, 1186, 1190, 1203, 1198, 852 1204, 1206, 1207, 1160, 1210, 1212, 1214, 1216, 1217, 1218, 853 1219, 1221, 1222, 1223, 1225, 1224, 1228, 6547, 1226, 1236, 854 1247, 1242, 1245, 1246, 1248, 1249, 1161, 1251, 1250, 1106, 855 517, 1253, 1257, 1258, 1259, 1272, 1267, 1270, 1268, 1269, 856 1275, 1274, 1276, 1278, 1287, 1283, 1289, 1291, 1299, 1298, 857 1301, 1308, 1310, 1303, 1305, 1311, 1307, 1306, 1313, 1315, 858 1322, 1316, 1319, 1326, 1329, 1328, 1331, 1335, 1320, 1336, 859 1333, 1341, 1342, 1343, 1344, 1351, 1350, 1346, 1358, 1353, 860 861 1356, 1354, 1352, 1373, 1374, 1363, 1365, 6547, 1381, 1367, 862 1382, 1383, 1384, 1388, 1390, 1386, 1392, 1393, 1394, 1396, 863 1397, 1399, 1403, 1404, 1405, 1406, 1408, 1419, 1416, 1411, 864 1427, 1426, 1428, 1418, 1430, 1432, 1431, 1440, 1438, 1441, 865 1439, 1445, 1446, 1453, 1448, 1449, 1454, 1463, 1456, 1455, 866 1460, 1458, 1466, 1469, 1468, 1483, 1472, 1480, 1488, 1489, 867 1479, 1491, 1481, 1492, 1496, 1497, 1498, 1499, 1501, 1508, 868 1503, 1510, 1505, 1509, 1511, 1506, 1522, 1512, 1523, 1526, 869 1530, 1513, 1528, 1531, 1533, 1536, 1537, 1538, 1539, 1541, 870 1545, 1543, 1549, 1548, 1550, 1554, 1560, 1561, 1563, 1564, 871 872 1567, 1568, 1571, 1570, 1573, 1581, 1572, 1582, 1584, 1585, 873 1587, 1588, 1592, 1591, 1598, 1595, 1601, 1603, 1605, 1604, 874 1607, 1611, 1614, 1616, 1608, 6547, 1615, 1628, 1623, 1626, 875 1624, 1627, 1629, 1637, 1632, 1635, 1633, 1638, 1639, 1664, 876 6547, 1641, 6547, 6547, 1644, 6547, 6547, 1645, 1649, 6547, 877 1662, 1648, 1658, 1646, 1670, 1677, 1679, 1667, 1675, 1660, 878 1687, 1691, 1694, 1696, 1682, 1697, 1688, 1702, 1708, 1653, 879 1704, 1705, 1711, 1721, 1716, 1724, 1718, 1726, 1727, 1729, 880 1732, 1736, 1738, 1740, 1739, 1743, 1744, 1745, 1747, 1746, 881 1749, 1752, 1755, 1756, 1753, 1758, 1759, 1774, 1772, 1761, 882 883 1779, 6547, 1775, 1782, 1789, 1785, 1792, 1784, 1788, 1791, 884 1764, 1796, 1793, 1797, 1798, 1800, 1802, 1805, 1804, 1809, 885 1810, 1806, 1812, 1822, 1813, 6547, 1817, 1818, 1824, 1825, 886 1828, 1831, 1833, 1829, 1835, 1836, 1839, 1847, 1849, 1840, 887 1842, 1844, 1851, 1854, 1856, 6547, 1862, 1858, 1863, 1865, 888 1866, 1868, 1869, 1871, 1874, 1873, 1876, 1877, 1878, 1879, 889 1886, 1883, 1885, 1890, 1891, 1895, 1900, 1902, 1904, 1906, 890 1908, 1910, 1911, 1912, 1913, 1915, 1916, 1924, 1927, 1923, 891 1928, 1925, 1920, 1944, 1947, 1929, 1931, 1942, 1943, 1945, 892 1951, 1955, 1953, 1946, 1957, 1965, 1958, 1961, 1963, 1967, 893 894 1974, 1969, 1971, 1976, 1979, 1980, 1982, 1983, 6547, 1985, 895 1989, 6547, 1986, 1988, 1990, 2012, 1991, 1993, 1995, 2005, 896 1994, 2014, 1998, 2006, 2022, 2016, 2032, 2025, 2024, 2035, 897 2029, 2037, 2036, 2040, 2041, 2043, 2046, 2047, 2053, 2049, 898 2063, 2067, 2066, 2073, 2075, 2050, 2058, 2062, 2081, 2071, 899 2074, 2070, 2076, 2085, 2091, 2090, 2078, 2093, 2094, 2099, 900 2103, 2104, 2102, 2105, 2106, 2108, 2111, 2116, 2117, 6547, 901 2124, 2125, 2119, 2127, 2121, 2135, 2131, 2130, 6547, 2133, 902 2139, 2140, 2147, 2143, 2144, 2145, 2146, 2151, 2153, 2155, 903 2159, 2160, 2158, 2154, 2176, 6547, 2161, 6547, 2172, 2162, 904 905 2174, 2175, 2178, 2179, 2180, 2183, 6547, 6547, 2187, 2181, 906 2197, 2201, 2191, 2184, 2202, 6547, 2203, 2210, 6547, 2207, 907 2213, 2206, 2205, 2212, 2214, 2217, 2218, 2227, 2222, 2229, 908 2224, 2226, 2234, 6547, 2235, 2236, 2240, 2241, 2237, 2243, 909 2244, 2250, 2247, 6547, 2254, 2251, 2256, 2264, 2266, 2261, 910 2263, 2268, 2272, 2269, 2274, 2275, 2276, 2277, 2284, 2286, 911 2283, 2289, 2291, 2298, 6547, 2282, 2285, 2303, 2299, 2302, 912 2306, 2307, 2308, 2309, 2310, 2311, 1996, 2312, 2318, 2319, 913 2320, 2327, 2329, 2322, 2325, 2333, 2324, 2334, 2335, 2342, 914 2340, 2341, 2344, 2345, 6547, 2346, 2352, 2349, 171, 2353, 915 916 2356, 2354, 2355, 2359, 2362, 2357, 2378, 2379, 2364, 2376, 917 2382, 2383, 2375, 2385, 2386, 2387, 2374, 2390, 2392, 2394, 918 6547, 2396, 2398, 2400, 2401, 2403, 2404, 2406, 6547, 2410, 919 2426, 2423, 2430, 2408, 2405, 2431, 2417, 2421, 2432, 2433, 920 2435, 2437, 2440, 2442, 2444, 2443, 6547, 2447, 2448, 2452, 921 2450, 2458, 2460, 2459, 2451, 2461, 2465, 2467, 2471, 2473, 922 2469, 2472, 2474, 2475, 2477, 2482, 2478, 2485, 2487, 2488, 923 2489, 2490, 2492, 2494, 2499, 2500, 6547, 2507, 2506, 2504, 924 2509, 2510, 2512, 2522, 2513, 2532, 2515, 2523, 2516, 2535, 925 2538, 2540, 2524, 2548, 2544, 2549, 2541, 2558, 2555, 2559, 926 927 2562, 2556, 2565, 2567, 2568, 2569, 2571, 2573, 2574, 2575, 928 2576, 2584, 2591, 2581, 2592, 2590, 2595, 2583, 2601, 2614, 929 2598, 6547, 2603, 2605, 2613, 2615, 2622, 2617, 2618, 2623, 930 2619, 2625, 2627, 2629, 2630, 2638, 2635, 2637, 2639, 2642, 931 2641, 2643, 2649, 2650, 2651, 2654, 2658, 2660, 2662, 2663, 932 6547, 2664, 2666, 2669, 2670, 2673, 2674, 2678, 2680, 2682, 933 2683, 2684, 2686, 2689, 2690, 2691, 2692, 2698, 2699, 2695, 934 6547, 2700, 2702, 2710, 2706, 2714, 2708, 2718, 2721, 2722, 935 2725, 2728, 2712, 2729, 2731, 2732, 6547, 2740, 2742, 2739, 936 2743, 2741, 2746, 2747, 2749, 2751, 6547, 2752, 2753, 2754, 937 938 2761, 2762, 2757, 6547, 2766, 2764, 2759, 2768, 2769, 2772, 939 2774, 2775, 2770, 2780, 2782, 2789, 2796, 2783, 2793, 6547, 940 2785, 2803, 2791, 2799, 2807, 2787, 2810, 2811, 2812, 2813, 941 2814, 2818, 6547, 2827, 2819, 2824, 2834, 2830, 2831, 2836, 942 2837, 2838, 2840, 2839, 2841, 2844, 6547, 2847, 2845, 2848, 943 2850, 2852, 2853, 2855, 2868, 2860, 2865, 2867, 2870, 2873, 944 2875, 2877, 2869, 2878, 2879, 2880, 2886, 2890, 2891, 2892, 945 2895, 2899, 2904, 2901, 2903, 2907, 2906, 2908, 2909, 2916, 946 2917, 2924, 2919, 2925, 6547, 2928, 2930, 2923, 2921, 2931, 947 2933, 2935, 2937, 2940, 2936, 2938, 2948, 2945, 2942, 2955, 948 949 2958, 2951, 2962, 2960, 2964, 2965, 2967, 2966, 2968, 2969, 950 2976, 2973, 2975, 2986, 2977, 2984, 2995, 2981, 2991, 2992, 951 2993, 2994, 2982, 2998, 3004, 2999, 2997, 3006, 3007, 3015, 952 3018, 3021, 3020, 3009, 3023, 3027, 3028, 6547, 3031, 3033, 953 3029, 3035, 3036, 3042, 3043, 3045, 3046, 3037, 3051, 3053, 954 3054, 3059, 3060, 3062, 3063, 3070, 3066, 6547, 3067, 6547, 955 3068, 3069, 3072, 3081, 3076, 6547, 3087, 6547, 3077, 3091, 956 3082, 3084, 6547, 3092, 3088, 3093, 3103, 3094, 3097, 3101, 957 3105, 3099, 3106, 3112, 3111, 3115, 3114, 3116, 3122, 3117, 958 3119, 3127, 3125, 3134, 3124, 3126, 3141, 3135, 3138, 3143, 959 960 3144, 3145, 6547, 3152, 3148, 3153, 3154, 3155, 3156, 3158, 961 3159, 3161, 3162, 3165, 3173, 3167, 3179, 3169, 3178, 3181, 962 3193, 3177, 3194, 6547, 3190, 3192, 3195, 3196, 6547, 3198, 963 3199, 3200, 3205, 3207, 3208, 3209, 3210, 3211, 3215, 3216, 964 3217, 3229, 3225, 3222, 3231, 6547, 3230, 3236, 3218, 3242, 965 3249, 3244, 3246, 3251, 3252, 3254, 3263, 3259, 3258, 3260, 966 3261, 3262, 3265, 3272, 3273, 3269, 3276, 3275, 3279, 3286, 967 3283, 3277, 3281, 3287, 3289, 3290, 3291, 3292, 3293, 3296, 968 3297, 3294, 6547, 3302, 3308, 3306, 3315, 3311, 3312, 3316, 969 3321, 3317, 6547, 3323, 3324, 3325, 3327, 3332, 3326, 3329, 970 971 3334, 3337, 3340, 3342, 3345, 3347, 3346, 6547, 3348, 6547, 972 3350, 3351, 3361, 3365, 3366, 3353, 3367, 3373, 3369, 3374, 973 3376, 3379, 3377, 3383, 3380, 3385, 3386, 3388, 3400, 3391, 974 3387, 3392, 3401, 3402, 3406, 3409, 3410, 3411, 6547, 6547, 975 3412, 3413, 3417, 3414, 3420, 3421, 3424, 3432, 3428, 3427, 976 3434, 3435, 3448, 6547, 3436, 3443, 3438, 3446, 3462, 3449, 977 3464, 3465, 3452, 3440, 3472, 3468, 6547, 3461, 3469, 3476, 978 3471, 3477, 3479, 6547, 3482, 6547, 3475, 3478, 3485, 3487, 979 3488, 3489, 3491, 3492, 3499, 3509, 3510, 3495, 3512, 3507, 980 3500, 3513, 3515, 3516, 3523, 3519, 3521, 3522, 6547, 3525, 981 982 3526, 3530, 3528, 3531, 3538, 3535, 3539, 6547, 3542, 3545, 983 3548, 3549, 3551, 3550, 3553, 3556, 3557, 3555, 3559, 6547, 984 3558, 3561, 3572, 3573, 3565, 3574, 3576, 3579, 3587, 6547, 985 3584, 3588, 3596, 3592, 3593, 3598, 3599, 3594, 3595, 3601, 986 3603, 3604, 3606, 3607, 3608, 3610, 3613, 3615, 3612, 3622, 987 3623, 3626, 3630, 3639, 3631, 6547, 3635, 3636, 3640, 3638, 988 3642, 3643, 3645, 3648, 3650, 3651, 3661, 3662, 3653, 3664, 989 3666, 3668, 3673, 3675, 6547, 3676, 3669, 3683, 3679, 3681, 990 3689, 3680, 3686, 3693, 3682, 3690, 3694, 3695, 3698, 3707, 991 3702, 3705, 3706, 3708, 3718, 3709, 6547, 3723, 3713, 3719, 992 993 3730, 3720, 3726, 3739, 3735, 3736, 3737, 3743, 3738, 3745, 994 3740, 3747, 3748, 3751, 3752, 6547, 6547, 3754, 3755, 3757, 995 6547, 3759, 3761, 3771, 3763, 3767, 3770, 3774, 3775, 3773, 996 3776, 3778, 3779, 6547, 3786, 3789, 3787, 3790, 3798, 3794, 997 6547, 3793, 3806, 3802, 3803, 3805, 3809, 3811, 3810, 3813, 998 3815, 3817, 3818, 3826, 3827, 3824, 3823, 3828, 6547, 3825, 999 3831, 3834, 3836, 3837, 3840, 6547, 3841, 3842, 3849, 3851, 1000 3852, 3859, 3862, 3854, 3864, 3847, 3867, 3869, 3871, 3872, 1001 3873, 3880, 3875, 3877, 3879, 3883, 3885, 6547, 3886, 3887, 1002 3891, 3897, 6547, 3900, 3907, 3908, 6547, 3910, 3894, 3909, 1003 1004 3905, 3918, 6547, 3913, 3915, 3916, 3921, 3929, 3922, 3930, 1005 3926, 3927, 6547, 3933, 3932, 3935, 6547, 3934, 3941, 3948, 1006 3950, 3936, 3958, 3953, 3938, 3954, 3955, 6547, 3957, 6547, 1007 3963, 3961, 3967, 6547, 3965, 3969, 3970, 3972, 3974, 3979, 1008 3980, 3986, 3988, 3976, 3982, 3990, 3978, 3994, 3995, 3999, 1009 3992, 4002, 4001, 4003, 6547, 4004, 4006, 4009, 4007, 4012, 1010 4014, 4020, 4015, 4021, 4022, 6547, 6547, 4029, 6547, 4030, 1011 4025, 4031, 6547, 4034, 4037, 4044, 4039, 4042, 4046, 4053, 1012 4050, 6547, 4055, 4059, 6547, 4040, 4061, 4068, 4057, 4065, 1013 4066, 4069, 4071, 4072, 4073, 4076, 4074, 4078, 4075, 4077, 1014 1015 4091, 6547, 4079, 4081, 4082, 4084, 4095, 4096, 4100, 4102, 1016 4098, 6547, 4106, 4112, 4105, 4115, 4117, 6547, 4119, 6547, 1017 4108, 4121, 4122, 4125, 4129, 6547, 4131, 4132, 4136, 4137, 1018 4138, 4139, 4140, 4142, 4144, 4149, 4156, 4152, 4151, 4153, 1019 4160, 4158, 6547, 4155, 4161, 4168, 4170, 4172, 4173, 4182, 1020 4178, 4177, 4180, 4181, 4185, 4188, 4190, 4194, 4192, 4199, 1021 4196, 6547, 4203, 4205, 4202, 4217, 4206, 4210, 4208, 6547, 1022 4209, 4222, 4224, 6547, 4213, 4225, 4228, 4231, 4232, 4233, 1023 4236, 4234, 4238, 6547, 4235, 4242, 4239, 4241, 4244, 4255, 1024 6547, 6547, 4256, 6547, 4257, 4243, 4258, 4260, 4240, 4261, 1025 1026 4268, 4271, 4277, 4269, 4279, 4281, 4272, 4274, 4290, 4293, 1027 4297, 4292, 4294, 4298, 6547, 6547, 4300, 4304, 4301, 4307, 1028 4308, 4303, 4311, 4320, 4312, 4321, 4324, 4326, 4333, 6547, 1029 4328, 4316, 4334, 4325, 6547, 4335, 4337, 4339, 4340, 4341, 1030 4343, 4347, 4344, 4348, 4349, 4351, 4352, 4354, 4365, 4357, 1031 4358, 4366, 4367, 4368, 4359, 4374, 4380, 6547, 4377, 4375, 1032 4381, 4382, 4384, 4387, 4388, 4389, 4390, 6547, 4395, 6547, 1033 4391, 4393, 4396, 4397, 4413, 4398, 4414, 4415, 4416, 4418, 1034 4419, 4422, 4423, 4427, 4424, 4429, 4432, 4434, 4436, 4438, 1035 4440, 6547, 4444, 4441, 4447, 4448, 4451, 4453, 4454, 4456, 1036 1037 4457, 4459, 4462, 4463, 4465, 4470, 4466, 4472, 4471, 4474, 1038 6547, 4478, 4487, 4476, 4489, 4479, 4484, 4491, 4498, 4501, 1039 4492, 4502, 4503, 6547, 4504, 4496, 4507, 6547, 4508, 4509, 1040 4510, 4512, 4521, 4518, 4522, 4523, 4524, 6547, 4530, 4513, 1041 4534, 4526, 4531, 4535, 4536, 4542, 4545, 4544, 4547, 6547, 1042 4557, 4548, 4556, 4558, 4552, 4555, 4559, 4564, 4566, 6547, 1043 4570, 4571, 4572, 4579, 4574, 4584, 4581, 4583, 4582, 4585, 1044 4590, 4591, 4594, 4596, 4597, 4599, 4608, 4610, 4611, 6547, 1045 4589, 6547, 4612, 4616, 4620, 4618, 4623, 4622, 6547, 4624, 1046 4625, 4630, 4631, 4626, 6547, 4633, 4632, 4634, 4638, 6547, 1047 1048 4636, 4647, 4637, 4643, 4654, 4658, 6547, 4661, 4662, 4651, 1049 4669, 4670, 4666, 4668, 4671, 4672, 4674, 4676, 4677, 4678, 1050 4687, 4680, 4683, 6547, 4689, 4692, 4698, 4699, 4682, 4700, 1051 4701, 4702, 4708, 4703, 6547, 4705, 4711, 4712, 4713, 4714, 1052 4715, 4717, 4725, 4720, 4723, 4724, 4728, 4729, 4730, 6547, 1053 4733, 4736, 4737, 4744, 4740, 4753, 6547, 4749, 6547, 4746, 1054 4756, 4759, 4739, 4763, 6547, 6547, 4750, 4767, 4766, 4769, 1055 4770, 6547, 6547, 4772, 6547, 4773, 6547, 4774, 4776, 6547, 1056 6547, 4775, 4777, 4781, 4782, 4784, 6547, 4790, 6547, 4799, 1057 4794, 4785, 4796, 4797, 6547, 4798, 4804, 4800, 4808, 4806, 1058 1059 6547, 4810, 4815, 4811, 4813, 6547, 4822, 4823, 4814, 4816, 1060 6547, 4824, 4831, 4827, 4835, 4836, 4837, 4838, 4841, 4843, 1061 4839, 4844, 4846, 4847, 4854, 4861, 4863, 4865, 4869, 4858, 1062 4856, 4871, 4872, 4877, 4875, 4879, 4880, 4881, 4883, 4884, 1063 4886, 4889, 4890, 4892, 4895, 4893, 4894, 4906, 4896, 4898, 1064 4908, 4910, 4899, 4909, 4913, 4912, 4917, 4915, 4920, 4923, 1065 4922, 4924, 6547, 4928, 4930, 4933, 4935, 4934, 4940, 4942, 1066 4944, 4950, 4953, 6547, 4957, 6547, 4959, 4951, 4955, 4961, 1067 4962, 6547, 4963, 4964, 4965, 4968, 4967, 4970, 4848, 4971, 1068 4974, 4975, 4972, 6547, 4979, 4981, 4984, 4985, 4997, 6547, 1069 1070 4989, 5000, 4986, 5001, 5002, 5003, 5005, 5007, 5008, 5010, 1071 5012, 5014, 5015, 5016, 5020, 5022, 5028, 5036, 5031, 5017, 1072 5033, 5037, 5038, 5039, 5040, 5041, 5042, 5048, 5053, 5057, 1073 6547, 5045, 6547, 5054, 5050, 5058, 5061, 5062, 5065, 5068, 1074 6547, 6547, 5066, 5071, 5073, 5075, 5076, 5078, 5080, 5082, 1075 5079, 6547, 5084, 5088, 5096, 5089, 6547, 5093, 5098, 5100, 1076 5104, 6547, 5101, 5105, 5106, 5112, 5107, 5116, 5117, 5119, 1077 5109, 5121, 5123, 5130, 6547, 6547, 6547, 6547, 5131, 5124, 1078 5135, 5127, 5136, 5138, 5139, 5142, 5137, 6547, 5145, 6547, 1079 6547, 5150, 5151, 5153, 5154, 5157, 5158, 5160, 5162, 6547, 1080 1081 5161, 5163, 5166, 5164, 5173, 5175, 5181, 5178, 5182, 5183, 1082 5184, 5192, 5188, 5189, 5191, 5194, 5196, 5198, 6547, 6547, 1083 5200, 5204, 5205, 5215, 5207, 5211, 5210, 5223, 5218, 5220, 1084 5219, 5221, 5226, 5227, 5235, 5237, 5233, 5230, 6547, 5232, 1085 5240, 5241, 6547, 5243, 6547, 5246, 5247, 5249, 5250, 5253, 1086 5256, 5257, 5259, 6547, 6547, 5254, 5266, 5264, 6547, 6547, 1087 5261, 5269, 5271, 5274, 5275, 5276, 5277, 5278, 5284, 5279, 1088 6547, 5281, 6547, 5285, 5287, 5300, 5288, 5303, 5307, 5308, 1089 5310, 5304, 5306, 6547, 5314, 5315, 6547, 5322, 5317, 5321, 1090 5318, 5319, 6547, 5326, 5324, 5330, 5336, 6547, 5338, 5339, 1091 1092 5340, 6547, 5347, 6547, 5331, 5344, 5341, 5356, 5348, 6547, 1093 5352, 5357, 6547, 5362, 5364, 5365, 5354, 6547, 5359, 6547, 1094 5366, 5370, 5373, 5376, 5378, 5380, 5371, 5381, 5382, 5389, 1095 5388, 5390, 6547, 6547, 135, 5398, 5385, 5391, 5395, 5400, 1096 5407, 5402, 5405, 5404, 6547, 6547, 5412, 6547, 5410, 5413, 1097 6547, 5414, 5419, 5420, 5423, 5424, 5425, 5426, 5428, 5431, 1098 5433, 5434, 5435, 5432, 5436, 5454, 5456, 5438, 5459, 5460, 1099 5462, 5464, 5466, 5452, 5469, 5470, 5471, 5472, 5473, 5475, 1100 5476, 5478, 5479, 6547, 5482, 5484, 5486, 5487, 6547, 5494, 1101 5488, 5501, 5491, 6547, 5503, 5504, 5506, 5507, 6547, 5508, 1102 1103 5510, 5514, 5511, 5512, 5517, 5519, 5530, 5522, 5523, 5521, 1104 6547, 6547, 6547, 5533, 5537, 6547, 5540, 5527, 5542, 5543, 1105 6547, 5545, 5546, 5547, 6547, 6547, 5548, 5549, 5550, 5557, 1106 6547, 5552, 6547, 5553, 6547, 5560, 5563, 5571, 5566, 6547, 1107 5576, 5578, 6547, 5584, 5586, 5588, 5580, 5577, 5590, 5591, 1108 6547, 5562, 5593, 5594, 5601, 5592, 5595, 5602, 5603, 5604, 1109 5611, 5606, 5613, 6547, 5614, 5615, 5616, 5624, 5617, 5554, 1110 5619, 6547, 5626, 6547, 5628, 6547, 5629, 5630, 5633, 5632, 1111 5635, 5638, 5639, 5640, 5648, 5644, 5650, 5652, 5655, 5656, 1112 6547, 6547, 5659, 5661, 6547, 5662, 6547, 5664, 6547, 5665, 1113 1114 5666, 5669, 5667, 6547, 5671, 5673, 5677, 5680, 5676, 5679, 1115 6547, 5687, 5689, 5690, 5692, 6547, 6547, 5684, 5700, 5696, 1116 6547, 5695, 5706, 5708, 5702, 5711, 5712, 5715, 5713, 5720, 1117 5697, 5719, 5718, 5726, 5729, 5727, 6547, 6547, 6547, 5734, 1118 5721, 5742, 5740, 5744, 5743, 5735, 6547, 5745, 5749, 5751, 1119 5752, 5760, 5755, 5758, 6547, 5762, 5759, 5761, 5763, 5765, 1120 5766, 5767, 5769, 6547, 5780, 5782, 5770, 5784, 5787, 5789, 1121 5791, 5794, 5795, 5796, 5803, 5799, 6547, 5801, 6547, 6547, 1122 5802, 6547, 5805, 5806, 5807, 5809, 6547, 5812, 5813, 5814, 1123 5816, 5815, 5817, 5819, 5824, 6547, 5831, 5820, 5832, 5836, 1124 1125 6547, 6547, 5838, 6547, 5843, 5844, 5834, 5852, 5845, 5847, 1126 5854, 5856, 6547, 5850, 5858, 5859, 5860, 5862, 6547, 5863, 1127 5865, 5866, 5867, 6547, 5873, 5869, 5875, 5874, 5876, 6547, 1128 5877, 5879, 5889, 5896, 6547, 5880, 5894, 5890, 6547, 6547, 1129 5905, 5907, 5898, 6547, 6547, 6547, 5909, 5910, 5911, 5913, 1130 6547, 5917, 5921, 5925, 5929, 5920, 6547, 5928, 5931, 5935, 1131 5914, 5936, 6547, 6547, 5937, 5938, 5939, 5942, 6547, 6547, 1132 5943, 5945, 5947, 5946, 5948, 6547, 5949, 5953, 5959, 5965, 1133 5970, 5956, 5961, 5972, 5979, 5980, 5975, 5976, 5977, 5982, 1134 5983, 5985, 5990, 5992, 5993, 5995, 5997, 6001, 6002, 6547, 1135 1136 6547, 6006, 6547, 6009, 6003, 6547, 6547, 6011, 6014, 6018, 1137 6020, 6022, 6024, 6026, 6028, 6015, 6547, 6029, 6031, 6033, 1138 6032, 6034, 6547, 6036, 6040, 6035, 6043, 6037, 6045, 6047, 1139 6052, 6547, 6547, 6048, 6057, 6053, 6058, 6063, 6547, 6061, 1140 6071, 6068, 6067, 6069, 6073, 6070, 6547, 6074, 6075, 6547, 1141 6547, 6083, 6077, 6547, 6547, 6076, 6547, 6547, 6547, 6547, 1142 6547, 6547, 6547, 6547, 6085, 6093, 6547, 6094, 6098, 6100, 1143 6104, 6547, 6078, 6105, 6106, 6089, 6108, 6547, 6095, 6112, 1144 6111, 5292, 6113, 6119, 6117, 6115, 6121, 6124, 6125, 6126, 1145 6127, 6131, 6132, 6133, 6142, 6145, 6129, 6146, 6547, 6547, 1146 1147 6547, 6138, 6135, 6157, 6153, 6159, 6160, 6164, 6166, 6148, 1148 6168, 6169, 6170, 6171, 6173, 6174, 6183, 6178, 6179, 6180, 1149 6182, 6184, 6187, 6547, 6194, 6190, 6195, 6197, 6547, 6200, 1150 6547, 6199, 6547, 6547, 6202, 6206, 6203, 6208, 6216, 6218, 1151 6209, 6213, 6219, 6220, 6222, 6547, 6229, 6547, 6547, 6224, 1152 6230, 6547, 6232, 6231, 6547, 6233, 6234, 6236, 6241, 6243, 1153 6240, 6237, 6244, 6248, 6547, 6547, 6251, 6252, 6257, 6261, 1154 6258, 6268, 6264, 6267, 6269, 6273, 6266, 6281, 6547, 6280, 1155 6277, 6284, 6547, 6286, 6287, 6288, 6289, 6291, 6298, 6293, 1156 6294, 6547, 6296, 6547, 6300, 6302, 6304, 6301, 6303, 6305, 1157 1158 6315, 6319, 6313, 6547, 6317, 6327, 6321, 6329, 6331, 6333, 1159 6334, 6323, 6336, 6339, 6345, 6349, 6346, 6350, 6337, 6354, 1160 6351, 6547, 6361, 6352, 6547, 6358, 6362, 6355, 6364, 6365, 1161 6547, 6369, 6372, 6373, 6375, 6378, 6379, 6547, 6381, 6385, 1162 6382, 6547, 6388, 6547, 6547, 6390, 6387, 6394, 6397, 6399, 1163 6547, 6547, 6547, 6427, 6434, 6441, 6448, 6455, 6462, 6469, 1164 88, 6476, 6483, 6490, 6497, 6504, 6511, 6518, 6525, 6532, 1165 6539 1166 } ; 1167 1168 static yyconst flex_int16_t yy_def[3372] = 1169 { 0, 1170 3353, 1, 3354, 3354, 3355, 3355, 3356, 3356, 3357, 3357, 1171 3358, 3358, 3359, 3359, 3360, 3360, 3353, 3361, 3353, 3353, 1172 3353, 3353, 3362, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1173 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1174 3361, 3361, 3361, 3361, 3361, 3361, 3363, 3353, 3353, 3353, 1175 3363, 3364, 3353, 3353, 3353, 3364, 3365, 3353, 3353, 3353, 1176 3353, 3365, 3366, 3353, 3353, 3353, 3366, 3367, 3353, 3368, 1177 3353, 3367, 3367, 3369, 3353, 3353, 3353, 3353, 3369, 3370, 1178 3353, 3353, 3353, 3370, 3361, 3361, 3353, 3371, 3362, 3371, 1179 3362, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1180 1181 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1182 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1183 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1184 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1185 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1186 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3363, 1187 3363, 3364, 3364, 3365, 3365, 3353, 3366, 3366, 3367, 3367, 1188 3368, 3368, 3367, 3369, 3369, 3353, 3370, 3370, 3361, 3361, 1189 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1190 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1191 1192 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1193 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1194 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1195 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1196 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1197 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1198 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1199 3361, 3367, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1200 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1201 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1202 1203 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1204 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1205 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1206 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1207 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1208 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 1209 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1210 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 1211 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3367, 3361, 3361, 1212 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1213 1214 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1215 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1216 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1217 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1218 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1219 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1220 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3353, 3361, 1221 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 1222 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1223 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1224 1225 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 1226 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1227 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1228 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3367, 1229 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1230 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1231 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1232 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1233 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1234 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1235 1236 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 1237 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1238 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1239 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1240 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1241 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1242 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1243 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1244 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1245 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1246 1247 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1248 3361, 3361, 3367, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1249 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 1250 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1251 3353, 3361, 3353, 3353, 3361, 3353, 3353, 3361, 3361, 3353, 1252 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1253 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1254 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1255 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1256 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1257 1258 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1259 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1260 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 1261 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1262 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 1263 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1264 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1265 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1266 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1267 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1268 1269 3367, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 1270 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1271 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1272 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1273 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1274 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1275 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 1276 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 1277 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1278 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3353, 3361, 3361, 1279 1280 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3353, 3361, 3361, 1281 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3353, 3361, 1282 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1283 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 1284 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 1285 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1286 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 1287 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1288 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1289 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3367, 3367, 3361, 1290 1291 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1292 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1293 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 1294 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1295 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 1296 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1297 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1298 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 1299 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1300 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1301 1302 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1303 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1304 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1305 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1306 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1307 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1308 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1309 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1310 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 1311 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3367, 3361, 3361, 1312 1313 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 1314 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 1315 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1316 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1317 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 1318 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1319 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1320 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1321 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 1322 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1323 1324 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1325 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1326 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1327 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 1328 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1329 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3353, 1330 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3353, 3361, 3361, 1331 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1332 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1333 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1334 1335 3361, 3361, 3353, 3361, 3367, 3361, 3361, 3361, 3361, 3361, 1336 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1337 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3353, 3361, 1338 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1339 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 1340 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1341 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1342 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1343 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1344 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1345 1346 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3353, 1347 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1348 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1349 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3353, 1350 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1351 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 1352 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 1353 3361, 3361, 3361, 3353, 3361, 3353, 3361, 3361, 3361, 3361, 1354 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1355 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 1356 1357 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3367, 3361, 1358 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 1359 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 1360 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1361 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1362 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 1363 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1364 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 1365 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1366 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 1367 1368 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1369 3361, 3361, 3361, 3361, 3361, 3353, 3353, 3361, 3361, 3361, 1370 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1371 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 1372 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1373 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 1374 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 1375 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1376 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 1377 3361, 3361, 3353, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 1378 1379 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1380 3367, 3361, 3353, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 1381 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3353, 1382 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 1383 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1384 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 1385 3361, 3361, 3361, 3361, 3361, 3353, 3353, 3361, 3353, 3361, 1386 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1387 3361, 3353, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 1388 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1389 1390 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1391 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3353, 1392 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 1393 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1394 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1395 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1396 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 1397 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 1398 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 1399 3353, 3353, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 1400 1401 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3367, 3361, 3361, 1402 3361, 3361, 3361, 3361, 3353, 3353, 3361, 3361, 3361, 3361, 1403 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 1404 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 1405 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1406 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 1407 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3353, 1408 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1409 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1410 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1411 1412 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1413 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1414 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3353, 3361, 3361, 1415 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 1416 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 1417 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 1418 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1419 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 1420 3361, 3353, 3361, 3361, 3361, 3361, 3367, 3361, 3353, 3361, 1421 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3353, 1422 1423 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 1424 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1425 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 1426 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 1427 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 1428 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3353, 3361, 1429 3361, 3361, 3361, 3361, 3353, 3353, 3361, 3361, 3361, 3361, 1430 3361, 3353, 3353, 3361, 3353, 3361, 3353, 3361, 3361, 3353, 1431 3353, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3353, 3361, 1432 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 1433 1434 3353, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 1435 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1436 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1437 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1438 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1439 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3367, 3361, 3361, 1440 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1441 3361, 3361, 3361, 3353, 3361, 3353, 3361, 3361, 3361, 3361, 1442 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1443 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3353, 1444 1445 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1446 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1447 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1448 3353, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1449 3353, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1450 3361, 3353, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 1451 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1452 3361, 3361, 3361, 3361, 3353, 3353, 3353, 3353, 3361, 3361, 1453 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3353, 1454 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 1455 1456 3361, 3361, 3361, 3361, 3361, 3361, 3367, 3361, 3361, 3361, 1457 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3353, 1458 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1459 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 1460 3361, 3361, 3353, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 1461 3361, 3361, 3361, 3353, 3353, 3361, 3361, 3361, 3353, 3353, 1462 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1463 3353, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1464 3361, 3361, 3361, 3353, 3361, 3361, 3353, 3361, 3361, 3361, 1465 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 1466 1467 3361, 3353, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3353, 1468 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3353, 3361, 3353, 1469 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1470 3361, 3361, 3353, 3353, 3367, 3361, 3361, 3361, 3361, 3361, 1471 3361, 3361, 3361, 3361, 3353, 3353, 3361, 3353, 3361, 3361, 1472 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1473 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1474 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1475 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3353, 3361, 1476 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3353, 3361, 1477 1478 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1479 3353, 3353, 3353, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 1480 3353, 3361, 3361, 3361, 3353, 3353, 3361, 3361, 3361, 3361, 1481 3353, 3361, 3353, 3361, 3353, 3361, 3361, 3361, 3361, 3353, 1482 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1483 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1484 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 1485 3361, 3353, 3361, 3353, 3361, 3353, 3361, 3361, 3361, 3361, 1486 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1487 3353, 3353, 3361, 3361, 3353, 3361, 3353, 3361, 3353, 3361, 1488 1489 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 1490 3353, 3361, 3361, 3361, 3361, 3353, 3353, 3361, 3361, 3361, 1491 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1492 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3353, 3353, 3361, 1493 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 1494 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 1495 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 1496 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3353, 3353, 1497 3361, 3353, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 1498 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 1499 1500 3353, 3353, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 1501 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 1502 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3353, 1503 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3353, 3353, 1504 3361, 3361, 3361, 3353, 3353, 3353, 3361, 3361, 3361, 3361, 1505 3353, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 1506 3361, 3361, 3353, 3353, 3361, 3361, 3361, 3361, 3353, 3353, 1507 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 1508 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1509 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 1510 1511 3353, 3361, 3353, 3361, 3361, 3353, 3353, 3361, 3361, 3361, 1512 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3361, 1513 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1514 3361, 3353, 3353, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 1515 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 3353, 1516 3353, 3361, 3361, 3353, 3353, 3361, 3353, 3353, 3353, 3353, 1517 3353, 3353, 3353, 3353, 3361, 3361, 3353, 3361, 3361, 3361, 1518 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 1519 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1520 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3353, 1521 1522 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1523 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1524 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3353, 3361, 1525 3353, 3361, 3353, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 1526 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3353, 3353, 3361, 1527 3361, 3353, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 1528 3361, 3361, 3361, 3361, 3353, 3353, 3361, 3361, 3361, 3361, 1529 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 1530 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1531 3361, 3353, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 1532 1533 3361, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 3361, 1534 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 3361, 1535 3361, 3353, 3361, 3361, 3353, 3361, 3361, 3361, 3361, 3361, 1536 3353, 3361, 3361, 3361, 3361, 3361, 3361, 3353, 3361, 3361, 1537 3361, 3353, 3361, 3353, 3353, 3361, 3361, 3361, 3361, 3361, 1538 3353, 3353, 0, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 1539 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 1540 3353 1541 } ; 1542 1543 static yyconst flex_int16_t yy_nxt[6588] = 1544 { 0, 1545 18, 19, 20, 21, 22, 23, 22, 18, 18, 18, 1546 18, 18, 22, 24, 25, 26, 27, 28, 29, 30, 1547 18, 31, 32, 33, 34, 35, 36, 37, 38, 39, 1548 40, 41, 42, 43, 44, 45, 18, 18, 18, 46, 1549 48, 49, 50, 48, 49, 50, 53, 54, 53, 54, 1550 55, 51, 55, 85, 51, 85, 85, 56, 85, 56, 1551 58, 59, 60, 61, 85, 22, 58, 59, 60, 61, 1552 86, 22, 62, 64, 65, 66, 86, 97, 62, 64, 1553 65, 66, 87, 86, 67, 119, 88, 108, 85, 86, 1554 67, 19, 20, 21, 69, 70, 71, 75, 76, 77, 1555 1556 78, 86, 22, 72, 121, 86, 120, 109, 86, 79, 1557 160, 160, 73, 19, 20, 21, 69, 70, 71, 75, 1558 76, 77, 78, 187, 22, 72, 81, 82, 83, 130, 1559 90, 79, 90, 90, 73, 90, 86, 84, 81, 82, 1560 83, 90, 91, 86, 86, 98, 92, 93, 170, 84, 1561 94, 159, 99, 86, 110, 95, 100, 162, 86, 101, 1562 162, 170, 86, 112, 96, 86, 167, 167, 111, 86, 1563 102, 113, 137, 115, 103, 173, 116, 104, 86, 105, 1564 106, 179, 114, 117, 170, 118, 86, 122, 86, 126, 1565 107, 86, 156, 127, 86, 123, 157, 184, 86, 138, 1566 1567 158, 124, 87, 139, 86, 125, 88, 128, 180, 129, 1568 86, 131, 86, 140, 141, 132, 142, 143, 86, 133, 1569 144, 86, 148, 86, 149, 134, 86, 145, 135, 86, 1570 152, 146, 147, 150, 86, 136, 177, 177, 183, 151, 1571 153, 181, 196, 189, 154, 155, 164, 86, 164, 164, 1572 90, 164, 90, 90, 169, 90, 169, 169, 174, 169, 1573 174, 174, 172, 174, 85, 86, 85, 85, 90, 85, 1574 90, 90, 289, 90, 86, 85, 86, 182, 86, 90, 1575 91, 185, 190, 188, 86, 86, 197, 86, 191, 86, 1576 192, 86, 86, 207, 186, 86, 86, 86, 86, 86, 1577 1578 178, 199, 193, 194, 86, 198, 86, 195, 86, 200, 1579 86, 201, 245, 209, 205, 202, 203, 206, 208, 86, 1580 210, 215, 211, 204, 86, 212, 86, 86, 86, 217, 1581 86, 218, 86, 220, 86, 86, 226, 221, 213, 214, 1582 86, 227, 225, 223, 86, 86, 216, 229, 224, 86, 1583 86, 219, 86, 222, 230, 232, 233, 228, 86, 86, 1584 86, 86, 231, 235, 86, 237, 86, 240, 234, 238, 1585 86, 86, 86, 86, 242, 86, 236, 370, 86, 86, 1586 86, 239, 86, 243, 241, 248, 251, 252, 86, 244, 1587 253, 247, 86, 86, 86, 254, 249, 246, 260, 257, 1588 1589 250, 261, 86, 86, 259, 263, 86, 86, 86, 86, 1590 258, 267, 255, 86, 264, 256, 86, 86, 262, 266, 1591 268, 270, 160, 160, 86, 162, 265, 269, 162, 273, 1592 164, 271, 164, 164, 337, 164, 167, 167, 169, 86, 1593 169, 169, 90, 169, 90, 90, 170, 90, 174, 272, 1594 174, 174, 274, 174, 172, 177, 177, 276, 86, 86, 1595 86, 86, 86, 86, 86, 86, 86, 275, 278, 86, 1596 281, 284, 280, 86, 277, 279, 86, 287, 286, 283, 1597 176, 290, 282, 86, 288, 285, 86, 291, 292, 86, 1598 293, 317, 86, 296, 86, 294, 86, 301, 297, 86, 1599 1600 86, 86, 86, 298, 86, 86, 304, 305, 308, 299, 1601 300, 302, 295, 86, 86, 86, 306, 310, 86, 303, 1602 311, 86, 86, 86, 86, 307, 86, 318, 86, 86, 1603 86, 319, 86, 325, 312, 313, 315, 309, 314, 316, 1604 86, 320, 86, 329, 321, 328, 322, 330, 327, 326, 1605 332, 86, 86, 86, 724, 334, 86, 338, 323, 331, 1606 324, 86, 335, 86, 86, 340, 86, 342, 86, 339, 1607 341, 86, 333, 86, 86, 86, 344, 336, 86, 86, 1608 86, 343, 86, 86, 346, 86, 348, 86, 345, 86, 1609 86, 86, 86, 351, 353, 86, 349, 358, 86, 347, 1610 1611 352, 354, 359, 86, 86, 350, 355, 86, 86, 360, 1612 357, 356, 362, 364, 86, 367, 361, 86, 86, 86, 1613 86, 86, 373, 369, 86, 86, 86, 86, 86, 363, 1614 374, 372, 365, 366, 376, 86, 86, 368, 377, 371, 1615 86, 378, 86, 379, 375, 380, 86, 381, 383, 86, 1616 86, 384, 170, 86, 86, 387, 86, 86, 386, 86, 1617 86, 86, 86, 394, 388, 390, 392, 395, 385, 86, 1618 86, 382, 86, 86, 398, 389, 86, 396, 86, 391, 1619 86, 397, 86, 393, 86, 399, 86, 404, 86, 405, 1620 409, 406, 400, 86, 403, 86, 86, 86, 402, 407, 1621 1622 401, 86, 408, 86, 411, 86, 412, 86, 86, 86, 1623 86, 415, 86, 86, 410, 419, 416, 86, 175, 417, 1624 421, 86, 418, 413, 414, 86, 86, 422, 423, 86, 1625 86, 420, 86, 424, 86, 86, 426, 427, 428, 429, 1626 86, 86, 86, 86, 86, 86, 86, 435, 432, 86, 1627 425, 86, 436, 86, 86, 434, 86, 438, 86, 441, 1628 431, 437, 433, 86, 430, 86, 443, 446, 86, 86, 1629 439, 447, 440, 86, 442, 86, 86, 445, 86, 86, 1630 457, 448, 86, 444, 86, 455, 86, 86, 86, 458, 1631 461, 459, 499, 449, 170, 462, 450, 456, 469, 86, 1632 1633 463, 451, 452, 453, 454, 466, 86, 460, 464, 465, 1634 467, 86, 86, 86, 86, 468, 86, 86, 86, 477, 1635 86, 86, 86, 479, 86, 475, 478, 476, 86, 472, 1636 470, 86, 480, 471, 473, 474, 86, 86, 86, 481, 1637 483, 482, 86, 487, 86, 168, 86, 86, 488, 86, 1638 489, 492, 86, 505, 493, 166, 484, 486, 485, 490, 1639 86, 86, 86, 86, 491, 86, 494, 495, 497, 86, 1640 498, 86, 500, 496, 86, 506, 507, 86, 86, 508, 1641 504, 86, 86, 86, 86, 501, 509, 86, 502, 546, 1642 503, 86, 510, 86, 520, 86, 511, 522, 519, 523, 1643 1644 86, 524, 86, 525, 512, 86, 513, 527, 514, 537, 1645 535, 536, 521, 170, 538, 86, 86, 86, 86, 526, 1646 86, 515, 539, 86, 516, 556, 517, 86, 518, 86, 1647 86, 528, 529, 542, 540, 86, 541, 165, 86, 543, 1648 545, 530, 544, 531, 532, 533, 86, 547, 534, 548, 1649 549, 86, 86, 86, 86, 558, 86, 551, 553, 86, 1650 550, 86, 86, 559, 86, 86, 86, 563, 555, 557, 1651 86, 554, 86, 86, 86, 552, 561, 566, 86, 560, 1652 562, 567, 568, 86, 86, 86, 565, 86, 86, 573, 1653 564, 86, 572, 86, 569, 574, 575, 86, 86, 570, 1654 1655 86, 571, 577, 86, 578, 86, 580, 581, 86, 584, 1656 594, 86, 582, 576, 86, 86, 86, 585, 603, 579, 1657 586, 86, 86, 595, 583, 86, 589, 596, 86, 597, 1658 599, 587, 86, 588, 590, 591, 86, 598, 592, 593, 1659 86, 86, 86, 86, 86, 602, 601, 604, 86, 606, 1660 608, 86, 86, 600, 86, 86, 611, 607, 612, 609, 1661 86, 86, 86, 605, 86, 610, 613, 86, 86, 86, 1662 618, 86, 616, 617, 86, 614, 86, 86, 619, 86, 1663 86, 86, 615, 620, 624, 86, 86, 627, 623, 625, 1664 86, 626, 86, 86, 621, 622, 86, 628, 86, 630, 1665 1666 86, 629, 86, 632, 634, 86, 86, 86, 86, 635, 1667 86, 637, 631, 86, 633, 86, 645, 647, 86, 86, 1668 639, 723, 86, 86, 86, 86, 636, 638, 640, 86, 1669 641, 642, 644, 646, 648, 643, 86, 86, 86, 649, 1670 652, 86, 655, 86, 650, 658, 86, 651, 86, 657, 1671 86, 86, 653, 86, 86, 86, 654, 86, 661, 664, 1672 86, 86, 86, 656, 660, 665, 667, 86, 86, 659, 1673 86, 86, 86, 86, 86, 86, 662, 666, 663, 681, 1674 86, 86, 86, 668, 670, 163, 684, 669, 86, 671, 1675 679, 682, 720, 698, 672, 680, 673, 683, 86, 86, 1676 1677 86, 86, 674, 86, 675, 685, 688, 676, 677, 686, 1678 692, 86, 691, 687, 678, 689, 86, 86, 690, 86, 1679 86, 693, 696, 86, 699, 86, 694, 86, 701, 86, 1680 86, 86, 86, 695, 86, 86, 86, 86, 86, 86, 1681 707, 86, 703, 697, 702, 708, 704, 711, 712, 170, 1682 700, 705, 710, 713, 714, 86, 706, 709, 86, 86, 1683 86, 86, 86, 86, 86, 727, 86, 715, 721, 726, 1684 86, 86, 86, 716, 725, 718, 722, 719, 717, 729, 1685 86, 86, 86, 86, 728, 86, 731, 86, 86, 86, 1686 735, 86, 730, 734, 740, 732, 86, 733, 736, 741, 1687 1688 86, 743, 86, 744, 86, 737, 745, 739, 738, 742, 1689 746, 86, 86, 747, 86, 748, 86, 749, 86, 86, 1690 86, 86, 750, 86, 86, 754, 86, 753, 86, 86, 1691 752, 757, 86, 86, 756, 86, 762, 751, 755, 86, 1692 758, 86, 86, 761, 86, 763, 86, 766, 86, 86, 1693 767, 760, 759, 765, 86, 86, 86, 86, 773, 86, 1694 770, 768, 764, 86, 86, 86, 86, 86, 774, 86, 1695 781, 86, 771, 775, 776, 769, 86, 772, 86, 777, 1696 86, 783, 778, 779, 780, 782, 86, 86, 788, 789, 1697 786, 784, 785, 787, 86, 86, 86, 86, 790, 86, 1698 1699 791, 86, 793, 86, 794, 86, 86, 86, 795, 86, 1700 86, 802, 86, 798, 800, 796, 86, 86, 86, 86, 1701 799, 86, 792, 797, 86, 803, 808, 810, 806, 86, 1702 801, 86, 86, 807, 805, 809, 804, 811, 812, 86, 1703 86, 86, 813, 86, 86, 86, 814, 819, 821, 815, 1704 817, 86, 86, 86, 86, 822, 820, 816, 86, 86, 1705 825, 86, 86, 818, 824, 826, 86, 86, 86, 86, 1706 832, 86, 829, 86, 827, 828, 86, 834, 835, 86, 1707 837, 86, 86, 823, 839, 86, 830, 831, 833, 838, 1708 841, 836, 86, 86, 86, 845, 86, 842, 843, 840, 1709 1710 846, 86, 86, 847, 86, 86, 849, 851, 844, 86, 1711 86, 86, 86, 850, 86, 857, 86, 848, 86, 86, 1712 858, 86, 86, 86, 86, 86, 86, 852, 853, 854, 1713 866, 855, 859, 860, 856, 86, 86, 861, 863, 86, 1714 865, 86, 862, 86, 86, 869, 86, 864, 871, 86, 1715 86, 86, 86, 867, 86, 868, 86, 880, 86, 878, 1716 870, 86, 86, 86, 872, 873, 881, 86, 874, 875, 1717 876, 877, 879, 86, 86, 882, 86, 86, 884, 886, 1718 86, 86, 883, 86, 86, 86, 86, 885, 890, 891, 1719 892, 893, 887, 889, 86, 86, 888, 86, 86, 894, 1720 1721 86, 86, 896, 895, 86, 170, 897, 902, 86, 899, 1722 901, 86, 898, 900, 86, 903, 86, 86, 86, 909, 1723 86, 86, 904, 905, 86, 910, 912, 86, 86, 86, 1724 914, 906, 907, 911, 913, 916, 86, 86, 908, 86, 1725 86, 86, 86, 918, 922, 86, 86, 915, 86, 919, 1726 86, 86, 86, 923, 86, 924, 917, 86, 86, 86, 1727 921, 86, 86, 942, 925, 920, 86, 937, 938, 935, 1728 940, 86, 927, 86, 936, 86, 926, 86, 161, 928, 1729 86, 939, 929, 86, 943, 965, 930, 941, 86, 931, 1730 86, 944, 86, 948, 949, 86, 932, 933, 946, 934, 1731 1732 86, 86, 947, 945, 86, 950, 951, 86, 952, 86, 1733 86, 953, 957, 959, 960, 86, 954, 86, 86, 962, 1734 86, 86, 955, 956, 86, 961, 964, 968, 969, 86, 1735 958, 86, 966, 970, 86, 963, 971, 86, 972, 86, 1736 86, 975, 86, 967, 974, 86, 973, 976, 977, 86, 1737 979, 86, 86, 86, 978, 980, 86, 86, 86, 86, 1738 86, 983, 86, 987, 981, 86, 86, 986, 86, 86, 1739 990, 86, 86, 996, 86, 982, 1007, 86, 984, 985, 1740 988, 994, 989, 992, 991, 86, 997, 86, 86, 1000, 1741 995, 998, 86, 999, 993, 86, 1001, 86, 86, 1003, 1742 1743 1004, 86, 86, 1002, 86, 86, 86, 1005, 1008, 86, 1744 86, 86, 1006, 86, 1009, 86, 1011, 86, 86, 86, 1745 1012, 1016, 86, 86, 1019, 86, 86, 1018, 1010, 1020, 1746 86, 86, 1017, 1013, 1014, 86, 1015, 86, 86, 1022, 1747 1023, 86, 86, 1025, 86, 1021, 86, 1027, 86, 86, 1748 1026, 1028, 86, 86, 1033, 86, 1029, 86, 1031, 1034, 1749 86, 1024, 86, 1035, 86, 1032, 1038, 86, 1036, 86, 1750 1044, 86, 1041, 1030, 1037, 86, 86, 1043, 86, 86, 1751 1042, 86, 86, 1046, 86, 1040, 86, 86, 1039, 86, 1752 86, 86, 86, 1057, 1054, 1052, 86, 1045, 86, 86, 1753 1754 1047, 1048, 1049, 86, 86, 1058, 1050, 1051, 86, 1055, 1755 1059, 1056, 1053, 86, 1062, 86, 1065, 86, 1061, 86, 1756 1064, 86, 1060, 86, 86, 86, 86, 1063, 86, 86, 1757 1067, 1074, 1069, 86, 1075, 1077, 86, 86, 86, 1066, 1758 86, 86, 86, 1068, 86, 1070, 1082, 1072, 1071, 1073, 1759 1076, 1080, 1078, 1079, 1081, 86, 86, 86, 86, 86, 1760 86, 1086, 1089, 1083, 86, 1088, 86, 1084, 86, 1090, 1761 86, 86, 1093, 1095, 86, 1085, 86, 1091, 86, 1087, 1762 86, 1098, 86, 1092, 86, 1097, 1099, 170, 1101, 86, 1763 1102, 1094, 86, 86, 1096, 86, 86, 1100, 86, 86, 1764 1765 1105, 86, 86, 86, 86, 1118, 86, 86, 86, 86, 1766 1119, 86, 1109, 1104, 1103, 1106, 1108, 1121, 86, 86, 1767 1278, 1110, 1107, 1120, 1111, 86, 1124, 86, 1112, 86, 1768 1113, 1123, 1122, 1125, 1114, 86, 1115, 86, 86, 1128, 1769 1126, 1116, 86, 1127, 1129, 86, 1117, 1130, 86, 86, 1770 86, 1131, 1132, 86, 86, 1135, 86, 1134, 1138, 86, 1771 86, 1137, 86, 86, 1133, 1136, 86, 1144, 1139, 1142, 1772 1145, 86, 1143, 1141, 1146, 86, 86, 1140, 1147, 86, 1773 86, 1148, 1149, 86, 86, 1150, 86, 86, 86, 86, 1774 1151, 86, 1161, 1152, 86, 1153, 1160, 1162, 86, 1164, 1775 1776 1154, 1163, 1155, 86, 86, 1167, 86, 86, 1156, 1165, 1777 1171, 1166, 86, 1157, 1158, 86, 86, 86, 86, 86, 1778 1159, 86, 1172, 1177, 86, 1168, 1169, 1173, 1170, 86, 1779 86, 1180, 86, 1178, 86, 1175, 1174, 86, 86, 1176, 1780 86, 1181, 1185, 86, 86, 1183, 86, 1184, 86, 1186, 1781 1179, 1182, 86, 86, 1191, 1188, 86, 86, 86, 86, 1782 86, 1189, 1187, 1194, 86, 1192, 86, 86, 86, 1190, 1783 178, 86, 86, 86, 86, 86, 1193, 1201, 1196, 1195, 1784 1198, 1199, 1200, 1203, 1202, 86, 1197, 86, 86, 86, 1785 1204, 86, 86, 86, 86, 1206, 86, 86, 1211, 1205, 1786 1787 86, 1212, 1208, 1214, 86, 1213, 1207, 1210, 1216, 1209, 1788 86, 1215, 1218, 1217, 86, 86, 86, 1221, 86, 86, 1789 86, 1223, 1222, 86, 1224, 86, 86, 86, 1219, 1225, 1790 86, 86, 1220, 1226, 1232, 86, 1234, 86, 1227, 86, 1791 86, 1228, 86, 1230, 1236, 1229, 1231, 86, 86, 86, 1792 86, 1238, 1235, 86, 86, 1233, 86, 86, 1240, 1241, 1793 86, 1237, 1244, 86, 86, 1243, 1242, 86, 1245, 86, 1794 1239, 1250, 1246, 1247, 86, 1249, 86, 86, 1251, 86, 1795 1248, 86, 86, 1252, 1254, 86, 1255, 86, 86, 86, 1796 86, 1261, 1259, 1262, 1253, 86, 86, 86, 86, 86, 1797 1798 1256, 1263, 86, 1260, 86, 1266, 1257, 1264, 1258, 1265, 1799 1269, 86, 86, 1267, 1271, 86, 86, 1270, 1268, 86, 1800 86, 86, 86, 86, 86, 86, 1276, 1277, 1272, 1273, 1801 1279, 86, 86, 86, 1283, 86, 1284, 86, 86, 1274, 1802 86, 1275, 86, 1286, 1281, 1287, 86, 86, 86, 1280, 1803 1285, 1291, 1282, 86, 86, 86, 1288, 86, 86, 86, 1804 1290, 1289, 170, 1293, 1297, 86, 86, 86, 86, 86, 1805 86, 1292, 86, 1302, 1304, 86, 1294, 86, 1296, 1301, 1806 1299, 1303, 1298, 1295, 1300, 1306, 1307, 86, 86, 86, 1807 1305, 86, 86, 1308, 1309, 86, 86, 1310, 86, 86, 1808 1809 86, 1311, 1312, 86, 1314, 86, 1316, 86, 1320, 86, 1810 1317, 86, 1313, 86, 86, 1315, 86, 86, 86, 86, 1811 1318, 86, 1324, 86, 1326, 1321, 1319, 1330, 1334, 1323, 1812 86, 1322, 1335, 1327, 86, 1328, 86, 1325, 1329, 86, 1813 1331, 1332, 1333, 86, 86, 86, 86, 1336, 86, 1337, 1814 86, 1340, 1338, 86, 1339, 86, 86, 86, 1343, 1347, 1815 86, 86, 1342, 86, 86, 86, 1348, 1341, 1345, 1344, 1816 1349, 86, 86, 86, 86, 1346, 1351, 1352, 86, 1354, 1817 86, 1353, 86, 1350, 86, 86, 86, 86, 86, 1355, 1818 86, 86, 1357, 1359, 1360, 86, 1364, 1356, 86, 1358, 1819 1820 86, 86, 86, 86, 1361, 86, 1363, 86, 1362, 1368, 1821 1365, 1366, 86, 86, 1376, 1371, 1369, 86, 1367, 86, 1822 86, 1370, 86, 86, 1372, 86, 86, 1374, 86, 86, 1823 1379, 1378, 1373, 1375, 1377, 86, 86, 86, 1383, 1384, 1824 1382, 1381, 1388, 1380, 1385, 86, 1398, 1386, 86, 1389, 1825 1387, 86, 1390, 86, 86, 1399, 1391, 86, 1400, 1392, 1826 1393, 86, 86, 1402, 1394, 1403, 1397, 1401, 86, 86, 1827 1395, 86, 86, 1404, 1396, 86, 1406, 1405, 86, 1408, 1828 86, 86, 86, 1409, 86, 1410, 86, 86, 86, 86, 1829 1407, 1418, 1415, 1413, 86, 176, 86, 86, 1419, 1420, 1830 1831 1412, 1411, 1416, 86, 86, 86, 1414, 1417, 86, 1421, 1832 1428, 86, 1422, 1427, 86, 1429, 86, 1423, 86, 1424, 1833 1433, 1425, 1432, 1426, 1430, 1431, 86, 86, 86, 1437, 1834 86, 86, 86, 1434, 1438, 86, 86, 1436, 86, 1439, 1835 86, 1441, 86, 86, 1435, 1447, 1442, 1443, 86, 1448, 1836 86, 86, 86, 1440, 86, 86, 86, 1446, 1449, 1444, 1837 1451, 1445, 86, 86, 86, 1453, 1450, 86, 1452, 1454, 1838 1458, 86, 1457, 86, 1460, 86, 86, 86, 1461, 86, 1839 1462, 1455, 86, 86, 1463, 1466, 86, 86, 1459, 1456, 1840 1468, 86, 1465, 86, 1469, 86, 86, 86, 1473, 86, 1841 1842 1470, 1464, 86, 86, 86, 86, 1475, 1467, 86, 175, 1843 1477, 86, 86, 86, 1479, 86, 1481, 1471, 1472, 86, 1844 1478, 86, 1474, 86, 1476, 86, 1480, 86, 1483, 1486, 1845 1482, 86, 1485, 1484, 86, 86, 1487, 1488, 86, 1490, 1846 1489, 86, 86, 1492, 86, 86, 1491, 1496, 1493, 1497, 1847 1499, 1494, 86, 86, 86, 86, 86, 1498, 1495, 86, 1848 86, 1503, 86, 1500, 86, 170, 86, 86, 1508, 1509, 1849 86, 1502, 86, 1511, 86, 86, 1510, 86, 1501, 86, 1850 1505, 86, 86, 86, 1504, 86, 1506, 86, 86, 1519, 1851 1507, 1512, 1514, 86, 1516, 86, 86, 1513, 86, 1517, 1852 1853 86, 1515, 86, 1520, 86, 1518, 86, 1523, 1524, 86, 1854 1528, 1526, 86, 1522, 1533, 1529, 86, 1527, 1521, 1525, 1855 86, 1531, 1530, 86, 86, 86, 86, 86, 1532, 1540, 1856 1537, 86, 86, 1538, 1542, 1539, 1543, 86, 1534, 1535, 1857 86, 1545, 1536, 86, 86, 1541, 1546, 86, 1544, 86, 1858 86, 86, 86, 86, 86, 1550, 1551, 86, 86, 1554, 1859 86, 86, 1547, 86, 1559, 86, 86, 1549, 86, 1560, 1860 1548, 1552, 1553, 86, 1556, 1563, 1557, 1555, 86, 1558, 1861 86, 86, 86, 86, 1561, 1564, 86, 1562, 86, 1571, 1862 86, 86, 86, 86, 1566, 1570, 1572, 1565, 1567, 86, 1863 1864 1575, 1568, 1574, 86, 86, 86, 1580, 1569, 86, 1579, 1865 1573, 1581, 86, 1577, 86, 1583, 86, 86, 1576, 86, 1866 86, 86, 86, 1588, 1589, 1578, 1584, 1587, 1582, 86, 1867 86, 1590, 86, 1591, 86, 1585, 86, 86, 86, 1592, 1868 1593, 86, 1586, 86, 86, 1595, 86, 1594, 86, 86, 1869 86, 86, 1596, 86, 1601, 86, 1597, 1600, 86, 1603, 1870 1598, 86, 1607, 1599, 86, 1609, 1604, 1608, 86, 1602, 1871 1610, 86, 1605, 86, 1606, 86, 1612, 86, 86, 86, 1872 86, 86, 86, 1620, 1611, 1616, 86, 1615, 86, 86, 1873 86, 1621, 1613, 1623, 86, 86, 1614, 86, 1617, 86, 1874 1875 1619, 1618, 1626, 1625, 86, 86, 86, 86, 86, 1624, 1876 86, 86, 86, 1627, 1622, 1635, 1632, 86, 1634, 86, 1877 86, 1631, 86, 1628, 1629, 1630, 1633, 1639, 86, 1636, 1878 1640, 86, 1638, 86, 86, 1643, 86, 1642, 1637, 1641, 1879 86, 86, 86, 1646, 86, 1644, 86, 1647, 86, 86, 1880 86, 1650, 1656, 1645, 1654, 86, 86, 1651, 86, 86, 1881 1648, 1655, 1649, 1658, 86, 1653, 86, 86, 1652, 1659, 1882 1660, 1661, 86, 86, 1657, 86, 86, 1666, 1667, 86, 1883 86, 86, 86, 86, 1664, 86, 1671, 1670, 1672, 86, 1884 86, 1663, 1662, 1675, 86, 86, 1665, 86, 1668, 1674, 1885 1886 86, 86, 1669, 1676, 86, 86, 86, 86, 1679, 1673, 1887 86, 1677, 86, 1678, 86, 1681, 86, 1682, 86, 86, 1888 1688, 1680, 1683, 1686, 86, 86, 1687, 86, 86, 86, 1889 86, 1684, 86, 1685, 1689, 86, 1694, 86, 86, 86, 1890 86, 1700, 1690, 1691, 1695, 1697, 1699, 86, 86, 1693, 1891 1696, 86, 1692, 1698, 86, 1702, 86, 86, 86, 1701, 1892 1705, 170, 1704, 1707, 1708, 86, 86, 86, 86, 86, 1893 1703, 86, 86, 1716, 86, 86, 1706, 1709, 86, 1717, 1894 86, 1711, 86, 1714, 1710, 1720, 86, 1712, 1713, 1721, 1895 86, 86, 86, 1724, 86, 1718, 1715, 1722, 1719, 1725, 1896 1897 1726, 1728, 1723, 86, 1730, 86, 86, 86, 86, 86, 1898 1727, 86, 86, 86, 1735, 1732, 1733, 1729, 86, 1736, 1899 86, 86, 86, 86, 86, 1741, 1740, 1731, 86, 86, 1900 86, 86, 1748, 170, 1737, 86, 1734, 1739, 86, 1738, 1901 1749, 1743, 86, 86, 86, 1745, 1742, 1750, 1746, 86, 1902 1744, 1757, 1752, 1758, 1753, 86, 1754, 86, 1755, 86, 1903 1747, 1756, 86, 1751, 86, 86, 1760, 86, 1761, 1759, 1904 1762, 86, 86, 86, 86, 86, 86, 1763, 86, 1769, 1905 1770, 1768, 86, 1772, 1764, 86, 86, 1771, 86, 86, 1906 86, 1765, 86, 1766, 86, 1767, 86, 1774, 1775, 86, 1907 1908 86, 1776, 86, 86, 86, 86, 86, 86, 1777, 86, 1909 86, 1773, 1786, 1785, 1778, 86, 1780, 1781, 1782, 86, 1910 1779, 86, 1791, 1783, 86, 86, 1787, 1788, 86, 86, 1911 86, 1784, 1790, 1789, 86, 1797, 86, 86, 86, 86, 1912 86, 1793, 86, 1799, 1792, 86, 1801, 86, 1795, 1794, 1913 86, 1796, 1800, 86, 1802, 86, 1803, 1798, 86, 86, 1914 86, 86, 1806, 86, 86, 1808, 86, 1815, 1805, 1809, 1915 1807, 1804, 1810, 1816, 86, 1811, 1812, 1817, 86, 86, 1916 86, 1813, 86, 1820, 1819, 1821, 86, 86, 1814, 86, 1917 86, 1818, 86, 86, 1824, 1822, 86, 1825, 86, 86, 1918 1919 86, 86, 1828, 1834, 86, 86, 1823, 1833, 1830, 1826, 1920 1832, 1831, 1827, 86, 86, 86, 1840, 1829, 1836, 86, 1921 1835, 1841, 86, 86, 86, 86, 86, 86, 1842, 1838, 1922 86, 1846, 1837, 86, 86, 1839, 1843, 86, 1850, 1849, 1923 86, 86, 1848, 1847, 1845, 86, 1854, 86, 86, 86, 1924 1844, 86, 1851, 86, 1852, 1858, 86, 1853, 1855, 86, 1925 1859, 86, 86, 1860, 1863, 86, 1857, 1869, 1856, 1864, 1926 1868, 1861, 1867, 1862, 86, 86, 1866, 86, 86, 1870, 1927 1865, 86, 86, 1874, 86, 86, 1878, 1871, 86, 86, 1928 86, 86, 86, 1876, 1872, 86, 1873, 1875, 86, 1877, 1929 1930 86, 86, 86, 1879, 86, 86, 1882, 1880, 86, 1883, 1931 1881, 1888, 86, 86, 1884, 1885, 1890, 1891, 1886, 1887, 1932 86, 1892, 86, 86, 1893, 86, 86, 1897, 86, 86, 1933 1899, 1895, 86, 1889, 86, 86, 86, 1903, 86, 86, 1934 1894, 86, 1898, 86, 86, 1896, 1906, 1905, 86, 1907, 1935 1901, 86, 86, 1902, 1900, 170, 1908, 1909, 86, 1904, 1936 1913, 86, 86, 86, 86, 1917, 86, 1911, 86, 86, 1937 86, 86, 86, 1912, 86, 1910, 1915, 1919, 86, 1924, 1938 1920, 1914, 1916, 1918, 1921, 86, 86, 86, 1928, 86, 1939 1922, 168, 86, 1927, 1923, 1929, 1926, 86, 1925, 1930, 1940 1941 86, 86, 1931, 1933, 1934, 86, 86, 86, 86, 86, 1942 1932, 86, 86, 1936, 86, 1937, 86, 86, 1935, 86, 1943 86, 86, 1942, 86, 1943, 86, 86, 1938, 86, 1944, 1944 1939, 1947, 1940, 1945, 1941, 86, 86, 1948, 1946, 86, 1945 1951, 1953, 1955, 86, 86, 1950, 1956, 1952, 86, 86, 1946 1949, 86, 86, 86, 1954, 86, 86, 1962, 86, 1965, 1947 1966, 86, 1967, 86, 86, 1957, 86, 1958, 1959, 1960, 1948 1963, 1961, 1964, 1969, 86, 86, 1970, 86, 1973, 86, 1949 1975, 86, 86, 1977, 1968, 1974, 86, 1971, 86, 86, 1950 1979, 1976, 86, 86, 86, 86, 86, 1981, 1972, 86, 1951 1952 1978, 1982, 86, 86, 1984, 1985, 86, 86, 86, 1989, 1953 1986, 86, 1988, 1983, 1991, 86, 1990, 1980, 86, 86, 1954 86, 86, 86, 166, 1987, 1999, 86, 1992, 1993, 1994, 1955 2001, 86, 86, 86, 1995, 2002, 86, 1997, 1996, 86, 1956 2003, 1998, 2000, 86, 2006, 2005, 2008, 2004, 86, 86, 1957 86, 86, 86, 86, 2007, 2012, 86, 2009, 86, 2014, 1958 86, 86, 2017, 2018, 86, 86, 2020, 86, 86, 2010, 1959 86, 2011, 86, 2015, 86, 2026, 86, 2013, 2025, 2022, 1960 86, 2023, 2016, 86, 86, 2019, 86, 86, 86, 86, 1961 2032, 86, 86, 2021, 2029, 2024, 2036, 2030, 2028, 86, 1962 1963 86, 2027, 86, 86, 2035, 2039, 86, 86, 2034, 2040, 1964 2038, 86, 2031, 2042, 2043, 86, 86, 2033, 86, 86, 1965 2037, 2044, 86, 86, 86, 2041, 86, 2045, 86, 2049, 1966 86, 86, 2052, 2053, 2054, 2048, 86, 86, 86, 86, 1967 86, 86, 2046, 2047, 86, 2057, 2050, 86, 2062, 86, 1968 86, 2056, 2061, 86, 86, 86, 2051, 2055, 2059, 2066, 1969 86, 2058, 86, 2067, 86, 86, 2060, 86, 2064, 2063, 1970 2068, 2070, 86, 2065, 2069, 86, 2074, 86, 2072, 2071, 1971 86, 2075, 86, 2073, 86, 86, 86, 2081, 86, 2078, 1972 86, 2084, 86, 86, 2076, 2083, 86, 2085, 86, 86, 1973 1974 86, 2077, 2086, 2082, 86, 2079, 2080, 86, 2087, 2091, 1975 86, 2088, 2092, 86, 2093, 2095, 2089, 2096, 86, 2094, 1976 86, 86, 86, 86, 2090, 2100, 86, 2098, 86, 86, 1977 2099, 86, 2102, 2097, 86, 86, 2105, 2107, 2101, 170, 1978 86, 2103, 86, 86, 2108, 86, 86, 86, 86, 86, 1979 2113, 86, 2109, 2112, 86, 2114, 2120, 2106, 2110, 2104, 1980 2115, 86, 2116, 86, 2111, 2118, 86, 86, 86, 2117, 1981 86, 86, 2119, 2121, 86, 2123, 86, 2122, 86, 2124, 1982 86, 2126, 86, 86, 2130, 86, 2125, 86, 2129, 86, 1983 2127, 86, 86, 86, 2128, 86, 2131, 2132, 2133, 86, 1984 1985 2135, 86, 2134, 86, 2137, 86, 2142, 86, 86, 2136, 1986 2139, 2140, 86, 2141, 86, 86, 86, 86, 2147, 86, 1987 86, 2138, 86, 2143, 2144, 86, 2152, 86, 86, 2148, 1988 2146, 2150, 2145, 86, 86, 86, 2153, 2149, 86, 2156, 1989 2151, 2158, 86, 86, 86, 2154, 2159, 86, 2157, 2155, 1990 86, 2164, 86, 86, 2160, 86, 2166, 86, 165, 86, 1991 2161, 2167, 2162, 86, 2163, 2168, 86, 2170, 86, 2165, 1992 86, 2169, 86, 2171, 86, 2174, 2172, 2175, 86, 86, 1993 2173, 86, 86, 2178, 86, 86, 86, 86, 86, 86, 1994 86, 86, 86, 2179, 86, 86, 2192, 86, 2181, 2177, 1995 1996 2176, 2182, 2183, 2184, 86, 2186, 2180, 2191, 86, 86, 1997 2187, 86, 2189, 86, 2185, 86, 2195, 2190, 86, 86, 1998 2196, 86, 163, 2188, 2198, 86, 2193, 2199, 86, 2194, 1999 86, 2197, 86, 2201, 86, 86, 2200, 2202, 86, 2204, 2000 2207, 2203, 86, 2205, 86, 86, 2209, 2206, 2211, 86, 2001 86, 86, 86, 86, 2214, 86, 2213, 86, 2215, 2210, 2002 2216, 2208, 86, 2219, 86, 86, 86, 2223, 86, 86, 2003 2220, 86, 2224, 86, 86, 2217, 2212, 2221, 2222, 2225, 2004 2228, 86, 2218, 86, 2229, 86, 86, 2226, 2227, 2232, 2005 86, 86, 2234, 86, 86, 86, 2233, 2238, 86, 161, 2006 2007 2230, 86, 2236, 86, 2240, 86, 2231, 86, 2241, 86, 2008 2237, 2235, 86, 2239, 2242, 86, 86, 2243, 86, 86, 2009 2247, 86, 86, 86, 2249, 2245, 86, 2244, 2246, 2250, 2010 86, 2251, 2252, 2253, 2254, 86, 2248, 86, 86, 2257, 2011 2255, 86, 2256, 2260, 86, 86, 86, 86, 86, 86, 2012 2259, 86, 86, 86, 86, 86, 86, 86, 2258, 2269, 2013 2266, 2264, 2270, 2261, 2262, 2263, 2265, 2267, 86, 86, 2014 86, 86, 2268, 86, 86, 2272, 2274, 2271, 2278, 2275, 2015 2280, 86, 86, 2279, 86, 86, 2276, 170, 2273, 2282, 2016 86, 2277, 86, 2281, 86, 86, 2284, 2288, 2286, 2285, 2017 2018 2290, 2283, 2289, 86, 2291, 86, 86, 86, 2292, 2287, 2019 86, 86, 2295, 86, 86, 2293, 86, 86, 2296, 2300, 2020 86, 86, 2301, 2299, 86, 86, 3353, 2304, 2302, 86, 2021 2305, 2294, 2297, 86, 86, 2306, 2307, 86, 86, 86, 2022 2309, 86, 2303, 2298, 2308, 2310, 86, 86, 86, 2311, 2023 86, 2312, 86, 86, 86, 2315, 86, 86, 2313, 2318, 2024 86, 86, 86, 2324, 86, 86, 2322, 86, 2317, 2325, 2025 86, 86, 86, 2314, 2319, 2316, 2320, 2321, 86, 86, 2026 86, 86, 2326, 2327, 2323, 2333, 2332, 86, 86, 2329, 2027 86, 2330, 2335, 86, 86, 86, 2328, 86, 2336, 2331, 2028 2029 86, 86, 86, 86, 86, 2334, 86, 2337, 86, 86, 2030 86, 86, 2349, 2338, 2343, 2348, 2351, 2346, 2339, 2341, 2031 2347, 2340, 2342, 2345, 2344, 2350, 86, 86, 86, 86, 2032 2352, 86, 86, 2356, 2357, 86, 86, 86, 2358, 2359, 2033 86, 2353, 86, 2354, 2355, 86, 2362, 86, 2365, 86, 2034 2366, 86, 2360, 86, 86, 2361, 2363, 86, 2367, 2364, 2035 86, 86, 2368, 2372, 86, 2373, 86, 86, 2375, 86, 2036 86, 2377, 86, 2371, 2369, 86, 86, 2380, 86, 86, 2037 2370, 2379, 2381, 86, 86, 86, 2374, 86, 2376, 86, 2038 2378, 86, 86, 2382, 2383, 3353, 2386, 86, 2384, 2387, 2039 2040 86, 2389, 86, 2391, 86, 86, 2385, 2392, 2388, 86, 2041 2390, 86, 2393, 2395, 86, 86, 86, 86, 2398, 2401, 2042 86, 86, 86, 86, 2396, 86, 86, 2394, 2400, 2405, 2043 2397, 86, 2399, 2406, 86, 86, 86, 86, 2404, 86, 2044 2408, 2402, 2411, 86, 86, 2403, 2412, 86, 86, 86, 2045 2407, 2409, 2410, 2414, 2413, 86, 2418, 86, 86, 2420, 2046 86, 86, 2415, 2421, 2424, 86, 2416, 2419, 86, 86, 2047 86, 86, 86, 2425, 2426, 2417, 2427, 86, 2422, 86, 2048 2423, 2429, 2431, 86, 86, 86, 2436, 86, 2433, 2434, 2049 2428, 2438, 86, 2430, 86, 86, 86, 86, 86, 2439, 2050 2051 2435, 2440, 86, 86, 86, 2432, 2443, 86, 2437, 86, 2052 86, 2442, 86, 2444, 3353, 2449, 2445, 2450, 2446, 2447, 2053 2441, 86, 2452, 86, 86, 86, 2448, 2455, 2451, 86, 2054 2454, 86, 2456, 86, 2453, 86, 170, 86, 86, 86, 2055 2457, 2458, 2463, 86, 86, 86, 86, 86, 2465, 86, 2056 86, 86, 2470, 2461, 2462, 2459, 86, 2460, 2466, 2464, 2057 86, 2467, 2468, 2469, 86, 2471, 2474, 86, 2473, 2478, 2058 2472, 86, 2475, 2476, 86, 86, 2479, 2480, 2477, 86, 2059 2482, 86, 86, 86, 86, 86, 2484, 86, 2481, 86, 2060 86, 86, 2488, 86, 2489, 86, 86, 3353, 2483, 2485, 2061 2062 86, 2491, 86, 2486, 2496, 86, 2492, 2490, 2493, 2487, 2063 2494, 86, 86, 86, 86, 86, 86, 2495, 86, 2499, 2064 2500, 86, 2497, 2502, 86, 86, 86, 86, 86, 2501, 2065 86, 2506, 2509, 86, 2498, 2508, 86, 86, 86, 2510, 2066 2505, 86, 86, 86, 2503, 2504, 86, 2514, 2507, 86, 2067 86, 2519, 86, 86, 2511, 2518, 2512, 86, 2516, 86, 2068 2513, 2520, 86, 86, 2515, 2517, 86, 2528, 2521, 86, 2069 2524, 2522, 86, 2523, 2529, 2525, 86, 2527, 2526, 86, 2070 86, 2531, 86, 86, 2533, 86, 86, 86, 86, 86, 2071 86, 2530, 2532, 2537, 86, 86, 2541, 86, 86, 2539, 2072 2073 2540, 2535, 2542, 86, 2534, 2536, 2543, 86, 2544, 86, 2074 86, 86, 86, 86, 2545, 2547, 2538, 86, 2552, 86, 2075 2549, 86, 2554, 86, 86, 2550, 86, 86, 86, 86, 2076 2548, 2546, 2553, 2551, 2557, 86, 86, 86, 2561, 2558, 2077 86, 2556, 2555, 2562, 86, 2563, 2559, 2560, 86, 86, 2078 86, 86, 86, 2567, 86, 2566, 86, 86, 2565, 86, 2079 86, 86, 2571, 2634, 2570, 3353, 2564, 86, 2568, 86, 2080 2569, 86, 2574, 2575, 86, 2576, 86, 2577, 86, 2572, 2081 2573, 2578, 86, 2579, 86, 86, 2582, 2580, 86, 2581, 2082 86, 2583, 86, 86, 86, 2588, 86, 86, 2590, 86, 2083 2084 2584, 2591, 86, 86, 2585, 86, 86, 86, 86, 86, 2085 2587, 86, 86, 2586, 2592, 2594, 2589, 2593, 2595, 86, 2086 2600, 86, 86, 86, 2597, 86, 86, 2596, 170, 2598, 2087 86, 2599, 2601, 86, 2608, 86, 86, 86, 2602, 2604, 2088 2607, 86, 2603, 86, 2606, 2609, 86, 86, 86, 2605, 2089 2610, 2615, 2611, 86, 3353, 86, 2619, 86, 2617, 2612, 2090 2618, 2616, 2620, 86, 86, 2613, 86, 2621, 86, 2614, 2091 86, 2622, 86, 2623, 86, 86, 86, 86, 86, 2625, 2092 86, 86, 2624, 86, 86, 86, 2638, 86, 86, 2632, 2093 2627, 2639, 86, 2626, 86, 2629, 2628, 86, 86, 86, 2094 2095 2630, 2631, 86, 2633, 2635, 2636, 2637, 2642, 2640, 2643, 2096 86, 2644, 2645, 86, 86, 86, 86, 2646, 86, 2641, 2097 86, 86, 2648, 86, 2654, 86, 2655, 86, 86, 86, 2098 86, 2649, 2647, 86, 2659, 86, 2650, 2652, 2651, 2658, 2099 2660, 86, 2653, 2661, 86, 2663, 86, 2657, 2656, 86, 2100 86, 86, 86, 86, 86, 86, 2666, 2670, 86, 2669, 2101 2671, 86, 2662, 86, 2665, 2664, 86, 86, 2672, 2673, 2102 86, 86, 2667, 2668, 86, 86, 2675, 2674, 86, 86, 2103 2679, 86, 2676, 2677, 86, 2684, 86, 2683, 86, 86, 2104 2687, 86, 86, 86, 2678, 86, 2690, 86, 2680, 2682, 2105 2106 2681, 86, 86, 2685, 2688, 2692, 86, 2686, 2693, 86, 2107 2689, 86, 2691, 86, 86, 2694, 2698, 86, 86, 86, 2108 86, 2695, 86, 2701, 2702, 86, 2699, 2700, 2704, 86, 2109 86, 2696, 86, 2697, 86, 2705, 86, 86, 2707, 2703, 2110 86, 2706, 2710, 86, 86, 2711, 2708, 2713, 86, 86, 2111 86, 86, 86, 2714, 2718, 86, 2709, 2720, 86, 2712, 2112 2716, 2717, 2715, 86, 86, 2719, 86, 86, 2721, 2722, 2113 86, 86, 2724, 86, 86, 86, 86, 86, 2725, 86, 2114 2723, 2730, 2727, 2728, 2731, 2733, 86, 2734, 86, 2729, 2115 2726, 86, 2732, 2735, 170, 86, 86, 86, 2736, 2740, 2116 2117 2737, 86, 86, 2742, 86, 86, 2741, 86, 2745, 86, 2118 2746, 86, 2744, 86, 2738, 2739, 2748, 86, 86, 2743, 2119 86, 2749, 2750, 86, 86, 2752, 2747, 2751, 86, 2753, 2120 2755, 86, 86, 86, 86, 2756, 86, 2754, 2757, 86, 2121 86, 2758, 2762, 86, 2763, 86, 86, 2760, 86, 2759, 2122 86, 2764, 2766, 86, 86, 2765, 86, 2768, 2767, 86, 2123 86, 2761, 86, 86, 2770, 2771, 86, 86, 2769, 86, 2124 86, 2776, 86, 2779, 86, 2774, 2773, 86, 2775, 86, 2125 2772, 2777, 86, 2780, 86, 2778, 2784, 86, 86, 86, 2126 86, 86, 86, 2781, 86, 2785, 2789, 86, 86, 2787, 2127 2128 86, 86, 2782, 2783, 2793, 86, 2788, 3210, 2786, 2791, 2129 2796, 2790, 2794, 86, 2797, 2798, 86, 86, 2792, 86, 2130 86, 86, 2799, 86, 2801, 2800, 2795, 86, 86, 2804, 2131 86, 86, 86, 2805, 86, 86, 2802, 86, 2806, 86, 2132 2809, 2803, 2811, 86, 86, 2807, 3353, 2808, 2812, 86, 2133 2813, 86, 86, 86, 86, 2810, 2814, 86, 2815, 2816, 2134 86, 86, 2818, 2820, 2817, 86, 2819, 86, 2821, 86, 2135 86, 2824, 86, 2822, 2825, 86, 2826, 86, 86, 86, 2136 2828, 2827, 2831, 86, 86, 2823, 86, 2832, 2833, 86, 2137 2829, 86, 2835, 86, 86, 86, 2839, 2836, 86, 2830, 2138 2139 2840, 86, 86, 86, 86, 2842, 2834, 2841, 86, 2838, 2140 2843, 86, 2837, 86, 2848, 86, 2851, 86, 86, 2847, 2141 86, 2844, 2850, 86, 2845, 86, 86, 86, 2846, 2854, 2142 2852, 2853, 86, 86, 2857, 2856, 86, 86, 86, 86, 2143 2849, 86, 2860, 2864, 86, 86, 86, 86, 86, 86, 2144 2866, 86, 2855, 2858, 2859, 2863, 2861, 2870, 2867, 2862, 2145 2865, 2871, 2868, 2873, 2869, 86, 2872, 86, 2874, 86, 2146 2875, 2876, 86, 86, 2877, 86, 2878, 86, 2879, 86, 2147 2880, 2881, 86, 86, 86, 86, 86, 2882, 86, 86, 2148 2885, 86, 86, 2887, 2891, 86, 2892, 86, 2888, 86, 2149 2150 86, 86, 2893, 2883, 86, 2886, 2895, 86, 2896, 2898, 2151 2884, 2889, 2890, 2897, 86, 2899, 86, 86, 2894, 86, 2152 86, 86, 2904, 86, 86, 86, 2900, 86, 2901, 2902, 2153 86, 2905, 86, 2906, 86, 86, 86, 2910, 2914, 2903, 2154 86, 2908, 2911, 86, 2907, 2913, 86, 2909, 2912, 2916, 2155 86, 2915, 2917, 86, 2918, 86, 86, 2921, 86, 86, 2156 86, 86, 86, 86, 2927, 86, 86, 86, 2922, 2944, 2157 86, 2925, 2923, 86, 2920, 86, 86, 2928, 2930, 86, 2158 2919, 2931, 2961, 2926, 86, 2932, 2924, 2929, 2933, 86, 2159 86, 86, 2935, 86, 2934, 2936, 2937, 86, 2938, 86, 2160 2161 2939, 86, 2940, 86, 86, 86, 86, 86, 86, 2943, 2162 2941, 2945, 2946, 2947, 86, 86, 86, 86, 2953, 86, 2163 2949, 2951, 2942, 2948, 86, 2955, 86, 86, 86, 86, 2164 86, 2956, 86, 2957, 2958, 2952, 2950, 86, 2959, 86, 2165 2964, 86, 86, 86, 2954, 86, 86, 2962, 86, 2960, 2166 2967, 86, 86, 86, 2968, 2965, 2966, 86, 2972, 2963, 2167 2971, 86, 2973, 86, 2969, 86, 2974, 2977, 86, 86, 2168 2970, 2979, 86, 2980, 86, 86, 2982, 86, 86, 86, 2169 86, 2975, 86, 2987, 86, 2986, 86, 2990, 2978, 86, 2170 86, 2976, 86, 86, 2983, 2984, 2981, 86, 2985, 2989, 2171 2172 86, 2993, 86, 86, 2996, 86, 2988, 2998, 86, 86, 2173 86, 2992, 2991, 86, 2999, 86, 2994, 2997, 3001, 86, 2174 3002, 86, 2995, 3004, 86, 86, 86, 3009, 86, 3010, 2175 3000, 86, 86, 86, 86, 3003, 3006, 3007, 3013, 86, 2176 86, 3015, 86, 3005, 3011, 3014, 3008, 86, 86, 3018, 2177 3021, 3012, 3019, 86, 3017, 86, 86, 86, 86, 3016, 2178 3020, 3024, 86, 3023, 86, 86, 3022, 3027, 86, 3025, 2179 3030, 86, 86, 86, 86, 86, 86, 3035, 86, 86, 2180 86, 3353, 86, 86, 3026, 3028, 3029, 3031, 3041, 3034, 2181 3032, 3038, 3039, 86, 3040, 86, 3037, 86, 3036, 3033, 2182 2183 86, 3044, 86, 3045, 86, 3043, 3046, 86, 86, 86, 2184 3049, 3042, 86, 3051, 86, 86, 86, 3050, 86, 86, 2185 86, 3047, 86, 3056, 3057, 86, 86, 86, 86, 86, 2186 86, 3063, 86, 86, 3052, 3048, 3064, 86, 3065, 3062, 2187 3053, 3054, 3055, 3060, 86, 86, 3059, 86, 3061, 86, 2188 3069, 86, 3058, 3066, 3068, 3070, 86, 86, 86, 3073, 2189 86, 3072, 3071, 86, 3067, 86, 3076, 86, 3075, 86, 2190 3074, 86, 86, 86, 3077, 86, 86, 3080, 86, 86, 2191 86, 3082, 86, 3078, 3083, 3081, 86, 86, 86, 86, 2192 86, 3079, 86, 86, 3092, 3093, 3095, 3084, 3088, 3085, 2193 2194 3086, 3353, 86, 86, 3087, 3089, 3090, 86, 3091, 86, 2195 3098, 86, 3094, 3097, 3096, 3102, 3099, 3100, 86, 3101, 2196 86, 3103, 86, 86, 86, 3106, 86, 86, 3104, 3107, 2197 86, 3108, 3109, 86, 86, 3110, 3111, 3114, 86, 3112, 2198 3113, 86, 86, 3105, 86, 3118, 3115, 3117, 86, 86, 2199 86, 86, 86, 3116, 3123, 86, 86, 3122, 86, 86, 2200 86, 86, 86, 3119, 3126, 3125, 86, 3353, 3127, 86, 2201 3120, 3121, 86, 3131, 86, 3130, 3128, 3132, 86, 3135, 2202 3129, 3124, 3133, 86, 3134, 86, 3138, 3140, 86, 86, 2203 86, 3139, 86, 86, 3136, 86, 86, 3137, 86, 3148, 2204 2205 3144, 3145, 3147, 86, 3142, 86, 86, 3150, 86, 3151, 2206 86, 3143, 3149, 3141, 86, 86, 86, 3146, 3154, 86, 2207 3153, 3155, 86, 3157, 86, 3156, 3158, 86, 86, 3152, 2208 3159, 86, 3160, 86, 3161, 86, 3162, 86, 3163, 86, 2209 3164, 86, 86, 3167, 86, 86, 86, 86, 86, 86, 2210 86, 3166, 3172, 86, 3165, 3168, 86, 3169, 86, 3176, 2211 86, 86, 3175, 3173, 3178, 86, 86, 3170, 3171, 3174, 2212 86, 86, 3182, 3180, 86, 3177, 86, 3184, 3185, 3179, 2213 86, 86, 86, 86, 86, 3187, 86, 86, 86, 86, 2214 86, 86, 3181, 3191, 3183, 3186, 86, 3192, 86, 3190, 2215 2216 3193, 3188, 86, 3196, 3189, 3194, 86, 86, 86, 3197, 2217 3199, 86, 3200, 86, 3202, 3195, 3201, 86, 86, 86, 2218 3198, 86, 3205, 3204, 86, 86, 86, 3203, 86, 3209, 2219 86, 3207, 86, 3212, 86, 3206, 3208, 86, 86, 86, 2220 86, 3211, 86, 3213, 86, 86, 86, 3214, 86, 3219, 2221 3221, 86, 3215, 3216, 3218, 86, 3220, 3224, 86, 86, 2222 3223, 86, 3225, 3217, 3226, 3227, 86, 3222, 3228, 3229, 2223 86, 3231, 86, 86, 3232, 3230, 3233, 86, 3234, 86, 2224 3235, 86, 86, 86, 86, 3237, 86, 86, 3238, 3239, 2225 3242, 86, 86, 86, 3246, 86, 86, 86, 3245, 3248, 2226 2227 86, 3236, 3241, 86, 3244, 3243, 3249, 86, 86, 3252, 2228 86, 3240, 86, 86, 3255, 86, 86, 3247, 3250, 86, 2229 3256, 86, 86, 3259, 3257, 3260, 86, 3251, 3253, 86, 2230 3254, 86, 86, 86, 3265, 86, 3261, 86, 3264, 3262, 2231 3258, 3266, 86, 86, 86, 86, 86, 86, 3270, 86, 2232 86, 3263, 3272, 86, 86, 3277, 86, 86, 3267, 3269, 2233 3279, 86, 3278, 3268, 86, 86, 3271, 3274, 3273, 3275, 2234 86, 86, 3276, 3283, 86, 3285, 3284, 86, 3286, 86, 2235 86, 86, 86, 3281, 3280, 3287, 86, 3288, 3291, 3282, 2236 86, 3289, 3292, 86, 86, 3293, 3294, 86, 3290, 86, 2237 2238 86, 86, 86, 3295, 86, 3300, 86, 86, 3297, 86, 2239 3303, 86, 3304, 86, 86, 86, 86, 86, 86, 3296, 2240 3302, 3298, 3307, 3299, 3305, 3301, 86, 3306, 86, 3311, 2241 86, 3310, 86, 3308, 86, 3309, 86, 3312, 3353, 3313, 2242 86, 3315, 86, 3317, 86, 3318, 86, 86, 3322, 86, 2243 86, 3319, 86, 3316, 3320, 3321, 3314, 3323, 86, 86, 2244 3324, 3325, 86, 86, 86, 86, 3326, 86, 86, 3328, 2245 3327, 86, 3329, 3331, 86, 86, 3333, 86, 86, 3337, 2246 3334, 3338, 86, 3330, 3332, 86, 86, 3335, 86, 3341, 2247 3342, 86, 86, 3344, 86, 86, 3336, 3345, 86, 3343, 2248 2249 86, 86, 3346, 86, 3339, 3340, 3347, 86, 3348, 3351, 2250 86, 3352, 86, 3353, 3353, 3353, 3353, 3353, 3353, 3349, 2251 3353, 3353, 3353, 3353, 3353, 3353, 3350, 47, 47, 47, 2252 47, 47, 47, 47, 52, 52, 52, 52, 52, 52, 2253 52, 57, 57, 57, 57, 57, 57, 57, 63, 63, 2254 63, 63, 63, 63, 63, 68, 68, 68, 68, 68, 2255 68, 68, 74, 74, 74, 74, 74, 74, 74, 80, 2256 80, 80, 80, 80, 80, 80, 89, 89, 3353, 89, 2257 89, 89, 89, 160, 160, 3353, 3353, 3353, 160, 160, 2258 162, 162, 3353, 3353, 162, 3353, 162, 164, 3353, 3353, 2259 2260 3353, 3353, 3353, 164, 167, 167, 3353, 3353, 3353, 167, 2261 167, 169, 3353, 3353, 3353, 3353, 3353, 169, 171, 171, 2262 3353, 171, 171, 171, 171, 174, 3353, 3353, 3353, 3353, 2263 3353, 174, 177, 177, 3353, 3353, 3353, 177, 177, 90, 2264 90, 3353, 90, 90, 90, 90, 17, 3353, 3353, 3353, 2265 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 2266 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 2267 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 2268 3353, 3353, 3353, 3353, 3353, 3353, 3353 2269 } ; 2270 2271 static yyconst flex_int16_t yy_chk[6588] = 2272 { 0, 2273 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2274 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2275 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2276 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2277 3, 3, 3, 4, 4, 4, 5, 5, 6, 6, 2278 5, 3, 6, 24, 4, 24, 24, 5, 24, 6, 2279 7, 7, 7, 7, 24, 7, 8, 8, 8, 8, 2280 33, 8, 7, 9, 9, 9, 26, 26, 8, 10, 2281 10, 10, 19, 29, 9, 33, 19, 29, 3361, 35, 2282 10, 11, 11, 11, 11, 11, 11, 13, 13, 13, 2283 2284 13, 34, 13, 11, 35, 99, 34, 29, 38, 13, 2285 51, 51, 11, 12, 12, 12, 12, 12, 12, 14, 2286 14, 14, 14, 99, 14, 12, 15, 15, 15, 38, 2287 23, 14, 23, 23, 12, 23, 46, 15, 16, 16, 2288 16, 23, 23, 25, 27, 27, 25, 25, 2735, 16, 2289 25, 46, 27, 30, 30, 25, 27, 56, 40, 27, 2290 56, 73, 31, 31, 25, 28, 67, 67, 30, 32, 2291 28, 31, 40, 32, 28, 73, 32, 28, 92, 28, 2292 28, 92, 31, 32, 1099, 32, 36, 36, 37, 37, 2293 28, 45, 45, 37, 97, 36, 45, 97, 41, 41, 2294 2295 45, 36, 87, 41, 93, 36, 87, 37, 93, 37, 2296 39, 39, 42, 41, 41, 39, 41, 42, 96, 39, 2297 42, 43, 43, 105, 43, 39, 44, 42, 39, 101, 2298 44, 42, 42, 43, 94, 39, 84, 84, 96, 43, 2299 44, 94, 105, 101, 44, 44, 62, 192, 62, 62, 2300 70, 62, 70, 70, 72, 70, 72, 72, 79, 72, 2301 79, 79, 70, 79, 86, 95, 86, 86, 89, 86, 2302 89, 89, 192, 89, 100, 86, 102, 95, 98, 89, 2303 89, 98, 102, 100, 103, 104, 106, 107, 102, 113, 2304 102, 109, 106, 113, 98, 108, 111, 140, 114, 112, 2305 2306 177, 107, 103, 103, 110, 106, 116, 104, 115, 108, 2307 119, 109, 140, 115, 111, 110, 110, 112, 114, 117, 2308 116, 118, 117, 110, 122, 117, 120, 118, 123, 119, 2309 121, 120, 124, 121, 125, 130, 124, 121, 117, 117, 2310 127, 125, 123, 122, 126, 128, 118, 127, 122, 129, 2311 132, 120, 131, 121, 128, 130, 131, 126, 134, 133, 2312 135, 136, 129, 133, 138, 135, 137, 137, 132, 135, 2313 139, 141, 142, 144, 139, 256, 134, 256, 146, 150, 2314 151, 136, 143, 139, 138, 143, 144, 145, 149, 139, 2315 146, 142, 148, 145, 147, 147, 143, 141, 150, 148, 2316 2317 143, 151, 152, 153, 149, 153, 155, 154, 156, 157, 2318 148, 155, 147, 226, 153, 147, 158, 159, 152, 154, 2319 156, 158, 161, 161, 179, 163, 153, 157, 163, 179, 2320 165, 159, 165, 165, 226, 165, 168, 168, 170, 181, 2321 170, 170, 171, 170, 171, 171, 173, 171, 175, 173, 2322 175, 175, 180, 175, 171, 178, 178, 181, 180, 182, 2323 183, 184, 185, 186, 187, 189, 188, 180, 183, 190, 2324 185, 188, 184, 212, 182, 183, 193, 191, 190, 187, 2325 176, 193, 186, 191, 191, 189, 194, 194, 195, 197, 2326 196, 212, 196, 197, 195, 196, 198, 198, 197, 199, 2327 2328 200, 201, 202, 197, 203, 204, 201, 202, 205, 197, 2329 197, 199, 196, 206, 205, 207, 203, 206, 208, 200, 2330 207, 209, 213, 210, 211, 204, 214, 213, 216, 217, 2331 551, 214, 218, 216, 208, 209, 211, 205, 210, 211, 2332 215, 215, 220, 220, 215, 219, 215, 221, 218, 217, 2333 222, 219, 223, 221, 551, 224, 222, 227, 215, 221, 2334 215, 224, 225, 227, 228, 229, 230, 231, 225, 228, 2335 230, 229, 223, 231, 232, 234, 233, 225, 235, 236, 2336 237, 232, 233, 238, 235, 239, 237, 240, 234, 241, 2337 245, 243, 242, 239, 241, 244, 238, 246, 248, 236, 2338 2339 240, 242, 246, 246, 247, 238, 243, 250, 249, 247, 2340 245, 244, 249, 251, 252, 253, 248, 254, 255, 251, 2341 257, 253, 259, 255, 258, 261, 263, 264, 259, 250, 2342 260, 258, 252, 252, 262, 270, 260, 254, 263, 257, 2343 262, 264, 265, 265, 261, 266, 266, 267, 268, 269, 2344 271, 269, 272, 267, 268, 271, 273, 274, 270, 275, 2345 277, 276, 288, 278, 272, 274, 276, 279, 269, 278, 2346 283, 267, 280, 279, 282, 273, 281, 280, 284, 275, 2347 282, 281, 285, 277, 286, 283, 287, 288, 290, 289, 2348 293, 290, 284, 293, 287, 289, 294, 291, 286, 291, 2349 2350 285, 292, 292, 295, 295, 296, 296, 297, 299, 298, 2351 301, 299, 300, 302, 294, 303, 300, 304, 174, 301, 2352 305, 303, 302, 297, 298, 306, 305, 306, 307, 308, 2353 314, 304, 310, 308, 307, 309, 309, 310, 311, 312, 2354 313, 315, 316, 319, 311, 312, 317, 317, 314, 318, 2355 308, 321, 318, 320, 322, 316, 324, 320, 323, 323, 2356 313, 319, 315, 325, 312, 326, 325, 327, 328, 329, 2357 321, 328, 322, 327, 324, 333, 331, 326, 366, 332, 2358 333, 329, 336, 325, 330, 331, 334, 335, 337, 334, 2359 335, 334, 366, 330, 169, 336, 330, 332, 341, 341, 2360 2361 337, 330, 330, 330, 330, 339, 338, 334, 338, 338, 2362 339, 339, 340, 342, 343, 340, 345, 344, 346, 347, 2363 347, 348, 349, 349, 351, 345, 348, 346, 353, 343, 2364 342, 350, 350, 342, 344, 344, 352, 354, 355, 351, 2365 353, 352, 356, 357, 360, 167, 361, 358, 358, 357, 2366 358, 361, 369, 369, 362, 166, 354, 356, 355, 358, 2367 362, 363, 364, 394, 360, 365, 363, 364, 365, 367, 2368 365, 368, 367, 364, 372, 370, 371, 371, 375, 372, 2369 368, 370, 377, 373, 378, 367, 373, 379, 367, 394, 2370 367, 376, 373, 382, 376, 384, 373, 377, 375, 378, 2371 2372 381, 379, 385, 381, 373, 374, 374, 382, 374, 386, 2373 384, 385, 376, 388, 386, 386, 387, 389, 390, 381, 2374 402, 374, 387, 392, 374, 402, 374, 395, 374, 383, 2375 391, 383, 383, 390, 388, 396, 389, 164, 399, 391, 2376 393, 383, 392, 383, 383, 383, 393, 395, 383, 396, 2377 397, 400, 398, 401, 403, 404, 397, 398, 399, 406, 2378 397, 404, 405, 405, 407, 410, 408, 409, 401, 403, 2379 411, 400, 412, 409, 414, 398, 407, 412, 417, 406, 2380 408, 413, 413, 415, 413, 416, 411, 418, 423, 418, 2381 410, 426, 417, 419, 414, 419, 419, 424, 420, 415, 2382 2383 421, 416, 420, 427, 421, 422, 422, 423, 425, 426, 2384 430, 428, 424, 419, 431, 439, 430, 427, 439, 421, 2385 428, 429, 432, 431, 425, 433, 429, 432, 434, 433, 2386 435, 428, 436, 428, 429, 429, 435, 434, 429, 429, 2387 437, 438, 440, 441, 443, 438, 437, 440, 442, 442, 2388 444, 444, 446, 436, 445, 447, 447, 443, 448, 445, 2389 450, 451, 449, 441, 448, 446, 449, 452, 453, 454, 2390 454, 455, 452, 453, 456, 450, 458, 457, 454, 461, 2391 464, 459, 451, 455, 459, 460, 462, 462, 458, 460, 2392 466, 461, 463, 470, 456, 457, 471, 463, 465, 465, 2393 2394 472, 464, 468, 468, 471, 473, 474, 475, 476, 472, 2395 478, 474, 466, 479, 470, 480, 482, 484, 481, 550, 2396 476, 550, 482, 484, 483, 486, 473, 475, 478, 485, 2397 478, 479, 481, 483, 485, 480, 487, 488, 489, 486, 2398 488, 490, 491, 492, 487, 494, 493, 487, 491, 493, 2399 495, 494, 489, 496, 497, 499, 490, 498, 496, 499, 2400 500, 502, 501, 492, 495, 500, 502, 503, 504, 494, 2401 508, 505, 511, 524, 547, 510, 497, 501, 498, 510, 2402 509, 512, 513, 503, 505, 162, 513, 504, 506, 506, 2403 508, 511, 547, 524, 506, 509, 506, 512, 515, 517, 2404 2405 514, 516, 506, 518, 506, 514, 516, 506, 506, 514, 2406 519, 520, 518, 515, 506, 517, 519, 521, 517, 522, 2407 523, 519, 522, 525, 525, 526, 520, 527, 527, 528, 2408 529, 530, 531, 521, 532, 533, 534, 536, 535, 539, 2409 533, 537, 529, 523, 528, 534, 530, 537, 539, 540, 2410 526, 531, 536, 540, 541, 542, 532, 535, 543, 544, 2411 541, 545, 546, 549, 548, 554, 552, 542, 548, 553, 2412 553, 554, 555, 543, 552, 545, 549, 546, 544, 556, 2413 557, 559, 560, 558, 555, 556, 558, 562, 561, 563, 2414 562, 564, 557, 561, 565, 559, 566, 560, 563, 565, 2415 2416 565, 567, 567, 568, 568, 563, 569, 564, 563, 566, 2417 570, 570, 569, 571, 571, 572, 574, 573, 575, 578, 2418 577, 572, 573, 573, 576, 577, 579, 576, 580, 582, 2419 575, 580, 583, 589, 579, 581, 585, 574, 578, 584, 2420 581, 586, 585, 584, 587, 586, 591, 589, 588, 590, 2421 590, 583, 582, 588, 592, 593, 594, 595, 596, 598, 2422 593, 591, 587, 597, 596, 603, 600, 602, 597, 601, 2423 601, 599, 594, 598, 599, 592, 606, 595, 607, 599, 2424 610, 603, 599, 599, 600, 602, 604, 605, 609, 610, 2425 606, 604, 605, 607, 609, 611, 612, 613, 611, 616, 2426 2427 612, 614, 613, 615, 614, 617, 618, 619, 615, 620, 2428 621, 622, 622, 618, 620, 616, 623, 624, 625, 626, 2429 619, 627, 612, 617, 630, 623, 628, 630, 626, 629, 2430 621, 634, 628, 627, 625, 629, 624, 631, 631, 632, 2431 631, 633, 632, 635, 637, 636, 633, 638, 640, 634, 2432 636, 639, 641, 638, 640, 641, 639, 635, 642, 643, 2433 644, 645, 646, 637, 643, 644, 644, 647, 650, 649, 2434 648, 652, 647, 651, 645, 646, 648, 650, 651, 653, 2435 653, 655, 654, 642, 655, 657, 647, 647, 649, 654, 2436 656, 652, 661, 658, 663, 659, 656, 657, 658, 655, 2437 2438 659, 659, 660, 660, 662, 664, 662, 664, 658, 665, 2439 666, 667, 668, 663, 669, 670, 671, 661, 673, 676, 2440 671, 670, 674, 672, 675, 678, 682, 665, 666, 667, 2441 679, 668, 672, 673, 669, 677, 679, 674, 676, 680, 2442 678, 683, 675, 681, 684, 682, 685, 677, 684, 686, 2443 687, 688, 689, 680, 690, 681, 692, 692, 691, 690, 2444 683, 694, 693, 695, 685, 686, 693, 696, 687, 688, 2445 688, 689, 691, 697, 698, 694, 699, 700, 696, 698, 2446 701, 702, 695, 704, 703, 707, 705, 697, 702, 703, 2447 704, 705, 699, 701, 706, 708, 700, 709, 710, 706, 2448 2449 711, 712, 708, 707, 714, 713, 709, 714, 716, 711, 2450 713, 715, 710, 712, 717, 715, 718, 720, 719, 721, 2451 721, 725, 716, 717, 722, 722, 723, 723, 727, 724, 2452 725, 718, 719, 722, 724, 728, 729, 731, 720, 730, 2453 732, 728, 733, 730, 734, 735, 737, 727, 736, 731, 2454 734, 738, 739, 735, 742, 736, 729, 745, 748, 754, 2455 733, 752, 749, 754, 737, 732, 770, 748, 749, 742, 2456 752, 753, 739, 760, 745, 751, 738, 740, 160, 740, 2457 758, 751, 740, 755, 755, 770, 740, 753, 759, 740, 2458 756, 756, 757, 760, 761, 765, 740, 740, 758, 740, 2459 2460 761, 767, 759, 757, 762, 762, 762, 763, 762, 764, 2461 766, 762, 763, 765, 766, 768, 762, 771, 772, 768, 2462 85, 769, 762, 762, 773, 767, 769, 773, 774, 775, 2463 764, 777, 771, 774, 774, 768, 775, 776, 776, 778, 2464 779, 779, 780, 772, 778, 781, 777, 780, 781, 782, 2465 783, 783, 785, 784, 782, 784, 786, 787, 788, 790, 2466 789, 787, 791, 791, 785, 792, 795, 790, 793, 794, 2467 794, 796, 797, 800, 800, 786, 811, 811, 788, 789, 2468 792, 798, 793, 796, 795, 799, 801, 798, 803, 804, 2469 799, 801, 801, 803, 797, 804, 805, 808, 806, 807, 2470 2471 808, 809, 805, 806, 810, 807, 813, 809, 812, 812, 2472 814, 815, 810, 816, 813, 817, 815, 819, 818, 822, 2473 816, 820, 820, 821, 823, 823, 825, 822, 814, 824, 2474 827, 828, 821, 817, 818, 824, 819, 829, 830, 827, 2475 828, 831, 834, 830, 832, 825, 833, 832, 835, 836, 2476 831, 833, 837, 840, 838, 841, 834, 842, 836, 838, 2477 838, 829, 839, 839, 843, 837, 842, 844, 840, 845, 2478 848, 848, 845, 835, 841, 847, 849, 847, 850, 851, 2479 845, 852, 853, 850, 854, 844, 856, 855, 843, 857, 2480 858, 859, 860, 861, 858, 856, 862, 849, 863, 861, 2481 2482 851, 852, 853, 864, 865, 862, 854, 855, 866, 859, 2483 863, 860, 857, 867, 866, 868, 869, 869, 865, 870, 2484 868, 871, 864, 872, 873, 874, 875, 867, 876, 877, 2485 871, 878, 873, 883, 879, 881, 880, 878, 882, 870, 2486 879, 881, 886, 872, 887, 874, 886, 876, 875, 877, 2487 880, 884, 882, 883, 885, 888, 889, 884, 890, 894, 2488 885, 889, 892, 887, 891, 891, 893, 888, 892, 893, 2489 895, 897, 896, 898, 898, 888, 899, 894, 896, 890, 2490 900, 901, 902, 895, 903, 900, 901, 901, 903, 904, 2491 904, 897, 905, 906, 899, 907, 908, 902, 910, 913, 2492 2493 907, 914, 911, 915, 917, 917, 918, 921, 919, 1077, 2494 918, 923, 913, 906, 905, 908, 911, 920, 920, 924, 2495 1077, 914, 910, 919, 915, 916, 923, 922, 916, 926, 2496 916, 922, 921, 924, 916, 925, 916, 929, 928, 927, 2497 925, 916, 931, 926, 927, 927, 916, 928, 930, 933, 2498 932, 929, 930, 934, 935, 932, 936, 931, 934, 937, 2499 938, 933, 940, 946, 930, 932, 939, 940, 935, 938, 2500 941, 947, 939, 937, 942, 948, 941, 936, 943, 943, 2501 942, 944, 945, 952, 950, 946, 944, 951, 945, 953, 2502 947, 957, 951, 948, 949, 949, 950, 952, 954, 954, 2503 2504 949, 953, 949, 956, 955, 957, 958, 959, 949, 955, 2505 961, 956, 960, 949, 949, 963, 961, 962, 964, 965, 2506 949, 966, 962, 967, 967, 958, 959, 963, 960, 968, 2507 969, 971, 973, 968, 975, 965, 964, 971, 972, 966, 2508 974, 972, 976, 978, 977, 974, 980, 975, 976, 977, 2509 969, 973, 981, 982, 983, 980, 984, 985, 986, 987, 2510 983, 981, 978, 986, 988, 984, 989, 994, 990, 982, 2511 80, 993, 991, 992, 997, 1000, 985, 993, 988, 987, 2512 990, 991, 992, 995, 994, 999, 989, 1001, 1002, 995, 2513 997, 1003, 1004, 1005, 1010, 1000, 1006, 1014, 1005, 999, 2514 2515 1009, 1006, 1002, 1010, 1013, 1009, 1001, 1004, 1012, 1003, 2516 1011, 1011, 1014, 1013, 1012, 1015, 1017, 1018, 1023, 1022, 2517 1020, 1020, 1018, 1018, 1020, 1024, 1021, 1025, 1015, 1021, 2518 1026, 1027, 1017, 1022, 1028, 1029, 1030, 1031, 1023, 1032, 2519 1028, 1024, 1030, 1026, 1032, 1025, 1027, 1033, 1035, 1036, 2520 1039, 1035, 1031, 1037, 1038, 1029, 1040, 1041, 1037, 1038, 2521 1043, 1033, 1041, 1042, 1046, 1040, 1039, 1045, 1042, 1047, 2522 1036, 1048, 1043, 1045, 1050, 1047, 1051, 1048, 1049, 1049, 2523 1046, 1052, 1054, 1050, 1052, 1053, 1053, 1055, 1056, 1057, 2524 1058, 1059, 1057, 1060, 1051, 1066, 1061, 1059, 1067, 1060, 2525 2526 1054, 1061, 1062, 1058, 1063, 1064, 1055, 1062, 1056, 1063, 2527 1068, 1064, 1069, 1066, 1070, 1070, 1068, 1069, 1067, 1071, 2528 1072, 1073, 1074, 1075, 1076, 1078, 1075, 1076, 1071, 1072, 2529 1078, 1079, 1080, 1081, 1082, 1084, 1083, 1087, 1085, 1073, 2530 1082, 1074, 1083, 1085, 1080, 1086, 1086, 1088, 1089, 1079, 2531 1084, 1090, 1081, 1091, 1092, 1090, 1087, 1093, 1094, 1096, 2532 1089, 1088, 1098, 1092, 1097, 1097, 1100, 1102, 1103, 1101, 2533 1106, 1091, 1104, 1103, 1105, 1105, 1093, 1109, 1096, 1102, 2534 1100, 1104, 1098, 1094, 1101, 1107, 1108, 1117, 1113, 1110, 2535 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1111, 1114, 1115, 2536 2537 1116, 1112, 1113, 1118, 1115, 1119, 1117, 1120, 1122, 1122, 2538 1118, 1123, 1114, 1124, 1125, 1116, 1126, 1127, 1135, 1128, 2539 1119, 1134, 1126, 1130, 1128, 1123, 1120, 1130, 1134, 1125, 2540 1137, 1124, 1135, 1128, 1138, 1128, 1132, 1127, 1128, 1131, 2541 1131, 1132, 1133, 1133, 1136, 1139, 1140, 1136, 1141, 1137, 2542 1142, 1140, 1138, 1143, 1139, 1144, 1146, 1145, 1143, 1148, 2543 1148, 1149, 1142, 1151, 1155, 1150, 1149, 1141, 1145, 1144, 2544 1150, 1152, 1154, 1153, 1156, 1146, 1152, 1153, 1157, 1155, 2545 1158, 1154, 1161, 1151, 1159, 1162, 1160, 1163, 1164, 1156, 2546 1165, 1167, 1158, 1160, 1161, 1166, 1165, 1157, 1168, 1159, 2547 2548 1169, 1170, 1171, 1172, 1162, 1173, 1164, 1174, 1163, 1169, 2549 1166, 1167, 1175, 1176, 1178, 1172, 1170, 1180, 1168, 1179, 2550 1178, 1171, 1181, 1182, 1173, 1183, 1185, 1175, 1187, 1189, 2551 1181, 1180, 1174, 1176, 1179, 1184, 1188, 1193, 1185, 1186, 2552 1184, 1183, 1189, 1182, 1186, 1186, 1193, 1187, 1190, 1190, 2553 1188, 1191, 1191, 1192, 1197, 1194, 1191, 1195, 1195, 1191, 2554 1191, 1194, 1196, 1197, 1191, 1198, 1192, 1196, 1199, 1202, 2555 1191, 1198, 1200, 1199, 1191, 1201, 1201, 1200, 1203, 1203, 2556 1204, 1205, 1206, 1204, 1207, 1204, 1208, 1209, 1210, 1211, 2557 1202, 1212, 1209, 1207, 1214, 75, 1218, 1212, 1213, 1214, 2558 2559 1206, 1205, 1210, 1216, 1213, 1215, 1208, 1211, 1217, 1215, 2560 1218, 1221, 1216, 1217, 1219, 1219, 1223, 1216, 1224, 1216, 2561 1223, 1216, 1221, 1216, 1220, 1220, 1225, 1220, 1226, 1227, 2562 1228, 1229, 1231, 1224, 1227, 1227, 1230, 1226, 1232, 1228, 2563 1233, 1230, 1234, 1235, 1225, 1236, 1231, 1232, 1237, 1237, 2564 1238, 1236, 1239, 1229, 1241, 1240, 1242, 1235, 1238, 1233, 2565 1240, 1234, 1243, 1244, 1245, 1242, 1239, 1246, 1241, 1243, 2566 1247, 1247, 1246, 1248, 1249, 1249, 1250, 1252, 1250, 1253, 2567 1252, 1244, 1254, 1255, 1253, 1256, 1256, 1257, 1248, 1245, 2568 1258, 1258, 1255, 1259, 1259, 1260, 1261, 1262, 1263, 1263, 2569 2570 1260, 1254, 1264, 1265, 1266, 1267, 1265, 1257, 1270, 74, 2571 1267, 1268, 1269, 1272, 1269, 1273, 1272, 1261, 1262, 1275, 2572 1268, 1277, 1264, 1274, 1266, 1283, 1270, 1276, 1274, 1277, 2573 1273, 1278, 1276, 1275, 1279, 1280, 1278, 1279, 1281, 1281, 2574 1280, 1282, 1284, 1283, 1285, 1286, 1282, 1288, 1284, 1289, 2575 1291, 1285, 1290, 1288, 1292, 1289, 1291, 1290, 1286, 1293, 2576 1294, 1295, 1295, 1292, 1296, 1298, 1299, 1300, 1301, 1302, 2577 1303, 1294, 1307, 1305, 1301, 1302, 1303, 1306, 1293, 1305, 2578 1298, 1308, 1309, 1313, 1296, 1310, 1299, 1311, 1312, 1312, 2579 1300, 1306, 1307, 1314, 1309, 1315, 1318, 1306, 1321, 1310, 2580 2581 1326, 1308, 1316, 1313, 1323, 1311, 1319, 1316, 1317, 1317, 2582 1322, 1319, 1324, 1315, 1326, 1322, 1322, 1321, 1314, 1318, 2583 1325, 1324, 1323, 1327, 1328, 1329, 1330, 1331, 1325, 1331, 2584 1329, 1332, 1335, 1329, 1334, 1330, 1335, 1336, 1327, 1328, 2585 1334, 1337, 1328, 1338, 1339, 1332, 1337, 1337, 1336, 1340, 2586 1341, 1342, 1344, 1343, 1345, 1341, 1342, 1346, 1349, 1345, 2587 1348, 1350, 1338, 1351, 1351, 1352, 1353, 1340, 1354, 1352, 2588 1339, 1343, 1344, 1356, 1348, 1355, 1349, 1346, 1357, 1350, 2589 1358, 1355, 1363, 1359, 1353, 1356, 1360, 1354, 1361, 1363, 2590 1362, 1364, 1365, 1366, 1358, 1362, 1364, 1357, 1359, 1367, 2591 2592 1367, 1360, 1366, 1368, 1369, 1370, 1372, 1361, 1371, 1371, 2593 1365, 1373, 1372, 1369, 1374, 1375, 1375, 1373, 1368, 1377, 2594 1376, 1378, 1379, 1380, 1381, 1370, 1376, 1379, 1374, 1380, 2595 1381, 1382, 1383, 1383, 1389, 1377, 1388, 1382, 1384, 1384, 2596 1386, 1386, 1378, 1387, 1390, 1388, 1391, 1387, 1392, 1395, 2597 1393, 1396, 1389, 1394, 1394, 1399, 1390, 1393, 1398, 1396, 2598 1391, 1397, 1400, 1392, 1402, 1401, 1397, 1400, 1400, 1395, 2599 1401, 1401, 1398, 1404, 1399, 1403, 1403, 1405, 1406, 1408, 2600 1407, 1409, 1410, 1411, 1402, 1407, 1412, 1406, 1413, 1411, 2601 1415, 1412, 1404, 1414, 1418, 1423, 1405, 1416, 1408, 1414, 2602 2603 1410, 1409, 1417, 1416, 1419, 1420, 1421, 1422, 1417, 1415, 2604 1427, 1424, 1426, 1418, 1413, 1426, 1423, 1425, 1425, 1428, 2605 1429, 1422, 1434, 1419, 1420, 1421, 1424, 1430, 1430, 1427, 2606 1431, 1431, 1429, 1433, 1432, 1434, 1435, 1433, 1428, 1432, 2607 1436, 1437, 1441, 1437, 1439, 1435, 1440, 1437, 1442, 1443, 2608 1448, 1440, 1446, 1436, 1444, 1444, 1445, 1441, 1446, 1447, 2609 1437, 1445, 1439, 1448, 1449, 1443, 1450, 1451, 1442, 1449, 2610 1450, 1451, 1452, 1453, 1447, 1454, 1455, 1456, 1457, 1457, 2611 1459, 1461, 1462, 1456, 1454, 1463, 1463, 1462, 1464, 1465, 2612 1469, 1453, 1452, 1469, 1464, 1471, 1455, 1472, 1459, 1467, 2613 2614 1467, 1475, 1461, 1470, 1470, 1474, 1476, 1478, 1474, 1465, 2615 1479, 1471, 1482, 1472, 1480, 1476, 1477, 1477, 1481, 1483, 2616 1483, 1475, 1478, 1481, 1485, 1484, 1482, 1487, 1486, 1488, 2617 1490, 1479, 1491, 1480, 1484, 1489, 1489, 1495, 1493, 1496, 2618 1492, 1495, 1485, 1486, 1490, 1492, 1494, 1494, 1498, 1488, 2619 1491, 1499, 1487, 1493, 1497, 1497, 1500, 1501, 1502, 1496, 2620 1500, 1505, 1499, 1502, 1504, 1504, 1506, 1507, 1508, 1509, 2621 1498, 1510, 1511, 1511, 1512, 1513, 1501, 1505, 1514, 1512, 2622 1516, 1507, 1518, 1509, 1506, 1515, 1515, 1508, 1508, 1516, 2623 1522, 1519, 1517, 1519, 1520, 1513, 1510, 1517, 1514, 1520, 2624 2625 1521, 1523, 1518, 1525, 1526, 1526, 1521, 1523, 1527, 1528, 2626 1522, 1530, 1531, 1532, 1532, 1528, 1530, 1525, 1533, 1533, 2627 1534, 1535, 1536, 1537, 1538, 1538, 1537, 1527, 1539, 1540, 2628 1541, 1549, 1543, 68, 1534, 1544, 1531, 1536, 1543, 1535, 2629 1544, 1540, 1542, 1547, 1545, 1542, 1539, 1545, 1542, 1548, 2630 1541, 1552, 1547, 1553, 1548, 1550, 1549, 1552, 1550, 1553, 2631 1542, 1551, 1551, 1545, 1554, 1555, 1555, 1556, 1556, 1554, 2632 1557, 1559, 1558, 1560, 1561, 1562, 1557, 1558, 1563, 1564, 2633 1565, 1563, 1566, 1567, 1559, 1564, 1565, 1566, 1568, 1567, 2634 1572, 1560, 1569, 1561, 1573, 1562, 1571, 1569, 1570, 1570, 2635 2636 1574, 1571, 1575, 1576, 1577, 1578, 1579, 1582, 1572, 1580, 2637 1581, 1568, 1581, 1580, 1573, 1584, 1575, 1576, 1577, 1586, 2638 1574, 1585, 1587, 1578, 1588, 1589, 1582, 1584, 1587, 1590, 2639 1592, 1579, 1586, 1585, 1591, 1594, 1594, 1595, 1596, 1599, 2640 1597, 1589, 1600, 1596, 1588, 1598, 1598, 1601, 1591, 1590, 2641 1602, 1592, 1597, 1603, 1599, 1604, 1600, 1595, 1605, 1607, 2642 1606, 1609, 1603, 1611, 1612, 1605, 1616, 1612, 1602, 1606, 2643 1604, 1601, 1606, 1613, 1613, 1607, 1609, 1614, 1614, 1615, 2644 1617, 1609, 1619, 1617, 1616, 1618, 1618, 1620, 1611, 1621, 2645 1623, 1615, 1622, 1625, 1621, 1619, 1624, 1622, 1626, 1627, 2646 2647 1631, 1628, 1625, 1630, 1630, 1632, 1620, 1629, 1627, 1623, 2648 1628, 1627, 1624, 1629, 1633, 1634, 1636, 1626, 1632, 1635, 2649 1631, 1636, 1636, 1637, 1638, 1641, 1642, 1644, 1637, 1634, 2650 1643, 1643, 1633, 1645, 1646, 1635, 1638, 1647, 1647, 1646, 2651 1650, 1649, 1645, 1644, 1642, 1648, 1649, 1651, 1652, 1655, 2652 1641, 1657, 1647, 1664, 1648, 1653, 1656, 1648, 1650, 1658, 2653 1653, 1653, 1660, 1655, 1658, 1663, 1652, 1664, 1651, 1659, 2654 1663, 1656, 1662, 1657, 1668, 1659, 1661, 1661, 1662, 1665, 2655 1660, 1666, 1669, 1670, 1671, 1665, 1673, 1666, 1677, 1670, 2656 1672, 1678, 1673, 1672, 1668, 1675, 1669, 1671, 1679, 1672, 2657 2658 1680, 1681, 1682, 1675, 1683, 1684, 1679, 1677, 1688, 1680, 2659 1678, 1685, 1685, 1691, 1681, 1682, 1686, 1687, 1683, 1684, 2660 1690, 1688, 1686, 1687, 1689, 1689, 1692, 1693, 1693, 1694, 2661 1695, 1691, 1696, 1685, 1697, 1698, 1695, 1700, 1700, 1701, 2662 1690, 1703, 1694, 1702, 1704, 1692, 1703, 1702, 1706, 1704, 2663 1697, 1705, 1707, 1698, 1696, 1709, 1705, 1706, 1710, 1701, 2664 1711, 1711, 1712, 1714, 1713, 1715, 1715, 1709, 1718, 1716, 2665 1717, 1721, 1719, 1710, 1722, 1707, 1713, 1717, 1725, 1723, 2666 1718, 1712, 1714, 1716, 1719, 1723, 1724, 1726, 1727, 1727, 2667 1721, 63, 1728, 1726, 1722, 1728, 1725, 1731, 1724, 1729, 2668 2669 1729, 1732, 1731, 1733, 1734, 1734, 1735, 1738, 1739, 1733, 2670 1732, 1736, 1737, 1736, 1740, 1737, 1741, 1742, 1735, 1743, 2671 1744, 1745, 1742, 1746, 1743, 1749, 1747, 1738, 1748, 1744, 2672 1739, 1747, 1740, 1745, 1741, 1750, 1751, 1748, 1746, 1752, 2673 1750, 1751, 1753, 1753, 1755, 1749, 1754, 1750, 1757, 1758, 2674 1748, 1760, 1754, 1759, 1752, 1761, 1762, 1761, 1763, 1763, 2675 1764, 1764, 1765, 1765, 1766, 1755, 1769, 1757, 1758, 1759, 2676 1762, 1760, 1762, 1767, 1767, 1768, 1768, 1770, 1771, 1771, 2677 1773, 1772, 1777, 1776, 1766, 1772, 1773, 1769, 1774, 1776, 2678 1778, 1774, 1779, 1782, 1780, 1785, 1778, 1780, 1770, 1783, 2679 2680 1777, 1781, 1781, 1786, 1783, 1784, 1784, 1787, 1788, 1788, 2681 1785, 1789, 1787, 1782, 1790, 1791, 1789, 1779, 1792, 1793, 2682 1790, 1794, 1796, 58, 1786, 1795, 1799, 1791, 1791, 1791, 2683 1798, 1795, 1800, 1802, 1791, 1798, 1798, 1793, 1792, 1803, 2684 1799, 1794, 1796, 1801, 1802, 1801, 1804, 1800, 1805, 1806, 2685 1807, 1809, 1804, 1811, 1803, 1808, 1808, 1805, 1810, 1810, 2686 1812, 1813, 1813, 1814, 1814, 1815, 1818, 1818, 1819, 1806, 2687 1820, 1807, 1822, 1811, 1823, 1825, 1825, 1809, 1824, 1820, 2688 1826, 1822, 1812, 1827, 1824, 1815, 1830, 1828, 1829, 1831, 2689 1831, 1832, 1833, 1819, 1828, 1823, 1836, 1829, 1827, 1835, 2690 2691 1837, 1826, 1836, 1838, 1835, 1839, 1842, 1840, 1833, 1840, 2692 1838, 1839, 1830, 1843, 1844, 1844, 1845, 1832, 1846, 1843, 2693 1837, 1845, 1847, 1849, 1848, 1842, 1850, 1846, 1851, 1850, 2694 1852, 1853, 1853, 1854, 1855, 1849, 1857, 1856, 1860, 1854, 2695 1855, 1858, 1847, 1848, 1861, 1858, 1851, 1862, 1863, 1863, 2696 1864, 1857, 1862, 1865, 1867, 1868, 1852, 1856, 1860, 1868, 2697 1876, 1858, 1869, 1869, 1870, 1871, 1861, 1874, 1865, 1864, 2698 1870, 1872, 1872, 1867, 1871, 1873, 1875, 1875, 1874, 1873, 2699 1877, 1876, 1878, 1874, 1879, 1880, 1881, 1882, 1883, 1879, 2700 1884, 1885, 1885, 1882, 1877, 1884, 1886, 1886, 1887, 1889, 2701 2702 1890, 1878, 1887, 1883, 1891, 1880, 1881, 1899, 1889, 1892, 2703 1892, 1890, 1894, 1894, 1895, 1896, 1890, 1898, 1901, 1895, 2704 1895, 1896, 1900, 1898, 1891, 1902, 1904, 1900, 1905, 1906, 2705 1901, 1902, 1905, 1899, 1907, 1909, 1908, 1910, 1904, 1911, 2706 1912, 1906, 1908, 1910, 1911, 1915, 1914, 1918, 1916, 1922, 2707 1918, 1925, 1912, 1916, 1919, 1919, 1925, 1909, 1914, 1907, 2708 1920, 1920, 1921, 1921, 1915, 1923, 1924, 1926, 1927, 1922, 2709 1929, 1923, 1924, 1926, 1932, 1929, 1931, 1927, 1935, 1931, 2710 1933, 1933, 1936, 1937, 1938, 1938, 1932, 1939, 1937, 1944, 2711 1935, 1947, 1940, 1941, 1936, 1945, 1939, 1940, 1941, 1942, 2712 2713 1943, 1943, 1942, 1946, 1945, 1951, 1950, 1948, 1949, 1944, 2714 1947, 1948, 1950, 1949, 1953, 1952, 1954, 1956, 1956, 1957, 2715 1959, 1946, 1958, 1951, 1952, 1960, 1960, 1961, 1963, 1956, 2716 1954, 1958, 1953, 1962, 1964, 1965, 1961, 1957, 1971, 1964, 2717 1959, 1968, 1968, 1970, 1972, 1962, 1970, 1974, 1965, 1963, 2718 1975, 1976, 1977, 1986, 1971, 1978, 1978, 1976, 57, 1979, 2719 1972, 1979, 1974, 1981, 1975, 1980, 1980, 1983, 1983, 1977, 2720 1989, 1981, 1984, 1984, 1987, 1988, 1986, 1989, 1990, 1991, 2721 1987, 1988, 1992, 1992, 1993, 1994, 1995, 1997, 1999, 1996, 2722 2000, 1998, 2003, 1993, 2004, 2005, 2006, 2006, 1995, 1991, 2723 2724 1990, 1996, 1997, 1998, 2001, 2000, 1994, 2005, 2007, 2008, 2725 2001, 2011, 2003, 2009, 1999, 2010, 2009, 2004, 2015, 2013, 2726 2010, 2021, 52, 2001, 2013, 2014, 2007, 2014, 2016, 2008, 2727 2017, 2011, 2019, 2016, 2022, 2023, 2015, 2017, 2024, 2021, 2728 2024, 2019, 2025, 2022, 2027, 2028, 2027, 2023, 2029, 2029, 2729 2030, 2031, 2032, 2033, 2032, 2034, 2031, 2035, 2033, 2028, 2730 2034, 2025, 2036, 2037, 2039, 2038, 2040, 2041, 2044, 2037, 2731 2038, 2042, 2041, 2041, 2045, 2035, 2030, 2039, 2040, 2042, 2732 2046, 2046, 2036, 2047, 2047, 2048, 2049, 2044, 2045, 2050, 2733 2052, 2051, 2052, 2053, 2054, 2050, 2051, 2055, 2055, 47, 2734 2735 2048, 2056, 2054, 2057, 2057, 2059, 2049, 2058, 2058, 2061, 2736 2054, 2053, 2060, 2056, 2059, 2065, 2063, 2060, 2064, 2067, 2737 2064, 2069, 2071, 2068, 2066, 2063, 2075, 2061, 2063, 2066, 2738 2066, 2067, 2068, 2069, 2071, 2072, 2065, 2073, 2076, 2075, 2739 2072, 2077, 2073, 2078, 2078, 2079, 2080, 2082, 2085, 2081, 2740 2077, 2083, 2087, 2099, 2088, 2086, 2096, 2089, 2076, 2088, 2741 2085, 2082, 2089, 2079, 2080, 2081, 2083, 2086, 2090, 2093, 2742 2095, 2097, 2087, 2098, 2100, 2093, 2095, 2090, 2099, 2096, 2743 2101, 2101, 2104, 2100, 2102, 2107, 2097, 2108, 2093, 2103, 2744 2103, 2098, 2105, 2102, 2106, 18, 2105, 2109, 2107, 2106, 2745 2746 2110, 2104, 2109, 2109, 2111, 2112, 2110, 2113, 2112, 2108, 2747 2111, 2114, 2117, 2117, 2119, 2113, 2122, 2118, 2118, 2120, 2748 2120, 2121, 2121, 2119, 2123, 2125, 17, 2124, 2122, 2132, 2749 2125, 2114, 2118, 2124, 2126, 2126, 2127, 2127, 2134, 2128, 2750 2129, 2131, 2123, 2118, 2128, 2131, 2129, 2133, 2136, 2132, 2751 2137, 2133, 2138, 2139, 2140, 2137, 2141, 2143, 2134, 2140, 2752 2142, 2144, 2145, 2146, 2146, 2147, 2144, 2148, 2139, 2147, 2753 2150, 2151, 2155, 2136, 2141, 2138, 2142, 2143, 2149, 2152, 2754 2153, 2154, 2148, 2149, 2145, 2155, 2154, 2156, 2160, 2151, 2755 2159, 2152, 2157, 2157, 2161, 2162, 2150, 2163, 2159, 2153, 2756 2757 2164, 2165, 2166, 2167, 2171, 2156, 2172, 2160, 2169, 2173, 2758 2174, 2176, 2174, 2161, 2166, 2173, 2176, 2171, 2162, 2164, 2759 2172, 2163, 2165, 2169, 2167, 2175, 2175, 2177, 2178, 2179, 2760 2177, 2180, 2181, 2181, 2182, 2182, 2183, 2185, 2183, 2184, 2761 2184, 2178, 2186, 2179, 2180, 2187, 2187, 2188, 2189, 2189, 2762 2190, 2190, 2185, 2191, 2194, 2186, 2188, 2193, 2191, 2188, 2763 2195, 2196, 2193, 2197, 2197, 2198, 2198, 2199, 2200, 2200, 2764 2201, 2202, 2202, 2196, 2194, 2203, 2204, 2205, 2205, 2207, 2765 2195, 2204, 2206, 2206, 2209, 2208, 2199, 2210, 2201, 2214, 2766 2203, 2212, 2216, 2207, 2208, 0, 2212, 2217, 2209, 2213, 2767 2768 2213, 2215, 2215, 2217, 2218, 2221, 2210, 2218, 2214, 2226, 2769 2216, 2219, 2219, 2220, 2220, 2222, 2223, 2225, 2223, 2227, 2770 2227, 2229, 2230, 2231, 2221, 2232, 2240, 2219, 2226, 2232, 2771 2222, 2234, 2225, 2233, 2233, 2235, 2236, 2237, 2231, 2242, 2772 2235, 2229, 2239, 2239, 2243, 2230, 2240, 2241, 2244, 2245, 2773 2234, 2236, 2237, 2242, 2241, 2246, 2246, 2248, 2247, 2248, 2774 2249, 2252, 2243, 2249, 2251, 2255, 2244, 2247, 2256, 2253, 2775 2251, 2254, 2257, 2252, 2253, 2245, 2254, 2258, 2249, 2259, 2776 2249, 2256, 2258, 2261, 2262, 2263, 2264, 2265, 2261, 2262, 2777 2255, 2266, 2264, 2257, 2267, 2269, 2268, 2266, 2270, 2267, 2778 2779 2263, 2268, 2281, 2271, 2272, 2259, 2271, 2273, 2265, 2274, 2780 2275, 2270, 2276, 2272, 0, 2277, 2273, 2278, 2274, 2275, 2781 2269, 2277, 2281, 2278, 2279, 2283, 2276, 2285, 2279, 2284, 2782 2284, 2286, 2286, 2285, 2283, 2288, 2287, 2290, 2291, 2294, 2783 2286, 2287, 2292, 2292, 2293, 2297, 2296, 2298, 2294, 2301, 2784 2303, 2299, 2301, 2290, 2291, 2288, 2304, 2288, 2296, 2293, 2785 2302, 2297, 2298, 2299, 2310, 2302, 2305, 2305, 2304, 2310, 2786 2303, 2306, 2306, 2308, 2308, 2309, 2311, 2312, 2309, 2313, 2787 2314, 2314, 2311, 2312, 2315, 2316, 2316, 2317, 2313, 2318, 2788 2319, 2320, 2320, 2322, 2321, 2329, 2323, 0, 2315, 2317, 2789 2790 2321, 2323, 2325, 2318, 2329, 2326, 2325, 2322, 2326, 2319, 2791 2327, 2327, 2328, 2330, 2331, 2332, 2334, 2328, 2336, 2332, 2792 2333, 2333, 2330, 2336, 2337, 2338, 2339, 2340, 2341, 2334, 2793 2342, 2340, 2343, 2344, 2331, 2342, 2345, 2346, 2343, 2344, 2794 2339, 2347, 2348, 2349, 2337, 2338, 2351, 2348, 2341, 2352, 2795 2353, 2354, 2363, 2355, 2345, 2353, 2346, 2354, 2351, 2360, 2796 2347, 2355, 2358, 2367, 2349, 2352, 2356, 2367, 2356, 2361, 2797 2361, 2358, 2362, 2360, 2368, 2362, 2364, 2364, 2363, 2369, 2798 2368, 2370, 2370, 2371, 2374, 2374, 2376, 2378, 2382, 2379, 2799 2383, 2369, 2371, 2382, 2384, 2385, 2386, 2386, 2392, 2384, 2800 2801 2385, 2378, 2388, 2388, 2376, 2379, 2390, 2391, 2391, 2393, 2802 2394, 2396, 2390, 2398, 2392, 2394, 2383, 2397, 2400, 2400, 2803 2397, 2399, 2403, 2402, 2404, 2398, 2405, 2409, 2403, 2410, 2804 2396, 2393, 2402, 2399, 2407, 2407, 2408, 2412, 2412, 2408, 2805 2414, 2405, 2404, 2413, 2413, 2414, 2409, 2410, 2415, 2416, 2806 2417, 2418, 2421, 2418, 2419, 2417, 2420, 2422, 2416, 2423, 2807 2424, 2489, 2422, 2489, 2421, 0, 2415, 2425, 2419, 2431, 2808 2420, 2430, 2425, 2426, 2426, 2427, 2427, 2428, 2428, 2423, 2809 2424, 2429, 2429, 2430, 2432, 2433, 2433, 2431, 2435, 2432, 2810 2434, 2434, 2436, 2437, 2438, 2439, 2439, 2440, 2441, 2441, 2811 2812 2435, 2442, 2442, 2443, 2436, 2444, 2446, 2447, 2445, 2449, 2813 2438, 2450, 2453, 2437, 2443, 2445, 2440, 2444, 2446, 2448, 2814 2451, 2451, 2454, 2452, 2448, 2456, 2455, 2447, 2458, 2449, 2815 2457, 2450, 2452, 2459, 2459, 2461, 2460, 2462, 2453, 2455, 2816 2458, 2464, 2454, 2465, 2457, 2460, 2466, 2468, 2467, 2456, 2817 2461, 2467, 2462, 2469, 0, 2470, 2471, 2471, 2469, 2464, 2818 2470, 2468, 2472, 2472, 2478, 2465, 2473, 2473, 2479, 2466, 2819 2475, 2475, 2477, 2477, 2480, 2481, 2483, 2484, 2485, 2479, 2820 2487, 2486, 2478, 2488, 2490, 2493, 2493, 2491, 2492, 2487, 2821 2481, 2495, 2495, 2480, 2496, 2484, 2483, 2497, 2498, 2503, 2822 2823 2485, 2486, 2501, 2488, 2490, 2491, 2492, 2498, 2496, 2499, 2824 2499, 2501, 2502, 2502, 2504, 2505, 2506, 2503, 2507, 2497, 2825 2508, 2509, 2505, 2510, 2511, 2511, 2512, 2512, 2513, 2514, 2826 2520, 2506, 2504, 2515, 2516, 2516, 2507, 2509, 2508, 2515, 2827 2517, 2517, 2510, 2518, 2519, 2520, 2521, 2514, 2513, 2518, 2828 2522, 2523, 2524, 2525, 2526, 2527, 2523, 2527, 2532, 2526, 2829 2528, 2528, 2519, 2535, 2522, 2521, 2529, 2534, 2529, 2530, 2830 2530, 2536, 2524, 2525, 2537, 2538, 2534, 2532, 2539, 2543, 2831 2538, 2540, 2535, 2536, 2544, 2545, 2545, 2544, 2546, 2547, 2832 2548, 2548, 2551, 2549, 2537, 2550, 2551, 2553, 2539, 2543, 2833 2834 2540, 2554, 2556, 2546, 2549, 2554, 2558, 2547, 2555, 2555, 2835 2550, 2559, 2553, 2560, 2563, 2556, 2561, 2561, 2564, 2565, 2836 2567, 2558, 2571, 2565, 2566, 2566, 2563, 2564, 2568, 2568, 2837 2569, 2559, 2570, 2560, 2572, 2569, 2573, 2580, 2571, 2567, 2838 2582, 2570, 2574, 2574, 2579, 2579, 2572, 2581, 2581, 2583, 2839 2587, 2584, 2585, 2582, 2586, 2586, 2573, 2589, 2589, 2580, 2840 2584, 2585, 2583, 2592, 2593, 2587, 2594, 2595, 2592, 2593, 2841 2596, 2597, 2595, 2598, 2601, 2599, 2602, 2604, 2596, 2603, 2842 2594, 2602, 2598, 2599, 2603, 2605, 2605, 2606, 2606, 2601, 2843 2597, 2608, 2604, 2607, 2607, 2609, 2610, 2611, 2608, 2612, 2844 2845 2609, 2613, 2614, 2614, 2615, 2612, 2613, 2616, 2617, 2617, 2846 2618, 2618, 2616, 2621, 2610, 2611, 2622, 2622, 2623, 2615, 2847 2625, 2623, 2624, 2627, 2626, 2625, 2621, 2624, 2624, 2626, 2848 2628, 2629, 2631, 2630, 2632, 2629, 2628, 2627, 2630, 2633, 2849 2634, 2631, 2635, 2638, 2636, 2640, 2637, 2633, 2635, 2632, 2850 2636, 2637, 2640, 2641, 2642, 2638, 2644, 2642, 2641, 2646, 2851 2647, 2634, 2648, 2649, 2646, 2647, 2650, 2656, 2644, 2651, 2852 2652, 2652, 2653, 2657, 2661, 2650, 2649, 2658, 2651, 2657, 2853 2648, 2653, 2662, 2658, 2663, 2656, 2664, 2664, 2665, 2666, 2854 2667, 2668, 2670, 2661, 2672, 2665, 2669, 2669, 2674, 2667, 2855 2856 2675, 2677, 2662, 2663, 2675, 3182, 2668, 3182, 2666, 2672, 2857 2678, 2670, 2676, 2676, 2679, 2680, 2678, 2682, 2674, 2683, 2858 2679, 2680, 2681, 2681, 2683, 2682, 2677, 2685, 2686, 2688, 2859 2689, 2691, 2692, 2689, 2690, 2688, 2685, 2695, 2690, 2694, 2860 2694, 2686, 2696, 2696, 2705, 2691, 0, 2692, 2697, 2697, 2861 2699, 2699, 2700, 2701, 2707, 2695, 2700, 2706, 2701, 2703, 2862 2703, 2709, 2706, 2708, 2705, 2711, 2707, 2717, 2708, 2708, 2863 2712, 2712, 2719, 2709, 2714, 2714, 2715, 2715, 2716, 2721, 2864 2717, 2716, 2722, 2722, 2727, 2711, 2723, 2723, 2724, 2724, 2865 2719, 2725, 2726, 2726, 2728, 2729, 2730, 2727, 2737, 2721, 2866 2867 2731, 2731, 2730, 2732, 2738, 2736, 2725, 2732, 2739, 2729, 2868 2736, 2736, 2728, 2740, 2741, 2742, 2744, 2744, 2743, 2740, 2869 2741, 2737, 2743, 2749, 2738, 2747, 2750, 2752, 2739, 2750, 2870 2747, 2749, 2753, 2754, 2754, 2753, 2755, 2756, 2757, 2758, 2871 2742, 2759, 2756, 2760, 2760, 2764, 2761, 2762, 2763, 2765, 2872 2762, 2768, 2752, 2755, 2755, 2759, 2757, 2765, 2762, 2758, 2873 2761, 2766, 2763, 2767, 2764, 2774, 2766, 2766, 2767, 2767, 2874 2768, 2769, 2769, 2770, 2770, 2771, 2771, 2772, 2772, 2773, 2875 2773, 2774, 2775, 2776, 2777, 2778, 2779, 2775, 2780, 2781, 2876 2778, 2782, 2783, 2780, 2785, 2785, 2786, 2786, 2781, 2787, 2877 2878 2788, 2791, 2787, 2776, 2793, 2779, 2790, 2790, 2791, 2793, 2879 2777, 2782, 2783, 2792, 2792, 2795, 2795, 2796, 2788, 2797, 2880 2798, 2800, 2801, 2801, 2803, 2804, 2796, 2802, 2797, 2798, 2881 2805, 2802, 2806, 2803, 2810, 2808, 2809, 2807, 2810, 2800, 2882 2818, 2805, 2807, 2807, 2804, 2809, 2814, 2806, 2808, 2815, 2883 2815, 2814, 2817, 2817, 2818, 2819, 2820, 2822, 2822, 2823, 2884 2824, 2827, 2828, 2829, 2830, 2832, 2834, 2870, 2823, 2852, 2885 2830, 2828, 2824, 2836, 2820, 2852, 2837, 2832, 2836, 2839, 2886 2819, 2837, 2870, 2829, 2838, 2838, 2827, 2834, 2839, 2841, 2887 2848, 2842, 2842, 2847, 2841, 2842, 2844, 2844, 2845, 2845, 2888 2889 2846, 2846, 2847, 2849, 2850, 2856, 2853, 2854, 2857, 2850, 2890 2848, 2853, 2854, 2855, 2855, 2858, 2859, 2860, 2861, 2862, 2891 2857, 2859, 2849, 2856, 2861, 2863, 2863, 2865, 2866, 2867, 2892 2869, 2865, 2871, 2866, 2867, 2860, 2858, 2868, 2868, 2873, 2893 2875, 2875, 2877, 2878, 2862, 2880, 2879, 2871, 2881, 2869, 2894 2879, 2882, 2883, 2884, 2880, 2877, 2878, 2886, 2884, 2873, 2895 2883, 2885, 2885, 2887, 2881, 2888, 2886, 2889, 2889, 2890, 2896 2882, 2893, 2893, 2894, 2894, 2896, 2898, 2898, 2900, 2901, 2897 2903, 2887, 2902, 2905, 2905, 2903, 2906, 2908, 2890, 2909, 2898 2907, 2888, 2910, 2908, 2900, 2901, 2896, 2918, 2902, 2907, 2899 2900 2912, 2912, 2913, 2914, 2915, 2915, 2906, 2919, 2922, 2920, 2901 2931, 2910, 2909, 2919, 2920, 2925, 2913, 2918, 2923, 2923, 2902 2924, 2924, 2914, 2926, 2926, 2927, 2929, 2930, 2928, 2931, 2903 2922, 2933, 2932, 2930, 2941, 2925, 2927, 2928, 2934, 2934, 2904 2936, 2936, 2935, 2926, 2932, 2935, 2929, 2940, 2946, 2942, 2905 2945, 2933, 2943, 2943, 2941, 2942, 2945, 2944, 2948, 2940, 2906 2944, 2949, 2949, 2948, 2950, 2951, 2946, 2952, 2953, 2950, 2907 2954, 2954, 2957, 2952, 2958, 2956, 2959, 2960, 2960, 2961, 2908 2962, 0, 2963, 2967, 2951, 2953, 2953, 2956, 2967, 2959, 2909 2957, 2963, 2965, 2965, 2966, 2966, 2962, 2968, 2961, 2958, 2910 2911 2969, 2970, 2970, 2971, 2971, 2969, 2972, 2972, 2973, 2974, 2912 2975, 2968, 2976, 2978, 2978, 2981, 2975, 2976, 2983, 2984, 2913 2985, 2973, 2986, 2986, 2988, 2988, 2989, 2990, 2992, 2991, 2914 2993, 2994, 2994, 2998, 2981, 2974, 2995, 2995, 2997, 2993, 2915 2983, 2984, 2985, 2991, 2997, 2999, 2990, 3007, 2992, 3000, 2916 3003, 3003, 2989, 2998, 3000, 3005, 3005, 3006, 3009, 3008, 2917 3010, 3007, 3006, 3014, 2999, 3008, 3011, 3011, 3010, 3012, 2918 3009, 3015, 3016, 3017, 3012, 3018, 3020, 3016, 3021, 3022, 2919 3023, 3018, 3026, 3014, 3020, 3017, 3025, 3028, 3027, 3029, 2920 3031, 3015, 3032, 3036, 3029, 3031, 3033, 3021, 3026, 3022, 2921 2922 3023, 0, 3033, 3038, 3025, 3027, 3027, 3037, 3028, 3034, 2923 3037, 3043, 3032, 3036, 3034, 3043, 3038, 3041, 3041, 3042, 2924 3042, 3047, 3047, 3048, 3049, 3050, 3050, 3061, 3048, 3052, 2925 3052, 3053, 3053, 3056, 3053, 3054, 3054, 3056, 3054, 3055, 2926 3055, 3058, 3055, 3049, 3059, 3061, 3058, 3060, 3060, 3062, 2927 3065, 3066, 3067, 3059, 3068, 3068, 3071, 3067, 3072, 3074, 2928 3073, 3075, 3077, 3062, 3073, 3072, 3078, 0, 3074, 3082, 2929 3065, 3066, 3079, 3079, 3083, 3078, 3075, 3080, 3080, 3083, 2930 3077, 3071, 3081, 3081, 3082, 3084, 3085, 3086, 3087, 3088, 2931 3089, 3085, 3085, 3086, 3084, 3090, 3091, 3084, 3092, 3094, 2932 2933 3090, 3091, 3093, 3093, 3088, 3094, 3095, 3096, 3096, 3097, 2934 3097, 3089, 3095, 3087, 3098, 3099, 3105, 3092, 3102, 3102, 2935 3099, 3104, 3104, 3108, 3108, 3105, 3109, 3109, 3116, 3098, 2936 3110, 3110, 3111, 3111, 3112, 3112, 3113, 3113, 3114, 3114, 2937 3115, 3115, 3118, 3119, 3119, 3121, 3120, 3122, 3126, 3124, 2938 3128, 3118, 3125, 3125, 3116, 3120, 3127, 3121, 3129, 3129, 2939 3130, 3134, 3128, 3126, 3131, 3131, 3136, 3122, 3124, 3127, 2940 3135, 3137, 3137, 3135, 3140, 3130, 3138, 3140, 3141, 3134, 2941 3143, 3142, 3144, 3146, 3141, 3143, 3145, 3148, 3149, 3156, 2942 3153, 3173, 3136, 3148, 3138, 3142, 3152, 3149, 3165, 3146, 2943 2944 3152, 3144, 3176, 3165, 3145, 3153, 3166, 3168, 3179, 3166, 2945 3169, 3169, 3170, 3170, 3173, 3156, 3171, 3171, 3174, 3175, 2946 3168, 3177, 3176, 3175, 3181, 3180, 3183, 3174, 3186, 3181, 2947 3185, 3179, 3184, 3184, 3187, 3177, 3180, 3188, 3189, 3190, 2948 3191, 3183, 3197, 3185, 3192, 3193, 3194, 3186, 3203, 3191, 2949 3193, 3202, 3187, 3188, 3190, 3195, 3192, 3196, 3196, 3198, 2950 3195, 3210, 3197, 3189, 3198, 3202, 3205, 3194, 3203, 3204, 2951 3204, 3206, 3206, 3207, 3207, 3205, 3208, 3208, 3209, 3209, 2952 3210, 3211, 3212, 3213, 3214, 3212, 3215, 3216, 3213, 3214, 2953 3217, 3218, 3219, 3220, 3221, 3221, 3217, 3222, 3220, 3223, 2954 2955 3223, 3211, 3216, 3226, 3219, 3218, 3225, 3225, 3227, 3228, 2956 3228, 3215, 3232, 3230, 3235, 3235, 3237, 3222, 3226, 3236, 2957 3236, 3238, 3241, 3239, 3237, 3240, 3242, 3227, 3230, 3239, 2958 3232, 3240, 3243, 3244, 3245, 3245, 3241, 3250, 3244, 3242, 2959 3238, 3247, 3247, 3251, 3254, 3253, 3256, 3257, 3254, 3258, 2960 3262, 3243, 3257, 3261, 3259, 3262, 3260, 3263, 3250, 3253, 2961 3264, 3264, 3263, 3251, 3267, 3268, 3256, 3259, 3258, 3260, 2962 3269, 3271, 3261, 3270, 3270, 3272, 3271, 3273, 3273, 3277, 2963 3274, 3272, 3275, 3268, 3267, 3274, 3276, 3275, 3278, 3269, 2964 3281, 3276, 3280, 3280, 3278, 3281, 3282, 3282, 3277, 3284, 2965 2966 3285, 3286, 3287, 3284, 3288, 3289, 3290, 3291, 3286, 3293, 2967 3293, 3289, 3295, 3295, 3298, 3296, 3299, 3297, 3300, 3285, 2968 3291, 3287, 3297, 3288, 3296, 3290, 3303, 3296, 3301, 3301, 2969 3305, 3300, 3302, 3298, 3307, 3299, 3312, 3302, 0, 3303, 2970 3306, 3306, 3308, 3308, 3309, 3309, 3310, 3311, 3313, 3313, 2971 3319, 3310, 3314, 3307, 3311, 3312, 3305, 3314, 3315, 3317, 2972 3315, 3316, 3316, 3318, 3321, 3324, 3317, 3320, 3328, 3319, 2973 3318, 3326, 3320, 3323, 3323, 3327, 3326, 3329, 3330, 3330, 2974 3327, 3332, 3332, 3321, 3324, 3333, 3334, 3328, 3335, 3335, 2975 3336, 3336, 3337, 3339, 3339, 3341, 3329, 3340, 3340, 3337, 2976 2977 3347, 3343, 3341, 3346, 3333, 3334, 3343, 3348, 3346, 3349, 2978 3349, 3350, 3350, 0, 0, 0, 0, 0, 0, 3347, 2979 0, 0, 0, 0, 0, 0, 3348, 3354, 3354, 3354, 2980 3354, 3354, 3354, 3354, 3355, 3355, 3355, 3355, 3355, 3355, 2981 3355, 3356, 3356, 3356, 3356, 3356, 3356, 3356, 3357, 3357, 2982 3357, 3357, 3357, 3357, 3357, 3358, 3358, 3358, 3358, 3358, 2983 3358, 3358, 3359, 3359, 3359, 3359, 3359, 3359, 3359, 3360, 2984 3360, 3360, 3360, 3360, 3360, 3360, 3362, 3362, 0, 3362, 2985 3362, 3362, 3362, 3363, 3363, 0, 0, 0, 3363, 3363, 2986 3364, 3364, 0, 0, 3364, 0, 3364, 3365, 0, 0, 2987 2988 0, 0, 0, 3365, 3366, 3366, 0, 0, 0, 3366, 2989 3366, 3367, 0, 0, 0, 0, 0, 3367, 3368, 3368, 2990 0, 3368, 3368, 3368, 3368, 3369, 0, 0, 0, 0, 2991 0, 3369, 3370, 3370, 0, 0, 0, 3370, 3370, 3371, 2992 3371, 0, 3371, 3371, 3371, 3371, 3353, 3353, 3353, 3353, 2993 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 2994 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 2995 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 3353, 2996 3353, 3353, 3353, 3353, 3353, 3353, 3353 2997 } ; 2998 2999 static yy_state_type yy_last_accepting_state; 3000 static char *yy_last_accepting_cpos; 3001 3002 extern int yy_flex_debug; 3003 int yy_flex_debug = 0; 3004 3005 /* The intent behind this definition is that it'll catch 3006 * any uses of REJECT which flex missed. 3007 */ 3008 #define REJECT reject_used_but_not_detected 3009 static int yy_more_flag = 0; 3010 static int yy_more_len = 0; 3011 #define yymore() ((yy_more_flag) = 1) 3012 #define YY_MORE_ADJ (yy_more_len) 3013 #define YY_RESTORE_YY_MORE_OFFSET 3014 char *yytext; 3015 #line 1 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3016 #line 2 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3017 /* 3018 * configlexer.lex - lexical analyzer for unbound config file 3019 * 3020 * Copyright (c) 2001-2006, NLnet Labs. All rights reserved 3021 * 3022 * See LICENSE for the license. 3023 * 3024 */ 3025 3026 /* because flex keeps having sign-unsigned compare problems that are unfixed*/ 3027 #if defined(__clang__)||(defined(__GNUC__)&&((__GNUC__ >4)||(defined(__GNUC_MINOR__)&&(__GNUC__ ==4)&&(__GNUC_MINOR__ >=2)))) 3028 #pragma GCC diagnostic ignored "-Wsign-compare" 3029 #endif 3030 3031 #include <ctype.h> 3032 #include <strings.h> 3033 #ifdef HAVE_GLOB_H 3034 # include <glob.h> 3035 #endif 3036 3037 #include "util/config_file.h" 3038 #include "util/configparser.h" 3039 void ub_c_error(const char *message); 3040 3041 #if 0 3042 #define LEXOUT(s) printf s /* used ONLY when debugging */ 3043 #else 3044 #define LEXOUT(s) 3045 #endif 3046 3047 /** avoid warning in about fwrite return value */ 3048 #define ECHO ub_c_error_msg("syntax error at text: %s", yytext) 3049 3050 /** A parser variable, this is a statement in the config file which is 3051 * of the form variable: value1 value2 ... nargs is the number of values. */ 3052 #define YDVAR(nargs, var) \ 3053 num_args=(nargs); \ 3054 LEXOUT(("v(%s%d) ", yytext, num_args)); \ 3055 if(num_args > 0) { BEGIN(val); } \ 3056 return (var); 3057 3058 struct inc_state { 3059 char* filename; 3060 int line; 3061 YY_BUFFER_STATE buffer; 3062 struct inc_state* next; 3063 int inc_toplevel; 3064 }; 3065 static struct inc_state* config_include_stack = NULL; 3066 static int inc_depth = 0; 3067 static int inc_prev = 0; 3068 static int num_args = 0; 3069 static int inc_toplevel = 0; 3070 3071 void init_cfg_parse(void) 3072 { 3073 config_include_stack = NULL; 3074 inc_depth = 0; 3075 inc_prev = 0; 3076 num_args = 0; 3077 inc_toplevel = 0; 3078 } 3079 3080 static void config_start_include(const char* filename, int toplevel) 3081 { 3082 FILE *input; 3083 struct inc_state* s; 3084 char* nm; 3085 if(inc_depth+1 > 100000) { 3086 ub_c_error_msg("too many include files"); 3087 return; 3088 } 3089 if(*filename == '\0') { 3090 ub_c_error_msg("empty include file name"); 3091 return; 3092 } 3093 s = (struct inc_state*)malloc(sizeof(*s)); 3094 if(!s) { 3095 ub_c_error_msg("include %s: malloc failure", filename); 3096 return; 3097 } 3098 if(cfg_parser->chroot && strncmp(filename, cfg_parser->chroot, 3099 strlen(cfg_parser->chroot)) == 0) { 3100 filename += strlen(cfg_parser->chroot); 3101 } 3102 nm = strdup(filename); 3103 if(!nm) { 3104 ub_c_error_msg("include %s: strdup failure", filename); 3105 free(s); 3106 return; 3107 } 3108 input = fopen(filename, "r"); 3109 if(!input) { 3110 ub_c_error_msg("cannot open include file '%s': %s", 3111 filename, strerror(errno)); 3112 free(s); 3113 free(nm); 3114 return; 3115 } 3116 LEXOUT(("switch_to_include_file(%s)\n", filename)); 3117 inc_depth++; 3118 s->filename = cfg_parser->filename; 3119 s->line = cfg_parser->line; 3120 s->buffer = YY_CURRENT_BUFFER; 3121 s->inc_toplevel = inc_toplevel; 3122 s->next = config_include_stack; 3123 config_include_stack = s; 3124 cfg_parser->filename = nm; 3125 cfg_parser->line = 1; 3126 inc_toplevel = toplevel; 3127 yy_switch_to_buffer(yy_create_buffer(input,YY_BUF_SIZE)); 3128 } 3129 3130 static void config_start_include_glob(const char* filename, int toplevel) 3131 { 3132 3133 /* check for wildcards */ 3134 #ifdef HAVE_GLOB 3135 glob_t g; 3136 int i, r, flags; 3137 if(!(!strchr(filename, '*') && !strchr(filename, '?') && !strchr(filename, '[') && 3138 !strchr(filename, '{') && !strchr(filename, '~'))) { 3139 flags = 0 3140 #ifdef GLOB_ERR 3141 | GLOB_ERR 3142 #endif 3143 /* do not set GLOB_NOSORT so the results are sorted 3144 and in a predictable order. */ 3145 #ifdef GLOB_BRACE 3146 | GLOB_BRACE 3147 #endif 3148 #ifdef GLOB_TILDE 3149 | GLOB_TILDE 3150 #endif 3151 ; 3152 memset(&g, 0, sizeof(g)); 3153 if(cfg_parser->chroot && strncmp(filename, cfg_parser->chroot, 3154 strlen(cfg_parser->chroot)) == 0) { 3155 filename += strlen(cfg_parser->chroot); 3156 } 3157 r = glob(filename, flags, NULL, &g); 3158 if(r) { 3159 /* some error */ 3160 globfree(&g); 3161 if(r == GLOB_NOMATCH) 3162 return; /* no matches for pattern */ 3163 config_start_include(filename, toplevel); /* let original deal with it */ 3164 return; 3165 } 3166 /* process files found, if any */ 3167 for(i=(int)g.gl_pathc-1; i>=0; i--) { 3168 config_start_include(g.gl_pathv[i], toplevel); 3169 } 3170 globfree(&g); 3171 return; 3172 } 3173 #endif /* HAVE_GLOB */ 3174 3175 config_start_include(filename, toplevel); 3176 } 3177 3178 static void config_end_include(void) 3179 { 3180 struct inc_state* s = config_include_stack; 3181 --inc_depth; 3182 if(!s) return; 3183 free(cfg_parser->filename); 3184 cfg_parser->filename = s->filename; 3185 cfg_parser->line = s->line; 3186 yy_delete_buffer(YY_CURRENT_BUFFER); 3187 yy_switch_to_buffer(s->buffer); 3188 config_include_stack = s->next; 3189 inc_toplevel = s->inc_toplevel; 3190 free(s); 3191 } 3192 3193 #ifndef yy_set_bol /* compat definition, for flex 2.4.6 */ 3194 #define yy_set_bol(at_bol) \ 3195 { \ 3196 if ( ! yy_current_buffer ) \ 3197 yy_current_buffer = yy_create_buffer(yyin,YY_BUF_SIZE ); \ 3198 yy_current_buffer->yy_ch_buf[0] = ((at_bol)?'\n':' '); \ 3199 } 3200 #endif 3201 3202 #define YY_NO_INPUT 1 3203 #line 191 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3204 #ifndef YY_NO_UNPUT 3205 #define YY_NO_UNPUT 1 3206 #endif 3207 #ifndef YY_NO_INPUT 3208 #define YY_NO_INPUT 1 3209 #endif 3210 3211 #line 3210 "<stdout>" 3212 3213 #define INITIAL 0 3214 #define quotedstring 1 3215 #define singlequotedstr 2 3216 #define include 3 3217 #define include_quoted 4 3218 #define val 5 3219 #define include_toplevel 6 3220 #define include_toplevel_quoted 7 3221 3222 #ifndef YY_NO_UNISTD_H 3223 /* Special case for "unistd.h", since it is non-ANSI. We include it way 3224 * down here because we want the user's section 1 to have been scanned first. 3225 * The user has a chance to override it with an option. 3226 */ 3227 #include <unistd.h> 3228 #endif 3229 3230 #ifndef YY_EXTRA_TYPE 3231 #define YY_EXTRA_TYPE void * 3232 #endif 3233 3234 static int yy_init_globals (void ); 3235 3236 /* Accessor methods to globals. 3237 These are made visible to non-reentrant scanners for convenience. */ 3238 3239 int yylex_destroy (void ); 3240 3241 int yyget_debug (void ); 3242 3243 void yyset_debug (int debug_flag ); 3244 3245 YY_EXTRA_TYPE yyget_extra (void ); 3246 3247 void yyset_extra (YY_EXTRA_TYPE user_defined ); 3248 3249 FILE *yyget_in (void ); 3250 3251 void yyset_in (FILE * in_str ); 3252 3253 FILE *yyget_out (void ); 3254 3255 void yyset_out (FILE * out_str ); 3256 3257 yy_size_t yyget_leng (void ); 3258 3259 char *yyget_text (void ); 3260 3261 int yyget_lineno (void ); 3262 3263 void yyset_lineno (int line_number ); 3264 3265 /* Macros after this point can all be overridden by user definitions in 3266 * section 1. 3267 */ 3268 3269 #ifndef YY_SKIP_YYWRAP 3270 #ifdef __cplusplus 3271 extern "C" int yywrap (void ); 3272 #else 3273 extern int yywrap (void ); 3274 #endif 3275 #endif 3276 3277 #ifndef yytext_ptr 3278 static void yy_flex_strncpy (char *,yyconst char *,int ); 3279 #endif 3280 3281 #ifdef YY_NEED_STRLEN 3282 static int yy_flex_strlen (yyconst char * ); 3283 #endif 3284 3285 #ifndef YY_NO_INPUT 3286 3287 #ifdef __cplusplus 3288 static int yyinput (void ); 3289 #else 3290 static int input (void ); 3291 #endif 3292 3293 #endif 3294 3295 /* Amount of stuff to slurp up with each read. */ 3296 #ifndef YY_READ_BUF_SIZE 3297 #define YY_READ_BUF_SIZE 8192 3298 #endif 3299 3300 /* Copy whatever the last rule matched to the standard output. */ 3301 #ifndef ECHO 3302 /* This used to be an fputs(), but since the string might contain NUL's, 3303 * we now use fwrite(). 3304 */ 3305 #define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0) 3306 #endif 3307 3308 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, 3309 * is returned in "result". 3310 */ 3311 #ifndef YY_INPUT 3312 #define YY_INPUT(buf,result,max_size) \ 3313 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ 3314 { \ 3315 int c = '*'; \ 3316 size_t n; \ 3317 for ( n = 0; n < max_size && \ 3318 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ 3319 buf[n] = (char) c; \ 3320 if ( c == '\n' ) \ 3321 buf[n++] = (char) c; \ 3322 if ( c == EOF && ferror( yyin ) ) \ 3323 YY_FATAL_ERROR( "input in flex scanner failed" ); \ 3324 result = n; \ 3325 } \ 3326 else \ 3327 { \ 3328 errno=0; \ 3329 while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \ 3330 { \ 3331 if( errno != EINTR) \ 3332 { \ 3333 YY_FATAL_ERROR( "input in flex scanner failed" ); \ 3334 break; \ 3335 } \ 3336 errno=0; \ 3337 clearerr(yyin); \ 3338 } \ 3339 }\ 3340 \ 3341 3342 #endif 3343 3344 /* No semi-colon after return; correct usage is to write "yyterminate();" - 3345 * we don't want an extra ';' after the "return" because that will cause 3346 * some compilers to complain about unreachable statements. 3347 */ 3348 #ifndef yyterminate 3349 #define yyterminate() return YY_NULL 3350 #endif 3351 3352 /* Number of entries by which start-condition stack grows. */ 3353 #ifndef YY_START_STACK_INCR 3354 #define YY_START_STACK_INCR 25 3355 #endif 3356 3357 /* Report a fatal error. */ 3358 #ifndef YY_FATAL_ERROR 3359 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg ) 3360 #endif 3361 3362 /* end tables serialization structures and prototypes */ 3363 3364 /* Default declaration of generated scanner - a define so the user can 3365 * easily add parameters. 3366 */ 3367 #ifndef YY_DECL 3368 #define YY_DECL_IS_OURS 1 3369 3370 extern int yylex (void); 3371 3372 #define YY_DECL int yylex (void) 3373 #endif /* !YY_DECL */ 3374 3375 /* Code executed at the beginning of each rule, after yytext and yyleng 3376 * have been set up. 3377 */ 3378 #ifndef YY_USER_ACTION 3379 #define YY_USER_ACTION 3380 #endif 3381 3382 /* Code executed at the end of each rule. */ 3383 #ifndef YY_BREAK 3384 #define YY_BREAK break; 3385 #endif 3386 3387 #define YY_RULE_SETUP \ 3388 YY_USER_ACTION 3389 3390 /** The main scanner function which does all the work. 3391 */ 3392 YY_DECL 3393 { 3394 yy_state_type yy_current_state; 3395 char *yy_cp, *yy_bp; 3396 int yy_act; 3397 3398 if ( !(yy_init) ) 3399 { 3400 (yy_init) = 1; 3401 3402 #ifdef YY_USER_INIT 3403 YY_USER_INIT; 3404 #endif 3405 3406 if ( ! (yy_start) ) 3407 (yy_start) = 1; /* first start state */ 3408 3409 if ( ! yyin ) { 3410 yyin = stdin; 3411 } 3412 3413 if ( ! yyout ) { 3414 yyout = stdout; 3415 } 3416 3417 if ( ! YY_CURRENT_BUFFER ) { 3418 yyensure_buffer_stack (); 3419 YY_CURRENT_BUFFER_LVALUE = 3420 yy_create_buffer(yyin,YY_BUF_SIZE ); 3421 } 3422 3423 yy_load_buffer_state( ); 3424 } 3425 3426 { 3427 #line 211 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3428 3429 #line 3428 "<stdout>" 3430 3431 while ( 1 ) /* loops until end-of-file is reached */ 3432 { 3433 (yy_more_len) = 0; 3434 if ( (yy_more_flag) ) 3435 { 3436 (yy_more_len) = (yy_c_buf_p) - (yytext_ptr); 3437 (yy_more_flag) = 0; 3438 } 3439 yy_cp = (yy_c_buf_p); 3440 3441 /* Support of yytext. */ 3442 *yy_cp = (yy_hold_char); 3443 3444 /* yy_bp points to the position in yy_ch_buf of the start of 3445 * the current run. 3446 */ 3447 yy_bp = yy_cp; 3448 3449 yy_current_state = (yy_start); 3450 yy_match: 3451 do 3452 { 3453 YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ; 3454 if ( yy_accept[yy_current_state] ) 3455 { 3456 (yy_last_accepting_state) = yy_current_state; 3457 (yy_last_accepting_cpos) = yy_cp; 3458 } 3459 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 3460 { 3461 yy_current_state = (int) yy_def[yy_current_state]; 3462 if ( yy_current_state >= 3354 ) 3463 yy_c = yy_meta[(unsigned int) yy_c]; 3464 } 3465 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; 3466 ++yy_cp; 3467 } 3468 while ( yy_base[yy_current_state] != 6547 ); 3469 3470 yy_find_action: 3471 yy_act = yy_accept[yy_current_state]; 3472 if ( yy_act == 0 ) 3473 { /* have to back up */ 3474 yy_cp = (yy_last_accepting_cpos); 3475 yy_current_state = (yy_last_accepting_state); 3476 yy_act = yy_accept[yy_current_state]; 3477 } 3478 3479 YY_DO_BEFORE_ACTION; 3480 3481 do_action: /* This label is used only to access EOF actions. */ 3482 3483 switch ( yy_act ) 3484 { /* beginning of action switch */ 3485 case 0: /* must back up */ 3486 /* undo the effects of YY_DO_BEFORE_ACTION */ 3487 *yy_cp = (yy_hold_char); 3488 yy_cp = (yy_last_accepting_cpos); 3489 yy_current_state = (yy_last_accepting_state); 3490 goto yy_find_action; 3491 3492 case 1: 3493 YY_RULE_SETUP 3494 #line 212 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3495 { 3496 LEXOUT(("SP ")); /* ignore */ } 3497 YY_BREAK 3498 case 2: 3499 YY_RULE_SETUP 3500 #line 214 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3501 { 3502 /* note that flex makes the longest match and '.' is any but not nl */ 3503 LEXOUT(("comment(%s) ", yytext)); /* ignore */ } 3504 YY_BREAK 3505 case 3: 3506 YY_RULE_SETUP 3507 #line 217 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3508 { YDVAR(0, VAR_SERVER) } 3509 YY_BREAK 3510 case 4: 3511 YY_RULE_SETUP 3512 #line 218 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3513 { YDVAR(1, VAR_QNAME_MINIMISATION) } 3514 YY_BREAK 3515 case 5: 3516 YY_RULE_SETUP 3517 #line 219 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3518 { YDVAR(1, VAR_QNAME_MINIMISATION_STRICT) } 3519 YY_BREAK 3520 case 6: 3521 YY_RULE_SETUP 3522 #line 220 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3523 { YDVAR(1, VAR_NUM_THREADS) } 3524 YY_BREAK 3525 case 7: 3526 YY_RULE_SETUP 3527 #line 221 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3528 { YDVAR(1, VAR_VERBOSITY) } 3529 YY_BREAK 3530 case 8: 3531 YY_RULE_SETUP 3532 #line 222 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3533 { YDVAR(1, VAR_PORT) } 3534 YY_BREAK 3535 case 9: 3536 YY_RULE_SETUP 3537 #line 223 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3538 { YDVAR(1, VAR_OUTGOING_RANGE) } 3539 YY_BREAK 3540 case 10: 3541 YY_RULE_SETUP 3542 #line 224 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3543 { YDVAR(1, VAR_OUTGOING_PORT_PERMIT) } 3544 YY_BREAK 3545 case 11: 3546 YY_RULE_SETUP 3547 #line 225 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3548 { YDVAR(1, VAR_OUTGOING_PORT_AVOID) } 3549 YY_BREAK 3550 case 12: 3551 YY_RULE_SETUP 3552 #line 226 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3553 { YDVAR(1, VAR_OUTGOING_NUM_TCP) } 3554 YY_BREAK 3555 case 13: 3556 YY_RULE_SETUP 3557 #line 227 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3558 { YDVAR(1, VAR_INCOMING_NUM_TCP) } 3559 YY_BREAK 3560 case 14: 3561 YY_RULE_SETUP 3562 #line 228 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3563 { YDVAR(1, VAR_DO_IP4) } 3564 YY_BREAK 3565 case 15: 3566 YY_RULE_SETUP 3567 #line 229 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3568 { YDVAR(1, VAR_DO_IP6) } 3569 YY_BREAK 3570 case 16: 3571 YY_RULE_SETUP 3572 #line 230 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3573 { YDVAR(1, VAR_PREFER_IP4) } 3574 YY_BREAK 3575 case 17: 3576 YY_RULE_SETUP 3577 #line 231 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3578 { YDVAR(1, VAR_PREFER_IP6) } 3579 YY_BREAK 3580 case 18: 3581 YY_RULE_SETUP 3582 #line 232 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3583 { YDVAR(1, VAR_DO_UDP) } 3584 YY_BREAK 3585 case 19: 3586 YY_RULE_SETUP 3587 #line 233 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3588 { YDVAR(1, VAR_DO_TCP) } 3589 YY_BREAK 3590 case 20: 3591 YY_RULE_SETUP 3592 #line 234 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3593 { YDVAR(1, VAR_TCP_UPSTREAM) } 3594 YY_BREAK 3595 case 21: 3596 YY_RULE_SETUP 3597 #line 235 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3598 { YDVAR(1, VAR_TCP_MSS) } 3599 YY_BREAK 3600 case 22: 3601 YY_RULE_SETUP 3602 #line 236 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3603 { YDVAR(1, VAR_OUTGOING_TCP_MSS) } 3604 YY_BREAK 3605 case 23: 3606 YY_RULE_SETUP 3607 #line 237 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3608 { YDVAR(1, VAR_TCP_IDLE_TIMEOUT) } 3609 YY_BREAK 3610 case 24: 3611 YY_RULE_SETUP 3612 #line 238 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3613 { YDVAR(1, VAR_EDNS_TCP_KEEPALIVE) } 3614 YY_BREAK 3615 case 25: 3616 YY_RULE_SETUP 3617 #line 239 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3618 { YDVAR(1, VAR_EDNS_TCP_KEEPALIVE_TIMEOUT) } 3619 YY_BREAK 3620 case 26: 3621 YY_RULE_SETUP 3622 #line 240 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3623 { YDVAR(1, VAR_SSL_UPSTREAM) } 3624 YY_BREAK 3625 case 27: 3626 YY_RULE_SETUP 3627 #line 241 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3628 { YDVAR(1, VAR_SSL_UPSTREAM) } 3629 YY_BREAK 3630 case 28: 3631 YY_RULE_SETUP 3632 #line 242 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3633 { YDVAR(1, VAR_SSL_SERVICE_KEY) } 3634 YY_BREAK 3635 case 29: 3636 YY_RULE_SETUP 3637 #line 243 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3638 { YDVAR(1, VAR_SSL_SERVICE_KEY) } 3639 YY_BREAK 3640 case 30: 3641 YY_RULE_SETUP 3642 #line 244 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3643 { YDVAR(1, VAR_SSL_SERVICE_PEM) } 3644 YY_BREAK 3645 case 31: 3646 YY_RULE_SETUP 3647 #line 245 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3648 { YDVAR(1, VAR_SSL_SERVICE_PEM) } 3649 YY_BREAK 3650 case 32: 3651 YY_RULE_SETUP 3652 #line 246 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3653 { YDVAR(1, VAR_SSL_PORT) } 3654 YY_BREAK 3655 case 33: 3656 YY_RULE_SETUP 3657 #line 247 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3658 { YDVAR(1, VAR_SSL_PORT) } 3659 YY_BREAK 3660 case 34: 3661 YY_RULE_SETUP 3662 #line 248 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3663 { YDVAR(1, VAR_TLS_CERT_BUNDLE) } 3664 YY_BREAK 3665 case 35: 3666 YY_RULE_SETUP 3667 #line 249 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3668 { YDVAR(1, VAR_TLS_CERT_BUNDLE) } 3669 YY_BREAK 3670 case 36: 3671 YY_RULE_SETUP 3672 #line 250 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3673 { YDVAR(1, VAR_TLS_WIN_CERT) } 3674 YY_BREAK 3675 case 37: 3676 YY_RULE_SETUP 3677 #line 251 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3678 { YDVAR(1, VAR_TLS_ADDITIONAL_PORT) } 3679 YY_BREAK 3680 case 38: 3681 YY_RULE_SETUP 3682 #line 252 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3683 { YDVAR(1, VAR_TLS_ADDITIONAL_PORT) } 3684 YY_BREAK 3685 case 39: 3686 YY_RULE_SETUP 3687 #line 253 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3688 { YDVAR(1, VAR_TLS_ADDITIONAL_PORT) } 3689 YY_BREAK 3690 case 40: 3691 YY_RULE_SETUP 3692 #line 254 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3693 { YDVAR(1, VAR_TLS_ADDITIONAL_PORT) } 3694 YY_BREAK 3695 case 41: 3696 YY_RULE_SETUP 3697 #line 255 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3698 { YDVAR(1, VAR_TLS_SESSION_TICKET_KEYS) } 3699 YY_BREAK 3700 case 42: 3701 YY_RULE_SETUP 3702 #line 256 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3703 { YDVAR(1, VAR_TLS_CIPHERS) } 3704 YY_BREAK 3705 case 43: 3706 YY_RULE_SETUP 3707 #line 257 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3708 { YDVAR(1, VAR_TLS_CIPHERSUITES) } 3709 YY_BREAK 3710 case 44: 3711 YY_RULE_SETUP 3712 #line 258 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3713 { YDVAR(1, VAR_TLS_USE_SNI) } 3714 YY_BREAK 3715 case 45: 3716 YY_RULE_SETUP 3717 #line 259 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3718 { YDVAR(1, VAR_HTTPS_PORT) } 3719 YY_BREAK 3720 case 46: 3721 YY_RULE_SETUP 3722 #line 260 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3723 { YDVAR(1, VAR_HTTP_ENDPOINT) } 3724 YY_BREAK 3725 case 47: 3726 YY_RULE_SETUP 3727 #line 261 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3728 { YDVAR(1, VAR_HTTP_MAX_STREAMS) } 3729 YY_BREAK 3730 case 48: 3731 YY_RULE_SETUP 3732 #line 262 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3733 { YDVAR(1, VAR_HTTP_QUERY_BUFFER_SIZE) } 3734 YY_BREAK 3735 case 49: 3736 YY_RULE_SETUP 3737 #line 263 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3738 { YDVAR(1, VAR_HTTP_RESPONSE_BUFFER_SIZE) } 3739 YY_BREAK 3740 case 50: 3741 YY_RULE_SETUP 3742 #line 264 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3743 { YDVAR(1, VAR_HTTP_NODELAY) } 3744 YY_BREAK 3745 case 51: 3746 YY_RULE_SETUP 3747 #line 265 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3748 { YDVAR(1, VAR_HTTP_NOTLS_DOWNSTREAM) } 3749 YY_BREAK 3750 case 52: 3751 YY_RULE_SETUP 3752 #line 266 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3753 { YDVAR(1, VAR_USE_SYSTEMD) } 3754 YY_BREAK 3755 case 53: 3756 YY_RULE_SETUP 3757 #line 267 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3758 { YDVAR(1, VAR_DO_DAEMONIZE) } 3759 YY_BREAK 3760 case 54: 3761 YY_RULE_SETUP 3762 #line 268 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3763 { YDVAR(1, VAR_INTERFACE) } 3764 YY_BREAK 3765 case 55: 3766 YY_RULE_SETUP 3767 #line 269 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3768 { YDVAR(1, VAR_INTERFACE) } 3769 YY_BREAK 3770 case 56: 3771 YY_RULE_SETUP 3772 #line 270 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3773 { YDVAR(1, VAR_OUTGOING_INTERFACE) } 3774 YY_BREAK 3775 case 57: 3776 YY_RULE_SETUP 3777 #line 271 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3778 { YDVAR(1, VAR_INTERFACE_AUTOMATIC) } 3779 YY_BREAK 3780 case 58: 3781 YY_RULE_SETUP 3782 #line 272 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3783 { YDVAR(1, VAR_SO_RCVBUF) } 3784 YY_BREAK 3785 case 59: 3786 YY_RULE_SETUP 3787 #line 273 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3788 { YDVAR(1, VAR_SO_SNDBUF) } 3789 YY_BREAK 3790 case 60: 3791 YY_RULE_SETUP 3792 #line 274 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3793 { YDVAR(1, VAR_SO_REUSEPORT) } 3794 YY_BREAK 3795 case 61: 3796 YY_RULE_SETUP 3797 #line 275 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3798 { YDVAR(1, VAR_IP_TRANSPARENT) } 3799 YY_BREAK 3800 case 62: 3801 YY_RULE_SETUP 3802 #line 276 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3803 { YDVAR(1, VAR_IP_FREEBIND) } 3804 YY_BREAK 3805 case 63: 3806 YY_RULE_SETUP 3807 #line 277 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3808 { YDVAR(1, VAR_IP_DSCP) } 3809 YY_BREAK 3810 case 64: 3811 YY_RULE_SETUP 3812 #line 278 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3813 { YDVAR(1, VAR_CHROOT) } 3814 YY_BREAK 3815 case 65: 3816 YY_RULE_SETUP 3817 #line 279 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3818 { YDVAR(1, VAR_USERNAME) } 3819 YY_BREAK 3820 case 66: 3821 YY_RULE_SETUP 3822 #line 280 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3823 { YDVAR(1, VAR_DIRECTORY) } 3824 YY_BREAK 3825 case 67: 3826 YY_RULE_SETUP 3827 #line 281 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3828 { YDVAR(1, VAR_LOGFILE) } 3829 YY_BREAK 3830 case 68: 3831 YY_RULE_SETUP 3832 #line 282 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3833 { YDVAR(1, VAR_PIDFILE) } 3834 YY_BREAK 3835 case 69: 3836 YY_RULE_SETUP 3837 #line 283 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3838 { YDVAR(1, VAR_ROOT_HINTS) } 3839 YY_BREAK 3840 case 70: 3841 YY_RULE_SETUP 3842 #line 284 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3843 { YDVAR(1, VAR_STREAM_WAIT_SIZE) } 3844 YY_BREAK 3845 case 71: 3846 YY_RULE_SETUP 3847 #line 285 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3848 { YDVAR(1, VAR_EDNS_BUFFER_SIZE) } 3849 YY_BREAK 3850 case 72: 3851 YY_RULE_SETUP 3852 #line 286 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3853 { YDVAR(1, VAR_MSG_BUFFER_SIZE) } 3854 YY_BREAK 3855 case 73: 3856 YY_RULE_SETUP 3857 #line 287 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3858 { YDVAR(1, VAR_MSG_CACHE_SIZE) } 3859 YY_BREAK 3860 case 74: 3861 YY_RULE_SETUP 3862 #line 288 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3863 { YDVAR(1, VAR_MSG_CACHE_SLABS) } 3864 YY_BREAK 3865 case 75: 3866 YY_RULE_SETUP 3867 #line 289 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3868 { YDVAR(1, VAR_RRSET_CACHE_SIZE) } 3869 YY_BREAK 3870 case 76: 3871 YY_RULE_SETUP 3872 #line 290 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3873 { YDVAR(1, VAR_RRSET_CACHE_SLABS) } 3874 YY_BREAK 3875 case 77: 3876 YY_RULE_SETUP 3877 #line 291 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3878 { YDVAR(1, VAR_CACHE_MAX_TTL) } 3879 YY_BREAK 3880 case 78: 3881 YY_RULE_SETUP 3882 #line 292 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3883 { YDVAR(1, VAR_CACHE_MAX_NEGATIVE_TTL) } 3884 YY_BREAK 3885 case 79: 3886 YY_RULE_SETUP 3887 #line 293 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3888 { YDVAR(1, VAR_CACHE_MIN_TTL) } 3889 YY_BREAK 3890 case 80: 3891 YY_RULE_SETUP 3892 #line 294 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3893 { YDVAR(1, VAR_INFRA_HOST_TTL) } 3894 YY_BREAK 3895 case 81: 3896 YY_RULE_SETUP 3897 #line 295 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3898 { YDVAR(1, VAR_INFRA_LAME_TTL) } 3899 YY_BREAK 3900 case 82: 3901 YY_RULE_SETUP 3902 #line 296 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3903 { YDVAR(1, VAR_INFRA_CACHE_SLABS) } 3904 YY_BREAK 3905 case 83: 3906 YY_RULE_SETUP 3907 #line 297 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3908 { YDVAR(1, VAR_INFRA_CACHE_NUMHOSTS) } 3909 YY_BREAK 3910 case 84: 3911 YY_RULE_SETUP 3912 #line 298 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3913 { YDVAR(1, VAR_INFRA_CACHE_LAME_SIZE) } 3914 YY_BREAK 3915 case 85: 3916 YY_RULE_SETUP 3917 #line 299 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3918 { YDVAR(1, VAR_INFRA_CACHE_MIN_RTT) } 3919 YY_BREAK 3920 case 86: 3921 YY_RULE_SETUP 3922 #line 300 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3923 { YDVAR(1, VAR_INFRA_KEEP_PROBING) } 3924 YY_BREAK 3925 case 87: 3926 YY_RULE_SETUP 3927 #line 301 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3928 { YDVAR(1, VAR_NUM_QUERIES_PER_THREAD) } 3929 YY_BREAK 3930 case 88: 3931 YY_RULE_SETUP 3932 #line 302 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3933 { YDVAR(1, VAR_JOSTLE_TIMEOUT) } 3934 YY_BREAK 3935 case 89: 3936 YY_RULE_SETUP 3937 #line 303 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3938 { YDVAR(1, VAR_DELAY_CLOSE) } 3939 YY_BREAK 3940 case 90: 3941 YY_RULE_SETUP 3942 #line 304 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3943 { YDVAR(1, VAR_UDP_CONNECT) } 3944 YY_BREAK 3945 case 91: 3946 YY_RULE_SETUP 3947 #line 305 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3948 { YDVAR(1, VAR_TARGET_FETCH_POLICY) } 3949 YY_BREAK 3950 case 92: 3951 YY_RULE_SETUP 3952 #line 306 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3953 { YDVAR(1, VAR_HARDEN_SHORT_BUFSIZE) } 3954 YY_BREAK 3955 case 93: 3956 YY_RULE_SETUP 3957 #line 307 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3958 { YDVAR(1, VAR_HARDEN_LARGE_QUERIES) } 3959 YY_BREAK 3960 case 94: 3961 YY_RULE_SETUP 3962 #line 308 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3963 { YDVAR(1, VAR_HARDEN_GLUE) } 3964 YY_BREAK 3965 case 95: 3966 YY_RULE_SETUP 3967 #line 309 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3968 { YDVAR(1, VAR_HARDEN_DNSSEC_STRIPPED) } 3969 YY_BREAK 3970 case 96: 3971 YY_RULE_SETUP 3972 #line 310 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3973 { YDVAR(1, VAR_HARDEN_BELOW_NXDOMAIN) } 3974 YY_BREAK 3975 case 97: 3976 YY_RULE_SETUP 3977 #line 311 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3978 { YDVAR(1, VAR_HARDEN_REFERRAL_PATH) } 3979 YY_BREAK 3980 case 98: 3981 YY_RULE_SETUP 3982 #line 312 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3983 { YDVAR(1, VAR_HARDEN_ALGO_DOWNGRADE) } 3984 YY_BREAK 3985 case 99: 3986 YY_RULE_SETUP 3987 #line 313 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3988 { YDVAR(1, VAR_USE_CAPS_FOR_ID) } 3989 YY_BREAK 3990 case 100: 3991 YY_RULE_SETUP 3992 #line 314 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3993 { YDVAR(1, VAR_CAPS_WHITELIST) } 3994 YY_BREAK 3995 case 101: 3996 YY_RULE_SETUP 3997 #line 315 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 3998 { YDVAR(1, VAR_CAPS_WHITELIST) } 3999 YY_BREAK 4000 case 102: 4001 YY_RULE_SETUP 4002 #line 316 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4003 { YDVAR(1, VAR_UNWANTED_REPLY_THRESHOLD) } 4004 YY_BREAK 4005 case 103: 4006 YY_RULE_SETUP 4007 #line 317 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4008 { YDVAR(1, VAR_PRIVATE_ADDRESS) } 4009 YY_BREAK 4010 case 104: 4011 YY_RULE_SETUP 4012 #line 318 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4013 { YDVAR(1, VAR_PRIVATE_DOMAIN) } 4014 YY_BREAK 4015 case 105: 4016 YY_RULE_SETUP 4017 #line 319 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4018 { YDVAR(1, VAR_PREFETCH_KEY) } 4019 YY_BREAK 4020 case 106: 4021 YY_RULE_SETUP 4022 #line 320 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4023 { YDVAR(1, VAR_PREFETCH) } 4024 YY_BREAK 4025 case 107: 4026 YY_RULE_SETUP 4027 #line 321 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4028 { YDVAR(1, VAR_DENY_ANY) } 4029 YY_BREAK 4030 case 108: 4031 YY_RULE_SETUP 4032 #line 322 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4033 { YDVAR(0, VAR_STUB_ZONE) } 4034 YY_BREAK 4035 case 109: 4036 YY_RULE_SETUP 4037 #line 323 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4038 { YDVAR(1, VAR_NAME) } 4039 YY_BREAK 4040 case 110: 4041 YY_RULE_SETUP 4042 #line 324 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4043 { YDVAR(1, VAR_STUB_ADDR) } 4044 YY_BREAK 4045 case 111: 4046 YY_RULE_SETUP 4047 #line 325 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4048 { YDVAR(1, VAR_STUB_HOST) } 4049 YY_BREAK 4050 case 112: 4051 YY_RULE_SETUP 4052 #line 326 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4053 { YDVAR(1, VAR_STUB_PRIME) } 4054 YY_BREAK 4055 case 113: 4056 YY_RULE_SETUP 4057 #line 327 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4058 { YDVAR(1, VAR_STUB_FIRST) } 4059 YY_BREAK 4060 case 114: 4061 YY_RULE_SETUP 4062 #line 328 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4063 { YDVAR(1, VAR_STUB_NO_CACHE) } 4064 YY_BREAK 4065 case 115: 4066 YY_RULE_SETUP 4067 #line 329 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4068 { YDVAR(1, VAR_STUB_SSL_UPSTREAM) } 4069 YY_BREAK 4070 case 116: 4071 YY_RULE_SETUP 4072 #line 330 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4073 { YDVAR(1, VAR_STUB_SSL_UPSTREAM) } 4074 YY_BREAK 4075 case 117: 4076 YY_RULE_SETUP 4077 #line 331 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4078 { YDVAR(0, VAR_FORWARD_ZONE) } 4079 YY_BREAK 4080 case 118: 4081 YY_RULE_SETUP 4082 #line 332 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4083 { YDVAR(1, VAR_FORWARD_ADDR) } 4084 YY_BREAK 4085 case 119: 4086 YY_RULE_SETUP 4087 #line 333 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4088 { YDVAR(1, VAR_FORWARD_HOST) } 4089 YY_BREAK 4090 case 120: 4091 YY_RULE_SETUP 4092 #line 334 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4093 { YDVAR(1, VAR_FORWARD_FIRST) } 4094 YY_BREAK 4095 case 121: 4096 YY_RULE_SETUP 4097 #line 335 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4098 { YDVAR(1, VAR_FORWARD_NO_CACHE) } 4099 YY_BREAK 4100 case 122: 4101 YY_RULE_SETUP 4102 #line 336 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4103 { YDVAR(1, VAR_FORWARD_SSL_UPSTREAM) } 4104 YY_BREAK 4105 case 123: 4106 YY_RULE_SETUP 4107 #line 337 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4108 { YDVAR(1, VAR_FORWARD_SSL_UPSTREAM) } 4109 YY_BREAK 4110 case 124: 4111 YY_RULE_SETUP 4112 #line 338 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4113 { YDVAR(0, VAR_AUTH_ZONE) } 4114 YY_BREAK 4115 case 125: 4116 YY_RULE_SETUP 4117 #line 339 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4118 { YDVAR(0, VAR_RPZ) } 4119 YY_BREAK 4120 case 126: 4121 YY_RULE_SETUP 4122 #line 340 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4123 { YDVAR(1, VAR_TAGS) } 4124 YY_BREAK 4125 case 127: 4126 YY_RULE_SETUP 4127 #line 341 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4128 { YDVAR(1, VAR_RPZ_ACTION_OVERRIDE) } 4129 YY_BREAK 4130 case 128: 4131 YY_RULE_SETUP 4132 #line 342 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4133 { YDVAR(1, VAR_RPZ_CNAME_OVERRIDE) } 4134 YY_BREAK 4135 case 129: 4136 YY_RULE_SETUP 4137 #line 343 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4138 { YDVAR(1, VAR_RPZ_LOG) } 4139 YY_BREAK 4140 case 130: 4141 YY_RULE_SETUP 4142 #line 344 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4143 { YDVAR(1, VAR_RPZ_LOG_NAME) } 4144 YY_BREAK 4145 case 131: 4146 YY_RULE_SETUP 4147 #line 345 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4148 { YDVAR(1, VAR_ZONEFILE) } 4149 YY_BREAK 4150 case 132: 4151 YY_RULE_SETUP 4152 #line 346 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4153 { YDVAR(1, VAR_MASTER) } 4154 YY_BREAK 4155 case 133: 4156 YY_RULE_SETUP 4157 #line 347 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4158 { YDVAR(1, VAR_MASTER) } 4159 YY_BREAK 4160 case 134: 4161 YY_RULE_SETUP 4162 #line 348 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4163 { YDVAR(1, VAR_URL) } 4164 YY_BREAK 4165 case 135: 4166 YY_RULE_SETUP 4167 #line 349 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4168 { YDVAR(1, VAR_ALLOW_NOTIFY) } 4169 YY_BREAK 4170 case 136: 4171 YY_RULE_SETUP 4172 #line 350 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4173 { YDVAR(1, VAR_FOR_DOWNSTREAM) } 4174 YY_BREAK 4175 case 137: 4176 YY_RULE_SETUP 4177 #line 351 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4178 { YDVAR(1, VAR_FOR_UPSTREAM) } 4179 YY_BREAK 4180 case 138: 4181 YY_RULE_SETUP 4182 #line 352 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4183 { YDVAR(1, VAR_FALLBACK_ENABLED) } 4184 YY_BREAK 4185 case 139: 4186 YY_RULE_SETUP 4187 #line 353 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4188 { YDVAR(0, VAR_VIEW) } 4189 YY_BREAK 4190 case 140: 4191 YY_RULE_SETUP 4192 #line 354 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4193 { YDVAR(1, VAR_VIEW_FIRST) } 4194 YY_BREAK 4195 case 141: 4196 YY_RULE_SETUP 4197 #line 355 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4198 { YDVAR(1, VAR_DO_NOT_QUERY_ADDRESS) } 4199 YY_BREAK 4200 case 142: 4201 YY_RULE_SETUP 4202 #line 356 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4203 { YDVAR(1, VAR_DO_NOT_QUERY_LOCALHOST) } 4204 YY_BREAK 4205 case 143: 4206 YY_RULE_SETUP 4207 #line 357 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4208 { YDVAR(2, VAR_ACCESS_CONTROL) } 4209 YY_BREAK 4210 case 144: 4211 YY_RULE_SETUP 4212 #line 358 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4213 { YDVAR(1, VAR_SEND_CLIENT_SUBNET) } 4214 YY_BREAK 4215 case 145: 4216 YY_RULE_SETUP 4217 #line 359 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4218 { YDVAR(1, VAR_CLIENT_SUBNET_ZONE) } 4219 YY_BREAK 4220 case 146: 4221 YY_RULE_SETUP 4222 #line 360 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4223 { YDVAR(1, VAR_CLIENT_SUBNET_ALWAYS_FORWARD) } 4224 YY_BREAK 4225 case 147: 4226 YY_RULE_SETUP 4227 #line 361 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4228 { YDVAR(1, VAR_CLIENT_SUBNET_OPCODE) } 4229 YY_BREAK 4230 case 148: 4231 YY_RULE_SETUP 4232 #line 362 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4233 { YDVAR(1, VAR_MAX_CLIENT_SUBNET_IPV4) } 4234 YY_BREAK 4235 case 149: 4236 YY_RULE_SETUP 4237 #line 363 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4238 { YDVAR(1, VAR_MAX_CLIENT_SUBNET_IPV6) } 4239 YY_BREAK 4240 case 150: 4241 YY_RULE_SETUP 4242 #line 364 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4243 { YDVAR(1, VAR_MIN_CLIENT_SUBNET_IPV4) } 4244 YY_BREAK 4245 case 151: 4246 YY_RULE_SETUP 4247 #line 365 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4248 { YDVAR(1, VAR_MIN_CLIENT_SUBNET_IPV6) } 4249 YY_BREAK 4250 case 152: 4251 YY_RULE_SETUP 4252 #line 366 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4253 { YDVAR(1, VAR_MAX_ECS_TREE_SIZE_IPV4) } 4254 YY_BREAK 4255 case 153: 4256 YY_RULE_SETUP 4257 #line 367 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4258 { YDVAR(1, VAR_MAX_ECS_TREE_SIZE_IPV6) } 4259 YY_BREAK 4260 case 154: 4261 YY_RULE_SETUP 4262 #line 368 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4263 { YDVAR(1, VAR_HIDE_IDENTITY) } 4264 YY_BREAK 4265 case 155: 4266 YY_RULE_SETUP 4267 #line 369 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4268 { YDVAR(1, VAR_HIDE_VERSION) } 4269 YY_BREAK 4270 case 156: 4271 YY_RULE_SETUP 4272 #line 370 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4273 { YDVAR(1, VAR_HIDE_TRUSTANCHOR) } 4274 YY_BREAK 4275 case 157: 4276 YY_RULE_SETUP 4277 #line 371 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4278 { YDVAR(1, VAR_IDENTITY) } 4279 YY_BREAK 4280 case 158: 4281 YY_RULE_SETUP 4282 #line 372 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4283 { YDVAR(1, VAR_VERSION) } 4284 YY_BREAK 4285 case 159: 4286 YY_RULE_SETUP 4287 #line 373 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4288 { YDVAR(1, VAR_MODULE_CONF) } 4289 YY_BREAK 4290 case 160: 4291 YY_RULE_SETUP 4292 #line 374 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4293 { YDVAR(1, VAR_DLV_ANCHOR) } 4294 YY_BREAK 4295 case 161: 4296 YY_RULE_SETUP 4297 #line 375 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4298 { YDVAR(1, VAR_DLV_ANCHOR_FILE) } 4299 YY_BREAK 4300 case 162: 4301 YY_RULE_SETUP 4302 #line 376 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4303 { YDVAR(1, VAR_TRUST_ANCHOR_FILE) } 4304 YY_BREAK 4305 case 163: 4306 YY_RULE_SETUP 4307 #line 377 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4308 { YDVAR(1, VAR_AUTO_TRUST_ANCHOR_FILE) } 4309 YY_BREAK 4310 case 164: 4311 YY_RULE_SETUP 4312 #line 378 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4313 { YDVAR(1, VAR_TRUSTED_KEYS_FILE) } 4314 YY_BREAK 4315 case 165: 4316 YY_RULE_SETUP 4317 #line 379 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4318 { YDVAR(1, VAR_TRUST_ANCHOR) } 4319 YY_BREAK 4320 case 166: 4321 YY_RULE_SETUP 4322 #line 380 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4323 { YDVAR(1, VAR_TRUST_ANCHOR_SIGNALING) } 4324 YY_BREAK 4325 case 167: 4326 YY_RULE_SETUP 4327 #line 381 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4328 { YDVAR(1, VAR_ROOT_KEY_SENTINEL) } 4329 YY_BREAK 4330 case 168: 4331 YY_RULE_SETUP 4332 #line 382 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4333 { YDVAR(1, VAR_VAL_OVERRIDE_DATE) } 4334 YY_BREAK 4335 case 169: 4336 YY_RULE_SETUP 4337 #line 383 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4338 { YDVAR(1, VAR_VAL_SIG_SKEW_MIN) } 4339 YY_BREAK 4340 case 170: 4341 YY_RULE_SETUP 4342 #line 384 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4343 { YDVAR(1, VAR_VAL_SIG_SKEW_MAX) } 4344 YY_BREAK 4345 case 171: 4346 YY_RULE_SETUP 4347 #line 385 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4348 { YDVAR(1, VAR_BOGUS_TTL) } 4349 YY_BREAK 4350 case 172: 4351 YY_RULE_SETUP 4352 #line 386 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4353 { YDVAR(1, VAR_VAL_CLEAN_ADDITIONAL) } 4354 YY_BREAK 4355 case 173: 4356 YY_RULE_SETUP 4357 #line 387 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4358 { YDVAR(1, VAR_VAL_PERMISSIVE_MODE) } 4359 YY_BREAK 4360 case 174: 4361 YY_RULE_SETUP 4362 #line 388 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4363 { YDVAR(1, VAR_AGGRESSIVE_NSEC) } 4364 YY_BREAK 4365 case 175: 4366 YY_RULE_SETUP 4367 #line 389 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4368 { YDVAR(1, VAR_IGNORE_CD_FLAG) } 4369 YY_BREAK 4370 case 176: 4371 YY_RULE_SETUP 4372 #line 390 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4373 { YDVAR(1, VAR_SERVE_EXPIRED) } 4374 YY_BREAK 4375 case 177: 4376 YY_RULE_SETUP 4377 #line 391 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4378 { YDVAR(1, VAR_SERVE_EXPIRED_TTL) } 4379 YY_BREAK 4380 case 178: 4381 YY_RULE_SETUP 4382 #line 392 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4383 { YDVAR(1, VAR_SERVE_EXPIRED_TTL_RESET) } 4384 YY_BREAK 4385 case 179: 4386 YY_RULE_SETUP 4387 #line 393 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4388 { YDVAR(1, VAR_SERVE_EXPIRED_REPLY_TTL) } 4389 YY_BREAK 4390 case 180: 4391 YY_RULE_SETUP 4392 #line 394 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4393 { YDVAR(1, VAR_SERVE_EXPIRED_CLIENT_TIMEOUT) } 4394 YY_BREAK 4395 case 181: 4396 YY_RULE_SETUP 4397 #line 395 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4398 { YDVAR(1, VAR_SERVE_ORIGINAL_TTL) } 4399 YY_BREAK 4400 case 182: 4401 YY_RULE_SETUP 4402 #line 396 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4403 { YDVAR(1, VAR_FAKE_DSA) } 4404 YY_BREAK 4405 case 183: 4406 YY_RULE_SETUP 4407 #line 397 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4408 { YDVAR(1, VAR_FAKE_SHA1) } 4409 YY_BREAK 4410 case 184: 4411 YY_RULE_SETUP 4412 #line 398 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4413 { YDVAR(1, VAR_VAL_LOG_LEVEL) } 4414 YY_BREAK 4415 case 185: 4416 YY_RULE_SETUP 4417 #line 399 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4418 { YDVAR(1, VAR_KEY_CACHE_SIZE) } 4419 YY_BREAK 4420 case 186: 4421 YY_RULE_SETUP 4422 #line 400 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4423 { YDVAR(1, VAR_KEY_CACHE_SLABS) } 4424 YY_BREAK 4425 case 187: 4426 YY_RULE_SETUP 4427 #line 401 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4428 { YDVAR(1, VAR_NEG_CACHE_SIZE) } 4429 YY_BREAK 4430 case 188: 4431 YY_RULE_SETUP 4432 #line 402 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4433 { 4434 YDVAR(1, VAR_VAL_NSEC3_KEYSIZE_ITERATIONS) } 4435 YY_BREAK 4436 case 189: 4437 YY_RULE_SETUP 4438 #line 404 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4439 { YDVAR(1, VAR_ADD_HOLDDOWN) } 4440 YY_BREAK 4441 case 190: 4442 YY_RULE_SETUP 4443 #line 405 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4444 { YDVAR(1, VAR_DEL_HOLDDOWN) } 4445 YY_BREAK 4446 case 191: 4447 YY_RULE_SETUP 4448 #line 406 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4449 { YDVAR(1, VAR_KEEP_MISSING) } 4450 YY_BREAK 4451 case 192: 4452 YY_RULE_SETUP 4453 #line 407 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4454 { YDVAR(1, VAR_PERMIT_SMALL_HOLDDOWN) } 4455 YY_BREAK 4456 case 193: 4457 YY_RULE_SETUP 4458 #line 408 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4459 { YDVAR(1, VAR_USE_SYSLOG) } 4460 YY_BREAK 4461 case 194: 4462 YY_RULE_SETUP 4463 #line 409 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4464 { YDVAR(1, VAR_LOG_IDENTITY) } 4465 YY_BREAK 4466 case 195: 4467 YY_RULE_SETUP 4468 #line 410 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4469 { YDVAR(1, VAR_LOG_TIME_ASCII) } 4470 YY_BREAK 4471 case 196: 4472 YY_RULE_SETUP 4473 #line 411 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4474 { YDVAR(1, VAR_LOG_QUERIES) } 4475 YY_BREAK 4476 case 197: 4477 YY_RULE_SETUP 4478 #line 412 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4479 { YDVAR(1, VAR_LOG_REPLIES) } 4480 YY_BREAK 4481 case 198: 4482 YY_RULE_SETUP 4483 #line 413 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4484 { YDVAR(1, VAR_LOG_TAG_QUERYREPLY) } 4485 YY_BREAK 4486 case 199: 4487 YY_RULE_SETUP 4488 #line 414 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4489 { YDVAR(1, VAR_LOG_LOCAL_ACTIONS) } 4490 YY_BREAK 4491 case 200: 4492 YY_RULE_SETUP 4493 #line 415 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4494 { YDVAR(1, VAR_LOG_SERVFAIL) } 4495 YY_BREAK 4496 case 201: 4497 YY_RULE_SETUP 4498 #line 416 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4499 { YDVAR(2, VAR_LOCAL_ZONE) } 4500 YY_BREAK 4501 case 202: 4502 YY_RULE_SETUP 4503 #line 417 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4504 { YDVAR(1, VAR_LOCAL_DATA) } 4505 YY_BREAK 4506 case 203: 4507 YY_RULE_SETUP 4508 #line 418 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4509 { YDVAR(1, VAR_LOCAL_DATA_PTR) } 4510 YY_BREAK 4511 case 204: 4512 YY_RULE_SETUP 4513 #line 419 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4514 { YDVAR(1, VAR_UNBLOCK_LAN_ZONES) } 4515 YY_BREAK 4516 case 205: 4517 YY_RULE_SETUP 4518 #line 420 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4519 { YDVAR(1, VAR_INSECURE_LAN_ZONES) } 4520 YY_BREAK 4521 case 206: 4522 YY_RULE_SETUP 4523 #line 421 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4524 { YDVAR(1, VAR_STATISTICS_INTERVAL) } 4525 YY_BREAK 4526 case 207: 4527 YY_RULE_SETUP 4528 #line 422 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4529 { YDVAR(1, VAR_STATISTICS_CUMULATIVE) } 4530 YY_BREAK 4531 case 208: 4532 YY_RULE_SETUP 4533 #line 423 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4534 { YDVAR(1, VAR_EXTENDED_STATISTICS) } 4535 YY_BREAK 4536 case 209: 4537 YY_RULE_SETUP 4538 #line 424 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4539 { YDVAR(1, VAR_SHM_ENABLE) } 4540 YY_BREAK 4541 case 210: 4542 YY_RULE_SETUP 4543 #line 425 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4544 { YDVAR(1, VAR_SHM_KEY) } 4545 YY_BREAK 4546 case 211: 4547 YY_RULE_SETUP 4548 #line 426 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4549 { YDVAR(0, VAR_REMOTE_CONTROL) } 4550 YY_BREAK 4551 case 212: 4552 YY_RULE_SETUP 4553 #line 427 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4554 { YDVAR(1, VAR_CONTROL_ENABLE) } 4555 YY_BREAK 4556 case 213: 4557 YY_RULE_SETUP 4558 #line 428 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4559 { YDVAR(1, VAR_CONTROL_INTERFACE) } 4560 YY_BREAK 4561 case 214: 4562 YY_RULE_SETUP 4563 #line 429 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4564 { YDVAR(1, VAR_CONTROL_PORT) } 4565 YY_BREAK 4566 case 215: 4567 YY_RULE_SETUP 4568 #line 430 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4569 { YDVAR(1, VAR_CONTROL_USE_CERT) } 4570 YY_BREAK 4571 case 216: 4572 YY_RULE_SETUP 4573 #line 431 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4574 { YDVAR(1, VAR_SERVER_KEY_FILE) } 4575 YY_BREAK 4576 case 217: 4577 YY_RULE_SETUP 4578 #line 432 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4579 { YDVAR(1, VAR_SERVER_CERT_FILE) } 4580 YY_BREAK 4581 case 218: 4582 YY_RULE_SETUP 4583 #line 433 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4584 { YDVAR(1, VAR_CONTROL_KEY_FILE) } 4585 YY_BREAK 4586 case 219: 4587 YY_RULE_SETUP 4588 #line 434 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4589 { YDVAR(1, VAR_CONTROL_CERT_FILE) } 4590 YY_BREAK 4591 case 220: 4592 YY_RULE_SETUP 4593 #line 435 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4594 { YDVAR(1, VAR_PYTHON_SCRIPT) } 4595 YY_BREAK 4596 case 221: 4597 YY_RULE_SETUP 4598 #line 436 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4599 { YDVAR(0, VAR_PYTHON) } 4600 YY_BREAK 4601 case 222: 4602 YY_RULE_SETUP 4603 #line 437 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4604 { YDVAR(1, VAR_DYNLIB_FILE) } 4605 YY_BREAK 4606 case 223: 4607 YY_RULE_SETUP 4608 #line 438 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4609 { YDVAR(0, VAR_DYNLIB) } 4610 YY_BREAK 4611 case 224: 4612 YY_RULE_SETUP 4613 #line 439 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4614 { YDVAR(1, VAR_DOMAIN_INSECURE) } 4615 YY_BREAK 4616 case 225: 4617 YY_RULE_SETUP 4618 #line 440 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4619 { YDVAR(1, VAR_MINIMAL_RESPONSES) } 4620 YY_BREAK 4621 case 226: 4622 YY_RULE_SETUP 4623 #line 441 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4624 { YDVAR(1, VAR_RRSET_ROUNDROBIN) } 4625 YY_BREAK 4626 case 227: 4627 YY_RULE_SETUP 4628 #line 442 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4629 { YDVAR(1, VAR_UNKNOWN_SERVER_TIME_LIMIT) } 4630 YY_BREAK 4631 case 228: 4632 YY_RULE_SETUP 4633 #line 443 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4634 { YDVAR(1, VAR_MAX_UDP_SIZE) } 4635 YY_BREAK 4636 case 229: 4637 YY_RULE_SETUP 4638 #line 444 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4639 { YDVAR(1, VAR_DNS64_PREFIX) } 4640 YY_BREAK 4641 case 230: 4642 YY_RULE_SETUP 4643 #line 445 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4644 { YDVAR(1, VAR_DNS64_SYNTHALL) } 4645 YY_BREAK 4646 case 231: 4647 YY_RULE_SETUP 4648 #line 446 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4649 { YDVAR(1, VAR_DNS64_IGNORE_AAAA) } 4650 YY_BREAK 4651 case 232: 4652 YY_RULE_SETUP 4653 #line 447 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4654 { YDVAR(1, VAR_DEFINE_TAG) } 4655 YY_BREAK 4656 case 233: 4657 YY_RULE_SETUP 4658 #line 448 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4659 { YDVAR(2, VAR_LOCAL_ZONE_TAG) } 4660 YY_BREAK 4661 case 234: 4662 YY_RULE_SETUP 4663 #line 449 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4664 { YDVAR(2, VAR_ACCESS_CONTROL_TAG) } 4665 YY_BREAK 4666 case 235: 4667 YY_RULE_SETUP 4668 #line 450 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4669 { YDVAR(3, VAR_ACCESS_CONTROL_TAG_ACTION) } 4670 YY_BREAK 4671 case 236: 4672 YY_RULE_SETUP 4673 #line 451 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4674 { YDVAR(3, VAR_ACCESS_CONTROL_TAG_DATA) } 4675 YY_BREAK 4676 case 237: 4677 YY_RULE_SETUP 4678 #line 452 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4679 { YDVAR(2, VAR_ACCESS_CONTROL_VIEW) } 4680 YY_BREAK 4681 case 238: 4682 YY_RULE_SETUP 4683 #line 453 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4684 { YDVAR(3, VAR_LOCAL_ZONE_OVERRIDE) } 4685 YY_BREAK 4686 case 239: 4687 YY_RULE_SETUP 4688 #line 454 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4689 { YDVAR(0, VAR_DNSTAP) } 4690 YY_BREAK 4691 case 240: 4692 YY_RULE_SETUP 4693 #line 455 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4694 { YDVAR(1, VAR_DNSTAP_ENABLE) } 4695 YY_BREAK 4696 case 241: 4697 YY_RULE_SETUP 4698 #line 456 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4699 { YDVAR(1, VAR_DNSTAP_BIDIRECTIONAL) } 4700 YY_BREAK 4701 case 242: 4702 YY_RULE_SETUP 4703 #line 457 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4704 { YDVAR(1, VAR_DNSTAP_SOCKET_PATH) } 4705 YY_BREAK 4706 case 243: 4707 YY_RULE_SETUP 4708 #line 458 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4709 { YDVAR(1, VAR_DNSTAP_IP) } 4710 YY_BREAK 4711 case 244: 4712 YY_RULE_SETUP 4713 #line 459 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4714 { YDVAR(1, VAR_DNSTAP_TLS) } 4715 YY_BREAK 4716 case 245: 4717 YY_RULE_SETUP 4718 #line 460 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4719 { YDVAR(1, VAR_DNSTAP_TLS_SERVER_NAME) } 4720 YY_BREAK 4721 case 246: 4722 YY_RULE_SETUP 4723 #line 461 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4724 { YDVAR(1, VAR_DNSTAP_TLS_CERT_BUNDLE) } 4725 YY_BREAK 4726 case 247: 4727 YY_RULE_SETUP 4728 #line 462 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4729 { 4730 YDVAR(1, VAR_DNSTAP_TLS_CLIENT_KEY_FILE) } 4731 YY_BREAK 4732 case 248: 4733 YY_RULE_SETUP 4734 #line 464 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4735 { 4736 YDVAR(1, VAR_DNSTAP_TLS_CLIENT_CERT_FILE) } 4737 YY_BREAK 4738 case 249: 4739 YY_RULE_SETUP 4740 #line 466 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4741 { YDVAR(1, VAR_DNSTAP_SEND_IDENTITY) } 4742 YY_BREAK 4743 case 250: 4744 YY_RULE_SETUP 4745 #line 467 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4746 { YDVAR(1, VAR_DNSTAP_SEND_VERSION) } 4747 YY_BREAK 4748 case 251: 4749 YY_RULE_SETUP 4750 #line 468 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4751 { YDVAR(1, VAR_DNSTAP_IDENTITY) } 4752 YY_BREAK 4753 case 252: 4754 YY_RULE_SETUP 4755 #line 469 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4756 { YDVAR(1, VAR_DNSTAP_VERSION) } 4757 YY_BREAK 4758 case 253: 4759 YY_RULE_SETUP 4760 #line 470 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4761 { 4762 YDVAR(1, VAR_DNSTAP_LOG_RESOLVER_QUERY_MESSAGES) } 4763 YY_BREAK 4764 case 254: 4765 YY_RULE_SETUP 4766 #line 472 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4767 { 4768 YDVAR(1, VAR_DNSTAP_LOG_RESOLVER_RESPONSE_MESSAGES) } 4769 YY_BREAK 4770 case 255: 4771 YY_RULE_SETUP 4772 #line 474 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4773 { 4774 YDVAR(1, VAR_DNSTAP_LOG_CLIENT_QUERY_MESSAGES) } 4775 YY_BREAK 4776 case 256: 4777 YY_RULE_SETUP 4778 #line 476 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4779 { 4780 YDVAR(1, VAR_DNSTAP_LOG_CLIENT_RESPONSE_MESSAGES) } 4781 YY_BREAK 4782 case 257: 4783 YY_RULE_SETUP 4784 #line 478 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4785 { 4786 YDVAR(1, VAR_DNSTAP_LOG_FORWARDER_QUERY_MESSAGES) } 4787 YY_BREAK 4788 case 258: 4789 YY_RULE_SETUP 4790 #line 480 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4791 { 4792 YDVAR(1, VAR_DNSTAP_LOG_FORWARDER_RESPONSE_MESSAGES) } 4793 YY_BREAK 4794 case 259: 4795 YY_RULE_SETUP 4796 #line 482 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4797 { YDVAR(1, VAR_DISABLE_DNSSEC_LAME_CHECK) } 4798 YY_BREAK 4799 case 260: 4800 YY_RULE_SETUP 4801 #line 483 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4802 { YDVAR(1, VAR_IP_RATELIMIT) } 4803 YY_BREAK 4804 case 261: 4805 YY_RULE_SETUP 4806 #line 484 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4807 { YDVAR(1, VAR_RATELIMIT) } 4808 YY_BREAK 4809 case 262: 4810 YY_RULE_SETUP 4811 #line 485 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4812 { YDVAR(1, VAR_IP_RATELIMIT_SLABS) } 4813 YY_BREAK 4814 case 263: 4815 YY_RULE_SETUP 4816 #line 486 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4817 { YDVAR(1, VAR_RATELIMIT_SLABS) } 4818 YY_BREAK 4819 case 264: 4820 YY_RULE_SETUP 4821 #line 487 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4822 { YDVAR(1, VAR_IP_RATELIMIT_SIZE) } 4823 YY_BREAK 4824 case 265: 4825 YY_RULE_SETUP 4826 #line 488 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4827 { YDVAR(1, VAR_RATELIMIT_SIZE) } 4828 YY_BREAK 4829 case 266: 4830 YY_RULE_SETUP 4831 #line 489 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4832 { YDVAR(2, VAR_RATELIMIT_FOR_DOMAIN) } 4833 YY_BREAK 4834 case 267: 4835 YY_RULE_SETUP 4836 #line 490 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4837 { YDVAR(2, VAR_RATELIMIT_BELOW_DOMAIN) } 4838 YY_BREAK 4839 case 268: 4840 YY_RULE_SETUP 4841 #line 491 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4842 { YDVAR(1, VAR_IP_RATELIMIT_FACTOR) } 4843 YY_BREAK 4844 case 269: 4845 YY_RULE_SETUP 4846 #line 492 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4847 { YDVAR(1, VAR_RATELIMIT_FACTOR) } 4848 YY_BREAK 4849 case 270: 4850 YY_RULE_SETUP 4851 #line 493 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4852 { YDVAR(1, VAR_LOW_RTT) } 4853 YY_BREAK 4854 case 271: 4855 YY_RULE_SETUP 4856 #line 494 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4857 { YDVAR(1, VAR_FAST_SERVER_NUM) } 4858 YY_BREAK 4859 case 272: 4860 YY_RULE_SETUP 4861 #line 495 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4862 { YDVAR(1, VAR_FAST_SERVER_PERMIL) } 4863 YY_BREAK 4864 case 273: 4865 YY_RULE_SETUP 4866 #line 496 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4867 { YDVAR(1, VAR_FAST_SERVER_PERMIL) } 4868 YY_BREAK 4869 case 274: 4870 YY_RULE_SETUP 4871 #line 497 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4872 { YDVAR(1, VAR_FAST_SERVER_PERMIL) } 4873 YY_BREAK 4874 case 275: 4875 YY_RULE_SETUP 4876 #line 498 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4877 { YDVAR(2, VAR_RESPONSE_IP_TAG) } 4878 YY_BREAK 4879 case 276: 4880 YY_RULE_SETUP 4881 #line 499 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4882 { YDVAR(2, VAR_RESPONSE_IP) } 4883 YY_BREAK 4884 case 277: 4885 YY_RULE_SETUP 4886 #line 500 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4887 { YDVAR(2, VAR_RESPONSE_IP_DATA) } 4888 YY_BREAK 4889 case 278: 4890 YY_RULE_SETUP 4891 #line 501 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4892 { YDVAR(0, VAR_DNSCRYPT) } 4893 YY_BREAK 4894 case 279: 4895 YY_RULE_SETUP 4896 #line 502 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4897 { YDVAR(1, VAR_DNSCRYPT_ENABLE) } 4898 YY_BREAK 4899 case 280: 4900 YY_RULE_SETUP 4901 #line 503 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4902 { YDVAR(1, VAR_DNSCRYPT_PORT) } 4903 YY_BREAK 4904 case 281: 4905 YY_RULE_SETUP 4906 #line 504 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4907 { YDVAR(1, VAR_DNSCRYPT_PROVIDER) } 4908 YY_BREAK 4909 case 282: 4910 YY_RULE_SETUP 4911 #line 505 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4912 { YDVAR(1, VAR_DNSCRYPT_SECRET_KEY) } 4913 YY_BREAK 4914 case 283: 4915 YY_RULE_SETUP 4916 #line 506 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4917 { YDVAR(1, VAR_DNSCRYPT_PROVIDER_CERT) } 4918 YY_BREAK 4919 case 284: 4920 YY_RULE_SETUP 4921 #line 507 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4922 { YDVAR(1, VAR_DNSCRYPT_PROVIDER_CERT_ROTATED) } 4923 YY_BREAK 4924 case 285: 4925 YY_RULE_SETUP 4926 #line 508 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4927 { 4928 YDVAR(1, VAR_DNSCRYPT_SHARED_SECRET_CACHE_SIZE) } 4929 YY_BREAK 4930 case 286: 4931 YY_RULE_SETUP 4932 #line 510 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4933 { 4934 YDVAR(1, VAR_DNSCRYPT_SHARED_SECRET_CACHE_SLABS) } 4935 YY_BREAK 4936 case 287: 4937 YY_RULE_SETUP 4938 #line 512 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4939 { YDVAR(1, VAR_DNSCRYPT_NONCE_CACHE_SIZE) } 4940 YY_BREAK 4941 case 288: 4942 YY_RULE_SETUP 4943 #line 513 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4944 { YDVAR(1, VAR_DNSCRYPT_NONCE_CACHE_SLABS) } 4945 YY_BREAK 4946 case 289: 4947 YY_RULE_SETUP 4948 #line 514 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4949 { YDVAR(1, VAR_PAD_RESPONSES) } 4950 YY_BREAK 4951 case 290: 4952 YY_RULE_SETUP 4953 #line 515 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4954 { YDVAR(1, VAR_PAD_RESPONSES_BLOCK_SIZE) } 4955 YY_BREAK 4956 case 291: 4957 YY_RULE_SETUP 4958 #line 516 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4959 { YDVAR(1, VAR_PAD_QUERIES) } 4960 YY_BREAK 4961 case 292: 4962 YY_RULE_SETUP 4963 #line 517 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4964 { YDVAR(1, VAR_PAD_QUERIES_BLOCK_SIZE) } 4965 YY_BREAK 4966 case 293: 4967 YY_RULE_SETUP 4968 #line 518 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4969 { YDVAR(1, VAR_IPSECMOD_ENABLED) } 4970 YY_BREAK 4971 case 294: 4972 YY_RULE_SETUP 4973 #line 519 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4974 { YDVAR(1, VAR_IPSECMOD_IGNORE_BOGUS) } 4975 YY_BREAK 4976 case 295: 4977 YY_RULE_SETUP 4978 #line 520 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4979 { YDVAR(1, VAR_IPSECMOD_HOOK) } 4980 YY_BREAK 4981 case 296: 4982 YY_RULE_SETUP 4983 #line 521 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4984 { YDVAR(1, VAR_IPSECMOD_MAX_TTL) } 4985 YY_BREAK 4986 case 297: 4987 YY_RULE_SETUP 4988 #line 522 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4989 { YDVAR(1, VAR_IPSECMOD_WHITELIST) } 4990 YY_BREAK 4991 case 298: 4992 YY_RULE_SETUP 4993 #line 523 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4994 { YDVAR(1, VAR_IPSECMOD_WHITELIST) } 4995 YY_BREAK 4996 case 299: 4997 YY_RULE_SETUP 4998 #line 524 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 4999 { YDVAR(1, VAR_IPSECMOD_STRICT) } 5000 YY_BREAK 5001 case 300: 5002 YY_RULE_SETUP 5003 #line 525 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5004 { YDVAR(0, VAR_CACHEDB) } 5005 YY_BREAK 5006 case 301: 5007 YY_RULE_SETUP 5008 #line 526 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5009 { YDVAR(1, VAR_CACHEDB_BACKEND) } 5010 YY_BREAK 5011 case 302: 5012 YY_RULE_SETUP 5013 #line 527 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5014 { YDVAR(1, VAR_CACHEDB_SECRETSEED) } 5015 YY_BREAK 5016 case 303: 5017 YY_RULE_SETUP 5018 #line 528 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5019 { YDVAR(1, VAR_CACHEDB_REDISHOST) } 5020 YY_BREAK 5021 case 304: 5022 YY_RULE_SETUP 5023 #line 529 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5024 { YDVAR(1, VAR_CACHEDB_REDISPORT) } 5025 YY_BREAK 5026 case 305: 5027 YY_RULE_SETUP 5028 #line 530 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5029 { YDVAR(1, VAR_CACHEDB_REDISTIMEOUT) } 5030 YY_BREAK 5031 case 306: 5032 YY_RULE_SETUP 5033 #line 531 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5034 { YDVAR(1, VAR_CACHEDB_REDISEXPIRERECORDS) } 5035 YY_BREAK 5036 case 307: 5037 YY_RULE_SETUP 5038 #line 532 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5039 { YDVAR(0, VAR_IPSET) } 5040 YY_BREAK 5041 case 308: 5042 YY_RULE_SETUP 5043 #line 533 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5044 { YDVAR(1, VAR_IPSET_NAME_V4) } 5045 YY_BREAK 5046 case 309: 5047 YY_RULE_SETUP 5048 #line 534 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5049 { YDVAR(1, VAR_IPSET_NAME_V6) } 5050 YY_BREAK 5051 case 310: 5052 YY_RULE_SETUP 5053 #line 535 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5054 { YDVAR(1, VAR_UDP_UPSTREAM_WITHOUT_DOWNSTREAM) } 5055 YY_BREAK 5056 case 311: 5057 YY_RULE_SETUP 5058 #line 536 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5059 { YDVAR(2, VAR_TCP_CONNECTION_LIMIT) } 5060 YY_BREAK 5061 case 312: 5062 YY_RULE_SETUP 5063 #line 537 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5064 { YDVAR(2, VAR_EDNS_CLIENT_STRING) } 5065 YY_BREAK 5066 case 313: 5067 YY_RULE_SETUP 5068 #line 538 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5069 { YDVAR(1, VAR_EDNS_CLIENT_STRING_OPCODE) } 5070 YY_BREAK 5071 case 314: 5072 YY_RULE_SETUP 5073 #line 539 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5074 { YDVAR(1, VAR_NSID ) } 5075 YY_BREAK 5076 case 315: 5077 /* rule 315 can match eol */ 5078 YY_RULE_SETUP 5079 #line 540 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5080 { LEXOUT(("NL\n")); cfg_parser->line++; } 5081 YY_BREAK 5082 /* Quoted strings. Strip leading and ending quotes */ 5083 case 316: 5084 YY_RULE_SETUP 5085 #line 543 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5086 { BEGIN(quotedstring); LEXOUT(("QS ")); } 5087 YY_BREAK 5088 case YY_STATE_EOF(quotedstring): 5089 #line 544 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5090 { 5091 yyerror("EOF inside quoted string"); 5092 if(--num_args == 0) { BEGIN(INITIAL); } 5093 else { BEGIN(val); } 5094 } 5095 YY_BREAK 5096 case 317: 5097 YY_RULE_SETUP 5098 #line 549 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5099 { LEXOUT(("STR(%s) ", yytext)); yymore(); } 5100 YY_BREAK 5101 case 318: 5102 /* rule 318 can match eol */ 5103 YY_RULE_SETUP 5104 #line 550 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5105 { yyerror("newline inside quoted string, no end \""); 5106 cfg_parser->line++; BEGIN(INITIAL); } 5107 YY_BREAK 5108 case 319: 5109 YY_RULE_SETUP 5110 #line 552 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5111 { 5112 LEXOUT(("QE ")); 5113 if(--num_args == 0) { BEGIN(INITIAL); } 5114 else { BEGIN(val); } 5115 yytext[yyleng - 1] = '\0'; 5116 yylval.str = strdup(yytext); 5117 if(!yylval.str) 5118 yyerror("out of memory"); 5119 return STRING_ARG; 5120 } 5121 YY_BREAK 5122 /* Single Quoted strings. Strip leading and ending quotes */ 5123 case 320: 5124 YY_RULE_SETUP 5125 #line 564 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5126 { BEGIN(singlequotedstr); LEXOUT(("SQS ")); } 5127 YY_BREAK 5128 case YY_STATE_EOF(singlequotedstr): 5129 #line 565 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5130 { 5131 yyerror("EOF inside quoted string"); 5132 if(--num_args == 0) { BEGIN(INITIAL); } 5133 else { BEGIN(val); } 5134 } 5135 YY_BREAK 5136 case 321: 5137 YY_RULE_SETUP 5138 #line 570 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5139 { LEXOUT(("STR(%s) ", yytext)); yymore(); } 5140 YY_BREAK 5141 case 322: 5142 /* rule 322 can match eol */ 5143 YY_RULE_SETUP 5144 #line 571 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5145 { yyerror("newline inside quoted string, no end '"); 5146 cfg_parser->line++; BEGIN(INITIAL); } 5147 YY_BREAK 5148 case 323: 5149 YY_RULE_SETUP 5150 #line 573 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5151 { 5152 LEXOUT(("SQE ")); 5153 if(--num_args == 0) { BEGIN(INITIAL); } 5154 else { BEGIN(val); } 5155 yytext[yyleng - 1] = '\0'; 5156 yylval.str = strdup(yytext); 5157 if(!yylval.str) 5158 yyerror("out of memory"); 5159 return STRING_ARG; 5160 } 5161 YY_BREAK 5162 /* include: directive */ 5163 case 324: 5164 YY_RULE_SETUP 5165 #line 585 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5166 { 5167 LEXOUT(("v(%s) ", yytext)); inc_prev = YYSTATE; BEGIN(include); } 5168 YY_BREAK 5169 case YY_STATE_EOF(include): 5170 #line 587 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5171 { 5172 yyerror("EOF inside include directive"); 5173 BEGIN(inc_prev); 5174 } 5175 YY_BREAK 5176 case 325: 5177 YY_RULE_SETUP 5178 #line 591 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5179 { LEXOUT(("ISP ")); /* ignore */ } 5180 YY_BREAK 5181 case 326: 5182 /* rule 326 can match eol */ 5183 YY_RULE_SETUP 5184 #line 592 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5185 { LEXOUT(("NL\n")); cfg_parser->line++;} 5186 YY_BREAK 5187 case 327: 5188 YY_RULE_SETUP 5189 #line 593 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5190 { LEXOUT(("IQS ")); BEGIN(include_quoted); } 5191 YY_BREAK 5192 case 328: 5193 YY_RULE_SETUP 5194 #line 594 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5195 { 5196 LEXOUT(("Iunquotedstr(%s) ", yytext)); 5197 config_start_include_glob(yytext, 0); 5198 BEGIN(inc_prev); 5199 } 5200 YY_BREAK 5201 case YY_STATE_EOF(include_quoted): 5202 #line 599 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5203 { 5204 yyerror("EOF inside quoted string"); 5205 BEGIN(inc_prev); 5206 } 5207 YY_BREAK 5208 case 329: 5209 YY_RULE_SETUP 5210 #line 603 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5211 { LEXOUT(("ISTR(%s) ", yytext)); yymore(); } 5212 YY_BREAK 5213 case 330: 5214 /* rule 330 can match eol */ 5215 YY_RULE_SETUP 5216 #line 604 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5217 { yyerror("newline before \" in include name"); 5218 cfg_parser->line++; BEGIN(inc_prev); } 5219 YY_BREAK 5220 case 331: 5221 YY_RULE_SETUP 5222 #line 606 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5223 { 5224 LEXOUT(("IQE ")); 5225 yytext[yyleng - 1] = '\0'; 5226 config_start_include_glob(yytext, 0); 5227 BEGIN(inc_prev); 5228 } 5229 YY_BREAK 5230 case YY_STATE_EOF(INITIAL): 5231 case YY_STATE_EOF(val): 5232 #line 612 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5233 { 5234 LEXOUT(("LEXEOF ")); 5235 yy_set_bol(1); /* Set beginning of line, so "^" rules match. */ 5236 if (!config_include_stack) { 5237 yyterminate(); 5238 } else { 5239 int prev_toplevel = inc_toplevel; 5240 fclose(yyin); 5241 config_end_include(); 5242 if(prev_toplevel) return (VAR_FORCE_TOPLEVEL); 5243 } 5244 } 5245 YY_BREAK 5246 /* include-toplevel: directive */ 5247 case 332: 5248 YY_RULE_SETUP 5249 #line 626 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5250 { 5251 LEXOUT(("v(%s) ", yytext)); inc_prev = YYSTATE; BEGIN(include_toplevel); 5252 } 5253 YY_BREAK 5254 case YY_STATE_EOF(include_toplevel): 5255 #line 629 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5256 { 5257 yyerror("EOF inside include_toplevel directive"); 5258 BEGIN(inc_prev); 5259 } 5260 YY_BREAK 5261 case 333: 5262 YY_RULE_SETUP 5263 #line 633 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5264 { LEXOUT(("ITSP ")); /* ignore */ } 5265 YY_BREAK 5266 case 334: 5267 /* rule 334 can match eol */ 5268 YY_RULE_SETUP 5269 #line 634 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5270 { LEXOUT(("NL\n")); cfg_parser->line++; } 5271 YY_BREAK 5272 case 335: 5273 YY_RULE_SETUP 5274 #line 635 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5275 { LEXOUT(("ITQS ")); BEGIN(include_toplevel_quoted); } 5276 YY_BREAK 5277 case 336: 5278 YY_RULE_SETUP 5279 #line 636 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5280 { 5281 LEXOUT(("ITunquotedstr(%s) ", yytext)); 5282 config_start_include_glob(yytext, 1); 5283 BEGIN(inc_prev); 5284 return (VAR_FORCE_TOPLEVEL); 5285 } 5286 YY_BREAK 5287 case YY_STATE_EOF(include_toplevel_quoted): 5288 #line 642 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5289 { 5290 yyerror("EOF inside quoted string"); 5291 BEGIN(inc_prev); 5292 } 5293 YY_BREAK 5294 case 337: 5295 YY_RULE_SETUP 5296 #line 646 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5297 { LEXOUT(("ITSTR(%s) ", yytext)); yymore(); } 5298 YY_BREAK 5299 case 338: 5300 /* rule 338 can match eol */ 5301 YY_RULE_SETUP 5302 #line 647 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5303 { 5304 yyerror("newline before \" in include name"); 5305 cfg_parser->line++; BEGIN(inc_prev); 5306 } 5307 YY_BREAK 5308 case 339: 5309 YY_RULE_SETUP 5310 #line 651 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5311 { 5312 LEXOUT(("ITQE ")); 5313 yytext[yyleng - 1] = '\0'; 5314 config_start_include_glob(yytext, 1); 5315 BEGIN(inc_prev); 5316 return (VAR_FORCE_TOPLEVEL); 5317 } 5318 YY_BREAK 5319 case 340: 5320 YY_RULE_SETUP 5321 #line 659 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5322 { LEXOUT(("unquotedstr(%s) ", yytext)); 5323 if(--num_args == 0) { BEGIN(INITIAL); } 5324 yylval.str = strdup(yytext); return STRING_ARG; } 5325 YY_BREAK 5326 case 341: 5327 YY_RULE_SETUP 5328 #line 663 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5329 { 5330 ub_c_error_msg("unknown keyword '%s'", yytext); 5331 } 5332 YY_BREAK 5333 case 342: 5334 YY_RULE_SETUP 5335 #line 667 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5336 { 5337 ub_c_error_msg("stray '%s'", yytext); 5338 } 5339 YY_BREAK 5340 case 343: 5341 YY_RULE_SETUP 5342 #line 671 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 5343 ECHO; 5344 YY_BREAK 5345 #line 5344 "<stdout>" 5346 5347 case YY_END_OF_BUFFER: 5348 { 5349 /* Amount of text matched not including the EOB char. */ 5350 int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; 5351 5352 /* Undo the effects of YY_DO_BEFORE_ACTION. */ 5353 *yy_cp = (yy_hold_char); 5354 YY_RESTORE_YY_MORE_OFFSET 5355 5356 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) 5357 { 5358 /* We're scanning a new file or input source. It's 5359 * possible that this happened because the user 5360 * just pointed yyin at a new source and called 5361 * yylex(). If so, then we have to assure 5362 * consistency between YY_CURRENT_BUFFER and our 5363 * globals. Here is the right place to do so, because 5364 * this is the first action (other than possibly a 5365 * back-up) that will match for the new input source. 5366 */ 5367 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; 5368 YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin; 5369 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; 5370 } 5371 5372 /* Note that here we test for yy_c_buf_p "<=" to the position 5373 * of the first EOB in the buffer, since yy_c_buf_p will 5374 * already have been incremented past the NUL character 5375 * (since all states make transitions on EOB to the 5376 * end-of-buffer state). Contrast this with the test 5377 * in input(). 5378 */ 5379 if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) 5380 { /* This was really a NUL. */ 5381 yy_state_type yy_next_state; 5382 5383 (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; 5384 5385 yy_current_state = yy_get_previous_state( ); 5386 5387 /* Okay, we're now positioned to make the NUL 5388 * transition. We couldn't have 5389 * yy_get_previous_state() go ahead and do it 5390 * for us because it doesn't know how to deal 5391 * with the possibility of jamming (and we don't 5392 * want to build jamming into it because then it 5393 * will run more slowly). 5394 */ 5395 5396 yy_next_state = yy_try_NUL_trans( yy_current_state ); 5397 5398 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 5399 5400 if ( yy_next_state ) 5401 { 5402 /* Consume the NUL. */ 5403 yy_cp = ++(yy_c_buf_p); 5404 yy_current_state = yy_next_state; 5405 goto yy_match; 5406 } 5407 5408 else 5409 { 5410 yy_cp = (yy_c_buf_p); 5411 goto yy_find_action; 5412 } 5413 } 5414 5415 else switch ( yy_get_next_buffer( ) ) 5416 { 5417 case EOB_ACT_END_OF_FILE: 5418 { 5419 (yy_did_buffer_switch_on_eof) = 0; 5420 5421 if ( yywrap( ) ) 5422 { 5423 /* Note: because we've taken care in 5424 * yy_get_next_buffer() to have set up 5425 * yytext, we can now set up 5426 * yy_c_buf_p so that if some total 5427 * hoser (like flex itself) wants to 5428 * call the scanner after we return the 5429 * YY_NULL, it'll still work - another 5430 * YY_NULL will get returned. 5431 */ 5432 (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; 5433 5434 yy_act = YY_STATE_EOF(YY_START); 5435 goto do_action; 5436 } 5437 5438 else 5439 { 5440 if ( ! (yy_did_buffer_switch_on_eof) ) 5441 YY_NEW_FILE; 5442 } 5443 break; 5444 } 5445 5446 case EOB_ACT_CONTINUE_SCAN: 5447 (yy_c_buf_p) = 5448 (yytext_ptr) + yy_amount_of_matched_text; 5449 5450 yy_current_state = yy_get_previous_state( ); 5451 5452 yy_cp = (yy_c_buf_p); 5453 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 5454 goto yy_match; 5455 5456 case EOB_ACT_LAST_MATCH: 5457 (yy_c_buf_p) = 5458 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; 5459 5460 yy_current_state = yy_get_previous_state( ); 5461 5462 yy_cp = (yy_c_buf_p); 5463 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 5464 goto yy_find_action; 5465 } 5466 break; 5467 } 5468 5469 default: 5470 YY_FATAL_ERROR( 5471 "fatal flex scanner internal error--no action found" ); 5472 } /* end of action switch */ 5473 } /* end of scanning one token */ 5474 } /* end of user's declarations */ 5475 } /* end of yylex */ 5476 5477 /* yy_get_next_buffer - try to read in a new buffer 5478 * 5479 * Returns a code representing an action: 5480 * EOB_ACT_LAST_MATCH - 5481 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position 5482 * EOB_ACT_END_OF_FILE - end of file 5483 */ 5484 static int yy_get_next_buffer (void) 5485 { 5486 char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; 5487 char *source = (yytext_ptr); 5488 int number_to_move, i; 5489 int ret_val; 5490 5491 if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) 5492 YY_FATAL_ERROR( 5493 "fatal flex scanner internal error--end of buffer missed" ); 5494 5495 if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) 5496 { /* Don't try to fill the buffer, so this is an EOF. */ 5497 if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) 5498 { 5499 /* We matched a single character, the EOB, so 5500 * treat this as a final EOF. 5501 */ 5502 return EOB_ACT_END_OF_FILE; 5503 } 5504 5505 else 5506 { 5507 /* We matched some text prior to the EOB, first 5508 * process it. 5509 */ 5510 return EOB_ACT_LAST_MATCH; 5511 } 5512 } 5513 5514 /* Try to read more data. */ 5515 5516 /* First move last chars to start of buffer. */ 5517 number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1; 5518 5519 for ( i = 0; i < number_to_move; ++i ) 5520 *(dest++) = *(source++); 5521 5522 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) 5523 /* don't do the read, it's not guaranteed to return an EOF, 5524 * just force an EOF 5525 */ 5526 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; 5527 5528 else 5529 { 5530 yy_size_t num_to_read = 5531 YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; 5532 5533 while ( num_to_read <= 0 ) 5534 { /* Not enough room in the buffer - grow it. */ 5535 5536 /* just a shorter name for the current buffer */ 5537 YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE; 5538 5539 int yy_c_buf_p_offset = 5540 (int) ((yy_c_buf_p) - b->yy_ch_buf); 5541 5542 if ( b->yy_is_our_buffer ) 5543 { 5544 yy_size_t new_size = b->yy_buf_size * 2; 5545 5546 if ( new_size <= 0 ) 5547 b->yy_buf_size += b->yy_buf_size / 8; 5548 else 5549 b->yy_buf_size *= 2; 5550 5551 b->yy_ch_buf = (char *) 5552 /* Include room in for 2 EOB chars. */ 5553 yyrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 ); 5554 } 5555 else 5556 /* Can't grow it, we don't own it. */ 5557 b->yy_ch_buf = 0; 5558 5559 if ( ! b->yy_ch_buf ) 5560 YY_FATAL_ERROR( 5561 "fatal error - scanner input buffer overflow" ); 5562 5563 (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset]; 5564 5565 num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - 5566 number_to_move - 1; 5567 5568 } 5569 5570 if ( num_to_read > YY_READ_BUF_SIZE ) 5571 num_to_read = YY_READ_BUF_SIZE; 5572 5573 /* Read in more data. */ 5574 YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), 5575 (yy_n_chars), num_to_read ); 5576 5577 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 5578 } 5579 5580 if ( (yy_n_chars) == 0 ) 5581 { 5582 if ( number_to_move == YY_MORE_ADJ ) 5583 { 5584 ret_val = EOB_ACT_END_OF_FILE; 5585 yyrestart(yyin ); 5586 } 5587 5588 else 5589 { 5590 ret_val = EOB_ACT_LAST_MATCH; 5591 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = 5592 YY_BUFFER_EOF_PENDING; 5593 } 5594 } 5595 5596 else 5597 ret_val = EOB_ACT_CONTINUE_SCAN; 5598 5599 if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { 5600 /* Extend the array by 50%, plus the number we really need. */ 5601 yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); 5602 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ); 5603 if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) 5604 YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); 5605 /* "- 2" to take care of EOB's */ 5606 YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2); 5607 } 5608 5609 (yy_n_chars) += number_to_move; 5610 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; 5611 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; 5612 5613 (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; 5614 5615 return ret_val; 5616 } 5617 5618 /* yy_get_previous_state - get the state just before the EOB char was reached */ 5619 5620 static yy_state_type yy_get_previous_state (void) 5621 { 5622 yy_state_type yy_current_state; 5623 char *yy_cp; 5624 5625 yy_current_state = (yy_start); 5626 5627 for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) 5628 { 5629 YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); 5630 if ( yy_accept[yy_current_state] ) 5631 { 5632 (yy_last_accepting_state) = yy_current_state; 5633 (yy_last_accepting_cpos) = yy_cp; 5634 } 5635 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 5636 { 5637 yy_current_state = (int) yy_def[yy_current_state]; 5638 if ( yy_current_state >= 3354 ) 5639 yy_c = yy_meta[(unsigned int) yy_c]; 5640 } 5641 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; 5642 } 5643 5644 return yy_current_state; 5645 } 5646 5647 /* yy_try_NUL_trans - try to make a transition on the NUL character 5648 * 5649 * synopsis 5650 * next_state = yy_try_NUL_trans( current_state ); 5651 */ 5652 static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state ) 5653 { 5654 int yy_is_jam; 5655 char *yy_cp = (yy_c_buf_p); 5656 5657 YY_CHAR yy_c = 1; 5658 if ( yy_accept[yy_current_state] ) 5659 { 5660 (yy_last_accepting_state) = yy_current_state; 5661 (yy_last_accepting_cpos) = yy_cp; 5662 } 5663 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 5664 { 5665 yy_current_state = (int) yy_def[yy_current_state]; 5666 if ( yy_current_state >= 3354 ) 5667 yy_c = yy_meta[(unsigned int) yy_c]; 5668 } 5669 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; 5670 yy_is_jam = (yy_current_state == 3353); 5671 5672 return yy_is_jam ? 0 : yy_current_state; 5673 } 5674 5675 #ifndef YY_NO_INPUT 5676 #ifdef __cplusplus 5677 static int yyinput (void) 5678 #else 5679 static int input (void) 5680 #endif 5681 5682 { 5683 int c; 5684 5685 *(yy_c_buf_p) = (yy_hold_char); 5686 5687 if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) 5688 { 5689 /* yy_c_buf_p now points to the character we want to return. 5690 * If this occurs *before* the EOB characters, then it's a 5691 * valid NUL; if not, then we've hit the end of the buffer. 5692 */ 5693 if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) 5694 /* This was really a NUL. */ 5695 *(yy_c_buf_p) = '\0'; 5696 5697 else 5698 { /* need more input */ 5699 yy_size_t offset = (yy_c_buf_p) - (yytext_ptr); 5700 ++(yy_c_buf_p); 5701 5702 switch ( yy_get_next_buffer( ) ) 5703 { 5704 case EOB_ACT_LAST_MATCH: 5705 /* This happens because yy_g_n_b() 5706 * sees that we've accumulated a 5707 * token and flags that we need to 5708 * try matching the token before 5709 * proceeding. But for input(), 5710 * there's no matching to consider. 5711 * So convert the EOB_ACT_LAST_MATCH 5712 * to EOB_ACT_END_OF_FILE. 5713 */ 5714 5715 /* Reset buffer status. */ 5716 yyrestart(yyin ); 5717 5718 /*FALLTHROUGH*/ 5719 5720 case EOB_ACT_END_OF_FILE: 5721 { 5722 if ( yywrap( ) ) 5723 return EOF; 5724 5725 if ( ! (yy_did_buffer_switch_on_eof) ) 5726 YY_NEW_FILE; 5727 #ifdef __cplusplus 5728 return yyinput(); 5729 #else 5730 return input(); 5731 #endif 5732 } 5733 5734 case EOB_ACT_CONTINUE_SCAN: 5735 (yy_c_buf_p) = (yytext_ptr) + offset; 5736 break; 5737 } 5738 } 5739 } 5740 5741 c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */ 5742 *(yy_c_buf_p) = '\0'; /* preserve yytext */ 5743 (yy_hold_char) = *++(yy_c_buf_p); 5744 5745 return c; 5746 } 5747 #endif /* ifndef YY_NO_INPUT */ 5748 5749 /** Immediately switch to a different input stream. 5750 * @param input_file A readable stream. 5751 * 5752 * @note This function does not reset the start condition to @c INITIAL . 5753 */ 5754 void yyrestart (FILE * input_file ) 5755 { 5756 5757 if ( ! YY_CURRENT_BUFFER ){ 5758 yyensure_buffer_stack (); 5759 YY_CURRENT_BUFFER_LVALUE = 5760 yy_create_buffer(yyin,YY_BUF_SIZE ); 5761 } 5762 5763 yy_init_buffer(YY_CURRENT_BUFFER,input_file ); 5764 yy_load_buffer_state( ); 5765 } 5766 5767 /** Switch to a different input buffer. 5768 * @param new_buffer The new input buffer. 5769 * 5770 */ 5771 void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ) 5772 { 5773 5774 /* TODO. We should be able to replace this entire function body 5775 * with 5776 * yypop_buffer_state(); 5777 * yypush_buffer_state(new_buffer); 5778 */ 5779 yyensure_buffer_stack (); 5780 if ( YY_CURRENT_BUFFER == new_buffer ) 5781 return; 5782 5783 if ( YY_CURRENT_BUFFER ) 5784 { 5785 /* Flush out information for old buffer. */ 5786 *(yy_c_buf_p) = (yy_hold_char); 5787 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); 5788 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 5789 } 5790 5791 YY_CURRENT_BUFFER_LVALUE = new_buffer; 5792 yy_load_buffer_state( ); 5793 5794 /* We don't actually know whether we did this switch during 5795 * EOF (yywrap()) processing, but the only time this flag 5796 * is looked at is after yywrap() is called, so it's safe 5797 * to go ahead and always set it. 5798 */ 5799 (yy_did_buffer_switch_on_eof) = 1; 5800 } 5801 5802 static void yy_load_buffer_state (void) 5803 { 5804 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; 5805 (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; 5806 yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; 5807 (yy_hold_char) = *(yy_c_buf_p); 5808 } 5809 5810 /** Allocate and initialize an input buffer state. 5811 * @param file A readable stream. 5812 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE. 5813 * 5814 * @return the allocated buffer state. 5815 */ 5816 YY_BUFFER_STATE yy_create_buffer (FILE * file, int size ) 5817 { 5818 YY_BUFFER_STATE b; 5819 5820 b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); 5821 if ( ! b ) 5822 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); 5823 5824 b->yy_buf_size = size; 5825 5826 /* yy_ch_buf has to be 2 characters longer than the size given because 5827 * we need to put in 2 end-of-buffer characters. 5828 */ 5829 b->yy_ch_buf = (char *) yyalloc(b->yy_buf_size + 2 ); 5830 if ( ! b->yy_ch_buf ) 5831 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); 5832 5833 b->yy_is_our_buffer = 1; 5834 5835 yy_init_buffer(b,file ); 5836 5837 return b; 5838 } 5839 5840 /** Destroy the buffer. 5841 * @param b a buffer created with yy_create_buffer() 5842 * 5843 */ 5844 void yy_delete_buffer (YY_BUFFER_STATE b ) 5845 { 5846 5847 if ( ! b ) 5848 return; 5849 5850 if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ 5851 YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; 5852 5853 if ( b->yy_is_our_buffer ) 5854 yyfree((void *) b->yy_ch_buf ); 5855 5856 yyfree((void *) b ); 5857 } 5858 5859 /* Initializes or reinitializes a buffer. 5860 * This function is sometimes called more than once on the same buffer, 5861 * such as during a yyrestart() or at EOF. 5862 */ 5863 static void yy_init_buffer (YY_BUFFER_STATE b, FILE * file ) 5864 5865 { 5866 int oerrno = errno; 5867 5868 yy_flush_buffer(b ); 5869 5870 b->yy_input_file = file; 5871 b->yy_fill_buffer = 1; 5872 5873 /* If b is the current buffer, then yy_init_buffer was _probably_ 5874 * called from yyrestart() or through yy_get_next_buffer. 5875 * In that case, we don't want to reset the lineno or column. 5876 */ 5877 if (b != YY_CURRENT_BUFFER){ 5878 b->yy_bs_lineno = 1; 5879 b->yy_bs_column = 0; 5880 } 5881 5882 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0; 5883 5884 errno = oerrno; 5885 } 5886 5887 /** Discard all buffered characters. On the next scan, YY_INPUT will be called. 5888 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER. 5889 * 5890 */ 5891 void yy_flush_buffer (YY_BUFFER_STATE b ) 5892 { 5893 if ( ! b ) 5894 return; 5895 5896 b->yy_n_chars = 0; 5897 5898 /* We always need two end-of-buffer characters. The first causes 5899 * a transition to the end-of-buffer state. The second causes 5900 * a jam in that state. 5901 */ 5902 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR; 5903 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR; 5904 5905 b->yy_buf_pos = &b->yy_ch_buf[0]; 5906 5907 b->yy_at_bol = 1; 5908 b->yy_buffer_status = YY_BUFFER_NEW; 5909 5910 if ( b == YY_CURRENT_BUFFER ) 5911 yy_load_buffer_state( ); 5912 } 5913 5914 /** Pushes the new state onto the stack. The new state becomes 5915 * the current state. This function will allocate the stack 5916 * if necessary. 5917 * @param new_buffer The new state. 5918 * 5919 */ 5920 void yypush_buffer_state (YY_BUFFER_STATE new_buffer ) 5921 { 5922 if (new_buffer == NULL) 5923 return; 5924 5925 yyensure_buffer_stack(); 5926 5927 /* This block is copied from yy_switch_to_buffer. */ 5928 if ( YY_CURRENT_BUFFER ) 5929 { 5930 /* Flush out information for old buffer. */ 5931 *(yy_c_buf_p) = (yy_hold_char); 5932 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); 5933 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 5934 } 5935 5936 /* Only push if top exists. Otherwise, replace top. */ 5937 if (YY_CURRENT_BUFFER) 5938 (yy_buffer_stack_top)++; 5939 YY_CURRENT_BUFFER_LVALUE = new_buffer; 5940 5941 /* copied from yy_switch_to_buffer. */ 5942 yy_load_buffer_state( ); 5943 (yy_did_buffer_switch_on_eof) = 1; 5944 } 5945 5946 /** Removes and deletes the top of the stack, if present. 5947 * The next element becomes the new top. 5948 * 5949 */ 5950 void yypop_buffer_state (void) 5951 { 5952 if (!YY_CURRENT_BUFFER) 5953 return; 5954 5955 yy_delete_buffer(YY_CURRENT_BUFFER ); 5956 YY_CURRENT_BUFFER_LVALUE = NULL; 5957 if ((yy_buffer_stack_top) > 0) 5958 --(yy_buffer_stack_top); 5959 5960 if (YY_CURRENT_BUFFER) { 5961 yy_load_buffer_state( ); 5962 (yy_did_buffer_switch_on_eof) = 1; 5963 } 5964 } 5965 5966 /* Allocates the stack if it does not exist. 5967 * Guarantees space for at least one push. 5968 */ 5969 static void yyensure_buffer_stack (void) 5970 { 5971 yy_size_t num_to_alloc; 5972 5973 if (!(yy_buffer_stack)) { 5974 5975 /* First allocation is just for 2 elements, since we don't know if this 5976 * scanner will even need a stack. We use 2 instead of 1 to avoid an 5977 * immediate realloc on the next call. 5978 */ 5979 num_to_alloc = 1; 5980 (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc 5981 (num_to_alloc * sizeof(struct yy_buffer_state*) 5982 ); 5983 if ( ! (yy_buffer_stack) ) 5984 YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); 5985 5986 memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); 5987 5988 (yy_buffer_stack_max) = num_to_alloc; 5989 (yy_buffer_stack_top) = 0; 5990 return; 5991 } 5992 5993 if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ 5994 5995 /* Increase the buffer to prepare for a possible push. */ 5996 int grow_size = 8 /* arbitrary grow size */; 5997 5998 num_to_alloc = (yy_buffer_stack_max) + grow_size; 5999 (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc 6000 ((yy_buffer_stack), 6001 num_to_alloc * sizeof(struct yy_buffer_state*) 6002 ); 6003 if ( ! (yy_buffer_stack) ) 6004 YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); 6005 6006 /* zero only the new slots.*/ 6007 memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); 6008 (yy_buffer_stack_max) = num_to_alloc; 6009 } 6010 } 6011 6012 /** Setup the input buffer state to scan directly from a user-specified character buffer. 6013 * @param base the character buffer 6014 * @param size the size in bytes of the character buffer 6015 * 6016 * @return the newly allocated buffer state object. 6017 */ 6018 YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) 6019 { 6020 YY_BUFFER_STATE b; 6021 6022 if ( size < 2 || 6023 base[size-2] != YY_END_OF_BUFFER_CHAR || 6024 base[size-1] != YY_END_OF_BUFFER_CHAR ) 6025 /* They forgot to leave room for the EOB's. */ 6026 return 0; 6027 6028 b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); 6029 if ( ! b ) 6030 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" ); 6031 6032 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */ 6033 b->yy_buf_pos = b->yy_ch_buf = base; 6034 b->yy_is_our_buffer = 0; 6035 b->yy_input_file = 0; 6036 b->yy_n_chars = b->yy_buf_size; 6037 b->yy_is_interactive = 0; 6038 b->yy_at_bol = 1; 6039 b->yy_fill_buffer = 0; 6040 b->yy_buffer_status = YY_BUFFER_NEW; 6041 6042 yy_switch_to_buffer(b ); 6043 6044 return b; 6045 } 6046 6047 /** Setup the input buffer state to scan a string. The next call to yylex() will 6048 * scan from a @e copy of @a str. 6049 * @param yystr a NUL-terminated string to scan 6050 * 6051 * @return the newly allocated buffer state object. 6052 * @note If you want to scan bytes that may contain NUL values, then use 6053 * yy_scan_bytes() instead. 6054 */ 6055 YY_BUFFER_STATE yy_scan_string (yyconst char * yystr ) 6056 { 6057 6058 return yy_scan_bytes(yystr,strlen(yystr) ); 6059 } 6060 6061 /** Setup the input buffer state to scan the given bytes. The next call to yylex() will 6062 * scan from a @e copy of @a bytes. 6063 * @param yybytes the byte buffer to scan 6064 * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes. 6065 * 6066 * @return the newly allocated buffer state object. 6067 */ 6068 YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len ) 6069 { 6070 YY_BUFFER_STATE b; 6071 char *buf; 6072 yy_size_t n; 6073 yy_size_t i; 6074 6075 /* Get memory for full buffer, including space for trailing EOB's. */ 6076 n = _yybytes_len + 2; 6077 buf = (char *) yyalloc(n ); 6078 if ( ! buf ) 6079 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" ); 6080 6081 for ( i = 0; i < _yybytes_len; ++i ) 6082 buf[i] = yybytes[i]; 6083 6084 buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; 6085 6086 b = yy_scan_buffer(buf,n ); 6087 if ( ! b ) 6088 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" ); 6089 6090 /* It's okay to grow etc. this buffer, and we should throw it 6091 * away when we're done. 6092 */ 6093 b->yy_is_our_buffer = 1; 6094 6095 return b; 6096 } 6097 6098 #ifndef YY_EXIT_FAILURE 6099 #define YY_EXIT_FAILURE 2 6100 #endif 6101 6102 static void yy_fatal_error (yyconst char* msg ) 6103 { 6104 (void) fprintf( stderr, "%s\n", msg ); 6105 exit( YY_EXIT_FAILURE ); 6106 } 6107 6108 /* Redefine yyless() so it works in section 3 code. */ 6109 6110 #undef yyless 6111 #define yyless(n) \ 6112 do \ 6113 { \ 6114 /* Undo effects of setting up yytext. */ \ 6115 int yyless_macro_arg = (n); \ 6116 YY_LESS_LINENO(yyless_macro_arg);\ 6117 yytext[yyleng] = (yy_hold_char); \ 6118 (yy_c_buf_p) = yytext + yyless_macro_arg; \ 6119 (yy_hold_char) = *(yy_c_buf_p); \ 6120 *(yy_c_buf_p) = '\0'; \ 6121 yyleng = yyless_macro_arg; \ 6122 } \ 6123 while ( 0 ) 6124 6125 /* Accessor methods (get/set functions) to struct members. */ 6126 6127 /** Get the current line number. 6128 * 6129 */ 6130 int yyget_lineno (void) 6131 { 6132 6133 return yylineno; 6134 } 6135 6136 /** Get the input stream. 6137 * 6138 */ 6139 FILE *yyget_in (void) 6140 { 6141 return yyin; 6142 } 6143 6144 /** Get the output stream. 6145 * 6146 */ 6147 FILE *yyget_out (void) 6148 { 6149 return yyout; 6150 } 6151 6152 /** Get the length of the current token. 6153 * 6154 */ 6155 yy_size_t yyget_leng (void) 6156 { 6157 return yyleng; 6158 } 6159 6160 /** Get the current token. 6161 * 6162 */ 6163 6164 char *yyget_text (void) 6165 { 6166 return yytext; 6167 } 6168 6169 /** Set the current line number. 6170 * @param line_number 6171 * 6172 */ 6173 void yyset_lineno (int line_number ) 6174 { 6175 6176 yylineno = line_number; 6177 } 6178 6179 /** Set the input stream. This does not discard the current 6180 * input buffer. 6181 * @param in_str A readable stream. 6182 * 6183 * @see yy_switch_to_buffer 6184 */ 6185 void yyset_in (FILE * in_str ) 6186 { 6187 yyin = in_str ; 6188 } 6189 6190 void yyset_out (FILE * out_str ) 6191 { 6192 yyout = out_str ; 6193 } 6194 6195 int yyget_debug (void) 6196 { 6197 return yy_flex_debug; 6198 } 6199 6200 void yyset_debug (int bdebug ) 6201 { 6202 yy_flex_debug = bdebug ; 6203 } 6204 6205 static int yy_init_globals (void) 6206 { 6207 /* Initialization is the same as for the non-reentrant scanner. 6208 * This function is called from yylex_destroy(), so don't allocate here. 6209 */ 6210 6211 (yy_buffer_stack) = 0; 6212 (yy_buffer_stack_top) = 0; 6213 (yy_buffer_stack_max) = 0; 6214 (yy_c_buf_p) = (char *) 0; 6215 (yy_init) = 0; 6216 (yy_start) = 0; 6217 6218 /* Defined in main.c */ 6219 #ifdef YY_STDINIT 6220 yyin = stdin; 6221 yyout = stdout; 6222 #else 6223 yyin = (FILE *) 0; 6224 yyout = (FILE *) 0; 6225 #endif 6226 6227 /* For future reference: Set errno on error, since we are called by 6228 * yylex_init() 6229 */ 6230 return 0; 6231 } 6232 6233 /* yylex_destroy is for both reentrant and non-reentrant scanners. */ 6234 int yylex_destroy (void) 6235 { 6236 6237 /* Pop the buffer stack, destroying each element. */ 6238 while(YY_CURRENT_BUFFER){ 6239 yy_delete_buffer(YY_CURRENT_BUFFER ); 6240 YY_CURRENT_BUFFER_LVALUE = NULL; 6241 yypop_buffer_state(); 6242 } 6243 6244 /* Destroy the stack itself. */ 6245 yyfree((yy_buffer_stack) ); 6246 (yy_buffer_stack) = NULL; 6247 6248 /* Reset the globals. This is important in a non-reentrant scanner so the next time 6249 * yylex() is called, initialization will occur. */ 6250 yy_init_globals( ); 6251 6252 return 0; 6253 } 6254 6255 /* 6256 * Internal utility routines. 6257 */ 6258 6259 #ifndef yytext_ptr 6260 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) 6261 { 6262 int i; 6263 for ( i = 0; i < n; ++i ) 6264 s1[i] = s2[i]; 6265 } 6266 #endif 6267 6268 #ifdef YY_NEED_STRLEN 6269 static int yy_flex_strlen (yyconst char * s ) 6270 { 6271 int n; 6272 for ( n = 0; s[n]; ++n ) 6273 ; 6274 6275 return n; 6276 } 6277 #endif 6278 6279 void *yyalloc (yy_size_t size ) 6280 { 6281 return (void *) malloc( size ); 6282 } 6283 6284 void *yyrealloc (void * ptr, yy_size_t size ) 6285 { 6286 /* The cast to (char *) in the following accommodates both 6287 * implementations that use char* generic pointers, and those 6288 * that use void* generic pointers. It works with the latter 6289 * because both ANSI C and C++ allow castless assignment from 6290 * any pointer type to void*, and deal with argument conversions 6291 * as though doing an assignment. 6292 */ 6293 return (void *) realloc( (char *) ptr, size ); 6294 } 6295 6296 void yyfree (void * ptr ) 6297 { 6298 free( (char *) ptr ); /* see yyrealloc() for (char *) cast */ 6299 } 6300 6301 #define YYTABLES_NAME "yytables" 6302 6303 #line 671 "/usr/src/usr.sbin/unbound/util/configlexer.lex" 6304 6305 6306 6307