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>
303typedef int8_t flex_int8_t;
304typedef uint8_t flex_uint8_t;
305typedef int16_t flex_int16_t;
306typedef uint16_t flex_uint16_t;
307typedef int32_t flex_int32_t;
308typedef uint32_t flex_uint32_t;
309#else
310typedef signed char flex_int8_t;
311typedef short int flex_int16_t;
312typedef int flex_int32_t;
313typedef unsigned char flex_uint8_t;
314typedef unsigned short int flex_uint16_t;
315typedef 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
409typedef struct yy_buffer_state *YY_BUFFER_STATE;
410#endif
411
412#ifndef YY_TYPEDEF_YY_SIZE_T
413#define YY_TYPEDEF_YY_SIZE_T
414typedef size_t yy_size_t;
415#endif
416
417extern int yyleng;
418
419extern 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
445struct 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. */
509static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
510static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
511static 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. */
528static char yy_hold_char;
529static int yy_n_chars;		/* number of characters read into yy_ch_buf */
530int yyleng;
531
532/* Points to current character in buffer. */
533static char *yy_c_buf_p = NULL;
534static int yy_init = 0;		/* whether we need to initialize */
535static 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 */
540static int yy_did_buffer_switch_on_eof;
541
542void yyrestart ( FILE *input_file  );
543void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer  );
544YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size  );
545void yy_delete_buffer ( YY_BUFFER_STATE b  );
546void yy_flush_buffer ( YY_BUFFER_STATE b  );
547void yypush_buffer_state ( YY_BUFFER_STATE new_buffer  );
548void yypop_buffer_state ( void );
549
550static void yyensure_buffer_stack ( void );
551static void yy_load_buffer_state ( void );
552static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file  );
553#define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER )
554
555YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size  );
556YY_BUFFER_STATE yy_scan_string ( const char *yy_str  );
557YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len  );
558
559void *yyalloc ( yy_size_t  );
560void *yyrealloc ( void *, yy_size_t  );
561void 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 */
585typedef flex_uint8_t YY_CHAR;
586
587FILE *yyin = NULL, *yyout = NULL;
588
589typedef int yy_state_type;
590
591extern int yylineno;
592int yylineno = 1;
593
594extern char *yytext;
595#ifdef yytext_ptr
596#undef yytext_ptr
597#endif
598#define yytext_ptr yytext
599
600static yy_state_type yy_get_previous_state ( void );
601static yy_state_type yy_try_NUL_trans ( yy_state_type current_state  );
602static int yy_get_next_buffer ( void );
603static 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. */
619struct yy_trans_info
620	{
621	flex_int32_t yy_verify;
622	flex_int32_t yy_nxt;
623	};
624static 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
779static 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
811static 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
822static 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
980static 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
1138static 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
1576static 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
2014static yy_state_type yy_last_accepting_state;
2015static char *yy_last_accepting_cpos;
2016
2017extern int yy_flex_debug;
2018int 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
2024static int yy_more_flag = 0;
2025static 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
2029char *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
2061struct inc_state {
2062	char* filename;
2063	int line;
2064	YY_BUFFER_STATE buffer;
2065	struct inc_state* next;
2066};
2067static struct inc_state* config_include_stack = NULL;
2068static int inc_depth = 0;
2069
2070static 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
2114static 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
2168static 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
2221static int yy_init_globals ( void );
2222
2223/* Accessor methods to globals.
2224   These are made visible to non-reentrant scanners for convenience. */
2225
2226int yylex_destroy ( void );
2227
2228int yyget_debug ( void );
2229
2230void yyset_debug ( int debug_flag  );
2231
2232YY_EXTRA_TYPE yyget_extra ( void );
2233
2234void yyset_extra ( YY_EXTRA_TYPE user_defined  );
2235
2236FILE *yyget_in ( void );
2237
2238void yyset_in  ( FILE * _in_str  );
2239
2240FILE *yyget_out ( void );
2241
2242void yyset_out  ( FILE * _out_str  );
2243
2244			int yyget_leng ( void );
2245
2246char *yyget_text ( void );
2247
2248int yyget_lineno ( void );
2249
2250void 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
2258extern "C" int yywrap ( void );
2259#else
2260extern int yywrap ( void );
2261#endif
2262#endif
2263
2264#ifndef YY_NO_UNPUT
2265
2266#endif
2267
2268#ifndef yytext_ptr
2269static void yy_flex_strncpy ( char *, const char *, int );
2270#endif
2271
2272#ifdef YY_NEED_STRLEN
2273static int yy_flex_strlen ( const char * );
2274#endif
2275
2276#ifndef YY_NO_INPUT
2277#ifdef __cplusplus
2278static int yyinput ( void );
2279#else
2280static 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
2365extern 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 */
2387YY_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);
2443yy_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
2463yy_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
2474do_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
2485case 1:
2486YY_RULE_SETUP
2487#line 184 "configlexer.lex"
2488{ LEXOUT(("SP ")); /* ignore */ }
2489	YY_BREAK
2490case 2:
2491YY_RULE_SETUP
2492#line 185 "configlexer.lex"
2493{ LEXOUT(("comment(%s) ", yytext)); /* ignore */ }
2494	YY_BREAK
2495case 3:
2496YY_RULE_SETUP
2497#line 186 "configlexer.lex"
2498{ LEXOUT(("v(%s) ", yytext)); return VAR_SERVER;}
2499	YY_BREAK
2500case 4:
2501YY_RULE_SETUP
2502#line 187 "configlexer.lex"
2503{ LEXOUT(("v(%s) ", yytext)); return VAR_NAME;}
2504	YY_BREAK
2505case 5:
2506YY_RULE_SETUP
2507#line 188 "configlexer.lex"
2508{ LEXOUT(("v(%s) ", yytext)); return VAR_IP_ADDRESS;}
2509	YY_BREAK
2510case 6:
2511YY_RULE_SETUP
2512#line 189 "configlexer.lex"
2513{ LEXOUT(("v(%s) ", yytext)); return VAR_IP_ADDRESS;}
2514	YY_BREAK
2515case 7:
2516YY_RULE_SETUP
2517#line 190 "configlexer.lex"
2518{ LEXOUT(("v(%s) ", yytext)); return VAR_IP_TRANSPARENT;}
2519	YY_BREAK
2520case 8:
2521YY_RULE_SETUP
2522#line 191 "configlexer.lex"
2523{ LEXOUT(("v(%s) ", yytext)); return VAR_IP_FREEBIND;}
2524	YY_BREAK
2525case 9:
2526YY_RULE_SETUP
2527#line 192 "configlexer.lex"
2528{ LEXOUT(("v(%s) ", yytext)); return VAR_SEND_BUFFER_SIZE;}
2529	YY_BREAK
2530case 10:
2531YY_RULE_SETUP
2532#line 193 "configlexer.lex"
2533{ LEXOUT(("v(%s) ", yytext)); return VAR_RECEIVE_BUFFER_SIZE;}
2534	YY_BREAK
2535case 11:
2536YY_RULE_SETUP
2537#line 194 "configlexer.lex"
2538{ LEXOUT(("v(%s) ", yytext)); return VAR_DEBUG_MODE;}
2539	YY_BREAK
2540case 12:
2541YY_RULE_SETUP
2542#line 195 "configlexer.lex"
2543{ LEXOUT(("v(%s) ", yytext)); return VAR_USE_SYSTEMD;}
2544	YY_BREAK
2545case 13:
2546YY_RULE_SETUP
2547#line 196 "configlexer.lex"
2548{ LEXOUT(("v(%s) ", yytext)); return VAR_HIDE_VERSION;}
2549	YY_BREAK
2550case 14:
2551YY_RULE_SETUP
2552#line 197 "configlexer.lex"
2553{ LEXOUT(("v(%s) ", yytext)); return VAR_HIDE_IDENTITY;}
2554	YY_BREAK
2555case 15:
2556YY_RULE_SETUP
2557#line 198 "configlexer.lex"
2558{ LEXOUT(("v(%s) ", yytext)); return VAR_DROP_UPDATES; }
2559	YY_BREAK
2560case 16:
2561YY_RULE_SETUP
2562#line 199 "configlexer.lex"
2563{ LEXOUT(("v(%s) ", yytext)); return VAR_IP4_ONLY;}
2564	YY_BREAK
2565case 17:
2566YY_RULE_SETUP
2567#line 200 "configlexer.lex"
2568{ LEXOUT(("v(%s) ", yytext)); return VAR_IP6_ONLY;}
2569	YY_BREAK
2570case 18:
2571YY_RULE_SETUP
2572#line 201 "configlexer.lex"
2573{ LEXOUT(("v(%s) ", yytext)); return VAR_DO_IP4;}
2574	YY_BREAK
2575case 19:
2576YY_RULE_SETUP
2577#line 202 "configlexer.lex"
2578{ LEXOUT(("v(%s) ", yytext)); return VAR_DO_IP6;}
2579	YY_BREAK
2580case 20:
2581YY_RULE_SETUP
2582#line 203 "configlexer.lex"
2583{ LEXOUT(("v(%s) ", yytext)); return VAR_DATABASE;}
2584	YY_BREAK
2585case 21:
2586YY_RULE_SETUP
2587#line 204 "configlexer.lex"
2588{ LEXOUT(("v(%s) ", yytext)); return VAR_IDENTITY;}
2589	YY_BREAK
2590case 22:
2591YY_RULE_SETUP
2592#line 205 "configlexer.lex"
2593{ LEXOUT(("v(%s) ", yytext)); return VAR_VERSION;}
2594	YY_BREAK
2595case 23:
2596YY_RULE_SETUP
2597#line 206 "configlexer.lex"
2598{ LEXOUT(("v(%s) ", yytext)); return VAR_NSID;}
2599	YY_BREAK
2600case 24:
2601YY_RULE_SETUP
2602#line 207 "configlexer.lex"
2603{ LEXOUT(("v(%s) ", yytext)); return VAR_LOGFILE;}
2604	YY_BREAK
2605case 25:
2606YY_RULE_SETUP
2607#line 208 "configlexer.lex"
2608{ LEXOUT(("v(%s) ", yytext)); return VAR_LOG_ONLY_SYSLOG;}
2609	YY_BREAK
2610case 26:
2611YY_RULE_SETUP
2612#line 209 "configlexer.lex"
2613{ LEXOUT(("v(%s) ", yytext)); return VAR_SERVER_COUNT;}
2614	YY_BREAK
2615case 27:
2616YY_RULE_SETUP
2617#line 210 "configlexer.lex"
2618{ LEXOUT(("v(%s) ", yytext)); return VAR_TCP_COUNT;}
2619	YY_BREAK
2620case 28:
2621YY_RULE_SETUP
2622#line 211 "configlexer.lex"
2623{ LEXOUT(("v(%s) ", yytext)); return VAR_TCP_REJECT_OVERFLOW;}
2624	YY_BREAK
2625case 29:
2626YY_RULE_SETUP
2627#line 212 "configlexer.lex"
2628{ LEXOUT(("v(%s) ", yytext)); return VAR_TCP_QUERY_COUNT;}
2629	YY_BREAK
2630case 30:
2631YY_RULE_SETUP
2632#line 213 "configlexer.lex"
2633{ LEXOUT(("v(%s) ", yytext)); return VAR_TCP_TIMEOUT;}
2634	YY_BREAK
2635case 31:
2636YY_RULE_SETUP
2637#line 214 "configlexer.lex"
2638{ LEXOUT(("v(%s) ", yytext)); return VAR_TCP_MSS;}
2639	YY_BREAK
2640case 32:
2641YY_RULE_SETUP
2642#line 215 "configlexer.lex"
2643{ LEXOUT(("v(%s) ", yytext)); return VAR_OUTGOING_TCP_MSS;}
2644	YY_BREAK
2645case 33:
2646YY_RULE_SETUP
2647#line 216 "configlexer.lex"
2648{ LEXOUT(("v(%s) ", yytext)); return VAR_IPV4_EDNS_SIZE;}
2649	YY_BREAK
2650case 34:
2651YY_RULE_SETUP
2652#line 217 "configlexer.lex"
2653{ LEXOUT(("v(%s) ", yytext)); return VAR_IPV6_EDNS_SIZE;}
2654	YY_BREAK
2655case 35:
2656YY_RULE_SETUP
2657#line 218 "configlexer.lex"
2658{ LEXOUT(("v(%s) ", yytext)); return VAR_PIDFILE;}
2659	YY_BREAK
2660case 36:
2661YY_RULE_SETUP
2662#line 219 "configlexer.lex"
2663{ LEXOUT(("v(%s) ", yytext)); return VAR_PORT;}
2664	YY_BREAK
2665case 37:
2666YY_RULE_SETUP
2667#line 220 "configlexer.lex"
2668{ LEXOUT(("v(%s) ", yytext)); return VAR_REUSEPORT;}
2669	YY_BREAK
2670case 38:
2671YY_RULE_SETUP
2672#line 221 "configlexer.lex"
2673{ LEXOUT(("v(%s) ", yytext)); return VAR_STATISTICS;}
2674	YY_BREAK
2675case 39:
2676YY_RULE_SETUP
2677#line 222 "configlexer.lex"
2678{ LEXOUT(("v(%s) ", yytext)); return VAR_CHROOT;}
2679	YY_BREAK
2680case 40:
2681YY_RULE_SETUP
2682#line 223 "configlexer.lex"
2683{ LEXOUT(("v(%s) ", yytext)); return VAR_USERNAME;}
2684	YY_BREAK
2685case 41:
2686YY_RULE_SETUP
2687#line 224 "configlexer.lex"
2688{ LEXOUT(("v(%s) ", yytext)); return VAR_ZONESDIR;}
2689	YY_BREAK
2690case 42:
2691YY_RULE_SETUP
2692#line 225 "configlexer.lex"
2693{ LEXOUT(("v(%s) ", yytext)); return VAR_ZONELISTFILE;}
2694	YY_BREAK
2695case 43:
2696YY_RULE_SETUP
2697#line 226 "configlexer.lex"
2698{ LEXOUT(("v(%s) ", yytext)); return VAR_DIFFFILE;}
2699	YY_BREAK
2700case 44:
2701YY_RULE_SETUP
2702#line 227 "configlexer.lex"
2703{ LEXOUT(("v(%s) ", yytext)); return VAR_XFRDFILE;}
2704	YY_BREAK
2705case 45:
2706YY_RULE_SETUP
2707#line 228 "configlexer.lex"
2708{ LEXOUT(("v(%s) ", yytext)); return VAR_XFRDIR;}
2709	YY_BREAK
2710case 46:
2711YY_RULE_SETUP
2712#line 229 "configlexer.lex"
2713{ LEXOUT(("v(%s) ", yytext)); return VAR_XFRD_RELOAD_TIMEOUT;}
2714	YY_BREAK
2715case 47:
2716YY_RULE_SETUP
2717#line 230 "configlexer.lex"
2718{ LEXOUT(("v(%s) ", yytext)); return VAR_VERBOSITY;}
2719	YY_BREAK
2720case 48:
2721YY_RULE_SETUP
2722#line 231 "configlexer.lex"
2723{ LEXOUT(("v(%s) ", yytext)); return VAR_ZONE;}
2724	YY_BREAK
2725case 49:
2726YY_RULE_SETUP
2727#line 232 "configlexer.lex"
2728{ LEXOUT(("v(%s) ", yytext)); return VAR_ZONEFILE;}
2729	YY_BREAK
2730case 50:
2731YY_RULE_SETUP
2732#line 233 "configlexer.lex"
2733{ LEXOUT(("v(%s) ", yytext)); return VAR_ZONESTATS;}
2734	YY_BREAK
2735case 51:
2736YY_RULE_SETUP
2737#line 234 "configlexer.lex"
2738{ LEXOUT(("v(%s) ", yytext)); return VAR_ALLOW_NOTIFY;}
2739	YY_BREAK
2740case 52:
2741YY_RULE_SETUP
2742#line 235 "configlexer.lex"
2743{ LEXOUT(("v(%s) ", yytext)); return VAR_SIZE_LIMIT_XFR;}
2744	YY_BREAK
2745case 53:
2746YY_RULE_SETUP
2747#line 236 "configlexer.lex"
2748{ LEXOUT(("v(%s) ", yytext)); return VAR_REQUEST_XFR;}
2749	YY_BREAK
2750case 54:
2751YY_RULE_SETUP
2752#line 237 "configlexer.lex"
2753{ LEXOUT(("v(%s) ", yytext)); return VAR_NOTIFY;}
2754	YY_BREAK
2755case 55:
2756YY_RULE_SETUP
2757#line 238 "configlexer.lex"
2758{ LEXOUT(("v(%s) ", yytext)); return VAR_NOTIFY_RETRY;}
2759	YY_BREAK
2760case 56:
2761YY_RULE_SETUP
2762#line 239 "configlexer.lex"
2763{ LEXOUT(("v(%s) ", yytext)); return VAR_PROVIDE_XFR;}
2764	YY_BREAK
2765case 57:
2766YY_RULE_SETUP
2767#line 240 "configlexer.lex"
2768{ LEXOUT(("v(%s) ", yytext)); return VAR_ALLOW_QUERY;}
2769	YY_BREAK
2770case 58:
2771YY_RULE_SETUP
2772#line 241 "configlexer.lex"
2773{ LEXOUT(("v(%s) ", yytext)); return VAR_OUTGOING_INTERFACE;}
2774	YY_BREAK
2775case 59:
2776YY_RULE_SETUP
2777#line 242 "configlexer.lex"
2778{ LEXOUT(("v(%s) ", yytext)); return VAR_ALLOW_AXFR_FALLBACK;}
2779	YY_BREAK
2780case 60:
2781YY_RULE_SETUP
2782#line 243 "configlexer.lex"
2783{ LEXOUT(("v(%s) ", yytext)); return VAR_TLS_AUTH;}
2784	YY_BREAK
2785case 61:
2786YY_RULE_SETUP
2787#line 244 "configlexer.lex"
2788{ LEXOUT(("v(%s) ", yytext)); return VAR_TLS_AUTH_DOMAIN_NAME;}
2789	YY_BREAK
2790case 62:
2791YY_RULE_SETUP
2792#line 245 "configlexer.lex"
2793{ LEXOUT(("v(%s) ", yytext)); return VAR_TLS_AUTH_CLIENT_CERT;}
2794	YY_BREAK
2795case 63:
2796YY_RULE_SETUP
2797#line 246 "configlexer.lex"
2798{ LEXOUT(("v(%s) ", yytext)); return VAR_TLS_AUTH_CLIENT_KEY;}
2799	YY_BREAK
2800case 64:
2801YY_RULE_SETUP
2802#line 247 "configlexer.lex"
2803{ LEXOUT(("v(%s) ", yytext)); return VAR_TLS_AUTH_CLIENT_KEY_PW;}
2804	YY_BREAK
2805case 65:
2806YY_RULE_SETUP
2807#line 248 "configlexer.lex"
2808{ LEXOUT(("v(%s) ", yytext)); return VAR_KEY;}
2809	YY_BREAK
2810case 66:
2811YY_RULE_SETUP
2812#line 249 "configlexer.lex"
2813{ LEXOUT(("v(%s) ", yytext)); return VAR_ALGORITHM;}
2814	YY_BREAK
2815case 67:
2816YY_RULE_SETUP
2817#line 250 "configlexer.lex"
2818{ LEXOUT(("v(%s) ", yytext)); return VAR_SECRET;}
2819	YY_BREAK
2820case 68:
2821YY_RULE_SETUP
2822#line 251 "configlexer.lex"
2823{ LEXOUT(("v(%s) ", yytext)); return VAR_PATTERN;}
2824	YY_BREAK
2825case 69:
2826YY_RULE_SETUP
2827#line 252 "configlexer.lex"
2828{ LEXOUT(("v(%s) ", yytext)); return VAR_INCLUDE_PATTERN;}
2829	YY_BREAK
2830case 70:
2831YY_RULE_SETUP
2832#line 253 "configlexer.lex"
2833{ LEXOUT(("v(%s) ", yytext)); return VAR_REMOTE_CONTROL;}
2834	YY_BREAK
2835case 71:
2836YY_RULE_SETUP
2837#line 254 "configlexer.lex"
2838{ LEXOUT(("v(%s) ", yytext)); return VAR_CONTROL_ENABLE;}
2839	YY_BREAK
2840case 72:
2841YY_RULE_SETUP
2842#line 255 "configlexer.lex"
2843{ LEXOUT(("v(%s) ", yytext)); return VAR_CONTROL_INTERFACE;}
2844	YY_BREAK
2845case 73:
2846YY_RULE_SETUP
2847#line 256 "configlexer.lex"
2848{ LEXOUT(("v(%s) ", yytext)); return VAR_CONTROL_PORT;}
2849	YY_BREAK
2850case 74:
2851YY_RULE_SETUP
2852#line 257 "configlexer.lex"
2853{ LEXOUT(("v(%s) ", yytext)); return VAR_SERVER_KEY_FILE;}
2854	YY_BREAK
2855case 75:
2856YY_RULE_SETUP
2857#line 258 "configlexer.lex"
2858{ LEXOUT(("v(%s) ", yytext)); return VAR_SERVER_CERT_FILE;}
2859	YY_BREAK
2860case 76:
2861YY_RULE_SETUP
2862#line 259 "configlexer.lex"
2863{ LEXOUT(("v(%s) ", yytext)); return VAR_CONTROL_KEY_FILE;}
2864	YY_BREAK
2865case 77:
2866YY_RULE_SETUP
2867#line 260 "configlexer.lex"
2868{ LEXOUT(("v(%s) ", yytext)); return VAR_CONTROL_CERT_FILE;}
2869	YY_BREAK
2870case 78:
2871YY_RULE_SETUP
2872#line 261 "configlexer.lex"
2873{ LEXOUT(("v(%s) ", yytext)); return VAR_AXFR;}
2874	YY_BREAK
2875case 79:
2876YY_RULE_SETUP
2877#line 262 "configlexer.lex"
2878{ LEXOUT(("v(%s) ", yytext)); return VAR_UDP;}
2879	YY_BREAK
2880case 80:
2881YY_RULE_SETUP
2882#line 263 "configlexer.lex"
2883{ LEXOUT(("v(%s) ", yytext)); return VAR_RRL_SIZE;}
2884	YY_BREAK
2885case 81:
2886YY_RULE_SETUP
2887#line 264 "configlexer.lex"
2888{ LEXOUT(("v(%s) ", yytext)); return VAR_RRL_RATELIMIT;}
2889	YY_BREAK
2890case 82:
2891YY_RULE_SETUP
2892#line 265 "configlexer.lex"
2893{ LEXOUT(("v(%s) ", yytext)); return VAR_RRL_SLIP;}
2894	YY_BREAK
2895case 83:
2896YY_RULE_SETUP
2897#line 266 "configlexer.lex"
2898{ LEXOUT(("v(%s) ", yytext)); return VAR_RRL_IPV4_PREFIX_LENGTH;}
2899	YY_BREAK
2900case 84:
2901YY_RULE_SETUP
2902#line 267 "configlexer.lex"
2903{ LEXOUT(("v(%s) ", yytext)); return VAR_RRL_IPV6_PREFIX_LENGTH;}
2904	YY_BREAK
2905case 85:
2906YY_RULE_SETUP
2907#line 268 "configlexer.lex"
2908{ LEXOUT(("v(%s) ", yytext)); return VAR_RRL_WHITELIST_RATELIMIT;}
2909	YY_BREAK
2910case 86:
2911YY_RULE_SETUP
2912#line 269 "configlexer.lex"
2913{ LEXOUT(("v(%s) ", yytext)); return VAR_RRL_WHITELIST;}
2914	YY_BREAK
2915case 87:
2916YY_RULE_SETUP
2917#line 270 "configlexer.lex"
2918{ LEXOUT(("v(%s) ", yytext)); return VAR_ZONEFILES_CHECK;}
2919	YY_BREAK
2920case 88:
2921YY_RULE_SETUP
2922#line 271 "configlexer.lex"
2923{ LEXOUT(("v(%s) ", yytext)); return VAR_ZONEFILES_WRITE;}
2924	YY_BREAK
2925case 89:
2926YY_RULE_SETUP
2927#line 272 "configlexer.lex"
2928{ LEXOUT(("v(%s) ", yytext)); return VAR_DNSTAP;}
2929	YY_BREAK
2930case 90:
2931YY_RULE_SETUP
2932#line 273 "configlexer.lex"
2933{ LEXOUT(("v(%s) ", yytext)); return VAR_DNSTAP_ENABLE;}
2934	YY_BREAK
2935case 91:
2936YY_RULE_SETUP
2937#line 274 "configlexer.lex"
2938{ LEXOUT(("v(%s) ", yytext)); return VAR_DNSTAP_SOCKET_PATH; }
2939	YY_BREAK
2940case 92:
2941YY_RULE_SETUP
2942#line 275 "configlexer.lex"
2943{ LEXOUT(("v(%s) ", yytext)); return VAR_DNSTAP_IP; }
2944	YY_BREAK
2945case 93:
2946YY_RULE_SETUP
2947#line 276 "configlexer.lex"
2948{ LEXOUT(("v(%s) ", yytext)); return VAR_DNSTAP_TLS; }
2949	YY_BREAK
2950case 94:
2951YY_RULE_SETUP
2952#line 277 "configlexer.lex"
2953{ LEXOUT(("v(%s) ", yytext)); return VAR_DNSTAP_TLS_SERVER_NAME; }
2954	YY_BREAK
2955case 95:
2956YY_RULE_SETUP
2957#line 278 "configlexer.lex"
2958{ LEXOUT(("v(%s) ", yytext)); return VAR_DNSTAP_TLS_CERT_BUNDLE; }
2959	YY_BREAK
2960case 96:
2961YY_RULE_SETUP
2962#line 279 "configlexer.lex"
2963{ LEXOUT(("v(%s) ", yytext)); return VAR_DNSTAP_TLS_CLIENT_KEY_FILE; }
2964	YY_BREAK
2965case 97:
2966YY_RULE_SETUP
2967#line 280 "configlexer.lex"
2968{ LEXOUT(("v(%s) ", yytext)); return VAR_DNSTAP_TLS_CLIENT_CERT_FILE; }
2969	YY_BREAK
2970case 98:
2971YY_RULE_SETUP
2972#line 281 "configlexer.lex"
2973{ LEXOUT(("v(%s) ", yytext)); return VAR_DNSTAP_SEND_IDENTITY; }
2974	YY_BREAK
2975case 99:
2976YY_RULE_SETUP
2977#line 282 "configlexer.lex"
2978{ LEXOUT(("v(%s) ", yytext)); return VAR_DNSTAP_SEND_VERSION; }
2979	YY_BREAK
2980case 100:
2981YY_RULE_SETUP
2982#line 283 "configlexer.lex"
2983{ LEXOUT(("v(%s) ", yytext)); return VAR_DNSTAP_IDENTITY; }
2984	YY_BREAK
2985case 101:
2986YY_RULE_SETUP
2987#line 284 "configlexer.lex"
2988{ LEXOUT(("v(%s) ", yytext)); return VAR_DNSTAP_VERSION; }
2989	YY_BREAK
2990case 102:
2991YY_RULE_SETUP
2992#line 285 "configlexer.lex"
2993{ LEXOUT(("v(%s) ", yytext)); return VAR_DNSTAP_LOG_AUTH_QUERY_MESSAGES; }
2994	YY_BREAK
2995case 103:
2996YY_RULE_SETUP
2997#line 286 "configlexer.lex"
2998{ LEXOUT(("v(%s) ", yytext)); return VAR_DNSTAP_LOG_AUTH_RESPONSE_MESSAGES; }
2999	YY_BREAK
3000case 104:
3001YY_RULE_SETUP
3002#line 287 "configlexer.lex"
3003{ LEXOUT(("v(%s) ", yytext)); return VAR_LOG_TIME_ASCII;}
3004	YY_BREAK
3005case 105:
3006YY_RULE_SETUP
3007#line 288 "configlexer.lex"
3008{ LEXOUT(("v(%s) ", yytext)); return VAR_ROUND_ROBIN;}
3009	YY_BREAK
3010case 106:
3011YY_RULE_SETUP
3012#line 289 "configlexer.lex"
3013{ LEXOUT(("v(%s) ", yytext)); return VAR_MINIMAL_RESPONSES;}
3014	YY_BREAK
3015case 107:
3016YY_RULE_SETUP
3017#line 290 "configlexer.lex"
3018{ LEXOUT(("v(%s) ", yytext)); return VAR_CONFINE_TO_ZONE;}
3019	YY_BREAK
3020case 108:
3021YY_RULE_SETUP
3022#line 291 "configlexer.lex"
3023{ LEXOUT(("v(%s) ", yytext)); return VAR_REFUSE_ANY;}
3024	YY_BREAK
3025case 109:
3026YY_RULE_SETUP
3027#line 292 "configlexer.lex"
3028{ LEXOUT(("v(%s) ", yytext)); return VAR_MAX_REFRESH_TIME;}
3029	YY_BREAK
3030case 110:
3031YY_RULE_SETUP
3032#line 293 "configlexer.lex"
3033{ LEXOUT(("v(%s) ", yytext)); return VAR_MIN_REFRESH_TIME;}
3034	YY_BREAK
3035case 111:
3036YY_RULE_SETUP
3037#line 294 "configlexer.lex"
3038{ LEXOUT(("v(%s) ", yytext)); return VAR_MAX_RETRY_TIME;}
3039	YY_BREAK
3040case 112:
3041YY_RULE_SETUP
3042#line 295 "configlexer.lex"
3043{ LEXOUT(("v(%s) ", yytext)); return VAR_MIN_RETRY_TIME;}
3044	YY_BREAK
3045case 113:
3046YY_RULE_SETUP
3047#line 296 "configlexer.lex"
3048{ LEXOUT(("v(%s) ", yytext)); return VAR_MIN_EXPIRE_TIME;}
3049	YY_BREAK
3050case 114:
3051YY_RULE_SETUP
3052#line 297 "configlexer.lex"
3053{ LEXOUT(("v(%s) ", yytext)); return VAR_STORE_IXFR;}
3054	YY_BREAK
3055case 115:
3056YY_RULE_SETUP
3057#line 298 "configlexer.lex"
3058{ LEXOUT(("v(%s) ", yytext)); return VAR_IXFR_SIZE;}
3059	YY_BREAK
3060case 116:
3061YY_RULE_SETUP
3062#line 299 "configlexer.lex"
3063{ LEXOUT(("v(%s) ", yytext)); return VAR_IXFR_NUMBER;}
3064	YY_BREAK
3065case 117:
3066YY_RULE_SETUP
3067#line 300 "configlexer.lex"
3068{ LEXOUT(("v(%s) ", yytext)); return VAR_CREATE_IXFR;}
3069	YY_BREAK
3070case 118:
3071YY_RULE_SETUP
3072#line 301 "configlexer.lex"
3073{ LEXOUT(("v(%s) ", yytext)); return VAR_MULTI_MASTER_CHECK;}
3074	YY_BREAK
3075case 119:
3076YY_RULE_SETUP
3077#line 302 "configlexer.lex"
3078{ LEXOUT(("v(%s) ", yytext)); return VAR_TLS_SERVICE_KEY;}
3079	YY_BREAK
3080case 120:
3081YY_RULE_SETUP
3082#line 303 "configlexer.lex"
3083{ LEXOUT(("v(%s) ", yytext)); return VAR_TLS_SERVICE_OCSP;}
3084	YY_BREAK
3085case 121:
3086YY_RULE_SETUP
3087#line 304 "configlexer.lex"
3088{ LEXOUT(("v(%s) ", yytext)); return VAR_TLS_SERVICE_PEM;}
3089	YY_BREAK
3090case 122:
3091YY_RULE_SETUP
3092#line 305 "configlexer.lex"
3093{ LEXOUT(("v(%s) ", yytext)); return VAR_TLS_PORT;}
3094	YY_BREAK
3095case 123:
3096YY_RULE_SETUP
3097#line 306 "configlexer.lex"
3098{ LEXOUT(("v(%s) ", yytext)); return VAR_TLS_CERT_BUNDLE; }
3099	YY_BREAK
3100case 124:
3101YY_RULE_SETUP
3102#line 307 "configlexer.lex"
3103{ LEXOUT(("v(%s) ", yytext)); return VAR_PROXY_PROTOCOL_PORT; }
3104	YY_BREAK
3105case 125:
3106YY_RULE_SETUP
3107#line 308 "configlexer.lex"
3108{ LEXOUT(("v(%s) ", yytext)); return VAR_ANSWER_COOKIE;}
3109	YY_BREAK
3110case 126:
3111YY_RULE_SETUP
3112#line 309 "configlexer.lex"
3113{ LEXOUT(("v(%s) ", yytext)); return VAR_COOKIE_SECRET;}
3114	YY_BREAK
3115case 127:
3116YY_RULE_SETUP
3117#line 310 "configlexer.lex"
3118{ LEXOUT(("v(%s) ", yytext)); return VAR_COOKIE_SECRET_FILE;}
3119	YY_BREAK
3120case 128:
3121YY_RULE_SETUP
3122#line 311 "configlexer.lex"
3123{ LEXOUT(("v(%s) ", yytext)); return VAR_XFRD_TCP_MAX;}
3124	YY_BREAK
3125case 129:
3126YY_RULE_SETUP
3127#line 312 "configlexer.lex"
3128{ LEXOUT(("v(%s) ", yytext)); return VAR_XFRD_TCP_PIPELINE;}
3129	YY_BREAK
3130case 130:
3131YY_RULE_SETUP
3132#line 313 "configlexer.lex"
3133{ LEXOUT(("v(%s) ", yytext)); return VAR_VERIFY; }
3134	YY_BREAK
3135case 131:
3136YY_RULE_SETUP
3137#line 314 "configlexer.lex"
3138{ LEXOUT(("v(%s) ", yytext)); return VAR_ENABLE; }
3139	YY_BREAK
3140case 132:
3141YY_RULE_SETUP
3142#line 315 "configlexer.lex"
3143{ LEXOUT(("v(%s) ", yytext)); return VAR_VERIFY_ZONE; }
3144	YY_BREAK
3145case 133:
3146YY_RULE_SETUP
3147#line 316 "configlexer.lex"
3148{ LEXOUT(("v(%s) ", yytext)); return VAR_VERIFY_ZONES; }
3149	YY_BREAK
3150case 134:
3151YY_RULE_SETUP
3152#line 317 "configlexer.lex"
3153{ LEXOUT(("v(%s) ", yytext)); return VAR_VERIFIER; }
3154	YY_BREAK
3155case 135:
3156YY_RULE_SETUP
3157#line 318 "configlexer.lex"
3158{ LEXOUT(("v(%s) ", yytext)); return VAR_VERIFIER_COUNT; }
3159	YY_BREAK
3160case 136:
3161YY_RULE_SETUP
3162#line 319 "configlexer.lex"
3163{ LEXOUT(("v(%s) ", yytext)); return VAR_VERIFIER_FEED_ZONE; }
3164	YY_BREAK
3165case 137:
3166YY_RULE_SETUP
3167#line 320 "configlexer.lex"
3168{ LEXOUT(("v(%s) ", yytext)); return VAR_VERIFIER_TIMEOUT; }
3169	YY_BREAK
3170case 138:
3171/* rule 138 can match eol */
3172YY_RULE_SETUP
3173#line 321 "configlexer.lex"
3174{ LEXOUT(("NL\n")); cfg_parser->line++;}
3175	YY_BREAK
3176case 139:
3177YY_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
3185case 140:
3186YY_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
3194case 141:
3195YY_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
3203case 142:
3204YY_RULE_SETUP
3205#line 339 "configlexer.lex"
3206{ LEXOUT(("v(%s) ", yytext)); return VAR_CPU_AFFINITY; }
3207	YY_BREAK
3208case 143:
3209YY_RULE_SETUP
3210#line 340 "configlexer.lex"
3211{ LEXOUT(("v(%s) ", yytext)); return VAR_XFRD_CPU_AFFINITY; }
3212	YY_BREAK
3213case 144:
3214YY_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 */
3228case 145:
3229YY_RULE_SETUP
3230#line 353 "configlexer.lex"
3231{ BEGIN(quotedstring); LEXOUT(("QS ")); }
3232	YY_BREAK
3233case YY_STATE_EOF(quotedstring):
3234#line 354 "configlexer.lex"
3235{
3236        c_error("EOF inside quoted string");
3237        BEGIN(INITIAL);
3238}
3239	YY_BREAK
3240case 146:
3241YY_RULE_SETUP
3242#line 358 "configlexer.lex"
3243{ LEXOUT(("STR(%s) ", yytext)); yymore(); }
3244	YY_BREAK
3245case 147:
3246/* rule 147 can match eol */
3247YY_RULE_SETUP
3248#line 359 "configlexer.lex"
3249{ cfg_parser->line++; yymore(); }
3250	YY_BREAK
3251case 148:
3252YY_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 */
3263case 149:
3264YY_RULE_SETUP
3265#line 369 "configlexer.lex"
3266{ LEXOUT(("v(%s) ", yytext)); BEGIN(include); }
3267	YY_BREAK
3268case YY_STATE_EOF(include):
3269#line 370 "configlexer.lex"
3270{
3271        c_error("EOF inside include directive");
3272        BEGIN(INITIAL);
3273}
3274	YY_BREAK
3275case 150:
3276YY_RULE_SETUP
3277#line 374 "configlexer.lex"
3278{ LEXOUT(("ISP ")); /* ignore */ }
3279	YY_BREAK
3280case 151:
3281/* rule 151 can match eol */
3282YY_RULE_SETUP
3283#line 375 "configlexer.lex"
3284{ LEXOUT(("NL\n")); cfg_parser->line++;}
3285	YY_BREAK
3286case 152:
3287YY_RULE_SETUP
3288#line 376 "configlexer.lex"
3289{ LEXOUT(("IQS ")); BEGIN(include_quoted); }
3290	YY_BREAK
3291case 153:
3292YY_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
3300case 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
3307case 154:
3308YY_RULE_SETUP
3309#line 386 "configlexer.lex"
3310{ LEXOUT(("ISTR(%s) ", yytext)); yymore(); }
3311	YY_BREAK
3312case 155:
3313/* rule 155 can match eol */
3314YY_RULE_SETUP
3315#line 387 "configlexer.lex"
3316{ cfg_parser->line++; yymore(); }
3317	YY_BREAK
3318case 156:
3319YY_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
3328case 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
3340case 157:
3341YY_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
3346case 158:
3347YY_RULE_SETUP
3348#line 407 "configlexer.lex"
3349ECHO;
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 */
3490static 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
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 */
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
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 */
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 */
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
3814static 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 */
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 */
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 */
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 */
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 */
3932void 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 */
3962void 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 */
3981static 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 */
4030YY_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 */
4067YY_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 */
4080YY_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
4114static 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 */
4142int yyget_lineno  (void)
4143{
4144
4145    return yylineno;
4146}
4147
4148/** Get the input stream.
4149 *
4150 */
4151FILE *yyget_in  (void)
4152{
4153        return yyin;
4154}
4155
4156/** Get the output stream.
4157 *
4158 */
4159FILE *yyget_out  (void)
4160{
4161        return yyout;
4162}
4163
4164/** Get the length of the current token.
4165 *
4166 */
4167int yyget_leng  (void)
4168{
4169        return yyleng;
4170}
4171
4172/** Get the current token.
4173 *
4174 */
4175
4176char *yyget_text  (void)
4177{
4178        return yytext;
4179}
4180
4181/** Set the current line number.
4182 * @param _line_number line number
4183 *
4184 */
4185void 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 */
4197void yyset_in (FILE *  _in_str )
4198{
4199        yyin = _in_str ;
4200}
4201
4202void yyset_out (FILE *  _out_str )
4203{
4204        yyout = _out_str ;
4205}
4206
4207int yyget_debug  (void)
4208{
4209        return yy_flex_debug;
4210}
4211
4212void yyset_debug (int  _bdebug )
4213{
4214        yy_flex_debug = _bdebug ;
4215}
4216
4217static 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. */
4246int 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
4272static 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
4282static 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
4292void *yyalloc (yy_size_t  size )
4293{
4294			return malloc(size);
4295}
4296
4297void *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
4310void 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