ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/src/conf_lexer.c
Revision: 1506
Committed: Thu Aug 23 19:14:53 2012 UTC (13 years ago) by michael
Content type: text/x-csrc
Original Path: ircd-hybrid-8/src/conf_lexer.c
File size: 146340 byte(s)
Log Message:
- flex 2.5.37

File Contents

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

Properties

Name Value
svn:eol-style native