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