ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/src/conf_lexer.c
Revision: 4114
Committed: Tue Jul 1 16:47:15 2014 UTC (11 years, 1 month ago) by michael
Content type: text/x-csrc
File size: 147305 byte(s)
Log Message:
- Added ssl_message_digest_algorithm configuration option to serverinfo{} block.
  See doc/reference.conf for more information.

File Contents

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

Properties

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