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