ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/src/lex.yy.c
Revision: 69
Committed: Tue Oct 4 16:09:51 2005 UTC (19 years, 10 months ago) by adx
Content type: text/x-csrc
File size: 125675 byte(s)
Log Message:
- splitted ircd/libio, all headers connected with libio sources have been
  moved for internal use only. To use libio interface, include "libio.h"
  (which is already done in "stdinc.h")


File Contents

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

Properties

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