xref: /freebsd/contrib/unbound/util/configlexer.c (revision fbd465f263400d3bc6c1a5c30857a76738c64396)
1 #include "config.h"
2 #include "util/configyyrename.h"
3 
4 #line 2 "<stdout>"
5 
6 #define  YY_INT_ALIGNED short int
7 
8 /* A lexical scanner generated by flex */
9 
10 #define FLEX_SCANNER
11 #define YY_FLEX_MAJOR_VERSION 2
12 #define YY_FLEX_MINOR_VERSION 6
13 #define YY_FLEX_SUBMINOR_VERSION 4
14 #if YY_FLEX_SUBMINOR_VERSION > 0
15 #define FLEX_BETA
16 #endif
17 
18 /* First, we deal with  platform-specific or compiler-specific issues. */
19 
20 /* begin standard C headers. */
21 #include <stdio.h>
22 #include <string.h>
23 #include <errno.h>
24 #include <stdlib.h>
25 
26 /* end standard C headers. */
27 
28 /* flex integer type definitions */
29 
30 #ifndef FLEXINT_H
31 #define FLEXINT_H
32 
33 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
34 
35 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
36 
37 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
38  * if you want the limit (max/min) macros for int types.
39  */
40 #ifndef __STDC_LIMIT_MACROS
41 #define __STDC_LIMIT_MACROS 1
42 #endif
43 
44 #include <inttypes.h>
45 typedef int8_t flex_int8_t;
46 typedef uint8_t flex_uint8_t;
47 typedef int16_t flex_int16_t;
48 typedef uint16_t flex_uint16_t;
49 typedef int32_t flex_int32_t;
50 typedef uint32_t flex_uint32_t;
51 #else
52 typedef signed char flex_int8_t;
53 typedef short int flex_int16_t;
54 typedef int flex_int32_t;
55 typedef unsigned char flex_uint8_t;
56 typedef unsigned short int flex_uint16_t;
57 typedef unsigned int flex_uint32_t;
58 
59 /* Limits of integral types. */
60 #ifndef INT8_MIN
61 #define INT8_MIN               (-128)
62 #endif
63 #ifndef INT16_MIN
64 #define INT16_MIN              (-32767-1)
65 #endif
66 #ifndef INT32_MIN
67 #define INT32_MIN              (-2147483647-1)
68 #endif
69 #ifndef INT8_MAX
70 #define INT8_MAX               (127)
71 #endif
72 #ifndef INT16_MAX
73 #define INT16_MAX              (32767)
74 #endif
75 #ifndef INT32_MAX
76 #define INT32_MAX              (2147483647)
77 #endif
78 #ifndef UINT8_MAX
79 #define UINT8_MAX              (255U)
80 #endif
81 #ifndef UINT16_MAX
82 #define UINT16_MAX             (65535U)
83 #endif
84 #ifndef UINT32_MAX
85 #define UINT32_MAX             (4294967295U)
86 #endif
87 
88 #ifndef SIZE_MAX
89 #define SIZE_MAX               (~(size_t)0)
90 #endif
91 
92 #endif /* ! C99 */
93 
94 #endif /* ! FLEXINT_H */
95 
96 /* begin standard C++ headers. */
97 
98 /* TODO: this is always defined, so inline it */
99 #define yyconst const
100 
101 #if defined(__GNUC__) && __GNUC__ >= 3
102 #define yynoreturn __attribute__((__noreturn__))
103 #else
104 #define yynoreturn
105 #endif
106 
107 /* Returned upon end-of-file. */
108 #define YY_NULL 0
109 
110 /* Promotes a possibly negative, possibly signed char to an
111  *   integer in range [0..255] for use as an array index.
112  */
113 #define YY_SC_TO_UI(c) ((YY_CHAR) (c))
114 
115 /* Enter a start condition.  This macro really ought to take a parameter,
116  * but we do it the disgusting crufty way forced on us by the ()-less
117  * definition of BEGIN.
118  */
119 #define BEGIN (yy_start) = 1 + 2 *
120 /* Translate the current start state into a value that can be later handed
121  * to BEGIN to return to the state.  The YYSTATE alias is for lex
122  * compatibility.
123  */
124 #define YY_START (((yy_start) - 1) / 2)
125 #define YYSTATE YY_START
126 /* Action number for EOF rule of a given start state. */
127 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
128 /* Special action meaning "start processing a new file". */
129 #define YY_NEW_FILE yyrestart( yyin  )
130 #define YY_END_OF_BUFFER_CHAR 0
131 
132 /* Size of default input buffer. */
133 #ifndef YY_BUF_SIZE
134 #ifdef __ia64__
135 /* On IA-64, the buffer size is 16k, not 8k.
136  * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
137  * Ditto for the __ia64__ case accordingly.
138  */
139 #define YY_BUF_SIZE 32768
140 #else
141 #define YY_BUF_SIZE 16384
142 #endif /* __ia64__ */
143 #endif
144 
145 /* The state buf must be large enough to hold one state per character in the main buffer.
146  */
147 #define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
148 
149 #ifndef YY_TYPEDEF_YY_BUFFER_STATE
150 #define YY_TYPEDEF_YY_BUFFER_STATE
151 typedef struct yy_buffer_state *YY_BUFFER_STATE;
152 #endif
153 
154 #ifndef YY_TYPEDEF_YY_SIZE_T
155 #define YY_TYPEDEF_YY_SIZE_T
156 typedef size_t yy_size_t;
157 #endif
158 
159 extern int yyleng;
160 
161 extern FILE *yyin, *yyout;
162 
163 #define EOB_ACT_CONTINUE_SCAN 0
164 #define EOB_ACT_END_OF_FILE 1
165 #define EOB_ACT_LAST_MATCH 2
166 
167     #define YY_LESS_LINENO(n)
168     #define YY_LINENO_REWIND_TO(ptr)
169 
170 /* Return all but the first "n" matched characters back to the input stream. */
171 #define yyless(n) \
172 	do \
173 		{ \
174 		/* Undo effects of setting up yytext. */ \
175         int yyless_macro_arg = (n); \
176         YY_LESS_LINENO(yyless_macro_arg);\
177 		*yy_cp = (yy_hold_char); \
178 		YY_RESTORE_YY_MORE_OFFSET \
179 		(yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
180 		YY_DO_BEFORE_ACTION; /* set up yytext again */ \
181 		} \
182 	while ( 0 )
183 #define unput(c) yyunput( c, (yytext_ptr)  )
184 
185 #ifndef YY_STRUCT_YY_BUFFER_STATE
186 #define YY_STRUCT_YY_BUFFER_STATE
187 struct yy_buffer_state
188 	{
189 	FILE *yy_input_file;
190 
191 	char *yy_ch_buf;		/* input buffer */
192 	char *yy_buf_pos;		/* current position in input buffer */
193 
194 	/* Size of input buffer in bytes, not including room for EOB
195 	 * characters.
196 	 */
197 	int yy_buf_size;
198 
199 	/* Number of characters read into yy_ch_buf, not including EOB
200 	 * characters.
201 	 */
202 	int yy_n_chars;
203 
204 	/* Whether we "own" the buffer - i.e., we know we created it,
205 	 * and can realloc() it to grow it, and should free() it to
206 	 * delete it.
207 	 */
208 	int yy_is_our_buffer;
209 
210 	/* Whether this is an "interactive" input source; if so, and
211 	 * if we're using stdio for input, then we want to use getc()
212 	 * instead of fread(), to make sure we stop fetching input after
213 	 * each newline.
214 	 */
215 	int yy_is_interactive;
216 
217 	/* Whether we're considered to be at the beginning of a line.
218 	 * If so, '^' rules will be active on the next match, otherwise
219 	 * not.
220 	 */
221 	int yy_at_bol;
222 
223     int yy_bs_lineno; /**< The line count. */
224     int yy_bs_column; /**< The column count. */
225 
226 	/* Whether to try to fill the input buffer when we reach the
227 	 * end of it.
228 	 */
229 	int yy_fill_buffer;
230 
231 	int yy_buffer_status;
232 
233 #define YY_BUFFER_NEW 0
234 #define YY_BUFFER_NORMAL 1
235 	/* When an EOF's been seen but there's still some text to process
236 	 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
237 	 * shouldn't try reading from the input source any more.  We might
238 	 * still have a bunch of tokens to match, though, because of
239 	 * possible backing-up.
240 	 *
241 	 * When we actually see the EOF, we change the status to "new"
242 	 * (via yyrestart()), so that the user can continue scanning by
243 	 * just pointing yyin at a new input file.
244 	 */
245 #define YY_BUFFER_EOF_PENDING 2
246 
247 	};
248 #endif /* !YY_STRUCT_YY_BUFFER_STATE */
249 
250 /* Stack of input buffers. */
251 static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
252 static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
253 static YY_BUFFER_STATE * yy_buffer_stack = NULL; /**< Stack as an array. */
254 
255 /* We provide macros for accessing buffer states in case in the
256  * future we want to put the buffer states in a more general
257  * "scanner state".
258  *
259  * Returns the top of the stack, or NULL.
260  */
261 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
262                           ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
263                           : NULL)
264 /* Same as previous macro, but useful when we know that the buffer stack is not
265  * NULL or when we need an lvalue. For internal use only.
266  */
267 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
268 
269 /* yy_hold_char holds the character lost when yytext is formed. */
270 static char yy_hold_char;
271 static int yy_n_chars;		/* number of characters read into yy_ch_buf */
272 int yyleng;
273 
274 /* Points to current character in buffer. */
275 static char *yy_c_buf_p = NULL;
276 static int yy_init = 0;		/* whether we need to initialize */
277 static int yy_start = 0;	/* start state number */
278 
279 /* Flag which is used to allow yywrap()'s to do buffer switches
280  * instead of setting up a fresh yyin.  A bit of a hack ...
281  */
282 static int yy_did_buffer_switch_on_eof;
283 
284 void yyrestart ( FILE *input_file  );
285 void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer  );
286 YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size  );
287 void yy_delete_buffer ( YY_BUFFER_STATE b  );
288 void yy_flush_buffer ( YY_BUFFER_STATE b  );
289 void yypush_buffer_state ( YY_BUFFER_STATE new_buffer  );
290 void yypop_buffer_state ( void );
291 
292 static void yyensure_buffer_stack ( void );
293 static void yy_load_buffer_state ( void );
294 static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file  );
295 #define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER )
296 
297 YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size  );
298 YY_BUFFER_STATE yy_scan_string ( const char *yy_str  );
299 YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len  );
300 
301 void *yyalloc ( yy_size_t  );
302 void *yyrealloc ( void *, yy_size_t  );
303 void yyfree ( void *  );
304 
305 #define yy_new_buffer yy_create_buffer
306 #define yy_set_interactive(is_interactive) \
307 	{ \
308 	if ( ! YY_CURRENT_BUFFER ){ \
309         yyensure_buffer_stack (); \
310 		YY_CURRENT_BUFFER_LVALUE =    \
311             yy_create_buffer( yyin, YY_BUF_SIZE ); \
312 	} \
313 	YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
314 	}
315 #define yy_set_bol(at_bol) \
316 	{ \
317 	if ( ! YY_CURRENT_BUFFER ){\
318         yyensure_buffer_stack (); \
319 		YY_CURRENT_BUFFER_LVALUE =    \
320             yy_create_buffer( yyin, YY_BUF_SIZE ); \
321 	} \
322 	YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
323 	}
324 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
325 
326 /* Begin user sect3 */
327 typedef flex_uint8_t YY_CHAR;
328 
329 FILE *yyin = NULL, *yyout = NULL;
330 
331 typedef int yy_state_type;
332 
333 extern int yylineno;
334 int yylineno = 1;
335 
336 extern char *yytext;
337 #ifdef yytext_ptr
338 #undef yytext_ptr
339 #endif
340 #define yytext_ptr yytext
341 
342 static yy_state_type yy_get_previous_state ( void );
343 static yy_state_type yy_try_NUL_trans ( yy_state_type current_state  );
344 static int yy_get_next_buffer ( void );
345 static void yynoreturn yy_fatal_error ( const char* msg  );
346 
347 /* Done after the current pattern has been matched and before the
348  * corresponding action - sets up yytext.
349  */
350 #define YY_DO_BEFORE_ACTION \
351 	(yytext_ptr) = yy_bp; \
352 	(yytext_ptr) -= (yy_more_len); \
353 	yyleng = (int) (yy_cp - (yytext_ptr)); \
354 	(yy_hold_char) = *yy_cp; \
355 	*yy_cp = '\0'; \
356 	(yy_c_buf_p) = yy_cp;
357 #define YY_NUM_RULES 394
358 #define YY_END_OF_BUFFER 395
359 /* This struct is not used in this scanner,
360    but its presence is necessary. */
361 struct yy_trans_info
362 	{
363 	flex_int32_t yy_verify;
364 	flex_int32_t yy_nxt;
365 	};
366 static const flex_int16_t yy_accept[3921] =
367     {   0,
368         1,    1,  368,  368,  372,  372,  376,  376,  380,  380,
369         1,    1,  384,  384,  388,  388,  395,  392,    1,  366,
370       366,  393,    2,  392,  392,  392,  392,  392,  392,  392,
371       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
372       392,  392,  392,  392,  392,  392,  393,  368,  369,  369,
373       370,  393,  372,  373,  373,  374,  393,  379,  376,  377,
374       377,  378,  393,  380,  381,  381,  382,  393,  391,  367,
375         2,  371,  391,  393,  387,  384,  385,  385,  386,  393,
376       388,  389,  389,  390,  393,  392,    0,    1,    2,    2,
377         2,    2,  392,  392,  392,  392,  392,  392,  392,  392,
378 
379       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
380       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
381       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
382       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
383       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
384       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
385       392,  392,  368,    0,  372,    0,  379,    0,  376,  380,
386         0,  391,    0,    2,    2,  391,  387,    0,  384,  388,
387         0,  392,  392,  392,  392,  392,  392,  392,  392,  392,
388       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
389 
390       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
391       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
392       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
393       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
394       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
395       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
396       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
397       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
398       392,  391,  392,  392,  392,  392,  392,  392,  392,  392,
399       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
400 
401       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
402       392,  392,  392,  392,  392,  392,  364,  392,  392,  392,
403       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
404       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
405       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
406       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
407       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
408       392,  392,  392,  392,  392,  392,  137,  392,  392,  392,
409       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
410       392,  392,  392,  392,  392,  392,  392,  392,  147,  392,
411 
412       392,  392,  392,  392,  392,  392,  392,  391,  392,  392,
413       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
414       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
415       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
416       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
417       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
418       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
419       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
420       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
421       392,  392,  392,  392,  392,  119,  392,  392,  363,  392,
422 
423       392,  392,  392,  392,  392,  392,  392,    8,  392,  392,
424       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
425       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
426       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
427       138,  392,  392,  392,  392,  392,  392,  392,  392,  392,
428       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
429       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
430       392,  392,  392,  392,  152,  392,  392,  392,  391,  392,
431       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
432       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
433 
434       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
435       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
436       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
437       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
438       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
439       392,  392,  392,  353,  392,  392,  392,  392,  392,  392,
440       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
441       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
442       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
443       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
444 
445       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
446       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
447       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
448       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
449       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
450       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
451       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
452       392,  392,  392,  391,  392,  392,  392,  392,  392,  392,
453       392,  392,  392,  392,  392,  392,  392,   71,  392,  392,
454       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
455 
456       392,  392,  392,  392,  273,  392,   14,   15,  392,  392,
457        20,   19,  392,  392,  247,  392,  392,  392,  392,  392,
458       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
459       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
460       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
461       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
462       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
463       145,  392,  392,  392,  392,  392,  392,  392,  392,  392,
464       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
465       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
466 
467       245,  392,  392,  392,  392,  392,  392,  392,  392,  392,
468       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
469       392,  392,    3,  392,  392,  392,  392,  392,  392,  392,
470       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
471       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
472       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
473       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
474       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
475       392,  392,  392,  392,  392,  391,  392,  392,  392,  392,
476       392,  392,  392,  392,  342,  392,  392,  392,  341,  392,
477 
478       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
479       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
480       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
481       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
482       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
483       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
484       392,  392,  392,  375,  392,  392,  392,  392,  392,  392,
485       392,  392,   70,  392,  392,  392,  392,  392,  392,  392,
486       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
487        74,  392,  311,  392,  392,  392,  392,  392,  392,  392,
488 
489       392,  392,  392,  392,  354,  355,  392,  392,  392,  392,
490       392,  392,  392,  392,  392,   75,  392,  392,  146,  392,
491       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
492       392,  392,  392,  392,  392,  141,  392,  392,  392,  392,
493       392,  392,  392,  392,  392,  392,  234,  392,  392,  392,
494       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
495       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
496        22,  392,  392,  392,  392,  392,  392,  392,  392,  392,
497       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
498       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
499 
500       392,  392,  392,  173,  392,  392,  392,  392,  392,  392,
501       391,  375,  392,  392,  392,  392,  392,  392,  392,  392,
502       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
503       392,  392,  392,  392,  392,  392,  392,  117,  392,  392,
504       392,  392,  392,  392,  392,  392,  392,  319,  392,  392,
505       392,  392,  392,  392,  392,  392,  392,  392,  392,   16,
506       392,  392,  392,  392,  392,  392,  392,  392,  201,  392,
507       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
508       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
509       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
510 
511       392,  172,  392,  392,  392,  392,  392,  392,  392,  392,
512       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
513       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
514       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
515       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
516       392,  392,  116,  392,  392,  392,  392,  392,  392,  392,
517       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
518       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
519       392,  392,  392,  392,  392,   37,  392,  392,  392,  392,
520       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
521 
522       392,  392,  392,  392,  392,  392,  392,  392,   38,  392,
523       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
524       392,  392,  392,  392,  392,   72,  392,  392,  392,  392,
525       392,  392,  392,  392,  392,  392,  392,  144,  392,  392,
526       392,  391,  392,  392,  392,  392,  392,  392,  136,  392,
527       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
528       392,  392,  392,  392,  392,  392,  392,   73,  392,  392,
529       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
530       392,  392,  277,  392,  392,  392,  392,  392,  392,  392,
531       392,  392,  392,  392,  392,  392,  392,  392,  202,  392,
532 
533       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
534       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
535       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
536       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
537        60,  392,  392,  392,  392,  392,  392,  392,  392,  392,
538       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
539       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
540       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
541       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
542       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
543 
544       297,  392,  392,  392,  392,  392,  392,  392,  392,  392,
545       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
546       392,  392,   65,  392,   66,  392,  392,  392,  392,  392,
547       392,  120,  392,  121,  392,  392,  392,  392,  392,  118,
548       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
549       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
550       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
551       392,  392,  392,    7,  392,  392,  392,  392,  392,  391,
552       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
553       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
554 
555       392,  392,  392,  262,  392,  392,  392,  392,  392,  392,
556       176,  392,  392,  392,  392,  392,  392,  392,  392,  392,
557       392,  392,  392,  392,  392,  392,  392,  392,  278,  392,
558       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
559       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
560       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
561       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
562        51,  392,  392,  392,  392,  392,  392,  392,  392,  392,
563       392,  392,   61,  392,  392,  392,  392,  392,  392,  392,
564       392,  392,  392,  392,  392,  392,  392,  225,  392,  224,
565 
566       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
567       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
568       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
569       392,  392,  392,  392,   17,   18,  392,  392,  392,  392,
570       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
571       392,   76,  392,  392,  392,  392,  392,  392,  392,  392,
572       392,  392,  392,  392,  392,  233,  392,  392,  392,  392,
573       392,  392,  392,  123,  392,  122,  392,  392,  392,  392,
574       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
575       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
576 
577       392,  392,  215,  392,  392,  392,  392,  392,  392,  392,
578       392,  392,  153,  392,  253,  392,  392,  392,  391,  392,
579       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
580       392,  392,  392,  111,  392,  392,  392,  392,  392,  392,
581       392,  392,  392,  392,   98,  392,  392,  392,  392,  392,
582       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
583       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
584       392,  392,  392,  246,  392,  392,  392,  392,  392,  392,
585       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
586       392,  392,  392,  392,  103,  392,  392,  392,  392,  392,
587 
588       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
589       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
590       392,  392,   69,  392,  392,  392,  392,  392,  392,  392,
591       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
592       392,  392,  218,  219,  392,  392,  392,  313,  392,  392,
593       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
594       392,  392,  392,  392,    6,  392,  392,  392,  392,  392,
595       392,  392,  332,  392,  392,  392,  392,  392,  392,  392,
596       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
597       392,  392,  392,  317,  392,  392,  392,  392,  392,  392,
598 
599       392,  343,  392,  392,  392,  392,  392,  392,  392,  392,
600       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
601       392,  392,  392,  392,  392,  392,  392,   48,  392,  392,
602       392,  392,  392,   50,  392,  392,  392,   99,  392,  392,
603       392,  392,  392,   58,  392,  392,  392,  392,  392,  392,
604       392,  392,  392,  392,  392,  392,  392,  391,  392,  211,
605       392,  392,  392,  148,  392,  392,  392,  392,  392,  392,
606       392,  392,  392,  392,  392,  392,  392,  392,  238,  392,
607       392,  212,  392,  392,  392,  392,  392,  258,  392,  392,
608       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
609 
610       392,  392,  392,  392,  392,  392,  392,  392,  392,   59,
611       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
612       392,  150,  129,  392,  130,  392,  392,  392,  392,  128,
613       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
614       169,  392,  392,   56,  392,  392,  392,  392,  392,  392,
615       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
616       392,  392,  392,  392,  295,  392,  392,  392,  392,  392,
617       392,  392,  392,  392,  213,  392,  392,  392,  392,  392,
618       223,  216,  392,  222,  392,  392,  392,  392,  392,  392,
619       392,  392,  257,  392,  392,  392,  392,  392,  392,  261,
620 
621       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
622       392,  115,  392,  392,  392,  392,  392,  392,  392,  392,
623       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
624       392,  392,  392,  142,  392,  392,  392,  392,  392,  392,
625       392,  392,   67,  392,  392,  392,  392,   31,  392,  392,
626       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
627        21,  392,  392,  392,  392,  392,  392,  392,   32,   41,
628       392,  181,  392,  392,  392,  392,  392,  392,  392,  392,
629       392,  392,  392,  392,  392,  392,  392,  392,  209,  392,
630       392,  391,  392,  392,  392,  392,  358,  392,  392,   84,
631 
632       392,   87,  392,  392,  392,  392,  392,  392,  392,  392,
633       392,  392,  359,  392,  392,  392,  392,  392,  392,  392,
634       392,  321,  392,  392,  392,  392,  274,  392,  392,  392,
635       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
636       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
637       392,  131,  392,  392,  392,  392,  392,  392,  392,  392,
638       392,  392,  392,  392,  168,  392,   52,  392,  392,  392,
639       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
640       392,  392,  392,  392,  392,  392,  392,  268,  392,  392,
641       392,  392,  392,  392,  392,  392,  336,  392,  392,  392,
642 
643       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
644       392,  392,  392,  392,  392,  392,  392,  392,  175,  392,
645       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
646       392,  392,  330,  392,  392,  392,  392,  244,  392,  392,
647       392,  392,  392,  392,  392,  392,  392,  392,  392,  350,
648       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
649       392,  392,  194,  392,  392,  392,  392,  392,  392,  392,
650       392,  392,  392,  392,  124,  392,  392,  392,  392,  392,
651       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
652       392,  392,  392,  392,  392,  392,  392,  392,  188,  392,
653 
654       203,  392,  392,  392,  392,  392,  392,  392,  392,  392,
655       391,  392,  156,  392,  392,  392,  392,  392,  392,  392,
656       392,  110,  392,  392,  392,  392,  236,  392,  392,  392,
657       392,  392,  392,  392,  392,  392,  259,  392,  392,  392,
658       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
659       392,  392,  392,  392,  286,  392,  392,  392,  392,  392,
660       392,  392,  392,  392,  392,  392,  149,  392,  392,  392,
661       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
662       392,  392,  392,  392,  392,  192,  392,  392,  392,  392,
663       392,  392,  392,   88,  392,   89,  392,  392,  392,  392,
664 
665       392,  271,  392,  392,  392,  392,  392,   68,  339,  392,
666       392,  392,  392,  392,   97,  204,  392,  226,  392,  263,
667       392,  392,  217,  314,  392,  392,  392,  392,  309,  392,
668       392,  392,   80,  392,  206,  392,  392,  392,  392,  392,
669       392,    9,  392,  392,  392,  392,  392,  114,  392,  392,
670       392,  392,  392,  392,  301,  392,  392,  392,  392,  392,
671       392,  235,  392,  392,  392,  392,  392,  392,  392,  392,
672       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
673       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
674       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
675 
676       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
677       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
678       391,  392,  392,  392,  392,  191,  392,  392,  392,  392,
679       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
680       193,  252,  177,  392,  320,  392,  392,  392,  392,  392,
681       285,  392,  392,  392,  392,  392,  392,  392,  392,  392,
682       392,  392,  392,  248,  392,  392,  392,  392,  392,  392,
683       312,  392,  392,  392,  392,  392,  392,  392,  392,  392,
684       392,  392,  392,  392,  392,  392,  392,  392,  392,  174,
685       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
686 
687       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
688       392,  340,  392,  205,  392,  392,  392,  392,  392,  392,
689       392,  392,  392,   79,   81,  392,  392,  392,  392,  392,
690       392,  392,  392,  392,  392,  113,  392,  392,  392,  392,
691       392,  392,  299,  392,  392,  392,  392,  392,  392,  392,
692       316,  392,  392,  392,  392,  392,  392,  392,  392,  392,
693       392,  392,  392,  392,  240,  392,   39,   33,   35,  392,
694       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
695       392,  392,   40,  392,   34,   36,  392,   42,  392,  392,
696       392,  392,  392,  392,  392,  109,  392,  187,  392,  392,
697 
698       392,  392,  392,  392,  392,  392,  392,  391,  392,  392,
699       392,  392,  392,  392,  392,  392,  344,  392,  392,  392,
700       392,  392,  242,  239,  392,  392,  392,  392,  392,  392,
701       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
702       392,  392,  392,  392,  392,   78,  392,  392,  392,  151,
703       392,  132,  392,  392,  392,  392,  392,  392,  392,  392,
704       392,  392,  392,  170,   53,  392,  392,  392,  383,   13,
705       392,  392,  392,  392,  392,  392,  392,  157,  392,  392,
706       392,  392,  392,  392,  392,  392,  334,  392,  337,  392,
707       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
708 
709       392,  392,   12,  392,  392,   23,  392,  392,  392,  392,
710       392,  392,  392,  305,  392,  392,  352,  392,  392,  392,
711       392,  318,  392,  392,  392,  392,   82,  392,  250,  392,
712       392,  392,  392,  392,  241,  392,  392,  392,  392,   77,
713       392,  392,  392,  392,  392,  392,   24,  392,  392,   49,
714       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
715       392,  392,  186,  185,  392,  392,  392,  392,  383,  392,
716       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
717       243,  237,  392,  392,  260,  392,  392,  322,  392,  392,
718       392,  392,  392,  392,  293,  392,  392,  392,  392,  392,
719 
720       392,  392,  392,  199,  392,  392,  392,  392,  392,  392,
721       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
722       392,  392,  392,  392,  392,  392,   90,  392,  392,  392,
723       392,  392,  392,  392,  392,  300,  392,  392,  392,  392,
724       221,  392,  392,  392,  392,  392,  392,  249,  392,  392,
725       392,  392,  392,  392,  392,  392,  392,  392,  307,  392,
726       392,  392,  346,  392,  348,  347,  183,  392,  392,  392,
727        83,  392,  392,  392,  392,  195,  392,  392,  392,  392,
728       392,  125,  127,  126,  392,  392,  392,   26,  392,  392,
729       178,  392,  180,  392,  227,  392,  392,  392,  392,  184,
730 
731       392,  392,  254,  392,  392,  392,  392,  264,  392,  392,
732       392,  392,  392,  392,  392,  392,  392,  159,  360,  392,
733       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
734       392,  276,  392,  392,  392,  392,  392,  392,  392,  361,
735       392,   28,  392,  315,  392,  392,  392,  392,  392,  392,
736       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
737       392,  392,   95,  228,  392,  392,  270,  392,  392,  392,
738       298,  392,  338,  392,  220,  392,  392,  310,  392,  392,
739       392,  308,   62,  392,  392,  392,  392,  392,  392,  392,
740         4,  392,  392,  392,  392,  392,  140,  392,  158,  392,
741 
742       392,  392,  200,   30,  392,  392,  392,  392,  392,  392,
743       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
744       392,  392,  392,  392,  392,  267,   43,   44,  392,  392,
745       392,  392,  392,  392,  392,  392,  392,  323,  392,  392,
746       392,  392,  392,  392,  392,  284,  392,  392,  392,  392,
747       392,  392,  392,  392,  231,  392,  392,  392,  392,  392,
748       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
749        94,   93,  392,  392,   63,  392,  392,  296,  304,  392,
750       272,  392,  392,  392,  392,  392,   11,  392,  392,  392,
751       392,  365,  392,  392,  392,  392,  392,  139,  392,  392,
752 
753       392,  392,  392,  392,  229,  100,  392,  392,   46,  392,
754       392,  392,  392,  392,  392,  392,  392,  190,  392,  255,
755       392,  392,  392,  392,  392,  392,  392,  392,  392,  161,
756       392,  392,  392,  392,  275,  392,  392,  392,  392,  392,
757       283,  392,  392,  392,  392,  154,  392,  392,  392,  133,
758       135,  134,  392,  392,  392,  102,  106,  101,  392,  171,
759       392,  392,  392,  392,   91,  392,  269,  306,  392,  392,
760       392,  392,  392,  392,   10,  392,  392,  392,  392,  392,
761       302,  351,  392,  392,  392,  392,  392,  392,  392,  392,
762       357,   45,  392,  392,  392,  392,  392,  189,  392,  392,
763 
764       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
765       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
766       392,  392,  392,  392,  392,  392,  107,  105,  392,  392,
767        57,  392,  392,   92,  392,  335,  392,  392,  392,  392,
768        25,  392,  392,  392,  392,  392,  214,  392,  392,  349,
769       392,  392,  392,  392,  230,  392,  392,  392,  392,  392,
770       392,  392,  392,  392,  392,  210,  392,  392,  179,   85,
771        86,  392,  392,  392,  392,  392,  392,  324,  392,  392,
772       392,  392,  392,  392,  392,  280,  392,  392,  279,  155,
773       392,  392,  104,  392,   54,  392,  392,  162,  163,  166,
774 
775       167,  164,  165,   96,  333,  392,  392,  303,  143,  392,
776       392,  392,  392,   27,  392,  182,  392,  392,  392,  392,
777       392,  208,  392,  266,  392,  392,  392,  392,  392,  392,
778       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
779       392,  392,  392,  392,  392,  392,  392,  197,  196,  232,
780        47,  392,  392,  392,  392,  392,  392,  392,  392,  392,
781       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
782       392,  392,  392,  392,  392,  392,  392,  331,  392,  392,
783       392,  392,  112,  392,  392,  265,  392,  392,  294,  328,
784       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
785 
786       392,  362,  392,  108,   55,   64,    5,  392,  392,  251,
787       392,  392,  392,  392,  329,  392,  392,  392,  392,  392,
788       392,  392,  392,  392,  281,   29,  392,  392,  392,  256,
789       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
790       282,  392,  392,  392,  392,  160,  392,  392,  392,  392,
791       392,  392,  392,  392,  198,  392,  207,  392,  392,  392,
792       392,  392,  392,  392,  392,  392,  392,  392,  325,  392,
793       392,  392,  392,  392,  392,  392,  392,  392,  392,  392,
794       392,  392,  392,  392,  392,  392,  392,  356,  345,  392,
795       392,  289,  392,  392,  392,  392,  392,  326,  392,  392,
796 
797       392,  392,  392,  392,  327,  392,  392,  392,  287,  392,
798       290,  291,  392,  392,  392,  392,  392,  288,  292,    0
799     } ;
800 
801 static const YY_CHAR yy_ec[256] =
802     {   0,
803         1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
804         1,    1,    4,    1,    1,    1,    1,    1,    1,    1,
805         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
806         1,    2,    1,    5,    6,    1,    1,    1,    7,    1,
807         1,    1,    1,    1,    8,    1,    1,    1,    9,    1,
808        10,   11,    1,   12,    1,    1,    1,   13,    1,    1,
809         1,    1,    1,    1,   14,   15,   16,   17,   18,   19,
810        20,   21,   22,   23,   24,   25,   26,   27,   28,   29,
811        30,   31,   32,   33,   34,   35,   36,   37,   38,   39,
812         1,   40,    1,    1,    1,    1,   41,   42,   43,   44,
813 
814        45,   46,   47,   48,   49,   50,   51,   52,   53,   54,
815        55,   56,   57,   58,   59,   60,   61,   62,   63,   64,
816        65,   66,    1,    1,    1,    1,    1,    1,    1,    1,
817         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
818         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
819         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
820         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
821         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
822         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
823         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
824 
825         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
826         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
827         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
828         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
829         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
830         1,    1,    1,    1,    1
831     } ;
832 
833 static const YY_CHAR yy_meta[67] =
834     {   0,
835         1,    2,    3,    4,    5,    1,    6,    1,    1,    1,
836         1,    1,    7,    1,    1,    1,    1,    1,    1,    1,
837         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
838         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
839         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
840         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
841         1,    1,    1,    1,    1,    1
842     } ;
843 
844 static const flex_int16_t yy_base[3939] =
845     {   0,
846         0,    0,   64,   67,   70,   72,   78,   84,   89,   92,
847       131,  137,  112,  118,  123,  142,  574,  532,   96,11178,
848     11178,11178,  160,  185,  116,  183,  229,  132,  175,  173,
849       232,   50,   66,  120,  263,  275,  159,  323,  134,  375,
850       416,  286,  308,  283,  177,  126,  258,  520,11178,11178,
851     11178,   95,  471,11178,11178,11178,  236,  462,  476,11178,
852     11178,11178,  351,  398,11178,11178,11178,  104,  388,11178,
853       369,11178,  167,  375,  385,  383,11178,11178,11178,  390,
854       330,11178,11178,11178,  146,  309,  394,  177,    0,  406,
855         0,    0,  210,  224,  235,  281,  310,  259,  343,  389,
856 
857       256,  187,  396,  428,  426,  325,  382,  446,  303,  425,
858       402,  463,  344,  381,  423,  450,  451,  454,  473,  469,
859       472,  480,  501,  498,  496,  507,  453,  513,  487,  518,
860       503,  509,  535,  523,  538,  528,  543,  537,  386,  547,
861       559,  556,  351,  561,  573,  568,  594,  565,  592,  599,
862       585,  596,  595,  609,  627,  618,  626,  620,  621,  636,
863       637,  635,  291,  180,  273,  238,  270,  678,  306,  258,
864       342,  230,  689,  693,    0,  668,  152,  697,  188,  138,
865       455,  669,  666,  672,  677,  680,  697,  683,  698,  681,
866       696,  704,  695,  702,  707,  740,  701,  732,  743,  226,
867 
868       749,  793,  750,  733,  754,  728,  753,  756,  772,  762,
869       767,  788,  795,  785,  777,  783,  811,  748,  803,  816,
870       853,  828,  817,  789,  240,  835,  850,  250,  819,  607,
871       852,  847,  723,  860,   91,  768,  845,  863,  887,  872,
872       569,  864,  855,  879,  883,  877,  895,  880,  904,  842,
873       898,  892,  891,  929,  910,  899,  923,  912,  938,  928,
874       930,  948,  925,  944,  951,  939,  952,  956,  965,  943,
875       968,  955,  950,  980,  969,  992,  989,  986,  970,  979,
876       985,  991,  982,  994,  984,  995, 1011, 1009, 1028, 1029,
877      1020, 1030, 1038, 1024, 1026, 1027, 1033, 1032, 1036, 1023,
878 
879      1054, 1055, 1041, 1063, 1073,  233, 1059, 1075, 1078, 1067,
880      1092, 1081, 1085, 1086, 1087, 1090,11178, 1097, 1101, 1102,
881      1116, 1103, 1117, 1098, 1122, 1136, 1137, 1113, 1123, 1125,
882      1126, 1134, 1144, 1140, 1151, 1150, 1152, 1171, 1157, 1173,
883      1168, 1162, 1178, 1174, 1217, 1179, 1196, 1185, 1262, 1189,
884      1191, 1212, 1225, 1230,  486, 1219, 1211, 1249, 1218, 1232,
885      1255, 1241, 1261, 1258, 1282, 1274, 1277, 1259, 1276, 1285,
886      1286, 1296, 1299, 1301, 1164, 1321,11178, 1300, 1325, 1215,
887      1326, 1327, 1334, 1336, 1341, 1353, 1335, 1354, 1346, 1370,
888      1371, 1403, 1451, 1358, 1381, 1373, 1380, 1396,11178, 1390,
889 
890      1399, 1500, 1417, 1419, 1391, 1392, 1429, 1420, 1430, 1423,
891      1444, 1439, 1450, 1446, 1434, 1462, 1469, 1480, 1499, 1473,
892      1478, 1491, 1518, 1527, 1509, 1468, 1507, 1501, 1525, 1520,
893      1530, 1558, 1465, 1539, 1551, 1562, 1543, 1547, 1552, 1553,
894      1559, 1570, 1571, 1585, 1577, 1597, 1583, 1590, 1591, 1586,
895      1603, 1593, 1617, 1662, 1596, 1613, 1614, 1623, 1629, 1636,
896      1624, 1641, 1631, 1654, 1650, 1651, 1658, 1660, 1642, 1665,
897      1677, 1687, 1666, 1686, 1692, 1684, 1674, 1700, 1703, 1711,
898      1697, 1701, 1698, 1717, 1728, 1713, 1732, 1736, 1738, 1733,
899      1748, 1746, 1750, 1752, 1735,11178, 1755, 1765,11178, 1760,
900 
901      1759, 1762, 1761, 1764, 1769, 1775, 1778,11178, 1786, 1782,
902      1787, 1808, 1797, 1820, 1809, 1821, 1794, 1805, 1817, 1826,
903      1816, 1822, 1814, 1844, 1831, 1839, 1845, 1840, 1855, 1843,
904      1841, 1857, 1856, 1869, 1864, 1870, 1877, 1867, 1872, 1920,
905     11178, 1878, 1882, 1880, 1904, 1891, 1906, 1900, 1925, 1945,
906      1917, 1937, 1941, 1949, 1970, 1956, 1963, 1977, 1951, 1966,
907      1981, 1967, 1987, 1976, 1983, 1984, 2004, 1993, 1892, 2011,
908      2008, 2002, 2009, 1918,11178, 2013, 2014, 2026, 2029, 1922,
909      2015, 2019, 2018, 2035, 2001, 2032, 2040, 2051, 2050, 2064,
910      2041, 2061, 2070, 2076, 2060, 2078, 2080, 2067, 2081, 2075,
911 
912      2068, 2093, 2082, 2097, 2103, 2088, 2123, 2101, 2117, 2121,
913       158, 2106, 2126, 2129, 2137, 2140, 2116, 2115, 2133, 2135,
914      2142, 2132, 2144, 2154, 2150, 2143, 2149, 2169, 2159, 2160,
915      2171, 2165, 2184, 2174, 2190, 2170, 2178, 2198, 2187, 2192,
916      2193, 2163, 2204, 2207, 2234, 2205, 2226, 2211, 2212, 2217,
917      2236, 2233, 2243,11178, 2248, 2250, 2249, 2261, 2262, 2266,
918      2264, 2273, 2268, 2272, 2275, 2270, 2291, 2286, 2224, 2292,
919      2285, 2298, 2294, 2293, 2300, 2313, 2312, 2331, 2323, 2332,
920      2338, 2325, 2342, 2339, 2328, 2333, 2334, 2349, 2351, 2337,
921      2352, 2358, 2360, 2355, 2362, 2361, 2391, 2379, 2382, 2393,
922 
923      2388, 2381, 2387, 2394, 2383, 2401, 2404, 2409, 2430, 2422,
924      2423, 2419, 2442, 2440, 2420, 2450, 2436, 2451, 2437, 2438,
925      2463, 2466, 2467, 2468, 2449, 2469, 2462, 2472, 2476, 2474,
926      2478, 2504, 2494, 2475, 2490, 2498, 2508, 2503, 2502, 2513,
927      2524, 2515, 2511, 2526, 2538, 2539, 2542, 2536, 2548, 2545,
928      2560, 2553, 2551, 2563, 2565, 2571, 2566, 2577, 2568, 2592,
929      2595, 2598, 2583, 2597, 2606, 2594, 2608, 2604, 2603, 2609,
930      2619, 2625, 2479, 2636, 2640, 2644, 2633, 2642, 2634, 2650,
931      2645, 2635, 2654, 2657, 2687, 2668, 2670,11178, 2669, 2550,
932      2671, 2672, 2685, 2682, 2676, 2684, 2696, 2709, 2697, 2700,
933 
934      2695, 2683, 2698, 2744,11178, 2715,11178,11178,  759, 2714,
935     11178,11178, 2711, 2727,11178, 2721, 2745, 2741, 2758, 2748,
936      2754, 2760, 2773, 2768, 2775, 2772, 2742, 2819, 2777, 2798,
937      2785, 2787, 2814, 2783, 2824, 2822, 2790, 2830, 2841, 2834,
938      2812, 2767, 2836, 2851, 2845, 2861, 2868, 2870, 2871, 2872,
939      2873, 2878, 2864, 2862, 2886, 2865, 2887, 2901, 2883, 2900,
940      2896, 2904, 2893, 2907, 2910, 2897, 2931, 2924, 2930, 2940,
941     11178, 2927, 2943, 2921, 2928, 2933, 2946, 2945, 2949, 2958,
942      2956, 2955, 2964, 2965, 2951, 2960, 2957, 2966, 2977, 2972,
943      2976, 2970, 2982, 3000, 2996, 2999, 3010, 3016, 2997, 2993,
944 
945     11178, 3008, 3009, 2995, 3014, 3020, 3021, 3028, 3033, 3026,
946      3024, 3041, 3046, 3066, 3048, 3053, 3055, 3044, 3060, 3061,
947      3056, 3081,11178, 3076, 3064, 3073, 3090, 3077, 3097, 3052,
948      3086, 3087, 3096, 3101, 3103, 3111, 3100, 3112, 3125, 3123,
949      3122, 3119, 3121, 3127, 3138, 3139, 3137, 3150, 3156, 3153,
950      3143, 3148, 3149, 3152, 3161, 3164, 3166, 3174, 3175, 3178,
951      3197, 3184, 3202, 3189, 3180, 3209, 3211, 3206, 3196, 3208,
952      3212, 3205, 3213, 3223, 3224, 3231, 3225, 3232, 3236, 3229,
953      3246, 3230, 3241, 3255, 3261, 3267, 3251, 3265, 3270, 3258,
954      3263, 3259, 3284, 3276,11178, 3275, 3286, 3305,11178, 3296,
955 
956      3294, 3291, 3344, 3310, 3316, 3321, 3330, 3324, 3304, 3354,
957      3341, 3335, 3352, 3362, 3356, 3369, 3364, 3376, 3391, 3383,
958      3400, 3372, 3397, 3392, 3404, 3387, 3399, 3403, 3411, 3414,
959      3418, 3426, 3441, 3437,  760, 3449, 3424, 3429, 3434, 3479,
960      3442, 3450, 3443, 3447, 3461, 3486, 3475, 3451, 3474, 3481,
961      3477, 3484, 3500, 3502, 3504, 3507, 3497, 3512, 3517, 3520,
962      3467, 3529, 3521,11178, 3526, 3534, 3530, 3540, 3539, 3555,
963      3546, 3544,11178, 3550, 3560, 3554, 3579, 3566, 3561, 3578,
964      3564, 3571, 3588, 3572, 3582, 3586, 3591, 3597, 3587, 3606,
965     11178, 3601,11178, 3609, 3605, 3610, 3615, 3613, 3607, 3624,
966 
967      3621, 3614, 3640, 3641,11178,11178, 3644, 3650, 3634, 3653,
968      3662, 3663, 3651, 3659, 3656,11178, 3648, 3684,11178, 3691,
969      3670, 3690, 3680, 3678, 3672, 3696, 3682, 3689, 3699, 3709,
970      3686, 3713, 3716, 3705, 3720,11178, 3723, 3725, 3717, 3730,
971      3737, 3729, 3739, 3741, 3744, 3747,11178, 3754, 3751, 3757,
972      3756, 3758, 3770, 3771, 3761, 3786, 3781, 3773, 3774, 3772,
973      3799, 3783, 3800, 3808, 3810, 3806, 3807, 3819, 3816, 3820,
974     11178, 3817, 3813, 3805, 3829, 3823, 3830, 3827, 3832, 3837,
975      3833, 3826, 3858, 3859, 3854, 3866, 3849, 3863, 3855, 3878,
976      3882, 3864, 3890, 3870, 3877, 3873, 3872, 3885, 1348, 3889,
977 
978      3899, 3891, 3888,11178, 3900, 3911, 3921, 3916, 3923, 3926,
979      3905,  128, 3915, 3918, 3927, 3936, 3935, 3934, 3957, 3945,
980      3964, 3969, 3959, 3955, 3958, 3968, 3975, 3976, 3966, 3984,
981      3978, 3972, 3990, 3985, 3999, 4001, 3994,11178, 4018, 4005,
982      4020, 4014, 4004, 4012, 4028, 4010, 4048,11178, 4025, 4041,
983      4033, 4044, 4051, 4046, 4049, 4069, 4047, 4052, 4068,11178,
984      4076, 4065, 4071, 4087, 4095, 4074, 4091, 4086,11178, 4106,
985      4104, 4107, 4096, 4114, 4113, 4111, 4110, 4115, 4126, 4146,
986      4133, 4128, 4138, 4132, 4140, 4136, 4160, 4141, 4153, 4174,
987      4159, 4162, 4175, 4177, 4171, 4183, 4178, 4169, 4185, 4176,
988 
989      4187,11178, 4204, 4193, 4199, 4210, 4196, 4209, 4223, 4203,
990      4238, 4220, 4227, 4219, 4243, 4271, 4235, 4242, 4234, 4255,
991      4259, 4254, 4265, 4262, 4268, 4282, 4292, 4275, 4303, 4305,
992      4295, 4298, 4302, 4317, 4321, 4309, 4306, 4322, 4314, 4320,
993      4339, 4334, 4344, 4341, 4348, 4337, 4371, 4351, 4343, 4368,
994      3473, 4361,11178, 4355, 4366, 4370, 4374, 4367, 4405, 4393,
995      4395, 4384, 4408, 4396, 4400, 4407, 4411, 4401, 4429, 4420,
996      4427, 4417, 4431, 4436, 4432, 4434, 4442, 4433, 4437, 4450,
997      4465, 4452, 4471, 4469, 4473,11178, 4477, 4476, 4464, 4478,
998      4484, 4466, 4485, 4489, 4492, 4488, 4499, 4500, 4495, 4498,
999 
1000      4506, 4525, 4510, 4504, 4524, 4526, 4532, 4522,11178, 4536,
1001      4527, 4531, 4533, 4550, 4541, 4562, 4567, 4571, 4573, 4575,
1002      4577, 4561, 4580, 4583, 4568,11178, 4548, 4585, 4587, 4588,
1003      4589, 4602, 4599, 4610, 4596, 4604, 4605,11178, 4617, 4609,
1004      4620, 4613, 4614, 4612, 4638, 4647, 4637, 4639,11178, 4651,
1005      4649, 4653, 4654, 4658, 4648, 4644, 4665, 4664, 4671, 4677,
1006      4662, 4666, 4683, 4685, 4701, 4690, 4700,11178, 4689, 4693,
1007      4706, 4723, 4704, 4712, 4717, 4715, 4711, 4736, 4750, 4732,
1008      4735, 4733,11178, 4748, 4745, 4753, 4756, 4770, 4752, 4760,
1009      4772, 4764, 4768, 4784, 4774, 4782, 4788, 4783,11178, 4791,
1010 
1011      4794, 4796, 4806, 4800, 4808, 4809, 4781, 4810, 4824, 4819,
1012      4829, 4827, 4830, 4825, 4853, 4841, 4854, 4846, 4833, 4855,
1013      4852, 4862, 4835, 4857, 4867, 4877, 4888, 4897, 4881, 4898,
1014      4896, 4894, 4885, 4886, 4904, 4902, 4903, 4911, 4915, 4917,
1015     11178, 4919, 4928, 4924, 4922, 4908, 4927, 4935, 4945, 4947,
1016      4936, 4949, 4953, 4951, 4942, 4986, 4987, 4966, 4969, 4972,
1017      4971, 4975, 4982, 4996, 4976, 4984, 4988, 5010, 5002, 5008,
1018      4992, 5005, 4998, 5013, 5011, 5021, 5015, 5017, 5032, 5031,
1019      5033, 5037, 5042, 5035, 5044, 5028, 5045, 5063, 5048, 5055,
1020      5068, 5078, 5081, 5079, 5082, 5072, 5076, 5087, 5089, 5098,
1021 
1022     11178, 5092, 5094, 5115, 5107, 5106, 5112, 5130, 5127, 5140,
1023      5121, 5125, 5145, 5141, 5139, 5147, 5142, 5153, 5149, 5155,
1024      5150, 5156,11178, 5161,11178, 5165, 5160, 5159, 5183, 5166,
1025      5170,11178, 5194,11178, 5192, 5196, 5185, 5187, 5188,11178,
1026      5197, 5178, 5189, 5198, 5193, 5217, 5214, 5211, 5216, 5228,
1027      5223, 5244, 5241, 5238, 5230, 5231, 5224, 5234, 5251, 5239,
1028      5245, 5262, 5255, 5277, 5279, 5264, 5285, 5265, 5269, 5282,
1029      5291, 5280, 5296,11178, 5298, 5305, 5300, 5289, 5312, 5292,
1030      5306, 5307, 5318, 5322, 5315, 5332, 5330, 5342, 5323, 5348,
1031      5334, 5349, 5358, 5346, 5351, 5357, 5363, 5364, 5367, 5361,
1032 
1033      5375, 5376, 5381,11178, 5378, 5355, 5379, 5382, 5391, 5394,
1034     11178, 5402, 5387, 5414, 5416, 5406, 5408, 5397, 5427, 5431,
1035      5418, 5425, 5428, 5443, 5438, 5445, 5451, 5463,11178, 5453,
1036      5464, 5454, 5457, 5467, 5444, 5490, 5491, 5487, 5473, 5496,
1037      5503, 5494, 5489, 5486, 5488, 5485, 5508, 5513, 5515, 5525,
1038      5517, 5530, 5510, 5523, 5527, 5531, 5521, 5526, 5532, 5524,
1039      5541, 5542, 5548, 5550, 5549, 5553, 5568, 5563, 5552, 5574,
1040     11178, 5570, 5573, 5580, 5589, 5576, 5586, 5584, 5592, 5607,
1041      5613, 5608,11178, 5615, 5598, 5616, 5612, 5625, 5623, 5622,
1042      5603, 5629, 5637, 5642, 5651, 5650, 5644,11178, 5652,11178,
1043 
1044      5643, 5641, 5673, 5675, 5680, 5669, 5664, 5687, 5683, 5679,
1045      5678, 5693, 5696, 5708, 5691, 5699, 5694, 5700, 5706, 5703,
1046      5720, 5710, 5727, 5746, 5744, 5738, 5728, 5737, 5733, 5739,
1047      5741, 5767, 5747, 5758,11178,11178, 5756, 5764, 5768, 5773,
1048      5771, 5777, 5788, 5791, 5790, 5796, 5804, 5794, 5803, 5807,
1049      5827,11178, 5821, 5822, 5814, 5833, 5826, 5763, 5828, 5842,
1050      5816, 5839, 5831, 5852, 5850,11178, 5841, 5854, 5843, 5855,
1051      5862, 5877, 5864,11178, 5868,11178, 5866, 5871, 5873, 5870,
1052      5882, 5897, 5881, 5901, 5898, 5902, 5904, 5899, 5927, 5928,
1053      5912, 5917, 5932, 5914, 5922, 5929, 5935, 5923, 5951, 5931,
1054 
1055      5944, 5946,11178, 5952, 5945, 5962, 5963, 5949, 5972, 5976,
1056      5961, 5959,11178, 5971,11178, 5973, 5993, 5980, 5994, 5990,
1057      6013, 5995, 6003, 5997, 6018, 6020, 6009, 6012, 6022, 6021,
1058      6026, 6024, 6017,11178, 6039, 6036, 5999, 6042, 6041, 6051,
1059      6060, 6064, 6050, 6071,11178, 6068, 6077, 6061, 6065, 6080,
1060      6079, 6078, 6087, 6093, 6082, 6086, 6092, 6094, 6106, 6113,
1061      6115, 6114, 6107, 6120, 6123, 6121, 6134, 6151, 6139, 6131,
1062      6132, 6104, 6141,11178, 6148, 6150, 6153, 6149, 6140, 6177,
1063      6168, 6173, 6185, 6186, 6178, 6188, 6192, 6176, 6181, 6189,
1064      6194, 6203, 6219, 6214,11178, 6223, 6204, 6228, 6209, 6221,
1065 
1066      6208, 6224, 6238, 6220, 6234, 6242, 6230, 6231, 6251, 6257,
1067      6263, 6265, 6248, 6268, 6266, 6258, 6274, 6273, 6278, 6279,
1068      6289, 6283,11178, 6317, 6297, 6303, 6275, 6308, 6305, 6327,
1069      6322, 6309, 6307, 6333, 6313, 6336, 6321, 6330, 6342, 6350,
1070      6351, 6345,11178,11178, 6353, 6334, 6358,11178, 6362, 6354,
1071      6347, 6357, 6366, 6369, 6373, 6370, 6372, 6381, 6386, 6378,
1072      6389, 6401, 6380, 6396,11178, 6416, 6414, 6425, 6407, 6417,
1073      6426, 6428,11178, 6410, 6431, 6432, 6433, 6436, 6420, 6422,
1074      6421, 6447, 6449, 6463, 6446, 6444, 6467, 6480, 6469, 6483,
1075      6459, 6472, 6478,11178, 6465, 6462, 6495, 6501, 6489, 6496,
1076 
1077      6502,11178, 6499, 6516, 6503, 6526, 6510, 6521, 6524, 6530,
1078      6525, 6535, 6528, 6540, 6531, 6551, 6544, 6545, 6546, 6543,
1079      6557, 6559, 6577, 6567, 6569, 6578, 6581,11178, 6586, 6587,
1080      6570, 6583, 6589,11178, 6599, 6623, 6592,11178, 6605, 6594,
1081      6606, 6612, 6632,11178, 6616, 6625, 6619, 6633, 6610, 6641,
1082      6618, 6646, 6627, 6639, 6648, 6630, 6643, 6659, 6653,11178,
1083      6660, 6655, 6673,11178, 6677, 6676, 6680, 6683, 6684, 6688,
1084      6689, 6682, 6675, 6694, 6687, 6691, 6692, 6704,11178, 6712,
1085      6732,11178, 6723, 6724, 6708, 6718, 6733,11178, 6725, 6731,
1086      6736, 6738, 6739, 6742, 6744, 6751, 6746, 6752, 6753, 6759,
1087 
1088      6763, 6788, 6780, 6786, 6790, 6769, 6783, 6775, 6781,11178,
1089      6800, 6776, 6789, 6796, 6804, 6825, 6820, 6818, 6813, 6828,
1090      6822,11178,11178, 6836,11178, 6838, 6821, 6827, 6842,11178,
1091      6844, 6852, 6811, 6850, 6845, 6872, 6861, 6860, 6876, 6873,
1092     11178, 6880, 6882,11178, 6868, 6884, 6855, 6892, 6889, 6893,
1093      6877, 6911, 6913, 6900, 6886, 6916, 6917, 6918, 6908, 6920,
1094      6931, 6936, 6927, 6962,11178, 6933, 6943, 6940, 6951, 6956,
1095      6949, 6972, 6977, 6967,11178, 6979, 6983, 6970, 6993, 6996,
1096     11178,11178, 6991,11178, 6989, 7004, 6978, 7017, 7002, 7006,
1097      7027, 7008,11178, 7022, 7018, 7036, 7011, 7034, 7040,11178,
1098 
1099      7038, 7045, 7029, 7044, 7048, 7046, 7052, 7063, 7066, 7085,
1100      7073,11178, 7064, 7072, 7070, 7060, 7087, 7090, 7077, 7091,
1101      7099, 7093, 7094, 7089, 7127, 7116, 7102, 7118, 7134, 7136,
1102      7122, 7128, 7121,11178, 7138, 7141, 7144, 7149, 7152, 7155,
1103      7147, 7160,11178, 7162, 7166, 7176, 7179,11178, 7173, 7187,
1104      7182, 7185, 7174, 7197, 7198, 7194, 7171, 7190, 7205, 7221,
1105     11178, 7217, 7218, 7208, 7222, 7231, 7224, 7223,11178,11178,
1106      7240,11178, 7255, 7239, 7237, 7247, 7244, 7263, 7270, 7266,
1107      7276, 7260, 7258, 7279, 7286, 7267, 7285, 7281,11178, 7290,
1108      7289, 7292, 7320, 7303, 7316, 7318,11178, 7315, 7302,11178,
1109 
1110      7304,11178, 7310, 7307, 7326, 7331, 7329, 7335, 7339, 7342,
1111      7337, 7362,11178, 7344, 7348, 7350, 7356, 7371, 7374, 7373,
1112      7349,11178, 7375, 7360, 7381, 7366,11178, 7367, 7391, 7387,
1113      7388, 7393, 7399, 7398, 7401, 7402, 7419, 7405, 7409, 7429,
1114      7420, 7434, 7423, 7426, 7430, 7428, 7444, 7437, 7432, 7447,
1115      7458,11178, 7462, 7454, 7457, 7459, 7460, 7453, 7469, 7472,
1116      7479, 7474, 7487, 7499,11178, 7492,11178, 7485, 7494, 7496,
1117      7509, 7497, 7513, 7522, 7525, 7503, 7515, 7518, 7520, 7530,
1118      7537, 7544, 7541, 7535, 7536, 7540, 7568,11178, 7548, 7555,
1119      7559, 7560, 7567, 7565, 7570, 7580,11178, 7584, 7571, 7573,
1120 
1121      7578, 7581, 7602, 7594, 7604, 7592, 7609, 7599, 7617, 7615,
1122      7623, 7611, 7618, 7629, 7607, 7628, 7619, 7616,11178, 7634,
1123      7632, 7644, 7647, 7640, 7643, 7659, 7650, 7667, 7664, 7654,
1124      7657, 7674,11178, 7678, 7660, 7669, 7687,11178, 7677, 7692,
1125      7675, 7694, 7684, 7689, 7699, 7703, 7713, 7712, 7722,11178,
1126      7728, 7711, 7725, 7715, 7730, 7733, 7726, 7720, 7742, 7752,
1127      7760, 7763,11178, 7738, 7755, 7769, 7771, 7772, 7759, 7778,
1128      7779, 7786, 7775, 7788,11178, 7792, 7804, 7807, 7801, 7790,
1129      7825, 7802, 7806, 7830, 7827, 7833, 7810, 7813, 7839, 7824,
1130      7836, 7837, 7840, 7847, 7841, 7852, 7863, 7857,11178, 7850,
1131 
1132     11178, 7858, 7866, 7879, 7886, 7890, 7876, 7892, 7889, 7895,
1133      7903, 7907,11178, 7885, 7888, 7909, 7905, 7915, 7928, 7925,
1134      7934,11178, 7926, 7930, 7935, 7931,11178, 7941, 7940, 7949,
1135      7954, 7947, 7948, 7978, 7979, 7981,11178, 7980, 7984, 7983,
1136      7989, 7990, 7985, 7991, 7986, 7992, 8010, 7996, 8011, 8007,
1137      8001, 8003, 8017, 8027,11178, 8029, 8036, 8035, 8037, 8038,
1138      8041, 8046, 8020, 8044, 8045, 8061,11178, 8052, 8056, 8058,
1139      8060, 8067, 8082, 8069, 8085, 8009, 8087, 8091, 8094, 8079,
1140      8083, 8096, 8099, 8106, 8098,11178, 8116, 8114, 8129, 8105,
1141      8140, 8131, 8109,11178, 8135,11178, 8123, 8132, 8147, 8142,
1142 
1143      8150,11178, 8149, 8138, 8157, 8155, 8162,11178,11178, 8164,
1144      8175, 8171, 8185, 8177,11178,11178, 8188,11178, 8174,11178,
1145      8179, 8178,11178,11178, 8191, 8173, 8189, 8176,11178, 8204,
1146      8206, 8214,11178, 8217,11178, 8227, 8205, 8228, 8219, 8215,
1147      8234,11178, 8221, 8242, 8231, 8238, 8230,11178, 8233, 8244,
1148      8241, 8232, 8255, 8236,11178, 8275, 8276, 8281, 8265, 8266,
1149      8269,11178, 8288, 8290, 8292, 8277, 8282, 8294, 8293, 8299,
1150      8309, 8313, 8317, 8325, 8311, 8312, 8328, 8335, 8322, 8341,
1151      8342, 8343, 8334, 8345, 8348, 8358, 8350, 8352, 8364, 8355,
1152      8356, 8359, 8361, 8368, 8380, 8384, 8378, 8387, 8399, 8390,
1153 
1154      8400, 8392, 8395, 8394, 8393, 8405, 8398, 8414, 8409, 8403,
1155      8415, 8417, 8426, 8422, 8423, 8424, 8439, 8440, 8432, 8453,
1156      8444, 8457, 8451, 8449, 8462,11178, 8445, 8466, 8470, 8481,
1157      8468, 8471, 8493, 8485, 8495, 8497, 8501, 8503, 8498, 8504,
1158     11178,11178,11178, 8506,11178, 8508, 8520, 8528, 8521, 8526,
1159     11178, 8522, 8525, 8523, 8524, 8534, 8537, 8536, 8555, 8558,
1160      8559, 8561, 8573,11178, 8571, 8560, 8562, 8568, 8582, 8580,
1161     11178, 8583, 8593, 8581, 8594, 8595, 8589, 8600, 8606, 8607,
1162      8614, 8609, 8627, 8622, 8611, 8632, 8617, 8635, 8639,11178,
1163      8643, 8646, 8567, 8642, 8647, 8648, 8649, 8657, 8656, 8650,
1164 
1165      8658, 8659, 8662, 8670, 8680, 8673, 8689, 8697, 8696, 8700,
1166      8701,11178, 8684,11178, 8695, 8698, 8707, 8712, 8708, 8716,
1167      8710, 8718, 8714,11178,11178, 8727, 8730, 8746, 8750, 8737,
1168      8735, 8751, 8744, 8741, 8754,11178, 8757, 8771, 8760, 8763,
1169      8761, 8776,11178, 8777, 8769, 8775, 8778, 8783, 8780, 8801,
1170     11178, 8794, 8799, 8805, 8810, 8812, 8796, 8814, 8820, 8821,
1171      8813, 8819, 8823, 8817,11178, 8824,11178,11178,11178, 8833,
1172      8840, 8832, 8853, 8842, 8850, 8851, 8856, 8857, 8859, 8862,
1173      8867, 8858,11178, 8871,11178,11178, 8869,11178, 8870, 8885,
1174      8883, 8895, 8886, 8897, 8896,11178, 8892,11178, 8911, 8912,
1175 
1176      8893, 8909, 8918, 8920, 8913, 8922, 8902, 8937, 8934, 8945,
1177      8924, 8935, 8640, 8951, 8952, 8932,11178, 8959, 8943, 8961,
1178      8963, 8965,11178,11178, 8962, 8968, 8971, 8972, 8996, 8977,
1179      8992, 8986, 8884, 8999, 9001, 9002, 9005, 8995, 9004, 8990,
1180      9020, 9021, 9013, 9023, 8974,11178, 9029, 9037, 9022,11178,
1181      9031,11178, 9039, 9041, 9048, 9033, 9052, 9045, 9050, 9056,
1182      9058, 9070, 9071,11178,11178, 9064, 9060, 9083,11178,11178,
1183      9069, 9073, 9075, 9080, 9090, 9097, 9086,11178, 9102, 9103,
1184      9107, 9091, 9110, 9113, 9114, 9117,11178, 9127,11178, 9123,
1185      9121, 9145, 9122, 9126, 9132, 9137, 9133, 9162, 9158, 9153,
1186 
1187      9140, 9163,11178, 9157, 9160,11178, 9167, 9172, 9177, 9164,
1188      9183, 9171, 9186,11178, 9178, 9185,11178, 9196, 9184, 9214,
1189      9215,11178, 9216, 9213, 9220, 9209,11178, 9219,11178, 9202,
1190      9221, 9223, 9232, 9227,11178, 9211, 9236, 9237, 9250,11178,
1191      9233, 9255, 9261, 9262, 9254, 9258,11178, 9268, 9252,11178,
1192      9249, 9272, 9273, 9275, 9276, 9280, 9277, 9287, 9279, 9292,
1193      9286, 9304,11178,11178, 9315, 9306, 9316, 9307,  115, 9321,
1194      9299, 9303, 9317, 9318, 9330, 9332, 9333, 9313, 9325, 9341,
1195     11178,11178, 9346, 9342,11178, 9345, 9351,11178, 9336, 9352,
1196      9357, 9349, 9365, 9344,   73, 9363, 9372, 9375, 9373, 9392,
1197 
1198      9377, 9379, 9388,11178, 9412, 9416, 9382, 9405, 9407, 9419,
1199      9423, 9425, 9428, 9411, 9431, 9413, 9415, 9435, 9434, 9432,
1200      9430, 9440, 9456, 9446, 9450, 9454,11178, 9469, 9478, 9476,
1201      9467, 9480, 9481, 9483, 9468,11178, 9484, 9491, 9485, 9494,
1202     11178, 9489, 9493, 9495, 9490, 9510, 9514,11178, 9506, 9500,
1203      9528, 9526, 9525, 9513, 9527, 9520, 9516, 9544,11178, 9529,
1204      9539, 9541,11178, 9543,11178,11178,11178, 9555, 9549, 9550,
1205     11178, 9567, 9559, 9553, 9556,11178, 9579, 9581, 9575, 9593,
1206      9577,11178,11178,11178, 9565, 9591, 9586,11178, 9583, 9598,
1207     11178, 9585,11178, 9588,11178, 9594, 9602, 9613, 9610,11178,
1208 
1209      9622, 9617,11178, 9621, 9615, 9624, 9646,11178, 9633, 9635,
1210      9639, 9634, 9625, 9636, 9648, 9649, 9652,11178,11178, 9658,
1211      9659, 9666, 9669, 9660, 9670, 9679, 9675, 9663, 9693, 9674,
1212      9689,11178, 9688, 9698, 9705, 9711, 9694, 9702, 9707,11178,
1213      9684,11178, 9714,11178, 9715, 9720, 9723, 9731, 9734, 9729,
1214      9727, 9740, 9747, 9737, 9739, 9750, 9744, 9758, 9742, 9765,
1215      9781, 9763,11178,11178, 9788, 9773,11178, 9783, 9791, 9793,
1216     11178, 9775,11178, 9794,11178, 9785, 9790,11178, 9792, 9795,
1217      9799,11178,11178, 9798, 9807, 9820, 9810, 9809, 9813, 9816,
1218     11178, 9838, 9828, 9822, 9826, 9830,11178, 9850,11178, 9831,
1219 
1220      9853, 9847,11178,11178, 9845, 9834, 9846, 9863, 9849, 9855,
1221      9870, 9872, 9876, 9861, 9891, 9865, 9886, 9873, 9895, 9896,
1222      9904, 9890, 9903, 9911, 9908,11178,11178,11178, 9907, 9917,
1223      9920, 9916, 9912, 9915, 9923, 9929, 9927,11178, 9944, 9951,
1224      9947, 9936, 9932, 9943, 9957,11178, 9946, 9948, 9956, 9964,
1225      9962, 9967, 9953, 9983,11178, 9968, 9990, 9997, 9993, 9985,
1226      9995,10001,10002,10003, 9996,10006, 9994, 9988,10016,10004,
1227     11178,11178,10018,10019,11178,10037,10038,11178,11178,10020,
1228     11178,10022,10026,10023,10029,10053,11178,10040,10031,10033,
1229     10041,11178,10043,10050,10061,10072,10069,11178,10056,10081,
1230 
1231     10065,10068,10084,10086,11178,11178,10076,10093,11178,10094,
1232     10099,10088,10103,10095,10098,10105,10112,11178,10108,11178,
1233     10115,10118,10116,10120,10122,10125,10126,10130,10135,11178,
1234     10143,10139,10149,10152,11178,10153,10157,10164,10156,10183,
1235     11178,10184,10166,10165,10185,11178,10167,10192,10193,11178,
1236     11178,11178,10174,10197,10198,11178,11178,11178,10203,11178,
1237     10205,10216,10204,10207,11178,10211,11178,11178,10227,10237,
1238     10241,10228,10243,10240,11178,10242,10248,10246,10231,10238,
1239     11178,11178,10251,10255,10239,10260,10258,10261,10254,10269,
1240     11178,11178,10266,10270,10288,10285,10283,11178,10282,10293,
1241 
1242     10296,10302,10297,10304,10303,10308,10311,10312,10299,10331,
1243     10328,10347,10318,10319,10333,10322,10345,10346,10335,10352,
1244     10358,10353,10356,10357,10361,10360,11178,11178,10366,10355,
1245     11178,10368,10380,11178,10372,11178,10391,10394,10397,10398,
1246     11178,10400,10401,10402,10404,10379,11178,10399,10409,11178,
1247     10410,10403,10407,10393,11178,10396,10414,10423,10422,10418,
1248     10430,10432,10446,10436,10451,11178,10437,10453,11178,11178,
1249     11178,10449,10438,10455,10435,10465,10450,11178,10464,10460,
1250     10470,10481,10471,10478,10473,11178,10493,10492,11178,11178,
1251     10498,10488,11178,10505,11178,10483,10487,11178,11178,11178,
1252 
1253     11178,11178,11178,11178,11178,10513,10519,11178,11178,10508,
1254     10504,10512,10524,11178,10527,11178,10514,10529,10539,10530,
1255     10532,11178,10528,11178,10549,10535,10541,10548,10559,10545,
1256     10562,10554,10564,10555,10568,10571,10577,10588,10566,10594,
1257     10580,10590,10598,10587,10608,10589,10607,11178,11178,11178,
1258     11178,10604,10593,10622,10623,10624,10637,10633,10640,10642,
1259     10643,10625,10626,10645,10650,10651,10636,10647,10652,10666,
1260     10664,10679,10658,10667,10681,10686,10690,11178,10692,10682,
1261     10677,10695,11178,10683,10688,11178,10678,10694,11178,11178,
1262     10700,10715,10693,10711,10723,10736,10718,10720,10721,10729,
1263 
1264     10735,11178,10737,11178,11178,11178,11178,10725,10724,11178,
1265     10727,10749,10739,10754,11178,10745,10748,10750,10757,10761,
1266     10759,10782,10784,10779,11178,11178,10763,10773,10775,11178,
1267     10786,10793,10798,10804,10806,10810,10812,10814,10805,10809,
1268     11178,10808,10818,10826,10811,11178,10836,10828,10841,10830,
1269     10833,10832,10835,10845,11178,10842,11178,10856,10864,10868,
1270     10860,10859,10863,10871,10872,10888,10876,10890,11178,10870,
1271     10900,10883,10905,10907,10909,10911,10903,10912,10913,10919,
1272     10923,10926,10930,10935,10928,10938,10929,11178,11178,10931,
1273     10940,11178,10939,10949,10941,10953,10962,11178,10961,10958,
1274 
1275     10964,10978,10973,10975,11178,10984,10992,10986,11178,10989,
1276     11178,11178,10990,10988,10999,10996,10997,11178,11178,11178,
1277     11058,11065,11072,11079,11086,11093,11100,  100,11107,11114,
1278     11121,11128,11135,11142,11149,11156,11163,11170
1279     } ;
1280 
1281 static const flex_int16_t yy_def[3939] =
1282     {   0,
1283      3920,    1, 3921, 3921, 3922, 3922, 3923, 3923, 3924, 3924,
1284      3925, 3925, 3926, 3926, 3927, 3927, 3920, 3928, 3920, 3920,
1285      3920, 3920, 3929, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1286      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1287      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3930, 3920, 3920,
1288      3920, 3930, 3931, 3920, 3920, 3920, 3931, 3932, 3920, 3920,
1289      3920, 3920, 3932, 3933, 3920, 3920, 3920, 3933, 3934, 3920,
1290      3935, 3920, 3934, 3934, 3936, 3920, 3920, 3920, 3920, 3936,
1291      3937, 3920, 3920, 3920, 3937, 3928, 3928, 3920, 3938, 3929,
1292      3938, 3929, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1293 
1294      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1295      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1296      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1297      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1298      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1299      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1300      3928, 3928, 3930, 3930, 3931, 3931, 3932, 3932, 3920, 3933,
1301      3933, 3934, 3934, 3935, 3935, 3934, 3936, 3936, 3920, 3937,
1302      3937, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1303      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1304 
1305      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1306      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1307      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1308      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1309      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1310      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1311      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1312      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1313      3928, 3934, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1314      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1315 
1316      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1317      3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928,
1318      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1319      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1320      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1321      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1322      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1323      3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928,
1324      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1325      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928,
1326 
1327      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3934, 3928, 3928,
1328      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1329      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1330      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1331      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1332      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1333      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1334      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1335      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1336      3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3920, 3928,
1337 
1338      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1339      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1340      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1341      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1342      3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1343      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1344      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1345      3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3934, 3928,
1346      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1347      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1348 
1349      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1350      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1351      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1352      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1353      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1354      3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1355      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1356      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1357      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1358      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1359 
1360      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1361      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1362      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1363      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1364      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1365      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1366      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1367      3928, 3928, 3928, 3934, 3928, 3928, 3928, 3928, 3928, 3928,
1368      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1369      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1370 
1371      3928, 3928, 3928, 3928, 3920, 3928, 3920, 3920, 3928, 3928,
1372      3920, 3920, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928,
1373      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1374      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1375      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1376      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1377      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1378      3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1379      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1380      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1381 
1382      3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1383      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1384      3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1385      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1386      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1387      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1388      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1389      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1390      3928, 3928, 3928, 3928, 3928, 3934, 3928, 3928, 3928, 3928,
1391      3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3920, 3928,
1392 
1393      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1394      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1395      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1396      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1397      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1398      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1399      3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1400      3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1401      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1402      3920, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1403 
1404      3928, 3928, 3928, 3928, 3920, 3920, 3928, 3928, 3928, 3928,
1405      3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3920, 3928,
1406      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1407      3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928,
1408      3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928,
1409      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1410      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1411      3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1412      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1413      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1414 
1415      3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1416      3934, 3934, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1417      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1418      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1419      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1420      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920,
1421      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928,
1422      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1423      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1424      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1425 
1426      3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1427      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1428      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1429      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1430      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1431      3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1432      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1433      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1434      3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928,
1435      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1436 
1437      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928,
1438      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1439      3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928,
1440      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1441      3928, 3934, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928,
1442      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1443      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1444      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1445      3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1446      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928,
1447 
1448      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1449      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1450      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1451      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1452      3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1453      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1454      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1455      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1456      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1457      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1458 
1459      3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1460      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1461      3928, 3928, 3920, 3928, 3920, 3928, 3928, 3928, 3928, 3928,
1462      3928, 3920, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3920,
1463      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1464      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1465      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1466      3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3934,
1467      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1468      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1469 
1470      3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1471      3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1472      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928,
1473      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1474      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1475      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1476      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1477      3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1478      3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1479      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3920,
1480 
1481      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1482      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1483      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1484      3928, 3928, 3928, 3928, 3920, 3920, 3928, 3928, 3928, 3928,
1485      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1486      3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1487      3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928,
1488      3928, 3928, 3928, 3920, 3928, 3920, 3928, 3928, 3928, 3928,
1489      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1490      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1491 
1492      3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1493      3928, 3928, 3920, 3928, 3920, 3928, 3928, 3928, 3934, 3928,
1494      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1495      3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1496      3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928,
1497      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1498      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1499      3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1500      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1501      3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928,
1502 
1503      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1504      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1505      3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1506      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1507      3928, 3928, 3920, 3920, 3928, 3928, 3928, 3920, 3928, 3928,
1508      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1509      3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928,
1510      3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1511      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1512      3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1513 
1514      3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1515      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1516      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1517      3928, 3928, 3928, 3920, 3928, 3928, 3928, 3920, 3928, 3928,
1518      3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1519      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3934, 3928, 3920,
1520      3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1521      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928,
1522      3928, 3920, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1523      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1524 
1525      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920,
1526      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1527      3928, 3920, 3920, 3928, 3920, 3928, 3928, 3928, 3928, 3920,
1528      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1529      3920, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1530      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1531      3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928,
1532      3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928,
1533      3920, 3920, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1534      3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3920,
1535 
1536      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1537      3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1538      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1539      3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1540      3928, 3928, 3920, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1541      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1542      3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3920,
1543      3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1544      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928,
1545      3928, 3934, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3920,
1546 
1547      3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1548      3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1549      3928, 3920, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928,
1550      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1551      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1552      3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1553      3928, 3928, 3928, 3928, 3920, 3928, 3920, 3928, 3928, 3928,
1554      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1555      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1556      3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928,
1557 
1558      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1559      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928,
1560      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1561      3928, 3928, 3920, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1562      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920,
1563      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1564      3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1565      3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928,
1566      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1567      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928,
1568 
1569      3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1570      3934, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1571      3928, 3920, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928,
1572      3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928,
1573      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1574      3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928,
1575      3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928,
1576      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1577      3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928,
1578      3928, 3928, 3928, 3920, 3928, 3920, 3928, 3928, 3928, 3928,
1579 
1580      3928, 3920, 3928, 3928, 3928, 3928, 3928, 3920, 3920, 3928,
1581      3928, 3928, 3928, 3928, 3920, 3920, 3928, 3920, 3928, 3920,
1582      3928, 3928, 3920, 3920, 3928, 3928, 3928, 3928, 3920, 3928,
1583      3928, 3928, 3920, 3928, 3920, 3928, 3928, 3928, 3928, 3928,
1584      3928, 3920, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1585      3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928,
1586      3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1587      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1588      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1589      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1590 
1591      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1592      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1593      3934, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928,
1594      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1595      3920, 3920, 3920, 3928, 3920, 3928, 3928, 3928, 3928, 3928,
1596      3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1597      3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1598      3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1599      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920,
1600      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1601 
1602      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1603      3928, 3920, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1604      3928, 3928, 3928, 3920, 3920, 3928, 3928, 3928, 3928, 3928,
1605      3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928,
1606      3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1607      3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1608      3928, 3928, 3928, 3928, 3920, 3928, 3920, 3920, 3920, 3928,
1609      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1610      3928, 3928, 3920, 3928, 3920, 3920, 3928, 3920, 3928, 3928,
1611      3928, 3928, 3928, 3928, 3928, 3920, 3928, 3920, 3928, 3928,
1612 
1613      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3934, 3928, 3928,
1614      3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928,
1615      3928, 3928, 3920, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1616      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1617      3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3920,
1618      3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1619      3928, 3928, 3928, 3920, 3920, 3928, 3928, 3928, 3920, 3920,
1620      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1621      3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3920, 3928,
1622      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1623 
1624      3928, 3928, 3920, 3928, 3928, 3920, 3928, 3928, 3928, 3928,
1625      3928, 3928, 3928, 3920, 3928, 3928, 3920, 3928, 3928, 3928,
1626      3928, 3920, 3928, 3928, 3928, 3928, 3920, 3928, 3920, 3928,
1627      3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3920,
1628      3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3920,
1629      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1630      3928, 3928, 3920, 3920, 3928, 3928, 3928, 3928, 3934, 3928,
1631      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1632      3920, 3920, 3928, 3928, 3920, 3928, 3928, 3920, 3928, 3928,
1633      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1634 
1635      3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1636      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1637      3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928,
1638      3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928,
1639      3920, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1640      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928,
1641      3928, 3928, 3920, 3928, 3920, 3920, 3920, 3928, 3928, 3928,
1642      3920, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928,
1643      3928, 3920, 3920, 3920, 3928, 3928, 3928, 3920, 3928, 3928,
1644      3920, 3928, 3920, 3928, 3920, 3928, 3928, 3928, 3928, 3920,
1645 
1646      3928, 3928, 3920, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1647      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3920, 3928,
1648      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1649      3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920,
1650      3928, 3920, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1651      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1652      3928, 3928, 3920, 3920, 3928, 3928, 3920, 3928, 3928, 3928,
1653      3920, 3928, 3920, 3928, 3920, 3928, 3928, 3920, 3928, 3928,
1654      3928, 3920, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1655      3920, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3920, 3928,
1656 
1657      3928, 3928, 3920, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1658      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1659      3928, 3928, 3928, 3928, 3928, 3920, 3920, 3920, 3928, 3928,
1660      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1661      3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928,
1662      3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928,
1663      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1664      3920, 3920, 3928, 3928, 3920, 3928, 3928, 3920, 3920, 3928,
1665      3920, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928,
1666      3928, 3920, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1667 
1668      3928, 3928, 3928, 3928, 3920, 3920, 3928, 3928, 3920, 3928,
1669      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3920,
1670      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920,
1671      3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928,
1672      3920, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3920,
1673      3920, 3920, 3928, 3928, 3928, 3920, 3920, 3920, 3928, 3920,
1674      3928, 3928, 3928, 3928, 3920, 3928, 3920, 3920, 3928, 3928,
1675      3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928,
1676      3920, 3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1677      3920, 3920, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1678 
1679      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1680      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1681      3928, 3928, 3928, 3928, 3928, 3928, 3920, 3920, 3928, 3928,
1682      3920, 3928, 3928, 3920, 3928, 3920, 3928, 3928, 3928, 3928,
1683      3920, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3920,
1684      3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928,
1685      3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3920, 3920,
1686      3920, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1687      3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3920, 3920,
1688      3928, 3928, 3920, 3928, 3920, 3928, 3928, 3920, 3920, 3920,
1689 
1690      3920, 3920, 3920, 3920, 3920, 3928, 3928, 3920, 3920, 3928,
1691      3928, 3928, 3928, 3920, 3928, 3920, 3928, 3928, 3928, 3928,
1692      3928, 3920, 3928, 3920, 3928, 3928, 3928, 3928, 3928, 3928,
1693      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1694      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3920, 3920,
1695      3920, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1696      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1697      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1698      3928, 3928, 3920, 3928, 3928, 3920, 3928, 3928, 3920, 3920,
1699      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1700 
1701      3928, 3920, 3928, 3920, 3920, 3920, 3920, 3928, 3928, 3920,
1702      3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928, 3928,
1703      3928, 3928, 3928, 3928, 3920, 3920, 3928, 3928, 3928, 3920,
1704      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1705      3920, 3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3928,
1706      3928, 3928, 3928, 3928, 3920, 3928, 3920, 3928, 3928, 3928,
1707      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3928,
1708      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928, 3928,
1709      3928, 3928, 3928, 3928, 3928, 3928, 3928, 3920, 3920, 3928,
1710      3928, 3920, 3928, 3928, 3928, 3928, 3928, 3920, 3928, 3928,
1711 
1712      3928, 3928, 3928, 3928, 3920, 3928, 3928, 3928, 3920, 3928,
1713      3920, 3920, 3928, 3928, 3928, 3928, 3928, 3920, 3920,    0,
1714      3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920,
1715      3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920
1716     } ;
1717 
1718 static const flex_int16_t yy_nxt[11245] =
1719     {   0,
1720        18,   19,   20,   21,   22,   23,   22,   18,   18,   18,
1721        18,   18,   22,   24,   25,   26,   27,   28,   29,   18,
1722        30,   31,   32,   33,   34,   35,   36,   37,   38,   39,
1723        40,   41,   42,   43,   44,   45,   18,   18,   46,   47,
1724        24,   25,   26,   27,   28,   29,   18,   30,   31,   32,
1725        33,   34,   35,   36,   37,   38,   39,   40,   41,   42,
1726        43,   44,   45,   18,   18,   46,   49,   50,   51,   49,
1727        50,   51,   54,   55,   54,   55,   56,  121,   56,   59,
1728        60,   61,   62,  122,   22,   59,   60,   61,   62,   87,
1729        22,   65,   66,   67,   65,   66,   67,   88,  163,  163,
1730 
1731        86,   89,  355,   52,  121,   87,   52,  170,  170,   57,
1732       122,   57,   87,   76,   77,   78,   79,   63,   22,   76,
1733        77,   78,   79,   63,   22,   82,   83,   84,   68,   99,
1734        87,   68,   19,   20,   21,   70,   71,   72,   19,   20,
1735        21,   70,   71,   72,   82,   83,   84,  123,  110,  180,
1736       180,   80,   73,  162,  173,   87,   99,   80,   73,   87,
1737       139,   91,   85,   91,   91,   87,   91,  173,  111,  809,
1738        74,   87,   91,   87,  123,  110,   74,  181,   88,   73,
1739       162,   85,   89,  163,  163,   73,  114,  139,  112,  179,
1740       161,  178,  132,  176,  115,  111,  100,   87,   87,   92,
1741 
1742        93,   94,  113,  101,   95,  116,  173,  102,  192,   96,
1743       103,   97,   87,  114,   87,  112,   87,  161,   98,  132,
1744       176,  115,   87,  100,   87,  182,   87,   93,   94,  113,
1745       101,   95,  116,  305,  102,  192,   96,  103,   97,  165,
1746       183,  165,  165,  432,  165,   98,  104,  343,  117,   87,
1747       105,  118,  182,  106,  184,  107,  108,  347,  119,   86,
1748       120,   86,   86,   87,   86,   87,  109,  183,   87,  173,
1749        86,   87,   87,  104,   87,  117,  124,  105,  118,   87,
1750       106,  184,  107,  108,  125,  119,  191,  120,  128,   87,
1751       126,  187,  129,  109,  127,   87,  158,  171,   87,  150,
1752 
1753       159,  151,   87,  124,  160,  185,  130,  169,  131,  168,
1754       152,  125,  166,  191,   87,  128,  153,  126,  187,  129,
1755        87,  127,   87,  158,  154,   87,  150,  159,  151,  204,
1756       164,  160,  185,  130,  155,  131,  133,  152,  156,  157,
1757       134,  186,   87,  153,  135,  170,  170,   87,   87,   87,
1758       136,  154,  167,  137,  167,  167,  204,  167,  188,  200,
1759       138,  155,   87,  133,   87,  156,  157,  134,  186,  181,
1760        91,  135,   91,   91,  211,   91,  172,  136,  172,  172,
1761       137,  172,   87,   87,  179,  188,  200,  138,  140,  254,
1762        87,  177,  141,  177,  177,   86,  177,   86,   86,  248,
1763 
1764        86,  211,  142,  143,  189,  144,   86,   91,  175,   91,
1765        91,  212,   91,  201,   87,  140,  254,  190,   91,  141,
1766        87,   87,  193,  194,  178,   87,  248,  173,   87,  142,
1767       143,  189,  144,  145,  207,   87,  146,  171,  212,  213,
1768       201,   87,  205,  147,  190,   92,  195,  148,  149,  193,
1769       194,  206,  196,  202,  197,   87,  198,  199,  180,  180,
1770       145,  207,   87,  146,   87,   87,  213,   87,  215,  205,
1771       147,  203,  233,  195,  148,  149,  221,  169,  206,  196,
1772       216,  197,  214,  198,  199,   87,  208,  209,  217,   87,
1773        87,  218,   87,   87,  210,  215,  497,  224,  203,  233,
1774 
1775       222,  168,   87,  223,  219,  220,  236,  216,   87,  214,
1776       166,   87,   87,  208,  209,  217,  226,  225,  218,   87,
1777       227,  210,  231,  232,  224,   87,   87,  222,  238,  229,
1778       223,  219,  220,  236,  230,   87,  228,   87,  234,  237,
1779        87,  239,   87,  226,  225,  235,   87,  227,   87,  231,
1780       232,  240,   87,  241,  242,  238,  229,   87,  243,  164,
1781       244,  230,   87,  228,  245,  234,  237,   87,  239,  247,
1782       246,   87,  235, 3920,   87,  250,   87,   87,  240,  249,
1783       241,  242,   87,  253,  251,  243,   87,  244,  256,  262,
1784       252,  245,  255,  259,  362,   87,  247,  246,   87,  257,
1785 
1786        87,  260,  250,  258,   87,  263,  249,   87,   87,  261,
1787       253,  251,   87,  268,  349,  256,  262,  252,  266,  255,
1788       259,  362,  264, 3920,   87,  265,  257,  269,  270,  267,
1789       258,   87,  263,   87,   87,   87,  261,  271,   87, 3920,
1790       268,  272,  275,  276,  277,  266,   87, 3920,   87,  264,
1791       273,  278,  265,  279,  269,  270,  267,   87,  280,   87,
1792        87,  281,  274, 3920,  271,   87,   87, 3920,  272,  275,
1793       276,  277, 3920,  284,   87,   87,   87,  273,  278,  167,
1794       279,  167,  167,  282,  167,  280,  283,  285,  281,  274,
1795       172, 3920,  172,  172,   91,  172,   91,   91,  177,   91,
1796 
1797       177,  177,  286,  177,  287,   87,  291,  173,   87, 3920,
1798       282,   87,  293,  283,  285,  288,   87,  289,  292,   87,
1799        87,  295,   87,  294,  290,  297, 3920,  296,  298,  286,
1800       353,  287,  175,  291,   87,   87,   87,   87,  301,  293,
1801        87,   87,  288,   87,  289,  292,   87,  299,  295,  302,
1802       294,  290,  297,  300,  296,  298,  303,  315,  304,  318,
1803       306,  316,   87,  314,  307,  301,  317,   87, 1270, 1025,
1804       319,   87,   87,  320,  323,  356,  302, 3920,  332,   87,
1805       300,  308,   87,  303,  315,  304,  318,   87,   87,   87,
1806       314,  307,   87,   87,  322,   87,  321,  319,   87,   87,
1807 
1808       320,   87,  324,  328,  325,  332,   87,   87,  308,  309,
1809       329,   87,  326,  327,  310, 3920,   87,  342, 3920,  311,
1810       333,  322,   87,  321,   87,  312,  313,   87,   87,  324,
1811       328,  325,   87,  334,   87,  330,  309,  329,  331,  326,
1812       327,  310,   87, 3920,  342,  340,  311,  333,  344,  341,
1813        87,  348,  312,  313, 3920,   87,   87,  345,   87,  350,
1814       334,  357,  330,  372, 3920,  331,  335,   87,  346,  336,
1815       358,  337,  340,  351,   87,  344,  341,  354,  348,  361,
1816       352,   87,  363,  338,   87,  339,   87,  364,  357,   87,
1817       372,   87,   87,  335,   87,  346,  336,  365,  337,   87,
1818 
1819       351,  359,   87,   87,  354,  370,  360,  352,  366,  363,
1820       338,   87,  339,  368,  364,  369,   87,  367,   87,   87,
1821       374,  371,   87,  375,  365,  373,   87,  378,  359,  379,
1822        87,   87,  370,  360,   87,  366,  376,   87,   87,  380,
1823       368,  377,  369,   87,  367,  382,  381,  374,  371,   87,
1824       375,   87,  373,  385,  378,  386,  379,  387,  383,  384,
1825      3920,  388,   87,  392,   87,  389,  380,   87,   87,   87,
1826       390,  391,  393,  381,  394,  395,  397,   87,   87,  396,
1827       385,  399,   87,   87,  387,  383,  384,   87,  388,   87,
1828        87,   87,  389,  398,   87,   87,  402,  390,  391,  400,
1829 
1830       403,  394,  407,  397,   87,  405,  396,   87,   87,   87,
1831      3920,  406,  412,  409,  410,  408,  411,  404,   87,   87,
1832       398,   87,  401,   87,   87,   87,  414,  403,   87,  407,
1833       173,   87,  405,   87,   87,  415,  416,  417,  406,  412,
1834       409,  410,  408,  411,  404,  419,  413,  418,   87,  401,
1835        87,  420,  421,  414,  423,  429,  425,  422,  424,   87,
1836       426,  427,   87,   87,  417,   87,   87,   87,   87,   87,
1837       428,   87,   87,  413,  418,   87,  430,   87,  420,  421,
1838        87,  423,  429,  425,  422,  424,  431,  426,  434,  433,
1839      3920,  435, 3920,   87,   87,  436,  439,  428,   87, 3920,
1840 
1841      3920,  440,   87,  430,  444,  437,   87,  441,  442,  446,
1842       448,  451,   87,  431,   87,  434,  433,   87,  435,  438,
1843        87,  443,  436,  439,   87,   87,   87,  445,  440,   87,
1844       447,   87,  437,  449,  441,  442,   87,   87,  451,  452,
1845        87,   87,   87,  453,  454,  456,  438,  460,  443, 3920,
1846       450,  459,   87,  457,  445,   87,   87,  447,  458,  461,
1847       449,   87,   87, 3920,   87,   87,  452,  463,  455,  471,
1848       462,  519,  456,   87,  460,   87,   87,  450,  459,   87,
1849       457,  464,  465,   87,  466,  458,  461,  467,  468,   87,
1850        87,   87,  470,  472,  463,  455,   87,  462,  473, 3920,
1851 
1852       481,   87,  483,   87,  490,  469, 3920,   87,  464,  465,
1853        87,  466,   87,   87,  467,  468,  491,   87,   87,  470,
1854       472, 3920,  526,  499,   87,  473,  482,  481,   87,  483,
1855        87,  490,  469,  474,  498,   87,  492,  495,  475,  493,
1856       494,  476,  496,  491, 3920,  502,  477,  478,  479,  480,
1857        87,   87, 3920,  482,   87, 3920,   87,   87,   87,  503,
1858       474,  498,  506,  492,   87,  475,  493,  494,  476,   87,
1859       508,   87,  502,  477,  478,  479,  480,  484,  500,  485,
1860        87,  501,  507, 3920,  504,  505,  503,  510,   87,  506,
1861       511,  486,  487,  488,   87,  489,  512,   87,   87,  509,
1862 
1863        87,   87,  514,  513,  484,  500,  485, 3920,  501,  507,
1864       515,  504,  505,   87,  510,   87,   87,  511,  486,  487,
1865       488,   87,  489,  512,   87,   87,  509,  516,  518,  514,
1866       513,  517,  524, 3920,  520,   87,  521,  515,   87,   87,
1867        87, 3920,  525,  527,  528,  522, 3920, 3920,  533,  530,
1868       529,  531,  523,  540,  516,  518,  538, 1431,  517,  524,
1869        87,  520,  532,  521,   87,   87,   87,  539,  534,  525,
1870       527,  528,  522,   87,   87,   87,  530,  529,  531,  523,
1871        87,  535,  541,  538,  536,   87,  537,   87,  542,  532,
1872       555, 3920,   87,   87,  539,  534,  556,   87,  574,  576,
1873 
1874       558, 3920, 3920,  575, 3920,  561, 3920,  559,  535,   87,
1875        87,  536,   87,  537,  557,  542,  543,  555,  544,   87,
1876        87,  562,  560,  556,  545,  563, 3920,  558,  546,   87,
1877        87,   87,  561,  547,  559,   87,  548, 3920,   87, 3920,
1878       573,  557,   87,  543,  572,  544, 3920,  577,  562,  560,
1879       581,  545,  563,  579,  578,  546,   87,  584,   87,  173,
1880       547,  580,   87,  548,  549,  582,  550,  573,   87,   87,
1881       583,  572,  586,   87,  577,  599,  585,  581,   87,  551,
1882       579,  578,  552,   87,  553,   87,  554,  589,  580,   87,
1883        87,  549,  582,  550,  587,  588,  590,  583, 3920,  586,
1884 
1885      3920,   87,  606,  585,   87,  593,  551,   87,   87,  552,
1886       594,  553,   87,  554,  564,  565,  591,   87,  595,   87,
1887       600,  587,  588,  590,  566,  567,  568,  569,  570,  606,
1888        87,  571,  593,  601,  592,  596,  598,  594,   87,   87,
1889        87,  564,  565,  591,  597,  595,   87,  600,   87,  602,
1890       603,  566,  567,  568,  569,  570,  604,   87,  571,   87,
1891       601,  592,  596,  598,   87,  605,   87,  607,  608,   87,
1892      3920,  597,  609,  610, 3920,  611,  602,  603,   87,  612,
1893       613,  614,   87,  604,  616,  615,   87, 3920,  617, 3920,
1894        87,   87,   87,  621,  607,  608,  624,   87,   87,  618,
1895 
1896       619,   87,  611,  640, 3920, 3920,  612,  613,  614,   87,
1897        87,  616,  615,  622,  627,  617,   87,  620,  626,  629,
1898       621,  625,   87,  624,   87,   87,  618,  619,  623,   87,
1899        87,  642,   87,  628,  641,   87,   87,  630,  631,  643,
1900       622,  627,   87,  645,  620,  626,  629,  648,  625,  632,
1901       644,  633,   87,   87,  654,  623,   87,  646,  642,  647,
1902       628,  641,   87,   87,  630,  631,  643,  650,   87,  649,
1903        87,  652, 3920,  658,  648,   87,  632,  644,  633,  634,
1904        87,   87,  655,  651,  646,  653,  647,  635,  636,   87,
1905        87,  637,  638,   87,  650,  639,  649,   87,  652,   87,
1906 
1907       657,   87,  656,  659,   87,   87,  634,  662,  660,  655,
1908       651,  661,  653,   87,  635,  636,   87,  663,  637,  638,
1909       664,  667,  639,   87,  665,   87,   87,  657,  669,  656,
1910       659,   87,  666,  668,  662,  660,   87,   87,  661,   87,
1911        87,  670,   87,  671,  663, 3920,  672,  664,  667,  673,
1912        87,  665,   87,  674,  675,  669,   87,  676, 3920,  666,
1913       668,  677,  682,  678, 3920,  680, 3920,   87,  670,  681,
1914       671,   87,   87,  672,   87,   87,  673,   87,  683,  685,
1915       674,  675,  687,  679,  676,   87,  689,   87,  677,   87,
1916       678,   87,  680,  684,   87,  686,  681,  688,   87,   87,
1917 
1918        87,   87,  691,   87,   87,  683,  685,  690,   87,  687,
1919       679,  701,  694,  689,   87,  696,  692,   87,  693,  695,
1920       684,   87,  686,  697,  688,   87,   87,  698,  700,  691,
1921       699,  702, 3920,   87,  690,  708,   87,  703,  701,  694,
1922       704,  705,  706,  692,   87,  693,  695,   87,   87,  707,
1923       697,  709,  712,   87,  711,   87,   87,  699,  702,   87,
1924        87,   87,  708,  710,  703,   87,  714,  704,  705,  706,
1925        87, 3920,  715,  718,  717,  713,  707,  716,   87,   87,
1926        87,  711,   87,   87,   87,  719,  720,  722, 3920, 3920,
1927       710,  721, 3920,  714,   87,   87,   87,  725,  724,  715,
1928 
1929       718,  717,  713,   87,  716,  723,   87,  736,   87,   87,
1930       734,   87,  719,  720,  722,  735,   87,   87,  721,   87,
1931       737,   87,  738,  739,  725,  724,  765, 3920,  740,  775,
1932        87,   87,  723,  726,  736, 3920,  770,  734,  727,   87,
1933       728,  741,  735,   87,  744,   87,  729,  737,  730,  738,
1934       739,  731,  732,  765,  745,  740,   87,   87,  733,   87,
1935       726,   87,  742,  770,   87,  727,  743,  728,  741,  747,
1936       749,  744,  748,  729,  746,  730,   87,  750,  731,  732,
1937        87,  745, 3920,  752,   87,  733,  755,  751,   87,  742,
1938        87,  753,  754,  743,  757,   87,  747,  749,  756,  748,
1939 
1940       759,  746,   87,  760,  758,   87,   87,  761,  780,   87,
1941       752,  762, 3920,  755,  751,   87,   87,  763,  753,  754,
1942        87,  757,   87,   87,  764,  756,   87,  759,  766,  767,
1943       760,  758,   87,  768,  761,  772,  769,  771,  762,  776,
1944        87,   87,  773,   87,  763,  774,  777,   87,   87,  778,
1945        87,  764,   87,   87,   87,  766,  767,   87,   87,  781,
1946       768,  779,  772,  769,  771,   87,  776,  783,  173,  773,
1947       782,   87,  774,  777,   87,  784,  778,  786,  785,   87,
1948        87,  787,  788,  789,  790,  791,  781,  792,  779,   87,
1949        87,  793, 3920, 3920,  783,  796,  794,  782,  798,   87,
1950 
1951        87,  795,  784,   87,  786,  785,   87,   87,  787,   87,
1952       797,  790,  799,  810,   87,   87,  803,   87,  793,   87,
1953        87,   87,  796,  794,  800,  798,  806,   87,  795,  807,
1954       804,  801,   87,  808,  802,  805,   87,  797,  811,  799,
1955        87,  812,   87,  803,  813,   87,  816,  814,  817, 3920,
1956       819,  800,  815,  806,   87,   87,   87,  818,  801,  820,
1957        87,  802,   87,  821,  822,   87,  828,  824,   87,  823,
1958       841,   87,   87,  816,   87,  817,   87,  819,  825,   87,
1959       826,   87,   87,   87,  818,  827,  820,  830,   87,   87,
1960       821,  822,  829,   87,  824,  831,  823,  835,   87,   87,
1961 
1962       833,  832,   87,  834,   87,  825, 3920,  826,   87,   87,
1963        87,  836,  827,   87,  830,  837, 3920,   87,  838,  829,
1964       839,  842,  831,   87,  835,  840,   87,  833,  832,   87,
1965       834,   87,   87,  843,  852,  848,  871,   87,  836,  849,
1966       851,  850,  837,   87,   87,  838,   87,  839,  842,  844,
1967        87,   87,  840,  853,  845,  856,   87,  846,  847,  854,
1968       843,  852,  848,   87,  858,   87,  849,  851,  850, 3920,
1969       855,  857,   87,   87, 3920,   87,  844,  859, 3920,  863,
1970       853,  845,   87,  862,  846,  847,  854,   87,   87,   87,
1971       864,  858, 3920,  861,  867,  868,  865,  855,  857,  860,
1972 
1973        87,   87,  866,   87,  859,   87,  863,   87,  869,   87,
1974       862,   87,   87,  872,   87,  874,  873,  864,  870,  876,
1975       861,  867,  868,  865,   87,   87,  860,  875,  877,  866,
1976        87,   87,   87,   87,  878,  869,  879,   87,  880,   87,
1977       872,  881,  874,  873,  893,  870,  876,  882,  883,  884,
1978      3920,   87,   87,  885,  875,  877,  887,  886,  888,  889,
1979       890,  878,   87,  879,   87,  895,  891,   87,  881,  894,
1980        87,   87,   87,   87,  882,  896,   87,   87,   87,  898,
1981       885,   87,  892,  887,  886,  888,  889,  890,   87,  899,
1982        87,   87,  897,  891,   87,  908,  894,   87,  900,   87,
1983 
1984        87,   87,  896,  901,  902, 3920,  898,  903,  910,  892,
1985       904,  911,  909, 3920,  913,  912,  899,  905,   87,  897,
1986        87,   87,   87,  914,  906,  907,   87,   87,  915,  918,
1987        87,  902,   87,   87,  903,  910,  920,  904,  911,  909,
1988        87,  913,  912,   87,  905,  916,  921,  919,   87,  922,
1989       914,  906,  907,  924,  923,  915,  935,  925,   87,   87,
1990       917,   87,   87,  920,  926,  928, 3920,  927,  930,   87,
1991       929, 3920,  916,  921,  919,   87,   87,   87, 3920,   87,
1992       924,   87,  945,  937,  925,  936,  985,  917,   87,   87,
1993        87,  926,  928,  931,  927,  930,  932,  929,  933,  938,
1994 
1995       934,   87,   87,  939,  940,   87,   87,   87,   87,  941,
1996       937,   87,  936,   87,   87,   87, 3920,   87,   87,  942,
1997       931,  944,  946,  932,  947,  933,  938,  934,  943,   87,
1998       939,  940,  948,   87,  949,  950,  941,   87, 3920,  954,
1999       952,   87,   87,   87,  951,  953,  942,   87,  944,  946,
2000        87,  947,   87,  960,   87,  943,  955, 1003,  962,  948,
2001      3920,  949,  950,   87, 3920,   87,  954,  952,  956,  957,
2002       958,  951,  953,  959,  961,   87,  963,   87,   87,  964,
2003       960,   87,  965,  955,   87,  962,  966,   87,  968,   87,
2004        87,  967,   87,  971,  969,  956,  957,  958, 3920,   87,
2005 
2006       959,  961,   87,  963,   87,   87,  964,   87,  970,  965,
2007        87,  972,  973,  966,  976,  968,   87,  974,  967,  975,
2008       971,  969,   87,  977,  978,  980, 3920,  979, 3920,  981,
2009       982,   87, 3920,   87,   87,  970,   87,   87,  972,  973,
2010       983,  976,   87,   87,  974,   87,  975,   87,   87,  984,
2011       977,  978,  980,  986,  979,  987,  981,  982,   87,  989,
2012       988,  991, 3920,  990,   87,  992,  995,  983,  994, 3920,
2013       996,  993,   87,   87,   87,  173,  984, 3920,  997,   87,
2014       986,   87,  987,   87,   87, 1000,  989,  988,  991,   87,
2015       990, 1001,  992,   87,  998,  994,   87,  996,  993,  999,
2016 
2017      1002, 1006, 1004, 1010, 1005,  997, 1007,   87,   87,   87,
2018        87,   87, 1000, 1008, 1009,   87, 1011, 1012, 1001, 1013,
2019      1015,   87,   87,   87,   87, 1014,   87, 1002, 1006, 1004,
2020      1016, 1005, 1027, 1007,   87,   87,   87,   87, 3920,   87,
2021      1008, 1009, 1024, 1026, 1012, 1028, 1013, 1015,   87, 1040,
2022        87, 3920, 1014,   87,   87, 1029, 3920, 1016, 1017, 1027,
2023        87, 1018, 1031, 1030, 1033, 1019,   87, 1034, 1020, 1024,
2024      1026, 3920, 1028, 1035, 1063, 1021, 1022, 3920, 1023, 1064,
2025        87,   87, 1029,   87,   87, 1017, 1032,   87, 1018, 1031,
2026      1030, 1033, 1019,   87, 1034, 1020, 1036,   87, 1037,   87,
2027 
2028      1035, 1038, 1021, 1022, 1039, 1023,   87,   87, 3920, 1049,
2029      3920,   87,   87, 1032,   87, 1050,   87, 1052, 1051, 1054,
2030      3920, 1058,   87, 1036,   87, 1037,   87, 1062, 1038,   87,
2031      1053, 1039, 1041, 1042, 3920, 1043, 1049,   87, 1044, 1057,
2032      1055, 3920, 1050, 1045, 1052, 1051, 1054, 1059, 1058, 1046,
2033      1047,   87, 1048,   87, 1062, 1065, 1056, 1053,   87, 1041,
2034      1042,   87, 1043,   87, 1066, 1044, 1057, 1055, 1060,   87,
2035      1045, 1061, 1067,   87, 1059,   87, 1046, 1047, 1068, 1048,
2036        87, 1069, 1065, 1056,   87, 1073, 1071, 1070, 1075, 1072,
2037        87, 1066, 1074, 1076, 3920, 1060, 1081, 1078, 1061, 1067,
2038 
2039        87,   87, 1077,   87,   87, 1068, 1085,   87, 1069,   87,
2040        87,   87,   87, 1071, 1070, 1075, 1072,   87, 1079, 1074,
2041      1076, 1080,   87, 1081, 1078,   87,   87, 1082, 1083, 1077,
2042      1084, 1088,   87, 1085, 1087,   87,   87, 1086, 1089,   87,
2043        87, 1090, 1091,   87, 1094, 1079,   87, 1092, 1080,   87,
2044      1095, 1096, 1093, 1099, 1082, 1083, 1101, 1084, 1088, 1097,
2045        87, 1087, 1100,   87, 1086, 1098,   87,   87, 1090,   87,
2046        87, 1094,   87, 1102, 1103, 1104, 1105, 1106, 1096,   87,
2047      1108, 1107,   87, 1110,   87,   87, 1097, 1109,   87, 1100,
2048        87, 1112, 1098, 1111,   87,   87,   87,   87, 1114,   87,
2049 
2050      1102, 1103, 1104,   87,   87,   87, 1113, 1108, 1107,   87,
2051      1110,   87, 1116, 1115, 1109,   87,   87, 1117, 1112, 1118,
2052      1111,   87, 1119, 1120, 1122, 1114, 3920, 1121, 3920, 1123,
2053      1124, 1125,   87, 1113,   87,   87,   87, 1127,   87,   87,
2054      1115, 1126, 1128, 1129, 1117, 3920, 1118,   87,   87,   87,
2055      1130, 1122, 1131,   87, 1121,   87, 1123, 1124, 1125,   87,
2056        87, 1132, 1133,   87, 1127,   87, 1138,   87, 1126, 1128,
2057      1129, 1134,   87, 1135, 1137, 1140, 1147, 1130, 1136, 1131,
2058        87, 1141, 1139,   87, 1152,   87, 1143,   87, 1132, 1133,
2059      1146,   87,   87, 1138,   87,   87, 1144, 1142, 1134,   87,
2060 
2061        87, 1137, 1140,   87, 1145,   87, 1148, 1149, 1141, 1139,
2062      1150, 1152,   87, 1143, 1151,   87,   87, 1146, 1153, 3920,
2063        87, 1154, 1156, 1144, 1142,   87,   87, 1158, 1155,   87,
2064      1159, 1145, 1161, 1148, 1149,   87,   87, 1150, 1157,   87,
2065        87, 1151,   87, 1160, 1162, 1153, 1163, 1164, 1154, 1156,
2066        87,   87, 1165, 1166, 1158, 1155, 1167, 1159,   87, 1168,
2067        87,   87,   87, 1169,   87, 1157,   87, 1170, 1171, 1174,
2068      1160, 1162, 1176, 1163, 1164, 1173,   87,   87,   87, 1165,
2069      1166, 1175,   87, 1167, 1172, 1182, 1168,   87,   87,   87,
2070      1169,   87,   87, 1177, 1170,   87, 1174, 1179, 1178, 1176,
2071 
2072        87, 3920, 1173,   87, 1183,   87, 1180, 1181, 1175, 1185,
2073      1184, 1172, 1187,   87,   87, 1186, 1188,   87, 1189,   87,
2074      1177, 3920, 1190,   87, 1179, 1178, 1196, 1191,   87, 1194,
2075      1197, 1198, 1192, 1180, 1181,   87,   87, 1184, 1195, 1187,
2076      1193,   87, 1186, 1202,   87,   87, 1199,   87,   87, 1190,
2077        87,   87,   87, 1196, 1191, 1200, 1194, 1201, 1204, 1192,
2078      1205, 1203,   87,   87,   87, 1195, 1206, 1193,   87,   87,
2079        87,   87, 1207, 1199, 1211,   87, 1208, 3920, 1213, 1212,
2080        87, 1214, 1200, 1215, 1201,   87, 1218, 1205, 1203, 1209,
2081        87, 1210, 1216, 1206,   87, 1217, 3920,   87,   87, 1207,
2082 
2083        87, 1219,   87, 1208,   87, 1213,  173, 1220, 1214,   87,
2084      1215, 1221, 1222, 1218,   87,   87, 1209, 3920, 1210, 1216,
2085      1223, 1225, 1217,   87, 1227,   87, 1226, 1234, 1219, 1235,
2086        87, 1224, 3920,   87, 1220,   87, 1238, 1236, 1221, 1222,
2087      3920, 1239, 3920,   87,   87, 3920, 3920, 1223, 1225,   87,
2088      3920, 1227, 3920, 1226, 1234,   87, 1235, 1237, 1224, 1228,
2089        87, 1229, 1243,   87, 1236, 1230, 3920, 1231, 1239,   87,
2090      1240, 1241, 1232, 1242,   87, 3920, 1247, 1233, 1244, 1245,
2091        87, 1248, 1246,   87, 1237, 1249, 1228, 3920, 1229, 1243,
2092      3920,   87, 1230,   87, 1231,   87, 1257, 1240, 1241, 1232,
2093 
2094      1242,   87, 1250,   87, 1233, 1244, 1245, 1251,   87, 1246,
2095      1253,   87, 1249, 1254, 1258,   87, 1260, 1255, 1259, 1252,
2096      1261, 3920,   87, 1257, 1263, 1262,   87, 1256, 1264, 1250,
2097        87,   87, 1265, 1267, 1251, 1266,   87, 1253,   87,   87,
2098      1254, 1258,   87,   87, 1255, 1259, 1252, 1261, 1268, 1269,
2099        87, 1263, 1262,   87, 1256, 1264, 1271,   87, 1272, 1265,
2100      1273, 3920, 1266,   87, 1274,   87, 1282, 1283,   87, 1284,
2101      3920, 1285, 3920,   87, 1286, 3920,   87, 1289, 3920, 1302,
2102        87,   87,   87, 1592, 1593, 1272,   87, 1273,   87,   87,
2103        87, 1274, 1275, 1282, 1283, 1288, 1284, 1276, 1285, 1277,
2104 
2105        87, 1286, 1290, 1287, 1289, 1278,   87, 1291, 1292, 1295,
2106      1279, 1280,   87,   87,   87, 1293,   87, 1281,   87, 1275,
2107        87, 1296, 1288,   87, 1276,   87, 1277, 1298, 1294, 1290,
2108      1287, 1297, 1278, 1305, 1291, 1292,   87, 1279, 1280,   87,
2109      1299,   87, 1293,   87, 1281, 1303,   87, 1300, 1296, 1306,
2110      1301,   87, 3920, 1304, 1298, 1294,   87, 1308, 1297,   87,
2111        87, 1307, 1310, 1311, 1309,   87, 3920, 1299,   87,   87,
2112      3920, 1313, 1303,   87, 1300, 1312, 1306, 1301,   87,   87,
2113      1304, 1314, 1315,   87, 1308,   87, 1316, 1317, 1307,   87,
2114      1311, 1309, 1318,   87,   87, 1319, 1320, 1321, 1313,   87,
2115 
2116        87, 1322, 1312,   87, 1323,   87, 1324, 1325, 1314, 1315,
2117        87,   87, 1326, 1329, 1317, 1327, 1328,   87,   87, 1318,
2118      1335,   87, 1319, 1320, 1321,   87,   87,   87, 1322, 1330,
2119        87, 1323, 1334, 1324, 1325, 1331,   87, 1332, 1336, 1326,
2120        87, 1339, 1327, 1328,   87,   87,   87, 1333,   87,   87,
2121      1337, 1338,   87,   87,   87, 1344, 1330, 1340, 1341, 1334,
2122        87, 1342, 1331,   87, 1332, 1336, 1345, 1343, 1339, 1346,
2123      1347, 3920, 1348,   87, 1333, 3920, 1351, 1337, 1338,   87,
2124        87, 1350, 1344,   87, 1340, 1341, 1349,   87, 1342,   87,
2125        87, 1352,   87, 1345, 1343,   87, 1353, 1356,   87, 1348,
2126 
2127      1360,   87,   87, 1351, 1354, 1357, 1358, 1355, 1350,   87,
2128      1359,   87, 1362, 1349, 1363, 1361, 1365,   87, 1366,   87,
2129      1367,   87, 1369,   87, 1356,   87, 1364, 1360,   87,   87,
2130        87, 1354, 1357, 1358, 1355,   87, 1371, 1359,   87, 1362,
2131      1372, 1363, 1361, 1368,   87, 1366, 1370, 1374,   87, 1369,
2132      1373, 3920,   87, 1364, 1375,   87,   87, 1376, 1378,   87,
2133      1377, 1379,   87, 1371,   87, 1385, 3920, 1372,   87,   87,
2134      1368, 1380, 1381, 1370, 1374, 1383,   87, 1373,   87, 1382,
2135        87, 1375, 1386,   87, 1376, 1378,   87, 1377, 1379, 1384,
2136        87, 1388, 1387,   87, 1390,   87,   87,   87, 1380, 1381,
2137 
2138        87, 1389, 1383, 1391, 1393, 1392, 1382, 1396, 1395,   87,
2139        87,   87,   87,   87, 1394, 1397, 1384, 1398, 1388, 1387,
2140        87, 1390,   87, 1399, 1400,   87, 1401, 1403, 1389, 3920,
2141      1391, 1393, 1392, 1402, 1404, 1395, 1407, 1406,   87,   87,
2142      1408, 1394, 1409, 1405,   87,   87,   87,   87, 1410,   87,
2143      1399, 1400,   87, 1411, 1412,   87,   87, 1414,   87,   87,
2144      1402, 1404,   87, 1413, 1406,   87,   87, 1408,   87,   87,
2145      1405,   87,   87, 1415, 1416, 1410,   87, 1417, 3920, 1419,
2146      1411, 1412, 1426, 1418, 1414, 1422, 1421, 1420,   87, 1423,
2147      1413, 1424, 3920,   87,   87, 3920, 1429,   87,   87, 1428,
2148 
2149      1415, 1416,   87,   87, 1417,   87, 1419, 1425, 1427,   87,
2150      1418,   87,   87, 1421, 1420, 1430,   87,   87, 1424, 1432,
2151      1433,   87, 1434, 1429,   87, 1435, 1428,   87,   87,   87,
2152        87, 1436, 1437, 1438, 1425, 1427, 1439, 1442,   87,   87,
2153      1440, 1443, 1430, 1441,  173, 1444, 1432, 1433, 3920, 1434,
2154        87, 1445, 1435, 1446,   87,   87, 1447,   87, 1436, 1437,
2155        87, 1448,   87, 1439, 1442,   87,   87, 1440, 1443, 1449,
2156      1441, 1451, 1444,   87,   87,   87, 1452, 1450, 1445, 1453,
2157      1446, 3920, 1454, 1447,   87, 1456, 1455, 3920, 1448, 1457,
2158      3920, 3920, 1459, 1458,   87, 1461,   87,   87,   87, 1462,
2159 
2160      1464, 3920, 3920,   87, 1450,   87, 1453,   87,   87, 1454,
2161      1460,   87, 1456, 1455,   87,   87, 1457,   87, 1465, 1459,
2162      1458, 1463, 1461,   87,   87, 1467, 1462, 1464, 1466,   87,
2163      1468, 1469, 3920,   87, 1472, 1471, 1470, 1460,   87, 1473,
2164        87, 1480, 1475,   87,   87, 1465, 1474, 3920, 1463,   87,
2165      1482,   87, 1467,   87, 1481, 1466, 1483,   87, 1469,   87,
2166      3920, 1472, 1471, 1470,   87, 1476, 1473,   87, 1480, 1475,
2167      1484, 1485,   87, 1474, 1477, 1486, 1478, 1482, 1488, 1479,
2168        87, 1481, 1489,   87, 1487,   87,   87,   87,   87, 1490,
2169        87,   87, 1476, 1491, 1494, 1493, 1492, 1484, 1485, 3920,
2170 
2171      1496, 1477, 1486, 1478,   87, 1488, 1479,   87,   87, 1489,
2172        87, 1487, 1495,   87, 1497,   87, 1490, 1498, 1499, 3920,
2173      1491, 1500, 1493, 1492, 1501,   87,   87, 1496, 1502, 1504,
2174        87, 1503, 1505, 3920,   87,   87, 3920, 1506, 3920, 1495,
2175      3920, 1497, 1507,   87, 1498,   87,   87, 1512, 1500,   87,
2176        87, 1501,   87,   87,   87, 1502, 1504, 1508, 1503, 1505,
2177      1511, 1509, 1513, 1514, 1506,   87, 1516,   87, 1518, 1507,
2178      1510,   87,   87, 1515, 1512,   87, 1519,   87, 1517,   87,
2179        87, 1520, 3920, 1530, 1508,   87, 3920, 1511, 1509, 1513,
2180      1514, 1521,   87, 1516, 1522, 1518, 1523, 1510,   87,   87,
2181 
2182      1515,   87, 1525, 1519, 1524, 1517, 1528, 1526,   87, 1527,
2183        87, 1532, 1529,   87,   87,   87,   87,   87, 1521, 1531,
2184      1533, 1522,   87, 1523,   87, 1534,   87, 1539, 1536, 1525,
2185      1535, 1524,   87, 1528, 1526,   87, 1527, 1537,   87, 1529,
2186      1538, 1555,   87,   87, 1544, 1540, 1531, 1533,   87,   87,
2187      1541, 1542, 1534, 1543, 1539, 1536, 1545, 1535,   87,   87,
2188      1553, 3920,   87, 1554, 1537, 3920,   87, 1538, 1556, 1560,
2189      1558, 1544, 3920,   87,   87, 3920, 1557,   87, 1542, 3920,
2190      1543,   87,   87, 1545, 1546, 1561, 1559, 1553, 1547, 3920,
2191      1554, 1548, 1549,   87,   87, 1556, 1550, 1558,   87, 1562,
2192 
2193      3920,   87, 1551, 1557,   87, 1563, 1552,   87, 1564, 1570,
2194        87, 1546, 1561, 1559,   87, 1547, 1565, 3920, 1548, 1549,
2195      1566,   87, 1567, 1550, 1571, 3920, 1562, 1568, 1569, 1551,
2196      1573,   87, 1563, 1552,   87, 1564, 1572,   87, 1574, 1575,
2197      1576,   87,   87, 1565,   87,   87, 1578, 1566,   87, 1567,
2198      1577, 1580, 1579,   87, 1568, 1569,   87, 1573, 1581,   87,
2199        87,   87, 1583, 1572, 1582, 1574, 1575, 1576, 1589, 1590,
2200      3920, 1595, 3920,   87, 3920, 3920,   87, 1577,   87, 1579,
2201        87, 1591,   87,   87, 1594, 1581, 3920,   87, 1599, 1583,
2202        87, 1582, 1584, 1596,   87, 1589, 1590, 1585, 1595, 1586,
2203 
2204        87, 1587, 1597, 1588, 1598,   87,   87,   87, 1591,   87,
2205        87, 1594, 1600,   87, 1602, 1599, 1603, 1601, 1604, 1584,
2206      1596, 1607, 1606,   87, 1585, 1605, 1586, 1610, 1587, 1597,
2207      1588, 1598,   87, 1612,   87,   87, 1611, 1614, 1608,   87,
2208        87, 1602, 1609, 1603,   87, 1604,   87,   87, 1607, 1606,
2209        87, 1613, 1605, 1616, 1610, 1618,   87, 1615, 1617,   87,
2210      1612, 1619, 3920, 1620, 1614, 1608,   87, 1622,   87, 1609,
2211        87,   87,   87,   87, 1621,   87,   87, 1623, 1613, 1624,
2212      1616,   87, 1618, 1625, 1615, 1617, 1626, 1627, 1619,   87,
2213      1620,   87, 1628, 1629, 1622, 1630, 1632, 1634, 1633, 1631,
2214 
2215      3920, 1621, 1635,   87,   87,   87, 1624, 1640,   87, 1636,
2216        87, 1645,   87, 1626, 1627,   87,   87,   87, 3920, 1628,
2217      1629, 1637, 1630,   87,   87, 1633, 1631,   87,   87, 1635,
2218      1641,   87, 1638, 1639,   87, 1642, 1636,   87,   87,   87,
2219      1643, 1646, 1644,   87, 3920,   87, 1648, 1647, 1637,   87,
2220      1653, 1650, 1649, 3920, 1651, 1666, 1652, 1641, 1655, 1638,
2221      1639,   87, 1642,   87,   87,   87,   87, 1643, 1646, 1644,
2222        87,   87,   87, 1648, 1647,   87, 1654, 1653, 1650, 1649,
2223        87, 1651, 1656, 1652, 1657, 1655, 1658,   87, 1660,   87,
2224      1659, 1662, 1667, 1665, 1661, 3920, 1670, 3920, 1663, 3920,
2225 
2226        87,   87, 1664, 1654, 1668, 1669,   87,   87, 1674, 1656,
2227        87, 1657,   87, 1658,   87, 1660,   87, 1659, 1662,   87,
2228      1665, 1661,   87, 1671,   87, 1663,   87,   87,   87, 1664,
2229      1672, 1668, 1669, 1673, 1677,   87, 1675, 1676,   87, 1678,
2230      1680,   87, 1679,   87,   87, 1683, 1681, 1682,   87,   87,
2231      1671,   87,  173,   87, 1684, 1685,   87, 1672, 1687,   87,
2232      1673, 1677, 1686, 1675, 1676, 1693, 1678, 1680, 1695, 1679,
2233      3920, 1692, 3920, 1681, 1682, 1688,   87,   87,   87, 1690,
2234      1694, 1689, 1685,   87, 1698, 1691,   87,   87,   87, 1686,
2235        87, 1696,   87,   87, 1697, 1695, 1701,   87, 1692, 1700,
2236 
2237      1702,   87, 1688,   87,   87,   87, 1690, 1694, 1689, 1699,
2238        87, 1698, 1691, 1704, 3920, 1703,   87, 1706, 1696, 1708,
2239      1707, 1697,   87, 1701,   87, 1705, 1700, 1702,   87,   87,
2240      1710, 1709,   87, 1713, 1712, 1711, 1699, 1714, 1716,   87,
2241        87, 1715, 1703,   87, 1706,   87, 1708, 1707, 3920, 1722,
2242        87,   87, 1705, 1721,   87, 1724,   87, 3920, 1709, 1723,
2243      1713, 1712,   87, 1717, 1714, 1716, 1718, 1719, 1715, 1726,
2244      1720,   87,   87, 1725,   87,   87, 1722, 1728, 3920, 1727,
2245      1721, 1733, 1729, 1730,   87, 1734, 1723,   87, 1747,   87,
2246      1717,   87,   87, 1718, 1719,   87, 1726, 1720, 1731,   87,
2247 
2248      1725, 1735, 1732,   87, 1736, 1738, 1727,   87, 1733,   87,
2249      1730,   87, 1734,   87, 1737, 1739, 1744, 1740, 3920, 1743,
2250        87,   87,   87,   87, 1741, 1731, 1742,   87, 1735, 1732,
2251        87, 1736, 1738,   87, 1748,   87, 3920, 3920, 1745,   87,
2252      1746, 1737, 1739, 1744, 1740,   87, 1743,   87,   87,   87,
2253      1750, 1741, 1749, 1742, 1752, 1751, 1754, 1753,   87, 1759,
2254      1756, 1748, 1763,   87,   87, 1745,   87, 1746,   87,   87,
2255      1755, 1757,   87, 1761,   87, 1762, 1758, 1750, 1764, 1749,
2256        87, 1752, 1751, 1754, 1753,   87, 1759, 1756, 1760, 1763,
2257      1766,   87,   87,   87,   87, 1767,   87, 1755, 1757, 1765,
2258 
2259      1761,   87, 1762, 1758, 1768, 1764,   87, 1769, 1771, 1776,
2260      1777, 1770, 1772, 1773, 3920, 1760,   87, 1766, 1778, 1774,
2261        87, 1775, 3920, 3920,   87,   87, 1765,   87, 1779, 3920,
2262      1780, 1783, 1787,   87, 1769,   87,   87,   87, 1770, 1772,
2263      1773,   87,   87,   87, 1784, 1785, 1774,   87, 1775, 1781,
2264        87, 1782, 1786, 1788,   87, 1779,   87, 1780,   87, 1787,
2265      1791,   87, 1789,   87, 1790, 3920,   87,   87, 1792, 1793,
2266      1794, 1784, 1785, 1796,   87,   87, 1781, 1795, 1782, 1786,
2267      1788,   87, 1801, 3920,   87, 1803,   87, 1791,   87, 1789,
2268        87, 1790,   87, 1797, 1799, 1792, 1793, 1794, 1798, 1800,
2269 
2270      1796, 1802, 1804, 1806, 1795,   87, 1805, 1808,   87, 1801,
2271        87,   87, 1803, 1807,   87,   87, 1809, 1811, 1810, 1812,
2272      1817,   87, 1820,   87, 1814,   87,   87,   87, 1802, 1804,
2273      1806,   87, 1815, 1805, 1808,   87, 1816,   87, 1813, 1819,
2274      1807,   87, 1818, 1809,   87, 1810, 1812,   87, 1821,   87,
2275        87, 1814,   87, 1822,   87, 1829,   87, 3920, 1830, 1815,
2276        87, 1827, 1823, 1816, 1824, 1813, 1819,   87, 1825, 1818,
2277        87,   87,   87, 1826,   87, 1821,   87, 1828, 1831, 1832,
2278      1822,   87, 1829,   87,   87, 1830, 1833,   87, 1827, 1823,
2279      1835, 1824, 1834, 1836,   87, 1825, 1837, 1839, 1838, 3920,
2280 
2281      1826, 3920,   87, 1840, 1828, 1831, 1832,   87, 1841, 1847,
2282      3920,   87, 1843, 1833, 1842,   87, 1844,   87,   87, 1834,
2283        87,   87, 1846, 1837, 1839, 1838,   87, 3920,   87, 1845,
2284      1840,   87, 1848,   87, 1849, 1841, 1847,   87, 1850, 1843,
2285      1851, 1842, 1852, 1844, 1853,   87,   87, 1854, 1855, 1846,
2286      1856,   87, 1857, 3920,   87, 1859, 1845, 1865, 1858, 1848,
2287        87, 1849, 3920, 1860,   87, 1850,   87, 1851, 1866,   87,
2288      1863, 1853, 1868, 1872, 1861, 1855, 1870, 1856,   87,   87,
2289        87,   87, 1859, 1862,   87, 1858,   87, 1864,   87,   87,
2290      1860, 1867,   87, 1869,   87,   87, 1871, 1863,   87,   87,
2291 
2292        87, 1861, 1873, 1870,   87,   87, 1874, 1875, 1876,   87,
2293      1862, 1881, 1880, 1877, 1864, 1878, 1879,   87, 1867, 1883,
2294      1869, 1882,   87, 1871,   87, 1884,   87,   87,   87, 1873,
2295      1885,   87,   87,   87, 1875,   87,   87,   87, 1881, 1880,
2296      1877, 1886, 1878, 1879, 1887, 1889, 1883, 1888, 1882, 1890,
2297        87, 1891, 1884,   87, 1892,   87,   87, 1885, 1895, 1893,
2298      1894, 1896,   87,   87, 1898, 1899, 1897,   87, 1886,   87,
2299        87, 1887, 1889,   87, 1888, 1900, 1890,   87,   87, 1901,
2300        87, 1892, 1902,   87,   87, 1895, 1893, 1894, 1896, 1903,
2301        87, 1898, 1899, 1897,   87, 1904, 1905, 3920, 1906, 1907,
2302 
2303      1908,   87, 1900,   87,   87, 1909, 1901, 1910,   87, 1902,
2304      1913, 1911, 1914, 1912, 1917, 1916,   87, 1915,   87,   87,
2305      1919,   87, 1904, 1905,   87, 1906, 1907, 1908,   87, 1918,
2306        87,  173, 1909, 1921, 1910,   87, 1920,   87, 1911,   87,
2307      1912, 1917, 1916, 1927,   87,   87,   87, 1919, 1924, 1922,
2308      1923,   87, 1925, 1926,   87, 1929, 1918,   87, 1934, 1928,
2309      1921,   87,   87, 1920, 1932, 1930, 1931, 1945, 1940,   87,
2310      1927,   87, 1935,   87, 1936, 1924, 1922, 1923, 1938, 1925,
2311      1926,   87, 1929, 1942, 1939,   87, 1928,   87,   87, 1933,
2312        87, 1932, 1930, 1931,   87, 1937,   87,   87, 1943, 1935,
2313 
2314        87, 1936,   87,   87, 1944, 1938,   87, 1941, 1948, 3920,
2315      1946, 1939, 1949, 1947,   87,   87, 1933,   87,   87, 1950,
2316        87,   87, 1937, 1951, 1956, 1943,   87, 1952, 3920, 1953,
2317        87, 1944, 1954,   87, 1941, 1948,   87, 1946, 1955, 1949,
2318      1947,   87, 1957, 3920, 1958,   87, 1950,   87, 1959, 1960,
2319      1951, 1956, 1966,   87, 1952,   87, 1953,   87, 1962, 1954,
2320      1961, 1963, 1965, 3920,   87, 1955,   87,   87, 1967, 1957,
2321        87, 1958, 1973, 1964, 1970, 1959, 1960,   87, 1968, 1974,
2322      1975, 1971,   87,   87,   87, 1962, 1979, 1961, 1963, 1965,
2323        87, 1972,   87,   87, 1969, 1967,   87, 1976, 1977, 1973,
2324 
2325      1964, 1970,   87,   87, 1978, 1968,   87, 1975, 1971, 1980,
2326      1981, 1982,   87, 1979, 1983, 3920, 1984, 1986, 1972, 1985,
2327      1988, 1969, 1989, 1987,   87,   87,   87,   87,   87,   87,
2328        87, 1978, 1990,   87, 1991,   87, 1980, 1992, 1982, 1995,
2329      1994, 1983,   87, 1984, 1986, 1993, 1985,   87, 1996,   87,
2330      1987, 1997,   87, 3920,   87, 2000,   87, 3920, 1998, 1999,
2331        87, 1991,   87,   87,   87,   87,   87, 1994, 2002,   87,
2332        87,   87, 1993, 2001, 2003, 1996, 2004, 2008, 1997, 2005,
2333        87,   87, 2000, 2009, 2007, 1998, 1999,   87,   87,   87,
2334      2006,   87,   87, 2010, 2011, 2002, 2014, 2012, 3920, 3920,
2335 
2336      2001, 2003,   87, 2004, 2008, 2013, 2005,   87, 2015,   87,
2337      2009, 2007,   87,   87, 2016,   87, 2017, 2006, 2018,   87,
2338      2010, 2011, 2019,   87, 2012,   87, 2021, 2023,   87, 2022,
2339      2024,   87, 2013, 2025, 3920, 2015, 2026,   87, 2027, 2030,
2340      2020, 2016,   87, 2017, 3920, 2018,   87,   87, 2029, 2019,
2341      2028,   87,   87, 2021,   87,   87, 2022, 2024, 2032, 2031,
2342      2025,   87,   87, 2026,   87, 2027, 2030, 2020,   87, 2033,
2343      2034, 2035, 2037, 2040, 2036, 2029,   87, 2028, 2041, 2038,
2344        87,   87,   87,   87, 2039, 2032, 2031, 2043, 2042,   87,
2345        87,   87, 2044, 2045, 2046, 2048, 2033, 2034, 2035, 2037,
2346 
2347      2040, 2036, 2047,   87, 2049, 2041, 2038, 3920,   87, 2050,
2348      2051, 2039,   87, 2052,   87, 2042, 2055,   87,   87,   87,
2349      2045, 2046,   87, 2053, 2054, 2056,   87, 2058, 2057, 2047,
2350        87, 2049,   87,   87, 2059,   87, 2050, 2051,   87,   87,
2351      2052, 2060,   87, 2055, 2061,   87, 2062,   87, 2063,   87,
2352      2053, 2054, 2056, 2064, 2058, 2057, 2065, 2066, 3920,   87,
2353      2067, 2059, 2068, 2069, 2074, 2070,   87,   87, 2060, 2071,
2354      2100, 2061,   87, 2062, 2072, 2063,   87,   87,   87, 2073,
2355        87, 2078, 2075,   87, 2066,   87,   87, 2067, 2079, 2068,
2356      2069, 2074, 2070, 2076, 2077,   87, 2071,   87, 2081, 2080,
2357 
2358      3920, 2082,   87,   87, 2084, 2083,   87,   87, 2078, 2075,
2359        87, 2086,   87, 2088, 2087, 2079,   87, 2089, 2085, 3920,
2360      2076, 2077, 3920, 2103, 2090, 2081, 2080,   87, 2082,   87,
2361        87, 2084, 2083,   87, 2093,   87, 2091, 2092, 2086, 2094,
2362      2088, 2087,   87,   87, 2089, 2085,   87, 2095, 2097, 2096,
2363      2098, 2090, 2099,   87, 2102,   87, 2104, 2105, 2101, 2106,
2364        87,   87, 2111, 2091, 2092,   87,   87,   87, 2107, 2110,
2365        87, 2115,   87, 2108, 2095, 2097, 2096, 2098,   87, 2099,
2366        87,   87,   87, 2104, 2105, 2101, 2109, 2112, 2116,   87,
2367      2120,   87, 2113,   87,   87, 2107, 2110, 2117, 2114, 2121,
2368 
2369      2108,   87, 2118,   87, 2119,   87, 2123,   87, 3920,   87,
2370        87, 2128,   87, 2109, 2112, 2116,   87, 2120, 2122, 2113,
2371        87,   87, 2124, 2125, 2117, 2114, 2121, 2132, 2126, 2118,
2372      2127, 2119, 2129, 2123, 2130, 2131,   87,   87,   87, 3920,
2373        87,   87, 2133,   87, 2134, 2122, 2135, 2138, 2139, 2124,
2374      2125,   87, 2136,   87, 2132, 2126,   87, 2127, 2140, 2129,
2375      2137,   87,   87, 3920, 2144, 2141,   87,   87,   87, 2133,
2376        87,   87, 2142, 2135,   87, 2139, 2143, 2145, 2146, 2136,
2377      2147, 2148, 2151,   87,   87,   87, 2153, 2137,   87, 2149,
2378        87,   87, 2141, 2150, 2152, 2157, 2155, 2154,   87, 2142,
2379 
2380        87,   87,   87, 2143, 2145, 2146, 2175, 2147, 2148, 2151,
2381        87,   87,   87, 2153, 2156,   87, 2149, 2159, 2158,   87,
2382      2150, 2152, 2157, 2155, 2154, 2160, 2161, 2162, 2163,   87,
2383      2164, 2167,   87,  173,   87, 2166,   87, 2165,   87, 3920,
2384      2169, 2156,   87, 3920, 2159, 2158, 2168, 2171,   87, 2172,
2385      2170,   87,   87, 2161, 2162, 2163,   87,   87, 2167,   87,
2386        87,   87, 2166,   87, 2165,   87, 2176, 2169, 2174, 2178,
2387      2173, 2177, 2179, 2168, 2171,   87, 2172, 2170,   87, 2180,
2388        87,   87, 2181, 2182, 2184, 2183, 2186, 2187, 2185,   87,
2389        87, 2188, 3920, 2176, 3920, 2174, 2178, 2173, 2177,   87,
2390 
2391        87, 2190, 2189,   87,   87, 3920, 2180,   87, 2191, 2181,
2392        87, 2211, 2183, 2186, 2192, 2185,   87,   87,   87,   87,
2393      2193,   87, 2194, 2196, 2195,   87,   87, 3920, 2190, 2189,
2394      2197,   87,   87,   87, 2200, 2191, 2198, 2201, 2199, 3920,
2395      2202, 2192, 2203,   87, 2210,   87,   87, 2193, 3920, 2194,
2396      2196, 2195,   87,   87,   87, 2204, 2208, 2197, 2209,   87,
2397        87, 2200,   87, 2198, 2201, 2199, 2205, 2202, 2206, 2203,
2398        87,   87, 2217,   87, 2212, 2207, 2213, 2216,   87,   87,
2399        87, 2214, 2204, 2208, 2215, 2209, 2221,   87,   87,   87,
2400        87, 2218,   87, 2205, 2219, 2206, 2220, 2222, 2223, 2217,
2401 
2402      2225, 2212, 2207, 2213, 2216, 2226, 2230,   87, 2214, 2227,
2403      2224, 2215,   87, 2221, 2228,   87,   87,   87, 2218, 2231,
2404        87, 2219, 2229, 2220,   87,   87, 2232,   87,   87, 2233,
2405      2234,   87, 2226,   87, 2235, 2236, 2227, 2224, 2238, 2240,
2406      3920, 2228,   87,   87, 2237, 2239, 2231,   87,   87, 2229,
2407      2241, 2243, 2242,   87, 2244, 2251, 2233, 2245,   87,   87,
2408        87, 2235,   87,   87, 2246, 2238, 2240,   87, 2247,   87,
2409        87, 2237, 2239,   87, 2248, 3920, 2249,   87, 2243, 2242,
2410      2259,   87, 2250, 3920, 2245, 3920, 3920,   87, 2257, 2268,
2411        87, 2246, 2252, 2253, 2254, 2247,   87,   87, 2256, 2255,
2412 
2413      2263, 2248,   87, 2249,   87,   87, 2258,   87, 2262, 2250,
2414      2260, 2261,   87,   87,   87, 2257, 2268,   87,   87, 2252,
2415      2253, 2254,   87, 2266, 2264, 2256, 2255, 2263,   87, 2265,
2416      2267, 2269, 2270, 2258, 2271, 2262,   87, 2260, 2261, 3920,
2417      2274, 2273,   87, 2272,   87, 2275,   87,   87,   87, 2277,
2418      2266, 2276,   87, 2278, 2289, 2280,   87, 2267, 2269, 2270,
2419        87,   87, 2281, 2282, 2279, 2284,   87, 2274, 2273,   87,
2420      2272, 2285,   87,   87, 3920,   87, 2277, 2283, 2276, 2286,
2421      2278,   87, 2280, 2287,   87, 2293,   87, 2288, 2290,   87,
2422        87, 2279,   87,   87, 2291, 2292,   87,   87, 2285, 2295,
2423 
2424      2296,   87, 2299, 2294, 2283,   87, 2286, 2297,   87,   87,
2425      2287,   87,   87, 2300, 2288, 2290, 2298,   87, 2301,   87,
2426        87, 2291, 2292, 2303, 2302,   87, 2295, 2296,   87, 2299,
2427      2294, 2304, 2305, 2308, 2297,   87, 2307, 3920, 2311, 2306,
2428        87, 2310, 2309, 2298, 2312, 2301,   87, 2315, 3920,   87,
2429      2313, 2302, 2317,   87, 2316,   87,   87, 2314, 2304,   87,
2430        87,   87, 2318, 2307,   87,   87, 2306,   87, 2310, 2309,
2431        87,   87,   87, 2319, 2315,   87, 2321, 2313, 2320, 2317,
2432      2323, 2316, 2322,   87, 2314,   87,   87, 2324,   87, 2318,
2433      2326, 2327, 3920, 2325, 2329, 3920, 2332, 2331,   87, 2328,
2434 
2435      2319,   87,   87, 2321,   87, 2320,   87, 2323,   87, 2322,
2436      2330,   87, 2333, 2334, 3920, 3920, 2340,   87, 2327,   87,
2437      2325, 2329,   87, 2332, 2331, 2335, 2328, 2336,   87, 2337,
2438      2338, 2342, 2339, 2343,   87,   87, 3920, 2330,   87, 2333,
2439        87,   87,   87, 2340, 2341, 2344, 2345, 2348, 2346,   87,
2440      2356, 3920, 2335, 2347, 2336,   87, 2337, 2338, 2342, 2339,
2441        87, 2349, 2351,   87,   87,   87, 2350,   87, 2352,   87,
2442        87, 2341, 2344, 2345,   87, 2346, 2353, 2354, 2355,   87,
2443      2347, 2361,   87,   87,   87,   87, 2358, 2357, 2349, 2351,
2444        87, 2362, 2360, 2350, 2359, 2352,   87, 2363,   87, 2373,
2445 
2446      2368, 2369, 2367, 2353, 2354, 2355,   87, 2364,   87,   87,
2447      2365, 2370, 2374, 2358, 2357, 2366,   87,   87, 2362, 2360,
2448        87, 2359,   87, 2376, 2363,   87,   87, 2368,   87, 2367,
2449      2371,   87, 2375,   87, 2364, 2372, 2377, 2365,   87, 2378,
2450      2379, 2380, 2366, 2381,   87,   87, 2382, 2383, 2384,   87,
2451      2376,   87, 2385, 2386, 2387,   87, 2388,   87,   87, 2375,
2452      2389, 2390,   87, 2377,   87, 3920,   87, 2379, 2380,   87,
2453      2381,   87,   87, 2382, 2383, 2391, 2392, 2393,   87, 2385,
2454        87, 2387,   87, 2388, 2394,   87, 2395,   87, 2390, 2397,
2455      2396, 2398,   87, 2399,   87, 2400, 2403, 2401,  173,   87,
2456 
2457      2402, 2406, 2391, 2392, 2393, 2407, 3920, 2405, 2408, 2404,
2458      2409, 2394,   87, 2395,   87,   87,   87, 2396, 2398,   87,
2459      2399,   87,   87,   87, 2401, 2410,   87,   87,   87, 2411,
2460        87,   87, 2407,   87, 2405, 2408, 2404, 2409, 2414, 2412,
2461      2415, 2416, 2417,   87, 2413, 3920, 2418,   87, 3920, 2419,
2462      2422,   87, 2410, 2421, 3920, 2420, 2411,   87, 2427, 2424,
2463      2423, 2425,   87,   87,   87, 2414, 2426, 2415, 2416, 2417,
2464        87,   87,   87, 2418, 2429,   87, 2419,   87,   87, 3920,
2465      2421,   87, 2420,   87, 2428,   87, 2424, 2423, 2425, 2430,
2466        87,   87,   87, 2426, 2431, 2432, 2433, 2435,   87, 2436,
2467 
2468      3920, 2429,   87, 2434, 2437, 2438, 2442, 2439,   87, 3920,
2469      2443, 2428, 3920, 2440,   87,   87, 2430, 2444, 2459,   87,
2470        87, 2431,   87, 2433, 2441,   87, 2436,   87,   87,   87,
2471      2434, 2437, 2438, 2442, 2439,   87, 2445, 2443, 2446,   87,
2472      2440, 2447, 2448,   87, 2444, 2450, 2449, 2451, 2452, 2454,
2473        87, 2441,   87, 2453, 3920, 2455, 3920,   87, 2461,   87,
2474        87,   87, 2471, 2445,   87, 2446,   87,   87, 2447, 2448,
2475      2456, 2457, 2450, 2449, 2451,   87, 2454,   87, 2458, 2460,
2476      2453,   87, 2455,   87,   87, 2461, 2462, 2463, 2465,   87,
2477      2464,   87, 2467, 2466,   87, 2468, 3920, 2456, 2457,   87,
2478 
2479        87, 3920, 2470, 2469, 3920, 2458, 2460,   87, 2473, 2475,
2480      2480,   87,   87, 2462, 2463,   87,   87, 2464, 2472,   87,
2481      2466,   87, 2468,   87, 2476,   87, 2477, 2474,   87, 2470,
2482      2469,   87,   87, 2479, 2478, 2473, 2475, 2480, 3920,   87,
2483      2481, 2485, 2483, 2487, 2482, 2472, 2484,   87, 2488, 3920,
2484        87, 2476,   87, 2477, 2474,   87,   87,   87, 2486,   87,
2485      2479, 2478, 2489, 2497, 2496, 2494,   87, 2481, 2485, 2483,
2486        87, 2482,   87, 2484, 3920,   87, 2490, 2491, 2495,   87,
2487      2492, 2499,   87, 3920, 3920, 2486, 2498, 2500,   87, 2489,
2488        87, 2496, 2494, 2493, 2501,   87, 2503, 2504, 3920, 2502,
2489 
2490      2505,   87, 2511, 2490, 2491, 2495,   87, 2492, 2499,   87,
2491      2506,   87, 2508, 2498, 2500, 2507,   87,   87,   87, 2509,
2492      2493, 2501,   87, 2503, 2504, 2510, 2502, 2505,   87, 2511,
2493        87, 2512,   87, 2513, 2515,   87, 2517, 2506, 2514, 2508,
2494      2516,   87, 2507,   87, 2518,   87, 2509,   87, 2519, 2520,
2495        87, 2521, 2510, 2528, 2522, 2523,   87,   87, 2512, 2525,
2496      2513,   87, 2524, 2517, 3920, 2514,   87, 2516,   87, 2529,
2497      3920, 2518, 2538,   87, 2526,   87, 2520,   87, 2521,   87,
2498      2527, 2522, 2523,   87,   87,   87, 2525,   87, 2530, 2524,
2499      2531,   87, 2532, 2534, 2537, 2535, 2529, 2533, 2536,   87,
2500 
2501      2539, 2526,   87,   87, 2541,   87, 2543, 2527, 2545,   87,
2502      2544,   87,   87, 2540, 2550, 2530,   87, 2531, 3920, 2546,
2503      2534, 2537, 2535, 2542,   87, 2536,   87, 2539,   87,   87,
2504        87, 2541,   87,   87, 2547, 2545, 2548, 2544,   87, 3920,
2505      2540,   87, 2551, 2554, 2549, 2555, 2546, 2552, 3920, 2553,
2506      2542, 2556, 3920, 3920, 2557,   87, 3920,   87, 2560, 2562,
2507        87,   87, 2558, 2548, 2563, 2559,   87,   87, 2565, 2551,
2508      2554, 2549, 2555,   87, 2552,   87, 2553,   87, 2556, 2564,
2509        87, 2557, 2561,   87, 2566, 2560,   87, 2567,   87, 2558,
2510      2568,   87, 2559, 2569,   87, 2565, 2570, 2575, 2571,   87,
2511 
2512      3920,   87, 3920, 2574, 2576,   87, 2564, 2572, 2580, 2561,
2513        87, 2566,   87,   87, 2567,   87, 2581, 2568,   87, 2573,
2514      2569,   87, 2579, 2570,   87, 2571,   87, 2577, 2578,   87,
2515      2574, 2576, 2582,   87, 2572, 2580,   87,   87, 2583, 2587,
2516      2586, 2584, 2585, 2581,   87, 2589, 2573,   87, 2588, 2579,
2517      3920, 3920, 3920, 2590, 2577, 2578,   87,   87, 2591, 2582,
2518        87,   87,   87,   87, 2595, 2583, 2587, 2586, 2584, 2585,
2519        87, 2592, 2589, 2593, 2594, 2588,   87, 2596,   87,   87,
2520      2590, 2597, 2599,   87, 2598, 2591,   87, 2600, 2601, 2603,
2521      2602, 2595, 2606, 3920,   87, 2604, 2610,   87, 2592,   87,
2522 
2523      2593, 2594,   87, 2605, 2596,   87,   87, 3920, 2597,   87,
2524      2614, 2598, 2607, 2608, 2600,   87, 2603, 2602,   87, 2606,
2525        87, 2609, 2604, 2615,   87,   87, 2611, 2612,   87,   87,
2526      2605,  173, 2613, 2616, 2618, 2617, 2619, 2621, 2622, 2607,
2527      2608,   87,   87,   87, 2623, 2620,   87, 2627, 2609,   87,
2528      2626, 2632, 2628, 2611,   87,   87, 2639,   87, 2624,   87,
2529      2616, 2618, 2617, 2619, 2621,   87, 2629, 2630,   87, 2625,
2530        87, 2623, 2620, 2635,   87, 2633,   87, 2626,   87, 2628,
2531      2631,   87, 2634,   87, 2636, 2624, 2637,   87,   87,   87,
2532      2638, 2640, 2641, 2629, 2630,   87, 2625, 2642, 2643,   87,
2533 
2534      2635,   87, 2633, 3920, 2644,   87,   87, 2631, 2645, 2634,
2535        87, 2636,   87,   87,   87, 2647, 2649, 2638, 2640, 2641,
2536        87, 2655, 2646, 2648, 2642, 2643,   87,   87, 2650, 2651,
2537        87, 2644,   87, 3920, 2652, 2645, 2653,   87,   87, 2654,
2538        87,   87, 2647, 2649,   87, 2656, 3920, 2657,   87, 2646,
2539      2648, 2658, 2662, 2659, 2664, 2650, 2651, 2665,   87,   87,
2540      2661, 2652,   87, 2653, 2660,   87, 2654,   87,   87,   87,
2541      2667,   87, 2656,   87, 2657, 2663,   87, 2666, 2658, 2662,
2542      2659, 2664, 2668,   87, 2665, 2669,   87, 2661, 2670, 2673,
2543      2671, 2660,   87,   87, 2678, 2672,   87,   87,   87,   87,
2544 
2545      2674,   87, 2663, 2676, 2666, 2675, 2679, 2677,   87, 2668,
2546      2681,   87, 2669,   87, 2683, 2670, 2673, 2671,   87, 2680,
2547      2682, 3920, 2672, 2684,   87, 2686,   87, 2674, 2689, 2685,
2548      2676,   87, 2675,   87, 2677,   87,   87, 2681,   87, 2687,
2549      2688, 2683,   87, 2693, 2691, 2692, 2680, 2682,   87, 2694,
2550      2684, 2690,   87, 2696,   87, 2689, 2685,   87, 2695,   87,
2551      2702,   87, 2697, 2698,   87, 2699, 2687, 2688, 2703,   87,
2552      2693, 2691, 2692, 2705,   87,   87,   87, 2708, 2690,   87,
2553        87, 2700, 2709,   87, 2701, 2695, 2704,   87, 2706, 2697,
2554      2698, 2707, 2699, 2715,   87, 2703, 3920, 2710,   87,   87,
2555 
2556      2705, 2711, 2714, 2712,   87, 2713,   87,   87, 2700,   87,
2557        87, 2701,   87, 2704, 2716, 2706, 2718,   87, 2707,   87,
2558        87, 2720, 2719,   87, 2710, 2717, 2721, 2723, 2711, 2714,
2559      2712,   87, 2713,   87, 2722, 2724, 2728, 2725,   87, 2726,
2560      2729,   87, 2727,   87, 2733, 2730,   87, 2731,   87, 2719,
2561        87, 2732, 2717, 2721,   87,   87,   87,   87,   87, 2735,
2562      2737, 2722,   87, 2728, 2725, 2739, 2726,   87,   87, 2727,
2563      2736,   87, 2730,   87, 2731, 2734, 2742, 2738, 2732,   87,
2564      2740, 2748,   87,   87, 2744, 2743,   87, 2737, 2745,   87,
2565      3920, 2747, 2739,   87, 2749, 2741,   87, 2736,   87,   87,
2566 
2567      2754, 2755, 2734,   87, 2738, 2746,   87, 2740,   87, 2750,
2568      2752, 2744, 2743,   87,   87, 2745,   87,   87, 2747, 2751,
2569      2757, 2753, 2741,   87, 3920, 3920,   87, 2754,   87, 2758,
2570      2756,   87, 2746,   87, 3920, 2760, 2750, 2752,   87, 2759,
2571      2762, 2765,   87, 2763, 2764, 2776, 2751, 2757, 2753, 2761,
2572        87,   87,   87, 2768,   87, 2770, 2758, 2756, 2769,   87,
2573      2766,   87, 2760, 2767,   87,   87, 2759,   87, 2765,   87,
2574      2763, 2764,   87, 2771, 2772, 3920, 2761,   87, 2773, 2777,
2575      2768,   87, 2770, 3920, 3920, 2769, 2778, 2766, 2779, 2780,
2576      2767,   87, 2785, 2774,   87, 2775, 2781, 2791,   87,   87,
2577 
2578      2771, 2772,   87, 2782, 3920, 2773, 2777, 2784,   87, 2787,
2579        87,   87, 2783, 2778,   87, 2779, 2780,   87,   87, 2785,
2580      2774, 2788, 2775, 2781, 2789,   87, 2786,   87, 2790,   87,
2581      2782,   87, 2792, 2794, 2784, 2793, 2787, 2795, 2799, 2783,
2582        87,   87, 3920,   87, 2796,   87,   87, 2798, 2788,   87,
2583      2797, 2789,   87, 2786, 2800, 2790, 2801, 2802, 2803, 2807,
2584      2794, 2804, 2793,   87,   87, 2799,   87, 2806, 2805,   87,
2585      2808, 2796,   87, 2809, 2798,   87,   87, 2797,   87,   87,
2586        87, 2800, 2810, 2801, 2802, 2803,   87, 2812, 2804,   87,
2587      2811,   87, 2813, 2814, 2806, 2805,   87,   87, 3920, 2817,
2588 
2589      2809, 3920,   87, 2815, 3920,   87, 2818, 3920, 2820, 2810,
2590      2819, 2816, 3920, 2824, 2812,   87, 2825, 2811,   87, 2813,
2591      2821, 2826, 3920, 3920,   87,   87, 2817,   87,   87,   87,
2592      2815,   87, 2827, 2818,   87, 2820, 2828, 2819, 2816, 2822,
2593      2824, 2823,  173, 2825,   87, 2830,   87, 2821,   87, 2829,
2594      2832, 2831, 3920, 3920,   87, 2835, 2836, 2837, 2833, 2827,
2595      2841, 3920, 2834, 2828,   87,   87, 2822,   87, 2823,   87,
2596        87, 2840, 2830,   87,   87, 2839, 2829, 2832, 2831,   87,
2597        87, 2838, 2835, 2836, 2837, 2833,   87,   87,   87, 2834,
2598      2842, 2843, 2845,   87, 2844, 3920, 2848, 2849, 2840, 2846,
2599 
2600      2847, 3920, 2839, 2851, 3920, 2853, 2850, 3920, 2838, 2855,
2601      2859, 3920, 2852, 3920, 2858, 3920, 2881,   87,   87,   87,
2602        87, 2844,   87,   87,   87,   87, 2846, 2847,   87,   87,
2603        87,   87, 2853, 2850, 2854,   87, 2855, 2856, 2857, 2852,
2604        87, 2858,   87, 2860, 2861, 2862,   87, 2864,   87,   87,
2605        87, 2863, 2869, 3920, 2865, 2866,   87, 2871, 3920,   87,
2606      2870, 2854, 2867, 3920, 2856, 2857,   87, 2868,   87, 2873,
2607      2860, 2861, 2862, 3920,   87,   87,   87,   87, 2863, 2869,
2608        87, 2865, 2866,   87,   87,   87, 2872, 2870, 2874, 2867,
2609      2875,   87, 2876, 2877, 2868,   87, 2873,   87, 2878,   87,
2610 
2611        87, 2879, 2880, 3920, 2883, 2882,   87, 2884,   87, 2885,
2612      2890, 3920, 2894, 2872, 2886, 2874, 2888, 2875,   87, 2876,
2613      2877,   87,   87, 2897,   87, 2878,   87, 2887, 2879, 2880,
2614        87, 2883, 2882,   87, 2884,   87, 2885,   87,   87, 2889,
2615      2891, 2886, 2892, 2888,   87,   87, 2893, 2895,   87, 2899,
2616      2897, 2896, 3920,   87, 2887,   87, 2898, 2902, 2900, 3920,
2617      2901, 3920,   87, 2903, 2904, 2905, 2889, 2891,   87, 2892,
2618        87,   87, 2906, 2893,   87, 2908, 2899,   87, 2896,   87,
2619      2909,   87, 2910, 2898, 2902, 2900,   87, 2901,   87,   87,
2620      2903, 2904, 2905, 2907,   87, 2911,   87, 2912, 2913, 2906,
2621 
2622      2914,   87, 2908,   87, 2915, 2916, 2917, 2909, 2918, 2921,
2623        87, 2919,   87,   87,   87,   87,   87,   87,   87, 2920,
2624      2907, 2922, 2911, 2923,   87, 2913, 2924,   87,   87, 2925,
2625        87, 2915, 2916, 2917, 2926, 2918, 2921, 2927, 2919, 2940,
2626      3920, 2928, 2936,   87,   87,   87, 2920, 2929, 2922, 2930,
2627      2923, 2931, 2932,   87,   87, 2934,   87, 2933,   87, 2939,
2628        87, 2937, 2935, 2942, 2927, 2938,   87,   87, 2928,   87,
2629        87,   87,   87,   87, 2929,   87, 2930,   87, 2931, 2932,
2630        87,   87, 2934,   87, 2933, 2941, 2939, 2943, 2937, 2935,
2631      2942, 2944, 2938, 3920,   87, 2945, 2946, 2947, 2948, 2949,
2632 
2633      3920, 2950, 2951, 2954,   87,   87, 3920, 2953,   87, 2952,
2634      2956, 3920, 2941, 2957,   87,   87,   87, 3920, 2944, 2955,
2635        87,   87, 2945, 2946, 2947, 2948, 2949,   87, 2950,   87,
2636      2954,   87,   87,   87, 2953, 2958, 2952, 2956,   87, 2959,
2637      2957, 2960, 2961, 2962, 2963, 2964, 2955, 2965,   87, 2966,
2638        87,   87,   87, 2967, 2968, 2969,   87, 3920, 2970, 2971,
2639      3920,   87, 2958, 2974,   87, 2975, 2959,   87, 2960, 2961,
2640      2962, 2963, 2964,   87,   87, 2973, 2966, 2976, 2972, 2977,
2641        87,   87,   87, 2979,   87, 2970, 2971,   87, 2978,   87,
2642      2974,   87, 2975, 2980,   87,   87, 2983,   87,   87, 2985,
2643 
2644        87, 2981, 2973,   87, 2976, 2972, 2977,   87, 2982, 2984,
2645      2979, 2986, 2988, 2987, 2990, 2978, 2989,   87, 2991,   87,
2646      2980, 2996, 2993,   87, 2997, 2992,   87, 2998, 2981,   87,
2647      2994,   87,   87,   87,   87, 2982, 2984,   87,   87,   87,
2648      2987, 2990,   87, 2989,   87, 2991, 2995, 3001,   87, 2993,
2649      3003, 2997, 2992,   87,   87, 2999,   87, 2994, 3000, 3002,
2650      3004,   87,   87,   87, 3005,   87, 3006, 3007, 3008, 3920,
2651      3009,   87, 3010, 2995, 3001, 3013, 3011, 3003,   87,   87,
2652      3017, 3920, 2999,  173,   87, 3000, 3002, 3004,   87, 3012,
2653        87, 3005,   87, 3006, 3007, 3008,   87, 3009, 3016, 3010,
2654 
2655      3014,   87, 3013, 3011, 3015,   87, 3018,   87, 3019,   87,
2656        87, 3020, 3021, 3023, 3022, 3024, 3012, 3026, 3920, 3027,
2657        87, 3028, 3025, 3920,   87, 3016, 3920, 3014, 3920, 3920,
2658      3920, 3015,   87, 3018,   87, 3019,   87,   87, 3020, 3021,
2659        87, 3022,   87,   87, 3026,   87, 3027,   87, 3028, 3025,
2660      3029, 3030, 3031, 3032, 3033, 3034, 3036, 3035, 3038,   87,
2661        87,   87,   87,   87,   87,   87, 3037,   87, 3039, 3040,
2662      3920, 3920, 3046,   87, 3071,   87,   87, 3029, 3030, 3031,
2663      3032, 3033, 3034, 3036, 3035, 3038, 3044, 3045, 3047, 3042,
2664      3041, 3043, 3050, 3037,   87, 3039, 3040,   87,   87,   87,
2665 
2666        87,   87, 3048, 3049, 3051, 3052,   87,   87, 3056, 3920,
2667        87, 3053,   87, 3044, 3045, 3047, 3042, 3041, 3043,   87,
2668        87,   87,   87, 3064, 3054, 3055, 3920, 3057,   87, 3048,
2669      3049, 3051,   87,   87,   87, 3056, 3058, 3059, 3053,   87,
2670      3061, 3063, 3060, 3062, 3065,   87,   87, 3174,   87, 3066,
2671        87, 3054, 3055,   87, 3057, 3069,   87, 3068, 3070, 3920,
2672      3920,   87, 3078, 3058, 3059, 3067,   87, 3061, 3063, 3060,
2673      3062,   87, 3072, 3077,   87, 3074, 3066, 3073,   87,   87,
2674      3075,   87,   87, 3076, 3068,   87,   87,   87,   87,   87,
2675      3079, 3080, 3067, 3082, 3081,   87,   87,   87,   87, 3072,
2676 
2677      3077,   87, 3074, 3083, 3073, 3084, 3085, 3075, 3087,   87,
2678      3076, 3086,   87, 3089, 3088, 3090, 3091, 3079, 3080,   87,
2679      3082, 3081, 3920,   87, 3920, 3095, 3920, 3097,   87, 3092,
2680      3083, 3093, 3084, 3085,   87,   87,   87,   87, 3086,   87,
2681        87, 3088, 3090, 3091, 3094, 3099,   87,   87, 3096,   87,
2682      3098,   87, 3095,   87, 3097,   87, 3092,   87, 3093, 3100,
2683      3101, 3102, 3103, 3106, 3104, 3105,   87, 3107, 3108,   87,
2684      3109, 3094, 3099, 3114,   87, 3096,   87, 3098, 3112, 3113,
2685        87, 3117, 3920,   87, 3110,   87, 3100, 3101, 3102,   87,
2686        87, 3104, 3105,   87, 3107, 3108,   87, 3109, 3111,   87,
2687 
2688        87, 3115,   87, 3120, 3116, 3112, 3113, 3118,   87, 3119,
2689        87, 3110, 3121, 3122,   87,   87,   87,   87, 3123,   87,
2690      3124, 3125,   87, 3126, 3127, 3111, 3129, 3128, 3115, 3135,
2691      3120, 3116, 3920,   87, 3118,   87, 3119, 3130,   87, 3121,
2692        87, 3132, 3131, 3133,   87, 3123, 3137, 3124, 3125,   87,
2693      3126,   87,   87,   87, 3128, 3134,   87, 3136,   87,   87,
2694        87, 3138,   87,   87, 3130, 3140, 3139, 3141, 3132, 3131,
2695      3133,   87,   87, 3137, 3147, 3142, 3143, 3144, 3145,   87,
2696      3146,   87, 3134, 3150, 3136, 3149, 3151, 3152, 3138,   87,
2697        87, 3192,   87, 3139, 3141,   87,   87,   87,   87, 3148,
2698 
2699      3154,   87, 3142, 3143, 3144, 3145,   87, 3146,   87,   87,
2700        87, 3153, 3149, 3151, 3152, 3155, 3158, 3156, 3157, 3159,
2701      3162, 3163,   87,   87,   87,   87, 3148, 3154, 3160, 3161,
2702      3164,   87,   87, 3168,   87,   87,   87, 3165, 3153, 3167,
2703      3166,   87, 3155, 3158, 3156, 3157, 3159, 3162,   87, 3169,
2704        87,   87,   87, 3170, 3172, 3160, 3161,   87, 3177,   87,
2705      3168,   87, 3171,   87, 3165, 3173, 3167, 3166, 3175, 3176,
2706      3179,   87, 3178,   87,   87, 3181,  173, 3182, 3180, 3183,
2707      3170, 3172,   87, 3185,   87, 3177, 3204, 3186, 3920, 3171,
2708        87,   87, 3173, 3184, 3189, 3175, 3176, 3179,   87, 3178,
2709 
2710        87,   87,   87, 3187,   87, 3180, 3183,   87, 3188, 3190,
2711        87,   87, 3191,   87, 3186, 3193,   87, 3920, 3194, 3195,
2712      3184, 3189, 3197, 3199, 3198,   87, 3196, 3200, 3201,   87,
2713      3202,   87, 3920, 3920,   87,   87, 3190, 3207,   87, 3191,
2714        87,   87, 3193,   87,   87, 3194, 3195, 3203, 3205, 3197,
2715      3199, 3198,   87, 3196, 3206, 3208, 3209, 3202, 3210,   87,
2716        87,   87,   87, 3212, 3207, 3211, 3214, 3221,   87, 3216,
2717        87, 3215,   87, 3920, 3203, 3205,   87, 3213,   87, 3217,
2718        87, 3206, 3208, 3209,   87, 3210, 3218,   87, 3219,   87,
2719      3212,   87, 3211, 3214, 3220,   87, 3216,   87, 3215,   87,
2720 
2721      3223, 3222, 3227,   87, 3213, 3224, 3217, 3225,   87,   87,
2722        87, 3226,   87, 3218,   87, 3219, 3228, 3229, 3233,   87,
2723      3232, 3220,   87, 3230, 3231,   87, 3236, 3223, 3222,   87,
2724        87, 3234, 3224, 3243, 3225, 3920,   87, 3240, 3226, 3244,
2725      3235,   87,   87, 3228, 3229, 3233,   87, 3232, 3237,   87,
2726      3230, 3231,   87,   87, 3238, 3239,   87, 3241, 3234, 3242,
2727        87,   87,   87, 3246, 3240,   87,   87, 3235, 3245, 3247,
2728      3248,   87,   87, 3249, 3254, 3237,   87, 3250, 3252,   87,
2729      3251, 3238, 3239, 3259,   87, 3253, 3242, 3255, 3920, 3920,
2730      3246, 3261,   87, 3256, 3257, 3245,   87,   87, 3920,   87,
2731 
2732      3249,   87,   87,   87, 3250, 3252,   87, 3251, 3263, 3258,
2733        87,   87, 3253, 3260, 3255, 3262,   87,   87, 3261, 3264,
2734      3256, 3257,   87,   87,   87,   87, 3265, 3266, 3267, 3268,
2735      3270, 3271, 3920, 3920, 3272,   87, 3258, 3269, 3273, 3275,
2736      3260,   87, 3262, 3278, 3276, 3282, 3264, 3274,   87, 3920,
2737        87, 3277,   87,   87,   87,   87, 3268, 3270,   87,   87,
2738        87, 3272,   87, 3281, 3269, 3273,   87, 3283, 3279, 3280,
2739      3278,   87,   87, 3284, 3274,   87,   87, 3285, 3277, 3286,
2740      3288, 3290, 3289, 3287, 3291, 3920, 3292, 3293,   87,   87,
2741      3281,   87, 3295,   87,   87, 3279, 3280,   87, 3300, 3299,
2742 
2743        87,   87, 3296, 3294, 3285, 3298, 3286,   87, 3290, 3289,
2744      3287,   87,   87, 3292,   87,   87,   87, 3297,   87,   87,
2745      3301, 3304, 3302, 3305, 3306,   87,   87, 3303, 3307, 3296,
2746      3294,   87, 3298, 3308, 3309, 3310, 3312, 3313,   87, 3314,
2747      3315, 3317,   87,   87, 3297,   87,   87, 3301, 3304, 3311,
2748      3316, 3306,   87, 3318,   87,   87,   87,   87, 3319, 3320,
2749        87, 3309, 3310, 3312,   87, 3321, 3322, 3324, 3317,   87,
2750      3325,   87,   87, 3323, 3329,   87, 3311, 3316, 3326, 3327,
2751        87,   87, 3328,   87,   87,   87, 3320, 3332,   87, 3920,
2752        87,   87, 3321, 3322, 3324, 3330,   87, 3325, 3331, 3333,
2753 
2754      3323, 3329,   87, 3336,   87, 3326, 3327, 3334, 3338, 3328,
2755      3337,   87,   87, 3343,   87, 3335,   87, 3344,   87, 3339,
2756      3345,   87, 3330, 3341, 3340, 3331, 3333,   87, 3342, 3920,
2757      3336,   87, 3346, 3920, 3334, 3338, 3347, 3337, 3348, 3350,
2758      3343, 3349, 3335, 3920,   87, 3352,   87, 3345, 3351, 3356,
2759        87,   87,   87, 3353,   87,   87, 3354, 3358,   87, 3346,
2760      3355, 3357,   87, 3347,   87, 3348, 3350,   87, 3349,   87,
2761        87,   87, 3352,   87,   87, 3351, 3356, 3359, 3360,   87,
2762      3353, 3363, 3361, 3354, 3358,   87, 3362, 3355, 3357,   87,
2763      3364, 3365, 3367,   87, 3366,   87, 3371, 3373, 3370, 3368,
2764 
2765      3369, 3375, 3378, 3920, 3359, 3360,   87,   87,   87, 3361,
2766      3372, 3374, 3382, 3362, 3376,   87, 3377,   87, 3365,   87,
2767        87, 3366,   87,   87,   87, 3370, 3368, 3369,   87,   87,
2768        87, 3379,   87,   87,   87, 3380, 3381, 3372, 3374,   87,
2769      3383, 3376, 3384, 3377, 3386,   87, 3385, 3388, 3389,   87,
2770      3387, 3390,   87,   87, 3392,   87, 3391, 3394, 3379,   87,
2771      3393, 3397, 3380, 3381,   87,   87,   87,   87,   87, 3384,
2772      3395, 3386, 3396, 3385, 3388, 3389, 3398, 3387,   87, 3399,
2773        87, 3392,   87,   87, 3394, 3400, 3402, 3393,   87,   87,
2774      3401, 3403,   87, 3404,   87,   87, 3405, 3395,   87, 3396,
2775 
2776      3406, 3407, 3408, 3398,   87, 3412,   87, 3410, 3409, 3413,
2777      3920, 3415, 3400, 3402,   87, 3411,   87, 3401,   87, 3416,
2778        87, 3414,   87, 3405,   87,   87, 3417,   87, 3407, 3408,
2779        87, 3418,   87,   87, 3410, 3409, 3413,   87, 3415, 3419,
2780      3422,   87, 3411, 3420, 3421, 3426, 3416, 3427, 3414,   87,
2781      3423, 3428,   87, 3417,   87, 3429,   87, 3430, 3418, 3424,
2782        87,   87, 3425,   87,   87, 3435, 3419, 3422, 3431, 3434,
2783      3420, 3421,   87,   87,   87,   87, 3436, 3423,   87, 3432,
2784      3433, 3438, 3429, 3437, 3430,   87, 3424,   87,   87, 3425,
2785      3439,   87, 3442, 3443, 3440, 3431, 3434,   87,   87,   87,
2786 
2787      3444, 3446,   87, 3436, 3447,   87, 3432, 3433,   87,   87,
2788      3437, 3445, 3441,   87,   87, 3448, 3454, 3439,   87, 3442,
2789      3443, 3440, 3449,   87, 3450, 3451, 3455,   87,   87, 3452,
2790      3920, 3447,   87,   87, 3453, 3920, 3920,   87, 3445, 3441,
2791      3456,   87, 3448, 3454,   87, 3457,   87, 3459, 3458, 3449,
2792        87, 3450, 3451,   87,   87, 3460, 3452, 3461, 3462,   87,
2793      3463, 3453,   87, 3467, 3464, 3468,   87, 3456,   87, 3465,
2794        87, 3466, 3457,   87, 3459, 3458,   87, 3471,   87,   87,
2795      3470,   87, 3460,   87, 3461, 3462,   87, 3463, 3469,   87,
2796      3467, 3464, 3468, 3472, 3473, 3474, 3465,   87, 3466, 3476,
2797 
2798      3475, 3477,   87, 3478,   87, 3479, 3481, 3470, 3480, 3484,
2799      3487, 3920,   87, 3482,   87, 3469, 3486, 3490, 3483, 3920,
2800        87, 3473,   87, 3485,   87, 3492, 3476,   87, 3477,   87,
2801        87,   87,   87,   87,   87, 3480, 3484,   87,   87, 3488,
2802      3482, 3489, 3498, 3486, 3491, 3483,   87, 3493,   87,   87,
2803      3485, 3494,   87, 3496, 3495,   87, 3497, 3499, 3505,   87,
2804      3501,   87, 3920, 3500, 3502,   87, 3488,   87, 3489,   87,
2805        87, 3491, 3504,   87, 3493, 3506, 3507,   87, 3494, 3503,
2806      3496, 3495, 3509, 3497,   87,   87,   87, 3508,   87,   87,
2807      3500, 3502,   87, 3513,   87, 3511, 3515, 3512, 3514, 3504,
2808 
2809        87, 3510,   87, 3507,   87, 3517, 3503, 3518, 3920,   87,
2810      3516,   87,   87, 3519, 3508,   87, 3520, 3521, 3522, 3529,
2811      3513, 3524, 3511, 3515, 3512,   87, 3523, 3530, 3510,   87,
2812        87, 3525, 3517, 3528,   87,   87, 3532, 3516, 3531, 3538,
2813      3519, 3920,   87,   87, 3521, 3522,   87,   87, 3524, 3526,
2814        87,   87, 3527, 3523,   87,   87,   87, 3533, 3525,   87,
2815      3528, 3534,   87, 3535, 3536, 3531,   87, 3537,   87, 3541,
2816      3542,   87, 3539, 3540, 3546,   87, 3526, 3920, 3543, 3527,
2817      3550, 3548,   87,   87, 3533,   87,   87,   87, 3534, 3545,
2818        87, 3536,   87, 3544, 3537,   87,   87, 3542, 3547, 3539,
2819 
2820      3540,   87, 3551,   87, 3549, 3543,   87,   87, 3548, 3552,
2821      3553, 3554, 3555, 3556, 3557, 3558, 3545, 3559, 3560, 3561,
2822      3544, 3564,   87, 3563,   87, 3547, 3562,   87, 3920,   87,
2823      3565, 3549,   87,   87,   87,   87,   87, 3553, 3554, 3555,
2824        87,   87,   87,   87, 3559,   87, 3561, 3566, 3564, 3567,
2825      3568, 3569, 3575, 3562, 3572,   87, 3570,   87,   87,   87,
2826      3571,   87,   87, 3573, 3577,   87, 3574, 3578,   87, 3576,
2827        87, 3580,   87, 3581, 3566, 3579,   87,   87, 3569,   87,
2828        87, 3572,   87, 3570, 3582, 3583, 3584, 3571, 3585,   87,
2829      3573, 3577,   87, 3574, 3578,   87, 3576, 3586, 3580, 3587,
2830 
2831        87, 3588, 3579, 3589,   87, 3591, 3592,   87,   87, 3590,
2832      3595,   87, 3583, 3584, 3594,   87, 3593, 3598, 3597, 3596,
2833        87, 3920, 3920,   87, 3586,   87, 3587,   87, 3588, 3599,
2834      3589, 3601,   87,   87,   87, 3602, 3590,   87,   87, 3605,
2835      3600, 3594,   87, 3593,   87, 3597, 3596,   87, 3603, 3606,
2836      3607,   87, 3604, 3609,   87,   87, 3599,   87, 3601,   87,
2837      3608,   87, 3602, 3610,   87,   87, 3605, 3600, 3920,   87,
2838      3611, 3920, 3622, 3920,   87, 3603, 3606, 3607,   87, 3604,
2839      3609, 3612,   87, 3614, 3613, 3615, 3627, 3608,   87, 3618,
2840      3610,   87,   87, 3616, 3617,   87,   87, 3611, 3621, 3624,
2841 
2842      3619, 3620, 3623,   87,   87,   87,   87, 3625, 3612, 3628,
2843      3614, 3613, 3615,   87, 3629, 3920, 3618, 3631, 3626, 3634,
2844      3616, 3617,   87,   87,   87, 3621, 3624, 3619, 3620, 3623,
2845      3630,   87,   87, 3632, 3625, 3633,   87,   87, 3635, 3636,
2846      3641, 3629,   87,   87,   87, 3626,   87, 3637, 3638, 3920,
2847        87, 3639, 3640, 3642, 3643,   87, 3644, 3630, 3647, 3645,
2848      3632, 3648, 3633, 3650, 3649, 3635,   87,   87, 3651, 3646,
2849        87, 3652, 3920, 3655, 3920, 3654,   87,   87,   87,   87,
2850        87,   87,   87, 3644, 3656,   87, 3645,   87, 3648, 3659,
2851        87, 3649, 3653,   87,   87, 3651, 3646,   87, 3652,   87,
2852 
2853        87, 3657, 3654, 3658, 3660,   87, 3661, 3664,   87,   87,
2854      3662, 3656, 3663, 3665, 3666, 3669, 3659, 3668, 3667, 3653,
2855      3670,   87,   87, 3671,   87, 3679, 3673,   87, 3657, 3920,
2856      3658, 3660,   87, 3661, 3664,   87,   87, 3662,   87, 3663,
2857      3665,   87,   87,   87, 3668, 3667, 3672,   87, 3674, 3675,
2858        87,   87, 3676, 3673, 3677, 3682, 3680,   87,   87, 3678,
2859      3681,   87, 3683, 3684, 3686, 3687, 3685,   87, 3689, 3690,
2860        87, 3688,   87, 3672,   87, 3674, 3675, 3692, 3693, 3676,
2861      3695, 3694, 3682, 3680,   87,   87,   87, 3681, 3691, 3683,
2862      3684,   87,   87, 3685,   87,   87,   87,   87, 3688,   87,
2863 
2864        87, 3696, 3697, 3698, 3692,   87, 3699,   87, 3694, 3700,
2865      3701,   87, 3702, 3703, 3704, 3691, 3705, 3706,   87,   87,
2866      3707, 3708, 3709, 3713, 3710, 3712, 3714, 3920, 3696, 3697,
2867        87, 3711,   87,   87, 3716,   87,   87,   87,   87,   87,
2868        87,   87,   87,   87, 3706, 3717,   87, 3707,   87,   87,
2869      3713, 3710, 3712,   87, 3715, 3718, 3719,   87, 3711, 3720,
2870      3721,   87,   87, 3722, 3723, 3724, 3725, 3732, 3726,   87,
2871      3727,   87, 3717, 3728,   87,   87,   87,   87, 3729, 3731,
2872      3730, 3715, 3718, 3719, 3920,   87, 3720, 3721,   87,   87,
2873        87, 3723,   87, 3725,   87, 3726, 3733, 3727, 3734,   87,
2874 
2875      3728, 3737, 3735,   87,   87, 3729, 3731, 3730, 3736,   87,
2876        87, 3738,   87, 3739, 3740, 3741, 3748,   87, 3742, 3744,
2877        87, 3743,   87, 3733, 3749, 3734,   87,   87, 3737, 3735,
2878      3745,   87,   87, 3747, 3746, 3736, 3750,   87, 3738, 3751,
2879      3739, 3740, 3741,   87,   87, 3742, 3744,   87, 3743, 3752,
2880      3753,   87,   87,   87, 3757, 3754, 3758, 3745,   87, 3756,
2881      3747, 3746, 3755,   87, 3760, 3761,   87,   87,   87,   87,
2882      3759,   87, 3763, 3762,   87, 3764, 3752, 3753,   87, 3765,
2883        87, 3757, 3754, 3920,   87, 3767, 3756,   87,   87, 3755,
2884      3772, 3760, 3761,   87,   87, 3766, 3768, 3759,   87, 3763,
2885 
2886      3762,   87, 3764,   87, 3770,   87, 3765,   87, 3769, 3771,
2887        87, 3773, 3767, 3774, 3775, 3776,   87, 3772, 3777,   87,
2888      3778, 3779, 3766, 3768, 3780, 3782,   87,   87,   87,   87,
2889      3781, 3770,   87,   87, 3783, 3769, 3771,   87, 3773, 3785,
2890      3774, 3775, 3776,   87, 3784, 3777,   87,   87, 3779, 3786,
2891      3787, 3780, 3782, 3788, 3789, 3790, 3791, 3781, 3792, 3798,
2892      3793,   87,   87,   87,   87,   87, 3785, 3794, 3795, 3920,
2893      3802, 3784,   87, 3796, 3797,   87,   87, 3787, 3920,   87,
2894      3788,   87,   87, 3791,   87, 3792,   87, 3793, 3800,   87,
2895        87,   87, 3799, 3804, 3794, 3795, 3801,   87, 3805, 3803,
2896 
2897      3796, 3797, 3806,   87, 3807,   87,   87, 3810, 3809, 3808,
2898      3811, 3812, 3815, 3817, 3813, 3800,   87,   87,   87, 3799,
2899        87,   87,   87, 3801, 3814,   87, 3803,   87, 3816,   87,
2900      3819,   87,   87,   87,   87, 3809, 3808, 3811, 3812,   87,
2901      3817, 3813, 3818, 3820, 3821, 3822, 3824, 3825, 3920, 3826,
2902        87, 3814, 3823, 3829,   87, 3816, 3828,   87, 3827,   87,
2903        87, 3830,   87,   87,   87, 3834,   87, 3831,   87, 3818,
2904      3832, 3821, 3822, 3824,   87,   87,   87, 3833,   87, 3823,
2905      3829, 3835, 3836, 3828,   87, 3827, 3837,   87,   87,   87,
2906      3838, 3841, 3834,   87, 3831, 3842,   87, 3832,   87, 3839,
2907 
2908        87, 3840,   87, 3843, 3833, 3846, 3844, 3845, 3835, 3836,
2909      3920, 3848,   87, 3837,   87, 3847, 3854, 3838,   87, 3849,
2910      3855,   87, 3842,   87, 3920,   87, 3839, 3850, 3840, 3851,
2911      3843, 3852,   87, 3844, 3845, 3856, 3853,   87, 3857, 3864,
2912      3920, 3858, 3847,   87,   87,   87, 3849,   87,   87,   87,
2913        87,   87, 3859,   87, 3850, 3867, 3851,   87, 3852, 3860,
2914      3861, 3862, 3856, 3853, 3863,   87, 3865,   87, 3858,   87,
2915      3866,   87,   87, 3868,   87,   87, 3869, 3872, 3920, 3859,
2916        87,   87, 3867, 3920,   87, 3876, 3860, 3861, 3862, 3870,
2917      3873, 3863, 3871, 3865, 3874,   87, 3875, 3866,   87,   87,
2918 
2919      3868, 3878,   87,   87, 3872, 3877, 3879,   87, 3880,   87,
2920        87,   87, 3876, 3881, 3882,   87, 3870, 3873, 3883, 3871,
2921      3884, 3874,   87, 3875, 3888, 3889, 3885,   87, 3878,   87,
2922      3886, 3920, 3877, 3879, 3887, 3880, 3890, 3891, 3892,   87,
2923      3881, 3882,   87, 3898,   87, 3883,   87, 3884,   87, 3893,
2924        87,   87,   87, 3885, 3894, 3896, 3900, 3886,   87, 3895,
2925      3897, 3887,   87, 3890, 3891,   87, 3901,   87,   87,   87,
2926        87, 3899, 3902, 3905,   87, 3904, 3893,   87,   87,   87,
2927        87, 3894, 3896, 3900, 3903, 3909, 3895, 3897,   87, 3906,
2928      3920, 3908,   87, 3901, 3910, 3907, 3911,   87, 3899, 3902,
2929 
2930        87,   87, 3904,   87, 3912, 3913, 3914, 3915, 3918, 3919,
2931      3920, 3903,   87, 3920,   87, 3920, 3906,   87, 3908, 3916,
2932      3920, 3910, 3907,   87, 3920,   87, 3920,   87,   87,   87,
2933      3917,   87, 3913, 3914, 3915,   87,   87, 3920,   87, 3920,
2934      3920, 3920, 3920, 3920, 3920, 3920, 3916, 3920, 3920, 3920,
2935      3920, 3920, 3920, 3920, 3920, 3920, 3920, 3917,   48,   48,
2936        48,   48,   48,   48,   48,   53,   53,   53,   53,   53,
2937        53,   53,   58,   58,   58,   58,   58,   58,   58,   64,
2938        64,   64,   64,   64,   64,   64,   69,   69,   69,   69,
2939        69,   69,   69,   75,   75,   75,   75,   75,   75,   75,
2940 
2941        81,   81,   81,   81,   81,   81,   81,   90,   90, 3920,
2942        90,   90,   90,   90,  163,  163, 3920, 3920, 3920,  163,
2943       163,  165,  165, 3920, 3920,  165, 3920,  165,  167, 3920,
2944      3920, 3920, 3920, 3920,  167,  170,  170, 3920, 3920, 3920,
2945       170,  170,  172, 3920, 3920, 3920, 3920, 3920,  172,  174,
2946       174, 3920,  174,  174,  174,  174,  177, 3920, 3920, 3920,
2947      3920, 3920,  177,  180,  180, 3920, 3920, 3920,  180,  180,
2948        91,   91, 3920,   91,   91,   91,   91,   17, 3920, 3920,
2949      3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920,
2950      3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920,
2951 
2952      3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920,
2953      3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920,
2954      3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920,
2955      3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920,
2956      3920, 3920, 3920, 3920
2957     } ;
2958 
2959 static const flex_int16_t yy_chk[11245] =
2960     {   0,
2961         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
2962         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
2963         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
2964         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
2965         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
2966         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
2967         1,    1,    1,    1,    1,    1,    3,    3,    3,    4,
2968         4,    4,    5,    5,    6,    6,    5,   32,    6,    7,
2969         7,    7,    7,   33,    7,    8,    8,    8,    8,   32,
2970         8,    9,    9,    9,   10,   10,   10,   19,   52,   52,
2971 
2972      3928,   19,  235,    3,   32,   33,    4,   68,   68,    5,
2973        33,    6, 3195,   13,   13,   13,   13,    7,   13,   14,
2974        14,   14,   14,    8,   14,   15,   15,   15,    9,   25,
2975       235,   10,   11,   11,   11,   11,   11,   11,   12,   12,
2976        12,   12,   12,   12,   16,   16,   16,   34,   28,   85,
2977        85,   13,   11,   46, 3169,   25,   25,   14,   12,   34,
2978        39,   23,   15,   23,   23,   46,   23, 1212,   28,  611,
2979        11,   28,   23,   39,   34,   28,   12,  180,   88,   11,
2980        46,   16,   88,  164,  164,   12,   30,   39,   29,  179,
2981        45,  177,   37,   73,   30,   28,   26,  611,   37,   23,
2982 
2983        24,   24,   29,   26,   24,   30,   73,   26,  102,   24,
2984        26,   24,   30,   30,   29,   29,   45,   45,   24,   37,
2985        73,   30,   26,   26,   24,   93,  102,   24,   24,   29,
2986        26,   24,   30,  200,   26,  102,   24,   26,   24,   57,
2987        94,  166,   57,  306,  166,   24,   27,  225,   31,   93,
2988        27,   31,   93,   27,   95,   27,   27,  228,   31,   47,
2989        31,   47,   47,   94,   47,  200,   27,   94,   27,  172,
2990        47,   31,  306,   27,   95,   31,   35,   27,   31,  225,
2991        27,   95,   27,   27,   35,   31,  101,   31,   36,  228,
2992        35,   98,   36,   27,   35,  101,   44,  170,   98,   42,
2993 
2994        44,   42,   35,   35,   44,   96,   36,  169,   36,  167,
2995        42,   35,  165,  101,   36,   36,   42,   35,   98,   36,
2996        96,   35,   44,   44,   43,   42,   42,   44,   42,  109,
2997       163,   44,   96,   36,   43,   36,   38,   42,   43,   43,
2998        38,   97,  109,   42,   38,  171,  171,   43,   86,   97,
2999        38,   43,   63,   38,   63,   63,  109,   63,   99,  106,
3000        38,   43,   38,   38,  106,   43,   43,   38,   97,   81,
3001        71,   38,   71,   71,  113,   71,   74,   38,   74,   74,
3002        38,   74,   99,  113,   76,   99,  106,   38,   40,  143,
3003       143,   80,   40,   80,   80,   87,   80,   87,   87,  139,
3004 
3005        87,  113,   40,   40,  100,   40,   87,   90,   71,   90,
3006        90,  114,   90,  107,   40,   40,  143,  100,   90,   40,
3007       114,  107,  103,  103,   75,  139,  139,   69,  100,   40,
3008        40,  100,   40,   41,  111,  103,   41,   64,  114,  115,
3009       107,  111,  110,   41,  100,   90,  104,   41,   41,  103,
3010       103,  110,  104,  108,  104,   41,  105,  105,  181,  181,
3011        41,  111,  115,   41,  110,  105,  115,  104,  117,  110,
3012        41,  108,  127,  104,   41,   41,  120,   59,  110,  104,
3013       118,  104,  116,  105,  105,  108,  112,  112,  119,  116,
3014       117,  119,  127,  118,  112,  117,  355,  122,  108,  127,
3015 
3016       120,   58,  112,  121,  119,  119,  129,  118,  120,  116,
3017        53,  121,  119,  112,  112,  119,  123,  122,  119,  122,
3018       123,  112,  125,  126,  122,  355,  129,  120,  131,  124,
3019       121,  119,  119,  129,  124,  125,  123,  124,  128,  130,
3020       123,  132,  131,  123,  122,  128,  126,  123,  132,  125,
3021       126,  133,  128,  134,  135,  131,  124,  130,  136,   48,
3022       137,  124,  134,  123,  137,  128,  130,  136,  132,  138,
3023       137,   18,  128,   17,  133,  141,  138,  135,  133,  140,
3024       134,  135,  137,  142,  141,  136,  140,  137,  145,  148,
3025       141,  137,  144,  146,  241,  142,  138,  137,  141,  145,
3026 
3027       144,  147,  141,  145,  148,  149,  140,  146,  241,  147,
3028       142,  141,  145,  151,  230,  145,  148,  141,  150,  144,
3029       146,  241,  149,    0,  151,  149,  145,  152,  153,  150,
3030       145,  149,  149,  147,  153,  152,  147,  154,  150,    0,
3031       151,  155,  156,  157,  158,  150,  230,    0,  154,  149,
3032       155,  159,  149,  160,  152,  153,  150,  156,  161,  158,
3033       159,  162,  155,    0,  154,  157,  155,    0,  155,  156,
3034       157,  158,    0,  183,  162,  160,  161,  155,  159,  168,
3035       160,  168,  168,  176,  168,  161,  182,  183,  162,  155,
3036       173,    0,  173,  173,  174,  173,  174,  174,  178,  174,
3037 
3038       178,  178,  184,  178,  185,  183,  188,  176,  182,    0,
3039       176,  184,  190,  182,  183,  186,  185,  187,  189,  186,
3040       190,  192,  188,  191,  187,  194,    0,  193,  195,  184,
3041       233,  185,  174,  188,  193,  191,  187,  189,  197,  190,
3042       197,  194,  186,  192,  187,  189,  195,  196,  192,  198,
3043       191,  187,  194,  196,  193,  195,  199,  204,  199,  206,
3044       201,  205,  233,  203,  201,  197,  205,  206, 1035,  809,
3045       207,  198,  204,  208,  211,  236,  198,    0,  218,  196,
3046       196,  201,  199,  199,  204,  199,  206,  218,  201,  203,
3047       203,  201,  207,  205,  210,  208,  209,  207,  809, 1035,
3048 
3049       208,  210,  211,  215,  212,  218,  211,  236,  201,  202,
3050       216,  209,  213,  214,  202,    0,  215,  224,    0,  202,
3051       219,  210,  216,  209,  214,  202,  202,  212,  224,  211,
3052       215,  212,  202,  220,  213,  217,  202,  216,  217,  213,
3053       214,  202,  219,    0,  224,  222,  202,  219,  226,  223,
3054       217,  229,  202,  202,    0,  220,  223,  227,  229,  231,
3055       220,  237,  217,  250,    0,  217,  221,  222,  227,  221,
3056       238,  221,  222,  231,  226,  226,  223,  234,  229,  240,
3057       232,  250,  242,  221,  237,  221,  232,  243,  237,  227,
3058       250,  231,  221,  221,  243,  227,  221,  244,  221,  234,
3059 
3060       231,  239,  238,  242,  234,  248,  239,  232,  245,  242,
3061       221,  240,  221,  246,  243,  247,  246,  245,  244,  248,
3062       252,  249,  245,  253,  244,  251,  239,  255,  239,  256,
3063       253,  252,  248,  239,  247,  245,  254,  251,  256,  257,
3064       246,  254,  247,  249,  245,  259,  258,  252,  249,  255,
3065       253,  258,  251,  261,  255,  262,  256,  263,  260,  260,
3066         0,  264,  257,  268,  263,  265,  257,  260,  254,  261,
3067       266,  267,  269,  258,  270,  271,  273,  259,  266,  272,
3068       261,  275,  270,  264,  263,  260,  260,  262,  264,  273,
3069       265,  267,  265,  274,  272,  268,  277,  266,  267,  276,
3070 
3071       278,  270,  281,  273,  269,  279,  272,  271,  275,  279,
3072         0,  280,  286,  283,  284,  282,  285,  278,  280,  274,
3073       274,  283,  276,  285,  281,  278,  288,  278,  277,  281,
3074       282,  276,  279,  284,  286,  289,  290,  291,  280,  286,
3075       283,  284,  282,  285,  278,  293,  287,  292,  288,  276,
3076       287,  294,  295,  288,  297,  303,  299,  296,  298,  291,
3077       300,  301,  300,  294,  291,  295,  296,  289,  290,  292,
3078       302,  298,  297,  287,  292,  299,  304,  293,  294,  295,
3079       303,  297,  303,  299,  296,  298,  305,  300,  308,  307,
3080         0,  309,    0,  301,  302,  310,  312,  302,  307,    0,
3081 
3082         0,  313,  304,  304,  318,  311,  310,  314,  315,  320,
3083       322,  324,  305,  305,  308,  308,  307,  309,  309,  311,
3084       312,  316,  310,  312,  313,  314,  315,  319,  313,  316,
3085       321,  311,  311,  323,  314,  315,  318,  324,  324,  325,
3086       319,  320,  322,  326,  327,  328,  311,  332,  316,    0,
3087       323,  331,  328,  329,  319,  321,  323,  321,  330,  333,
3088       323,  325,  329,    0,  330,  331,  325,  335,  327,  342,
3089       334,  375,  328,  332,  332,  326,  327,  323,  331,  334,
3090       329,  336,  337,  333,  338,  330,  333,  339,  340,  336,
3091       335,  337,  341,  343,  335,  327,  339,  334,  344,    0,
3092 
3093       346,  342,  348,  375,  350,  340,    0,  341,  336,  337,
3094       338,  338,  340,  344,  339,  340,  351,  343,  346,  341,
3095       343,    0,  380,  357,  348,  344,  347,  346,  350,  348,
3096       351,  350,  340,  345,  356,  347,  352,  354,  345,  353,
3097       353,  345,  354,  351,    0,  359,  345,  345,  345,  345,
3098       357,  352,    0,  347,  380,    0,  345,  359,  356,  360,
3099       345,  356,  362,  352,  353,  345,  353,  353,  345,  354,
3100       364,  360,  359,  345,  345,  345,  345,  349,  358,  349,
3101       362,  358,  363,    0,  361,  361,  360,  366,  358,  362,
3102       367,  349,  349,  349,  361,  349,  368,  364,  368,  365,
3103 
3104       363,  349,  370,  369,  349,  358,  349,    0,  358,  363,
3105       371,  361,  361,  366,  366,  369,  367,  367,  349,  349,
3106       349,  365,  349,  368,  370,  371,  365,  372,  374,  370,
3107       369,  373,  378,    0,  376,  372,  376,  371,  373,  378,
3108       374,    0,  379,  381,  382,  376,    0,    0,  385,  383,
3109       382,  383,  376,  389,  372,  374,  387, 1199,  373,  378,
3110       376,  376,  384,  376,  379,  381,  382,  388,  386,  379,
3111       381,  382,  376,  383,  387,  384,  383,  382,  383,  376,
3112       385,  386,  390,  387,  386,  389,  386, 1199,  391,  384,
3113       394,    0,  386,  388,  388,  386,  395,  394,  405,  406,
3114 
3115       396,    0,    0,  405,    0,  400,    0,  397,  386,  390,
3116       391,  386,  396,  386,  395,  391,  392,  394,  392,  397,
3117       395,  400,  398,  395,  392,  401,    0,  396,  392,  400,
3118       405,  406,  400,  392,  397,  398,  392,    0,  401,    0,
3119       404,  395,  392,  392,  403,  392,    0,  407,  400,  398,
3120       410,  392,  401,  408,  407,  392,  403,  413,  404,  408,
3121       392,  409,  410,  392,  393,  411,  393,  404,  407,  409,
3122       412,  403,  415,  415,  407,  426,  414,  410,  412,  393,
3123       408,  407,  393,  411,  393,  414,  393,  418,  409,  413,
3124       393,  393,  411,  393,  416,  417,  418,  412,    0,  415,
3125 
3126         0,  416,  433,  414,  433,  420,  393,  426,  417,  393,
3127       421,  393,  420,  393,  402,  402,  419,  421,  422,  418,
3128       427,  416,  417,  418,  402,  402,  402,  402,  402,  433,
3129       422,  402,  420,  428,  419,  423,  425,  421,  419,  402,
3130       428,  402,  402,  419,  424,  422,  427,  427,  425,  429,
3131       430,  402,  402,  402,  402,  402,  431,  423,  402,  430,
3132       428,  419,  423,  425,  429,  432,  424,  434,  435,  431,
3133         0,  424,  436,  436,    0,  437,  429,  430,  434,  438,
3134       439,  440,  437,  431,  442,  441,  438,    0,  443,    0,
3135       435,  439,  440,  445,  434,  435,  447,  432,  441,  444,
3136 
3137       444,  436,  437,  455,    0,    0,  438,  439,  440,  442,
3138       443,  442,  441,  446,  450,  443,  445,  444,  449,  452,
3139       445,  448,  447,  447,  444,  450,  444,  444,  446,  448,
3140       449,  457,  452,  451,  456,  455,  446,  453,  453,  458,
3141       446,  450,  451,  460,  444,  449,  452,  463,  448,  453,
3142       459,  453,  456,  457,  469,  446,  453,  461,  457,  462,
3143       451,  456,  458,  461,  453,  453,  458,  465,  459,  464,
3144       463,  467,    0,  473,  463,  460,  453,  459,  453,  454,
3145       462,  469,  470,  466,  461,  468,  462,  454,  454,  465,
3146       466,  454,  454,  464,  465,  454,  464,  467,  467,  468,
3147 
3148       472,  454,  471,  474,  470,  473,  454,  477,  475,  470,
3149       466,  476,  468,  477,  454,  454,  471,  478,  454,  454,
3150       479,  481,  454,  476,  480,  474,  472,  472,  483,  471,
3151       474,  475,  480,  482,  477,  475,  481,  483,  476,  478,
3152       482,  484,  479,  485,  478,    0,  486,  479,  481,  487,
3153       480,  480,  486,  488,  489,  483,  484,  490,    0,  480,
3154       482,  491,  497,  492,    0,  494,    0,  485,  484,  495,
3155       485,  487,  490,  486,  495,  488,  487,  489,  498,  501,
3156       488,  489,  503,  493,  490,  492,  505,  491,  491,  493,
3157       492,  494,  494,  500,  497,  502,  495,  504,  501,  500,
3158 
3159       503,  502,  507,  504,  498,  498,  501,  506,  505,  503,
3160       493,  517,  510,  505,  506,  512,  509,  507,  509,  511,
3161       500,  510,  502,  513,  504,  509,  511,  514,  516,  507,
3162       515,  518,    0,  517,  506,  523,  513,  519,  517,  510,
3163       519,  520,  521,  509,  518,  509,  511,  512,  515,  522,
3164       513,  524,  527,  523,  526,  521,  519,  515,  518,  514,
3165       516,  522,  523,  525,  519,  520,  528,  519,  520,  521,
3166       525,    0,  529,  532,  531,  527,  522,  530,  526,  528,
3167       531,  526,  530,  524,  527,  533,  534,  536,    0,    0,
3168       525,  535,    0,  528,  529,  533,  532,  539,  538,  529,
3169 
3170       532,  531,  527,  535,  530,  537,  538,  544,  534,  536,
3171       542,  539,  533,  534,  536,  543,  537,  542,  535,  544,
3172       545,  543,  546,  547,  539,  538,  569,    0,  548,  580,
3173       546,  569,  537,  540,  544,    0,  574,  542,  540,  548,
3174       540,  549,  543,  545,  551,  547,  540,  545,  540,  546,
3175       547,  540,  540,  569,  552,  548,  551,  574,  540,  540,
3176       540,  580,  550,  574,  549,  540,  550,  540,  549,  553,
3177       554,  551,  553,  540,  552,  540,  552,  555,  540,  540,
3178       553,  552,    0,  556,  550,  540,  559,  555,  554,  550,
3179       559,  557,  558,  550,  561,  556,  553,  554,  560,  553,
3180 
3181       563,  552,  557,  564,  562,  560,  562,  565,  585,  555,
3182       556,  566,    0,  559,  555,  564,  558,  567,  557,  558,
3183       561,  561,  565,  566,  568,  560,  563,  563,  570,  571,
3184       564,  562,  568,  572,  565,  577,  573,  576,  566,  581,
3185       585,  572,  578,  567,  567,  579,  582,  571,  573,  583,
3186       570,  568,  576,  577,  581,  570,  571,  583,  582,  586,
3187       572,  584,  577,  573,  576,  578,  581,  588,  579,  578,
3188       587,  586,  579,  582,  584,  589,  583,  591,  590,  587,
3189       591,  592,  593,  594,  595,  596,  586,  597,  584,  589,
3190       588,  598,    0,    0,  588,  601,  599,  587,  603,  595,
3191 
3192       592,  600,  589,  590,  591,  590,  598,  601,  592,  593,
3193       602,  595,  604,  612,  600,  594,  606,  596,  598,  597,
3194       599,  603,  601,  599,  605,  603,  608,  606,  600,  609,
3195       607,  605,  602,  610,  605,  607,  604,  602,  613,  604,
3196       608,  614,  605,  606,  615,  612,  617,  616,  618,    0,
3197       620,  605,  616,  608,  618,  617,  609,  619,  605,  621,
3198       610,  605,  607,  622,  623,  613,  629,  625,  614,  624,
3199       642,  622,  619,  617,  620,  618,  615,  620,  626,  616,
3200       627,  621,  626,  623,  619,  628,  621,  631,  627,  625,
3201       622,  623,  630,  624,  625,  632,  624,  636,  629,  630,
3202 
3203       634,  633,  642,  635,  632,  626,    0,  627,  628,  636,
3204       631,  637,  628,  634,  631,  638,    0,  637,  639,  630,
3205       640,  643,  632,  633,  636,  641,  639,  634,  633,  635,
3206       635,  640,  641,  644,  650,  646,  669,  638,  637,  647,
3207       649,  648,  638,  643,  646,  639,  644,  640,  643,  645,
3208       648,  649,  641,  651,  645,  655,  650,  645,  645,  652,
3209       644,  650,  646,  669,  657,  647,  647,  649,  648,    0,
3210       653,  656,  652,  645,    0,  651,  645,  658,    0,  661,
3211       651,  645,  653,  660,  645,  645,  652,  655,  657,  656,
3212       662,  657,    0,  659,  665,  666,  663,  653,  656,  658,
3213 
3214       658,  659,  664,  661,  658,  660,  661,  663,  667,  666,
3215       660,  664,  662,  670,  665,  672,  671,  662,  668,  674,
3216       659,  665,  666,  663,  671,  668,  658,  673,  675,  664,
3217       667,  670,  674,  673,  676,  667,  677,  672,  678,  675,
3218       670,  679,  672,  671,  690,  668,  674,  680,  681,  681,
3219         0,  677,  676,  682,  673,  675,  684,  683,  685,  686,
3220       687,  676,  679,  677,  682,  692,  688,  685,  679,  691,
3221       678,  680,  686,  687,  680,  693,  690,  681,  684,  695,
3222       682,  683,  689,  684,  683,  685,  686,  687,  688,  696,
3223       689,  691,  694,  688,  694,  701,  691,  692,  697,  693,
3224 
3225       696,  695,  693,  697,  698,    0,  695,  699,  703,  689,
3226       700,  704,  702,    0,  706,  705,  696,  700,  698,  694,
3227       702,  699,  705,  707,  700,  700,  703,  701,  708,  710,
3228       697,  698,  700,  704,  699,  703,  712,  700,  704,  702,
3229       706,  706,  705,  707,  700,  709,  712,  711,  708,  713,
3230       707,  700,  700,  714,  713,  708,  725,  715,  712,  715,
3231       709,  710,  711,  712,  716,  718,    0,  717,  720,  709,
3232       719,    0,  709,  712,  711,  717,  719,  720,    0,  714,
3233       714,  713,  734,  727,  715,  726,  773,  709,  725,  716,
3234       718,  716,  718,  721,  717,  720,  722,  719,  723,  728,
3235 
3236       724,  727,  721,  729,  730,  722,  723,  724,  726,  731,
3237       727,  728,  726,  730,  734,  729,    0,  731,  773,  732,
3238       721,  733,  735,  722,  736,  723,  728,  724,  732,  735,
3239       729,  730,  737,  733,  738,  739,  731,  736,    0,  743,
3240       741,  739,  738,  732,  740,  742,  732,  737,  733,  735,
3241       743,  736,  740,  748,  742,  732,  744,  790,  750,  737,
3242         0,  738,  739,  741,    0,  744,  743,  741,  745,  745,
3243       746,  740,  742,  747,  749,  748,  751,  745,  746,  752,
3244       748,  747,  753,  744,  750,  750,  754,  749,  756,  790,
3245       753,  755,  752,  759,  757,  745,  745,  746,    0,  751,
3246 
3247       747,  749,  754,  751,  755,  757,  752,  759,  758,  753,
3248       756,  760,  761,  754,  764,  756,  758,  762,  755,  763,
3249       759,  757,  763,  765,  766,  768,    0,  767,    0,  769,
3250       770,  760,    0,  766,  761,  758,  764,  762,  760,  761,
3251       771,  764,  769,  768,  762,  765,  763,  767,  770,  772,
3252       765,  766,  768,  774,  767,  775,  769,  770,  771,  777,
3253       776,  779,    0,  778,  772,  780,  783,  771,  782,    0,
3254       784,  781,  777,  779,  782,  774,  772,    0,  784,  775,
3255       774,  778,  775,  776,  781,  786,  777,  776,  779,  780,
3256       778,  787,  780,  783,  785,  782,  784,  784,  781,  785,
3257 
3258       789,  793,  791,  797,  792,  784,  794,  786,  789,  787,
3259       791,  792,  786,  795,  796,  795,  798,  799,  787,  800,
3260       802,  794,  802,  796,  793,  801,  785,  789,  793,  791,
3261       803,  792,  813,  794,  801,  797,  799,  803,    0,  800,
3262       795,  796,  806,  810,  799,  814,  800,  802,  798,  827,
3263       813,    0,  801,  810,  806,  816,    0,  803,  804,  813,
3264       816,  804,  818,  817,  820,  804,  814,  821,  804,  806,
3265       810,    0,  814,  822,  842,  804,  804,    0,  804,  842,
3266       818,  827,  816,  804,  817,  804,  819,  820,  804,  818,
3267       817,  820,  804,  821,  821,  804,  823,  819,  824,  822,
3268 
3269       822,  825,  804,  804,  826,  804,  842,  824,    0,  829,
3270         0,  826,  823,  819,  825,  830,  829,  832,  831,  834,
3271         0,  837,  834,  823,  831,  824,  832,  841,  825,  837,
3272       833,  826,  828,  828,    0,  828,  829,  830,  828,  836,
3273       835,    0,  830,  828,  832,  831,  834,  838,  837,  828,
3274       828,  841,  828,  833,  841,  843,  835,  833,  828,  828,
3275       828,  836,  828,  835,  844,  828,  836,  835,  839,  838,
3276       828,  840,  845,  840,  838,  843,  828,  828,  846,  828,
3277       839,  847,  843,  835,  845,  851,  849,  848,  853,  850,
3278       844,  844,  852,  854,    0,  839,  859,  856,  840,  845,
3279 
3280       846,  854,  855,  853,  856,  846,  863,  847,  847,  848,
3281       849,  850,  851,  849,  848,  853,  850,  852,  857,  852,
3282       854,  858,  859,  859,  856,  855,  857,  860,  861,  855,
3283       862,  866,  863,  863,  865,  861,  866,  864,  867,  860,
3284       858,  868,  869,  862,  872,  857,  864,  870,  858,  865,
3285       873,  874,  870,  877,  860,  861,  879,  862,  866,  875,
3286       874,  865,  878,  868,  864,  876,  872,  875,  868,  869,
3287       867,  872,  876,  880,  881,  882,  883,  884,  874,  870,
3288       886,  885,  873,  888,  878,  877,  875,  887,  879,  878,
3289       885,  890,  876,  889,  882,  881,  887,  880,  892,  886,
3290 
3291       880,  881,  882,  883,  884,  888,  891,  886,  885,  892,
3292       888,  890,  894,  893,  887,  891,  889,  895,  890,  896,
3293       889,  893,  897,  898,  900,  892,    0,  899,    0,  902,
3294       903,  904,  900,  891,  904,  895,  899,  906,  896,  894,
3295       893,  905,  907,  908,  895,    0,  896,  902,  903,  897,
3296       909,  900,  910,  905,  899,  898,  902,  903,  904,  906,
3297       907,  911,  912,  911,  906,  910,  916,  908,  905,  907,
3298       908,  913,  909,  914,  915,  918,  925,  909,  914,  910,
3299       912,  919,  917,  918,  930,  913,  921,  915,  911,  912,
3300       924,  930,  916,  916,  917,  921,  922,  920,  913,  919,
3301 
3302       920,  915,  918,  925,  922,  914,  926,  927,  919,  917,
3303       928,  930,  926,  921,  929,  924,  928,  924,  931,    0,
3304       922,  932,  934,  922,  920,  931,  932,  936,  933,  927,
3305       937,  922,  939,  926,  927,  933,  929,  928,  935,  937,
3306       934,  929,  935,  938,  940,  931,  941,  942,  932,  934,
3307       936,  938,  943,  944,  936,  933,  945,  937,  942,  946,
3308       943,  941,  940,  947,  939,  935,  944,  948,  949,  952,
3309       938,  940,  954,  941,  942,  951,  947,  945,  946,  943,
3310       944,  953,  951,  945,  950,  960,  946,  952,  953,  948,
3311       947,  954,  950,  955,  948,  949,  952,  957,  956,  954,
3312 
3313       955,    0,  951,  956,  961,  957,  958,  959,  953,  963,
3314       962,  950,  965,  958,  959,  964,  966,  960,  967,  965,
3315       955,    0,  968,  962,  957,  956,  973,  969,  964,  971,
3316       974,  975,  970,  958,  959,  969,  961,  962,  972,  965,
3317       970,  963,  964,  979,  972,  968,  976,  970,  966,  968,
3318       967,  971,  973,  973,  969,  977,  971,  978,  981,  970,
3319       982,  980,  974,  975,  977,  972,  983,  970,  980,  982,
3320       976,  978,  984,  976,  986,  979,  985,    0,  987,  986,
3321       983,  988,  977,  989,  978,  981,  992,  982,  980,  985,
3322       987,  985,  990,  983,  984,  991,    0,  990,  992,  984,
3323 
3324       985,  993,  991,  985,  988,  987,  986,  994,  988,  989,
3325       989,  996,  997,  992,  996,  994,  985,    0,  985,  990,
3326       998, 1000,  991,  993, 1002,  997, 1001, 1004,  993, 1005,
3327      1002,  998,    0, 1001,  994, 1000, 1008, 1006,  996,  997,
3328         0, 1009,    0, 1009,  998,    0,    0,  998, 1000, 1004,
3329         0, 1002,    0, 1001, 1004, 1005, 1005, 1007,  998, 1003,
3330      1006, 1003, 1012, 1008, 1006, 1003,    0, 1003, 1009, 1007,
3331      1010, 1010, 1003, 1011, 1012,    0, 1016, 1003, 1013, 1014,
3332      1011, 1016, 1015, 1003, 1007, 1017, 1003,    0, 1003, 1012,
3333         0, 1013, 1003, 1010, 1003, 1015, 1022, 1010, 1010, 1003,
3334 
3335      1011, 1014, 1018, 1017, 1003, 1013, 1014, 1019, 1016, 1015,
3336      1020, 1022, 1017, 1021, 1023, 1018, 1025, 1021, 1024, 1019,
3337      1026,    0, 1020, 1022, 1028, 1027, 1026, 1021, 1029, 1018,
3338      1019, 1024, 1030, 1032, 1019, 1031, 1023, 1020, 1027, 1021,
3339      1021, 1023, 1028, 1025, 1021, 1024, 1019, 1026, 1033, 1034,
3340      1029, 1028, 1027, 1030, 1021, 1029, 1036, 1031, 1037, 1030,
3341      1038,    0, 1031, 1037, 1039, 1032, 1041, 1042, 1038, 1043,
3342         0, 1044,    0, 1039, 1045,    0, 1034, 1048,    0, 1061,
3343      1033, 1041, 1043, 1351, 1351, 1037, 1044, 1038, 1036, 1042,
3344      1048, 1039, 1040, 1041, 1042, 1047, 1043, 1040, 1044, 1040,
3345 
3346      1045, 1045, 1049, 1046, 1048, 1040, 1061, 1050, 1051, 1054,
3347      1040, 1040, 1351, 1049, 1047, 1052, 1051, 1040, 1040, 1040,
3348      1050, 1055, 1047, 1052, 1040, 1046, 1040, 1057, 1053, 1049,
3349      1046, 1056, 1040, 1065, 1050, 1051, 1057, 1040, 1040, 1053,
3350      1058, 1054, 1052, 1055, 1040, 1062, 1056, 1059, 1055, 1066,
3351      1060, 1058,    0, 1063, 1057, 1053, 1059, 1068, 1056, 1060,
3352      1063, 1067, 1070, 1071, 1069, 1065,    0, 1058, 1062, 1067,
3353         0, 1074, 1062, 1066, 1059, 1072, 1066, 1060, 1069, 1068,
3354      1063, 1075, 1076, 1072, 1068, 1071, 1077, 1078, 1067, 1074,
3355      1071, 1069, 1079, 1076, 1070, 1080, 1081, 1082, 1074, 1075,
3356 
3357      1079, 1083, 1072, 1081, 1084, 1078, 1085, 1086, 1075, 1076,
3358      1082, 1084, 1087, 1090, 1078, 1088, 1089, 1080, 1077, 1079,
3359      1098, 1085, 1080, 1081, 1082, 1086, 1089, 1083, 1083, 1092,
3360      1087, 1084, 1097, 1085, 1086, 1094, 1088, 1095, 1099, 1087,
3361      1092, 1102, 1088, 1089, 1095, 1090, 1099, 1096, 1094, 1096,
3362      1100, 1101, 1098, 1102, 1097, 1109, 1092, 1103, 1104, 1097,
3363      1101, 1107, 1094, 1100, 1095, 1099, 1110, 1108, 1102, 1111,
3364      1112,    0, 1113, 1109, 1096,    0, 1117, 1100, 1101, 1103,
3365      1104, 1115, 1109, 1107, 1103, 1104, 1114, 1117, 1107, 1108,
3366      1113, 1118, 1110, 1110, 1108, 1115, 1118, 1121, 1114, 1113,
3367 
3368      1125, 1111, 1112, 1117, 1120, 1122, 1123, 1120, 1115, 1121,
3369      1124, 1125, 1127, 1114, 1128, 1126, 1130, 1124, 1131, 1123,
3370      1132, 1127, 1134, 1118, 1121, 1131, 1129, 1125, 1128, 1122,
3371      1120, 1120, 1122, 1123, 1120, 1126, 1137, 1124, 1129, 1127,
3372      1138, 1128, 1126, 1133, 1134, 1131, 1135, 1140, 1130, 1134,
3373      1139,    0, 1132, 1129, 1141, 1133, 1139, 1142, 1144, 1135,
3374      1143, 1145, 1137, 1137, 1138, 1152,    0, 1138, 1142, 1140,
3375      1133, 1146, 1148, 1135, 1140, 1150, 1141, 1139, 1143, 1149,
3376      1144, 1141, 1153, 1145, 1142, 1144, 1146, 1143, 1145, 1151,
3377      1149, 1155, 1154, 1148, 1157, 1151, 1150, 1152, 1146, 1148,
3378 
3379      1155, 1156, 1150, 1158, 1160, 1159, 1149, 1163, 1162, 1153,
3380      1154, 1160, 1158, 1159, 1161, 1164, 1151, 1165, 1155, 1154,
3381      1157, 1157, 1162, 1166, 1167, 1156, 1168, 1170, 1156,    0,
3382      1158, 1160, 1159, 1169, 1172, 1162, 1175, 1174, 1161, 1163,
3383      1176, 1161, 1177, 1173, 1174, 1166, 1167, 1164, 1178, 1165,
3384      1166, 1167, 1173, 1179, 1180, 1169, 1172, 1182, 1168, 1170,
3385      1169, 1172, 1176, 1181, 1174, 1182, 1178, 1176, 1175, 1177,
3386      1173, 1179, 1181, 1183, 1184, 1178, 1180, 1185,    0, 1187,
3387      1179, 1180, 1194, 1186, 1182, 1190, 1189, 1188, 1187, 1191,
3388      1181, 1192,    0, 1185, 1189,    0, 1197, 1183, 1184, 1196,
3389 
3390      1183, 1184, 1188, 1192, 1185, 1186, 1187, 1193, 1195, 1194,
3391      1186, 1197, 1196, 1189, 1188, 1198, 1195, 1190, 1192, 1200,
3392      1201, 1191, 1202, 1197, 1198, 1203, 1196, 1203, 1200, 1193,
3393      1202, 1205, 1206, 1207, 1193, 1195, 1208, 1211, 1201, 1205,
3394      1209, 1213, 1198, 1210, 1211, 1214, 1200, 1201,    0, 1202,
3395      1206, 1215, 1203, 1216, 1213, 1208, 1217, 1214, 1205, 1206,
3396      1207, 1218, 1209, 1208, 1211, 1210, 1215, 1209, 1213, 1219,
3397      1210, 1221, 1214, 1218, 1217, 1216, 1222, 1220, 1215, 1223,
3398      1216,    0, 1224, 1217, 1220, 1226, 1225,    0, 1218, 1227,
3399         0,    0, 1229, 1228, 1224, 1231, 1219, 1225, 1223, 1232,
3400 
3401      1234,    0,    0, 1221, 1220, 1229, 1223, 1226, 1222, 1224,
3402      1230, 1232, 1226, 1225, 1227, 1228, 1227, 1231, 1235, 1229,
3403      1228, 1233, 1231, 1230, 1234, 1237, 1232, 1234, 1236, 1233,
3404      1239, 1240,    0, 1237, 1243, 1242, 1241, 1230, 1235, 1244,
3405      1236, 1249, 1246, 1243, 1240, 1235, 1245,    0, 1233, 1246,
3406      1251, 1244, 1237, 1242, 1250, 1236, 1252, 1239, 1240, 1241,
3407         0, 1243, 1242, 1241, 1249, 1247, 1244, 1245, 1249, 1246,
3408      1253, 1254, 1251, 1245, 1247, 1255, 1247, 1251, 1257, 1247,
3409      1250, 1250, 1258, 1252, 1256, 1254, 1257, 1247, 1255, 1259,
3410      1253, 1258, 1247, 1261, 1264, 1263, 1262, 1253, 1254,    0,
3411 
3412      1266, 1247, 1255, 1247, 1262, 1257, 1247, 1259, 1256, 1258,
3413      1263, 1256, 1265, 1266, 1267, 1261, 1259, 1268, 1270,    0,
3414      1261, 1271, 1263, 1262, 1272, 1268, 1264, 1266, 1273, 1275,
3415      1267, 1274, 1276,    0, 1265, 1273,    0, 1277,    0, 1265,
3416         0, 1267, 1278, 1271, 1268, 1270, 1272, 1282, 1271, 1277,
3417      1276, 1272, 1275, 1274, 1278, 1273, 1275, 1279, 1274, 1276,
3418      1281, 1280, 1283, 1284, 1277, 1279, 1286, 1282, 1288, 1278,
3419      1280, 1284, 1281, 1285, 1282, 1286, 1289, 1283, 1287, 1285,
3420      1288, 1290,    0, 1300, 1279, 1280,    0, 1281, 1280, 1283,
3421      1284, 1291, 1289, 1286, 1292, 1288, 1293, 1280, 1291, 1287,
3422 
3423      1285, 1292, 1295, 1289, 1294, 1287, 1298, 1296, 1298, 1297,
3424      1295, 1303, 1299, 1290, 1293, 1300, 1294, 1297, 1291, 1301,
3425      1304, 1292, 1296, 1293, 1299, 1305, 1301, 1310, 1307, 1295,
3426      1306, 1294, 1304, 1298, 1296, 1307, 1297, 1308, 1305, 1299,
3427      1309, 1319, 1310, 1303, 1314, 1311, 1301, 1304, 1308, 1306,
3428      1311, 1312, 1305, 1313, 1310, 1307, 1315, 1306, 1314, 1312,
3429      1317,    0, 1309, 1318, 1308,    0, 1313, 1309, 1320, 1324,
3430      1322, 1314,    0, 1319, 1317,    0, 1321, 1311, 1312,    0,
3431      1313, 1318, 1315, 1315, 1316, 1325, 1323, 1317, 1316,    0,
3432      1318, 1316, 1316, 1322, 1320, 1320, 1316, 1322, 1321, 1326,
3433 
3434         0, 1324, 1316, 1321, 1323, 1327, 1316, 1325, 1328, 1333,
3435      1316, 1316, 1325, 1323, 1328, 1316, 1329,    0, 1316, 1316,
3436      1330, 1326, 1330, 1316, 1334,    0, 1326, 1331, 1332, 1316,
3437      1336, 1327, 1327, 1316, 1331, 1328, 1335, 1332, 1337, 1338,
3438      1339, 1333, 1329, 1329, 1330, 1337, 1341, 1330, 1336, 1330,
3439      1340, 1343, 1342, 1339, 1331, 1332, 1334, 1336, 1344, 1340,
3440      1335, 1338, 1346, 1335, 1345, 1337, 1338, 1339, 1348, 1349,
3441         0, 1354,    0, 1342,    0,    0, 1346, 1340, 1341, 1342,
3442      1344, 1350, 1349, 1343, 1352, 1344,    0, 1345, 1358, 1346,
3443      1348, 1345, 1347, 1355, 1354, 1348, 1349, 1347, 1354, 1347,
3444 
3445      1352, 1347, 1356, 1347, 1357, 1355, 1358, 1350, 1350, 1356,
3446      1347, 1352, 1359, 1357, 1360, 1358, 1361, 1359, 1362, 1347,
3447      1355, 1365, 1364, 1362, 1347, 1363, 1347, 1368, 1347, 1356,
3448      1347, 1357, 1360, 1370, 1361, 1364, 1369, 1372, 1366, 1365,
3449      1368, 1360, 1367, 1361, 1359, 1362, 1366, 1363, 1365, 1364,
3450      1367, 1371, 1363, 1374, 1368, 1376, 1372, 1373, 1375, 1370,
3451      1370, 1377,    0, 1378, 1372, 1366, 1371, 1380, 1369, 1367,
3452      1373, 1375, 1378, 1376, 1379, 1374, 1379, 1381, 1371, 1382,
3453      1374, 1377, 1376, 1383, 1373, 1375, 1384, 1385, 1377, 1380,
3454      1378, 1382, 1387, 1388, 1380, 1389, 1391, 1393, 1392, 1390,
3455 
3456         0, 1379, 1394, 1389, 1381, 1392, 1382, 1399, 1384, 1395,
3457      1383, 1404, 1385, 1384, 1385, 1388, 1387, 1390,    0, 1387,
3458      1388, 1396, 1389, 1391, 1393, 1392, 1390, 1396, 1394, 1394,
3459      1400, 1395, 1397, 1398, 1399, 1401, 1395, 1400, 1397, 1398,
3460      1402, 1405, 1403, 1404,    0, 1401, 1407, 1406, 1396, 1403,
3461      1413, 1410, 1408,    0, 1411, 1427, 1412, 1400, 1415, 1397,
3462      1398, 1408, 1401, 1405, 1402, 1406, 1411, 1402, 1405, 1403,
3463      1412, 1407, 1413, 1407, 1406, 1410, 1414, 1413, 1410, 1408,
3464      1415, 1411, 1416, 1412, 1417, 1415, 1418, 1427, 1420, 1414,
3465      1419, 1422, 1428, 1425, 1421,    0, 1431,    0, 1423,    0,
3466 
3467      1422, 1416, 1424, 1414, 1429, 1430, 1417, 1425, 1435, 1416,
3468      1418, 1417, 1419, 1418, 1420, 1420, 1421, 1419, 1422, 1423,
3469      1425, 1421, 1424, 1432, 1428, 1423, 1429, 1430, 1431, 1424,
3470      1433, 1429, 1430, 1434, 1439, 1435, 1436, 1437, 1433, 1440,
3471      1442, 1432, 1441, 1436, 1437, 1445, 1443, 1444, 1440, 1434,
3472      1432, 1444, 1442, 1443, 1446, 1447, 1439, 1433, 1450, 1441,
3473      1434, 1439, 1448, 1436, 1437, 1454, 1440, 1442, 1456, 1441,
3474         0, 1453,    0, 1443, 1444, 1451, 1447, 1445, 1448, 1452,
3475      1455, 1451, 1447, 1456, 1459, 1452, 1446, 1455, 1451, 1448,
3476      1450, 1457, 1452, 1453, 1458, 1456, 1462, 1454, 1453, 1461,
3477 
3478      1463, 1461, 1451, 1458, 1457, 1462, 1452, 1455, 1451, 1460,
3479      1459, 1459, 1452, 1465,    0, 1464, 1460, 1467, 1457, 1470,
3480      1469, 1458, 1463, 1462, 1464, 1466, 1461, 1463, 1469, 1466,
3481      1472, 1471, 1470, 1474, 1473, 1472, 1460, 1475, 1477, 1467,
3482      1465, 1476, 1464, 1473, 1467, 1471, 1470, 1469,    0, 1481,
3483      1477, 1474, 1466, 1480, 1476, 1484, 1475,    0, 1471, 1482,
3484      1474, 1473, 1472, 1478, 1475, 1477, 1478, 1479, 1476, 1486,
3485      1479, 1480, 1482, 1485, 1481, 1478, 1481, 1488,    0, 1487,
3486      1480, 1492, 1488, 1489, 1485, 1493, 1482, 1484, 1507, 1479,
3487      1478, 1489, 1486, 1478, 1479, 1487, 1486, 1479, 1490, 1490,
3488 
3489      1485, 1494, 1491, 1492, 1495, 1497, 1487, 1493, 1492, 1488,
3490      1489, 1491, 1493, 1495, 1496, 1498, 1504, 1500,    0, 1503,
3491      1507, 1496, 1498, 1494, 1501, 1490, 1502, 1497, 1494, 1491,
3492      1500, 1495, 1497, 1501, 1508, 1502,    0,    0, 1505, 1504,
3493      1506, 1496, 1498, 1504, 1500, 1503, 1503, 1505, 1506, 1508,
3494      1510, 1501, 1509, 1502, 1512, 1511, 1514, 1513, 1510, 1519,
3495      1516, 1508, 1523, 1509, 1514, 1505, 1512, 1506, 1511, 1513,
3496      1515, 1517, 1519, 1521, 1523, 1522, 1518, 1510, 1524, 1509,
3497      1516, 1512, 1511, 1514, 1513, 1518, 1519, 1516, 1520, 1523,
3498      1526, 1521, 1515, 1517, 1520, 1527, 1524, 1515, 1517, 1525,
3499 
3500      1521, 1522, 1522, 1518, 1528, 1524, 1525, 1529, 1531, 1536,
3501      1537, 1530, 1532, 1533,    0, 1520, 1526, 1526, 1538, 1534,
3502      1529, 1535,    0,    0, 1533, 1534, 1525, 1527, 1539,    0,
3503      1540, 1542, 1546, 1532, 1529, 1531, 1528, 1530, 1530, 1532,
3504      1533, 1536, 1537, 1535, 1543, 1544, 1534, 1546, 1535, 1540,
3505      1538, 1540, 1545, 1547, 1539, 1539, 1540, 1540, 1542, 1546,
3506      1550, 1545, 1548, 1544, 1549,    0, 1547, 1543, 1551, 1552,
3507      1553, 1543, 1544, 1555, 1548, 1551, 1540, 1554, 1540, 1545,
3508      1547, 1555, 1558,    0, 1549, 1560, 1550, 1550, 1552, 1548,
3509      1554, 1549, 1553, 1556, 1557, 1551, 1552, 1553, 1556, 1557,
3510 
3511      1555, 1559, 1561, 1563, 1554, 1558, 1562, 1565, 1559, 1558,
3512      1561, 1560, 1560, 1564, 1562, 1565, 1566, 1568, 1567, 1569,
3513      1574, 1563, 1577, 1566, 1571, 1556, 1557, 1567, 1559, 1561,
3514      1563, 1571, 1572, 1562, 1565, 1564, 1573, 1573, 1570, 1576,
3515      1564, 1569, 1575, 1566, 1572, 1567, 1569, 1570, 1578, 1568,
3516      1575, 1571, 1574, 1579, 1577, 1586, 1578,    0, 1587, 1572,
3517      1576, 1584, 1580, 1573, 1581, 1570, 1576, 1586, 1582, 1575,
3518      1580, 1579, 1581, 1583, 1584, 1578, 1582, 1585, 1588, 1589,
3519      1579, 1583, 1586, 1585, 1587, 1587, 1590, 1589, 1584, 1580,
3520      1592, 1581, 1591, 1593, 1590, 1582, 1594, 1596, 1595,    0,
3521 
3522      1583,    0, 1588, 1597, 1585, 1588, 1589, 1591, 1598, 1603,
3523         0, 1596, 1600, 1590, 1599, 1597, 1600, 1592, 1594, 1591,
3524      1593, 1595, 1602, 1594, 1596, 1595, 1598,    0, 1599, 1600,
3525      1597, 1602, 1604, 1603, 1605, 1598, 1603, 1600, 1606, 1600,
3526      1607, 1599, 1608, 1600, 1609, 1606, 1605, 1610, 1611, 1602,
3527      1612, 1607, 1613,    0, 1604, 1615, 1600, 1621, 1614, 1604,
3528      1611, 1605,    0, 1616, 1612, 1606, 1609, 1607, 1622, 1608,
3529      1619, 1609, 1626, 1630, 1617, 1611, 1628, 1612, 1615, 1610,
3530      1614, 1617, 1615, 1618, 1613, 1614, 1616, 1620, 1619, 1621,
3531      1616, 1624, 1618, 1627, 1620, 1622, 1629, 1619, 1628, 1627,
3532 
3533      1624, 1617, 1631, 1628, 1626, 1630, 1633, 1635, 1636, 1631,
3534      1618, 1642, 1641, 1637, 1620, 1638, 1639, 1642, 1624, 1644,
3535      1627, 1643, 1629, 1629, 1637, 1645, 1638, 1639, 1643, 1631,
3536      1646, 1635, 1645, 1633, 1635, 1636, 1641, 1644, 1642, 1641,
3537      1637, 1647, 1638, 1639, 1648, 1650, 1644, 1649, 1643, 1651,
3538      1648, 1652, 1645, 1647, 1653, 1649, 1646, 1646, 1656, 1654,
3539      1655, 1657, 1651, 1657, 1659, 1660, 1658, 1650, 1647, 1655,
3540      1656, 1648, 1650, 1658, 1649, 1661, 1651, 1654, 1660, 1662,
3541      1653, 1653, 1663, 1652, 1661, 1656, 1654, 1655, 1657, 1664,
3542      1659, 1659, 1660, 1658, 1663, 1665, 1666,    0, 1667, 1668,
3543 
3544      1669, 1662, 1661, 1666, 1668, 1670, 1662, 1671, 1669, 1663,
3545      1675, 1672, 1676, 1673, 1678, 1677, 1664, 1676, 1665, 1672,
3546      1680, 1670, 1665, 1666, 1667, 1667, 1668, 1669, 1678, 1679,
3547      1671, 1680, 1670, 1682, 1671, 1673, 1681, 1675, 1672, 1677,
3548      1673, 1678, 1677, 1687, 1676, 1681, 1682, 1680, 1684, 1683,
3549      1683, 1679, 1685, 1686, 1685, 1689, 1679, 1683, 1694, 1688,
3550      1682, 1684, 1689, 1681, 1692, 1690, 1691, 1706, 1700, 1687,
3551      1687, 1686, 1695, 1691, 1696, 1684, 1683, 1683, 1698, 1685,
3552      1686, 1688, 1689, 1702, 1699, 1694, 1688, 1690, 1692, 1693,
3553      1695, 1692, 1690, 1691, 1706, 1697, 1696, 1693, 1703, 1695,
3554 
3555      1700, 1696, 1697, 1698, 1705, 1698, 1699, 1701, 1709,    0,
3556      1707, 1699, 1710, 1708, 1701, 1702, 1693, 1705, 1707, 1712,
3557      1703, 1708, 1697, 1713, 1718, 1703, 1713, 1714,    0, 1715,
3558      1709, 1705, 1716, 1710, 1701, 1709, 1718, 1707, 1717, 1710,
3559      1708, 1712, 1719,    0, 1720, 1716, 1712, 1717, 1721, 1722,
3560      1713, 1718, 1726, 1714, 1714, 1715, 1715, 1721, 1724, 1716,
3561      1723, 1724, 1725,    0, 1722, 1717, 1719, 1723, 1727, 1719,
3562      1720, 1720, 1733, 1724, 1730, 1721, 1722, 1725, 1728, 1734,
3563      1735, 1731, 1724, 1735, 1726, 1724, 1739, 1723, 1724, 1725,
3564      1727, 1732, 1730, 1732, 1728, 1727, 1733, 1736, 1737, 1733,
3565 
3566      1724, 1730, 1728, 1731, 1738, 1728, 1734, 1735, 1731, 1740,
3567      1741, 1742, 1739, 1739, 1743,    0, 1744, 1746, 1732, 1745,
3568      1748, 1728, 1749, 1747, 1746, 1744, 1738, 1745, 1743, 1736,
3569      1737, 1738, 1750, 1742, 1751, 1740, 1740, 1752, 1742, 1755,
3570      1754, 1743, 1741, 1744, 1746, 1753, 1745, 1747, 1756, 1753,
3571      1747, 1757, 1748,    0, 1749, 1760, 1751,    0, 1758, 1759,
3572      1757, 1751, 1754, 1760, 1750, 1758, 1755, 1754, 1762, 1752,
3573      1756, 1759, 1753, 1761, 1763, 1756, 1764, 1768, 1757, 1765,
3574      1761, 1762, 1760, 1769, 1767, 1758, 1759, 1763, 1765, 1764,
3575      1766, 1769, 1766, 1770, 1772, 1762, 1775, 1773,    0,    0,
3576 
3577      1761, 1763, 1768, 1764, 1768, 1774, 1765, 1767, 1776, 1772,
3578      1769, 1767, 1773, 1770, 1777, 1776, 1778, 1766, 1779, 1774,
3579      1770, 1772, 1780, 1778, 1773, 1777, 1781, 1784, 1775, 1782,
3580      1785, 1779, 1774, 1786,    0, 1776, 1787, 1785, 1788, 1791,
3581      1780, 1777, 1791, 1778,    0, 1779, 1780, 1782, 1790, 1780,
3582      1789, 1787, 1781, 1781, 1784, 1786, 1782, 1785, 1793, 1792,
3583      1786, 1790, 1789, 1787, 1788, 1788, 1791, 1780, 1792, 1794,
3584      1795, 1796, 1797, 1801, 1796, 1790, 1793, 1789, 1802, 1799,
3585      1802, 1794, 1801, 1797, 1799, 1793, 1792, 1804, 1803, 1796,
3586      1795, 1799, 1805, 1806, 1807, 1809, 1794, 1795, 1796, 1797,
3587 
3588      1801, 1796, 1808, 1807, 1810, 1802, 1799,    0, 1806, 1811,
3589      1812, 1799, 1803, 1813, 1804, 1803, 1816, 1811, 1810, 1805,
3590      1806, 1807, 1809, 1814, 1815, 1817, 1808, 1819, 1818, 1808,
3591      1815, 1810, 1812, 1817, 1820, 1813, 1811, 1812, 1816, 1818,
3592      1813, 1821, 1820, 1816, 1821, 1819, 1822, 1814, 1823, 1822,
3593      1814, 1815, 1817, 1824, 1819, 1818, 1825, 1826,    0, 1821,
3594      1827, 1820, 1828, 1829, 1833, 1830, 1823, 1827, 1821, 1831,
3595      1858, 1821, 1829, 1822, 1832, 1823, 1828, 1826, 1830, 1832,
3596      1831, 1839, 1834, 1825, 1826, 1824, 1833, 1827, 1840, 1828,
3597      1829, 1833, 1830, 1837, 1838, 1837, 1831, 1834, 1842, 1841,
3598 
3599         0, 1843, 1858, 1838, 1844, 1843, 1832, 1839, 1839, 1834,
3600      1841, 1845, 1840, 1846, 1845, 1840, 1842, 1847, 1844,    0,
3601      1837, 1838,    0, 1861, 1848, 1842, 1841, 1843, 1843, 1845,
3602      1844, 1844, 1843, 1848, 1851, 1846, 1849, 1850, 1845, 1851,
3603      1846, 1845, 1849, 1847, 1847, 1844, 1850, 1853, 1855, 1854,
3604      1856, 1848, 1857, 1855, 1860, 1861, 1862, 1863, 1859, 1864,
3605      1853, 1854, 1870, 1849, 1850, 1857, 1851, 1859, 1865, 1869,
3606      1863, 1873, 1856, 1867, 1853, 1855, 1854, 1856, 1862, 1857,
3607      1867, 1860, 1869, 1862, 1863, 1859, 1868, 1871, 1875, 1865,
3608      1880, 1864, 1872, 1868, 1870, 1865, 1869, 1877, 1872, 1881,
3609 
3610      1867, 1871, 1878, 1873, 1879, 1877, 1883, 1875,    0, 1880,
3611      1878, 1888, 1879, 1868, 1871, 1875, 1872, 1880, 1882, 1872,
3612      1883, 1881, 1884, 1885, 1877, 1872, 1881, 1891, 1886, 1878,
3613      1887, 1879, 1888, 1883, 1889, 1890, 1882, 1885, 1888,    0,
3614      1884, 1886, 1892, 1887, 1893, 1882, 1894, 1897, 1898, 1884,
3615      1885, 1891, 1895, 1894, 1891, 1886, 1892, 1887, 1899, 1888,
3616      1896, 1895, 1898,    0, 1904, 1900, 1889, 1890, 1896, 1892,
3617      1900, 1893, 1901, 1894, 1897, 1898, 1902, 1905, 1906, 1895,
3618      1907, 1908, 1911, 1901, 1905, 1902, 1914, 1896, 1908, 1909,
3619      1899, 1904, 1900, 1910, 1912, 1918, 1916, 1914, 1912, 1901,
3620 
3621      1911, 1906, 1907, 1902, 1905, 1906, 1937, 1907, 1908, 1911,
3622      1914, 1909, 1916, 1914, 1917, 1910, 1909, 1920, 1919, 1918,
3623      1910, 1912, 1918, 1916, 1914, 1921, 1922, 1923, 1924, 1920,
3624      1925, 1928, 1917, 1919, 1922, 1927, 1924, 1926, 1937,    0,
3625      1930, 1917, 1923,    0, 1920, 1919, 1929, 1932, 1927, 1933,
3626      1931, 1928, 1921, 1922, 1923, 1924, 1933, 1925, 1928, 1926,
3627      1930, 1929, 1927, 1932, 1926, 1931, 1938, 1930, 1936, 1940,
3628      1935, 1939, 1941, 1929, 1932, 1936, 1933, 1931, 1935, 1942,
3629      1939, 1938, 1943, 1944, 1947, 1946, 1949, 1950, 1948, 1943,
3630      1940, 1951,    0, 1938,    0, 1936, 1940, 1935, 1939, 1941,
3631 
3632      1948, 1953, 1952, 1942, 1949,    0, 1942, 1946, 1954, 1943,
3633      1944, 1972, 1946, 1949, 1955, 1948, 1947, 1952, 1951, 1950,
3634      1956, 1955, 1957, 1959, 1958, 1956, 1953,    0, 1953, 1952,
3635      1960, 1957, 1954, 1958, 1963, 1954, 1961, 1964, 1962,    0,
3636      1965, 1955, 1966, 1972, 1971, 1959, 1963, 1956,    0, 1957,
3637      1959, 1958, 1960, 1962, 1961, 1966, 1969, 1960, 1970, 1964,
3638      1966, 1963, 1965, 1961, 1964, 1962, 1967, 1965, 1968, 1966,
3639      1970, 1971, 1979, 1967, 1973, 1968, 1975, 1978, 1969, 1979,
3640      1973, 1976, 1966, 1969, 1977, 1970, 1982, 1975, 1978, 1976,
3641      1968, 1980, 1977, 1967, 1981, 1968, 1981, 1983, 1984, 1979,
3642 
3643      1986, 1973, 1968, 1975, 1978, 1987, 1991, 1981, 1976, 1988,
3644      1985, 1977, 1982, 1982, 1989, 1988, 1980, 1985, 1980, 1992,
3645      1989, 1981, 1990, 1981, 1983, 1984, 1993, 1986, 1990, 1994,
3646      1996, 1987, 1987, 1991, 1997, 1998, 1988, 1985, 2000, 2002,
3647         0, 1989, 1992, 1997, 1999, 2001, 1992, 2001, 1999, 1990,
3648      2003, 2005, 2004, 1994, 2006, 2013, 1994, 2007, 1993, 2004,
3649      2000, 1997, 1996, 2002, 2008, 2000, 2002, 1998, 2009, 2007,
3650      2008, 1999, 2001, 2005, 2010,    0, 2011, 2003, 2005, 2004,
3651      2018, 2006, 2012,    0, 2007,    0,    0, 2013, 2016, 2027,
3652      2009, 2008, 2014, 2014, 2014, 2009, 2010, 2016, 2015, 2014,
3653 
3654      2022, 2010, 2011, 2011, 2012, 2015, 2017, 2014, 2021, 2012,
3655      2019, 2020, 2018, 2017, 2027, 2016, 2027, 2019, 2020, 2014,
3656      2014, 2014, 2022, 2025, 2024, 2015, 2014, 2022, 2021, 2024,
3657      2026, 2028, 2029, 2017, 2030, 2021, 2025, 2019, 2020,    0,
3658      2033, 2032, 2026, 2031, 2029, 2034, 2033, 2028, 2032, 2036,
3659      2025, 2035, 2035, 2037, 2051, 2039, 2024, 2026, 2028, 2029,
3660      2037, 2031, 2040, 2041, 2038, 2045, 2030, 2033, 2032, 2038,
3661      2031, 2046, 2034, 2046,    0, 2036, 2036, 2042, 2035, 2047,
3662      2037, 2039, 2039, 2049, 2042, 2055, 2051, 2050, 2052, 2040,
3663      2041, 2038, 2045, 2050, 2053, 2054, 2052, 2047, 2046, 2057,
3664 
3665      2058, 2049, 2061, 2056, 2042, 2053, 2047, 2059, 2054, 2056,
3666      2049, 2057, 2055, 2062, 2050, 2052, 2060, 2060, 2063, 2063,
3667      2058, 2053, 2054, 2066, 2064, 2059, 2057, 2058, 2061, 2061,
3668      2056, 2067, 2068, 2071, 2059, 2064, 2070,    0, 2075, 2069,
3669      2062, 2074, 2072, 2060, 2076, 2063, 2069, 2079,    0, 2074,
3670      2077, 2064, 2081, 2067, 2080, 2066, 2070, 2078, 2067, 2079,
3671      2081, 2080, 2082, 2070, 2068, 2071, 2069, 2072, 2074, 2072,
3672      2075, 2076, 2077, 2083, 2079, 2078, 2085, 2077, 2084, 2081,
3673      2087, 2080, 2086, 2086, 2078, 2085, 2082, 2088, 2083, 2082,
3674      2090, 2091,    0, 2089, 2093,    0, 2096, 2095, 2091, 2092,
3675 
3676      2083, 2096, 2084, 2085, 2095, 2084, 2087, 2087, 2089, 2086,
3677      2093, 2092, 2097, 2098,    0,    0, 2105, 2093, 2091, 2088,
3678      2089, 2093, 2090, 2096, 2095, 2099, 2092, 2100, 2099, 2101,
3679      2103, 2107, 2104, 2108, 2097, 2100,    0, 2093, 2103, 2097,
3680      2098, 2101, 2105, 2105, 2106, 2109, 2110, 2112, 2111, 2107,
3681      2120,    0, 2099, 2111, 2100, 2104, 2101, 2103, 2107, 2104,
3682      2108, 2113, 2115, 2109, 2111, 2106, 2114, 2113, 2116, 2110,
3683      2115, 2106, 2109, 2110, 2112, 2111, 2117, 2118, 2119, 2114,
3684      2111, 2125, 2120, 2117, 2118, 2119, 2122, 2121, 2113, 2115,
3685      2116, 2126, 2124, 2114, 2123, 2116, 2121, 2127, 2122, 2137,
3686 
3687      2132, 2133, 2131, 2117, 2118, 2119, 2124, 2129, 2125, 2131,
3688      2130, 2135, 2139, 2122, 2121, 2130, 2123, 2126, 2126, 2124,
3689      2127, 2123, 2132, 2141, 2127, 2129, 2130, 2132, 2133, 2131,
3690      2136, 2137, 2140, 2140, 2129, 2136, 2142, 2130, 2135, 2143,
3691      2145, 2146, 2130, 2147, 2139, 2141, 2148, 2149, 2150, 2149,
3692      2141, 2142, 2151, 2152, 2153, 2145, 2154, 2151, 2147, 2140,
3693      2155, 2156, 2136, 2142, 2146,    0, 2153, 2145, 2146, 2156,
3694      2147, 2143, 2148, 2148, 2149, 2157, 2158, 2159, 2154, 2151,
3695      2150, 2153, 2157, 2154, 2161, 2152, 2162, 2155, 2156, 2165,
3696      2163, 2166, 2159, 2167, 2162, 2168, 2171, 2169, 2158, 2161,
3697 
3698      2170, 2174, 2157, 2158, 2159, 2175,    0, 2173, 2176, 2172,
3699      2177, 2161, 2163, 2162, 2173, 2166, 2165, 2163, 2166, 2167,
3700      2167, 2172, 2168, 2169, 2169, 2178, 2175, 2170, 2171, 2180,
3701      2176, 2177, 2175, 2174, 2173, 2176, 2172, 2177, 2183, 2181,
3702      2184, 2185, 2186, 2178, 2181,    0, 2187, 2185,    0, 2189,
3703      2192, 2180, 2178, 2191,    0, 2190, 2180, 2186, 2197, 2194,
3704      2193, 2195, 2183, 2184, 2189, 2183, 2196, 2184, 2185, 2186,
3705      2190, 2181, 2187, 2187, 2199, 2191, 2189, 2192, 2193,    0,
3706      2191, 2194, 2190, 2195, 2198, 2197, 2194, 2193, 2195, 2200,
3707      2196, 2198, 2199, 2196, 2201, 2202, 2203, 2205, 2200, 2206,
3708 
3709         0, 2199, 2201, 2204, 2207, 2208, 2212, 2209, 2206,    0,
3710      2213, 2198,    0, 2211, 2208, 2212, 2200, 2214, 2233, 2203,
3711      2209, 2201, 2207, 2203, 2211, 2204, 2206, 2202, 2213, 2205,
3712      2204, 2207, 2208, 2212, 2209, 2214, 2215, 2213, 2216, 2211,
3713      2211, 2217, 2218, 2215, 2214, 2220, 2219, 2221, 2224, 2227,
3714      2233, 2211, 2219, 2226,    0, 2228,    0, 2218, 2235, 2217,
3715      2227, 2221, 2247, 2215, 2216, 2216, 2228, 2220, 2217, 2218,
3716      2229, 2231, 2220, 2219, 2221, 2224, 2227, 2226, 2232, 2234,
3717      2226, 2229, 2228, 2231, 2235, 2235, 2236, 2237, 2239, 2234,
3718      2238, 2232, 2242, 2240, 2247, 2243,    0, 2229, 2231, 2238,
3719 
3720      2237,    0, 2246, 2245,    0, 2232, 2234, 2245, 2249, 2251,
3721      2255, 2236, 2240, 2236, 2237, 2239, 2251, 2238, 2248, 2242,
3722      2240, 2243, 2243, 2246, 2252, 2255, 2253, 2250, 2249, 2246,
3723      2245, 2248, 2250, 2254, 2253, 2249, 2251, 2255,    0, 2254,
3724      2256, 2260, 2258, 2262, 2257, 2248, 2259, 2259, 2262,    0,
3725      2252, 2252, 2253, 2253, 2250, 2256, 2257, 2258, 2261, 2260,
3726      2254, 2253, 2263, 2269, 2268, 2266, 2263, 2256, 2260, 2258,
3727      2261, 2257, 2266, 2259,    0, 2262, 2264, 2264, 2267, 2268,
3728      2264, 2271, 2267,    0,    0, 2261, 2270, 2272, 2271, 2263,
3729      2269, 2268, 2266, 2264, 2273, 2270, 2276, 2277,    0, 2274,
3730 
3731      2278, 2264, 2287, 2264, 2264, 2267, 2274, 2264, 2271, 2278,
3732      2279, 2272, 2283, 2270, 2272, 2280, 2273, 2287, 2276, 2285,
3733      2264, 2273, 2277, 2276, 2277, 2286, 2274, 2278, 2285, 2287,
3734      2283, 2288, 2279, 2289, 2291, 2280, 2294, 2279, 2290, 2283,
3735      2292, 2289, 2280, 2286, 2295, 2290, 2285, 2292, 2296, 2297,
3736      2297, 2298, 2286, 2306, 2299, 2301, 2288, 2295, 2288, 2303,
3737      2289, 2294, 2302, 2294,    0, 2290, 2291, 2292, 2303, 2307,
3738         0, 2295, 2316, 2298, 2304, 2296, 2297, 2301, 2298, 2299,
3739      2305, 2299, 2301, 2304, 2302, 2306, 2303, 2305, 2308, 2302,
3740      2309, 2307, 2310, 2311, 2315, 2313, 2307, 2310, 2314, 2316,
3741 
3742      2317, 2304, 2308, 2313, 2319, 2309, 2321, 2305, 2323, 2315,
3743      2322, 2314, 2311, 2318, 2327, 2308, 2319, 2309,    0, 2324,
3744      2311, 2315, 2313, 2320, 2310, 2314, 2317, 2317, 2324, 2318,
3745      2320, 2319, 2322, 2323, 2325, 2323, 2326, 2322, 2321,    0,
3746      2318, 2327, 2328, 2331, 2326, 2332, 2324, 2329,    0, 2330,
3747      2320, 2333,    0,    0, 2335, 2326,    0, 2328, 2337, 2339,
3748      2333, 2331, 2336, 2326, 2339, 2336, 2325, 2332, 2341, 2328,
3749      2331, 2326, 2332, 2329, 2329, 2330, 2330, 2335, 2333, 2340,
3750      2336, 2335, 2338, 2337, 2342, 2337, 2341, 2344, 2338, 2336,
3751      2345, 2339, 2336, 2346, 2340, 2341, 2347, 2352, 2349, 2342,
3752 
3753         0, 2344,    0, 2351, 2353, 2345, 2340, 2350, 2357, 2338,
3754      2357, 2342, 2349, 2353, 2344, 2346, 2358, 2345, 2347, 2350,
3755      2346, 2351, 2356, 2347, 2352, 2349, 2350, 2354, 2355, 2358,
3756      2351, 2353, 2359, 2356, 2350, 2357, 2354, 2355, 2360, 2365,
3757      2364, 2362, 2363, 2358, 2359, 2367, 2350, 2364, 2366, 2356,
3758         0,    0,    0, 2368, 2354, 2355, 2362, 2363, 2371, 2359,
3759      2360, 2365, 2368, 2367, 2375, 2360, 2365, 2364, 2362, 2363,
3760      2366, 2371, 2367, 2373, 2374, 2366, 2375, 2376, 2374, 2371,
3761      2368, 2377, 2379, 2377, 2378, 2371, 2376, 2380, 2381, 2383,
3762      2382, 2375, 2386,    0, 2373, 2384, 2391, 2383, 2371, 2382,
3763 
3764      2373, 2374, 2378, 2385, 2376, 2380, 2386,    0, 2377, 2379,
3765      2394, 2378, 2387, 2388, 2380, 2381, 2383, 2382, 2384, 2386,
3766      2388, 2390, 2384, 2395, 2387, 2385, 2392, 2393, 2391, 2390,
3767      2385, 2392, 2393, 2396, 2399, 2398, 2401, 2404, 2405, 2387,
3768      2388, 2399, 2394, 2401, 2406, 2403, 2404, 2408, 2390, 2403,
3769      2407, 2414, 2409, 2392, 2398, 2395, 2421, 2396, 2406, 2393,
3770      2396, 2399, 2398, 2401, 2404, 2405, 2410, 2411, 2407, 2406,
3771      2406, 2406, 2403, 2417, 2408, 2415, 2411, 2407, 2409, 2409,
3772      2412, 2410, 2416, 2414, 2418, 2406, 2419, 2415, 2421, 2416,
3773      2420, 2423, 2424, 2410, 2411, 2417, 2406, 2425, 2426, 2424,
3774 
3775      2417, 2412, 2415,    0, 2428, 2426, 2428, 2412, 2429, 2416,
3776      2418, 2418, 2420, 2419, 2423, 2431, 2433, 2420, 2423, 2424,
3777      2425, 2439, 2430, 2432, 2425, 2426, 2430, 2431, 2434, 2435,
3778      2429, 2428, 2432,    0, 2436, 2429, 2437, 2434, 2433, 2438,
3779      2435, 2436, 2431, 2433, 2438, 2440,    0, 2441, 2439, 2430,
3780      2432, 2442, 2446, 2443, 2448, 2434, 2435, 2449, 2437, 2441,
3781      2445, 2436, 2443, 2437, 2444, 2444, 2438, 2446, 2440, 2445,
3782      2451, 2449, 2440, 2442, 2441, 2447, 2448, 2450, 2442, 2446,
3783      2443, 2448, 2453, 2447, 2449, 2454, 2450, 2445, 2455, 2458,
3784      2456, 2444, 2458, 2454, 2463, 2457, 2455, 2451, 2456, 2457,
3785 
3786      2459, 2453, 2447, 2461, 2450, 2460, 2464, 2462, 2459, 2453,
3787      2468, 2460, 2454, 2462, 2470, 2455, 2458, 2456, 2461, 2466,
3788      2469,    0, 2457, 2471, 2468, 2473, 2463, 2459, 2476, 2472,
3789      2461, 2466, 2460, 2469, 2462, 2470, 2472, 2468, 2464, 2474,
3790      2475, 2470, 2476, 2480, 2478, 2479, 2466, 2469, 2471, 2481,
3791      2471, 2477, 2473, 2483, 2477, 2476, 2472, 2478, 2482, 2479,
3792      2489, 2474, 2484, 2485, 2475, 2486, 2474, 2475, 2490, 2480,
3793      2480, 2478, 2479, 2492, 2484, 2485, 2481, 2494, 2477, 2486,
3794      2483, 2487, 2495, 2482, 2487, 2482, 2491, 2489, 2493, 2484,
3795      2485, 2493, 2486, 2502, 2490, 2490,    0, 2496, 2491, 2492,
3796 
3797      2492, 2498, 2501, 2499, 2494, 2500, 2493, 2487, 2487, 2495,
3798      2499, 2487, 2500, 2491, 2503, 2493, 2505, 2501, 2493, 2496,
3799      2502, 2507, 2506, 2498, 2496, 2504, 2508, 2510, 2498, 2501,
3800      2499, 2506, 2500, 2504, 2509, 2511, 2515, 2512, 2508, 2513,
3801      2516, 2503, 2514, 2505, 2521, 2517, 2515, 2518, 2507, 2506,
3802      2512, 2520, 2504, 2508, 2510, 2518, 2509, 2513, 2517, 2523,
3803      2525, 2509, 2511, 2515, 2512, 2527, 2513, 2516, 2514, 2514,
3804      2524, 2521, 2517, 2520, 2518, 2522, 2529, 2526, 2520, 2524,
3805      2528, 2536, 2525, 2522, 2531, 2530, 2523, 2525, 2532, 2527,
3806         0, 2535, 2527, 2530, 2537, 2528, 2531, 2524, 2526, 2535,
3807 
3808      2543, 2544, 2522, 2529, 2526, 2534, 2528, 2528, 2536, 2539,
3809      2541, 2531, 2530, 2532, 2541, 2532, 2539, 2534, 2535, 2540,
3810      2546, 2542, 2528, 2543,    0,    0, 2537, 2543, 2544, 2547,
3811      2545, 2540, 2534, 2542,    0, 2549, 2539, 2541, 2545, 2548,
3812      2551, 2554, 2546, 2552, 2553, 2564, 2540, 2546, 2542, 2549,
3813      2552, 2548, 2547, 2557, 2554, 2559, 2547, 2545, 2558, 2558,
3814      2555, 2549, 2549, 2556, 2553, 2557, 2548, 2551, 2554, 2555,
3815      2552, 2553, 2556, 2560, 2561,    0, 2549, 2564, 2562, 2565,
3816      2557, 2559, 2559,    0,    0, 2558, 2566, 2555, 2567, 2568,
3817      2556, 2560, 2573, 2562, 2565, 2562, 2569, 2580, 2569, 2561,
3818 
3819      2560, 2561, 2562, 2570,    0, 2562, 2565, 2572, 2566, 2576,
3820      2567, 2568, 2571, 2566, 2573, 2567, 2568, 2570, 2571, 2573,
3821      2562, 2577, 2562, 2569, 2578, 2572, 2574, 2574, 2579, 2580,
3822      2570, 2576, 2581, 2583, 2572, 2582, 2576, 2584, 2588, 2571,
3823      2579, 2582,    0, 2577, 2585, 2583, 2578, 2587, 2577, 2587,
3824      2586, 2578, 2588, 2574, 2589, 2579, 2590, 2591, 2592, 2596,
3825      2583, 2593, 2582, 2590, 2581, 2588, 2585, 2595, 2594, 2584,
3826      2597, 2585, 2586, 2598, 2587, 2591, 2592, 2586, 2589, 2593,
3827      2595, 2589, 2600, 2590, 2591, 2592, 2594, 2603, 2593, 2600,
3828      2602, 2596, 2604, 2605, 2595, 2594, 2598, 2602,    0, 2607,
3829 
3830      2598,    0, 2597, 2606,    0, 2603, 2608,    0, 2610, 2600,
3831      2609, 2606,    0, 2614, 2603, 2607, 2615, 2602, 2604, 2604,
3832      2611, 2616,    0,    0, 2614, 2605, 2607, 2615, 2609, 2606,
3833      2606, 2608, 2617, 2608, 2610, 2610, 2618, 2609, 2606, 2612,
3834      2614, 2612, 2611, 2615, 2617, 2620, 2612, 2611, 2616, 2619,
3835      2623, 2621,    0,    0, 2618, 2626, 2628, 2629, 2624, 2617,
3836      2633,    0, 2625, 2618, 2620, 2623, 2612, 2619, 2612, 2624,
3837      2626, 2632, 2620, 2621, 2625, 2631, 2619, 2623, 2621, 2629,
3838      2628, 2630, 2626, 2628, 2629, 2624, 2632, 2633, 2630, 2625,
3839      2634, 2635, 2638, 2631, 2636,    0, 2641, 2642, 2632, 2639,
3840 
3841      2640,    0, 2631, 2644,    0, 2646, 2643,    0, 2630, 2648,
3842      2652,    0, 2645,    0, 2651,    0, 2676, 2634, 2635, 2638,
3843      2636, 2636, 2640, 2639, 2643, 2645, 2639, 2640, 2641, 2642,
3844      2644, 2646, 2646, 2643, 2647, 2648, 2648, 2649, 2650, 2645,
3845      2651, 2651, 2652, 2653, 2654, 2656, 2650, 2658, 2676, 2647,
3846      2649, 2657, 2663,    0, 2659, 2660, 2653, 2665,    0, 2663,
3847      2664, 2647, 2661,    0, 2649, 2650, 2654, 2662, 2656, 2668,
3848      2653, 2654, 2656,    0, 2658, 2657, 2659, 2660, 2657, 2663,
3849      2661, 2659, 2660, 2664, 2665, 2662, 2666, 2664, 2669, 2661,
3850      2670, 2668, 2671, 2672, 2662, 2669, 2668, 2670, 2673, 2671,
3851 
3852      2666, 2674, 2675,    0, 2678, 2677, 2672, 2679, 2674, 2680,
3853      2685,    0, 2690, 2666, 2681, 2669, 2683, 2670, 2680, 2671,
3854      2672, 2673, 2681, 2693, 2675, 2673, 2677, 2682, 2674, 2675,
3855      2678, 2678, 2677, 2679, 2679, 2682, 2680, 2685, 2683, 2684,
3856      2687, 2681, 2688, 2683, 2690, 2684, 2689, 2691, 2693, 2697,
3857      2693, 2692,    0, 2688, 2682, 2687, 2695, 2700, 2698,    0,
3858      2699,    0, 2697, 2701, 2703, 2704, 2684, 2687, 2689, 2688,
3859      2692, 2698, 2705, 2689, 2695, 2707, 2697, 2704, 2692, 2691,
3860      2710, 2700, 2711, 2695, 2700, 2698, 2699, 2699, 2703, 2701,
3861      2701, 2703, 2704, 2706, 2706, 2712, 2705, 2713, 2714, 2705,
3862 
3863      2717, 2707, 2707, 2710, 2719, 2721, 2722, 2710, 2725, 2728,
3864      2712, 2726, 2726, 2719, 2711, 2728, 2714, 2722, 2721, 2727,
3865      2706, 2730, 2712, 2731, 2713, 2714, 2732, 2717, 2727, 2734,
3866      2725, 2719, 2721, 2722, 2736, 2725, 2728, 2737, 2726, 2752,
3867         0, 2738, 2747, 2730, 2737, 2731, 2727, 2739, 2730, 2740,
3868      2731, 2741, 2743, 2732, 2740, 2745, 2734, 2744, 2739, 2751,
3869      2743, 2749, 2746, 2754, 2737, 2750, 2736, 2738, 2738, 2747,
3870      2745, 2752, 2749, 2741, 2739, 2754, 2740, 2746, 2741, 2743,
3871      2751, 2744, 2745, 2750, 2744, 2753, 2751, 2756, 2749, 2746,
3872      2754, 2757, 2750,    0, 2753, 2758, 2759, 2760, 2760, 2761,
3873 
3874         0, 2763, 2764, 2767, 2759, 2760,    0, 2766, 2761, 2765,
3875      2769,    0, 2753, 2770, 2756, 2757, 2766,    0, 2757, 2768,
3876      2758, 2767, 2758, 2759, 2760, 2760, 2761, 2763, 2763, 2764,
3877      2767, 2765, 2769, 2768, 2766, 2771, 2765, 2769, 2770, 2772,
3878      2770, 2773, 2774, 2775, 2776, 2777, 2768, 2778, 2771, 2779,
3879      2775, 2776, 2772, 2780, 2781, 2782, 2773,    0, 2783, 2784,
3880         0, 2779, 2771, 2787, 2774, 2788, 2772, 2777, 2773, 2774,
3881      2775, 2776, 2777, 2783, 2778, 2786, 2779, 2789, 2785, 2790,
3882      2780, 2781, 2782, 2792, 2784, 2783, 2784, 2785, 2791, 2787,
3883      2787, 2788, 2788, 2793, 2790, 2791, 2796, 2786, 2792, 2798,
3884 
3885      2793, 2794, 2786, 2789, 2789, 2785, 2790, 2794, 2795, 2797,
3886      2792, 2799, 2801, 2800, 2803, 2791, 2802, 2797, 2804, 2795,
3887      2793, 2809, 2806, 2796, 2810, 2805, 2798, 2811, 2794, 2800,
3888      2807, 2802, 2805, 2804, 2803, 2795, 2797, 2807, 2799, 2801,
3889      2800, 2803, 2810, 2802, 2806, 2804, 2808, 2814, 2809, 2806,
3890      2816, 2810, 2805, 2808, 2811, 2812, 2812, 2807, 2813, 2815,
3891      2817, 2814, 2815, 2816, 2818, 2813, 2819, 2820, 2821,    0,
3892      2822, 2819, 2823, 2808, 2814, 2827, 2824, 2816, 2817, 2818,
3893      2831,    0, 2812, 2821, 2827, 2813, 2815, 2817, 2824, 2825,
3894      2823, 2818, 2820, 2819, 2820, 2821, 2822, 2822, 2830, 2823,
3895 
3896      2828, 2825, 2827, 2824, 2829, 2828, 2832, 2831, 2833, 2829,
3897      2832, 2834, 2835, 2837, 2836, 2838, 2825, 2840,    0, 2844,
3898      2830, 2846, 2839,    0, 2834, 2830,    0, 2828,    0,    0,
3899         0, 2829, 2833, 2832, 2835, 2833, 2836, 2839, 2834, 2835,
3900      2837, 2836, 2838, 2840, 2840, 2844, 2844, 2846, 2846, 2839,
3901      2847, 2848, 2849, 2850, 2852, 2853, 2855, 2854, 2857, 2847,
3902      2849, 2852, 2854, 2855, 2853, 2850, 2856, 2848, 2858, 2859,
3903         0,    0, 2866, 2856, 2893, 2858, 2857, 2847, 2848, 2849,
3904      2850, 2852, 2853, 2855, 2854, 2857, 2863, 2865, 2867, 2861,
3905      2860, 2862, 2870, 2856, 2859, 2858, 2859, 2860, 2861, 2866,
3906 
3907      2862, 2867, 2868, 2869, 2872, 2873, 2893, 2868, 2877,    0,
3908      2865, 2874, 2863, 2863, 2865, 2867, 2861, 2860, 2862, 2870,
3909      2874, 2869, 2872, 2885, 2875, 2876,    0, 2878, 2877, 2868,
3910      2869, 2872, 2873, 2875, 2876, 2877, 2879, 2880, 2874, 2878,
3911      2882, 2884, 2881, 2883, 2886, 2879, 2880, 3013, 2882, 2887,
3912      2885, 2875, 2876, 2881, 2878, 2891, 2887, 2889, 2892,    0,
3913         0, 2884, 2900, 2879, 2880, 2888, 2883, 2882, 2884, 2881,
3914      2883, 2886, 2894, 2899, 2888, 2896, 2887, 2895, 2889, 3013,
3915      2897, 2894, 2891, 2898, 2889, 2892, 2895, 2896, 2897, 2900,
3916      2901, 2902, 2888, 2904, 2903, 2899, 2898, 2901, 2902, 2894,
3917 
3918      2899, 2903, 2896, 2905, 2895, 2906, 2907, 2897, 2909, 2904,
3919      2898, 2908, 2906, 2911, 2910, 2913, 2915, 2901, 2902, 2905,
3920      2904, 2903,    0, 2913,    0, 2919,    0, 2921, 2907, 2916,
3921      2905, 2917, 2906, 2907, 2915, 2909, 2908, 2916, 2908, 2910,
3922      2911, 2910, 2913, 2915, 2918, 2923, 2917, 2919, 2920, 2921,
3923      2922, 2918, 2919, 2923, 2921, 2920, 2916, 2922, 2917, 2926,
3924      2927, 2928, 2929, 2932, 2930, 2931, 2926, 2933, 2934, 2927,
3925      2935, 2918, 2923, 2941, 2931, 2920, 2930, 2922, 2939, 2940,
3926      2934, 2945,    0, 2933, 2937, 2928, 2926, 2927, 2928, 2929,
3927      2932, 2930, 2931, 2935, 2933, 2934, 2937, 2935, 2938, 2939,
3928 
3929      2941, 2942, 2940, 2948, 2944, 2939, 2940, 2946, 2945, 2947,
3930      2938, 2937, 2949, 2950, 2946, 2942, 2944, 2947, 2952, 2949,
3931      2953, 2954, 2948, 2955, 2956, 2938, 2958, 2957, 2942, 2964,
3932      2948, 2944,    0, 2952, 2946, 2957, 2947, 2959, 2953, 2949,
3933      2950, 2961, 2960, 2962, 2954, 2952, 2970, 2953, 2954, 2955,
3934      2955, 2956, 2961, 2958, 2957, 2963, 2964, 2966, 2962, 2959,
3935      2960, 2971, 2963, 2966, 2959, 2973, 2972, 2974, 2961, 2960,
3936      2962, 2972, 2970, 2970, 2980, 2975, 2976, 2977, 2978, 2971,
3937      2979, 2974, 2963, 2984, 2966, 2982, 2987, 2989, 2971, 2975,
3938      2976, 3033, 2973, 2972, 2974, 2977, 2978, 2982, 2979, 2981,
3939 
3940      2991, 2980, 2975, 2976, 2977, 2978, 2981, 2979, 2987, 2989,
3941      2984, 2990, 2982, 2987, 2989, 2992, 2995, 2993, 2994, 2997,
3942      3001, 3002, 2991, 3033, 2990, 2993, 2981, 2991, 2999, 3000,
3943      3003, 2997, 3001, 3007, 2992, 2995, 2994, 3004, 2990, 3006,
3944      3005, 3007, 2992, 2995, 2993, 2994, 2997, 3001, 3002, 3008,
3945      2999, 3000, 3005, 3009, 3011, 2999, 3000, 3003, 3016, 3004,
3946      3007, 3006, 3010, 3011, 3004, 3012, 3006, 3005, 3014, 3015,
3947      3019, 3016, 3018, 3009, 3012, 3021, 3008, 3022, 3020, 3025,
3948      3009, 3011, 3019, 3027, 3010, 3016, 3045, 3028,    0, 3010,
3949      3014, 3015, 3012, 3026, 3030, 3014, 3015, 3019, 3018, 3018,
3950 
3951      3020, 3025, 3021, 3029, 3022, 3020, 3025, 3026, 3029, 3031,
3952      3027, 3028, 3032, 3045, 3028, 3034, 3030,    0, 3035, 3036,
3953      3026, 3030, 3038, 3040, 3039, 3032, 3037, 3041, 3042, 3040,
3954      3043, 3031,    0,    0, 3038, 3029, 3031, 3049, 3034, 3032,
3955      3035, 3036, 3034, 3039, 3037, 3035, 3036, 3044, 3047, 3038,
3956      3040, 3039, 3043, 3037, 3048, 3051, 3053, 3043, 3054, 3041,
3957      3042, 3049, 3044, 3056, 3049, 3055, 3058, 3067, 3047, 3060,
3958      3051, 3059, 3056,    0, 3044, 3047, 3048, 3057, 3053, 3061,
3959      3054, 3048, 3051, 3053, 3058, 3054, 3062, 3055, 3063, 3059,
3960      3056, 3057, 3055, 3058, 3066, 3060, 3060, 3061, 3059, 3067,
3961 
3962      3071, 3068, 3075, 3066, 3057, 3072, 3061, 3073, 3071, 3062,
3963      3063, 3074, 3072, 3062, 3073, 3063, 3076, 3077, 3082, 3074,
3964      3081, 3066, 3068, 3079, 3080, 3077, 3085, 3071, 3068, 3075,
3965      3082, 3083, 3072, 3094, 3073,    0, 3076, 3091, 3074, 3095,
3966      3084, 3079, 3080, 3076, 3077, 3082, 3081, 3081, 3086, 3083,
3967      3079, 3080, 3084, 3085, 3088, 3090, 3086, 3092, 3083, 3093,
3968      3091, 3093, 3090, 3097, 3091, 3094, 3088, 3084, 3096, 3098,
3969      3099, 3095, 3097, 3100, 3107, 3086, 3096, 3101, 3104, 3101,
3970      3102, 3088, 3090, 3112, 3092, 3105, 3093, 3108,    0,    0,
3971      3097, 3115, 3100, 3109, 3110, 3096, 3104, 3099,    0, 3105,
3972 
3973      3100, 3098, 3102, 3110, 3101, 3104, 3107, 3102, 3118, 3111,
3974      3112, 3108, 3105, 3113, 3108, 3116, 3109, 3115, 3115, 3119,
3975      3109, 3110, 3111, 3119, 3116, 3113, 3120, 3121, 3123, 3124,
3976      3126, 3128,    0,    0, 3130, 3118, 3111, 3125, 3131, 3133,
3977      3113, 3130, 3116, 3136, 3133, 3141, 3119, 3132, 3126,    0,
3978      3136, 3134, 3124, 3120, 3121, 3123, 3124, 3126, 3128, 3125,
3979      3131, 3130, 3132, 3139, 3125, 3131, 3134, 3142, 3137, 3138,
3980      3136, 3133, 3141, 3143, 3132, 3137, 3138, 3144, 3134, 3145,
3981      3148, 3151, 3149, 3146, 3152,    0, 3153, 3154, 3151, 3139,
3982      3139, 3149, 3156, 3145, 3142, 3137, 3138, 3146, 3161, 3160,
3983 
3984      3143, 3144, 3157, 3155, 3144, 3159, 3145, 3148, 3151, 3149,
3985      3146, 3152, 3153, 3153, 3154, 3155, 3157, 3158, 3159, 3156,
3986      3162, 3166, 3165, 3167, 3168, 3161, 3158, 3165, 3170, 3157,
3987      3155, 3160, 3159, 3170, 3171, 3172, 3174, 3175, 3171, 3176,
3988      3177, 3179, 3172, 3162, 3158, 3166, 3168, 3162, 3166, 3173,
3989      3178, 3168, 3178, 3180, 3165, 3167, 3173, 3174, 3183, 3184,
3990      3170, 3171, 3172, 3174, 3179, 3186, 3187, 3190, 3179, 3175,
3991      3191, 3176, 3177, 3189, 3194, 3189, 3173, 3178, 3192, 3192,
3992      3180, 3184, 3193, 3194, 3186, 3183, 3184, 3198, 3192,    0,
3993      3187, 3190, 3186, 3187, 3190, 3196, 3191, 3191, 3197, 3199,
3994 
3995      3189, 3194, 3196, 3201, 3193, 3192, 3192, 3200, 3203, 3193,
3996      3202, 3197, 3199, 3207, 3198, 3200, 3201, 3208, 3202, 3205,
3997      3209, 3207, 3196, 3206, 3205, 3197, 3199, 3203, 3206,    0,
3998      3201, 3200, 3210,    0, 3200, 3203, 3211, 3202, 3212, 3214,
3999      3207, 3213, 3200,    0, 3208, 3216, 3209, 3209, 3215, 3220,
4000      3214, 3205, 3216, 3217, 3217, 3206, 3218, 3222, 3210, 3210,
4001      3219, 3221, 3211, 3211, 3212, 3212, 3214, 3213, 3213, 3221,
4002      3215, 3220, 3216, 3219, 3218, 3215, 3220, 3223, 3224, 3222,
4003      3217, 3228, 3225, 3218, 3222, 3224, 3226, 3219, 3221, 3225,
4004      3229, 3230, 3232, 3226, 3231, 3223, 3237, 3239, 3235, 3233,
4005 
4006      3234, 3242, 3245,    0, 3223, 3224, 3231, 3235, 3228, 3225,
4007      3238, 3240, 3250, 3226, 3243, 3230, 3244, 3229, 3230, 3232,
4008      3233, 3231, 3234, 3237, 3239, 3235, 3233, 3234, 3242, 3245,
4009      3238, 3246, 3243, 3240, 3244, 3247, 3249, 3238, 3240, 3250,
4010      3251, 3243, 3252, 3244, 3254, 3249, 3253, 3256, 3257, 3246,
4011      3255, 3258, 3254, 3247, 3260, 3257, 3258, 3262, 3246, 3256,
4012      3261, 3269, 3247, 3249, 3253, 3252, 3255, 3251, 3260, 3252,
4013      3264, 3254, 3268, 3253, 3256, 3257, 3270, 3255, 3261, 3272,
4014      3262, 3260, 3264, 3258, 3262, 3273, 3275, 3261, 3269, 3270,
4015      3274, 3277, 3274, 3278, 3268, 3275, 3279, 3264, 3273, 3268,
4016 
4017      3280, 3281, 3285, 3270, 3285, 3290, 3272, 3287, 3286, 3292,
4018         0, 3296, 3273, 3275, 3279, 3289, 3281, 3274, 3277, 3297,
4019      3278, 3294, 3289, 3279, 3292, 3287, 3298, 3294, 3281, 3285,
4020      3286, 3299, 3280, 3296, 3287, 3286, 3292, 3290, 3296, 3301,
4021      3305, 3297, 3289, 3302, 3304, 3309, 3297, 3310, 3294, 3299,
4022      3306, 3311, 3298, 3298, 3305, 3312, 3302, 3313, 3299, 3307,
4023      3304, 3301, 3307, 3306, 3313, 3320, 3301, 3305, 3314, 3317,
4024      3302, 3304, 3309, 3312, 3310, 3314, 3321, 3306, 3311, 3315,
4025      3316, 3323, 3312, 3322, 3313, 3307, 3307, 3315, 3316, 3307,
4026      3324, 3317, 3327, 3328, 3325, 3314, 3317, 3320, 3321, 3324,
4027 
4028      3329, 3331, 3328, 3321, 3333, 3322, 3315, 3316, 3323, 3325,
4029      3322, 3330, 3326, 3330, 3327, 3334, 3341, 3324, 3326, 3327,
4030      3328, 3325, 3335, 3341, 3336, 3337, 3343, 3333, 3331, 3338,
4031         0, 3333, 3329, 3337, 3339,    0,    0, 3334, 3330, 3326,
4032      3345, 3338, 3334, 3341, 3335, 3346, 3339, 3348, 3347, 3335,
4033      3336, 3336, 3337, 3343, 3345, 3349, 3338, 3350, 3351, 3346,
4034      3352, 3339, 3347, 3356, 3353, 3357, 3351, 3345, 3350, 3354,
4035      3348, 3355, 3346, 3349, 3348, 3347, 3354, 3360, 3355, 3352,
4036      3359, 3359, 3349, 3357, 3350, 3351, 3353, 3352, 3358, 3356,
4037      3356, 3353, 3357, 3361, 3362, 3365, 3354, 3358, 3355, 3366,
4038 
4039      3365, 3368, 3362, 3369, 3360, 3370, 3374, 3359, 3372, 3379,
4040      3384,    0, 3366, 3376, 3372, 3358, 3381, 3387, 3377,    0,
4041      3361, 3362, 3368, 3380, 3376, 3389, 3366, 3365, 3368, 3377,
4042      3369, 3379, 3370, 3374, 3380, 3372, 3379, 3384, 3381, 3385,
4043      3376, 3386, 3396, 3381, 3388, 3377, 3385, 3390, 3388, 3387,
4044      3380, 3392, 3389, 3394, 3393, 3390, 3395, 3398, 3407, 3386,
4045      3401, 3394,    0, 3400, 3402, 3395, 3385, 3393, 3386, 3396,
4046      3400, 3388, 3406, 3406, 3390, 3408, 3409, 3392, 3392, 3405,
4047      3394, 3393, 3411, 3395, 3405, 3407, 3402, 3410, 3409, 3398,
4048      3400, 3402, 3401, 3414, 3410, 3412, 3416, 3413, 3415, 3406,
4049 
4050      3414, 3411, 3408, 3409, 3416, 3418, 3405, 3419,    0, 3411,
4051      3417, 3412, 3418, 3420, 3410, 3413, 3421, 3422, 3423, 3433,
4052      3414, 3425, 3412, 3416, 3413, 3417, 3424, 3434, 3411, 3422,
4053      3415, 3429, 3418, 3432, 3419, 3420, 3436, 3417, 3435, 3443,
4054      3420,    0, 3423, 3421, 3422, 3423, 3429, 3425, 3425, 3430,
4055      3424, 3433, 3431, 3424, 3434, 3432, 3430, 3437, 3429, 3431,
4056      3432, 3439, 3435, 3440, 3441, 3435, 3437, 3442, 3436, 3445,
4057      3447, 3443, 3444, 3444, 3451, 3442, 3430,    0, 3448, 3431,
4058      3456, 3453, 3444, 3439, 3437, 3447, 3441, 3448, 3439, 3450,
4059      3440, 3441, 3453, 3449, 3442, 3449, 3445, 3447, 3452, 3444,
4060 
4061      3444, 3451, 3457, 3450, 3454, 3448, 3452, 3456, 3453, 3458,
4062      3459, 3460, 3461, 3462, 3463, 3464, 3450, 3465, 3466, 3467,
4063      3449, 3470, 3454, 3469, 3460, 3452, 3468, 3468,    0, 3457,
4064      3473, 3454, 3459, 3467, 3461, 3465, 3458, 3459, 3460, 3461,
4065      3462, 3463, 3464, 3470, 3465, 3466, 3467, 3474, 3470, 3476,
4066      3477, 3480, 3488, 3468, 3484, 3469, 3482, 3473, 3474, 3480,
4067      3483, 3482, 3484, 3485, 3490, 3483, 3486, 3491, 3485, 3489,
4068      3489, 3494, 3490, 3495, 3474, 3493, 3476, 3477, 3480, 3488,
4069      3491, 3484, 3493, 3482, 3496, 3497, 3499, 3483, 3500, 3494,
4070      3485, 3490, 3486, 3486, 3491, 3499, 3489, 3501, 3494, 3502,
4071 
4072      3495, 3503, 3493, 3504, 3501, 3508, 3510, 3502, 3497, 3507,
4073      3513, 3496, 3497, 3499, 3512, 3507, 3511, 3516, 3515, 3514,
4074      3500,    0,    0, 3503, 3501, 3504, 3502, 3512, 3503, 3517,
4075      3504, 3521, 3508, 3510, 3514, 3522, 3507, 3515, 3511, 3525,
4076      3519, 3512, 3513, 3511, 3516, 3515, 3514, 3519, 3523, 3526,
4077      3527, 3517, 3524, 3529, 3521, 3523, 3517, 3522, 3521, 3524,
4078      3528, 3525, 3522, 3531, 3526, 3527, 3525, 3519,    0, 3528,
4079      3532,    0, 3544,    0, 3529, 3523, 3526, 3527, 3532, 3524,
4080      3529, 3533, 3531, 3536, 3534, 3537, 3553, 3528, 3533, 3539,
4081      3531, 3534, 3536, 3538, 3538, 3539, 3537, 3532, 3543, 3547,
4082 
4083      3540, 3542, 3545, 3538, 3544, 3543, 3547, 3548, 3533, 3554,
4084      3536, 3534, 3537, 3553, 3555,    0, 3539, 3561, 3549, 3564,
4085      3538, 3538, 3540, 3542, 3545, 3543, 3547, 3540, 3542, 3545,
4086      3559, 3548, 3549, 3562, 3548, 3563, 3554, 3555, 3566, 3569,
4087      3572, 3555, 3559, 3563, 3561, 3549, 3564, 3570, 3570,    0,
4088      3566, 3571, 3571, 3573, 3573, 3562, 3574, 3559, 3578, 3576,
4089      3562, 3579, 3563, 3583, 3580, 3566, 3569, 3572, 3584, 3577,
4090      3579, 3585,    0, 3588,    0, 3587, 3570, 3580, 3585, 3574,
4091      3571, 3576, 3573, 3574, 3589, 3578, 3576, 3577, 3579, 3594,
4092      3583, 3580, 3586, 3589, 3584, 3584, 3577, 3587, 3585, 3586,
4093 
4094      3588, 3590, 3587, 3593, 3595, 3593, 3596, 3600, 3590, 3594,
4095      3597, 3589, 3599, 3601, 3602, 3605, 3594, 3604, 3603, 3586,
4096      3606, 3599, 3597, 3607, 3596, 3613, 3609, 3595, 3590,    0,
4097      3593, 3595, 3600, 3596, 3600, 3601, 3603, 3597, 3609, 3599,
4098      3601, 3602, 3605, 3604, 3604, 3603, 3608, 3606, 3610, 3611,
4099      3607, 3608, 3611, 3609, 3612, 3616, 3614, 3613, 3614, 3612,
4100      3615, 3616, 3617, 3618, 3620, 3621, 3619, 3611, 3623, 3624,
4101      3610, 3622, 3615, 3608, 3619, 3610, 3611, 3626, 3629, 3611,
4102      3632, 3630, 3616, 3614, 3617, 3618, 3612, 3615, 3625, 3617,
4103      3618, 3620, 3622, 3619, 3630, 3623, 3624, 3621, 3622, 3626,
4104 
4105      3625, 3633, 3635, 3637, 3626, 3629, 3638, 3632, 3630, 3639,
4106      3640, 3635, 3642, 3643, 3644, 3625, 3645, 3646, 3646, 3633,
4107      3648, 3649, 3651, 3656, 3652, 3654, 3657,    0, 3633, 3635,
4108      3637, 3653, 3654, 3638, 3659, 3656, 3639, 3640, 3648, 3642,
4109      3643, 3644, 3652, 3645, 3646, 3660, 3653, 3648, 3649, 3651,
4110      3656, 3652, 3654, 3657, 3658, 3661, 3662, 3660, 3653, 3663,
4111      3664, 3659, 3658, 3665, 3667, 3668, 3672, 3680, 3673, 3661,
4112      3674, 3662, 3660, 3675, 3675, 3664, 3667, 3673, 3676, 3679,
4113      3677, 3658, 3661, 3662,    0, 3663, 3663, 3664, 3672, 3677,
4114      3665, 3667, 3668, 3672, 3674, 3673, 3681, 3674, 3682, 3680,
4115 
4116      3675, 3685, 3683, 3679, 3676, 3676, 3679, 3677, 3684, 3681,
4117      3683, 3687, 3685, 3688, 3691, 3692, 3711, 3684, 3694, 3697,
4118      3682, 3696, 3696, 3681, 3712, 3682, 3697, 3692, 3685, 3683,
4119      3706, 3688, 3687, 3710, 3707, 3684, 3713, 3691, 3687, 3715,
4120      3688, 3691, 3692, 3711, 3694, 3694, 3697, 3710, 3696, 3717,
4121      3718, 3712, 3706, 3717, 3723, 3719, 3725, 3706, 3707, 3721,
4122      3710, 3707, 3720, 3713, 3727, 3728, 3715, 3723, 3718, 3720,
4123      3726, 3721, 3730, 3729, 3726, 3731, 3717, 3718, 3719, 3732,
4124      3727, 3723, 3719,    0, 3730, 3734, 3721, 3728, 3725, 3720,
4125      3739, 3727, 3728, 3732, 3734, 3733, 3735, 3726, 3729, 3730,
4126 
4127      3729, 3731, 3731, 3733, 3737, 3739, 3732, 3735, 3736, 3738,
4128      3736, 3740, 3734, 3741, 3742, 3743, 3737, 3739, 3744, 3741,
4129      3745, 3746, 3733, 3735, 3747, 3753, 3744, 3738, 3746, 3742,
4130      3752, 3737, 3753, 3740, 3754, 3736, 3738, 3743, 3740, 3756,
4131      3741, 3742, 3743, 3752, 3755, 3744, 3747, 3745, 3746, 3757,
4132      3758, 3747, 3753, 3759, 3760, 3761, 3762, 3752, 3763, 3769,
4133      3764, 3754, 3755, 3756, 3762, 3763, 3756, 3765, 3766,    0,
4134      3773, 3755, 3758, 3767, 3768, 3767, 3757, 3758,    0, 3759,
4135      3759, 3760, 3761, 3762, 3764, 3763, 3768, 3764, 3771, 3765,
4136      3766, 3769, 3770, 3775, 3765, 3766, 3772, 3773, 3776, 3774,
4137 
4138      3767, 3768, 3777, 3771, 3779, 3770, 3774, 3782, 3781, 3780,
4139      3784, 3785, 3791, 3793, 3787, 3771, 3781, 3787, 3772, 3770,
4140      3775, 3780, 3784, 3772, 3788, 3776, 3774, 3785, 3792, 3777,
4141      3795, 3779, 3793, 3788, 3782, 3781, 3780, 3784, 3785, 3791,
4142      3793, 3787, 3794, 3796, 3797, 3798, 3800, 3801,    0, 3803,
4143      3794, 3788, 3799, 3811, 3792, 3792, 3809, 3797, 3808, 3798,
4144      3799, 3812, 3795, 3809, 3808, 3817, 3811, 3813, 3800, 3794,
4145      3814, 3797, 3798, 3800, 3801, 3796, 3803, 3816, 3813, 3799,
4146      3811, 3818, 3819, 3809, 3816, 3808, 3820, 3817, 3812, 3818,
4147      3821, 3824, 3817, 3814, 3813, 3827, 3819, 3814, 3821, 3822,
4148 
4149      3820, 3823, 3827, 3828, 3816, 3832, 3829, 3831, 3818, 3819,
4150         0, 3834, 3828, 3820, 3829, 3833, 3840, 3821, 3824, 3835,
4151      3842, 3822, 3827, 3823,    0, 3831, 3822, 3836, 3823, 3837,
4152      3828, 3838, 3832, 3829, 3831, 3843, 3839, 3833, 3844, 3852,
4153         0, 3845, 3833, 3834, 3839, 3835, 3835, 3842, 3840, 3836,
4154      3845, 3837, 3847, 3838, 3836, 3856, 3837, 3843, 3838, 3848,
4155      3849, 3850, 3843, 3839, 3851, 3844, 3853, 3848, 3845, 3850,
4156      3854, 3852, 3851, 3858, 3853, 3847, 3859, 3861,    0, 3847,
4157      3849, 3856, 3856,    0, 3854, 3865, 3848, 3849, 3850, 3860,
4158      3862, 3851, 3860, 3853, 3863, 3858, 3864, 3854, 3862, 3861,
4159 
4160      3858, 3867, 3863, 3859, 3861, 3866, 3868, 3860, 3870, 3870,
4161      3864, 3865, 3865, 3871, 3872, 3867, 3860, 3862, 3873, 3860,
4162      3874, 3863, 3872, 3864, 3878, 3879, 3875, 3866, 3867, 3868,
4163      3876,    0, 3866, 3868, 3877, 3870, 3880, 3881, 3882, 3871,
4164      3871, 3872, 3877, 3890, 3873, 3873, 3874, 3874, 3875, 3883,
4165      3876, 3878, 3879, 3875, 3884, 3886, 3893, 3876, 3880, 3885,
4166      3887, 3877, 3881, 3880, 3881, 3882, 3894, 3885, 3887, 3883,
4167      3890, 3891, 3895, 3899, 3884, 3897, 3883, 3886, 3893, 3891,
4168      3895, 3884, 3886, 3893, 3896, 3903, 3885, 3887, 3894, 3900,
4169         0, 3902, 3896, 3894, 3904, 3901, 3906, 3900, 3891, 3895,
4170 
4171      3899, 3897, 3897, 3901, 3907, 3908, 3910, 3913, 3916, 3917,
4172         0, 3896, 3903,    0, 3904,    0, 3900, 3902, 3902, 3914,
4173         0, 3904, 3901, 3906,    0, 3908,    0, 3914, 3910, 3913,
4174      3915, 3907, 3908, 3910, 3913, 3916, 3917,    0, 3915,    0,
4175         0,    0,    0,    0,    0,    0, 3914,    0,    0,    0,
4176         0,    0,    0,    0,    0,    0,    0, 3915, 3921, 3921,
4177      3921, 3921, 3921, 3921, 3921, 3922, 3922, 3922, 3922, 3922,
4178      3922, 3922, 3923, 3923, 3923, 3923, 3923, 3923, 3923, 3924,
4179      3924, 3924, 3924, 3924, 3924, 3924, 3925, 3925, 3925, 3925,
4180      3925, 3925, 3925, 3926, 3926, 3926, 3926, 3926, 3926, 3926,
4181 
4182      3927, 3927, 3927, 3927, 3927, 3927, 3927, 3929, 3929,    0,
4183      3929, 3929, 3929, 3929, 3930, 3930,    0,    0,    0, 3930,
4184      3930, 3931, 3931,    0,    0, 3931,    0, 3931, 3932,    0,
4185         0,    0,    0,    0, 3932, 3933, 3933,    0,    0,    0,
4186      3933, 3933, 3934,    0,    0,    0,    0,    0, 3934, 3935,
4187      3935,    0, 3935, 3935, 3935, 3935, 3936,    0,    0,    0,
4188         0,    0, 3936, 3937, 3937,    0,    0,    0, 3937, 3937,
4189      3938, 3938,    0, 3938, 3938, 3938, 3938, 3920, 3920, 3920,
4190      3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920,
4191      3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920,
4192 
4193      3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920,
4194      3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920,
4195      3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920,
4196      3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920, 3920,
4197      3920, 3920, 3920, 3920
4198     } ;
4199 
4200 static yy_state_type yy_last_accepting_state;
4201 static char *yy_last_accepting_cpos;
4202 
4203 extern int yy_flex_debug;
4204 int yy_flex_debug = 0;
4205 
4206 /* The intent behind this definition is that it'll catch
4207  * any uses of REJECT which flex missed.
4208  */
4209 #define REJECT reject_used_but_not_detected
4210 static int yy_more_flag = 0;
4211 static int yy_more_len = 0;
4212 #define yymore() ((yy_more_flag) = 1)
4213 #define YY_MORE_ADJ (yy_more_len)
4214 #define YY_RESTORE_YY_MORE_OFFSET
4215 char *yytext;
4216 #line 1 "util/configlexer.lex"
4217 #line 2 "util/configlexer.lex"
4218 /*
4219  * configlexer.lex - lexical analyzer for unbound config file
4220  *
4221  * Copyright (c) 2001-2006, NLnet Labs. All rights reserved
4222  *
4223  * See LICENSE for the license.
4224  *
4225  */
4226 
4227 /* because flex keeps having sign-unsigned compare problems that are unfixed*/
4228 #if defined(__clang__)||(defined(__GNUC__)&&((__GNUC__ >4)||(defined(__GNUC_MINOR__)&&(__GNUC__ ==4)&&(__GNUC_MINOR__ >=2))))
4229 #pragma GCC diagnostic ignored "-Wsign-compare"
4230 #endif
4231 
4232 #include <ctype.h>
4233 #include <strings.h>
4234 #ifdef HAVE_GLOB_H
4235 # include <glob.h>
4236 #endif
4237 
4238 #include "util/config_file.h"
4239 #include "util/configparser.h"
4240 void ub_c_error(const char *message);
4241 
4242 #if 0
4243 #define LEXOUT(s)  printf s /* used ONLY when debugging */
4244 #else
4245 #define LEXOUT(s)
4246 #endif
4247 
4248 /** avoid warning in about fwrite return value */
4249 #define ECHO ub_c_error_msg("syntax error at text: %s", yytext)
4250 
4251 /** A parser variable, this is a statement in the config file which is
4252  * of the form variable: value1 value2 ...  nargs is the number of values. */
4253 #define YDVAR(nargs, var) \
4254 	num_args=(nargs); \
4255 	LEXOUT(("v(%s%d) ", yytext, num_args)); \
4256 	if(num_args > 0) { BEGIN(val); } \
4257 	return (var);
4258 
4259 struct inc_state {
4260 	char* filename;
4261 	int line;
4262 	YY_BUFFER_STATE buffer;
4263 	struct inc_state* next;
4264 	int inc_toplevel;
4265 };
4266 static struct inc_state* config_include_stack = NULL;
4267 static int inc_depth = 0;
4268 static int inc_prev = 0;
4269 static int num_args = 0;
4270 static int inc_toplevel = 0;
4271 
4272 void init_cfg_parse(void)
4273 {
4274 	config_include_stack = NULL;
4275 	inc_depth = 0;
4276 	inc_prev = 0;
4277 	num_args = 0;
4278 	inc_toplevel = 0;
4279 }
4280 
4281 static void config_start_include(const char* filename, int toplevel)
4282 {
4283 	FILE *input;
4284 	struct inc_state* s;
4285 	char* nm;
4286 	if(inc_depth+1 > 100000) {
4287 		ub_c_error_msg("too many include files");
4288 		return;
4289 	}
4290 	if(*filename == '\0') {
4291 		ub_c_error_msg("empty include file name");
4292 		return;
4293 	}
4294 	s = (struct inc_state*)malloc(sizeof(*s));
4295 	if(!s) {
4296 		ub_c_error_msg("include %s: malloc failure", filename);
4297 		return;
4298 	}
4299 	if(cfg_parser->chroot && strncmp(filename, cfg_parser->chroot,
4300 		strlen(cfg_parser->chroot)) == 0) {
4301 		filename += strlen(cfg_parser->chroot);
4302 	}
4303 	nm = strdup(filename);
4304 	if(!nm) {
4305 		ub_c_error_msg("include %s: strdup failure", filename);
4306 		free(s);
4307 		return;
4308 	}
4309 	input = fopen(filename, "r");
4310 	if(!input) {
4311 		ub_c_error_msg("cannot open include file '%s': %s",
4312 			filename, strerror(errno));
4313 		free(s);
4314 		free(nm);
4315 		return;
4316 	}
4317 	LEXOUT(("switch_to_include_file(%s)\n", filename));
4318 	inc_depth++;
4319 	s->filename = cfg_parser->filename;
4320 	s->line = cfg_parser->line;
4321 	s->buffer = YY_CURRENT_BUFFER;
4322 	s->inc_toplevel = inc_toplevel;
4323 	s->next = config_include_stack;
4324 	config_include_stack = s;
4325 	cfg_parser->filename = nm;
4326 	cfg_parser->line = 1;
4327 	inc_toplevel = toplevel;
4328 	yy_switch_to_buffer(yy_create_buffer(input, YY_BUF_SIZE));
4329 }
4330 
4331 static void config_start_include_glob(const char* filename, int toplevel)
4332 {
4333 
4334 	/* check for wildcards */
4335 #ifdef HAVE_GLOB
4336 	glob_t g;
4337 	int i, r, flags;
4338 	if(!(!strchr(filename, '*') && !strchr(filename, '?') && !strchr(filename, '[') &&
4339 		!strchr(filename, '{') && !strchr(filename, '~'))) {
4340 		flags = 0
4341 #ifdef GLOB_ERR
4342 			| GLOB_ERR
4343 #endif
4344 			 /* do not set GLOB_NOSORT so the results are sorted
4345 			    and in a predictable order. */
4346 #ifdef GLOB_BRACE
4347 			| GLOB_BRACE
4348 #endif
4349 #ifdef GLOB_TILDE
4350 			| GLOB_TILDE
4351 #endif
4352 		;
4353 		memset(&g, 0, sizeof(g));
4354 		if(cfg_parser->chroot && strncmp(filename, cfg_parser->chroot,
4355 			strlen(cfg_parser->chroot)) == 0) {
4356 			filename += strlen(cfg_parser->chroot);
4357 		}
4358 		r = glob(filename, flags, NULL, &g);
4359 		if(r) {
4360 			/* some error */
4361 			globfree(&g);
4362 			if(r == GLOB_NOMATCH)
4363 				return; /* no matches for pattern */
4364 			config_start_include(filename, toplevel); /* let original deal with it */
4365 			return;
4366 		}
4367 		/* process files found, if any */
4368 		for(i=(int)g.gl_pathc-1; i>=0; i--) {
4369 			config_start_include(g.gl_pathv[i], toplevel);
4370 		}
4371 		globfree(&g);
4372 		return;
4373 	}
4374 #endif /* HAVE_GLOB */
4375 
4376 	config_start_include(filename, toplevel);
4377 }
4378 
4379 static void config_end_include(void)
4380 {
4381 	struct inc_state* s = config_include_stack;
4382 	--inc_depth;
4383 	if(!s) return;
4384 	free(cfg_parser->filename);
4385 	cfg_parser->filename = s->filename;
4386 	cfg_parser->line = s->line;
4387 	yy_delete_buffer(YY_CURRENT_BUFFER);
4388 	yy_switch_to_buffer(s->buffer);
4389 	config_include_stack = s->next;
4390 	inc_toplevel = s->inc_toplevel;
4391 	free(s);
4392 }
4393 
4394 #ifndef yy_set_bol /* compat definition, for flex 2.4.6 */
4395 #define yy_set_bol(at_bol) \
4396         { \
4397 	        if ( ! yy_current_buffer ) \
4398 	                yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
4399 	        yy_current_buffer->yy_ch_buf[0] = ((at_bol)?'\n':' '); \
4400         }
4401 #endif
4402 
4403 #line 4401 "<stdout>"
4404 #define YY_NO_INPUT 1
4405 #line 191 "util/configlexer.lex"
4406 #ifndef YY_NO_UNPUT
4407 #define YY_NO_UNPUT 1
4408 #endif
4409 #ifndef YY_NO_INPUT
4410 #define YY_NO_INPUT 1
4411 #endif
4412 #line 4410 "<stdout>"
4413 
4414 #line 4412 "<stdout>"
4415 
4416 #define INITIAL 0
4417 #define quotedstring 1
4418 #define singlequotedstr 2
4419 #define include 3
4420 #define include_quoted 4
4421 #define val 5
4422 #define include_toplevel 6
4423 #define include_toplevel_quoted 7
4424 
4425 #ifndef YY_NO_UNISTD_H
4426 /* Special case for "unistd.h", since it is non-ANSI. We include it way
4427  * down here because we want the user's section 1 to have been scanned first.
4428  * The user has a chance to override it with an option.
4429  */
4430 #include <unistd.h>
4431 #endif
4432 
4433 #ifndef YY_EXTRA_TYPE
4434 #define YY_EXTRA_TYPE void *
4435 #endif
4436 
4437 static int yy_init_globals ( void );
4438 
4439 /* Accessor methods to globals.
4440    These are made visible to non-reentrant scanners for convenience. */
4441 
4442 int yylex_destroy ( void );
4443 
4444 int yyget_debug ( void );
4445 
4446 void yyset_debug ( int debug_flag  );
4447 
4448 YY_EXTRA_TYPE yyget_extra ( void );
4449 
4450 void yyset_extra ( YY_EXTRA_TYPE user_defined  );
4451 
4452 FILE *yyget_in ( void );
4453 
4454 void yyset_in  ( FILE * _in_str  );
4455 
4456 FILE *yyget_out ( void );
4457 
4458 void yyset_out  ( FILE * _out_str  );
4459 
4460 			int yyget_leng ( void );
4461 
4462 char *yyget_text ( void );
4463 
4464 int yyget_lineno ( void );
4465 
4466 void yyset_lineno ( int _line_number  );
4467 
4468 /* Macros after this point can all be overridden by user definitions in
4469  * section 1.
4470  */
4471 
4472 #ifndef YY_SKIP_YYWRAP
4473 #ifdef __cplusplus
4474 extern "C" int yywrap ( void );
4475 #else
4476 extern int yywrap ( void );
4477 #endif
4478 #endif
4479 
4480 #ifndef YY_NO_UNPUT
4481 
4482 #endif
4483 
4484 #ifndef yytext_ptr
4485 static void yy_flex_strncpy ( char *, const char *, int );
4486 #endif
4487 
4488 #ifdef YY_NEED_STRLEN
4489 static int yy_flex_strlen ( const char * );
4490 #endif
4491 
4492 #ifndef YY_NO_INPUT
4493 #ifdef __cplusplus
4494 static int yyinput ( void );
4495 #else
4496 static int input ( void );
4497 #endif
4498 
4499 #endif
4500 
4501 /* Amount of stuff to slurp up with each read. */
4502 #ifndef YY_READ_BUF_SIZE
4503 #ifdef __ia64__
4504 /* On IA-64, the buffer size is 16k, not 8k */
4505 #define YY_READ_BUF_SIZE 16384
4506 #else
4507 #define YY_READ_BUF_SIZE 8192
4508 #endif /* __ia64__ */
4509 #endif
4510 
4511 /* Copy whatever the last rule matched to the standard output. */
4512 #ifndef ECHO
4513 /* This used to be an fputs(), but since the string might contain NUL's,
4514  * we now use fwrite().
4515  */
4516 #define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)
4517 #endif
4518 
4519 /* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
4520  * is returned in "result".
4521  */
4522 #ifndef YY_INPUT
4523 #define YY_INPUT(buf,result,max_size) \
4524 	if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
4525 		{ \
4526 		int c = '*'; \
4527 		int n; \
4528 		for ( n = 0; n < max_size && \
4529 			     (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
4530 			buf[n] = (char) c; \
4531 		if ( c == '\n' ) \
4532 			buf[n++] = (char) c; \
4533 		if ( c == EOF && ferror( yyin ) ) \
4534 			YY_FATAL_ERROR( "input in flex scanner failed" ); \
4535 		result = n; \
4536 		} \
4537 	else \
4538 		{ \
4539 		errno=0; \
4540 		while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \
4541 			{ \
4542 			if( errno != EINTR) \
4543 				{ \
4544 				YY_FATAL_ERROR( "input in flex scanner failed" ); \
4545 				break; \
4546 				} \
4547 			errno=0; \
4548 			clearerr(yyin); \
4549 			} \
4550 		}\
4551 \
4552 
4553 #endif
4554 
4555 /* No semi-colon after return; correct usage is to write "yyterminate();" -
4556  * we don't want an extra ';' after the "return" because that will cause
4557  * some compilers to complain about unreachable statements.
4558  */
4559 #ifndef yyterminate
4560 #define yyterminate() return YY_NULL
4561 #endif
4562 
4563 /* Number of entries by which start-condition stack grows. */
4564 #ifndef YY_START_STACK_INCR
4565 #define YY_START_STACK_INCR 25
4566 #endif
4567 
4568 /* Report a fatal error. */
4569 #ifndef YY_FATAL_ERROR
4570 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
4571 #endif
4572 
4573 /* end tables serialization structures and prototypes */
4574 
4575 /* Default declaration of generated scanner - a define so the user can
4576  * easily add parameters.
4577  */
4578 #ifndef YY_DECL
4579 #define YY_DECL_IS_OURS 1
4580 
4581 extern int yylex (void);
4582 
4583 #define YY_DECL int yylex (void)
4584 #endif /* !YY_DECL */
4585 
4586 /* Code executed at the beginning of each rule, after yytext and yyleng
4587  * have been set up.
4588  */
4589 #ifndef YY_USER_ACTION
4590 #define YY_USER_ACTION
4591 #endif
4592 
4593 /* Code executed at the end of each rule. */
4594 #ifndef YY_BREAK
4595 #define YY_BREAK /*LINTED*/break;
4596 #endif
4597 
4598 #define YY_RULE_SETUP \
4599 	YY_USER_ACTION
4600 
4601 /** The main scanner function which does all the work.
4602  */
4603 YY_DECL
4604 {
4605 	yy_state_type yy_current_state;
4606 	char *yy_cp, *yy_bp;
4607 	int yy_act;
4608 
4609 	if ( !(yy_init) )
4610 		{
4611 		(yy_init) = 1;
4612 
4613 #ifdef YY_USER_INIT
4614 		YY_USER_INIT;
4615 #endif
4616 
4617 		if ( ! (yy_start) )
4618 			(yy_start) = 1;	/* first start state */
4619 
4620 		if ( ! yyin )
4621 			yyin = stdin;
4622 
4623 		if ( ! yyout )
4624 			yyout = stdout;
4625 
4626 		if ( ! YY_CURRENT_BUFFER ) {
4627 			yyensure_buffer_stack ();
4628 			YY_CURRENT_BUFFER_LVALUE =
4629 				yy_create_buffer( yyin, YY_BUF_SIZE );
4630 		}
4631 
4632 		yy_load_buffer_state(  );
4633 		}
4634 
4635 	{
4636 #line 211 "util/configlexer.lex"
4637 
4638 #line 4636 "<stdout>"
4639 
4640 	while ( /*CONSTCOND*/1 )		/* loops until end-of-file is reached */
4641 		{
4642 		(yy_more_len) = 0;
4643 		if ( (yy_more_flag) )
4644 			{
4645 			(yy_more_len) = (int) ((yy_c_buf_p) - (yytext_ptr));
4646 			(yy_more_flag) = 0;
4647 			}
4648 		yy_cp = (yy_c_buf_p);
4649 
4650 		/* Support of yytext. */
4651 		*yy_cp = (yy_hold_char);
4652 
4653 		/* yy_bp points to the position in yy_ch_buf of the start of
4654 		 * the current run.
4655 		 */
4656 		yy_bp = yy_cp;
4657 
4658 		yy_current_state = (yy_start);
4659 yy_match:
4660 		do
4661 			{
4662 			YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ;
4663 			if ( yy_accept[yy_current_state] )
4664 				{
4665 				(yy_last_accepting_state) = yy_current_state;
4666 				(yy_last_accepting_cpos) = yy_cp;
4667 				}
4668 			while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
4669 				{
4670 				yy_current_state = (int) yy_def[yy_current_state];
4671 				if ( yy_current_state >= 3921 )
4672 					yy_c = yy_meta[yy_c];
4673 				}
4674 			yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
4675 			++yy_cp;
4676 			}
4677 		while ( yy_base[yy_current_state] != 11178 );
4678 
4679 yy_find_action:
4680 		yy_act = yy_accept[yy_current_state];
4681 		if ( yy_act == 0 )
4682 			{ /* have to back up */
4683 			yy_cp = (yy_last_accepting_cpos);
4684 			yy_current_state = (yy_last_accepting_state);
4685 			yy_act = yy_accept[yy_current_state];
4686 			}
4687 
4688 		YY_DO_BEFORE_ACTION;
4689 
4690 do_action:	/* This label is used only to access EOF actions. */
4691 
4692 		switch ( yy_act )
4693 	{ /* beginning of action switch */
4694 			case 0: /* must back up */
4695 			/* undo the effects of YY_DO_BEFORE_ACTION */
4696 			*yy_cp = (yy_hold_char);
4697 			yy_cp = (yy_last_accepting_cpos);
4698 			yy_current_state = (yy_last_accepting_state);
4699 			goto yy_find_action;
4700 
4701 case 1:
4702 YY_RULE_SETUP
4703 #line 212 "util/configlexer.lex"
4704 {
4705 	LEXOUT(("SP ")); /* ignore */ }
4706 	YY_BREAK
4707 case 2:
4708 YY_RULE_SETUP
4709 #line 214 "util/configlexer.lex"
4710 {
4711 	/* note that flex makes the longest match and '.' is any but not nl */
4712 	LEXOUT(("comment(%s) ", yytext)); /* ignore */ }
4713 	YY_BREAK
4714 case 3:
4715 YY_RULE_SETUP
4716 #line 217 "util/configlexer.lex"
4717 { YDVAR(0, VAR_SERVER) }
4718 	YY_BREAK
4719 case 4:
4720 YY_RULE_SETUP
4721 #line 218 "util/configlexer.lex"
4722 { YDVAR(1, VAR_QNAME_MINIMISATION) }
4723 	YY_BREAK
4724 case 5:
4725 YY_RULE_SETUP
4726 #line 219 "util/configlexer.lex"
4727 { YDVAR(1, VAR_QNAME_MINIMISATION_STRICT) }
4728 	YY_BREAK
4729 case 6:
4730 YY_RULE_SETUP
4731 #line 220 "util/configlexer.lex"
4732 { YDVAR(1, VAR_NUM_THREADS) }
4733 	YY_BREAK
4734 case 7:
4735 YY_RULE_SETUP
4736 #line 221 "util/configlexer.lex"
4737 { YDVAR(1, VAR_VERBOSITY) }
4738 	YY_BREAK
4739 case 8:
4740 YY_RULE_SETUP
4741 #line 222 "util/configlexer.lex"
4742 { YDVAR(1, VAR_PORT) }
4743 	YY_BREAK
4744 case 9:
4745 YY_RULE_SETUP
4746 #line 223 "util/configlexer.lex"
4747 { YDVAR(1, VAR_OUTGOING_RANGE) }
4748 	YY_BREAK
4749 case 10:
4750 YY_RULE_SETUP
4751 #line 224 "util/configlexer.lex"
4752 { YDVAR(1, VAR_OUTGOING_PORT_PERMIT) }
4753 	YY_BREAK
4754 case 11:
4755 YY_RULE_SETUP
4756 #line 225 "util/configlexer.lex"
4757 { YDVAR(1, VAR_OUTGOING_PORT_AVOID) }
4758 	YY_BREAK
4759 case 12:
4760 YY_RULE_SETUP
4761 #line 226 "util/configlexer.lex"
4762 { YDVAR(1, VAR_OUTGOING_NUM_TCP) }
4763 	YY_BREAK
4764 case 13:
4765 YY_RULE_SETUP
4766 #line 227 "util/configlexer.lex"
4767 { YDVAR(1, VAR_INCOMING_NUM_TCP) }
4768 	YY_BREAK
4769 case 14:
4770 YY_RULE_SETUP
4771 #line 228 "util/configlexer.lex"
4772 { YDVAR(1, VAR_DO_IP4) }
4773 	YY_BREAK
4774 case 15:
4775 YY_RULE_SETUP
4776 #line 229 "util/configlexer.lex"
4777 { YDVAR(1, VAR_DO_IP6) }
4778 	YY_BREAK
4779 case 16:
4780 YY_RULE_SETUP
4781 #line 230 "util/configlexer.lex"
4782 { YDVAR(1, VAR_DO_NAT64) }
4783 	YY_BREAK
4784 case 17:
4785 YY_RULE_SETUP
4786 #line 231 "util/configlexer.lex"
4787 { YDVAR(1, VAR_PREFER_IP4) }
4788 	YY_BREAK
4789 case 18:
4790 YY_RULE_SETUP
4791 #line 232 "util/configlexer.lex"
4792 { YDVAR(1, VAR_PREFER_IP6) }
4793 	YY_BREAK
4794 case 19:
4795 YY_RULE_SETUP
4796 #line 233 "util/configlexer.lex"
4797 { YDVAR(1, VAR_DO_UDP) }
4798 	YY_BREAK
4799 case 20:
4800 YY_RULE_SETUP
4801 #line 234 "util/configlexer.lex"
4802 { YDVAR(1, VAR_DO_TCP) }
4803 	YY_BREAK
4804 case 21:
4805 YY_RULE_SETUP
4806 #line 235 "util/configlexer.lex"
4807 { YDVAR(1, VAR_TCP_UPSTREAM) }
4808 	YY_BREAK
4809 case 22:
4810 YY_RULE_SETUP
4811 #line 236 "util/configlexer.lex"
4812 { YDVAR(1, VAR_TCP_MSS) }
4813 	YY_BREAK
4814 case 23:
4815 YY_RULE_SETUP
4816 #line 237 "util/configlexer.lex"
4817 { YDVAR(1, VAR_OUTGOING_TCP_MSS) }
4818 	YY_BREAK
4819 case 24:
4820 YY_RULE_SETUP
4821 #line 238 "util/configlexer.lex"
4822 { YDVAR(1, VAR_TCP_IDLE_TIMEOUT) }
4823 	YY_BREAK
4824 case 25:
4825 YY_RULE_SETUP
4826 #line 239 "util/configlexer.lex"
4827 { YDVAR(1, VAR_MAX_REUSE_TCP_QUERIES) }
4828 	YY_BREAK
4829 case 26:
4830 YY_RULE_SETUP
4831 #line 240 "util/configlexer.lex"
4832 { YDVAR(1, VAR_TCP_REUSE_TIMEOUT) }
4833 	YY_BREAK
4834 case 27:
4835 YY_RULE_SETUP
4836 #line 241 "util/configlexer.lex"
4837 { YDVAR(1, VAR_TCP_AUTH_QUERY_TIMEOUT) }
4838 	YY_BREAK
4839 case 28:
4840 YY_RULE_SETUP
4841 #line 242 "util/configlexer.lex"
4842 { YDVAR(1, VAR_EDNS_TCP_KEEPALIVE) }
4843 	YY_BREAK
4844 case 29:
4845 YY_RULE_SETUP
4846 #line 243 "util/configlexer.lex"
4847 { YDVAR(1, VAR_EDNS_TCP_KEEPALIVE_TIMEOUT) }
4848 	YY_BREAK
4849 case 30:
4850 YY_RULE_SETUP
4851 #line 244 "util/configlexer.lex"
4852 { YDVAR(1, VAR_SOCK_QUEUE_TIMEOUT) }
4853 	YY_BREAK
4854 case 31:
4855 YY_RULE_SETUP
4856 #line 245 "util/configlexer.lex"
4857 { YDVAR(1, VAR_SSL_UPSTREAM) }
4858 	YY_BREAK
4859 case 32:
4860 YY_RULE_SETUP
4861 #line 246 "util/configlexer.lex"
4862 { YDVAR(1, VAR_SSL_UPSTREAM) }
4863 	YY_BREAK
4864 case 33:
4865 YY_RULE_SETUP
4866 #line 247 "util/configlexer.lex"
4867 { YDVAR(1, VAR_SSL_SERVICE_KEY) }
4868 	YY_BREAK
4869 case 34:
4870 YY_RULE_SETUP
4871 #line 248 "util/configlexer.lex"
4872 { YDVAR(1, VAR_SSL_SERVICE_KEY) }
4873 	YY_BREAK
4874 case 35:
4875 YY_RULE_SETUP
4876 #line 249 "util/configlexer.lex"
4877 { YDVAR(1, VAR_SSL_SERVICE_PEM) }
4878 	YY_BREAK
4879 case 36:
4880 YY_RULE_SETUP
4881 #line 250 "util/configlexer.lex"
4882 { YDVAR(1, VAR_SSL_SERVICE_PEM) }
4883 	YY_BREAK
4884 case 37:
4885 YY_RULE_SETUP
4886 #line 251 "util/configlexer.lex"
4887 { YDVAR(1, VAR_SSL_PORT) }
4888 	YY_BREAK
4889 case 38:
4890 YY_RULE_SETUP
4891 #line 252 "util/configlexer.lex"
4892 { YDVAR(1, VAR_SSL_PORT) }
4893 	YY_BREAK
4894 case 39:
4895 YY_RULE_SETUP
4896 #line 253 "util/configlexer.lex"
4897 { YDVAR(1, VAR_TLS_CERT_BUNDLE) }
4898 	YY_BREAK
4899 case 40:
4900 YY_RULE_SETUP
4901 #line 254 "util/configlexer.lex"
4902 { YDVAR(1, VAR_TLS_CERT_BUNDLE) }
4903 	YY_BREAK
4904 case 41:
4905 YY_RULE_SETUP
4906 #line 255 "util/configlexer.lex"
4907 { YDVAR(1, VAR_TLS_WIN_CERT) }
4908 	YY_BREAK
4909 case 42:
4910 YY_RULE_SETUP
4911 #line 256 "util/configlexer.lex"
4912 { YDVAR(1, VAR_TLS_WIN_CERT) }
4913 	YY_BREAK
4914 case 43:
4915 YY_RULE_SETUP
4916 #line 257 "util/configlexer.lex"
4917 { YDVAR(1, VAR_TLS_ADDITIONAL_PORT) }
4918 	YY_BREAK
4919 case 44:
4920 YY_RULE_SETUP
4921 #line 258 "util/configlexer.lex"
4922 { YDVAR(1, VAR_TLS_ADDITIONAL_PORT) }
4923 	YY_BREAK
4924 case 45:
4925 YY_RULE_SETUP
4926 #line 259 "util/configlexer.lex"
4927 { YDVAR(1, VAR_TLS_ADDITIONAL_PORT) }
4928 	YY_BREAK
4929 case 46:
4930 YY_RULE_SETUP
4931 #line 260 "util/configlexer.lex"
4932 { YDVAR(1, VAR_TLS_ADDITIONAL_PORT) }
4933 	YY_BREAK
4934 case 47:
4935 YY_RULE_SETUP
4936 #line 261 "util/configlexer.lex"
4937 { YDVAR(1, VAR_TLS_SESSION_TICKET_KEYS) }
4938 	YY_BREAK
4939 case 48:
4940 YY_RULE_SETUP
4941 #line 262 "util/configlexer.lex"
4942 { YDVAR(1, VAR_TLS_CIPHERS) }
4943 	YY_BREAK
4944 case 49:
4945 YY_RULE_SETUP
4946 #line 263 "util/configlexer.lex"
4947 { YDVAR(1, VAR_TLS_CIPHERSUITES) }
4948 	YY_BREAK
4949 case 50:
4950 YY_RULE_SETUP
4951 #line 264 "util/configlexer.lex"
4952 { YDVAR(1, VAR_TLS_USE_SNI) }
4953 	YY_BREAK
4954 case 51:
4955 YY_RULE_SETUP
4956 #line 265 "util/configlexer.lex"
4957 { YDVAR(1, VAR_HTTPS_PORT) }
4958 	YY_BREAK
4959 case 52:
4960 YY_RULE_SETUP
4961 #line 266 "util/configlexer.lex"
4962 { YDVAR(1, VAR_HTTP_ENDPOINT) }
4963 	YY_BREAK
4964 case 53:
4965 YY_RULE_SETUP
4966 #line 267 "util/configlexer.lex"
4967 { YDVAR(1, VAR_HTTP_MAX_STREAMS) }
4968 	YY_BREAK
4969 case 54:
4970 YY_RULE_SETUP
4971 #line 268 "util/configlexer.lex"
4972 { YDVAR(1, VAR_HTTP_QUERY_BUFFER_SIZE) }
4973 	YY_BREAK
4974 case 55:
4975 YY_RULE_SETUP
4976 #line 269 "util/configlexer.lex"
4977 { YDVAR(1, VAR_HTTP_RESPONSE_BUFFER_SIZE) }
4978 	YY_BREAK
4979 case 56:
4980 YY_RULE_SETUP
4981 #line 270 "util/configlexer.lex"
4982 { YDVAR(1, VAR_HTTP_NODELAY) }
4983 	YY_BREAK
4984 case 57:
4985 YY_RULE_SETUP
4986 #line 271 "util/configlexer.lex"
4987 { YDVAR(1, VAR_HTTP_NOTLS_DOWNSTREAM) }
4988 	YY_BREAK
4989 case 58:
4990 YY_RULE_SETUP
4991 #line 272 "util/configlexer.lex"
4992 { YDVAR(1, VAR_USE_SYSTEMD) }
4993 	YY_BREAK
4994 case 59:
4995 YY_RULE_SETUP
4996 #line 273 "util/configlexer.lex"
4997 { YDVAR(1, VAR_DO_DAEMONIZE) }
4998 	YY_BREAK
4999 case 60:
5000 YY_RULE_SETUP
5001 #line 274 "util/configlexer.lex"
5002 { YDVAR(1, VAR_INTERFACE) }
5003 	YY_BREAK
5004 case 61:
5005 YY_RULE_SETUP
5006 #line 275 "util/configlexer.lex"
5007 { YDVAR(1, VAR_INTERFACE) }
5008 	YY_BREAK
5009 case 62:
5010 YY_RULE_SETUP
5011 #line 276 "util/configlexer.lex"
5012 { YDVAR(1, VAR_OUTGOING_INTERFACE) }
5013 	YY_BREAK
5014 case 63:
5015 YY_RULE_SETUP
5016 #line 277 "util/configlexer.lex"
5017 { YDVAR(1, VAR_INTERFACE_AUTOMATIC) }
5018 	YY_BREAK
5019 case 64:
5020 YY_RULE_SETUP
5021 #line 278 "util/configlexer.lex"
5022 { YDVAR(1, VAR_INTERFACE_AUTOMATIC_PORTS) }
5023 	YY_BREAK
5024 case 65:
5025 YY_RULE_SETUP
5026 #line 279 "util/configlexer.lex"
5027 { YDVAR(1, VAR_SO_RCVBUF) }
5028 	YY_BREAK
5029 case 66:
5030 YY_RULE_SETUP
5031 #line 280 "util/configlexer.lex"
5032 { YDVAR(1, VAR_SO_SNDBUF) }
5033 	YY_BREAK
5034 case 67:
5035 YY_RULE_SETUP
5036 #line 281 "util/configlexer.lex"
5037 { YDVAR(1, VAR_SO_REUSEPORT) }
5038 	YY_BREAK
5039 case 68:
5040 YY_RULE_SETUP
5041 #line 282 "util/configlexer.lex"
5042 { YDVAR(1, VAR_IP_TRANSPARENT) }
5043 	YY_BREAK
5044 case 69:
5045 YY_RULE_SETUP
5046 #line 283 "util/configlexer.lex"
5047 { YDVAR(1, VAR_IP_FREEBIND) }
5048 	YY_BREAK
5049 case 70:
5050 YY_RULE_SETUP
5051 #line 284 "util/configlexer.lex"
5052 { YDVAR(1, VAR_IP_DSCP) }
5053 	YY_BREAK
5054 case 71:
5055 YY_RULE_SETUP
5056 #line 285 "util/configlexer.lex"
5057 { YDVAR(1, VAR_CHROOT) }
5058 	YY_BREAK
5059 case 72:
5060 YY_RULE_SETUP
5061 #line 286 "util/configlexer.lex"
5062 { YDVAR(1, VAR_USERNAME) }
5063 	YY_BREAK
5064 case 73:
5065 YY_RULE_SETUP
5066 #line 287 "util/configlexer.lex"
5067 { YDVAR(1, VAR_DIRECTORY) }
5068 	YY_BREAK
5069 case 74:
5070 YY_RULE_SETUP
5071 #line 288 "util/configlexer.lex"
5072 { YDVAR(1, VAR_LOGFILE) }
5073 	YY_BREAK
5074 case 75:
5075 YY_RULE_SETUP
5076 #line 289 "util/configlexer.lex"
5077 { YDVAR(1, VAR_PIDFILE) }
5078 	YY_BREAK
5079 case 76:
5080 YY_RULE_SETUP
5081 #line 290 "util/configlexer.lex"
5082 { YDVAR(1, VAR_ROOT_HINTS) }
5083 	YY_BREAK
5084 case 77:
5085 YY_RULE_SETUP
5086 #line 291 "util/configlexer.lex"
5087 { YDVAR(1, VAR_STREAM_WAIT_SIZE) }
5088 	YY_BREAK
5089 case 78:
5090 YY_RULE_SETUP
5091 #line 292 "util/configlexer.lex"
5092 { YDVAR(1, VAR_EDNS_BUFFER_SIZE) }
5093 	YY_BREAK
5094 case 79:
5095 YY_RULE_SETUP
5096 #line 293 "util/configlexer.lex"
5097 { YDVAR(1, VAR_MSG_BUFFER_SIZE) }
5098 	YY_BREAK
5099 case 80:
5100 YY_RULE_SETUP
5101 #line 294 "util/configlexer.lex"
5102 { YDVAR(1, VAR_MSG_CACHE_SIZE) }
5103 	YY_BREAK
5104 case 81:
5105 YY_RULE_SETUP
5106 #line 295 "util/configlexer.lex"
5107 { YDVAR(1, VAR_MSG_CACHE_SLABS) }
5108 	YY_BREAK
5109 case 82:
5110 YY_RULE_SETUP
5111 #line 296 "util/configlexer.lex"
5112 { YDVAR(1, VAR_RRSET_CACHE_SIZE) }
5113 	YY_BREAK
5114 case 83:
5115 YY_RULE_SETUP
5116 #line 297 "util/configlexer.lex"
5117 { YDVAR(1, VAR_RRSET_CACHE_SLABS) }
5118 	YY_BREAK
5119 case 84:
5120 YY_RULE_SETUP
5121 #line 298 "util/configlexer.lex"
5122 { YDVAR(1, VAR_CACHE_MAX_TTL) }
5123 	YY_BREAK
5124 case 85:
5125 YY_RULE_SETUP
5126 #line 299 "util/configlexer.lex"
5127 { YDVAR(1, VAR_CACHE_MAX_NEGATIVE_TTL) }
5128 	YY_BREAK
5129 case 86:
5130 YY_RULE_SETUP
5131 #line 300 "util/configlexer.lex"
5132 { YDVAR(1, VAR_CACHE_MIN_NEGATIVE_TTL) }
5133 	YY_BREAK
5134 case 87:
5135 YY_RULE_SETUP
5136 #line 301 "util/configlexer.lex"
5137 { YDVAR(1, VAR_CACHE_MIN_TTL) }
5138 	YY_BREAK
5139 case 88:
5140 YY_RULE_SETUP
5141 #line 302 "util/configlexer.lex"
5142 { YDVAR(1, VAR_INFRA_HOST_TTL) }
5143 	YY_BREAK
5144 case 89:
5145 YY_RULE_SETUP
5146 #line 303 "util/configlexer.lex"
5147 { YDVAR(1, VAR_INFRA_LAME_TTL) }
5148 	YY_BREAK
5149 case 90:
5150 YY_RULE_SETUP
5151 #line 304 "util/configlexer.lex"
5152 { YDVAR(1, VAR_INFRA_CACHE_SLABS) }
5153 	YY_BREAK
5154 case 91:
5155 YY_RULE_SETUP
5156 #line 305 "util/configlexer.lex"
5157 { YDVAR(1, VAR_INFRA_CACHE_NUMHOSTS) }
5158 	YY_BREAK
5159 case 92:
5160 YY_RULE_SETUP
5161 #line 306 "util/configlexer.lex"
5162 { YDVAR(1, VAR_INFRA_CACHE_LAME_SIZE) }
5163 	YY_BREAK
5164 case 93:
5165 YY_RULE_SETUP
5166 #line 307 "util/configlexer.lex"
5167 { YDVAR(1, VAR_INFRA_CACHE_MIN_RTT) }
5168 	YY_BREAK
5169 case 94:
5170 YY_RULE_SETUP
5171 #line 308 "util/configlexer.lex"
5172 { YDVAR(1, VAR_INFRA_CACHE_MAX_RTT) }
5173 	YY_BREAK
5174 case 95:
5175 YY_RULE_SETUP
5176 #line 309 "util/configlexer.lex"
5177 { YDVAR(1, VAR_INFRA_KEEP_PROBING) }
5178 	YY_BREAK
5179 case 96:
5180 YY_RULE_SETUP
5181 #line 310 "util/configlexer.lex"
5182 { YDVAR(1, VAR_NUM_QUERIES_PER_THREAD) }
5183 	YY_BREAK
5184 case 97:
5185 YY_RULE_SETUP
5186 #line 311 "util/configlexer.lex"
5187 { YDVAR(1, VAR_JOSTLE_TIMEOUT) }
5188 	YY_BREAK
5189 case 98:
5190 YY_RULE_SETUP
5191 #line 312 "util/configlexer.lex"
5192 { YDVAR(1, VAR_DELAY_CLOSE) }
5193 	YY_BREAK
5194 case 99:
5195 YY_RULE_SETUP
5196 #line 313 "util/configlexer.lex"
5197 { YDVAR(1, VAR_UDP_CONNECT) }
5198 	YY_BREAK
5199 case 100:
5200 YY_RULE_SETUP
5201 #line 314 "util/configlexer.lex"
5202 { YDVAR(1, VAR_TARGET_FETCH_POLICY) }
5203 	YY_BREAK
5204 case 101:
5205 YY_RULE_SETUP
5206 #line 315 "util/configlexer.lex"
5207 { YDVAR(1, VAR_HARDEN_SHORT_BUFSIZE) }
5208 	YY_BREAK
5209 case 102:
5210 YY_RULE_SETUP
5211 #line 316 "util/configlexer.lex"
5212 { YDVAR(1, VAR_HARDEN_LARGE_QUERIES) }
5213 	YY_BREAK
5214 case 103:
5215 YY_RULE_SETUP
5216 #line 317 "util/configlexer.lex"
5217 { YDVAR(1, VAR_HARDEN_GLUE) }
5218 	YY_BREAK
5219 case 104:
5220 YY_RULE_SETUP
5221 #line 318 "util/configlexer.lex"
5222 { YDVAR(1, VAR_HARDEN_DNSSEC_STRIPPED) }
5223 	YY_BREAK
5224 case 105:
5225 YY_RULE_SETUP
5226 #line 319 "util/configlexer.lex"
5227 { YDVAR(1, VAR_HARDEN_BELOW_NXDOMAIN) }
5228 	YY_BREAK
5229 case 106:
5230 YY_RULE_SETUP
5231 #line 320 "util/configlexer.lex"
5232 { YDVAR(1, VAR_HARDEN_REFERRAL_PATH) }
5233 	YY_BREAK
5234 case 107:
5235 YY_RULE_SETUP
5236 #line 321 "util/configlexer.lex"
5237 { YDVAR(1, VAR_HARDEN_ALGO_DOWNGRADE) }
5238 	YY_BREAK
5239 case 108:
5240 YY_RULE_SETUP
5241 #line 322 "util/configlexer.lex"
5242 { YDVAR(1, VAR_HARDEN_UNKNOWN_ADDITIONAL) }
5243 	YY_BREAK
5244 case 109:
5245 YY_RULE_SETUP
5246 #line 323 "util/configlexer.lex"
5247 { YDVAR(1, VAR_USE_CAPS_FOR_ID) }
5248 	YY_BREAK
5249 case 110:
5250 YY_RULE_SETUP
5251 #line 324 "util/configlexer.lex"
5252 { YDVAR(1, VAR_CAPS_WHITELIST) }
5253 	YY_BREAK
5254 case 111:
5255 YY_RULE_SETUP
5256 #line 325 "util/configlexer.lex"
5257 { YDVAR(1, VAR_CAPS_WHITELIST) }
5258 	YY_BREAK
5259 case 112:
5260 YY_RULE_SETUP
5261 #line 326 "util/configlexer.lex"
5262 { YDVAR(1, VAR_UNWANTED_REPLY_THRESHOLD) }
5263 	YY_BREAK
5264 case 113:
5265 YY_RULE_SETUP
5266 #line 327 "util/configlexer.lex"
5267 { YDVAR(1, VAR_PRIVATE_ADDRESS) }
5268 	YY_BREAK
5269 case 114:
5270 YY_RULE_SETUP
5271 #line 328 "util/configlexer.lex"
5272 { YDVAR(1, VAR_PRIVATE_DOMAIN) }
5273 	YY_BREAK
5274 case 115:
5275 YY_RULE_SETUP
5276 #line 329 "util/configlexer.lex"
5277 { YDVAR(1, VAR_PREFETCH_KEY) }
5278 	YY_BREAK
5279 case 116:
5280 YY_RULE_SETUP
5281 #line 330 "util/configlexer.lex"
5282 { YDVAR(1, VAR_PREFETCH) }
5283 	YY_BREAK
5284 case 117:
5285 YY_RULE_SETUP
5286 #line 331 "util/configlexer.lex"
5287 { YDVAR(1, VAR_DENY_ANY) }
5288 	YY_BREAK
5289 case 118:
5290 YY_RULE_SETUP
5291 #line 332 "util/configlexer.lex"
5292 { YDVAR(0, VAR_STUB_ZONE) }
5293 	YY_BREAK
5294 case 119:
5295 YY_RULE_SETUP
5296 #line 333 "util/configlexer.lex"
5297 { YDVAR(1, VAR_NAME) }
5298 	YY_BREAK
5299 case 120:
5300 YY_RULE_SETUP
5301 #line 334 "util/configlexer.lex"
5302 { YDVAR(1, VAR_STUB_ADDR) }
5303 	YY_BREAK
5304 case 121:
5305 YY_RULE_SETUP
5306 #line 335 "util/configlexer.lex"
5307 { YDVAR(1, VAR_STUB_HOST) }
5308 	YY_BREAK
5309 case 122:
5310 YY_RULE_SETUP
5311 #line 336 "util/configlexer.lex"
5312 { YDVAR(1, VAR_STUB_PRIME) }
5313 	YY_BREAK
5314 case 123:
5315 YY_RULE_SETUP
5316 #line 337 "util/configlexer.lex"
5317 { YDVAR(1, VAR_STUB_FIRST) }
5318 	YY_BREAK
5319 case 124:
5320 YY_RULE_SETUP
5321 #line 338 "util/configlexer.lex"
5322 { YDVAR(1, VAR_STUB_NO_CACHE) }
5323 	YY_BREAK
5324 case 125:
5325 YY_RULE_SETUP
5326 #line 339 "util/configlexer.lex"
5327 { YDVAR(1, VAR_STUB_SSL_UPSTREAM) }
5328 	YY_BREAK
5329 case 126:
5330 YY_RULE_SETUP
5331 #line 340 "util/configlexer.lex"
5332 { YDVAR(1, VAR_STUB_SSL_UPSTREAM) }
5333 	YY_BREAK
5334 case 127:
5335 YY_RULE_SETUP
5336 #line 341 "util/configlexer.lex"
5337 { YDVAR(1, VAR_STUB_TCP_UPSTREAM) }
5338 	YY_BREAK
5339 case 128:
5340 YY_RULE_SETUP
5341 #line 342 "util/configlexer.lex"
5342 { YDVAR(0, VAR_FORWARD_ZONE) }
5343 	YY_BREAK
5344 case 129:
5345 YY_RULE_SETUP
5346 #line 343 "util/configlexer.lex"
5347 { YDVAR(1, VAR_FORWARD_ADDR) }
5348 	YY_BREAK
5349 case 130:
5350 YY_RULE_SETUP
5351 #line 344 "util/configlexer.lex"
5352 { YDVAR(1, VAR_FORWARD_HOST) }
5353 	YY_BREAK
5354 case 131:
5355 YY_RULE_SETUP
5356 #line 345 "util/configlexer.lex"
5357 { YDVAR(1, VAR_FORWARD_FIRST) }
5358 	YY_BREAK
5359 case 132:
5360 YY_RULE_SETUP
5361 #line 346 "util/configlexer.lex"
5362 { YDVAR(1, VAR_FORWARD_NO_CACHE) }
5363 	YY_BREAK
5364 case 133:
5365 YY_RULE_SETUP
5366 #line 347 "util/configlexer.lex"
5367 { YDVAR(1, VAR_FORWARD_SSL_UPSTREAM) }
5368 	YY_BREAK
5369 case 134:
5370 YY_RULE_SETUP
5371 #line 348 "util/configlexer.lex"
5372 { YDVAR(1, VAR_FORWARD_SSL_UPSTREAM) }
5373 	YY_BREAK
5374 case 135:
5375 YY_RULE_SETUP
5376 #line 349 "util/configlexer.lex"
5377 { YDVAR(1, VAR_FORWARD_TCP_UPSTREAM) }
5378 	YY_BREAK
5379 case 136:
5380 YY_RULE_SETUP
5381 #line 350 "util/configlexer.lex"
5382 { YDVAR(0, VAR_AUTH_ZONE) }
5383 	YY_BREAK
5384 case 137:
5385 YY_RULE_SETUP
5386 #line 351 "util/configlexer.lex"
5387 { YDVAR(0, VAR_RPZ) }
5388 	YY_BREAK
5389 case 138:
5390 YY_RULE_SETUP
5391 #line 352 "util/configlexer.lex"
5392 { YDVAR(1, VAR_TAGS) }
5393 	YY_BREAK
5394 case 139:
5395 YY_RULE_SETUP
5396 #line 353 "util/configlexer.lex"
5397 { YDVAR(1, VAR_RPZ_ACTION_OVERRIDE) }
5398 	YY_BREAK
5399 case 140:
5400 YY_RULE_SETUP
5401 #line 354 "util/configlexer.lex"
5402 { YDVAR(1, VAR_RPZ_CNAME_OVERRIDE) }
5403 	YY_BREAK
5404 case 141:
5405 YY_RULE_SETUP
5406 #line 355 "util/configlexer.lex"
5407 { YDVAR(1, VAR_RPZ_LOG) }
5408 	YY_BREAK
5409 case 142:
5410 YY_RULE_SETUP
5411 #line 356 "util/configlexer.lex"
5412 { YDVAR(1, VAR_RPZ_LOG_NAME) }
5413 	YY_BREAK
5414 case 143:
5415 YY_RULE_SETUP
5416 #line 357 "util/configlexer.lex"
5417 { YDVAR(1, VAR_RPZ_SIGNAL_NXDOMAIN_RA) }
5418 	YY_BREAK
5419 case 144:
5420 YY_RULE_SETUP
5421 #line 358 "util/configlexer.lex"
5422 { YDVAR(1, VAR_ZONEFILE) }
5423 	YY_BREAK
5424 case 145:
5425 YY_RULE_SETUP
5426 #line 359 "util/configlexer.lex"
5427 { YDVAR(1, VAR_MASTER) }
5428 	YY_BREAK
5429 case 146:
5430 YY_RULE_SETUP
5431 #line 360 "util/configlexer.lex"
5432 { YDVAR(1, VAR_MASTER) }
5433 	YY_BREAK
5434 case 147:
5435 YY_RULE_SETUP
5436 #line 361 "util/configlexer.lex"
5437 { YDVAR(1, VAR_URL) }
5438 	YY_BREAK
5439 case 148:
5440 YY_RULE_SETUP
5441 #line 362 "util/configlexer.lex"
5442 { YDVAR(1, VAR_ALLOW_NOTIFY) }
5443 	YY_BREAK
5444 case 149:
5445 YY_RULE_SETUP
5446 #line 363 "util/configlexer.lex"
5447 { YDVAR(1, VAR_FOR_DOWNSTREAM) }
5448 	YY_BREAK
5449 case 150:
5450 YY_RULE_SETUP
5451 #line 364 "util/configlexer.lex"
5452 { YDVAR(1, VAR_FOR_UPSTREAM) }
5453 	YY_BREAK
5454 case 151:
5455 YY_RULE_SETUP
5456 #line 365 "util/configlexer.lex"
5457 { YDVAR(1, VAR_FALLBACK_ENABLED) }
5458 	YY_BREAK
5459 case 152:
5460 YY_RULE_SETUP
5461 #line 366 "util/configlexer.lex"
5462 { YDVAR(0, VAR_VIEW) }
5463 	YY_BREAK
5464 case 153:
5465 YY_RULE_SETUP
5466 #line 367 "util/configlexer.lex"
5467 { YDVAR(1, VAR_VIEW_FIRST) }
5468 	YY_BREAK
5469 case 154:
5470 YY_RULE_SETUP
5471 #line 368 "util/configlexer.lex"
5472 { YDVAR(1, VAR_DO_NOT_QUERY_ADDRESS) }
5473 	YY_BREAK
5474 case 155:
5475 YY_RULE_SETUP
5476 #line 369 "util/configlexer.lex"
5477 { YDVAR(1, VAR_DO_NOT_QUERY_LOCALHOST) }
5478 	YY_BREAK
5479 case 156:
5480 YY_RULE_SETUP
5481 #line 370 "util/configlexer.lex"
5482 { YDVAR(2, VAR_ACCESS_CONTROL) }
5483 	YY_BREAK
5484 case 157:
5485 YY_RULE_SETUP
5486 #line 371 "util/configlexer.lex"
5487 { YDVAR(2, VAR_INTERFACE_ACTION) }
5488 	YY_BREAK
5489 case 158:
5490 YY_RULE_SETUP
5491 #line 372 "util/configlexer.lex"
5492 { YDVAR(1, VAR_SEND_CLIENT_SUBNET) }
5493 	YY_BREAK
5494 case 159:
5495 YY_RULE_SETUP
5496 #line 373 "util/configlexer.lex"
5497 { YDVAR(1, VAR_CLIENT_SUBNET_ZONE) }
5498 	YY_BREAK
5499 case 160:
5500 YY_RULE_SETUP
5501 #line 374 "util/configlexer.lex"
5502 { YDVAR(1, VAR_CLIENT_SUBNET_ALWAYS_FORWARD) }
5503 	YY_BREAK
5504 case 161:
5505 YY_RULE_SETUP
5506 #line 375 "util/configlexer.lex"
5507 { YDVAR(1, VAR_CLIENT_SUBNET_OPCODE) }
5508 	YY_BREAK
5509 case 162:
5510 YY_RULE_SETUP
5511 #line 376 "util/configlexer.lex"
5512 { YDVAR(1, VAR_MAX_CLIENT_SUBNET_IPV4) }
5513 	YY_BREAK
5514 case 163:
5515 YY_RULE_SETUP
5516 #line 377 "util/configlexer.lex"
5517 { YDVAR(1, VAR_MAX_CLIENT_SUBNET_IPV6) }
5518 	YY_BREAK
5519 case 164:
5520 YY_RULE_SETUP
5521 #line 378 "util/configlexer.lex"
5522 { YDVAR(1, VAR_MIN_CLIENT_SUBNET_IPV4) }
5523 	YY_BREAK
5524 case 165:
5525 YY_RULE_SETUP
5526 #line 379 "util/configlexer.lex"
5527 { YDVAR(1, VAR_MIN_CLIENT_SUBNET_IPV6) }
5528 	YY_BREAK
5529 case 166:
5530 YY_RULE_SETUP
5531 #line 380 "util/configlexer.lex"
5532 { YDVAR(1, VAR_MAX_ECS_TREE_SIZE_IPV4) }
5533 	YY_BREAK
5534 case 167:
5535 YY_RULE_SETUP
5536 #line 381 "util/configlexer.lex"
5537 { YDVAR(1, VAR_MAX_ECS_TREE_SIZE_IPV6) }
5538 	YY_BREAK
5539 case 168:
5540 YY_RULE_SETUP
5541 #line 382 "util/configlexer.lex"
5542 { YDVAR(1, VAR_HIDE_IDENTITY) }
5543 	YY_BREAK
5544 case 169:
5545 YY_RULE_SETUP
5546 #line 383 "util/configlexer.lex"
5547 { YDVAR(1, VAR_HIDE_VERSION) }
5548 	YY_BREAK
5549 case 170:
5550 YY_RULE_SETUP
5551 #line 384 "util/configlexer.lex"
5552 { YDVAR(1, VAR_HIDE_TRUSTANCHOR) }
5553 	YY_BREAK
5554 case 171:
5555 YY_RULE_SETUP
5556 #line 385 "util/configlexer.lex"
5557 { YDVAR(1, VAR_HIDE_HTTP_USER_AGENT) }
5558 	YY_BREAK
5559 case 172:
5560 YY_RULE_SETUP
5561 #line 386 "util/configlexer.lex"
5562 { YDVAR(1, VAR_IDENTITY) }
5563 	YY_BREAK
5564 case 173:
5565 YY_RULE_SETUP
5566 #line 387 "util/configlexer.lex"
5567 { YDVAR(1, VAR_VERSION) }
5568 	YY_BREAK
5569 case 174:
5570 YY_RULE_SETUP
5571 #line 388 "util/configlexer.lex"
5572 { YDVAR(1, VAR_HTTP_USER_AGENT) }
5573 	YY_BREAK
5574 case 175:
5575 YY_RULE_SETUP
5576 #line 389 "util/configlexer.lex"
5577 { YDVAR(1, VAR_MODULE_CONF) }
5578 	YY_BREAK
5579 case 176:
5580 YY_RULE_SETUP
5581 #line 390 "util/configlexer.lex"
5582 { YDVAR(1, VAR_DLV_ANCHOR) }
5583 	YY_BREAK
5584 case 177:
5585 YY_RULE_SETUP
5586 #line 391 "util/configlexer.lex"
5587 { YDVAR(1, VAR_DLV_ANCHOR_FILE) }
5588 	YY_BREAK
5589 case 178:
5590 YY_RULE_SETUP
5591 #line 392 "util/configlexer.lex"
5592 { YDVAR(1, VAR_TRUST_ANCHOR_FILE) }
5593 	YY_BREAK
5594 case 179:
5595 YY_RULE_SETUP
5596 #line 393 "util/configlexer.lex"
5597 { YDVAR(1, VAR_AUTO_TRUST_ANCHOR_FILE) }
5598 	YY_BREAK
5599 case 180:
5600 YY_RULE_SETUP
5601 #line 394 "util/configlexer.lex"
5602 { YDVAR(1, VAR_TRUSTED_KEYS_FILE) }
5603 	YY_BREAK
5604 case 181:
5605 YY_RULE_SETUP
5606 #line 395 "util/configlexer.lex"
5607 { YDVAR(1, VAR_TRUST_ANCHOR) }
5608 	YY_BREAK
5609 case 182:
5610 YY_RULE_SETUP
5611 #line 396 "util/configlexer.lex"
5612 { YDVAR(1, VAR_TRUST_ANCHOR_SIGNALING) }
5613 	YY_BREAK
5614 case 183:
5615 YY_RULE_SETUP
5616 #line 397 "util/configlexer.lex"
5617 { YDVAR(1, VAR_ROOT_KEY_SENTINEL) }
5618 	YY_BREAK
5619 case 184:
5620 YY_RULE_SETUP
5621 #line 398 "util/configlexer.lex"
5622 { YDVAR(1, VAR_VAL_OVERRIDE_DATE) }
5623 	YY_BREAK
5624 case 185:
5625 YY_RULE_SETUP
5626 #line 399 "util/configlexer.lex"
5627 { YDVAR(1, VAR_VAL_SIG_SKEW_MIN) }
5628 	YY_BREAK
5629 case 186:
5630 YY_RULE_SETUP
5631 #line 400 "util/configlexer.lex"
5632 { YDVAR(1, VAR_VAL_SIG_SKEW_MAX) }
5633 	YY_BREAK
5634 case 187:
5635 YY_RULE_SETUP
5636 #line 401 "util/configlexer.lex"
5637 { YDVAR(1, VAR_VAL_MAX_RESTART) }
5638 	YY_BREAK
5639 case 188:
5640 YY_RULE_SETUP
5641 #line 402 "util/configlexer.lex"
5642 { YDVAR(1, VAR_BOGUS_TTL) }
5643 	YY_BREAK
5644 case 189:
5645 YY_RULE_SETUP
5646 #line 403 "util/configlexer.lex"
5647 { YDVAR(1, VAR_VAL_CLEAN_ADDITIONAL) }
5648 	YY_BREAK
5649 case 190:
5650 YY_RULE_SETUP
5651 #line 404 "util/configlexer.lex"
5652 { YDVAR(1, VAR_VAL_PERMISSIVE_MODE) }
5653 	YY_BREAK
5654 case 191:
5655 YY_RULE_SETUP
5656 #line 405 "util/configlexer.lex"
5657 { YDVAR(1, VAR_AGGRESSIVE_NSEC) }
5658 	YY_BREAK
5659 case 192:
5660 YY_RULE_SETUP
5661 #line 406 "util/configlexer.lex"
5662 { YDVAR(1, VAR_IGNORE_CD_FLAG) }
5663 	YY_BREAK
5664 case 193:
5665 YY_RULE_SETUP
5666 #line 407 "util/configlexer.lex"
5667 { YDVAR(1, VAR_DISABLE_EDNS_DO) }
5668 	YY_BREAK
5669 case 194:
5670 YY_RULE_SETUP
5671 #line 408 "util/configlexer.lex"
5672 { YDVAR(1, VAR_SERVE_EXPIRED) }
5673 	YY_BREAK
5674 case 195:
5675 YY_RULE_SETUP
5676 #line 409 "util/configlexer.lex"
5677 { YDVAR(1, VAR_SERVE_EXPIRED_TTL) }
5678 	YY_BREAK
5679 case 196:
5680 YY_RULE_SETUP
5681 #line 410 "util/configlexer.lex"
5682 { YDVAR(1, VAR_SERVE_EXPIRED_TTL_RESET) }
5683 	YY_BREAK
5684 case 197:
5685 YY_RULE_SETUP
5686 #line 411 "util/configlexer.lex"
5687 { YDVAR(1, VAR_SERVE_EXPIRED_REPLY_TTL) }
5688 	YY_BREAK
5689 case 198:
5690 YY_RULE_SETUP
5691 #line 412 "util/configlexer.lex"
5692 { YDVAR(1, VAR_SERVE_EXPIRED_CLIENT_TIMEOUT) }
5693 	YY_BREAK
5694 case 199:
5695 YY_RULE_SETUP
5696 #line 413 "util/configlexer.lex"
5697 { YDVAR(1, VAR_EDE_SERVE_EXPIRED) }
5698 	YY_BREAK
5699 case 200:
5700 YY_RULE_SETUP
5701 #line 414 "util/configlexer.lex"
5702 { YDVAR(1, VAR_SERVE_ORIGINAL_TTL) }
5703 	YY_BREAK
5704 case 201:
5705 YY_RULE_SETUP
5706 #line 415 "util/configlexer.lex"
5707 { YDVAR(1, VAR_FAKE_DSA) }
5708 	YY_BREAK
5709 case 202:
5710 YY_RULE_SETUP
5711 #line 416 "util/configlexer.lex"
5712 { YDVAR(1, VAR_FAKE_SHA1) }
5713 	YY_BREAK
5714 case 203:
5715 YY_RULE_SETUP
5716 #line 417 "util/configlexer.lex"
5717 { YDVAR(1, VAR_VAL_LOG_LEVEL) }
5718 	YY_BREAK
5719 case 204:
5720 YY_RULE_SETUP
5721 #line 418 "util/configlexer.lex"
5722 { YDVAR(1, VAR_KEY_CACHE_SIZE) }
5723 	YY_BREAK
5724 case 205:
5725 YY_RULE_SETUP
5726 #line 419 "util/configlexer.lex"
5727 { YDVAR(1, VAR_KEY_CACHE_SLABS) }
5728 	YY_BREAK
5729 case 206:
5730 YY_RULE_SETUP
5731 #line 420 "util/configlexer.lex"
5732 { YDVAR(1, VAR_NEG_CACHE_SIZE) }
5733 	YY_BREAK
5734 case 207:
5735 YY_RULE_SETUP
5736 #line 421 "util/configlexer.lex"
5737 {
5738 				  YDVAR(1, VAR_VAL_NSEC3_KEYSIZE_ITERATIONS) }
5739 	YY_BREAK
5740 case 208:
5741 YY_RULE_SETUP
5742 #line 423 "util/configlexer.lex"
5743 { YDVAR(1, VAR_ZONEMD_PERMISSIVE_MODE) }
5744 	YY_BREAK
5745 case 209:
5746 YY_RULE_SETUP
5747 #line 424 "util/configlexer.lex"
5748 { YDVAR(1, VAR_ZONEMD_CHECK) }
5749 	YY_BREAK
5750 case 210:
5751 YY_RULE_SETUP
5752 #line 425 "util/configlexer.lex"
5753 { YDVAR(1, VAR_ZONEMD_REJECT_ABSENCE) }
5754 	YY_BREAK
5755 case 211:
5756 YY_RULE_SETUP
5757 #line 426 "util/configlexer.lex"
5758 { YDVAR(1, VAR_ADD_HOLDDOWN) }
5759 	YY_BREAK
5760 case 212:
5761 YY_RULE_SETUP
5762 #line 427 "util/configlexer.lex"
5763 { YDVAR(1, VAR_DEL_HOLDDOWN) }
5764 	YY_BREAK
5765 case 213:
5766 YY_RULE_SETUP
5767 #line 428 "util/configlexer.lex"
5768 { YDVAR(1, VAR_KEEP_MISSING) }
5769 	YY_BREAK
5770 case 214:
5771 YY_RULE_SETUP
5772 #line 429 "util/configlexer.lex"
5773 { YDVAR(1, VAR_PERMIT_SMALL_HOLDDOWN) }
5774 	YY_BREAK
5775 case 215:
5776 YY_RULE_SETUP
5777 #line 430 "util/configlexer.lex"
5778 { YDVAR(1, VAR_USE_SYSLOG) }
5779 	YY_BREAK
5780 case 216:
5781 YY_RULE_SETUP
5782 #line 431 "util/configlexer.lex"
5783 { YDVAR(1, VAR_LOG_IDENTITY) }
5784 	YY_BREAK
5785 case 217:
5786 YY_RULE_SETUP
5787 #line 432 "util/configlexer.lex"
5788 { YDVAR(1, VAR_LOG_TIME_ASCII) }
5789 	YY_BREAK
5790 case 218:
5791 YY_RULE_SETUP
5792 #line 433 "util/configlexer.lex"
5793 { YDVAR(1, VAR_LOG_QUERIES) }
5794 	YY_BREAK
5795 case 219:
5796 YY_RULE_SETUP
5797 #line 434 "util/configlexer.lex"
5798 { YDVAR(1, VAR_LOG_REPLIES) }
5799 	YY_BREAK
5800 case 220:
5801 YY_RULE_SETUP
5802 #line 435 "util/configlexer.lex"
5803 { YDVAR(1, VAR_LOG_TAG_QUERYREPLY) }
5804 	YY_BREAK
5805 case 221:
5806 YY_RULE_SETUP
5807 #line 436 "util/configlexer.lex"
5808 { YDVAR(1, VAR_LOG_LOCAL_ACTIONS) }
5809 	YY_BREAK
5810 case 222:
5811 YY_RULE_SETUP
5812 #line 437 "util/configlexer.lex"
5813 { YDVAR(1, VAR_LOG_SERVFAIL) }
5814 	YY_BREAK
5815 case 223:
5816 YY_RULE_SETUP
5817 #line 438 "util/configlexer.lex"
5818 { YDVAR(1, VAR_LOG_DESTADDR) }
5819 	YY_BREAK
5820 case 224:
5821 YY_RULE_SETUP
5822 #line 439 "util/configlexer.lex"
5823 { YDVAR(2, VAR_LOCAL_ZONE) }
5824 	YY_BREAK
5825 case 225:
5826 YY_RULE_SETUP
5827 #line 440 "util/configlexer.lex"
5828 { YDVAR(1, VAR_LOCAL_DATA) }
5829 	YY_BREAK
5830 case 226:
5831 YY_RULE_SETUP
5832 #line 441 "util/configlexer.lex"
5833 { YDVAR(1, VAR_LOCAL_DATA_PTR) }
5834 	YY_BREAK
5835 case 227:
5836 YY_RULE_SETUP
5837 #line 442 "util/configlexer.lex"
5838 { YDVAR(1, VAR_UNBLOCK_LAN_ZONES) }
5839 	YY_BREAK
5840 case 228:
5841 YY_RULE_SETUP
5842 #line 443 "util/configlexer.lex"
5843 { YDVAR(1, VAR_INSECURE_LAN_ZONES) }
5844 	YY_BREAK
5845 case 229:
5846 YY_RULE_SETUP
5847 #line 444 "util/configlexer.lex"
5848 { YDVAR(1, VAR_STATISTICS_INTERVAL) }
5849 	YY_BREAK
5850 case 230:
5851 YY_RULE_SETUP
5852 #line 445 "util/configlexer.lex"
5853 { YDVAR(1, VAR_STATISTICS_CUMULATIVE) }
5854 	YY_BREAK
5855 case 231:
5856 YY_RULE_SETUP
5857 #line 446 "util/configlexer.lex"
5858 { YDVAR(1, VAR_EXTENDED_STATISTICS) }
5859 	YY_BREAK
5860 case 232:
5861 YY_RULE_SETUP
5862 #line 447 "util/configlexer.lex"
5863 { YDVAR(1, VAR_STATISTICS_INHIBIT_ZERO) }
5864 	YY_BREAK
5865 case 233:
5866 YY_RULE_SETUP
5867 #line 448 "util/configlexer.lex"
5868 { YDVAR(1, VAR_SHM_ENABLE) }
5869 	YY_BREAK
5870 case 234:
5871 YY_RULE_SETUP
5872 #line 449 "util/configlexer.lex"
5873 { YDVAR(1, VAR_SHM_KEY) }
5874 	YY_BREAK
5875 case 235:
5876 YY_RULE_SETUP
5877 #line 450 "util/configlexer.lex"
5878 { YDVAR(0, VAR_REMOTE_CONTROL) }
5879 	YY_BREAK
5880 case 236:
5881 YY_RULE_SETUP
5882 #line 451 "util/configlexer.lex"
5883 { YDVAR(1, VAR_CONTROL_ENABLE) }
5884 	YY_BREAK
5885 case 237:
5886 YY_RULE_SETUP
5887 #line 452 "util/configlexer.lex"
5888 { YDVAR(1, VAR_CONTROL_INTERFACE) }
5889 	YY_BREAK
5890 case 238:
5891 YY_RULE_SETUP
5892 #line 453 "util/configlexer.lex"
5893 { YDVAR(1, VAR_CONTROL_PORT) }
5894 	YY_BREAK
5895 case 239:
5896 YY_RULE_SETUP
5897 #line 454 "util/configlexer.lex"
5898 { YDVAR(1, VAR_CONTROL_USE_CERT) }
5899 	YY_BREAK
5900 case 240:
5901 YY_RULE_SETUP
5902 #line 455 "util/configlexer.lex"
5903 { YDVAR(1, VAR_SERVER_KEY_FILE) }
5904 	YY_BREAK
5905 case 241:
5906 YY_RULE_SETUP
5907 #line 456 "util/configlexer.lex"
5908 { YDVAR(1, VAR_SERVER_CERT_FILE) }
5909 	YY_BREAK
5910 case 242:
5911 YY_RULE_SETUP
5912 #line 457 "util/configlexer.lex"
5913 { YDVAR(1, VAR_CONTROL_KEY_FILE) }
5914 	YY_BREAK
5915 case 243:
5916 YY_RULE_SETUP
5917 #line 458 "util/configlexer.lex"
5918 { YDVAR(1, VAR_CONTROL_CERT_FILE) }
5919 	YY_BREAK
5920 case 244:
5921 YY_RULE_SETUP
5922 #line 459 "util/configlexer.lex"
5923 { YDVAR(1, VAR_PYTHON_SCRIPT) }
5924 	YY_BREAK
5925 case 245:
5926 YY_RULE_SETUP
5927 #line 460 "util/configlexer.lex"
5928 { YDVAR(0, VAR_PYTHON) }
5929 	YY_BREAK
5930 case 246:
5931 YY_RULE_SETUP
5932 #line 461 "util/configlexer.lex"
5933 { YDVAR(1, VAR_DYNLIB_FILE) }
5934 	YY_BREAK
5935 case 247:
5936 YY_RULE_SETUP
5937 #line 462 "util/configlexer.lex"
5938 { YDVAR(0, VAR_DYNLIB) }
5939 	YY_BREAK
5940 case 248:
5941 YY_RULE_SETUP
5942 #line 463 "util/configlexer.lex"
5943 { YDVAR(1, VAR_DOMAIN_INSECURE) }
5944 	YY_BREAK
5945 case 249:
5946 YY_RULE_SETUP
5947 #line 464 "util/configlexer.lex"
5948 { YDVAR(1, VAR_MINIMAL_RESPONSES) }
5949 	YY_BREAK
5950 case 250:
5951 YY_RULE_SETUP
5952 #line 465 "util/configlexer.lex"
5953 { YDVAR(1, VAR_RRSET_ROUNDROBIN) }
5954 	YY_BREAK
5955 case 251:
5956 YY_RULE_SETUP
5957 #line 466 "util/configlexer.lex"
5958 { YDVAR(1, VAR_UNKNOWN_SERVER_TIME_LIMIT) }
5959 	YY_BREAK
5960 case 252:
5961 YY_RULE_SETUP
5962 #line 467 "util/configlexer.lex"
5963 { YDVAR(1, VAR_DISCARD_TIMEOUT) }
5964 	YY_BREAK
5965 case 253:
5966 YY_RULE_SETUP
5967 #line 468 "util/configlexer.lex"
5968 { YDVAR(1, VAR_WAIT_LIMIT) }
5969 	YY_BREAK
5970 case 254:
5971 YY_RULE_SETUP
5972 #line 469 "util/configlexer.lex"
5973 { YDVAR(1, VAR_WAIT_LIMIT_COOKIE) }
5974 	YY_BREAK
5975 case 255:
5976 YY_RULE_SETUP
5977 #line 470 "util/configlexer.lex"
5978 { YDVAR(1, VAR_WAIT_LIMIT_NETBLOCK) }
5979 	YY_BREAK
5980 case 256:
5981 YY_RULE_SETUP
5982 #line 471 "util/configlexer.lex"
5983 { YDVAR(1, VAR_WAIT_LIMIT_COOKIE_NETBLOCK) }
5984 	YY_BREAK
5985 case 257:
5986 YY_RULE_SETUP
5987 #line 472 "util/configlexer.lex"
5988 { YDVAR(1, VAR_MAX_UDP_SIZE) }
5989 	YY_BREAK
5990 case 258:
5991 YY_RULE_SETUP
5992 #line 473 "util/configlexer.lex"
5993 { YDVAR(1, VAR_DNS64_PREFIX) }
5994 	YY_BREAK
5995 case 259:
5996 YY_RULE_SETUP
5997 #line 474 "util/configlexer.lex"
5998 { YDVAR(1, VAR_DNS64_SYNTHALL) }
5999 	YY_BREAK
6000 case 260:
6001 YY_RULE_SETUP
6002 #line 475 "util/configlexer.lex"
6003 { YDVAR(1, VAR_DNS64_IGNORE_AAAA) }
6004 	YY_BREAK
6005 case 261:
6006 YY_RULE_SETUP
6007 #line 476 "util/configlexer.lex"
6008 { YDVAR(1, VAR_NAT64_PREFIX) }
6009 	YY_BREAK
6010 case 262:
6011 YY_RULE_SETUP
6012 #line 477 "util/configlexer.lex"
6013 { YDVAR(1, VAR_DEFINE_TAG) }
6014 	YY_BREAK
6015 case 263:
6016 YY_RULE_SETUP
6017 #line 478 "util/configlexer.lex"
6018 { YDVAR(2, VAR_LOCAL_ZONE_TAG) }
6019 	YY_BREAK
6020 case 264:
6021 YY_RULE_SETUP
6022 #line 479 "util/configlexer.lex"
6023 { YDVAR(2, VAR_ACCESS_CONTROL_TAG) }
6024 	YY_BREAK
6025 case 265:
6026 YY_RULE_SETUP
6027 #line 480 "util/configlexer.lex"
6028 { YDVAR(3, VAR_ACCESS_CONTROL_TAG_ACTION) }
6029 	YY_BREAK
6030 case 266:
6031 YY_RULE_SETUP
6032 #line 481 "util/configlexer.lex"
6033 { YDVAR(3, VAR_ACCESS_CONTROL_TAG_DATA) }
6034 	YY_BREAK
6035 case 267:
6036 YY_RULE_SETUP
6037 #line 482 "util/configlexer.lex"
6038 { YDVAR(2, VAR_ACCESS_CONTROL_VIEW) }
6039 	YY_BREAK
6040 case 268:
6041 YY_RULE_SETUP
6042 #line 483 "util/configlexer.lex"
6043 { YDVAR(2, VAR_INTERFACE_TAG) }
6044 	YY_BREAK
6045 case 269:
6046 YY_RULE_SETUP
6047 #line 484 "util/configlexer.lex"
6048 { YDVAR(3, VAR_INTERFACE_TAG_ACTION) }
6049 	YY_BREAK
6050 case 270:
6051 YY_RULE_SETUP
6052 #line 485 "util/configlexer.lex"
6053 { YDVAR(3, VAR_INTERFACE_TAG_DATA) }
6054 	YY_BREAK
6055 case 271:
6056 YY_RULE_SETUP
6057 #line 486 "util/configlexer.lex"
6058 { YDVAR(2, VAR_INTERFACE_VIEW) }
6059 	YY_BREAK
6060 case 272:
6061 YY_RULE_SETUP
6062 #line 487 "util/configlexer.lex"
6063 { YDVAR(3, VAR_LOCAL_ZONE_OVERRIDE) }
6064 	YY_BREAK
6065 case 273:
6066 YY_RULE_SETUP
6067 #line 488 "util/configlexer.lex"
6068 { YDVAR(0, VAR_DNSTAP) }
6069 	YY_BREAK
6070 case 274:
6071 YY_RULE_SETUP
6072 #line 489 "util/configlexer.lex"
6073 { YDVAR(1, VAR_DNSTAP_ENABLE) }
6074 	YY_BREAK
6075 case 275:
6076 YY_RULE_SETUP
6077 #line 490 "util/configlexer.lex"
6078 { YDVAR(1, VAR_DNSTAP_BIDIRECTIONAL) }
6079 	YY_BREAK
6080 case 276:
6081 YY_RULE_SETUP
6082 #line 491 "util/configlexer.lex"
6083 { YDVAR(1, VAR_DNSTAP_SOCKET_PATH) }
6084 	YY_BREAK
6085 case 277:
6086 YY_RULE_SETUP
6087 #line 492 "util/configlexer.lex"
6088 { YDVAR(1, VAR_DNSTAP_IP) }
6089 	YY_BREAK
6090 case 278:
6091 YY_RULE_SETUP
6092 #line 493 "util/configlexer.lex"
6093 { YDVAR(1, VAR_DNSTAP_TLS) }
6094 	YY_BREAK
6095 case 279:
6096 YY_RULE_SETUP
6097 #line 494 "util/configlexer.lex"
6098 { YDVAR(1, VAR_DNSTAP_TLS_SERVER_NAME) }
6099 	YY_BREAK
6100 case 280:
6101 YY_RULE_SETUP
6102 #line 495 "util/configlexer.lex"
6103 { YDVAR(1, VAR_DNSTAP_TLS_CERT_BUNDLE) }
6104 	YY_BREAK
6105 case 281:
6106 YY_RULE_SETUP
6107 #line 496 "util/configlexer.lex"
6108 {
6109 		YDVAR(1, VAR_DNSTAP_TLS_CLIENT_KEY_FILE) }
6110 	YY_BREAK
6111 case 282:
6112 YY_RULE_SETUP
6113 #line 498 "util/configlexer.lex"
6114 {
6115 		YDVAR(1, VAR_DNSTAP_TLS_CLIENT_CERT_FILE) }
6116 	YY_BREAK
6117 case 283:
6118 YY_RULE_SETUP
6119 #line 500 "util/configlexer.lex"
6120 { YDVAR(1, VAR_DNSTAP_SEND_IDENTITY) }
6121 	YY_BREAK
6122 case 284:
6123 YY_RULE_SETUP
6124 #line 501 "util/configlexer.lex"
6125 { YDVAR(1, VAR_DNSTAP_SEND_VERSION) }
6126 	YY_BREAK
6127 case 285:
6128 YY_RULE_SETUP
6129 #line 502 "util/configlexer.lex"
6130 { YDVAR(1, VAR_DNSTAP_IDENTITY) }
6131 	YY_BREAK
6132 case 286:
6133 YY_RULE_SETUP
6134 #line 503 "util/configlexer.lex"
6135 { YDVAR(1, VAR_DNSTAP_VERSION) }
6136 	YY_BREAK
6137 case 287:
6138 YY_RULE_SETUP
6139 #line 504 "util/configlexer.lex"
6140 {
6141 		YDVAR(1, VAR_DNSTAP_LOG_RESOLVER_QUERY_MESSAGES) }
6142 	YY_BREAK
6143 case 288:
6144 YY_RULE_SETUP
6145 #line 506 "util/configlexer.lex"
6146 {
6147 		YDVAR(1, VAR_DNSTAP_LOG_RESOLVER_RESPONSE_MESSAGES) }
6148 	YY_BREAK
6149 case 289:
6150 YY_RULE_SETUP
6151 #line 508 "util/configlexer.lex"
6152 {
6153 		YDVAR(1, VAR_DNSTAP_LOG_CLIENT_QUERY_MESSAGES) }
6154 	YY_BREAK
6155 case 290:
6156 YY_RULE_SETUP
6157 #line 510 "util/configlexer.lex"
6158 {
6159 		YDVAR(1, VAR_DNSTAP_LOG_CLIENT_RESPONSE_MESSAGES) }
6160 	YY_BREAK
6161 case 291:
6162 YY_RULE_SETUP
6163 #line 512 "util/configlexer.lex"
6164 {
6165 		YDVAR(1, VAR_DNSTAP_LOG_FORWARDER_QUERY_MESSAGES) }
6166 	YY_BREAK
6167 case 292:
6168 YY_RULE_SETUP
6169 #line 514 "util/configlexer.lex"
6170 {
6171 		YDVAR(1, VAR_DNSTAP_LOG_FORWARDER_RESPONSE_MESSAGES) }
6172 	YY_BREAK
6173 case 293:
6174 YY_RULE_SETUP
6175 #line 516 "util/configlexer.lex"
6176 { YDVAR(1, VAR_DNSTAP_SAMPLE_RATE) }
6177 	YY_BREAK
6178 case 294:
6179 YY_RULE_SETUP
6180 #line 517 "util/configlexer.lex"
6181 { YDVAR(1, VAR_DISABLE_DNSSEC_LAME_CHECK) }
6182 	YY_BREAK
6183 case 295:
6184 YY_RULE_SETUP
6185 #line 518 "util/configlexer.lex"
6186 { YDVAR(1, VAR_IP_RATELIMIT) }
6187 	YY_BREAK
6188 case 296:
6189 YY_RULE_SETUP
6190 #line 519 "util/configlexer.lex"
6191 { YDVAR(1, VAR_IP_RATELIMIT_COOKIE) }
6192 	YY_BREAK
6193 case 297:
6194 YY_RULE_SETUP
6195 #line 520 "util/configlexer.lex"
6196 { YDVAR(1, VAR_RATELIMIT) }
6197 	YY_BREAK
6198 case 298:
6199 YY_RULE_SETUP
6200 #line 521 "util/configlexer.lex"
6201 { YDVAR(1, VAR_IP_RATELIMIT_SLABS) }
6202 	YY_BREAK
6203 case 299:
6204 YY_RULE_SETUP
6205 #line 522 "util/configlexer.lex"
6206 { YDVAR(1, VAR_RATELIMIT_SLABS) }
6207 	YY_BREAK
6208 case 300:
6209 YY_RULE_SETUP
6210 #line 523 "util/configlexer.lex"
6211 { YDVAR(1, VAR_IP_RATELIMIT_SIZE) }
6212 	YY_BREAK
6213 case 301:
6214 YY_RULE_SETUP
6215 #line 524 "util/configlexer.lex"
6216 { YDVAR(1, VAR_RATELIMIT_SIZE) }
6217 	YY_BREAK
6218 case 302:
6219 YY_RULE_SETUP
6220 #line 525 "util/configlexer.lex"
6221 { YDVAR(2, VAR_RATELIMIT_FOR_DOMAIN) }
6222 	YY_BREAK
6223 case 303:
6224 YY_RULE_SETUP
6225 #line 526 "util/configlexer.lex"
6226 { YDVAR(2, VAR_RATELIMIT_BELOW_DOMAIN) }
6227 	YY_BREAK
6228 case 304:
6229 YY_RULE_SETUP
6230 #line 527 "util/configlexer.lex"
6231 { YDVAR(1, VAR_IP_RATELIMIT_FACTOR) }
6232 	YY_BREAK
6233 case 305:
6234 YY_RULE_SETUP
6235 #line 528 "util/configlexer.lex"
6236 { YDVAR(1, VAR_RATELIMIT_FACTOR) }
6237 	YY_BREAK
6238 case 306:
6239 YY_RULE_SETUP
6240 #line 529 "util/configlexer.lex"
6241 { YDVAR(1, VAR_IP_RATELIMIT_BACKOFF) }
6242 	YY_BREAK
6243 case 307:
6244 YY_RULE_SETUP
6245 #line 530 "util/configlexer.lex"
6246 { YDVAR(1, VAR_RATELIMIT_BACKOFF) }
6247 	YY_BREAK
6248 case 308:
6249 YY_RULE_SETUP
6250 #line 531 "util/configlexer.lex"
6251 { YDVAR(1, VAR_OUTBOUND_MSG_RETRY) }
6252 	YY_BREAK
6253 case 309:
6254 YY_RULE_SETUP
6255 #line 532 "util/configlexer.lex"
6256 { YDVAR(1, VAR_MAX_SENT_COUNT) }
6257 	YY_BREAK
6258 case 310:
6259 YY_RULE_SETUP
6260 #line 533 "util/configlexer.lex"
6261 { YDVAR(1, VAR_MAX_QUERY_RESTARTS) }
6262 	YY_BREAK
6263 case 311:
6264 YY_RULE_SETUP
6265 #line 534 "util/configlexer.lex"
6266 { YDVAR(1, VAR_LOW_RTT) }
6267 	YY_BREAK
6268 case 312:
6269 YY_RULE_SETUP
6270 #line 535 "util/configlexer.lex"
6271 { YDVAR(1, VAR_FAST_SERVER_NUM) }
6272 	YY_BREAK
6273 case 313:
6274 YY_RULE_SETUP
6275 #line 536 "util/configlexer.lex"
6276 { YDVAR(1, VAR_FAST_SERVER_PERMIL) }
6277 	YY_BREAK
6278 case 314:
6279 YY_RULE_SETUP
6280 #line 537 "util/configlexer.lex"
6281 { YDVAR(1, VAR_FAST_SERVER_PERMIL) }
6282 	YY_BREAK
6283 case 315:
6284 YY_RULE_SETUP
6285 #line 538 "util/configlexer.lex"
6286 { YDVAR(1, VAR_FAST_SERVER_PERMIL) }
6287 	YY_BREAK
6288 case 316:
6289 YY_RULE_SETUP
6290 #line 539 "util/configlexer.lex"
6291 { YDVAR(2, VAR_RESPONSE_IP_TAG) }
6292 	YY_BREAK
6293 case 317:
6294 YY_RULE_SETUP
6295 #line 540 "util/configlexer.lex"
6296 { YDVAR(2, VAR_RESPONSE_IP) }
6297 	YY_BREAK
6298 case 318:
6299 YY_RULE_SETUP
6300 #line 541 "util/configlexer.lex"
6301 { YDVAR(2, VAR_RESPONSE_IP_DATA) }
6302 	YY_BREAK
6303 case 319:
6304 YY_RULE_SETUP
6305 #line 542 "util/configlexer.lex"
6306 { YDVAR(0, VAR_DNSCRYPT) }
6307 	YY_BREAK
6308 case 320:
6309 YY_RULE_SETUP
6310 #line 543 "util/configlexer.lex"
6311 { YDVAR(1, VAR_DNSCRYPT_ENABLE) }
6312 	YY_BREAK
6313 case 321:
6314 YY_RULE_SETUP
6315 #line 544 "util/configlexer.lex"
6316 { YDVAR(1, VAR_DNSCRYPT_PORT) }
6317 	YY_BREAK
6318 case 322:
6319 YY_RULE_SETUP
6320 #line 545 "util/configlexer.lex"
6321 { YDVAR(1, VAR_DNSCRYPT_PROVIDER) }
6322 	YY_BREAK
6323 case 323:
6324 YY_RULE_SETUP
6325 #line 546 "util/configlexer.lex"
6326 { YDVAR(1, VAR_DNSCRYPT_SECRET_KEY) }
6327 	YY_BREAK
6328 case 324:
6329 YY_RULE_SETUP
6330 #line 547 "util/configlexer.lex"
6331 { YDVAR(1, VAR_DNSCRYPT_PROVIDER_CERT) }
6332 	YY_BREAK
6333 case 325:
6334 YY_RULE_SETUP
6335 #line 548 "util/configlexer.lex"
6336 { YDVAR(1, VAR_DNSCRYPT_PROVIDER_CERT_ROTATED) }
6337 	YY_BREAK
6338 case 326:
6339 YY_RULE_SETUP
6340 #line 549 "util/configlexer.lex"
6341 {
6342 		YDVAR(1, VAR_DNSCRYPT_SHARED_SECRET_CACHE_SIZE) }
6343 	YY_BREAK
6344 case 327:
6345 YY_RULE_SETUP
6346 #line 551 "util/configlexer.lex"
6347 {
6348 		YDVAR(1, VAR_DNSCRYPT_SHARED_SECRET_CACHE_SLABS) }
6349 	YY_BREAK
6350 case 328:
6351 YY_RULE_SETUP
6352 #line 553 "util/configlexer.lex"
6353 { YDVAR(1, VAR_DNSCRYPT_NONCE_CACHE_SIZE) }
6354 	YY_BREAK
6355 case 329:
6356 YY_RULE_SETUP
6357 #line 554 "util/configlexer.lex"
6358 { YDVAR(1, VAR_DNSCRYPT_NONCE_CACHE_SLABS) }
6359 	YY_BREAK
6360 case 330:
6361 YY_RULE_SETUP
6362 #line 555 "util/configlexer.lex"
6363 { YDVAR(1, VAR_PAD_RESPONSES) }
6364 	YY_BREAK
6365 case 331:
6366 YY_RULE_SETUP
6367 #line 556 "util/configlexer.lex"
6368 { YDVAR(1, VAR_PAD_RESPONSES_BLOCK_SIZE) }
6369 	YY_BREAK
6370 case 332:
6371 YY_RULE_SETUP
6372 #line 557 "util/configlexer.lex"
6373 { YDVAR(1, VAR_PAD_QUERIES) }
6374 	YY_BREAK
6375 case 333:
6376 YY_RULE_SETUP
6377 #line 558 "util/configlexer.lex"
6378 { YDVAR(1, VAR_PAD_QUERIES_BLOCK_SIZE) }
6379 	YY_BREAK
6380 case 334:
6381 YY_RULE_SETUP
6382 #line 559 "util/configlexer.lex"
6383 { YDVAR(1, VAR_IPSECMOD_ENABLED) }
6384 	YY_BREAK
6385 case 335:
6386 YY_RULE_SETUP
6387 #line 560 "util/configlexer.lex"
6388 { YDVAR(1, VAR_IPSECMOD_IGNORE_BOGUS) }
6389 	YY_BREAK
6390 case 336:
6391 YY_RULE_SETUP
6392 #line 561 "util/configlexer.lex"
6393 { YDVAR(1, VAR_IPSECMOD_HOOK) }
6394 	YY_BREAK
6395 case 337:
6396 YY_RULE_SETUP
6397 #line 562 "util/configlexer.lex"
6398 { YDVAR(1, VAR_IPSECMOD_MAX_TTL) }
6399 	YY_BREAK
6400 case 338:
6401 YY_RULE_SETUP
6402 #line 563 "util/configlexer.lex"
6403 { YDVAR(1, VAR_IPSECMOD_WHITELIST) }
6404 	YY_BREAK
6405 case 339:
6406 YY_RULE_SETUP
6407 #line 564 "util/configlexer.lex"
6408 { YDVAR(1, VAR_IPSECMOD_WHITELIST) }
6409 	YY_BREAK
6410 case 340:
6411 YY_RULE_SETUP
6412 #line 565 "util/configlexer.lex"
6413 { YDVAR(1, VAR_IPSECMOD_STRICT) }
6414 	YY_BREAK
6415 case 341:
6416 YY_RULE_SETUP
6417 #line 566 "util/configlexer.lex"
6418 { YDVAR(0, VAR_CACHEDB) }
6419 	YY_BREAK
6420 case 342:
6421 YY_RULE_SETUP
6422 #line 567 "util/configlexer.lex"
6423 { YDVAR(1, VAR_CACHEDB_BACKEND) }
6424 	YY_BREAK
6425 case 343:
6426 YY_RULE_SETUP
6427 #line 568 "util/configlexer.lex"
6428 { YDVAR(1, VAR_CACHEDB_SECRETSEED) }
6429 	YY_BREAK
6430 case 344:
6431 YY_RULE_SETUP
6432 #line 569 "util/configlexer.lex"
6433 { YDVAR(1, VAR_CACHEDB_NO_STORE) }
6434 	YY_BREAK
6435 case 345:
6436 YY_RULE_SETUP
6437 #line 570 "util/configlexer.lex"
6438 { YDVAR(1, VAR_CACHEDB_CHECK_WHEN_SERVE_EXPIRED) }
6439 	YY_BREAK
6440 case 346:
6441 YY_RULE_SETUP
6442 #line 571 "util/configlexer.lex"
6443 { YDVAR(1, VAR_CACHEDB_REDISHOST) }
6444 	YY_BREAK
6445 case 347:
6446 YY_RULE_SETUP
6447 #line 572 "util/configlexer.lex"
6448 { YDVAR(1, VAR_CACHEDB_REDISPORT) }
6449 	YY_BREAK
6450 case 348:
6451 YY_RULE_SETUP
6452 #line 573 "util/configlexer.lex"
6453 { YDVAR(1, VAR_CACHEDB_REDISPATH) }
6454 	YY_BREAK
6455 case 349:
6456 YY_RULE_SETUP
6457 #line 574 "util/configlexer.lex"
6458 { YDVAR(1, VAR_CACHEDB_REDISPASSWORD) }
6459 	YY_BREAK
6460 case 350:
6461 YY_RULE_SETUP
6462 #line 575 "util/configlexer.lex"
6463 { YDVAR(1, VAR_CACHEDB_REDISTIMEOUT) }
6464 	YY_BREAK
6465 case 351:
6466 YY_RULE_SETUP
6467 #line 576 "util/configlexer.lex"
6468 { YDVAR(1, VAR_CACHEDB_REDISEXPIRERECORDS) }
6469 	YY_BREAK
6470 case 352:
6471 YY_RULE_SETUP
6472 #line 577 "util/configlexer.lex"
6473 { YDVAR(1, VAR_CACHEDB_REDISLOGICALDB) }
6474 	YY_BREAK
6475 case 353:
6476 YY_RULE_SETUP
6477 #line 578 "util/configlexer.lex"
6478 { YDVAR(0, VAR_IPSET) }
6479 	YY_BREAK
6480 case 354:
6481 YY_RULE_SETUP
6482 #line 579 "util/configlexer.lex"
6483 { YDVAR(1, VAR_IPSET_NAME_V4) }
6484 	YY_BREAK
6485 case 355:
6486 YY_RULE_SETUP
6487 #line 580 "util/configlexer.lex"
6488 { YDVAR(1, VAR_IPSET_NAME_V6) }
6489 	YY_BREAK
6490 case 356:
6491 YY_RULE_SETUP
6492 #line 581 "util/configlexer.lex"
6493 { YDVAR(1, VAR_UDP_UPSTREAM_WITHOUT_DOWNSTREAM) }
6494 	YY_BREAK
6495 case 357:
6496 YY_RULE_SETUP
6497 #line 582 "util/configlexer.lex"
6498 { YDVAR(2, VAR_TCP_CONNECTION_LIMIT) }
6499 	YY_BREAK
6500 case 358:
6501 YY_RULE_SETUP
6502 #line 583 "util/configlexer.lex"
6503 { YDVAR(1, VAR_ANSWER_COOKIE ) }
6504 	YY_BREAK
6505 case 359:
6506 YY_RULE_SETUP
6507 #line 584 "util/configlexer.lex"
6508 { YDVAR(1, VAR_COOKIE_SECRET) }
6509 	YY_BREAK
6510 case 360:
6511 YY_RULE_SETUP
6512 #line 585 "util/configlexer.lex"
6513 { YDVAR(1, VAR_COOKIE_SECRET_FILE) }
6514 	YY_BREAK
6515 case 361:
6516 YY_RULE_SETUP
6517 #line 586 "util/configlexer.lex"
6518 { YDVAR(2, VAR_EDNS_CLIENT_STRING) }
6519 	YY_BREAK
6520 case 362:
6521 YY_RULE_SETUP
6522 #line 587 "util/configlexer.lex"
6523 { YDVAR(1, VAR_EDNS_CLIENT_STRING_OPCODE) }
6524 	YY_BREAK
6525 case 363:
6526 YY_RULE_SETUP
6527 #line 588 "util/configlexer.lex"
6528 { YDVAR(1, VAR_NSID ) }
6529 	YY_BREAK
6530 case 364:
6531 YY_RULE_SETUP
6532 #line 589 "util/configlexer.lex"
6533 { YDVAR(1, VAR_EDE ) }
6534 	YY_BREAK
6535 case 365:
6536 YY_RULE_SETUP
6537 #line 590 "util/configlexer.lex"
6538 { YDVAR(1, VAR_PROXY_PROTOCOL_PORT) }
6539 	YY_BREAK
6540 case 366:
6541 /* rule 366 can match eol */
6542 YY_RULE_SETUP
6543 #line 591 "util/configlexer.lex"
6544 { LEXOUT(("NL\n")); cfg_parser->line++; }
6545 	YY_BREAK
6546 /* Quoted strings. Strip leading and ending quotes */
6547 case 367:
6548 YY_RULE_SETUP
6549 #line 594 "util/configlexer.lex"
6550 { BEGIN(quotedstring); LEXOUT(("QS ")); }
6551 	YY_BREAK
6552 case YY_STATE_EOF(quotedstring):
6553 #line 595 "util/configlexer.lex"
6554 {
6555         yyerror("EOF inside quoted string");
6556 	if(--num_args == 0) { BEGIN(INITIAL); }
6557 	else		    { BEGIN(val); }
6558 }
6559 	YY_BREAK
6560 case 368:
6561 YY_RULE_SETUP
6562 #line 600 "util/configlexer.lex"
6563 { LEXOUT(("STR(%s) ", yytext)); yymore(); }
6564 	YY_BREAK
6565 case 369:
6566 /* rule 369 can match eol */
6567 YY_RULE_SETUP
6568 #line 601 "util/configlexer.lex"
6569 { yyerror("newline inside quoted string, no end \"");
6570 			  cfg_parser->line++; BEGIN(INITIAL); }
6571 	YY_BREAK
6572 case 370:
6573 YY_RULE_SETUP
6574 #line 603 "util/configlexer.lex"
6575 {
6576         LEXOUT(("QE "));
6577 	if(--num_args == 0) { BEGIN(INITIAL); }
6578 	else		    { BEGIN(val); }
6579         yytext[yyleng - 1] = '\0';
6580 	yylval.str = strdup(yytext);
6581 	if(!yylval.str)
6582 		yyerror("out of memory");
6583         return STRING_ARG;
6584 }
6585 	YY_BREAK
6586 /* Single Quoted strings. Strip leading and ending quotes */
6587 case 371:
6588 YY_RULE_SETUP
6589 #line 615 "util/configlexer.lex"
6590 { BEGIN(singlequotedstr); LEXOUT(("SQS ")); }
6591 	YY_BREAK
6592 case YY_STATE_EOF(singlequotedstr):
6593 #line 616 "util/configlexer.lex"
6594 {
6595         yyerror("EOF inside quoted string");
6596 	if(--num_args == 0) { BEGIN(INITIAL); }
6597 	else		    { BEGIN(val); }
6598 }
6599 	YY_BREAK
6600 case 372:
6601 YY_RULE_SETUP
6602 #line 621 "util/configlexer.lex"
6603 { LEXOUT(("STR(%s) ", yytext)); yymore(); }
6604 	YY_BREAK
6605 case 373:
6606 /* rule 373 can match eol */
6607 YY_RULE_SETUP
6608 #line 622 "util/configlexer.lex"
6609 { yyerror("newline inside quoted string, no end '");
6610 			     cfg_parser->line++; BEGIN(INITIAL); }
6611 	YY_BREAK
6612 case 374:
6613 YY_RULE_SETUP
6614 #line 624 "util/configlexer.lex"
6615 {
6616         LEXOUT(("SQE "));
6617 	if(--num_args == 0) { BEGIN(INITIAL); }
6618 	else		    { BEGIN(val); }
6619         yytext[yyleng - 1] = '\0';
6620 	yylval.str = strdup(yytext);
6621 	if(!yylval.str)
6622 		yyerror("out of memory");
6623         return STRING_ARG;
6624 }
6625 	YY_BREAK
6626 /* include: directive */
6627 case 375:
6628 YY_RULE_SETUP
6629 #line 636 "util/configlexer.lex"
6630 {
6631 	LEXOUT(("v(%s) ", yytext)); inc_prev = YYSTATE; BEGIN(include); }
6632 	YY_BREAK
6633 case YY_STATE_EOF(include):
6634 #line 638 "util/configlexer.lex"
6635 {
6636         yyerror("EOF inside include directive");
6637         BEGIN(inc_prev);
6638 }
6639 	YY_BREAK
6640 case 376:
6641 YY_RULE_SETUP
6642 #line 642 "util/configlexer.lex"
6643 { LEXOUT(("ISP ")); /* ignore */ }
6644 	YY_BREAK
6645 case 377:
6646 /* rule 377 can match eol */
6647 YY_RULE_SETUP
6648 #line 643 "util/configlexer.lex"
6649 { LEXOUT(("NL\n")); cfg_parser->line++;}
6650 	YY_BREAK
6651 case 378:
6652 YY_RULE_SETUP
6653 #line 644 "util/configlexer.lex"
6654 { LEXOUT(("IQS ")); BEGIN(include_quoted); }
6655 	YY_BREAK
6656 case 379:
6657 YY_RULE_SETUP
6658 #line 645 "util/configlexer.lex"
6659 {
6660 	LEXOUT(("Iunquotedstr(%s) ", yytext));
6661 	config_start_include_glob(yytext, 0);
6662 	BEGIN(inc_prev);
6663 }
6664 	YY_BREAK
6665 case YY_STATE_EOF(include_quoted):
6666 #line 650 "util/configlexer.lex"
6667 {
6668         yyerror("EOF inside quoted string");
6669         BEGIN(inc_prev);
6670 }
6671 	YY_BREAK
6672 case 380:
6673 YY_RULE_SETUP
6674 #line 654 "util/configlexer.lex"
6675 { LEXOUT(("ISTR(%s) ", yytext)); yymore(); }
6676 	YY_BREAK
6677 case 381:
6678 /* rule 381 can match eol */
6679 YY_RULE_SETUP
6680 #line 655 "util/configlexer.lex"
6681 { yyerror("newline before \" in include name");
6682 				  cfg_parser->line++; BEGIN(inc_prev); }
6683 	YY_BREAK
6684 case 382:
6685 YY_RULE_SETUP
6686 #line 657 "util/configlexer.lex"
6687 {
6688 	LEXOUT(("IQE "));
6689 	yytext[yyleng - 1] = '\0';
6690 	config_start_include_glob(yytext, 0);
6691 	BEGIN(inc_prev);
6692 }
6693 	YY_BREAK
6694 case YY_STATE_EOF(INITIAL):
6695 case YY_STATE_EOF(val):
6696 #line 663 "util/configlexer.lex"
6697 {
6698 	LEXOUT(("LEXEOF "));
6699 	yy_set_bol(1); /* Set beginning of line, so "^" rules match.  */
6700 	if (!config_include_stack) {
6701 		yyterminate();
6702 	} else {
6703 		int prev_toplevel = inc_toplevel;
6704 		fclose(yyin);
6705 		config_end_include();
6706 		if(prev_toplevel) return (VAR_FORCE_TOPLEVEL);
6707 	}
6708 }
6709 	YY_BREAK
6710 /* include-toplevel: directive */
6711 case 383:
6712 YY_RULE_SETUP
6713 #line 677 "util/configlexer.lex"
6714 {
6715 	LEXOUT(("v(%s) ", yytext)); inc_prev = YYSTATE; BEGIN(include_toplevel);
6716 }
6717 	YY_BREAK
6718 case YY_STATE_EOF(include_toplevel):
6719 #line 680 "util/configlexer.lex"
6720 {
6721 	yyerror("EOF inside include_toplevel directive");
6722 	BEGIN(inc_prev);
6723 }
6724 	YY_BREAK
6725 case 384:
6726 YY_RULE_SETUP
6727 #line 684 "util/configlexer.lex"
6728 { LEXOUT(("ITSP ")); /* ignore */ }
6729 	YY_BREAK
6730 case 385:
6731 /* rule 385 can match eol */
6732 YY_RULE_SETUP
6733 #line 685 "util/configlexer.lex"
6734 { LEXOUT(("NL\n")); cfg_parser->line++; }
6735 	YY_BREAK
6736 case 386:
6737 YY_RULE_SETUP
6738 #line 686 "util/configlexer.lex"
6739 { LEXOUT(("ITQS ")); BEGIN(include_toplevel_quoted); }
6740 	YY_BREAK
6741 case 387:
6742 YY_RULE_SETUP
6743 #line 687 "util/configlexer.lex"
6744 {
6745 	LEXOUT(("ITunquotedstr(%s) ", yytext));
6746 	config_start_include_glob(yytext, 1);
6747 	BEGIN(inc_prev);
6748 	return (VAR_FORCE_TOPLEVEL);
6749 }
6750 	YY_BREAK
6751 case YY_STATE_EOF(include_toplevel_quoted):
6752 #line 693 "util/configlexer.lex"
6753 {
6754 	yyerror("EOF inside quoted string");
6755 	BEGIN(inc_prev);
6756 }
6757 	YY_BREAK
6758 case 388:
6759 YY_RULE_SETUP
6760 #line 697 "util/configlexer.lex"
6761 { LEXOUT(("ITSTR(%s) ", yytext)); yymore(); }
6762 	YY_BREAK
6763 case 389:
6764 /* rule 389 can match eol */
6765 YY_RULE_SETUP
6766 #line 698 "util/configlexer.lex"
6767 {
6768 	yyerror("newline before \" in include name");
6769 	cfg_parser->line++; BEGIN(inc_prev);
6770 }
6771 	YY_BREAK
6772 case 390:
6773 YY_RULE_SETUP
6774 #line 702 "util/configlexer.lex"
6775 {
6776 	LEXOUT(("ITQE "));
6777 	yytext[yyleng - 1] = '\0';
6778 	config_start_include_glob(yytext, 1);
6779 	BEGIN(inc_prev);
6780 	return (VAR_FORCE_TOPLEVEL);
6781 }
6782 	YY_BREAK
6783 case 391:
6784 YY_RULE_SETUP
6785 #line 710 "util/configlexer.lex"
6786 { LEXOUT(("unquotedstr(%s) ", yytext));
6787 			if(--num_args == 0) { BEGIN(INITIAL); }
6788 			yylval.str = strdup(yytext); return STRING_ARG; }
6789 	YY_BREAK
6790 case 392:
6791 YY_RULE_SETUP
6792 #line 714 "util/configlexer.lex"
6793 {
6794 	ub_c_error_msg("unknown keyword '%s'", yytext);
6795 	}
6796 	YY_BREAK
6797 case 393:
6798 YY_RULE_SETUP
6799 #line 718 "util/configlexer.lex"
6800 {
6801 	ub_c_error_msg("stray '%s'", yytext);
6802 	}
6803 	YY_BREAK
6804 case 394:
6805 YY_RULE_SETUP
6806 #line 722 "util/configlexer.lex"
6807 ECHO;
6808 	YY_BREAK
6809 #line 6807 "<stdout>"
6810 
6811 	case YY_END_OF_BUFFER:
6812 		{
6813 		/* Amount of text matched not including the EOB char. */
6814 		int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
6815 
6816 		/* Undo the effects of YY_DO_BEFORE_ACTION. */
6817 		*yy_cp = (yy_hold_char);
6818 		YY_RESTORE_YY_MORE_OFFSET
6819 
6820 		if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
6821 			{
6822 			/* We're scanning a new file or input source.  It's
6823 			 * possible that this happened because the user
6824 			 * just pointed yyin at a new source and called
6825 			 * yylex().  If so, then we have to assure
6826 			 * consistency between YY_CURRENT_BUFFER and our
6827 			 * globals.  Here is the right place to do so, because
6828 			 * this is the first action (other than possibly a
6829 			 * back-up) that will match for the new input source.
6830 			 */
6831 			(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
6832 			YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
6833 			YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
6834 			}
6835 
6836 		/* Note that here we test for yy_c_buf_p "<=" to the position
6837 		 * of the first EOB in the buffer, since yy_c_buf_p will
6838 		 * already have been incremented past the NUL character
6839 		 * (since all states make transitions on EOB to the
6840 		 * end-of-buffer state).  Contrast this with the test
6841 		 * in input().
6842 		 */
6843 		if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
6844 			{ /* This was really a NUL. */
6845 			yy_state_type yy_next_state;
6846 
6847 			(yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
6848 
6849 			yy_current_state = yy_get_previous_state(  );
6850 
6851 			/* Okay, we're now positioned to make the NUL
6852 			 * transition.  We couldn't have
6853 			 * yy_get_previous_state() go ahead and do it
6854 			 * for us because it doesn't know how to deal
6855 			 * with the possibility of jamming (and we don't
6856 			 * want to build jamming into it because then it
6857 			 * will run more slowly).
6858 			 */
6859 
6860 			yy_next_state = yy_try_NUL_trans( yy_current_state );
6861 
6862 			yy_bp = (yytext_ptr) + YY_MORE_ADJ;
6863 
6864 			if ( yy_next_state )
6865 				{
6866 				/* Consume the NUL. */
6867 				yy_cp = ++(yy_c_buf_p);
6868 				yy_current_state = yy_next_state;
6869 				goto yy_match;
6870 				}
6871 
6872 			else
6873 				{
6874 				yy_cp = (yy_c_buf_p);
6875 				goto yy_find_action;
6876 				}
6877 			}
6878 
6879 		else switch ( yy_get_next_buffer(  ) )
6880 			{
6881 			case EOB_ACT_END_OF_FILE:
6882 				{
6883 				(yy_did_buffer_switch_on_eof) = 0;
6884 
6885 				if ( yywrap(  ) )
6886 					{
6887 					/* Note: because we've taken care in
6888 					 * yy_get_next_buffer() to have set up
6889 					 * yytext, we can now set up
6890 					 * yy_c_buf_p so that if some total
6891 					 * hoser (like flex itself) wants to
6892 					 * call the scanner after we return the
6893 					 * YY_NULL, it'll still work - another
6894 					 * YY_NULL will get returned.
6895 					 */
6896 					(yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;
6897 
6898 					yy_act = YY_STATE_EOF(YY_START);
6899 					goto do_action;
6900 					}
6901 
6902 				else
6903 					{
6904 					if ( ! (yy_did_buffer_switch_on_eof) )
6905 						YY_NEW_FILE;
6906 					}
6907 				break;
6908 				}
6909 
6910 			case EOB_ACT_CONTINUE_SCAN:
6911 				(yy_c_buf_p) =
6912 					(yytext_ptr) + yy_amount_of_matched_text;
6913 
6914 				yy_current_state = yy_get_previous_state(  );
6915 
6916 				yy_cp = (yy_c_buf_p);
6917 				yy_bp = (yytext_ptr) + YY_MORE_ADJ;
6918 				goto yy_match;
6919 
6920 			case EOB_ACT_LAST_MATCH:
6921 				(yy_c_buf_p) =
6922 				&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
6923 
6924 				yy_current_state = yy_get_previous_state(  );
6925 
6926 				yy_cp = (yy_c_buf_p);
6927 				yy_bp = (yytext_ptr) + YY_MORE_ADJ;
6928 				goto yy_find_action;
6929 			}
6930 		break;
6931 		}
6932 
6933 	default:
6934 		YY_FATAL_ERROR(
6935 			"fatal flex scanner internal error--no action found" );
6936 	} /* end of action switch */
6937 		} /* end of scanning one token */
6938 	} /* end of user's declarations */
6939 } /* end of yylex */
6940 
6941 /* yy_get_next_buffer - try to read in a new buffer
6942  *
6943  * Returns a code representing an action:
6944  *	EOB_ACT_LAST_MATCH -
6945  *	EOB_ACT_CONTINUE_SCAN - continue scanning from current position
6946  *	EOB_ACT_END_OF_FILE - end of file
6947  */
6948 static int yy_get_next_buffer (void)
6949 {
6950     	char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
6951 	char *source = (yytext_ptr);
6952 	int number_to_move, i;
6953 	int ret_val;
6954 
6955 	if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
6956 		YY_FATAL_ERROR(
6957 		"fatal flex scanner internal error--end of buffer missed" );
6958 
6959 	if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
6960 		{ /* Don't try to fill the buffer, so this is an EOF. */
6961 		if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
6962 			{
6963 			/* We matched a single character, the EOB, so
6964 			 * treat this as a final EOF.
6965 			 */
6966 			return EOB_ACT_END_OF_FILE;
6967 			}
6968 
6969 		else
6970 			{
6971 			/* We matched some text prior to the EOB, first
6972 			 * process it.
6973 			 */
6974 			return EOB_ACT_LAST_MATCH;
6975 			}
6976 		}
6977 
6978 	/* Try to read more data. */
6979 
6980 	/* First move last chars to start of buffer. */
6981 	number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr) - 1);
6982 
6983 	for ( i = 0; i < number_to_move; ++i )
6984 		*(dest++) = *(source++);
6985 
6986 	if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
6987 		/* don't do the read, it's not guaranteed to return an EOF,
6988 		 * just force an EOF
6989 		 */
6990 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
6991 
6992 	else
6993 		{
6994 			int num_to_read =
6995 			YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
6996 
6997 		while ( num_to_read <= 0 )
6998 			{ /* Not enough room in the buffer - grow it. */
6999 
7000 			/* just a shorter name for the current buffer */
7001 			YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE;
7002 
7003 			int yy_c_buf_p_offset =
7004 				(int) ((yy_c_buf_p) - b->yy_ch_buf);
7005 
7006 			if ( b->yy_is_our_buffer )
7007 				{
7008 				int new_size = b->yy_buf_size * 2;
7009 
7010 				if ( new_size <= 0 )
7011 					b->yy_buf_size += b->yy_buf_size / 8;
7012 				else
7013 					b->yy_buf_size *= 2;
7014 
7015 				b->yy_ch_buf = (char *)
7016 					/* Include room in for 2 EOB chars. */
7017 					yyrealloc( (void *) b->yy_ch_buf,
7018 							 (yy_size_t) (b->yy_buf_size + 2)  );
7019 				}
7020 			else
7021 				/* Can't grow it, we don't own it. */
7022 				b->yy_ch_buf = NULL;
7023 
7024 			if ( ! b->yy_ch_buf )
7025 				YY_FATAL_ERROR(
7026 				"fatal error - scanner input buffer overflow" );
7027 
7028 			(yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
7029 
7030 			num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
7031 						number_to_move - 1;
7032 
7033 			}
7034 
7035 		if ( num_to_read > YY_READ_BUF_SIZE )
7036 			num_to_read = YY_READ_BUF_SIZE;
7037 
7038 		/* Read in more data. */
7039 		YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
7040 			(yy_n_chars), num_to_read );
7041 
7042 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
7043 		}
7044 
7045 	if ( (yy_n_chars) == 0 )
7046 		{
7047 		if ( number_to_move == YY_MORE_ADJ )
7048 			{
7049 			ret_val = EOB_ACT_END_OF_FILE;
7050 			yyrestart( yyin  );
7051 			}
7052 
7053 		else
7054 			{
7055 			ret_val = EOB_ACT_LAST_MATCH;
7056 			YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
7057 				YY_BUFFER_EOF_PENDING;
7058 			}
7059 		}
7060 
7061 	else
7062 		ret_val = EOB_ACT_CONTINUE_SCAN;
7063 
7064 	if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
7065 		/* Extend the array by 50%, plus the number we really need. */
7066 		int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
7067 		YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc(
7068 			(void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size  );
7069 		if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
7070 			YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
7071 		/* "- 2" to take care of EOB's */
7072 		YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2);
7073 	}
7074 
7075 	(yy_n_chars) += number_to_move;
7076 	YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
7077 	YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
7078 
7079 	(yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
7080 
7081 	return ret_val;
7082 }
7083 
7084 /* yy_get_previous_state - get the state just before the EOB char was reached */
7085 
7086     static yy_state_type yy_get_previous_state (void)
7087 {
7088 	yy_state_type yy_current_state;
7089 	char *yy_cp;
7090 
7091 	yy_current_state = (yy_start);
7092 
7093 	for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
7094 		{
7095 		YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
7096 		if ( yy_accept[yy_current_state] )
7097 			{
7098 			(yy_last_accepting_state) = yy_current_state;
7099 			(yy_last_accepting_cpos) = yy_cp;
7100 			}
7101 		while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
7102 			{
7103 			yy_current_state = (int) yy_def[yy_current_state];
7104 			if ( yy_current_state >= 3921 )
7105 				yy_c = yy_meta[yy_c];
7106 			}
7107 		yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
7108 		}
7109 
7110 	return yy_current_state;
7111 }
7112 
7113 /* yy_try_NUL_trans - try to make a transition on the NUL character
7114  *
7115  * synopsis
7116  *	next_state = yy_try_NUL_trans( current_state );
7117  */
7118     static yy_state_type yy_try_NUL_trans  (yy_state_type yy_current_state )
7119 {
7120 	int yy_is_jam;
7121     	char *yy_cp = (yy_c_buf_p);
7122 
7123 	YY_CHAR yy_c = 1;
7124 	if ( yy_accept[yy_current_state] )
7125 		{
7126 		(yy_last_accepting_state) = yy_current_state;
7127 		(yy_last_accepting_cpos) = yy_cp;
7128 		}
7129 	while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
7130 		{
7131 		yy_current_state = (int) yy_def[yy_current_state];
7132 		if ( yy_current_state >= 3921 )
7133 			yy_c = yy_meta[yy_c];
7134 		}
7135 	yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
7136 	yy_is_jam = (yy_current_state == 3920);
7137 
7138 		return yy_is_jam ? 0 : yy_current_state;
7139 }
7140 
7141 #ifndef YY_NO_UNPUT
7142 
7143 #endif
7144 
7145 #ifndef YY_NO_INPUT
7146 #ifdef __cplusplus
7147     static int yyinput (void)
7148 #else
7149     static int input  (void)
7150 #endif
7151 
7152 {
7153 	int c;
7154 
7155 	*(yy_c_buf_p) = (yy_hold_char);
7156 
7157 	if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
7158 		{
7159 		/* yy_c_buf_p now points to the character we want to return.
7160 		 * If this occurs *before* the EOB characters, then it's a
7161 		 * valid NUL; if not, then we've hit the end of the buffer.
7162 		 */
7163 		if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
7164 			/* This was really a NUL. */
7165 			*(yy_c_buf_p) = '\0';
7166 
7167 		else
7168 			{ /* need more input */
7169 			int offset = (int) ((yy_c_buf_p) - (yytext_ptr));
7170 			++(yy_c_buf_p);
7171 
7172 			switch ( yy_get_next_buffer(  ) )
7173 				{
7174 				case EOB_ACT_LAST_MATCH:
7175 					/* This happens because yy_g_n_b()
7176 					 * sees that we've accumulated a
7177 					 * token and flags that we need to
7178 					 * try matching the token before
7179 					 * proceeding.  But for input(),
7180 					 * there's no matching to consider.
7181 					 * So convert the EOB_ACT_LAST_MATCH
7182 					 * to EOB_ACT_END_OF_FILE.
7183 					 */
7184 
7185 					/* Reset buffer status. */
7186 					yyrestart( yyin );
7187 
7188 					/*FALLTHROUGH*/
7189 
7190 				case EOB_ACT_END_OF_FILE:
7191 					{
7192 					if ( yywrap(  ) )
7193 						return 0;
7194 
7195 					if ( ! (yy_did_buffer_switch_on_eof) )
7196 						YY_NEW_FILE;
7197 #ifdef __cplusplus
7198 					return yyinput();
7199 #else
7200 					return input();
7201 #endif
7202 					}
7203 
7204 				case EOB_ACT_CONTINUE_SCAN:
7205 					(yy_c_buf_p) = (yytext_ptr) + offset;
7206 					break;
7207 				}
7208 			}
7209 		}
7210 
7211 	c = *(unsigned char *) (yy_c_buf_p);	/* cast for 8-bit char's */
7212 	*(yy_c_buf_p) = '\0';	/* preserve yytext */
7213 	(yy_hold_char) = *++(yy_c_buf_p);
7214 
7215 	return c;
7216 }
7217 #endif	/* ifndef YY_NO_INPUT */
7218 
7219 /** Immediately switch to a different input stream.
7220  * @param input_file A readable stream.
7221  *
7222  * @note This function does not reset the start condition to @c INITIAL .
7223  */
7224     void yyrestart  (FILE * input_file )
7225 {
7226 
7227 	if ( ! YY_CURRENT_BUFFER ){
7228         yyensure_buffer_stack ();
7229 		YY_CURRENT_BUFFER_LVALUE =
7230             yy_create_buffer( yyin, YY_BUF_SIZE );
7231 	}
7232 
7233 	yy_init_buffer( YY_CURRENT_BUFFER, input_file );
7234 	yy_load_buffer_state(  );
7235 }
7236 
7237 /** Switch to a different input buffer.
7238  * @param new_buffer The new input buffer.
7239  *
7240  */
7241     void yy_switch_to_buffer  (YY_BUFFER_STATE  new_buffer )
7242 {
7243 
7244 	/* TODO. We should be able to replace this entire function body
7245 	 * with
7246 	 *		yypop_buffer_state();
7247 	 *		yypush_buffer_state(new_buffer);
7248      */
7249 	yyensure_buffer_stack ();
7250 	if ( YY_CURRENT_BUFFER == new_buffer )
7251 		return;
7252 
7253 	if ( YY_CURRENT_BUFFER )
7254 		{
7255 		/* Flush out information for old buffer. */
7256 		*(yy_c_buf_p) = (yy_hold_char);
7257 		YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
7258 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
7259 		}
7260 
7261 	YY_CURRENT_BUFFER_LVALUE = new_buffer;
7262 	yy_load_buffer_state(  );
7263 
7264 	/* We don't actually know whether we did this switch during
7265 	 * EOF (yywrap()) processing, but the only time this flag
7266 	 * is looked at is after yywrap() is called, so it's safe
7267 	 * to go ahead and always set it.
7268 	 */
7269 	(yy_did_buffer_switch_on_eof) = 1;
7270 }
7271 
7272 static void yy_load_buffer_state  (void)
7273 {
7274     	(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
7275 	(yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
7276 	yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
7277 	(yy_hold_char) = *(yy_c_buf_p);
7278 }
7279 
7280 /** Allocate and initialize an input buffer state.
7281  * @param file A readable stream.
7282  * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
7283  *
7284  * @return the allocated buffer state.
7285  */
7286     YY_BUFFER_STATE yy_create_buffer  (FILE * file, int  size )
7287 {
7288 	YY_BUFFER_STATE b;
7289 
7290 	b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state )  );
7291 	if ( ! b )
7292 		YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
7293 
7294 	b->yy_buf_size = size;
7295 
7296 	/* yy_ch_buf has to be 2 characters longer than the size given because
7297 	 * we need to put in 2 end-of-buffer characters.
7298 	 */
7299 	b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2)  );
7300 	if ( ! b->yy_ch_buf )
7301 		YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
7302 
7303 	b->yy_is_our_buffer = 1;
7304 
7305 	yy_init_buffer( b, file );
7306 
7307 	return b;
7308 }
7309 
7310 /** Destroy the buffer.
7311  * @param b a buffer created with yy_create_buffer()
7312  *
7313  */
7314     void yy_delete_buffer (YY_BUFFER_STATE  b )
7315 {
7316 
7317 	if ( ! b )
7318 		return;
7319 
7320 	if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
7321 		YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
7322 
7323 	if ( b->yy_is_our_buffer )
7324 		yyfree( (void *) b->yy_ch_buf  );
7325 
7326 	yyfree( (void *) b  );
7327 }
7328 
7329 /* Initializes or reinitializes a buffer.
7330  * This function is sometimes called more than once on the same buffer,
7331  * such as during a yyrestart() or at EOF.
7332  */
7333     static void yy_init_buffer  (YY_BUFFER_STATE  b, FILE * file )
7334 
7335 {
7336 	int oerrno = errno;
7337 
7338 	yy_flush_buffer( b );
7339 
7340 	b->yy_input_file = file;
7341 	b->yy_fill_buffer = 1;
7342 
7343     /* If b is the current buffer, then yy_init_buffer was _probably_
7344      * called from yyrestart() or through yy_get_next_buffer.
7345      * In that case, we don't want to reset the lineno or column.
7346      */
7347     if (b != YY_CURRENT_BUFFER){
7348         b->yy_bs_lineno = 1;
7349         b->yy_bs_column = 0;
7350     }
7351 
7352         b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
7353 
7354 	errno = oerrno;
7355 }
7356 
7357 /** Discard all buffered characters. On the next scan, YY_INPUT will be called.
7358  * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
7359  *
7360  */
7361     void yy_flush_buffer (YY_BUFFER_STATE  b )
7362 {
7363     	if ( ! b )
7364 		return;
7365 
7366 	b->yy_n_chars = 0;
7367 
7368 	/* We always need two end-of-buffer characters.  The first causes
7369 	 * a transition to the end-of-buffer state.  The second causes
7370 	 * a jam in that state.
7371 	 */
7372 	b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
7373 	b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
7374 
7375 	b->yy_buf_pos = &b->yy_ch_buf[0];
7376 
7377 	b->yy_at_bol = 1;
7378 	b->yy_buffer_status = YY_BUFFER_NEW;
7379 
7380 	if ( b == YY_CURRENT_BUFFER )
7381 		yy_load_buffer_state(  );
7382 }
7383 
7384 /** Pushes the new state onto the stack. The new state becomes
7385  *  the current state. This function will allocate the stack
7386  *  if necessary.
7387  *  @param new_buffer The new state.
7388  *
7389  */
7390 void yypush_buffer_state (YY_BUFFER_STATE new_buffer )
7391 {
7392     	if (new_buffer == NULL)
7393 		return;
7394 
7395 	yyensure_buffer_stack();
7396 
7397 	/* This block is copied from yy_switch_to_buffer. */
7398 	if ( YY_CURRENT_BUFFER )
7399 		{
7400 		/* Flush out information for old buffer. */
7401 		*(yy_c_buf_p) = (yy_hold_char);
7402 		YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
7403 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
7404 		}
7405 
7406 	/* Only push if top exists. Otherwise, replace top. */
7407 	if (YY_CURRENT_BUFFER)
7408 		(yy_buffer_stack_top)++;
7409 	YY_CURRENT_BUFFER_LVALUE = new_buffer;
7410 
7411 	/* copied from yy_switch_to_buffer. */
7412 	yy_load_buffer_state(  );
7413 	(yy_did_buffer_switch_on_eof) = 1;
7414 }
7415 
7416 /** Removes and deletes the top of the stack, if present.
7417  *  The next element becomes the new top.
7418  *
7419  */
7420 void yypop_buffer_state (void)
7421 {
7422     	if (!YY_CURRENT_BUFFER)
7423 		return;
7424 
7425 	yy_delete_buffer(YY_CURRENT_BUFFER );
7426 	YY_CURRENT_BUFFER_LVALUE = NULL;
7427 	if ((yy_buffer_stack_top) > 0)
7428 		--(yy_buffer_stack_top);
7429 
7430 	if (YY_CURRENT_BUFFER) {
7431 		yy_load_buffer_state(  );
7432 		(yy_did_buffer_switch_on_eof) = 1;
7433 	}
7434 }
7435 
7436 /* Allocates the stack if it does not exist.
7437  *  Guarantees space for at least one push.
7438  */
7439 static void yyensure_buffer_stack (void)
7440 {
7441 	yy_size_t num_to_alloc;
7442 
7443 	if (!(yy_buffer_stack)) {
7444 
7445 		/* First allocation is just for 2 elements, since we don't know if this
7446 		 * scanner will even need a stack. We use 2 instead of 1 to avoid an
7447 		 * immediate realloc on the next call.
7448          */
7449       num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */
7450 		(yy_buffer_stack) = (struct yy_buffer_state**)yyalloc
7451 								(num_to_alloc * sizeof(struct yy_buffer_state*)
7452 								);
7453 		if ( ! (yy_buffer_stack) )
7454 			YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
7455 
7456 		memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
7457 
7458 		(yy_buffer_stack_max) = num_to_alloc;
7459 		(yy_buffer_stack_top) = 0;
7460 		return;
7461 	}
7462 
7463 	if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
7464 
7465 		/* Increase the buffer to prepare for a possible push. */
7466 		yy_size_t grow_size = 8 /* arbitrary grow size */;
7467 
7468 		num_to_alloc = (yy_buffer_stack_max) + grow_size;
7469 		(yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc
7470 								((yy_buffer_stack),
7471 								num_to_alloc * sizeof(struct yy_buffer_state*)
7472 								);
7473 		if ( ! (yy_buffer_stack) )
7474 			YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
7475 
7476 		/* zero only the new slots.*/
7477 		memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
7478 		(yy_buffer_stack_max) = num_to_alloc;
7479 	}
7480 }
7481 
7482 /** Setup the input buffer state to scan directly from a user-specified character buffer.
7483  * @param base the character buffer
7484  * @param size the size in bytes of the character buffer
7485  *
7486  * @return the newly allocated buffer state object.
7487  */
7488 YY_BUFFER_STATE yy_scan_buffer  (char * base, yy_size_t  size )
7489 {
7490 	YY_BUFFER_STATE b;
7491 
7492 	if ( size < 2 ||
7493 	     base[size-2] != YY_END_OF_BUFFER_CHAR ||
7494 	     base[size-1] != YY_END_OF_BUFFER_CHAR )
7495 		/* They forgot to leave room for the EOB's. */
7496 		return NULL;
7497 
7498 	b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state )  );
7499 	if ( ! b )
7500 		YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
7501 
7502 	b->yy_buf_size = (int) (size - 2);	/* "- 2" to take care of EOB's */
7503 	b->yy_buf_pos = b->yy_ch_buf = base;
7504 	b->yy_is_our_buffer = 0;
7505 	b->yy_input_file = NULL;
7506 	b->yy_n_chars = b->yy_buf_size;
7507 	b->yy_is_interactive = 0;
7508 	b->yy_at_bol = 1;
7509 	b->yy_fill_buffer = 0;
7510 	b->yy_buffer_status = YY_BUFFER_NEW;
7511 
7512 	yy_switch_to_buffer( b  );
7513 
7514 	return b;
7515 }
7516 
7517 /** Setup the input buffer state to scan a string. The next call to yylex() will
7518  * scan from a @e copy of @a str.
7519  * @param yystr a NUL-terminated string to scan
7520  *
7521  * @return the newly allocated buffer state object.
7522  * @note If you want to scan bytes that may contain NUL values, then use
7523  *       yy_scan_bytes() instead.
7524  */
7525 YY_BUFFER_STATE yy_scan_string (const char * yystr )
7526 {
7527 
7528 	return yy_scan_bytes( yystr, (int) strlen(yystr) );
7529 }
7530 
7531 /** Setup the input buffer state to scan the given bytes. The next call to yylex() will
7532  * scan from a @e copy of @a bytes.
7533  * @param yybytes the byte buffer to scan
7534  * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
7535  *
7536  * @return the newly allocated buffer state object.
7537  */
7538 YY_BUFFER_STATE yy_scan_bytes  (const char * yybytes, int  _yybytes_len )
7539 {
7540 	YY_BUFFER_STATE b;
7541 	char *buf;
7542 	yy_size_t n;
7543 	int i;
7544 
7545 	/* Get memory for full buffer, including space for trailing EOB's. */
7546 	n = (yy_size_t) (_yybytes_len + 2);
7547 	buf = (char *) yyalloc( n  );
7548 	if ( ! buf )
7549 		YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
7550 
7551 	for ( i = 0; i < _yybytes_len; ++i )
7552 		buf[i] = yybytes[i];
7553 
7554 	buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
7555 
7556 	b = yy_scan_buffer( buf, n );
7557 	if ( ! b )
7558 		YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
7559 
7560 	/* It's okay to grow etc. this buffer, and we should throw it
7561 	 * away when we're done.
7562 	 */
7563 	b->yy_is_our_buffer = 1;
7564 
7565 	return b;
7566 }
7567 
7568 #ifndef YY_EXIT_FAILURE
7569 #define YY_EXIT_FAILURE 2
7570 #endif
7571 
7572 static void yynoreturn yy_fatal_error (const char* msg )
7573 {
7574 			fprintf( stderr, "%s\n", msg );
7575 	exit( YY_EXIT_FAILURE );
7576 }
7577 
7578 /* Redefine yyless() so it works in section 3 code. */
7579 
7580 #undef yyless
7581 #define yyless(n) \
7582 	do \
7583 		{ \
7584 		/* Undo effects of setting up yytext. */ \
7585         int yyless_macro_arg = (n); \
7586         YY_LESS_LINENO(yyless_macro_arg);\
7587 		yytext[yyleng] = (yy_hold_char); \
7588 		(yy_c_buf_p) = yytext + yyless_macro_arg; \
7589 		(yy_hold_char) = *(yy_c_buf_p); \
7590 		*(yy_c_buf_p) = '\0'; \
7591 		yyleng = yyless_macro_arg; \
7592 		} \
7593 	while ( 0 )
7594 
7595 /* Accessor  methods (get/set functions) to struct members. */
7596 
7597 /** Get the current line number.
7598  *
7599  */
7600 int yyget_lineno  (void)
7601 {
7602 
7603     return yylineno;
7604 }
7605 
7606 /** Get the input stream.
7607  *
7608  */
7609 FILE *yyget_in  (void)
7610 {
7611         return yyin;
7612 }
7613 
7614 /** Get the output stream.
7615  *
7616  */
7617 FILE *yyget_out  (void)
7618 {
7619         return yyout;
7620 }
7621 
7622 /** Get the length of the current token.
7623  *
7624  */
7625 int yyget_leng  (void)
7626 {
7627         return yyleng;
7628 }
7629 
7630 /** Get the current token.
7631  *
7632  */
7633 
7634 char *yyget_text  (void)
7635 {
7636         return yytext;
7637 }
7638 
7639 /** Set the current line number.
7640  * @param _line_number line number
7641  *
7642  */
7643 void yyset_lineno (int  _line_number )
7644 {
7645 
7646     yylineno = _line_number;
7647 }
7648 
7649 /** Set the input stream. This does not discard the current
7650  * input buffer.
7651  * @param _in_str A readable stream.
7652  *
7653  * @see yy_switch_to_buffer
7654  */
7655 void yyset_in (FILE *  _in_str )
7656 {
7657         yyin = _in_str ;
7658 }
7659 
7660 void yyset_out (FILE *  _out_str )
7661 {
7662         yyout = _out_str ;
7663 }
7664 
7665 int yyget_debug  (void)
7666 {
7667         return yy_flex_debug;
7668 }
7669 
7670 void yyset_debug (int  _bdebug )
7671 {
7672         yy_flex_debug = _bdebug ;
7673 }
7674 
7675 static int yy_init_globals (void)
7676 {
7677         /* Initialization is the same as for the non-reentrant scanner.
7678      * This function is called from yylex_destroy(), so don't allocate here.
7679      */
7680 
7681     (yy_buffer_stack) = NULL;
7682     (yy_buffer_stack_top) = 0;
7683     (yy_buffer_stack_max) = 0;
7684     (yy_c_buf_p) = NULL;
7685     (yy_init) = 0;
7686     (yy_start) = 0;
7687 
7688 /* Defined in main.c */
7689 #ifdef YY_STDINIT
7690     yyin = stdin;
7691     yyout = stdout;
7692 #else
7693     yyin = NULL;
7694     yyout = NULL;
7695 #endif
7696 
7697     /* For future reference: Set errno on error, since we are called by
7698      * yylex_init()
7699      */
7700     return 0;
7701 }
7702 
7703 /* yylex_destroy is for both reentrant and non-reentrant scanners. */
7704 int yylex_destroy  (void)
7705 {
7706 
7707     /* Pop the buffer stack, destroying each element. */
7708 	while(YY_CURRENT_BUFFER){
7709 		yy_delete_buffer( YY_CURRENT_BUFFER  );
7710 		YY_CURRENT_BUFFER_LVALUE = NULL;
7711 		yypop_buffer_state();
7712 	}
7713 
7714 	/* Destroy the stack itself. */
7715 	yyfree((yy_buffer_stack) );
7716 	(yy_buffer_stack) = NULL;
7717 
7718     /* Reset the globals. This is important in a non-reentrant scanner so the next time
7719      * yylex() is called, initialization will occur. */
7720     yy_init_globals( );
7721 
7722     return 0;
7723 }
7724 
7725 /*
7726  * Internal utility routines.
7727  */
7728 
7729 #ifndef yytext_ptr
7730 static void yy_flex_strncpy (char* s1, const char * s2, int n )
7731 {
7732 
7733 	int i;
7734 	for ( i = 0; i < n; ++i )
7735 		s1[i] = s2[i];
7736 }
7737 #endif
7738 
7739 #ifdef YY_NEED_STRLEN
7740 static int yy_flex_strlen (const char * s )
7741 {
7742 	int n;
7743 	for ( n = 0; s[n]; ++n )
7744 		;
7745 
7746 	return n;
7747 }
7748 #endif
7749 
7750 void *yyalloc (yy_size_t  size )
7751 {
7752 			return malloc(size);
7753 }
7754 
7755 void *yyrealloc  (void * ptr, yy_size_t  size )
7756 {
7757 
7758 	/* The cast to (char *) in the following accommodates both
7759 	 * implementations that use char* generic pointers, and those
7760 	 * that use void* generic pointers.  It works with the latter
7761 	 * because both ANSI C and C++ allow castless assignment from
7762 	 * any pointer type to void*, and deal with argument conversions
7763 	 * as though doing an assignment.
7764 	 */
7765 	return realloc(ptr, size);
7766 }
7767 
7768 void yyfree (void * ptr )
7769 {
7770 			free( (char *) ptr );	/* see yyrealloc() for (char *) cast */
7771 }
7772 
7773 #define YYTABLES_NAME "yytables"
7774 
7775 #line 722 "util/configlexer.lex"
7776 
7777 
7778