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

Properties

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