ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/src/conf_lexer.c
Revision: 1316
Committed: Tue Mar 27 17:05:51 2012 UTC (13 years, 5 months ago) by michael
Content type: text/x-csrc
Original Path: ircd-hybrid-8/src/conf_lexer.c
File size: 147094 byte(s)
Log Message:
- Removed 'ssl_server_protocol' configuration directive and
  added 'ssl_client_method' and 'ssl_server_method' instead.

  Both of these options can now be changed at runtime.

- src/Makefile.am: swapped order of conf_parser.y and conf_lexer.l
- Update example configuration files

File Contents

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

Properties

Name Value
svn:eol-style native