ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/src/conf_lexer.c
Revision: 1519
Committed: Wed Sep 5 12:02:04 2012 UTC (12 years, 11 months ago) by michael
Content type: text/x-csrc
Original Path: ircd-hybrid-8/src/conf_lexer.c
File size: 145063 byte(s)
Log Message:
- Topics as well as user-aways are now sent in a burst by default

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

Properties

Name Value
svn:eol-style native