ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/src/conf_lexer.c
Revision: 1783
Committed: Thu Jan 24 19:26:51 2013 UTC (12 years, 7 months ago) by michael
Content type: text/x-csrc
File size: 141211 byte(s)
Log Message:
- Forward-port -r1774:
  - Configuration parser now does support 'year' and 'month' units
  - Add support for fake idle times to /whois. Known from csircd, this
    adds min_idle, and max_idle configuration directives to class{} blocks

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

Properties

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