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