ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/src/conf_lexer.c
Revision: 8964
Committed: Sat May 11 21:07:44 2019 UTC (6 years, 3 months ago) by michael
Content type: text/x-csrc
File size: 142015 byte(s)
Log Message:
- Recreate parser files

File Contents

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

Properties

Name Value
svn:eol-style native