ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/src/conf_lexer.c
Revision: 6378
Committed: Fri Aug 21 10:38:26 2015 UTC (10 years ago) by michael
Content type: text/x-csrc
File size: 141838 byte(s)
Log Message:
- Rebuild parser files

File Contents

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

Properties

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