ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/src/conf_lexer.c
Revision: 8245
Committed: Mon May 15 17:09:05 2017 UTC (8 years, 3 months ago) by michael
Content type: text/x-csrc
File size: 148597 byte(s)
Log Message:
- flex 2.6.4

File Contents

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

Properties

Name Value
svn:eol-style native