ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/src/conf_lexer.c
Revision: 1474
Committed: Sun Jul 22 14:44:07 2012 UTC (14 years, 2 months ago) by michael
Content type: text/x-csrc
Original Path: ircd-hybrid-8/src/conf_lexer.c
File size: 147527 byte(s)
Log Message:
- removed &localchannels

File Contents

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

Properties

Name Value
svn:eol-style native