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