ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/src/conf_lexer.c
Revision: 7625
Committed: Thu Jun 23 12:45:35 2016 UTC (9 years, 2 months ago) by michael
Content type: text/x-csrc
File size: 147346 byte(s)
Log Message:
- Re-built autogenerated files

File Contents

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

Properties

Name Value
svn:eol-style native
svn:keywords Id Revision