ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/src/conf_lexer.c
Revision: 4298
Committed: Sun Jul 20 13:51:16 2014 UTC (12 years, 2 months ago) by michael
Content type: text/x-csrc
File size: 145980 byte(s)
Log Message:
- Fixed typos all over the place

File Contents

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

Properties

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