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