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