ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/src/conf_lexer.c
Revision: 2150
Committed: Fri May 31 18:39:43 2013 UTC (12 years, 2 months ago) by michael
Content type: text/x-csrc
File size: 140455 byte(s)
Log Message:
- Implement motd{} configuration blocks based on ircu's implementation

File Contents

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

Properties

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