kernel - Implement sbrk(), change low-address mmap hinting
[dragonfly.git] / contrib / flex / scan.c
blob1c5894d9b0e63ab59cb452f5e2fafa4f8550de7f
2 #line 3 "scan.c"
4 #define YY_INT_ALIGNED short int
6 /* A lexical scanner generated by flex */
8 #define FLEX_SCANNER
9 #define YY_FLEX_MAJOR_VERSION 2
10 #define YY_FLEX_MINOR_VERSION 5
11 #define YY_FLEX_SUBMINOR_VERSION 36
12 #if YY_FLEX_SUBMINOR_VERSION > 0
13 #define FLEX_BETA
14 #endif
16 /* First, we deal with platform-specific or compiler-specific issues. */
18 /* begin standard C headers. */
19 #include <stdio.h>
20 #include <string.h>
21 #include <errno.h>
22 #include <stdlib.h>
24 /* end standard C headers. */
26 /* flex integer type definitions */
28 #ifndef FLEXINT_H
29 #define FLEXINT_H
31 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
33 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
35 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
36 * if you want the limit (max/min) macros for int types.
38 #ifndef __STDC_LIMIT_MACROS
39 #define __STDC_LIMIT_MACROS 1
40 #endif
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;
57 /* Limits of integral types. */
58 #ifndef INT8_MIN
59 #define INT8_MIN (-128)
60 #endif
61 #ifndef INT16_MIN
62 #define INT16_MIN (-32767-1)
63 #endif
64 #ifndef INT32_MIN
65 #define INT32_MIN (-2147483647-1)
66 #endif
67 #ifndef INT8_MAX
68 #define INT8_MAX (127)
69 #endif
70 #ifndef INT16_MAX
71 #define INT16_MAX (32767)
72 #endif
73 #ifndef INT32_MAX
74 #define INT32_MAX (2147483647)
75 #endif
76 #ifndef UINT8_MAX
77 #define UINT8_MAX (255U)
78 #endif
79 #ifndef UINT16_MAX
80 #define UINT16_MAX (65535U)
81 #endif
82 #ifndef UINT32_MAX
83 #define UINT32_MAX (4294967295U)
84 #endif
86 #endif /* ! C99 */
88 #endif /* ! FLEXINT_H */
90 #ifdef __cplusplus
92 /* The "const" storage-class-modifier is valid. */
93 #define YY_USE_CONST
95 #else /* ! __cplusplus */
97 /* C99 requires __STDC__ to be defined as 1. */
98 #if defined (__STDC__)
100 #define YY_USE_CONST
102 #endif /* defined (__STDC__) */
103 #endif /* ! __cplusplus */
105 #ifdef YY_USE_CONST
106 #define yyconst const
107 #else
108 #define yyconst
109 #endif
111 /* Returned upon end-of-file. */
112 #define YY_NULL 0
114 /* Promotes a possibly negative, possibly signed char to an unsigned
115 * integer for use as an array index. If the signed char is negative,
116 * we want to instead treat it as an 8-bit unsigned char, hence the
117 * double cast.
119 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
121 /* Enter a start condition. This macro really ought to take a parameter,
122 * but we do it the disgusting crufty way forced on us by the ()-less
123 * definition of BEGIN.
125 #define BEGIN (yy_start) = 1 + 2 *
127 /* Translate the current start state into a value that can be later handed
128 * to BEGIN to return to the state. The YYSTATE alias is for lex
129 * compatibility.
131 #define YY_START (((yy_start) - 1) / 2)
132 #define YYSTATE YY_START
134 /* Action number for EOF rule of a given start state. */
135 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
137 /* Special action meaning "start processing a new file". */
138 #define YY_NEW_FILE yyrestart(yyin )
140 #define YY_END_OF_BUFFER_CHAR 0
142 /* Size of default input buffer. */
143 #ifndef YY_BUF_SIZE
144 #define YY_BUF_SIZE 16384
145 #endif
147 /* The state buf must be large enough to hold one state per character in the main buffer.
149 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
151 #ifndef YY_TYPEDEF_YY_BUFFER_STATE
152 #define YY_TYPEDEF_YY_BUFFER_STATE
153 typedef struct yy_buffer_state *YY_BUFFER_STATE;
154 #endif
156 #ifndef YY_TYPEDEF_YY_SIZE_T
157 #define YY_TYPEDEF_YY_SIZE_T
158 typedef size_t yy_size_t;
159 #endif
161 extern yy_size_t yyleng;
163 extern FILE *yyin, *yyout;
165 #define EOB_ACT_CONTINUE_SCAN 0
166 #define EOB_ACT_END_OF_FILE 1
167 #define EOB_ACT_LAST_MATCH 2
169 #define YY_LESS_LINENO(n)
171 /* Return all but the first "n" matched characters back to the input stream. */
172 #define yyless(n) \
173 do \
175 /* Undo effects of setting up yytext. */ \
176 int yyless_macro_arg = (n); \
177 YY_LESS_LINENO(yyless_macro_arg);\
178 *yy_cp = (yy_hold_char); \
179 YY_RESTORE_YY_MORE_OFFSET \
180 (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
181 YY_DO_BEFORE_ACTION; /* set up yytext again */ \
183 while ( 0 )
185 #define unput(c) yyunput( c, (yytext_ptr) )
187 #ifndef YY_STRUCT_YY_BUFFER_STATE
188 #define YY_STRUCT_YY_BUFFER_STATE
189 struct yy_buffer_state
191 FILE *yy_input_file;
193 char *yy_ch_buf; /* input buffer */
194 char *yy_buf_pos; /* current position in input buffer */
196 /* Size of input buffer in bytes, not including room for EOB
197 * characters.
199 yy_size_t yy_buf_size;
201 /* Number of characters read into yy_ch_buf, not including EOB
202 * characters.
204 yy_size_t yy_n_chars;
206 /* Whether we "own" the buffer - i.e., we know we created it,
207 * and can realloc() it to grow it, and should free() it to
208 * delete it.
210 int yy_is_our_buffer;
212 /* Whether this is an "interactive" input source; if so, and
213 * if we're using stdio for input, then we want to use getc()
214 * instead of fread(), to make sure we stop fetching input after
215 * each newline.
217 int yy_is_interactive;
219 /* Whether we're considered to be at the beginning of a line.
220 * If so, '^' rules will be active on the next match, otherwise
221 * not.
223 int yy_at_bol;
225 int yy_bs_lineno; /**< The line count. */
226 int yy_bs_column; /**< The column count. */
228 /* Whether to try to fill the input buffer when we reach the
229 * end of it.
231 int yy_fill_buffer;
233 int yy_buffer_status;
235 #define YY_BUFFER_NEW 0
236 #define YY_BUFFER_NORMAL 1
237 /* When an EOF's been seen but there's still some text to process
238 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
239 * shouldn't try reading from the input source any more. We might
240 * still have a bunch of tokens to match, though, because of
241 * possible backing-up.
243 * When we actually see the EOF, we change the status to "new"
244 * (via yyrestart()), so that the user can continue scanning by
245 * just pointing yyin at a new input file.
247 #define YY_BUFFER_EOF_PENDING 2
250 #endif /* !YY_STRUCT_YY_BUFFER_STATE */
252 /* Stack of input buffers. */
253 static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
254 static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
255 static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */
257 /* We provide macros for accessing buffer states in case in the
258 * future we want to put the buffer states in a more general
259 * "scanner state".
261 * Returns the top of the stack, or NULL.
263 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
264 ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
265 : NULL)
267 /* Same as previous macro, but useful when we know that the buffer stack is not
268 * NULL or when we need an lvalue. For internal use only.
270 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
272 /* yy_hold_char holds the character lost when yytext is formed. */
273 static char yy_hold_char;
274 static yy_size_t yy_n_chars; /* number of characters read into yy_ch_buf */
275 yy_size_t yyleng;
277 /* Points to current character in buffer. */
278 static char *yy_c_buf_p = (char *) 0;
279 static int yy_init = 0; /* whether we need to initialize */
280 static int yy_start = 0; /* start state number */
282 /* Flag which is used to allow yywrap()'s to do buffer switches
283 * instead of setting up a fresh yyin. A bit of a hack ...
285 static int yy_did_buffer_switch_on_eof;
287 void yyrestart (FILE *input_file );
288 void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer );
289 YY_BUFFER_STATE yy_create_buffer (FILE *file,int size );
290 void yy_delete_buffer (YY_BUFFER_STATE b );
291 void yy_flush_buffer (YY_BUFFER_STATE b );
292 void yypush_buffer_state (YY_BUFFER_STATE new_buffer );
293 void yypop_buffer_state (void );
295 static void yyensure_buffer_stack (void );
296 static void yy_load_buffer_state (void );
297 static void yy_init_buffer (YY_BUFFER_STATE b,FILE *file );
299 #define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER )
301 YY_BUFFER_STATE yy_scan_buffer (char *base,yy_size_t size );
302 YY_BUFFER_STATE yy_scan_string (yyconst char *yy_str );
303 YY_BUFFER_STATE yy_scan_bytes (yyconst char *bytes,yy_size_t len );
305 void *yyalloc (yy_size_t );
306 void *yyrealloc (void *,yy_size_t );
307 void yyfree (void * );
309 #define yy_new_buffer yy_create_buffer
311 #define yy_set_interactive(is_interactive) \
313 if ( ! YY_CURRENT_BUFFER ){ \
314 yyensure_buffer_stack (); \
315 YY_CURRENT_BUFFER_LVALUE = \
316 yy_create_buffer(yyin,YY_BUF_SIZE ); \
318 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
321 #define yy_set_bol(at_bol) \
323 if ( ! YY_CURRENT_BUFFER ){\
324 yyensure_buffer_stack (); \
325 YY_CURRENT_BUFFER_LVALUE = \
326 yy_create_buffer(yyin,YY_BUF_SIZE ); \
328 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
331 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
333 /* Begin user sect3 */
335 typedef unsigned char YY_CHAR;
337 FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
339 typedef int yy_state_type;
341 extern int yylineno;
343 int yylineno = 1;
345 extern char *yytext;
346 #define yytext_ptr yytext
348 static yy_state_type yy_get_previous_state (void );
349 static yy_state_type yy_try_NUL_trans (yy_state_type current_state );
350 static int yy_get_next_buffer (void );
351 static void yy_fatal_error (yyconst char msg[] );
353 /* Done after the current pattern has been matched and before the
354 * corresponding action - sets up yytext.
356 #define YY_DO_BEFORE_ACTION \
357 (yytext_ptr) = yy_bp; \
358 (yytext_ptr) -= (yy_more_len); \
359 yyleng = (size_t) (yy_cp - (yytext_ptr)); \
360 (yy_hold_char) = *yy_cp; \
361 *yy_cp = '\0'; \
362 (yy_c_buf_p) = yy_cp;
364 #define YY_NUM_RULES 251
365 #define YY_END_OF_BUFFER 252
366 /* This struct is not used in this scanner,
367 but its presence is necessary. */
368 struct yy_trans_info
370 flex_int32_t yy_verify;
371 flex_int32_t yy_nxt;
373 static yyconst flex_int16_t yy_acclist[1223] =
374 { 0,
375 248, 248, 252, 250, 251, 9, 250, 251, 20, 250,
376 251, 250, 251, 18, 250, 251, 1, 9, 250, 251,
377 19, 20, 250, 251, 250, 251, 250, 251, 250, 251,
378 250, 251, 17, 18, 250, 251, 164, 250, 251, 149,
379 164, 250, 251, 150, 250, 251, 164, 250, 251, 142,
380 164, 250, 251, 164, 250, 251, 161, 163, 164, 250,
381 251, 162, 163, 164, 250, 251, 163, 164, 250, 251,
382 163, 164, 250, 251, 164, 250, 251, 164, 250, 251,
383 164, 250, 251, 163, 164, 250, 251, 148, 149, 164,
384 250, 251, 138, 150, 250, 251, 164, 250, 251, 164,
386 250, 251, 140, 164, 250, 251, 141, 164, 250, 251,
387 136, 250, 251, 137, 250, 251, 136, 250, 251, 135,
388 136, 250, 251, 134, 136, 250, 251, 135, 136, 250,
389 251, 248, 249, 250, 251, 248, 249, 250, 251, 249,
390 250, 251, 249, 250, 251, 41, 250, 251, 42, 250,
391 251, 41, 250, 251, 41, 250, 251, 41, 250, 251,
392 41, 250, 251, 41, 250, 251, 41, 250, 251, 50,
393 250, 251, 49, 250, 251, 51, 250, 251, 250, 251,
394 170, 250, 251, 170, 250, 251, 165, 250, 251, 170,
395 250, 251, 166, 170, 250, 251, 167, 170, 250, 251,
397 169, 170, 250, 251, 171, 250, 251, 219, 250, 251,
398 220, 250, 251, 219, 250, 251, 217, 219, 250, 251,
399 216, 219, 250, 251, 218, 219, 250, 251, 172, 250,
400 251, 174, 250, 251, 172, 250, 251, 173, 250, 251,
401 172, 250, 251, 186, 250, 251, 186, 250, 251, 186,
402 250, 251, 186, 250, 251, 188, 190, 250, 251, 190,
403 250, 251, 188, 190, 250, 251, 188, 190, 250, 251,
404 188, 190, 250, 251, 188, 190, 250, 251, 189, 190,
405 250, 251, 233, 239, 250, 251, 238, 250, 251, 233,
406 239, 250, 251, 237, 239, 250, 251, 239, 250, 251,
408 239, 250, 251, 235, 239, 250, 251, 235, 239, 250,
409 251, 235, 239, 250, 251, 234, 239, 250, 251, 234,
410 239, 250, 251, 229, 239, 250, 251, 230, 239, 250,
411 251, 250, 251, 131, 250, 251, 250, 251, 25, 250,
412 251, 26, 250, 251, 25, 250, 251, 22, 250, 251,
413 25, 250, 251, 25, 250, 251, 240, 244, 250, 251,
414 242, 250, 251, 240, 244, 250, 251, 243, 244, 250,
415 251, 244, 250, 251, 227, 250, 251, 227, 250, 251,
416 228, 250, 251, 227, 250, 251, 227, 250, 251, 227,
417 250, 251, 227, 250, 251, 227, 250, 251, 227, 250,
419 251, 227, 250, 251, 130, 250, 251, 53, 130, 250,
420 251, 52, 250, 251, 130, 250, 251, 130, 250, 251,
421 130, 250, 251, 130, 250, 251, 54, 130, 250, 251,
422 130, 250, 251, 130, 250, 251, 130, 250, 251, 130,
423 250, 251, 130, 250, 251, 130, 250, 251, 130, 250,
424 251, 130, 250, 251, 130, 250, 251, 130, 250, 251,
425 130, 250, 251, 130, 250, 251, 130, 250, 251, 130,
426 250, 251, 130, 250, 251, 130, 250, 251, 130, 250,
427 251, 130, 250, 251, 130, 250, 251, 130, 250, 251,
428 130, 250, 251, 37, 250, 251, 34, 250, 251, 37,
430 250, 251, 35, 37, 250, 251, 48, 250, 251, 45,
431 250, 251, 250, 251, 48, 250, 251, 48, 250, 251,
432 44, 250, 251, 43, 250, 251, 176, 250, 251, 175,
433 250, 251, 177, 250, 251, 178, 250, 251, 179, 250,
434 251, 180, 250, 251, 181, 250, 251, 182, 250, 251,
435 183, 250, 251, 32, 250, 251, 33, 250, 251, 32,
436 250, 251, 31, 250, 251, 29, 250, 251, 30, 250,
437 251, 29, 250, 251, 28, 250, 251, 9, 20, 18,
438 1, 9, 19, 20, 16, 10, 16, 4, 16, 5,
439 2, 17, 18, 149, 150, 144, 160, 158, 154, 154,
441 245, 245, 245, 143, 148, 149, 138, 150, 140, 141,
442 153, 139, 137, 135, 134, 134, 132, 135, 133, 135,
443 248, 248, 246, 247, 42, 39, 40, 50, 49, 51,
444 165, 165, 168, 169, 220, 216, 174, 184, 185, 190,
445 187, 233, 238, 236, 222, 235, 235, 235, 231, 232,
446 131, 26, 21, 23, 24, 240, 242, 241, 228, 221,
447 225, 226, 53, 52, 129, 130, 130, 130, 130, 130,
448 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
449 130, 130, 130, 130, 130, 55, 130, 130, 130, 130,
450 130, 130, 130, 130, 130, 130, 130, 36, 35, 45,
452 46, 47, 32, 33, 30, 27, 16, 10, 16, 14,
453 4, 16, 5, 6, 145, 146, 159, 154, 154, 154,
454 154, 154, 245, 245, 156, 155, 157, 139, 145, 147,
455 153, 132, 135, 133, 135, 38, 235, 235, 221, 130,
456 130, 130, 130, 130, 130, 130, 67, 130, 130, 130,
457 130, 72, 130, 130, 130, 130, 130, 130, 130, 130,
458 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
459 130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
460 130, 130, 130, 130, 130, 130, 130, 14, 15, 4,
461 8, 16, 5, 154, 154, 154, 154, 154, 154, 154,
463 245, 157, 235, 235, 56, 57, 130, 130, 130, 130,
464 130, 130, 130, 130, 130, 130, 130, 73, 130, 74,
465 130, 130, 130, 130, 130, 79, 130, 130, 130, 130,
466 130, 130, 130, 130, 84, 130, 130, 130, 130, 130,
467 130, 130, 130, 130, 130, 93, 130, 130, 130, 130,
468 130, 130, 130, 130, 130, 130, 15, 8, 16, 8,
469 16, 8, 16, 154, 154, 154, 154, 154, 154, 154,
470 215, 235, 235, 58, 130, 130, 130, 60, 130, 130,
471 64, 130, 130, 130, 130, 130, 70, 130, 130, 130,
472 130, 75, 130, 130, 130, 130, 130, 130, 130, 130,
474 130, 130, 130, 130, 87, 130, 130, 130, 130, 130,
475 91, 130, 130, 130, 130, 130, 130, 130, 130, 130,
476 130, 130, 3, 8, 16, 7, 8, 16, 154, 154,
477 154, 223, 224, 223, 235, 224, 235, 130, 130, 130,
478 63, 130, 130, 130, 130, 130, 130, 130, 130, 126,
479 130, 130, 130, 130, 130, 130, 130, 130, 130, 124,
480 130, 130, 86, 130, 130, 89, 130, 130, 90, 130,
481 130, 130, 130, 105, 130, 130, 95, 130, 130, 96,
482 130, 12, 13, 152, 151, 152, 130, 130, 130, 130,
483 130, 130, 130, 68, 130, 130, 71, 130, 130, 130,
485 130, 130, 130, 130, 123, 130, 130, 83, 130, 130,
486 130, 88, 130, 130, 92, 130, 103, 130, 125, 130,
487 130, 130, 151, 130, 130, 130, 130, 130, 130, 130,
488 69, 130, 130, 130, 130, 130, 80, 130, 130, 130,
489 130, 130, 130, 130, 114, 94, 130, 130, 115, 11,
490 191, 215, 192, 215, 193, 215, 194, 215, 195, 215,
491 196, 215, 197, 215, 198, 215, 199, 215, 200, 215,
492 201, 215, 130, 130, 130, 130, 130, 130, 130, 130,
493 130, 130, 130, 130, 130, 130, 85, 130, 130, 130,
494 116, 104, 130, 117, 202, 215, 203, 215, 204, 215,
496 205, 215, 206, 215, 207, 215, 208, 215, 209, 215,
497 210, 215, 211, 215, 212, 215, 213, 215, 130, 130,
498 130, 130, 130, 130, 130, 122, 130, 130, 130, 77,
499 130, 130, 130, 130, 130, 130, 110, 120, 118, 111,
500 121, 119, 214, 215, 130, 130, 130, 130, 130, 130,
501 130, 126, 130, 76, 130, 130, 82, 130, 130, 127,
502 130, 130, 106, 108, 107, 109, 130, 130, 130, 65,
503 130, 130, 130, 130, 130, 78, 130, 130, 112, 113,
504 98, 99, 130, 130, 130, 130, 130, 130, 130, 128,
505 130, 97, 101, 130, 130, 130, 130, 130, 68, 130,
507 130, 100, 102, 130, 130, 62, 130, 66, 130, 130,
508 130, 130, 61, 130, 69, 130, 130, 130, 81, 130,
509 59, 130
512 static yyconst flex_int16_t yy_accept[1108] =
513 { 0,
514 1, 1, 1, 1, 1, 1, 1, 2, 3, 3,
515 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
516 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
517 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
518 3, 3, 3, 3, 3, 3, 3, 3, 3, 4,
519 6, 9, 12, 14, 17, 21, 25, 27, 29, 31,
520 33, 37, 40, 44, 47, 50, 54, 57, 62, 67,
521 71, 75, 78, 81, 84, 88, 93, 97, 100, 103,
522 107, 111, 114, 117, 120, 124, 128, 132, 136, 140,
523 143, 146, 149, 152, 155, 158, 161, 164, 167, 170,
525 173, 176, 179, 181, 184, 187, 190, 193, 197, 201,
526 205, 208, 211, 214, 217, 221, 225, 229, 232, 235,
527 238, 241, 244, 247, 250, 253, 256, 260, 263, 267,
528 271, 275, 279, 283, 287, 290, 294, 298, 301, 304,
529 308, 312, 316, 320, 324, 328, 332, 334, 337, 339,
530 342, 345, 348, 351, 354, 357, 361, 364, 368, 372,
531 375, 378, 381, 384, 387, 390, 393, 396, 399, 402,
532 405, 408, 412, 415, 418, 421, 424, 427, 431, 434,
533 437, 440, 443, 446, 449, 452, 455, 458, 461, 464,
534 467, 470, 473, 476, 479, 482, 485, 488, 491, 494,
536 497, 500, 503, 507, 510, 513, 515, 518, 521, 524,
537 527, 530, 533, 536, 539, 542, 545, 548, 551, 554,
538 557, 560, 563, 566, 569, 572, 575, 578, 579, 580,
539 580, 581, 583, 585, 585, 585, 585, 586, 588, 588,
540 588, 588, 588, 589, 590, 591, 591, 592, 594, 595,
541 596, 596, 596, 596, 597, 597, 598, 599, 599, 600,
542 601, 601, 602, 603, 604, 604, 604, 605, 605, 607,
543 609, 609, 609, 609, 610, 611, 612, 613, 613, 614,
544 615, 616, 617, 619, 621, 622, 623, 624, 625, 626,
545 626, 626, 627, 628, 628, 629, 630, 631, 631, 632,
547 632, 633, 634, 635, 636, 637, 638, 638, 639, 640,
548 641, 642, 643, 644, 644, 645, 645, 646, 647, 648,
549 649, 650, 651, 651, 652, 652, 653, 654, 655, 656,
550 657, 658, 659, 659, 659, 660, 661, 662, 663, 664,
551 665, 665, 666, 666, 666, 667, 668, 669, 670, 671,
552 672, 673, 674, 675, 676, 677, 678, 679, 680, 681,
553 682, 683, 684, 685, 686, 687, 688, 689, 690, 691,
554 692, 693, 694, 695, 696, 697, 698, 698, 699, 700,
555 701, 702, 703, 704, 705, 706, 707, 707, 708, 710,
556 710, 711, 711, 711, 711, 711, 711, 712, 713, 714,
558 714, 715, 715, 716, 716, 717, 717, 718, 718, 719,
559 720, 720, 721, 722, 723, 724, 725, 726, 727, 727,
560 728, 730, 731, 731, 732, 732, 734, 736, 736, 736,
561 736, 737, 737, 737, 737, 737, 737, 737, 737, 737,
562 737, 737, 737, 737, 737, 738, 739, 740, 740, 740,
563 741, 742, 743, 744, 745, 746, 747, 749, 750, 751,
564 752, 754, 755, 756, 757, 758, 759, 760, 761, 762,
565 763, 764, 765, 766, 767, 768, 769, 770, 771, 772,
566 773, 774, 775, 776, 777, 778, 779, 780, 781, 782,
567 783, 784, 785, 786, 787, 788, 788, 788, 788, 788,
569 790, 790, 790, 790, 790, 790, 790, 791, 793, 794,
570 794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
571 803, 803, 803, 803, 803, 803, 803, 803, 803, 803,
572 803, 803, 803, 803, 803, 803, 803, 803, 803, 803,
573 803, 803, 803, 803, 803, 803, 804, 805, 806, 807,
574 808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
575 818, 820, 822, 823, 824, 825, 826, 828, 829, 830,
576 831, 832, 833, 834, 835, 837, 838, 839, 840, 841,
577 842, 843, 844, 845, 846, 848, 849, 850, 851, 852,
578 853, 854, 855, 856, 857, 857, 857, 857, 857, 858,
580 858, 858, 858, 858, 858, 860, 862, 864, 864, 865,
581 866, 867, 868, 869, 870, 871, 871, 871, 871, 871,
582 872, 872, 872, 872, 872, 872, 872, 872, 872, 872,
583 872, 872, 872, 872, 872, 872, 872, 872, 872, 872,
584 872, 872, 872, 872, 873, 874, 876, 877, 878, 880,
585 881, 883, 884, 885, 886, 887, 889, 890, 891, 892,
586 894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
587 904, 905, 907, 908, 909, 910, 911, 913, 914, 915,
588 916, 917, 918, 919, 920, 921, 922, 923, 923, 923,
589 923, 923, 924, 924, 924, 924, 926, 927, 929, 929,
591 930, 931, 932, 932, 932, 933, 934, 934, 934, 934,
592 934, 934, 934, 934, 934, 934, 934, 934, 934, 934,
593 934, 934, 934, 934, 934, 934, 934, 934, 934, 934,
594 934, 936, 938, 939, 940, 941, 943, 944, 945, 946,
595 947, 948, 949, 950, 952, 953, 954, 955, 956, 957,
596 958, 959, 960, 962, 963, 965, 966, 968, 969, 971,
597 972, 973, 974, 976, 976, 977, 979, 980, 980, 982,
598 982, 982, 982, 982, 982, 983, 983, 984, 984, 985,
599 985, 987, 987, 987, 987, 987, 987, 987, 987, 987,
600 987, 987, 987, 987, 987, 987, 987, 987, 987, 987,
602 987, 987, 987, 987, 987, 987, 988, 989, 990, 991,
603 992, 993, 994, 996, 997, 999, 1000, 1001, 1002, 1003,
604 1004, 1005, 1007, 1008, 1010, 1011, 1012, 1014, 1015, 1017,
605 1019, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1022, 1023,
606 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023,
607 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
608 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
609 1024, 1024, 1024, 1024, 1024, 1025, 1026, 1027, 1028, 1029,
610 1030, 1031, 1033, 1034, 1035, 1036, 1037, 1039, 1040, 1041,
611 1042, 1043, 1044, 1045, 1045, 1045, 1046, 1046, 1046, 1046,
613 1046, 1046, 1046, 1048, 1049, 1049, 1049, 1050, 1050, 1050,
614 1050, 1050, 1050, 1050, 1050, 1050, 1050, 1051, 1051, 1053,
615 1055, 1057, 1059, 1061, 1063, 1065, 1067, 1069, 1071, 1073,
616 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073,
617 1073, 1073, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080,
618 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1089, 1090, 1091,
619 1091, 1091, 1091, 1091, 1091, 1091, 1092, 1092, 1094, 1094,
620 1094, 1094, 1094, 1094, 1095, 1095, 1095, 1095, 1095, 1095,
621 1097, 1099, 1101, 1103, 1105, 1107, 1109, 1111, 1113, 1115,
622 1117, 1119, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126,
624 1128, 1129, 1130, 1132, 1133, 1134, 1135, 1136, 1137, 1137,
625 1137, 1138, 1138, 1139, 1140, 1141, 1141, 1141, 1141, 1142,
626 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1145, 1146, 1147,
627 1148, 1149, 1150, 1151, 1152, 1154, 1156, 1157, 1159, 1160,
628 1162, 1163, 1164, 1165, 1165, 1166, 1167, 1167, 1167, 1167,
629 1167, 1167, 1167, 1167, 1168, 1169, 1170, 1172, 1173, 1174,
630 1175, 1176, 1178, 1179, 1180, 1181, 1182, 1182, 1182, 1182,
631 1182, 1183, 1184, 1185, 1186, 1187, 1188, 1189, 1190, 1192,
632 1193, 1193, 1194, 1194, 1195, 1196, 1197, 1198, 1199, 1201,
633 1202, 1203, 1204, 1205, 1206, 1208, 1210, 1211, 1212, 1213,
635 1215, 1217, 1218, 1219, 1221, 1223, 1223
638 static yyconst flex_int32_t yy_ec[256] =
639 { 0,
640 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
641 4, 4, 5, 1, 1, 1, 1, 1, 1, 1,
642 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
643 1, 2, 1, 6, 7, 8, 9, 1, 10, 11,
644 12, 13, 14, 15, 16, 17, 18, 19, 19, 19,
645 19, 19, 19, 19, 20, 21, 22, 23, 1, 24,
646 25, 26, 27, 1, 28, 29, 30, 31, 32, 33,
647 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
648 44, 45, 46, 47, 48, 49, 50, 51, 52, 44,
649 53, 54, 55, 56, 57, 1, 58, 59, 60, 61,
651 62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
652 72, 73, 44, 74, 75, 76, 77, 78, 79, 80,
653 81, 44, 82, 83, 84, 1, 1, 1, 1, 1,
654 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
655 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
656 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
657 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
658 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
659 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
660 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
662 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
663 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
664 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
665 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
666 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
667 1, 1, 1, 1, 1
670 static yyconst flex_int32_t yy_meta[85] =
671 { 0,
672 1, 1, 2, 1, 3, 4, 1, 1, 1, 5,
673 1, 6, 1, 7, 1, 8, 1, 5, 9, 9,
674 9, 9, 10, 1, 1, 1, 1, 11, 11, 11,
675 11, 11, 11, 12, 12, 12, 12, 12, 12, 12,
676 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
677 12, 12, 13, 14, 15, 1, 16, 11, 11, 11,
678 11, 11, 11, 12, 12, 12, 12, 12, 12, 12,
679 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
680 12, 5, 1, 17
683 static yyconst flex_int16_t yy_base[1201] =
684 { 0,
685 0, 84, 167, 250, 171, 184, 174, 179, 192, 233,
686 196, 200, 334, 0, 3343, 3340, 203, 416, 206, 211,
687 187, 216, 276, 417, 500, 0, 210, 223, 421, 427,
688 436, 440, 583, 588, 669, 0, 277, 299, 584, 751,
689 579, 580, 576, 732, 279, 305, 310, 444, 3378, 3975,
690 228, 3975, 3371, 0, 322, 3975, 3358, 423, 827, 3328,
691 0, 3975, 755, 3975, 3337, 3975, 448, 3312, 3975, 3975,
692 3323, 3291, 222, 408, 444, 764, 3975, 3311, 230, 3289,
693 3975, 3975, 3975, 3306, 0, 3306, 164, 3304, 3975, 3236,
694 3217, 3975, 3975, 3266, 239, 119, 3215, 3212, 3180, 0,
696 3248, 3975, 3243, 3975, 476, 3227, 3222, 3975, 3168, 0,
697 3975, 3975, 3975, 3203, 3975, 464, 3975, 3975, 3975, 3186,
698 3975, 742, 3975, 3161, 751, 180, 3975, 3975, 3171, 0,
699 3149, 757, 3975, 0, 3975, 3149, 3975, 200, 3138, 0,
700 429, 241, 3097, 3092, 3975, 3975, 306, 3975, 323, 3975,
701 3975, 3126, 3108, 3072, 3069, 0, 3975, 3115, 3975, 0,
702 3975, 446, 3975, 3114, 3031, 3098, 435, 371, 3045, 3026,
703 3975, 3076, 3975, 3074, 3070, 439, 440, 3975, 578, 751,
704 586, 562, 735, 752, 0, 572, 577, 588, 786, 749,
705 396, 809, 727, 582, 747, 753, 764, 769, 580, 3975,
707 3975, 3067, 588, 3975, 3975, 3053, 3002, 2996, 3975, 3975,
708 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 0,
709 3975, 3046, 3975, 3975, 3975, 3018, 2986, 837, 3975, 2998,
710 0, 847, 3975, 2997, 817, 777, 0, 0, 891, 903,
711 912, 924, 0, 774, 0, 451, 3975, 0, 858, 3975,
712 2996, 2914, 472, 3975, 2974, 2953, 3975, 791, 236, 822,
713 899, 3975, 275, 0, 2873, 2872, 3975, 2871, 949, 3975,
714 2949, 2850, 2918, 2906, 3975, 0, 3975, 796, 3975, 0,
715 0, 2925, 0, 0, 2597, 3975, 3975, 3975, 3975, 795,
716 794, 3975, 3975, 484, 0, 2597, 3975, 877, 2596, 2594,
718 2594, 3975, 0, 3975, 918, 3975, 1005, 3975, 3975, 3975,
719 3975, 0, 3975, 611, 3975, 0, 3975, 0, 853, 851,
720 3975, 3975, 490, 3975, 608, 3975, 3975, 3975, 3975, 0,
721 3975, 3975, 596, 2510, 3975, 0, 3975, 3975, 2588, 3975,
722 2581, 3975, 894, 906, 0, 911, 717, 727, 923, 728,
723 2571, 882, 930, 889, 902, 916, 917, 940, 928, 923,
724 940, 933, 0, 932, 3975, 935, 939, 951, 956, 1059,
725 964, 965, 1052, 955, 957, 1099, 2578, 3975, 1078, 3975,
726 3975, 3975, 0, 3975, 3975, 3975, 987, 0, 0, 1087,
727 3975, 2576, 1132, 985, 1046, 1058, 0, 1058, 0, 1009,
729 3975, 1016, 3975, 1057, 3975, 1099, 3975, 1068, 731, 1088,
730 1095, 1178, 1244, 1280, 988, 0, 3975, 3975, 2492, 1162,
731 3975, 3975, 1081, 0, 1086, 0, 0, 1098, 1105, 1100,
732 3975, 1167, 1245, 1246, 1247, 1250, 2539, 1248, 1249, 1258,
733 1244, 1251, 1259, 1321, 1233, 1224, 0, 1072, 1228, 1243,
734 1261, 1287, 1298, 1289, 1298, 1287, 0, 1299, 1228, 1308,
735 0, 1280, 1298, 1307, 1316, 1314, 1316, 2532, 1322, 1337,
736 1338, 1340, 1342, 1342, 1348, 1353, 1356, 1347, 1357, 1362,
737 1366, 1358, 1353, 1356, 1377, 1366, 1370, 1371, 1367, 1383,
738 1384, 1379, 1391, 1392, 1381, 1388, 1397, 1275, 1455, 3975,
740 1439, 1463, 1444, 1415, 1412, 1415, 0, 1409, 0, 1429,
741 1492, 1558, 1594, 1524, 2449, 1564, 1639, 3975, 3975, 1537,
742 1556, 1560, 1407, 2427, 1558, 1563, 1559, 1564, 1572, 1584,
743 1574, 1562, 1615, 1619, 1609, 1625, 1626, 1643, 1614, 1651,
744 1662, 1658, 1664, 1665, 1616, 1616, 1637, 3975, 3975, 1638,
745 1631, 2352, 1634, 1641, 1655, 1650, 1677, 1679, 1671, 1689,
746 0, 0, 1690, 1677, 1681, 1697, 0, 2348, 1684, 1694,
747 2274, 1686, 1685, 1695, 0, 1692, 1711, 1704, 1703, 1701,
748 1713, 1703, 1704, 1712, 0, 1717, 1731, 1731, 1719, 1723,
749 1722, 1741, 1726, 1742, 1734, 1747, 1741, 2241, 3975, 1464,
751 1485, 1729, 1743, 1740, 0, 1721, 1591, 2173, 1585, 2139,
752 1771, 1807, 1417, 962, 1426, 1755, 2049, 1745, 1769, 3975,
753 1774, 1782, 1789, 1775, 1796, 1791, 1810, 1800, 1820, 1822,
754 1821, 1823, 1832, 1831, 1838, 1840, 1853, 1856, 1854, 1855,
755 1863, 1865, 1861, 1846, 1862, 0, 1853, 1864, 0, 1857,
756 0, 2008, 1866, 1862, 1869, 0, 1874, 1893, 1870, 0,
757 1888, 1875, 1886, 1882, 1880, 1878, 1897, 1876, 1882, 1889,
758 1889, 0, 1904, 1895, 1899, 1919, 0, 1907, 1909, 1908,
759 1923, 1791, 1924, 1925, 1919, 1747, 1917, 1918, 1918, 1938,
760 1924, 1726, 1599, 1927, 1937, 1970, 3975, 1702, 1652, 1923,
762 1755, 1941, 1625, 1618, 3975, 3975, 1961, 1977, 1966, 1969,
763 1956, 1979, 1983, 1986, 1989, 1984, 1992, 1987, 1994, 1990,
764 1988, 1995, 2007, 2004, 2016, 2022, 1996, 2028, 2018, 2026,
765 0, 0, 1620, 1990, 2009, 0, 2035, 2020, 2035, 2029,
766 2024, 2025, 2029, 1589, 2049, 2041, 2052, 2048, 2053, 2054,
767 2044, 2057, 0, 2064, 0, 2048, 0, 1576, 0, 2064,
768 2070, 2056, 0, 2096, 2062, 0, 2067, 2108, 0, 1531,
769 2072, 2078, 1438, 1853, 3975, 2105, 3975, 2068, 3975, 1463,
770 3975, 1407, 1402, 1348, 1345, 1314, 1307, 1269, 1260, 1256,
771 1210, 1158, 2106, 2111, 2097, 2118, 2122, 2129, 2125, 2140,
773 2131, 2136, 2141, 2143, 2156, 2131, 2138, 2147, 2101, 2151,
774 2138, 2153, 0, 2141, 0, 2144, 2165, 2153, 2159, 2158,
775 2165, 0, 2165, 0, 2167, 2169, 0, 2178, 0, 0,
776 0, 2183, 2167, 2179, 2210, 2178, 2189, 2188, 2189, 2202,
777 2186, 2194, 2218, 2196, 2202, 1119, 1114, 2206, 2118, 3975,
778 1106, 1100, 1081, 1068, 1065, 1061, 1057, 972, 968, 965,
779 914, 925, 893, 881, 874, 869, 865, 861, 854, 843,
780 807, 802, 776, 2235, 2212, 2226, 2221, 2227, 2239, 2238,
781 2228, 0, 2228, 2239, 2242, 2252, 0, 2238, 2244, 2249,
782 2244, 2258, 2263, 2269, 2255, 3975, 2263, 2265, 2265, 2281,
784 2265, 2262, 0, 2285, 2288, 2274, 3975, 2277, 2280, 2295,
785 2279, 2280, 2283, 2303, 2283, 2330, 3975, 2335, 3975, 3975,
786 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 735,
787 612, 608, 598, 441, 374, 261, 245, 202, 152, 149,
788 137, 165, 2296, 2303, 2304, 2320, 2326, 2316, 2324, 2329,
789 2324, 2316, 2319, 2335, 2324, 2327, 0, 2332, 2328, 2327,
790 2332, 2345, 2348, 2352, 2344, 3975, 2338, 0, 2338, 2343,
791 2357, 2362, 2357, 3975, 2371, 2356, 2359, 2358, 2380, 3975,
792 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975,
793 3975, 128, 2384, 2382, 2373, 2387, 2376, 2378, 2378, 0,
795 2395, 2396, 0, 2385, 2384, 2405, 2403, 2401, 2405, 2413,
796 3975, 2401, 3975, 3975, 3975, 2409, 2416, 2404, 3975, 3975,
797 2400, 2422, 2422, 2414, 2417, 2417, 3975, 2421, 2421, 2418,
798 2424, 2441, 2442, 2443, 0, 0, 2453, 0, 2436, 0,
799 2451, 3975, 3975, 2445, 3975, 3975, 2446, 2457, 2445, 2461,
800 2464, 2462, 2468, 2473, 2466, 2460, 0, 2462, 2459, 2461,
801 2483, 0, 2463, 3975, 3975, 3975, 2484, 2488, 2476, 2482,
802 3975, 2495, 2485, 2497, 2495, 2501, 2506, 2493, 0, 3975,
803 2496, 3975, 2508, 2498, 2506, 2503, 2506, 2505, 0, 2520,
804 3975, 3975, 2522, 2514, 0, 0, 2529, 2514, 2515, 0,
806 0, 2533, 2539, 0, 0, 3975, 2601, 2618, 2635, 2652,
807 2669, 2686, 2703, 2720, 2737, 2754, 2771, 2788, 2805, 2822,
808 2839, 2856, 2873, 2890, 2907, 2917, 2933, 2942, 2958, 2975,
809 2986, 3002, 3019, 3036, 3053, 3063, 3079, 3096, 3113, 3127,
810 3137, 3153, 3170, 3187, 3204, 3215, 2009, 3227, 3244, 3254,
811 3270, 3287, 3294, 3300, 3316, 3326, 3342, 3359, 3376, 2564,
812 3386, 3403, 3420, 3437, 3454, 3471, 3488, 3505, 3522, 3532,
813 3548, 3562, 3572, 3588, 3605, 3622, 3639, 3650, 3662, 3679,
814 3696, 3713, 3730, 3740, 3749, 3765, 3782, 3799, 2571, 3809,
815 3826, 3843, 3860, 3877, 3885, 3890, 3906, 3923, 3940, 3957
819 static yyconst flex_int16_t yy_def[1201] =
820 { 0,
821 1106, 1106, 1107, 1107, 1108, 1109, 1110, 1110, 1111, 1111,
822 1112, 1112, 1106, 13, 1113, 1113, 1114, 1114, 1115, 1115,
823 1116, 1116, 1117, 1117, 1106, 25, 1118, 1118, 1119, 1119,
824 1120, 1120, 1121, 1121, 1106, 35, 1122, 1122, 1123, 1123,
825 1113, 1113, 1113, 1113, 1124, 1124, 1125, 1125, 1106, 1106,
826 1106, 1106, 1106, 1126, 1106, 1106, 1106, 1106, 1127, 1106,
827 1128, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
828 1106, 1106, 1129, 1130, 1131, 1106, 1106, 1106, 1106, 1106,
829 1106, 1106, 1106, 1106, 1132, 1133, 1132, 1134, 1106, 1106,
830 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1135,
832 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1136,
833 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
834 1106, 1130, 1106, 1106, 1130, 1137, 1106, 1106, 1106, 1138,
835 1106, 1130, 1106, 1139, 1106, 1139, 1106, 1140, 1106, 1141,
836 1141, 1141, 1106, 1106, 1106, 1106, 1142, 1106, 1142, 1106,
837 1106, 1106, 1106, 1106, 1106, 1143, 1106, 1143, 1106, 1144,
838 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
839 1106, 1106, 1106, 1106, 1145, 1106, 1106, 1106, 1146, 1146,
840 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1147,
841 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1106,
843 1106, 1148, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
844 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1149,
845 1106, 1149, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
846 1150, 1106, 1106, 1106, 1106, 1106, 1151, 1152, 1106, 1106,
847 1106, 1106, 1153, 1151, 1154, 1155, 1106, 1156, 1106, 1106,
848 1106, 1106, 1157, 1106, 1106, 1106, 1106, 1106, 1158, 1158,
849 1159, 1106, 1106, 1160, 1106, 1106, 1106, 1161, 1106, 1106,
850 1106, 1106, 1106, 1106, 1106, 1162, 1106, 1106, 1106, 1163,
851 1164, 1164, 1165, 1166, 1167, 1106, 1106, 1106, 1106, 1106,
852 1106, 1106, 1106, 1168, 1169, 1106, 1106, 1106, 1106, 1106,
854 1106, 1106, 1170, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
855 1106, 1171, 1106, 1172, 1106, 1172, 1106, 1173, 1173, 1173,
856 1106, 1106, 1174, 1106, 1174, 1106, 1106, 1106, 1106, 1175,
857 1106, 1106, 1106, 1106, 1106, 1176, 1106, 1106, 1106, 1106,
858 1177, 1106, 1106, 1106, 1178, 1178, 1178, 1178, 1178, 1178,
859 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
860 1178, 1178, 1178, 1178, 1106, 1178, 1178, 1178, 1178, 1178,
861 1178, 1178, 1178, 1178, 1178, 1178, 1179, 1106, 1106, 1106,
862 1106, 1106, 1180, 1106, 1106, 1106, 1106, 1181, 1182, 1183,
863 1106, 1106, 1106, 1106, 1106, 1106, 1184, 1181, 1185, 1186,
865 1106, 1186, 1106, 1187, 1106, 1187, 1106, 1106, 1188, 1188,
866 1188, 1106, 1188, 1188, 1106, 1189, 1106, 1106, 1190, 1106,
867 1106, 1106, 1106, 1191, 1106, 1192, 1193, 1106, 1106, 1194,
868 1106, 1194, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
869 1195, 1195, 1195, 1195, 1196, 1196, 1197, 1106, 1106, 1178,
870 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
871 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
872 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
873 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
874 1178, 1178, 1178, 1178, 1178, 1106, 1106, 1183, 1183, 1106,
876 1183, 1183, 1106, 1106, 1106, 1106, 1184, 1198, 1185, 1106,
877 1106, 1188, 414, 412, 412, 1188, 414, 1106, 1106, 1106,
878 1106, 1106, 1106, 1106, 1195, 1195, 1195, 1195, 1195, 1195,
879 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
880 1195, 1195, 1195, 1195, 1195, 1196, 1196, 1106, 1106, 1178,
881 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
882 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
883 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
884 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
885 1178, 1178, 1178, 1178, 1106, 1106, 1106, 1106, 1106, 1183,
887 1183, 1106, 1106, 1106, 1198, 1198, 1198, 1106, 511, 511,
888 1188, 414, 1188, 1188, 1188, 1106, 1106, 1106, 1106, 1106,
889 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
890 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
891 1195, 1195, 1195, 1196, 1196, 1178, 1178, 1178, 1178, 1178,
892 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
893 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
894 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
895 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1106, 1106, 1106,
896 1106, 1106, 1199, 1106, 1106, 1198, 1106, 1198, 1106, 1188,
898 1188, 1188, 1106, 1106, 1106, 1106, 1195, 1195, 1195, 1195,
899 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
900 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
901 1196, 1196, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
902 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
903 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
904 1178, 1178, 1178, 1106, 1178, 1178, 1178, 1106, 1178, 1106,
905 1106, 1106, 1106, 1199, 1106, 1199, 1106, 1106, 1106, 1106,
906 1106, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
907 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
909 1195, 1195, 1195, 1195, 1195, 1178, 1178, 1178, 1178, 1178,
910 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
911 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
912 1178, 1106, 1106, 1106, 1106, 1106, 1106, 1178, 1178, 1106,
913 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1200, 1106,
914 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
915 1106, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
916 1195, 1195, 1195, 1195, 1178, 1178, 1178, 1178, 1178, 1178,
917 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
918 1178, 1178, 1178, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
920 1106, 1106, 1178, 1178, 1106, 1106, 1106, 1106, 1106, 1106,
921 1106, 1106, 1106, 1106, 1106, 1200, 1106, 1200, 1106, 1106,
922 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
923 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
924 1106, 1195, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
925 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1106,
926 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1178, 1106, 1106,
927 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
928 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
929 1106, 1106, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
931 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1106, 1106,
932 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
933 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1178, 1178, 1178,
934 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
935 1178, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
936 1106, 1106, 1106, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
937 1178, 1178, 1178, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
938 1106, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1106,
939 1106, 1106, 1106, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
940 1106, 1106, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
942 1178, 1178, 1178, 1178, 1178, 0, 1106, 1106, 1106, 1106,
943 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
944 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
945 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
946 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
947 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
948 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
949 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
950 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
951 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106
955 static yyconst flex_int16_t yy_nxt[4060] =
956 { 0,
957 50, 51, 52, 50, 53, 50, 50, 50, 50, 50,
958 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
959 50, 50, 50, 50, 50, 50, 50, 54, 54, 54,
960 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
961 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
962 54, 54, 50, 50, 50, 50, 54, 54, 54, 54,
963 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
964 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
965 54, 50, 50, 50, 50, 55, 56, 50, 57, 50,
966 58, 50, 59, 50, 50, 50, 50, 50, 50, 50,
968 50, 60, 50, 50, 50, 50, 50, 50, 50, 50,
969 50, 61, 61, 61, 61, 61, 61, 61, 61, 61,
970 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
971 61, 61, 61, 61, 61, 61, 50, 50, 50, 50,
972 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
973 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
974 61, 61, 61, 61, 61, 50, 50, 50, 63, 64,
975 291, 65, 66, 83, 67, 84, 89, 68, 69, 70,
976 70, 89, 1027, 70, 71, 86, 83, 992, 84, 50,
977 72, 991, 87, 70, 93, 309, 94, 101, 102, 291,
979 103, 101, 102, 990, 103, 113, 989, 114, 119, 315,
980 120, 121, 148, 119, 149, 120, 121, 115, 50, 73,
981 74, 116, 116, 116, 116, 148, 90, 149, 91, 228,
982 229, 90, 230, 91, 309, 93, 95, 94, 276, 124,
983 125, 99, 126, 96, 97, 283, 98, 284, 75, 70,
984 70, 76, 77, 316, 78, 66, 988, 67, 79, 122,
985 68, 69, 70, 70, 122, 95, 70, 71, 124, 125,
986 290, 126, 96, 80, 260, 261, 70, 95, 128, 201,
987 129, 221, 202, 222, 96, 97, 117, 98, 410, 411,
988 223, 130, 320, 415, 415, 203, 203, 203, 203, 987,
990 290, 201, 73, 74, 202, 81, 95, 221, 324, 222,
991 325, 277, 225, 96, 226, 986, 223, 203, 203, 203,
992 203, 320, 227, 232, 233, 324, 234, 325, 131, 132,
993 133, 75, 70, 70, 104, 105, 106, 104, 107, 104,
994 104, 104, 104, 104, 104, 104, 108, 104, 108, 104,
995 104, 104, 104, 104, 104, 104, 104, 104, 104, 109,
996 104, 110, 110, 110, 110, 110, 110, 110, 110, 110,
997 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
998 110, 110, 110, 110, 110, 110, 104, 104, 104, 104,
999 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
1001 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
1002 110, 110, 110, 110, 110, 104, 104, 104, 113, 128,
1003 114, 129, 291, 151, 235, 152, 263, 263, 985, 151,
1004 115, 152, 130, 153, 116, 116, 116, 116, 157, 153,
1005 158, 159, 157, 366, 158, 159, 225, 333, 226, 254,
1006 254, 291, 255, 401, 334, 402, 227, 265, 264, 266,
1007 319, 236, 267, 267, 267, 267, 290, 343, 344, 131,
1008 132, 133, 366, 154, 405, 155, 406, 298, 299, 154,
1009 300, 155, 305, 305, 305, 305, 431, 264, 432, 160,
1010 319, 236, 324, 160, 325, 984, 290, 343, 344, 117,
1012 134, 134, 135, 134, 136, 137, 134, 134, 134, 138,
1013 134, 134, 134, 134, 134, 134, 134, 139, 134, 134,
1014 134, 134, 134, 134, 134, 134, 134, 140, 140, 140,
1015 140, 140, 140, 140, 140, 140, 140, 140, 140, 140,
1016 140, 140, 140, 140, 141, 140, 140, 140, 140, 140,
1017 140, 142, 143, 134, 144, 134, 140, 140, 140, 140,
1018 140, 140, 140, 140, 140, 140, 140, 140, 140, 140,
1019 140, 140, 140, 141, 140, 140, 140, 140, 140, 140,
1020 142, 145, 134, 146, 162, 163, 205, 164, 206, 162,
1021 163, 165, 164, 353, 211, 211, 165, 333, 216, 351,
1023 166, 212, 212, 358, 334, 166, 379, 379, 379, 379,
1024 324, 217, 325, 352, 213, 213, 346, 359, 347, 360,
1025 315, 218, 348, 353, 214, 214, 219, 167, 371, 215,
1026 215, 376, 167, 358, 168, 169, 207, 170, 208, 168,
1027 169, 217, 170, 352, 213, 213, 346, 359, 347, 360,
1028 218, 348, 983, 214, 214, 219, 167, 371, 215, 215,
1029 376, 167, 982, 168, 316, 209, 981, 210, 168, 171,
1030 172, 173, 171, 174, 175, 171, 171, 171, 171, 171,
1031 171, 171, 171, 171, 171, 171, 171, 171, 176, 177,
1032 171, 171, 171, 178, 171, 171, 179, 180, 181, 182,
1034 183, 184, 185, 186, 187, 185, 185, 188, 189, 190,
1035 191, 192, 185, 193, 194, 195, 196, 197, 198, 185,
1036 199, 171, 171, 171, 171, 171, 179, 180, 181, 182,
1037 183, 184, 185, 186, 187, 185, 185, 188, 189, 190,
1038 191, 192, 193, 194, 195, 196, 197, 198, 185, 199,
1039 171, 171, 171, 205, 216, 206, 249, 250, 370, 251,
1040 263, 263, 452, 252, 354, 269, 270, 217, 271, 263,
1041 263, 453, 272, 456, 372, 263, 263, 218, 349, 356,
1042 364, 273, 219, 410, 411, 355, 350, 274, 370, 980,
1043 365, 452, 264, 373, 354, 374, 375, 217, 941, 357,
1045 453, 264, 456, 207, 372, 208, 218, 264, 349, 356,
1046 364, 219, 387, 361, 355, 398, 350, 362, 235, 275,
1047 365, 264, 408, 373, 940, 374, 375, 425, 357, 939,
1048 264, 428, 209, 429, 210, 238, 264, 253, 228, 229,
1049 367, 230, 387, 361, 412, 398, 253, 362, 232, 233,
1050 368, 234, 408, 369, 239, 236, 240, 425, 240, 249,
1051 250, 428, 251, 429, 240, 938, 252, 240, 241, 242,
1052 367, 240, 243, 244, 410, 411, 937, 245, 298, 299,
1053 368, 300, 369, 936, 239, 236, 240, 935, 240, 445,
1054 446, 934, 390, 391, 240, 392, 933, 240, 241, 242,
1056 240, 243, 244, 932, 390, 391, 245, 392, 246, 393,
1057 393, 393, 393, 390, 391, 931, 392, 413, 413, 445,
1058 446, 393, 393, 393, 393, 390, 391, 458, 392, 448,
1059 393, 393, 393, 393, 461, 394, 305, 305, 305, 305,
1060 253, 449, 393, 393, 393, 393, 450, 930, 462, 414,
1061 269, 270, 454, 271, 395, 464, 458, 272, 459, 448,
1062 451, 463, 460, 461, 394, 396, 273, 465, 929, 455,
1063 466, 449, 274, 468, 467, 469, 450, 462, 414, 470,
1064 471, 472, 454, 473, 395, 464, 474, 476, 459, 451,
1065 463, 480, 460, 482, 481, 396, 475, 465, 455, 485,
1067 466, 486, 468, 467, 275, 469, 262, 262, 470, 471,
1068 472, 401, 473, 402, 410, 411, 474, 476, 401, 928,
1069 402, 480, 927, 482, 481, 475, 926, 497, 485, 504,
1070 486, 253, 433, 434, 435, 436, 437, 437, 438, 437,
1071 437, 437, 437, 439, 437, 437, 437, 440, 437, 437,
1072 441, 437, 442, 437, 437, 443, 437, 497, 504, 405,
1073 444, 406, 433, 434, 435, 436, 437, 437, 438, 437,
1074 437, 437, 437, 439, 437, 437, 437, 440, 437, 441,
1075 437, 442, 437, 437, 443, 437, 477, 483, 499, 500,
1076 478, 501, 505, 506, 484, 479, 379, 379, 379, 379,
1078 508, 405, 431, 406, 432, 502, 502, 502, 502, 510,
1079 511, 925, 520, 512, 512, 924, 477, 483, 548, 923,
1080 478, 505, 922, 506, 484, 479, 487, 521, 488, 522,
1081 508, 489, 490, 503, 391, 921, 392, 491, 492, 510,
1082 410, 411, 520, 493, 494, 513, 523, 548, 495, 409,
1083 393, 393, 393, 393, 920, 496, 487, 521, 488, 522,
1084 919, 489, 490, 519, 519, 519, 519, 491, 492, 431,
1085 914, 432, 493, 494, 513, 913, 523, 495, 409, 409,
1086 861, 409, 409, 409, 409, 409, 409, 409, 409, 409,
1087 409, 409, 409, 409, 409, 409, 409, 409, 409, 409,
1089 409, 409, 409, 409, 409, 514, 514, 514, 514, 514,
1090 514, 514, 514, 514, 514, 514, 514, 514, 514, 514,
1091 514, 514, 514, 514, 514, 514, 514, 514, 514, 514,
1092 410, 411, 860, 515, 409, 514, 514, 514, 514, 514,
1093 514, 514, 514, 514, 514, 514, 514, 514, 514, 514,
1094 514, 514, 514, 514, 514, 514, 514, 514, 514, 409,
1095 409, 409, 516, 516, 546, 547, 524, 524, 524, 524,
1096 524, 524, 524, 524, 549, 558, 550, 599, 859, 600,
1097 524, 524, 858, 525, 526, 528, 533, 527, 551, 535,
1098 530, 857, 529, 534, 546, 547, 410, 411, 517, 517,
1100 517, 517, 531, 549, 558, 532, 550, 517, 517, 517,
1101 517, 517, 517, 525, 526, 528, 533, 527, 551, 535,
1102 530, 529, 552, 534, 560, 553, 554, 555, 556, 856,
1103 557, 531, 410, 411, 532, 559, 855, 517, 517, 517,
1104 517, 517, 517, 1106, 561, 562, 563, 565, 536, 537,
1105 538, 539, 552, 560, 540, 553, 554, 555, 556, 541,
1106 557, 564, 567, 542, 568, 559, 543, 854, 544, 569,
1107 853, 545, 570, 561, 571, 562, 563, 565, 536, 537,
1108 538, 539, 572, 573, 540, 574, 575, 576, 577, 541,
1109 564, 578, 567, 542, 568, 543, 581, 544, 582, 569,
1111 545, 579, 570, 583, 571, 584, 585, 580, 586, 587,
1112 606, 588, 572, 573, 589, 574, 575, 576, 577, 590,
1113 591, 578, 592, 593, 852, 594, 581, 582, 598, 851,
1114 595, 579, 583, 596, 597, 584, 585, 580, 586, 587,
1115 588, 500, 602, 600, 589, 503, 391, 603, 392, 590,
1116 591, 619, 592, 593, 594, 604, 499, 500, 598, 501,
1117 595, 608, 596, 597, 601, 500, 599, 501, 600, 410,
1118 411, 259, 602, 502, 502, 502, 502, 603, 410, 411,
1119 619, 502, 502, 502, 502, 604, 601, 500, 850, 501,
1120 607, 608, 409, 409, 848, 409, 409, 409, 409, 409,
1122 409, 409, 409, 409, 409, 409, 409, 409, 409, 409,
1123 409, 409, 409, 409, 409, 409, 409, 409, 409, 609,
1124 609, 609, 609, 609, 609, 609, 609, 609, 609, 609,
1125 609, 609, 609, 609, 609, 609, 609, 609, 609, 609,
1126 609, 609, 609, 609, 410, 411, 613, 610, 409, 609,
1127 609, 609, 609, 609, 609, 609, 609, 609, 609, 609,
1128 609, 609, 609, 609, 609, 609, 609, 609, 609, 609,
1129 609, 609, 609, 409, 409, 409, 611, 611, 616, 409,
1130 524, 524, 614, 614, 524, 524, 524, 845, 617, 618,
1131 623, 828, 696, 697, 524, 698, 524, 625, 621, 626,
1133 622, 775, 629, 776, 817, 624, 524, 700, 616, 628,
1134 410, 411, 612, 612, 612, 612, 410, 411, 617, 618,
1135 623, 612, 612, 612, 612, 612, 612, 625, 621, 626,
1136 622, 524, 629, 627, 624, 806, 524, 524, 524, 628,
1137 409, 524, 630, 781, 632, 644, 643, 524, 524, 636,
1138 780, 612, 612, 612, 612, 612, 612, 615, 615, 615,
1139 615, 631, 627, 633, 634, 524, 615, 615, 615, 615,
1140 615, 615, 630, 524, 632, 644, 643, 779, 646, 636,
1141 524, 645, 647, 635, 524, 649, 524, 524, 650, 651,
1142 652, 631, 653, 633, 634, 637, 615, 615, 615, 615,
1144 615, 615, 639, 638, 697, 640, 641, 642, 646, 654,
1145 645, 647, 656, 635, 649, 655, 658, 650, 657, 651,
1146 652, 659, 606, 660, 637, 661, 662, 692, 664, 665,
1147 669, 639, 667, 638, 640, 668, 641, 642, 670, 654,
1148 671, 672, 656, 673, 675, 655, 658, 657, 674, 676,
1149 677, 659, 660, 678, 661, 679, 662, 664, 680, 665,
1150 669, 667, 681, 683, 668, 682, 684, 670, 685, 687,
1151 671, 672, 686, 673, 675, 688, 690, 674, 676, 677,
1152 693, 689, 691, 678, 694, 679, 695, 703, 680, 701,
1153 701, 705, 681, 683, 682, 684, 524, 524, 685, 687,
1155 706, 686, 607, 768, 524, 688, 690, 410, 411, 693,
1156 689, 524, 691, 524, 694, 695, 708, 703, 524, 710,
1157 705, 707, 524, 410, 411, 702, 702, 702, 702, 709,
1158 706, 711, 524, 712, 702, 702, 702, 702, 702, 702,
1159 714, 713, 524, 524, 524, 524, 708, 764, 710, 715,
1160 707, 716, 717, 524, 524, 775, 718, 776, 721, 709,
1161 524, 711, 524, 712, 702, 702, 702, 702, 702, 702,
1162 714, 713, 719, 723, 720, 524, 524, 524, 524, 715,
1163 724, 716, 717, 524, 722, 524, 718, 524, 721, 726,
1164 728, 752, 731, 732, 734, 727, 730, 748, 733, 736,
1166 741, 738, 719, 723, 720, 725, 735, 729, 743, 740,
1167 724, 739, 742, 722, 744, 745, 746, 747, 749, 726,
1168 728, 731, 750, 732, 734, 727, 730, 733, 751, 736,
1169 741, 738, 753, 754, 725, 755, 735, 729, 740, 756,
1170 739, 757, 742, 744, 758, 745, 746, 747, 749, 759,
1171 761, 750, 760, 762, 763, 765, 766, 767, 751, 769,
1172 770, 753, 754, 771, 755, 772, 773, 777, 778, 756,
1173 757, 696, 697, 758, 698, 410, 411, 409, 524, 759,
1174 761, 760, 762, 524, 763, 765, 766, 767, 524, 769,
1175 770, 524, 771, 410, 411, 772, 773, 777, 778, 524,
1177 782, 524, 786, 784, 783, 524, 524, 785, 524, 524,
1178 524, 524, 524, 787, 524, 791, 524, 524, 524, 363,
1179 363, 807, 793, 737, 795, 802, 524, 788, 796, 524,
1180 782, 786, 789, 784, 783, 790, 792, 785, 524, 797,
1181 524, 794, 798, 787, 524, 791, 799, 800, 524, 804,
1182 524, 807, 793, 808, 795, 802, 788, 803, 796, 805,
1183 811, 789, 801, 809, 790, 792, 812, 813, 797, 814,
1184 794, 815, 798, 810, 704, 816, 799, 800, 818, 804,
1185 819, 820, 808, 821, 822, 823, 825, 803, 824, 805,
1186 811, 826, 801, 809, 827, 829, 812, 813, 814, 830,
1188 815, 831, 838, 810, 816, 839, 846, 775, 818, 776,
1189 819, 820, 849, 821, 822, 823, 825, 824, 847, 524,
1190 917, 826, 918, 827, 864, 829, 832, 833, 524, 830,
1191 831, 834, 838, 524, 835, 839, 846, 836, 840, 841,
1192 524, 849, 837, 842, 524, 878, 843, 524, 847, 844,
1193 863, 524, 862, 524, 864, 865, 832, 833, 524, 868,
1194 866, 834, 524, 524, 835, 524, 875, 836, 840, 841,
1195 876, 837, 872, 842, 878, 867, 843, 870, 524, 844,
1196 863, 862, 871, 880, 869, 865, 882, 873, 877, 868,
1197 866, 874, 879, 881, 409, 883, 875, 884, 699, 885,
1199 876, 886, 872, 887, 867, 888, 870, 889, 890, 891,
1200 892, 871, 880, 869, 894, 882, 873, 895, 877, 896,
1201 902, 874, 879, 881, 883, 901, 893, 884, 885, 903,
1202 904, 886, 887, 905, 907, 888, 906, 889, 890, 891,
1203 892, 897, 692, 911, 894, 898, 895, 912, 899, 896,
1204 902, 915, 943, 908, 901, 893, 909, 524, 900, 903,
1205 904, 944, 946, 905, 907, 906, 910, 945, 947, 948,
1206 950, 897, 911, 949, 951, 898, 912, 952, 899, 953,
1207 915, 942, 943, 908, 954, 955, 909, 900, 956, 666,
1208 957, 944, 946, 958, 959, 910, 945, 960, 947, 948,
1210 950, 961, 949, 962, 951, 963, 964, 952, 965, 953,
1211 942, 966, 967, 954, 968, 955, 969, 971, 956, 957,
1212 970, 972, 973, 958, 959, 974, 975, 960, 976, 979,
1213 961, 977, 917, 962, 918, 963, 964, 917, 965, 918,
1214 966, 967, 993, 994, 968, 995, 969, 971, 978, 970,
1215 996, 972, 973, 997, 974, 975, 998, 976, 979, 999,
1216 1000, 977, 1001, 663, 1002, 1003, 1004, 648, 1005, 1006,
1217 1007, 993, 1008, 994, 1009, 995, 1010, 978, 1011, 1012,
1218 996, 1013, 1014, 997, 1015, 1016, 998, 1017, 1018, 999,
1219 1000, 1019, 1001, 1002, 1003, 1020, 1004, 1005, 1021, 1006,
1221 1007, 1008, 1022, 1009, 1025, 1010, 1023, 1026, 1011, 1012,
1222 1024, 1013, 1014, 1015, 1016, 1028, 1017, 1029, 1018, 1030,
1223 1031, 1019, 1032, 1033, 1034, 1020, 1035, 1036, 1021, 1037,
1224 1038, 1022, 1039, 1025, 1040, 1023, 1041, 1026, 1042, 1024,
1225 1043, 1044, 1045, 1046, 1047, 1028, 1048, 1029, 1030, 1049,
1226 1031, 1032, 1033, 1034, 1050, 1057, 1035, 1036, 1037, 1038,
1227 1051, 1052, 1039, 1053, 1040, 1054, 1041, 1055, 1042, 1056,
1228 1043, 1044, 1045, 1046, 1047, 1048, 1058, 1059, 1060, 1049,
1229 1061, 620, 1062, 1063, 1050, 1057, 1064, 1065, 1066, 1051,
1230 1052, 1067, 1053, 1068, 1054, 1069, 1055, 1070, 1056, 1071,
1232 1072, 1073, 1074, 1075, 409, 1076, 1058, 1059, 1060, 1077,
1233 1061, 1062, 1078, 1063, 1079, 1080, 1064, 1065, 1066, 1081,
1234 1067, 1082, 1083, 1068, 1084, 1069, 1085, 1070, 1086, 1071,
1235 1072, 1073, 1074, 1075, 1076, 1087, 1088, 1089, 1077, 1090,
1236 1091, 1092, 1078, 1079, 1093, 1080, 1094, 566, 1095, 1081,
1237 1082, 1096, 1083, 1097, 1084, 1098, 1085, 1099, 1086, 1100,
1238 1101, 524, 1102, 1103, 1104, 1087, 1088, 1089, 1090, 1091,
1239 1105, 1092, 416, 1093, 416, 420, 1094, 1095, 391, 518,
1240 1096, 518, 1097, 378, 457, 1098, 342, 1099, 1100, 339,
1241 1101, 1102, 1103, 336, 1104, 301, 299, 301, 296, 286,
1243 1105, 62, 62, 62, 62, 62, 62, 62, 62, 62,
1244 62, 62, 62, 62, 62, 62, 62, 62, 82, 82,
1245 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
1246 82, 82, 82, 82, 82, 85, 85, 85, 85, 85,
1247 85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
1248 85, 85, 88, 88, 88, 88, 88, 88, 88, 88,
1249 88, 88, 88, 88, 88, 88, 88, 88, 88, 92,
1250 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
1251 92, 92, 92, 92, 92, 92, 100, 100, 100, 100,
1252 100, 100, 100, 100, 100, 100, 100, 100, 100, 100,
1254 100, 100, 100, 50, 50, 50, 50, 50, 50, 50,
1255 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
1256 112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
1257 112, 112, 112, 112, 112, 112, 112, 118, 118, 118,
1258 118, 118, 118, 118, 118, 118, 118, 118, 118, 118,
1259 118, 118, 118, 118, 123, 123, 123, 123, 123, 123,
1260 123, 123, 123, 123, 123, 123, 123, 123, 123, 123,
1261 123, 127, 127, 127, 127, 127, 127, 127, 127, 127,
1262 127, 127, 127, 127, 127, 127, 127, 127, 147, 147,
1263 147, 147, 147, 147, 147, 147, 147, 147, 147, 147,
1265 147, 147, 147, 147, 147, 150, 150, 150, 150, 150,
1266 150, 150, 150, 150, 150, 150, 150, 150, 150, 150,
1267 150, 150, 156, 156, 156, 156, 156, 156, 156, 156,
1268 156, 156, 156, 156, 156, 156, 156, 156, 156, 161,
1269 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
1270 161, 161, 161, 161, 161, 161, 200, 200, 200, 200,
1271 200, 200, 200, 200, 200, 200, 200, 200, 200, 200,
1272 200, 200, 200, 204, 204, 204, 204, 204, 204, 204,
1273 204, 204, 204, 204, 204, 204, 204, 204, 204, 204,
1274 220, 220, 220, 220, 220, 220, 220, 220, 220, 220,
1276 220, 220, 220, 220, 220, 220, 220, 224, 224, 224,
1277 224, 224, 224, 224, 224, 224, 224, 224, 224, 224,
1278 224, 224, 224, 224, 231, 231, 282, 231, 231, 423,
1279 422, 421, 231, 237, 237, 237, 237, 237, 237, 237,
1280 237, 237, 237, 237, 237, 237, 237, 237, 237, 248,
1281 248, 270, 248, 248, 420, 418, 417, 248, 259, 407,
1282 259, 259, 259, 259, 259, 259, 259, 259, 259, 259,
1283 259, 259, 259, 259, 259, 262, 254, 262, 262, 262,
1284 262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
1285 262, 262, 268, 268, 268, 403, 268, 268, 250, 233,
1287 229, 268, 280, 386, 280, 280, 280, 280, 280, 280,
1288 280, 280, 280, 280, 280, 280, 280, 280, 280, 281,
1289 385, 281, 281, 281, 281, 281, 281, 281, 281, 281,
1290 281, 281, 281, 281, 281, 281, 285, 285, 285, 285,
1291 285, 285, 285, 285, 285, 285, 285, 285, 384, 285,
1292 382, 285, 285, 295, 381, 380, 295, 295, 295, 295,
1293 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,
1294 303, 303, 378, 303, 303, 342, 340, 339, 303, 308,
1295 338, 308, 308, 308, 308, 308, 308, 308, 308, 308,
1296 308, 308, 308, 308, 308, 308, 311, 337, 311, 311,
1298 311, 311, 311, 311, 311, 311, 311, 311, 311, 311,
1299 317, 311, 311, 312, 336, 312, 335, 331, 312, 312,
1300 312, 312, 312, 329, 328, 327, 312, 314, 326, 314,
1301 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
1302 314, 314, 314, 314, 318, 318, 322, 318, 318, 321,
1303 317, 313, 318, 323, 323, 323, 323, 323, 323, 323,
1304 323, 323, 323, 323, 323, 323, 323, 323, 323, 323,
1305 330, 307, 330, 310, 330, 330, 330, 330, 330, 330,
1306 330, 330, 330, 307, 330, 330, 330, 332, 306, 332,
1307 332, 332, 332, 332, 332, 332, 332, 332, 332, 332,
1309 332, 332, 332, 332, 341, 304, 341, 341, 341, 341,
1310 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
1311 341, 345, 345, 302, 299, 345, 345, 377, 301, 377,
1312 377, 377, 377, 377, 377, 377, 377, 377, 377, 377,
1313 377, 377, 377, 377, 383, 297, 383, 383, 383, 296,
1314 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
1315 383, 231, 231, 294, 231, 231, 293, 292, 289, 231,
1316 388, 288, 388, 388, 388, 388, 388, 388, 388, 388,
1317 388, 388, 388, 388, 388, 388, 388, 389, 287, 389,
1318 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
1320 389, 389, 389, 389, 397, 397, 286, 282, 279, 397,
1321 399, 399, 278, 270, 258, 399, 400, 400, 400, 400,
1322 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
1323 400, 400, 400, 248, 248, 257, 248, 248, 256, 250,
1324 247, 248, 404, 404, 404, 404, 404, 404, 404, 404,
1325 404, 404, 404, 404, 404, 404, 404, 404, 404, 409,
1326 233, 409, 409, 409, 409, 409, 409, 409, 409, 409,
1327 409, 409, 409, 229, 409, 409, 259, 1106, 259, 259,
1328 259, 259, 259, 259, 259, 259, 259, 259, 259, 259,
1329 259, 259, 259, 419, 419, 111, 419, 419, 111, 1106,
1331 1106, 419, 419, 424, 1106, 424, 424, 424, 424, 424,
1332 424, 424, 424, 424, 424, 424, 424, 424, 424, 424,
1333 280, 1106, 280, 280, 280, 280, 280, 280, 280, 280,
1334 280, 280, 280, 280, 280, 280, 280, 281, 1106, 281,
1335 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
1336 281, 281, 281, 281, 426, 1106, 426, 426, 426, 426,
1337 426, 426, 426, 426, 426, 426, 426, 426, 426, 426,
1338 426, 427, 1106, 427, 427, 427, 427, 427, 427, 427,
1339 427, 427, 427, 427, 427, 427, 427, 427, 285, 285,
1340 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
1342 1106, 285, 1106, 285, 285, 430, 430, 430, 430, 430,
1343 430, 430, 430, 430, 430, 430, 430, 430, 430, 430,
1344 430, 430, 295, 1106, 1106, 295, 295, 295, 295, 295,
1345 295, 295, 295, 295, 295, 295, 295, 295, 295, 303,
1346 303, 1106, 303, 303, 1106, 1106, 1106, 303, 312, 1106,
1347 312, 1106, 1106, 312, 312, 312, 312, 312, 1106, 1106,
1348 1106, 312, 314, 1106, 314, 314, 314, 314, 314, 314,
1349 314, 314, 314, 314, 314, 314, 314, 314, 314, 318,
1350 318, 1106, 318, 318, 1106, 1106, 1106, 318, 323, 323,
1351 323, 323, 323, 323, 323, 323, 323, 323, 323, 323,
1353 323, 323, 323, 323, 323, 330, 1106, 330, 1106, 330,
1354 330, 330, 330, 330, 330, 330, 330, 330, 1106, 330,
1355 330, 330, 447, 1106, 447, 447, 447, 447, 447, 447,
1356 447, 447, 447, 447, 447, 447, 447, 447, 447, 341,
1357 1106, 341, 341, 341, 341, 341, 341, 341, 341, 341,
1358 341, 341, 341, 341, 341, 341, 345, 345, 1106, 1106,
1359 345, 345, 377, 1106, 377, 377, 377, 377, 377, 377,
1360 377, 377, 377, 377, 377, 377, 377, 377, 377, 383,
1361 1106, 383, 383, 383, 1106, 383, 383, 383, 383, 383,
1362 383, 383, 383, 383, 383, 383, 388, 1106, 388, 388,
1364 388, 388, 388, 388, 388, 388, 388, 388, 388, 388,
1365 388, 388, 388, 389, 1106, 389, 389, 389, 389, 389,
1366 389, 389, 389, 389, 389, 389, 389, 389, 389, 389,
1367 498, 498, 498, 498, 498, 498, 498, 498, 498, 498,
1368 498, 498, 498, 498, 498, 498, 498, 507, 507, 1106,
1369 507, 507, 1106, 1106, 1106, 507, 509, 509, 1106, 509,
1370 509, 1106, 1106, 1106, 509, 400, 400, 400, 400, 400,
1371 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
1372 400, 400, 404, 404, 404, 404, 404, 404, 404, 404,
1373 404, 404, 404, 404, 404, 404, 404, 404, 404, 409,
1375 1106, 409, 409, 409, 409, 409, 409, 409, 409, 409,
1376 409, 409, 409, 1106, 409, 409, 419, 419, 1106, 419,
1377 419, 1106, 1106, 1106, 419, 419, 424, 1106, 424, 424,
1378 424, 424, 424, 424, 424, 424, 424, 424, 424, 424,
1379 424, 424, 424, 426, 1106, 426, 426, 426, 426, 426,
1380 426, 426, 426, 426, 426, 426, 426, 426, 426, 426,
1381 427, 1106, 427, 427, 427, 427, 427, 427, 427, 427,
1382 427, 427, 427, 427, 427, 427, 427, 430, 430, 430,
1383 430, 430, 430, 430, 430, 430, 430, 430, 430, 430,
1384 430, 430, 430, 430, 437, 437, 437, 318, 318, 1106,
1386 318, 318, 1106, 1106, 1106, 318, 447, 1106, 447, 447,
1387 447, 447, 447, 447, 447, 447, 447, 447, 447, 447,
1388 447, 447, 447, 605, 1106, 605, 605, 605, 605, 605,
1389 605, 605, 605, 605, 605, 605, 605, 605, 605, 605,
1390 774, 774, 774, 774, 774, 774, 774, 774, 774, 774,
1391 774, 774, 774, 774, 774, 774, 774, 916, 916, 916,
1392 916, 916, 916, 916, 916, 916, 916, 916, 916, 916,
1393 916, 916, 916, 916, 49, 1106, 1106, 1106, 1106, 1106,
1394 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1395 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1397 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1398 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1399 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1400 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1401 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1402 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106
1405 static yyconst flex_int16_t yy_chk[4060] =
1406 { 0,
1407 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1408 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1409 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1410 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1411 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1412 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1413 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1414 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1415 1, 1, 1, 1, 2, 2, 2, 2, 2, 2,
1416 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1418 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1419 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1420 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1421 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1422 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1423 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1424 2, 2, 2, 2, 2, 2, 2, 2, 3, 3,
1425 96, 3, 3, 5, 3, 5, 7, 3, 3, 3,
1426 3, 8, 992, 3, 3, 6, 6, 942, 6, 21,
1427 3, 941, 6, 3, 9, 126, 9, 11, 11, 96,
1429 11, 12, 12, 940, 12, 17, 939, 17, 19, 138,
1430 19, 19, 27, 20, 27, 20, 20, 17, 22, 3,
1431 3, 17, 17, 17, 17, 28, 7, 28, 7, 51,
1432 51, 8, 51, 8, 126, 10, 9, 10, 79, 21,
1433 21, 10, 21, 9, 9, 87, 9, 87, 3, 3,
1434 3, 4, 4, 138, 4, 4, 938, 4, 4, 19,
1435 4, 4, 4, 4, 20, 9, 4, 4, 22, 22,
1436 95, 22, 9, 4, 73, 73, 4, 10, 23, 37,
1437 23, 45, 37, 45, 10, 10, 17, 10, 259, 259,
1438 45, 23, 142, 263, 263, 37, 37, 37, 37, 937,
1440 95, 38, 4, 4, 38, 4, 10, 46, 147, 46,
1441 147, 79, 47, 10, 47, 936, 46, 38, 38, 38,
1442 38, 142, 47, 55, 55, 149, 55, 149, 23, 23,
1443 23, 4, 4, 4, 13, 13, 13, 13, 13, 13,
1444 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
1445 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
1446 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
1447 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
1448 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
1449 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
1451 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
1452 13, 13, 13, 13, 13, 13, 13, 13, 18, 24,
1453 18, 24, 168, 29, 58, 29, 74, 74, 935, 30,
1454 18, 30, 24, 29, 18, 18, 18, 18, 31, 30,
1455 31, 31, 32, 191, 32, 32, 48, 162, 48, 67,
1456 67, 168, 67, 246, 162, 246, 48, 75, 74, 75,
1457 141, 58, 75, 75, 75, 75, 167, 176, 177, 24,
1458 24, 24, 191, 29, 253, 29, 253, 105, 105, 30,
1459 105, 30, 116, 116, 116, 116, 294, 74, 294, 31,
1460 141, 58, 323, 32, 323, 934, 167, 176, 177, 18,
1462 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1463 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1464 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1465 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1466 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1467 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1468 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1469 25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1470 25, 25, 25, 25, 33, 33, 39, 33, 39, 34,
1471 34, 33, 34, 182, 41, 42, 34, 333, 43, 181,
1473 33, 41, 42, 186, 333, 34, 203, 203, 203, 203,
1474 325, 43, 325, 181, 41, 42, 179, 187, 179, 188,
1475 314, 43, 179, 182, 41, 42, 43, 33, 194, 41,
1476 42, 199, 34, 186, 33, 33, 39, 33, 39, 34,
1477 34, 43, 34, 181, 41, 42, 179, 187, 179, 188,
1478 43, 179, 933, 41, 42, 43, 33, 194, 41, 42,
1479 199, 34, 932, 33, 314, 39, 931, 39, 34, 35,
1480 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
1481 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
1482 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
1484 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
1485 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
1486 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
1487 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
1488 35, 35, 35, 35, 35, 35, 35, 35, 35, 35,
1489 35, 35, 35, 40, 44, 40, 63, 63, 193, 63,
1490 122, 122, 347, 63, 183, 76, 76, 44, 76, 125,
1491 125, 348, 76, 350, 195, 132, 132, 44, 180, 184,
1492 190, 76, 44, 409, 409, 183, 180, 76, 193, 930,
1493 190, 347, 122, 196, 183, 197, 198, 44, 873, 184,
1495 348, 125, 350, 40, 195, 40, 44, 132, 180, 184,
1496 190, 44, 236, 189, 183, 244, 180, 189, 235, 76,
1497 190, 122, 258, 196, 872, 197, 198, 278, 184, 871,
1498 125, 290, 40, 291, 40, 59, 132, 63, 228, 228,
1499 192, 228, 236, 189, 260, 244, 76, 189, 232, 232,
1500 192, 232, 258, 192, 59, 235, 59, 278, 59, 249,
1501 249, 290, 249, 291, 59, 870, 249, 59, 59, 59,
1502 192, 59, 59, 59, 260, 260, 869, 59, 298, 298,
1503 192, 298, 192, 868, 59, 235, 59, 867, 59, 319,
1504 320, 866, 239, 239, 59, 239, 865, 59, 59, 59,
1506 59, 59, 59, 864, 240, 240, 59, 240, 59, 239,
1507 239, 239, 239, 241, 241, 863, 241, 261, 261, 319,
1508 320, 240, 240, 240, 240, 242, 242, 352, 242, 343,
1509 241, 241, 241, 241, 354, 239, 305, 305, 305, 305,
1510 249, 344, 242, 242, 242, 242, 346, 862, 355, 261,
1511 269, 269, 349, 269, 241, 357, 352, 269, 353, 343,
1512 346, 356, 353, 354, 239, 242, 269, 358, 861, 349,
1513 359, 344, 269, 360, 359, 361, 346, 355, 261, 362,
1514 364, 366, 349, 367, 241, 357, 368, 369, 353, 346,
1515 356, 371, 353, 372, 371, 242, 368, 358, 349, 374,
1517 359, 375, 360, 359, 269, 361, 415, 415, 362, 364,
1518 366, 400, 367, 400, 614, 614, 368, 369, 402, 860,
1519 402, 371, 859, 372, 371, 368, 858, 387, 374, 394,
1520 375, 269, 307, 307, 307, 307, 307, 307, 307, 307,
1521 307, 307, 307, 307, 307, 307, 307, 307, 307, 307,
1522 307, 307, 307, 307, 307, 307, 307, 387, 394, 404,
1523 307, 404, 307, 307, 307, 307, 307, 307, 307, 307,
1524 307, 307, 307, 307, 307, 307, 307, 307, 307, 307,
1525 307, 307, 307, 307, 307, 307, 370, 373, 390, 390,
1526 370, 390, 395, 396, 373, 370, 379, 379, 379, 379,
1528 398, 406, 430, 406, 430, 390, 390, 390, 390, 408,
1529 410, 857, 423, 411, 411, 856, 370, 373, 448, 855,
1530 370, 395, 854, 396, 373, 370, 376, 425, 376, 428,
1531 398, 376, 376, 393, 393, 853, 393, 376, 376, 408,
1532 410, 410, 423, 376, 376, 411, 429, 448, 376, 411,
1533 393, 393, 393, 393, 852, 376, 376, 425, 376, 428,
1534 851, 376, 376, 420, 420, 420, 420, 376, 376, 432,
1535 847, 432, 376, 376, 411, 846, 429, 376, 412, 412,
1536 792, 412, 412, 412, 412, 412, 412, 412, 412, 412,
1537 412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
1539 412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
1540 412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
1541 412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
1542 412, 412, 791, 412, 412, 412, 412, 412, 412, 412,
1543 412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
1544 412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
1545 412, 412, 413, 413, 445, 446, 441, 433, 434, 435,
1546 438, 439, 436, 442, 449, 459, 450, 498, 790, 498,
1547 440, 443, 789, 433, 434, 436, 441, 435, 451, 443,
1548 439, 788, 438, 442, 445, 446, 413, 413, 414, 414,
1550 414, 414, 440, 449, 459, 440, 450, 414, 414, 414,
1551 414, 414, 414, 433, 434, 436, 441, 435, 451, 443,
1552 439, 438, 452, 442, 462, 453, 454, 455, 456, 787,
1553 458, 440, 414, 414, 440, 460, 786, 414, 414, 414,
1554 414, 414, 414, 444, 463, 464, 465, 467, 444, 444,
1555 444, 444, 452, 462, 444, 453, 454, 455, 456, 444,
1556 458, 466, 469, 444, 470, 460, 444, 785, 444, 471,
1557 784, 444, 472, 463, 473, 464, 465, 467, 444, 444,
1558 444, 444, 474, 475, 444, 476, 477, 478, 479, 444,
1559 466, 480, 469, 444, 470, 444, 482, 444, 483, 471,
1561 444, 481, 472, 484, 473, 485, 486, 481, 487, 488,
1562 508, 489, 474, 475, 490, 476, 477, 478, 479, 491,
1563 492, 480, 493, 494, 783, 495, 482, 483, 497, 782,
1564 496, 481, 484, 496, 496, 485, 486, 481, 487, 488,
1565 489, 501, 504, 501, 490, 503, 503, 505, 503, 491,
1566 492, 523, 493, 494, 495, 506, 499, 499, 497, 499,
1567 496, 510, 496, 496, 502, 502, 600, 502, 600, 613,
1568 613, 613, 504, 499, 499, 499, 499, 505, 615, 615,
1569 523, 502, 502, 502, 502, 506, 601, 601, 780, 601,
1570 508, 510, 511, 511, 773, 511, 511, 511, 511, 511,
1572 511, 511, 511, 511, 511, 511, 511, 511, 511, 511,
1573 511, 511, 511, 511, 511, 511, 511, 511, 511, 511,
1574 511, 511, 511, 511, 511, 511, 511, 511, 511, 511,
1575 511, 511, 511, 511, 511, 511, 511, 511, 511, 511,
1576 511, 511, 511, 511, 511, 511, 514, 511, 511, 511,
1577 511, 511, 511, 511, 511, 511, 511, 511, 511, 511,
1578 511, 511, 511, 511, 511, 511, 511, 511, 511, 511,
1579 511, 511, 511, 511, 511, 511, 512, 512, 520, 514,
1580 525, 527, 516, 516, 532, 526, 528, 770, 521, 522,
1581 526, 758, 607, 607, 529, 607, 531, 528, 525, 529,
1583 525, 693, 532, 693, 744, 527, 530, 609, 520, 531,
1584 512, 512, 513, 513, 513, 513, 516, 516, 521, 522,
1585 526, 513, 513, 513, 513, 513, 513, 528, 525, 529,
1586 525, 535, 532, 530, 527, 733, 539, 533, 545, 531,
1587 609, 534, 533, 704, 535, 546, 545, 536, 537, 539,
1588 703, 513, 513, 513, 513, 513, 513, 517, 517, 517,
1589 517, 534, 530, 536, 537, 538, 517, 517, 517, 517,
1590 517, 517, 533, 540, 535, 546, 545, 699, 550, 539,
1591 542, 547, 551, 538, 541, 553, 543, 544, 554, 555,
1592 556, 534, 557, 536, 537, 540, 517, 517, 517, 517,
1594 517, 517, 542, 541, 698, 542, 543, 544, 550, 557,
1595 547, 551, 558, 538, 553, 557, 560, 554, 559, 555,
1596 556, 563, 606, 564, 540, 565, 566, 692, 569, 570,
1597 574, 542, 572, 541, 542, 573, 543, 544, 576, 557,
1598 577, 578, 558, 579, 581, 557, 560, 559, 580, 582,
1599 583, 563, 564, 584, 565, 586, 566, 569, 587, 570,
1600 574, 572, 588, 590, 573, 589, 591, 576, 592, 594,
1601 577, 578, 593, 579, 581, 595, 596, 580, 582, 583,
1602 602, 595, 597, 584, 603, 586, 604, 616, 587, 611,
1603 611, 618, 588, 590, 589, 591, 621, 624, 592, 594,
1605 619, 593, 606, 686, 622, 595, 596, 701, 701, 602,
1606 595, 623, 597, 626, 603, 604, 622, 616, 625, 624,
1607 618, 621, 628, 611, 611, 612, 612, 612, 612, 623,
1608 619, 625, 627, 626, 612, 612, 612, 612, 612, 612,
1609 628, 627, 629, 631, 630, 632, 622, 682, 624, 629,
1610 621, 630, 631, 634, 633, 774, 632, 774, 634, 623,
1611 635, 625, 636, 626, 612, 612, 612, 612, 612, 612,
1612 628, 627, 633, 636, 633, 637, 639, 640, 638, 629,
1613 637, 630, 631, 643, 635, 641, 632, 642, 634, 639,
1614 641, 668, 644, 645, 648, 640, 643, 664, 647, 650,
1616 655, 653, 633, 636, 633, 638, 648, 642, 658, 654,
1617 637, 653, 657, 635, 659, 661, 662, 663, 665, 639,
1618 641, 644, 666, 645, 648, 640, 643, 647, 667, 650,
1619 655, 653, 669, 670, 638, 671, 648, 642, 654, 673,
1620 653, 674, 657, 659, 675, 661, 662, 663, 665, 676,
1621 679, 666, 678, 680, 681, 683, 684, 685, 667, 687,
1622 688, 669, 670, 689, 671, 690, 691, 694, 695, 673,
1623 674, 696, 696, 675, 696, 700, 700, 700, 711, 676,
1624 679, 678, 680, 707, 681, 683, 684, 685, 709, 687,
1625 688, 710, 689, 702, 702, 690, 691, 694, 695, 708,
1627 707, 712, 711, 709, 708, 713, 716, 710, 714, 718,
1628 721, 715, 720, 712, 717, 716, 719, 722, 727, 1147,
1629 1147, 734, 718, 652, 720, 727, 724, 713, 721, 723,
1630 707, 711, 714, 709, 708, 715, 717, 710, 725, 722,
1631 729, 719, 723, 712, 726, 716, 724, 725, 730, 729,
1632 728, 734, 718, 735, 720, 727, 713, 728, 721, 730,
1633 738, 714, 726, 737, 715, 717, 739, 740, 722, 741,
1634 719, 742, 723, 737, 617, 743, 724, 725, 745, 729,
1635 746, 747, 735, 748, 749, 750, 752, 728, 751, 730,
1636 738, 754, 726, 737, 756, 760, 739, 740, 741, 761,
1638 742, 762, 765, 737, 743, 767, 771, 776, 745, 776,
1639 746, 747, 778, 748, 749, 750, 752, 751, 772, 795,
1640 849, 754, 849, 756, 795, 760, 764, 764, 793, 761,
1641 762, 764, 765, 794, 764, 767, 771, 764, 768, 768,
1642 796, 778, 764, 768, 797, 809, 768, 799, 772, 768,
1643 794, 798, 793, 801, 795, 796, 764, 764, 802, 799,
1644 797, 764, 800, 803, 764, 804, 806, 764, 768, 768,
1645 807, 764, 803, 768, 809, 798, 768, 801, 805, 768,
1646 794, 793, 802, 811, 800, 796, 814, 804, 808, 799,
1647 797, 805, 810, 812, 610, 816, 806, 817, 608, 818,
1649 807, 819, 803, 820, 798, 821, 801, 823, 825, 826,
1650 828, 802, 811, 800, 832, 814, 804, 833, 808, 834,
1651 837, 805, 810, 812, 816, 836, 828, 817, 818, 838,
1652 839, 819, 820, 840, 842, 821, 841, 823, 825, 826,
1653 828, 835, 598, 844, 832, 835, 833, 845, 835, 834,
1654 837, 848, 875, 843, 836, 828, 843, 874, 835, 838,
1655 839, 876, 878, 840, 842, 841, 843, 877, 879, 880,
1656 883, 835, 844, 881, 884, 835, 845, 885, 835, 886,
1657 848, 874, 875, 843, 888, 889, 843, 835, 890, 571,
1658 891, 876, 878, 892, 893, 843, 877, 894, 879, 880,
1660 883, 895, 881, 897, 884, 898, 899, 885, 900, 886,
1661 874, 901, 902, 888, 904, 889, 905, 908, 890, 891,
1662 906, 909, 910, 892, 893, 911, 912, 894, 913, 915,
1663 895, 914, 916, 897, 916, 898, 899, 918, 900, 918,
1664 901, 902, 943, 944, 904, 945, 905, 908, 914, 906,
1665 946, 909, 910, 947, 911, 912, 948, 913, 915, 949,
1666 950, 914, 951, 568, 952, 953, 954, 552, 955, 956,
1667 958, 943, 959, 944, 960, 945, 961, 914, 962, 963,
1668 946, 964, 965, 947, 967, 969, 948, 970, 971, 949,
1669 950, 972, 951, 952, 953, 973, 954, 955, 975, 956,
1671 958, 959, 976, 960, 978, 961, 977, 979, 962, 963,
1672 977, 964, 965, 967, 969, 993, 970, 994, 971, 995,
1673 996, 972, 997, 998, 999, 973, 1001, 1002, 975, 1004,
1674 1005, 976, 1006, 978, 1007, 977, 1008, 979, 1009, 977,
1675 1010, 1012, 1016, 1017, 1018, 993, 1021, 994, 995, 1022,
1676 996, 997, 998, 999, 1023, 1031, 1001, 1002, 1004, 1005,
1677 1024, 1025, 1006, 1026, 1007, 1028, 1008, 1029, 1009, 1030,
1678 1010, 1012, 1016, 1017, 1018, 1021, 1032, 1033, 1034, 1022,
1679 1037, 524, 1039, 1041, 1023, 1031, 1044, 1047, 1048, 1024,
1680 1025, 1049, 1026, 1050, 1028, 1051, 1029, 1052, 1030, 1053,
1682 1054, 1055, 1056, 1058, 515, 1059, 1032, 1033, 1034, 1060,
1683 1037, 1039, 1061, 1041, 1063, 1067, 1044, 1047, 1048, 1068,
1684 1049, 1069, 1070, 1050, 1072, 1051, 1073, 1052, 1074, 1053,
1685 1054, 1055, 1056, 1058, 1059, 1075, 1076, 1077, 1060, 1078,
1686 1081, 1083, 1061, 1063, 1084, 1067, 1085, 468, 1086, 1068,
1687 1069, 1087, 1070, 1088, 1072, 1090, 1073, 1093, 1074, 1094,
1688 1097, 437, 1098, 1099, 1102, 1075, 1076, 1077, 1078, 1081,
1689 1103, 1083, 1160, 1084, 1160, 419, 1085, 1086, 392, 1189,
1690 1087, 1189, 1088, 377, 351, 1090, 341, 1093, 1094, 339,
1691 1097, 1098, 1099, 334, 1102, 301, 300, 299, 296, 285,
1693 1103, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107,
1694 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1108, 1108,
1695 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108,
1696 1108, 1108, 1108, 1108, 1108, 1109, 1109, 1109, 1109, 1109,
1697 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109,
1698 1109, 1109, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110,
1699 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1111,
1700 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111,
1701 1111, 1111, 1111, 1111, 1111, 1111, 1112, 1112, 1112, 1112,
1702 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112,
1704 1112, 1112, 1112, 1113, 1113, 1113, 1113, 1113, 1113, 1113,
1705 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113,
1706 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114,
1707 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1115, 1115, 1115,
1708 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115,
1709 1115, 1115, 1115, 1115, 1116, 1116, 1116, 1116, 1116, 1116,
1710 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116,
1711 1116, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117,
1712 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1118, 1118,
1713 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118,
1715 1118, 1118, 1118, 1118, 1118, 1119, 1119, 1119, 1119, 1119,
1716 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119,
1717 1119, 1119, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120,
1718 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1121,
1719 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121,
1720 1121, 1121, 1121, 1121, 1121, 1121, 1122, 1122, 1122, 1122,
1721 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122,
1722 1122, 1122, 1122, 1123, 1123, 1123, 1123, 1123, 1123, 1123,
1723 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123,
1724 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124,
1726 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1125, 1125, 1125,
1727 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125,
1728 1125, 1125, 1125, 1125, 1126, 1126, 282, 1126, 1126, 274,
1729 273, 272, 1126, 1127, 1127, 1127, 1127, 1127, 1127, 1127,
1730 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1128,
1731 1128, 271, 1128, 1128, 268, 266, 265, 1128, 1129, 256,
1732 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129,
1733 1129, 1129, 1129, 1129, 1129, 1130, 255, 1130, 1130, 1130,
1734 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130,
1735 1130, 1130, 1131, 1131, 1131, 252, 1131, 1131, 251, 234,
1737 230, 1131, 1132, 227, 1132, 1132, 1132, 1132, 1132, 1132,
1738 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1133,
1739 226, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133,
1740 1133, 1133, 1133, 1133, 1133, 1133, 1134, 1134, 1134, 1134,
1741 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 222, 1134,
1742 208, 1134, 1134, 1135, 207, 206, 1135, 1135, 1135, 1135,
1743 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135,
1744 1136, 1136, 202, 1136, 1136, 175, 174, 172, 1136, 1137,
1745 170, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137,
1746 1137, 1137, 1137, 1137, 1137, 1137, 1138, 169, 1138, 1138,
1748 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138,
1749 166, 1138, 1138, 1139, 165, 1139, 164, 158, 1139, 1139,
1750 1139, 1139, 1139, 155, 154, 153, 1139, 1140, 152, 1140,
1751 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140,
1752 1140, 1140, 1140, 1140, 1141, 1141, 144, 1141, 1141, 143,
1753 139, 136, 1141, 1142, 1142, 1142, 1142, 1142, 1142, 1142,
1754 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142,
1755 1143, 131, 1143, 129, 1143, 1143, 1143, 1143, 1143, 1143,
1756 1143, 1143, 1143, 124, 1143, 1143, 1143, 1144, 120, 1144,
1757 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144,
1759 1144, 1144, 1144, 1144, 1145, 114, 1145, 1145, 1145, 1145,
1760 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145,
1761 1145, 1146, 1146, 109, 107, 1146, 1146, 1148, 106, 1148,
1762 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148,
1763 1148, 1148, 1148, 1148, 1149, 103, 1149, 1149, 1149, 101,
1764 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
1765 1149, 1150, 1150, 99, 1150, 1150, 98, 97, 94, 1150,
1766 1151, 91, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151,
1767 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1152, 90, 1152,
1768 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152,
1770 1152, 1152, 1152, 1152, 1153, 1153, 88, 86, 84, 1153,
1771 1154, 1154, 80, 78, 72, 1154, 1155, 1155, 1155, 1155,
1772 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155,
1773 1155, 1155, 1155, 1156, 1156, 71, 1156, 1156, 68, 65,
1774 60, 1156, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157,
1775 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1158,
1776 57, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158,
1777 1158, 1158, 1158, 53, 1158, 1158, 1159, 49, 1159, 1159,
1778 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159,
1779 1159, 1159, 1159, 1161, 1161, 16, 1161, 1161, 15, 0,
1781 0, 1161, 1161, 1162, 0, 1162, 1162, 1162, 1162, 1162,
1782 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162,
1783 1163, 0, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163,
1784 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1164, 0, 1164,
1785 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164,
1786 1164, 1164, 1164, 1164, 1165, 0, 1165, 1165, 1165, 1165,
1787 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165,
1788 1165, 1166, 0, 1166, 1166, 1166, 1166, 1166, 1166, 1166,
1789 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1167, 1167,
1790 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167,
1792 0, 1167, 0, 1167, 1167, 1168, 1168, 1168, 1168, 1168,
1793 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168,
1794 1168, 1168, 1169, 0, 0, 1169, 1169, 1169, 1169, 1169,
1795 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1170,
1796 1170, 0, 1170, 1170, 0, 0, 0, 1170, 1171, 0,
1797 1171, 0, 0, 1171, 1171, 1171, 1171, 1171, 0, 0,
1798 0, 1171, 1172, 0, 1172, 1172, 1172, 1172, 1172, 1172,
1799 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1173,
1800 1173, 0, 1173, 1173, 0, 0, 0, 1173, 1174, 1174,
1801 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174,
1803 1174, 1174, 1174, 1174, 1174, 1175, 0, 1175, 0, 1175,
1804 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 0, 1175,
1805 1175, 1175, 1176, 0, 1176, 1176, 1176, 1176, 1176, 1176,
1806 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1177,
1807 0, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177,
1808 1177, 1177, 1177, 1177, 1177, 1177, 1178, 1178, 0, 0,
1809 1178, 1178, 1179, 0, 1179, 1179, 1179, 1179, 1179, 1179,
1810 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1180,
1811 0, 1180, 1180, 1180, 0, 1180, 1180, 1180, 1180, 1180,
1812 1180, 1180, 1180, 1180, 1180, 1180, 1181, 0, 1181, 1181,
1814 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181,
1815 1181, 1181, 1181, 1182, 0, 1182, 1182, 1182, 1182, 1182,
1816 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182,
1817 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183,
1818 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1184, 1184, 0,
1819 1184, 1184, 0, 0, 0, 1184, 1185, 1185, 0, 1185,
1820 1185, 0, 0, 0, 1185, 1186, 1186, 1186, 1186, 1186,
1821 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186,
1822 1186, 1186, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187,
1823 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1188,
1825 0, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188,
1826 1188, 1188, 1188, 0, 1188, 1188, 1190, 1190, 0, 1190,
1827 1190, 0, 0, 0, 1190, 1190, 1191, 0, 1191, 1191,
1828 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191,
1829 1191, 1191, 1191, 1192, 0, 1192, 1192, 1192, 1192, 1192,
1830 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192,
1831 1193, 0, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193,
1832 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1194, 1194, 1194,
1833 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194,
1834 1194, 1194, 1194, 1194, 1195, 1195, 1195, 1196, 1196, 0,
1836 1196, 1196, 0, 0, 0, 1196, 1197, 0, 1197, 1197,
1837 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197,
1838 1197, 1197, 1197, 1198, 0, 1198, 1198, 1198, 1198, 1198,
1839 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198,
1840 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199,
1841 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1200, 1200, 1200,
1842 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200,
1843 1200, 1200, 1200, 1200, 1106, 1106, 1106, 1106, 1106, 1106,
1844 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1845 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1847 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1848 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1849 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1850 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1851 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1852 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106
1855 extern int yy_flex_debug;
1856 int yy_flex_debug = 0;
1858 static yy_state_type *yy_state_buf=0, *yy_state_ptr=0;
1859 static char *yy_full_match;
1860 static int yy_lp;
1861 #define REJECT \
1863 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ \
1864 yy_cp = (yy_full_match); /* restore poss. backed-over text */ \
1865 ++(yy_lp); \
1866 goto find_rule; \
1869 static int yy_more_flag = 0;
1870 static int yy_more_len = 0;
1871 #define yymore() ((yy_more_flag) = 1)
1872 #define YY_MORE_ADJ (yy_more_len)
1873 #define YY_RESTORE_YY_MORE_OFFSET
1874 char *yytext;
1875 #line 1 "scan.l"
1876 /* scan.l - scanner for flex input -*-C-*- */
1877 #line 4 "scan.l"
1878 /* Copyright (c) 1990 The Regents of the University of California. */
1879 /* All rights reserved. */
1881 /* This code is derived from software contributed to Berkeley by */
1882 /* Vern Paxson. */
1884 /* The United States Government has rights in this work pursuant */
1885 /* to contract no. DE-AC03-76SF00098 between the United States */
1886 /* Department of Energy and the University of California. */
1888 /* This file is part of flex. */
1890 /* Redistribution and use in source and binary forms, with or without */
1891 /* modification, are permitted provided that the following conditions */
1892 /* are met: */
1894 /* 1. Redistributions of source code must retain the above copyright */
1895 /* notice, this list of conditions and the following disclaimer. */
1896 /* 2. Redistributions in binary form must reproduce the above copyright */
1897 /* notice, this list of conditions and the following disclaimer in the */
1898 /* documentation and/or other materials provided with the distribution. */
1900 /* Neither the name of the University nor the names of its contributors */
1901 /* may be used to endorse or promote products derived from this software */
1902 /* without specific prior written permission. */
1904 /* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR */
1905 /* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED */
1906 /* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR */
1907 /* PURPOSE. */
1909 #include "flexdef.h"
1910 #include "parse.h"
1911 extern bool tablesverify, tablesext;
1912 extern int trlcontxt; /* Set in parse.y for each rule. */
1913 extern const char *escaped_qstart, *escaped_qend;
1915 #define ACTION_ECHO add_action( yytext )
1916 #define ACTION_IFDEF(def, should_define) \
1918 if ( should_define ) \
1919 action_define( def, 1 ); \
1922 #define ACTION_ECHO_QSTART add_action (escaped_qstart)
1923 #define ACTION_ECHO_QEND add_action (escaped_qend)
1925 #define ACTION_M4_IFDEF(def, should_define) \
1926 do{ \
1927 if ( should_define ) \
1928 buf_m4_define( &m4defs_buf, def, NULL);\
1929 else \
1930 buf_m4_undefine( &m4defs_buf, def);\
1931 } while(0)
1933 #define MARK_END_OF_PROLOG mark_prolog();
1935 #define YY_DECL \
1936 int flexscan()
1938 #define RETURNCHAR \
1939 yylval = (unsigned char) yytext[0]; \
1940 return CHAR;
1942 #define RETURNNAME \
1943 if(yyleng < MAXLINE) \
1945 strcpy( nmstr, yytext ); \
1947 else \
1949 synerr(_("Input line too long\n")); \
1950 FLEX_EXIT(EXIT_FAILURE); \
1952 return NAME;
1954 #define PUT_BACK_STRING(str, start) \
1955 for ( i = strlen( str ) - 1; i >= start; --i ) \
1956 unput((str)[i])
1958 #define CHECK_REJECT(str) \
1959 if ( all_upper( str ) ) \
1960 reject = true;
1962 #define CHECK_YYMORE(str) \
1963 if ( all_lower( str ) ) \
1964 yymore_used = true;
1966 #define YY_USER_INIT \
1967 if ( getenv("POSIXLY_CORRECT") ) \
1968 posix_compat = true;
1977 #line 1978 "scan.c"
1979 #define INITIAL 0
1980 #define SECT2 1
1981 #define SECT2PROLOG 2
1982 #define SECT3 3
1983 #define CODEBLOCK 4
1984 #define PICKUPDEF 5
1985 #define SC 6
1986 #define CARETISBOL 7
1987 #define NUM 8
1988 #define QUOTE 9
1989 #define FIRSTCCL 10
1990 #define CCL 11
1991 #define ACTION 12
1992 #define RECOVER 13
1993 #define COMMENT 14
1994 #define ACTION_STRING 15
1995 #define PERCENT_BRACE_ACTION 16
1996 #define OPTION 17
1997 #define LINEDIR 18
1998 #define CODEBLOCK_MATCH_BRACE 19
1999 #define GROUP_WITH_PARAMS 20
2000 #define GROUP_MINUS_PARAMS 21
2001 #define EXTENDED_COMMENT 22
2002 #define COMMENT_DISCARD 23
2004 #ifndef YY_NO_UNISTD_H
2005 /* Special case for "unistd.h", since it is non-ANSI. We include it way
2006 * down here because we want the user's section 1 to have been scanned first.
2007 * The user has a chance to override it with an option.
2009 #include <unistd.h>
2010 #endif
2012 #ifndef YY_EXTRA_TYPE
2013 #define YY_EXTRA_TYPE void *
2014 #endif
2016 static int yy_init_globals (void );
2018 /* Accessor methods to globals.
2019 These are made visible to non-reentrant scanners for convenience. */
2021 int yylex_destroy (void );
2023 int yyget_debug (void );
2025 void yyset_debug (int debug_flag );
2027 YY_EXTRA_TYPE yyget_extra (void );
2029 void yyset_extra (YY_EXTRA_TYPE user_defined );
2031 FILE *yyget_in (void );
2033 void yyset_in (FILE * in_str );
2035 FILE *yyget_out (void );
2037 void yyset_out (FILE * out_str );
2039 yy_size_t yyget_leng (void );
2041 char *yyget_text (void );
2043 int yyget_lineno (void );
2045 void yyset_lineno (int line_number );
2047 /* Macros after this point can all be overridden by user definitions in
2048 * section 1.
2051 #ifndef YY_SKIP_YYWRAP
2052 #ifdef __cplusplus
2053 extern "C" int yywrap (void );
2054 #else
2055 extern int yywrap (void );
2056 #endif
2057 #endif
2059 static void yyunput (int c,char *buf_ptr );
2061 #ifndef yytext_ptr
2062 static void yy_flex_strncpy (char *,yyconst char *,int );
2063 #endif
2065 #ifdef YY_NEED_STRLEN
2066 static int yy_flex_strlen (yyconst char * );
2067 #endif
2069 #ifndef YY_NO_INPUT
2071 #ifdef __cplusplus
2072 static int yyinput (void );
2073 #else
2074 static int input (void );
2075 #endif
2077 #endif
2079 static int yy_start_stack_ptr = 0;
2080 static int yy_start_stack_depth = 0;
2081 static int *yy_start_stack = NULL;
2083 static void yy_push_state (int new_state );
2085 static void yy_pop_state (void );
2087 /* Amount of stuff to slurp up with each read. */
2088 #ifndef YY_READ_BUF_SIZE
2089 #define YY_READ_BUF_SIZE 8192
2090 #endif
2092 /* Copy whatever the last rule matched to the standard output. */
2093 #ifndef ECHO
2094 /* This used to be an fputs(), but since the string might contain NUL's,
2095 * we now use fwrite().
2097 #define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)
2098 #endif
2100 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
2101 * is returned in "result".
2103 #ifndef YY_INPUT
2104 #define YY_INPUT(buf,result,max_size) \
2105 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
2107 int c = '*'; \
2108 size_t n; \
2109 for ( n = 0; n < max_size && \
2110 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
2111 buf[n] = (char) c; \
2112 if ( c == '\n' ) \
2113 buf[n++] = (char) c; \
2114 if ( c == EOF && ferror( yyin ) ) \
2115 YY_FATAL_ERROR( "input in flex scanner failed" ); \
2116 result = n; \
2118 else \
2120 errno=0; \
2121 while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \
2123 if( errno != EINTR) \
2125 YY_FATAL_ERROR( "input in flex scanner failed" ); \
2126 break; \
2128 errno=0; \
2129 clearerr(yyin); \
2134 #endif
2136 /* No semi-colon after return; correct usage is to write "yyterminate();" -
2137 * we don't want an extra ';' after the "return" because that will cause
2138 * some compilers to complain about unreachable statements.
2140 #ifndef yyterminate
2141 #define yyterminate() return YY_NULL
2142 #endif
2144 /* Number of entries by which start-condition stack grows. */
2145 #ifndef YY_START_STACK_INCR
2146 #define YY_START_STACK_INCR 25
2147 #endif
2149 /* Report a fatal error. */
2150 #ifndef YY_FATAL_ERROR
2151 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
2152 #endif
2154 /* end tables serialization structures and prototypes */
2156 /* Default declaration of generated scanner - a define so the user can
2157 * easily add parameters.
2159 #ifndef YY_DECL
2160 #define YY_DECL_IS_OURS 1
2162 extern int yylex (void);
2164 #define YY_DECL int yylex (void)
2165 #endif /* !YY_DECL */
2167 /* Code executed at the beginning of each rule, after yytext and yyleng
2168 * have been set up.
2170 #ifndef YY_USER_ACTION
2171 #define YY_USER_ACTION
2172 #endif
2174 /* Code executed at the end of each rule. */
2175 #ifndef YY_BREAK
2176 #define YY_BREAK break;
2177 #endif
2179 #define YY_RULE_SETUP \
2180 if ( yyleng > 0 ) \
2181 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \
2182 (yytext[yyleng - 1] == '\n'); \
2183 YY_USER_ACTION
2185 /** The main scanner function which does all the work.
2187 YY_DECL
2189 register yy_state_type yy_current_state;
2190 register char *yy_cp, *yy_bp;
2191 register int yy_act;
2193 #line 131 "scan.l"
2195 static int bracelevel, didadef, indented_code;
2196 static int doing_rule_action = false;
2197 static int option_sense;
2199 int doing_codeblock = false;
2200 int i, brace_depth=0, brace_start_line=0;
2201 Char nmdef[MAXLINE];
2204 #line 2205 "scan.c"
2206 if ( !(yy_init) )
2208 (yy_init) = 1;
2210 #ifdef YY_USER_INIT
2211 YY_USER_INIT;
2212 #endif
2214 /* Create the reject buffer large enough to save one state per allowed character. */
2215 if ( ! (yy_state_buf) )
2216 (yy_state_buf) = (yy_state_type *)yyalloc(YY_STATE_BUF_SIZE );
2217 if ( ! (yy_state_buf) )
2218 YY_FATAL_ERROR( "out of dynamic memory in yylex()" );
2220 if ( ! (yy_start) )
2221 (yy_start) = 1; /* first start state */
2223 if ( ! yyin )
2224 yyin = stdin;
2226 if ( ! yyout )
2227 yyout = stdout;
2229 if ( ! YY_CURRENT_BUFFER ) {
2230 yyensure_buffer_stack ();
2231 YY_CURRENT_BUFFER_LVALUE =
2232 yy_create_buffer(yyin,YY_BUF_SIZE );
2235 yy_load_buffer_state( );
2238 while ( 1 ) /* loops until end-of-file is reached */
2240 (yy_more_len) = 0;
2241 if ( (yy_more_flag) )
2243 (yy_more_len) = (yy_c_buf_p) - (yytext_ptr);
2244 (yy_more_flag) = 0;
2246 yy_cp = (yy_c_buf_p);
2248 /* Support of yytext. */
2249 *yy_cp = (yy_hold_char);
2251 /* yy_bp points to the position in yy_ch_buf of the start of
2252 * the current run.
2254 yy_bp = yy_cp;
2256 yy_current_state = (yy_start);
2257 yy_current_state += YY_AT_BOL();
2259 (yy_state_ptr) = (yy_state_buf);
2260 *(yy_state_ptr)++ = yy_current_state;
2262 yy_match:
2265 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
2266 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2268 yy_current_state = (int) yy_def[yy_current_state];
2269 if ( yy_current_state >= 1107 )
2270 yy_c = yy_meta[(unsigned int) yy_c];
2272 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2273 *(yy_state_ptr)++ = yy_current_state;
2274 ++yy_cp;
2276 while ( yy_base[yy_current_state] != 3975 );
2278 yy_find_action:
2279 yy_current_state = *--(yy_state_ptr);
2280 (yy_lp) = yy_accept[yy_current_state];
2281 find_rule: /* we branch to this label when backing up */
2282 for ( ; ; ) /* until we find what rule we matched */
2284 if ( (yy_lp) && (yy_lp) < yy_accept[yy_current_state + 1] )
2286 yy_act = yy_acclist[(yy_lp)];
2288 (yy_full_match) = yy_cp;
2289 break;
2292 --yy_cp;
2293 yy_current_state = *--(yy_state_ptr);
2294 (yy_lp) = yy_accept[yy_current_state];
2297 YY_DO_BEFORE_ACTION;
2299 do_action: /* This label is used only to access EOF actions. */
2301 switch ( yy_act )
2302 { /* beginning of action switch */
2304 case 1:
2305 YY_RULE_SETUP
2306 #line 142 "scan.l"
2307 indented_code = true; BEGIN(CODEBLOCK);
2308 YY_BREAK
2309 case 2:
2310 YY_RULE_SETUP
2311 #line 143 "scan.l"
2312 ACTION_ECHO; yy_push_state( COMMENT );
2313 YY_BREAK
2314 case 3:
2315 YY_RULE_SETUP
2316 #line 144 "scan.l"
2317 yy_push_state( LINEDIR );
2318 YY_BREAK
2319 case 4:
2320 YY_RULE_SETUP
2321 #line 145 "scan.l"
2322 return SCDECL;
2323 YY_BREAK
2324 case 5:
2325 YY_RULE_SETUP
2326 #line 146 "scan.l"
2327 return XSCDECL;
2328 YY_BREAK
2329 case 6:
2330 /* rule 6 can match eol */
2331 YY_RULE_SETUP
2332 #line 147 "scan.l"
2334 ++linenum;
2335 line_directive_out( (FILE *) 0, 1 );
2336 indented_code = false;
2337 BEGIN(CODEBLOCK);
2339 YY_BREAK
2340 case 7:
2341 /* rule 7 can match eol */
2342 YY_RULE_SETUP
2343 #line 153 "scan.l"
2345 brace_start_line = linenum;
2346 ++linenum;
2347 buf_linedir( &top_buf, infilename?infilename:"<stdin>", linenum);
2348 brace_depth = 1;
2349 yy_push_state(CODEBLOCK_MATCH_BRACE);
2351 YY_BREAK
2352 case 8:
2353 YY_RULE_SETUP
2354 #line 161 "scan.l"
2355 synerr( _("malformed '%top' directive") );
2356 YY_BREAK
2357 case 9:
2358 YY_RULE_SETUP
2359 #line 163 "scan.l"
2360 /* discard */
2361 YY_BREAK
2362 case 10:
2363 YY_RULE_SETUP
2364 #line 165 "scan.l"
2366 sectnum = 2;
2367 bracelevel = 0;
2368 mark_defs1();
2369 line_directive_out( (FILE *) 0, 1 );
2370 BEGIN(SECT2PROLOG);
2371 return SECTEND;
2373 YY_BREAK
2374 case 11:
2375 /* rule 11 can match eol */
2376 YY_RULE_SETUP
2377 #line 174 "scan.l"
2378 yytext_is_array = false; ++linenum;
2379 YY_BREAK
2380 case 12:
2381 /* rule 12 can match eol */
2382 YY_RULE_SETUP
2383 #line 175 "scan.l"
2384 yytext_is_array = true; ++linenum;
2385 YY_BREAK
2386 case 13:
2387 YY_RULE_SETUP
2388 #line 177 "scan.l"
2389 BEGIN(OPTION); return OPTION_OP;
2390 YY_BREAK
2391 case 14:
2392 /* rule 14 can match eol */
2393 YY_RULE_SETUP
2394 #line 179 "scan.l"
2395 ++linenum; /* ignore */
2396 YY_BREAK
2397 case 15:
2398 /* rule 15 can match eol */
2399 YY_RULE_SETUP
2400 #line 180 "scan.l"
2401 ++linenum; /* ignore */
2402 YY_BREAK
2403 /* xgettext: no-c-format */
2404 case 16:
2405 /* rule 16 can match eol */
2406 YY_RULE_SETUP
2407 #line 183 "scan.l"
2408 synerr( _( "unrecognized '%' directive" ) );
2409 YY_BREAK
2410 case 17:
2411 YY_RULE_SETUP
2412 #line 185 "scan.l"
2414 if(yyleng < MAXLINE)
2416 strcpy( nmstr, yytext );
2418 else
2420 synerr( _("Definition name too long\n"));
2421 FLEX_EXIT(EXIT_FAILURE);
2424 didadef = false;
2425 BEGIN(PICKUPDEF);
2427 YY_BREAK
2428 case 18:
2429 YY_RULE_SETUP
2430 #line 200 "scan.l"
2431 RETURNNAME;
2432 YY_BREAK
2433 case 19:
2434 /* rule 19 can match eol */
2435 YY_RULE_SETUP
2436 #line 201 "scan.l"
2437 ++linenum; /* allows blank lines in section 1 */
2438 YY_BREAK
2439 case 20:
2440 /* rule 20 can match eol */
2441 YY_RULE_SETUP
2442 #line 202 "scan.l"
2443 ACTION_ECHO; ++linenum; /* maybe end of comment line */
2444 YY_BREAK
2447 case 21:
2448 YY_RULE_SETUP
2449 #line 207 "scan.l"
2450 ACTION_ECHO; yy_pop_state();
2451 YY_BREAK
2452 case 22:
2453 YY_RULE_SETUP
2454 #line 208 "scan.l"
2455 ACTION_ECHO;
2456 YY_BREAK
2457 case 23:
2458 YY_RULE_SETUP
2459 #line 209 "scan.l"
2460 ACTION_ECHO_QSTART;
2461 YY_BREAK
2462 case 24:
2463 YY_RULE_SETUP
2464 #line 210 "scan.l"
2465 ACTION_ECHO_QEND;
2466 YY_BREAK
2467 case 25:
2468 YY_RULE_SETUP
2469 #line 211 "scan.l"
2470 ACTION_ECHO;
2471 YY_BREAK
2472 case 26:
2473 /* rule 26 can match eol */
2474 YY_RULE_SETUP
2475 #line 212 "scan.l"
2476 ++linenum; ACTION_ECHO;
2477 YY_BREAK
2480 /* This is the same as COMMENT, but is discarded rather than output. */
2481 case 27:
2482 YY_RULE_SETUP
2483 #line 217 "scan.l"
2484 yy_pop_state();
2485 YY_BREAK
2486 case 28:
2487 YY_RULE_SETUP
2488 #line 218 "scan.l"
2490 YY_BREAK
2491 case 29:
2492 YY_RULE_SETUP
2493 #line 219 "scan.l"
2495 YY_BREAK
2496 case 30:
2497 /* rule 30 can match eol */
2498 YY_RULE_SETUP
2499 #line 220 "scan.l"
2500 ++linenum;
2501 YY_BREAK
2504 case 31:
2505 YY_RULE_SETUP
2506 #line 224 "scan.l"
2507 yy_pop_state();
2508 YY_BREAK
2509 case 32:
2510 YY_RULE_SETUP
2511 #line 225 "scan.l"
2513 YY_BREAK
2514 case 33:
2515 /* rule 33 can match eol */
2516 YY_RULE_SETUP
2517 #line 226 "scan.l"
2518 ++linenum;
2519 YY_BREAK
2522 case 34:
2523 /* rule 34 can match eol */
2524 YY_RULE_SETUP
2525 #line 230 "scan.l"
2526 yy_pop_state();
2527 YY_BREAK
2528 case 35:
2529 YY_RULE_SETUP
2530 #line 231 "scan.l"
2531 linenum = myctoi( yytext );
2532 YY_BREAK
2533 case 36:
2534 YY_RULE_SETUP
2535 #line 233 "scan.l"
2537 flex_free( (void *) infilename );
2538 infilename = copy_string( yytext + 1 );
2539 infilename[strlen( infilename ) - 1] = '\0';
2541 YY_BREAK
2542 case 37:
2543 YY_RULE_SETUP
2544 #line 238 "scan.l"
2545 /* ignore spurious characters */
2546 YY_BREAK
2549 case 38:
2550 /* rule 38 can match eol */
2551 YY_RULE_SETUP
2552 #line 242 "scan.l"
2553 ++linenum; BEGIN(INITIAL);
2554 YY_BREAK
2555 case 39:
2556 YY_RULE_SETUP
2557 #line 244 "scan.l"
2558 ACTION_ECHO_QSTART;
2559 YY_BREAK
2560 case 40:
2561 YY_RULE_SETUP
2562 #line 245 "scan.l"
2563 ACTION_ECHO_QEND;
2564 YY_BREAK
2565 case 41:
2566 YY_RULE_SETUP
2567 #line 246 "scan.l"
2568 ACTION_ECHO;
2569 YY_BREAK
2570 case 42:
2571 /* rule 42 can match eol */
2572 YY_RULE_SETUP
2573 #line 248 "scan.l"
2575 ++linenum;
2576 ACTION_ECHO;
2577 if ( indented_code )
2578 BEGIN(INITIAL);
2580 YY_BREAK
2583 case 43:
2584 YY_RULE_SETUP
2585 #line 257 "scan.l"
2587 if( --brace_depth == 0){
2588 /* TODO: Matched. */
2589 yy_pop_state();
2590 }else
2591 buf_strnappend(&top_buf, yytext, yyleng);
2593 YY_BREAK
2594 case 44:
2595 YY_RULE_SETUP
2596 #line 265 "scan.l"
2598 brace_depth++;
2599 buf_strnappend(&top_buf, yytext, yyleng);
2601 YY_BREAK
2602 case 45:
2603 /* rule 45 can match eol */
2604 YY_RULE_SETUP
2605 #line 270 "scan.l"
2607 ++linenum;
2608 buf_strnappend(&top_buf, yytext, yyleng);
2610 YY_BREAK
2611 case 46:
2612 YY_RULE_SETUP
2613 #line 275 "scan.l"
2614 buf_strnappend(&top_buf, escaped_qstart, strlen(escaped_qstart));
2615 YY_BREAK
2616 case 47:
2617 YY_RULE_SETUP
2618 #line 276 "scan.l"
2619 buf_strnappend(&top_buf, escaped_qend, strlen(escaped_qend));
2620 YY_BREAK
2621 case 48:
2622 YY_RULE_SETUP
2623 #line 278 "scan.l"
2625 buf_strnappend(&top_buf, yytext, yyleng);
2627 YY_BREAK
2628 case YY_STATE_EOF(CODEBLOCK_MATCH_BRACE):
2629 #line 282 "scan.l"
2631 linenum = brace_start_line;
2632 synerr(_("Unmatched '{'"));
2633 yyterminate();
2635 YY_BREAK
2638 case 49:
2639 YY_RULE_SETUP
2640 #line 291 "scan.l"
2641 /* separates name and definition */
2642 YY_BREAK
2643 case 50:
2644 YY_RULE_SETUP
2645 #line 293 "scan.l"
2647 if(yyleng < MAXLINE)
2649 strcpy( (char *) nmdef, yytext );
2651 else
2653 format_synerr( _("Definition value for {%s} too long\n"), nmstr);
2654 FLEX_EXIT(EXIT_FAILURE);
2656 /* Skip trailing whitespace. */
2657 for ( i = strlen( (char *) nmdef ) - 1;
2658 i >= 0 && (nmdef[i] == ' ' || nmdef[i] == '\t');
2659 --i )
2662 nmdef[i + 1] = '\0';
2664 ndinstal( nmstr, nmdef );
2665 didadef = true;
2667 YY_BREAK
2668 case 51:
2669 /* rule 51 can match eol */
2670 YY_RULE_SETUP
2671 #line 315 "scan.l"
2673 if ( ! didadef )
2674 synerr( _( "incomplete name definition" ) );
2675 BEGIN(INITIAL);
2676 ++linenum;
2678 YY_BREAK
2681 case 52:
2682 /* rule 52 can match eol */
2683 YY_RULE_SETUP
2684 #line 325 "scan.l"
2685 ++linenum; BEGIN(INITIAL);
2686 YY_BREAK
2687 case 53:
2688 YY_RULE_SETUP
2689 #line 326 "scan.l"
2690 option_sense = true;
2691 YY_BREAK
2692 case 54:
2693 YY_RULE_SETUP
2694 #line 328 "scan.l"
2695 return '=';
2696 YY_BREAK
2697 case 55:
2698 YY_RULE_SETUP
2699 #line 330 "scan.l"
2700 option_sense = ! option_sense;
2701 YY_BREAK
2702 case 56:
2703 YY_RULE_SETUP
2704 #line 332 "scan.l"
2705 csize = option_sense ? 128 : 256;
2706 YY_BREAK
2707 case 57:
2708 YY_RULE_SETUP
2709 #line 333 "scan.l"
2710 csize = option_sense ? 256 : 128;
2711 YY_BREAK
2712 case 58:
2713 YY_RULE_SETUP
2714 #line 335 "scan.l"
2715 long_align = option_sense;
2716 YY_BREAK
2717 case 59:
2718 YY_RULE_SETUP
2719 #line 336 "scan.l"
2721 ACTION_M4_IFDEF( "M4""_YY_ALWAYS_INTERACTIVE", option_sense );
2722 interactive = option_sense;
2724 YY_BREAK
2725 case 60:
2726 YY_RULE_SETUP
2727 #line 340 "scan.l"
2728 yytext_is_array = option_sense;
2729 YY_BREAK
2730 case 61:
2731 YY_RULE_SETUP
2732 #line 341 "scan.l"
2733 ansi_func_defs = option_sense;
2734 YY_BREAK
2735 case 62:
2736 YY_RULE_SETUP
2737 #line 342 "scan.l"
2738 ansi_func_protos = option_sense;
2739 YY_BREAK
2740 case 63:
2741 YY_RULE_SETUP
2742 #line 343 "scan.l"
2743 backing_up_report = option_sense;
2744 YY_BREAK
2745 case 64:
2746 YY_RULE_SETUP
2747 #line 344 "scan.l"
2748 interactive = ! option_sense;
2749 YY_BREAK
2750 case 65:
2751 YY_RULE_SETUP
2752 #line 345 "scan.l"
2753 bison_bridge_lval = option_sense;
2754 YY_BREAK
2755 case 66:
2756 YY_RULE_SETUP
2757 #line 346 "scan.l"
2758 { if((bison_bridge_lloc = option_sense))
2759 bison_bridge_lval = true;
2761 YY_BREAK
2762 case 67:
2763 YY_RULE_SETUP
2764 #line 349 "scan.l"
2765 C_plus_plus = option_sense;
2766 YY_BREAK
2767 case 68:
2768 YY_RULE_SETUP
2769 #line 350 "scan.l"
2770 sf_set_case_ins(!option_sense);
2771 YY_BREAK
2772 case 69:
2773 YY_RULE_SETUP
2774 #line 351 "scan.l"
2775 sf_set_case_ins(option_sense);
2776 YY_BREAK
2777 case 70:
2778 YY_RULE_SETUP
2779 #line 352 "scan.l"
2780 ddebug = option_sense;
2781 YY_BREAK
2782 case 71:
2783 YY_RULE_SETUP
2784 #line 353 "scan.l"
2785 spprdflt = ! option_sense;
2786 YY_BREAK
2787 case 72:
2788 YY_RULE_SETUP
2789 #line 354 "scan.l"
2790 useecs = option_sense;
2791 YY_BREAK
2792 case 73:
2793 YY_RULE_SETUP
2794 #line 355 "scan.l"
2796 useecs = usemecs = false;
2797 use_read = fullspd = true;
2799 YY_BREAK
2800 case 74:
2801 YY_RULE_SETUP
2802 #line 359 "scan.l"
2804 useecs = usemecs = false;
2805 use_read = fulltbl = true;
2807 YY_BREAK
2808 case 75:
2809 YY_RULE_SETUP
2810 #line 363 "scan.l"
2811 ACTION_IFDEF("YY_NO_INPUT", ! option_sense);
2812 YY_BREAK
2813 case 76:
2814 YY_RULE_SETUP
2815 #line 364 "scan.l"
2816 interactive = option_sense;
2817 YY_BREAK
2818 case 77:
2819 YY_RULE_SETUP
2820 #line 365 "scan.l"
2821 lex_compat = option_sense;
2822 YY_BREAK
2823 case 78:
2824 YY_RULE_SETUP
2825 #line 366 "scan.l"
2826 posix_compat = option_sense;
2827 YY_BREAK
2828 case 79:
2829 YY_RULE_SETUP
2830 #line 367 "scan.l"
2832 ACTION_M4_IFDEF( "M4""_YY_MAIN", option_sense);
2833 /* Override yywrap */
2834 if( option_sense == true )
2835 do_yywrap = false;
2837 YY_BREAK
2838 case 80:
2839 YY_RULE_SETUP
2840 #line 373 "scan.l"
2841 usemecs = option_sense;
2842 YY_BREAK
2843 case 81:
2844 YY_RULE_SETUP
2845 #line 374 "scan.l"
2847 ACTION_M4_IFDEF( "M4""_YY_NEVER_INTERACTIVE", option_sense );
2848 interactive = !option_sense;
2850 YY_BREAK
2851 case 82:
2852 YY_RULE_SETUP
2853 #line 378 "scan.l"
2854 performance_report += option_sense ? 1 : -1;
2855 YY_BREAK
2856 case 83:
2857 YY_RULE_SETUP
2858 #line 379 "scan.l"
2859 yytext_is_array = ! option_sense;
2860 YY_BREAK
2861 case 84:
2862 YY_RULE_SETUP
2863 #line 380 "scan.l"
2864 use_read = option_sense;
2865 YY_BREAK
2866 case 85:
2867 YY_RULE_SETUP
2868 #line 381 "scan.l"
2869 reentrant = option_sense;
2870 YY_BREAK
2871 case 86:
2872 YY_RULE_SETUP
2873 #line 382 "scan.l"
2874 reject_really_used = option_sense;
2875 YY_BREAK
2876 case 87:
2877 YY_RULE_SETUP
2878 #line 383 "scan.l"
2879 ACTION_M4_IFDEF( "M4""_YY_STACK_USED", option_sense );
2880 YY_BREAK
2881 case 88:
2882 YY_RULE_SETUP
2883 #line 384 "scan.l"
2884 do_stdinit = option_sense;
2885 YY_BREAK
2886 case 89:
2887 YY_RULE_SETUP
2888 #line 385 "scan.l"
2889 use_stdout = option_sense;
2890 YY_BREAK
2891 case 90:
2892 YY_RULE_SETUP
2893 #line 386 "scan.l"
2894 ACTION_IFDEF("YY_NO_UNISTD_H", ! option_sense);
2895 YY_BREAK
2896 case 91:
2897 YY_RULE_SETUP
2898 #line 387 "scan.l"
2899 ACTION_M4_IFDEF("M4""_YY_NO_UNPUT", ! option_sense);
2900 YY_BREAK
2901 case 92:
2902 YY_RULE_SETUP
2903 #line 388 "scan.l"
2904 printstats = option_sense;
2905 YY_BREAK
2906 case 93:
2907 YY_RULE_SETUP
2908 #line 389 "scan.l"
2909 nowarn = ! option_sense;
2910 YY_BREAK
2911 case 94:
2912 YY_RULE_SETUP
2913 #line 390 "scan.l"
2914 do_yylineno = option_sense; ACTION_M4_IFDEF("M4""_YY_USE_LINENO", option_sense);
2915 YY_BREAK
2916 case 95:
2917 YY_RULE_SETUP
2918 #line 391 "scan.l"
2919 yymore_really_used = option_sense;
2920 YY_BREAK
2921 case 96:
2922 YY_RULE_SETUP
2923 #line 392 "scan.l"
2924 do_yywrap = option_sense;
2925 YY_BREAK
2926 case 97:
2927 YY_RULE_SETUP
2928 #line 394 "scan.l"
2929 ACTION_M4_IFDEF("M4""_YY_NO_PUSH_STATE", ! option_sense);
2930 YY_BREAK
2931 case 98:
2932 YY_RULE_SETUP
2933 #line 395 "scan.l"
2934 ACTION_M4_IFDEF("M4""_YY_NO_POP_STATE", ! option_sense);
2935 YY_BREAK
2936 case 99:
2937 YY_RULE_SETUP
2938 #line 396 "scan.l"
2939 ACTION_M4_IFDEF("M4""_YY_NO_TOP_STATE", ! option_sense);
2940 YY_BREAK
2941 case 100:
2942 YY_RULE_SETUP
2943 #line 398 "scan.l"
2944 ACTION_M4_IFDEF("M4""_YY_NO_SCAN_BUFFER", ! option_sense);
2945 YY_BREAK
2946 case 101:
2947 YY_RULE_SETUP
2948 #line 399 "scan.l"
2949 ACTION_M4_IFDEF("M4""_YY_NO_SCAN_BYTES", ! option_sense);
2950 YY_BREAK
2951 case 102:
2952 YY_RULE_SETUP
2953 #line 400 "scan.l"
2954 ACTION_M4_IFDEF("M4""_YY_NO_SCAN_STRING", ! option_sense);
2955 YY_BREAK
2956 case 103:
2957 YY_RULE_SETUP
2958 #line 402 "scan.l"
2959 ACTION_M4_IFDEF("M4""_YY_NO_FLEX_ALLOC", ! option_sense);
2960 YY_BREAK
2961 case 104:
2962 YY_RULE_SETUP
2963 #line 403 "scan.l"
2964 ACTION_M4_IFDEF("M4""_YY_NO_FLEX_REALLOC", ! option_sense);
2965 YY_BREAK
2966 case 105:
2967 YY_RULE_SETUP
2968 #line 404 "scan.l"
2969 ACTION_M4_IFDEF("M4""_YY_NO_FLEX_FREE", ! option_sense);
2970 YY_BREAK
2971 case 106:
2972 YY_RULE_SETUP
2973 #line 406 "scan.l"
2974 ACTION_M4_IFDEF("M4""_YY_NO_GET_DEBUG", ! option_sense);
2975 YY_BREAK
2976 case 107:
2977 YY_RULE_SETUP
2978 #line 407 "scan.l"
2979 ACTION_M4_IFDEF("M4""_YY_NO_SET_DEBUG", ! option_sense);
2980 YY_BREAK
2981 case 108:
2982 YY_RULE_SETUP
2983 #line 408 "scan.l"
2984 ACTION_M4_IFDEF("M4""_YY_NO_GET_EXTRA", ! option_sense);
2985 YY_BREAK
2986 case 109:
2987 YY_RULE_SETUP
2988 #line 409 "scan.l"
2989 ACTION_M4_IFDEF("M4""_YY_NO_SET_EXTRA", ! option_sense);
2990 YY_BREAK
2991 case 110:
2992 YY_RULE_SETUP
2993 #line 410 "scan.l"
2994 ACTION_M4_IFDEF("M4""_YY_NO_GET_LENG", ! option_sense);
2995 YY_BREAK
2996 case 111:
2997 YY_RULE_SETUP
2998 #line 411 "scan.l"
2999 ACTION_M4_IFDEF("M4""_YY_NO_GET_TEXT", ! option_sense);
3000 YY_BREAK
3001 case 112:
3002 YY_RULE_SETUP
3003 #line 412 "scan.l"
3004 ACTION_M4_IFDEF("M4""_YY_NO_GET_LINENO", ! option_sense);
3005 YY_BREAK
3006 case 113:
3007 YY_RULE_SETUP
3008 #line 413 "scan.l"
3009 ACTION_M4_IFDEF("M4""_YY_NO_SET_LINENO", ! option_sense);
3010 YY_BREAK
3011 case 114:
3012 YY_RULE_SETUP
3013 #line 414 "scan.l"
3014 ACTION_M4_IFDEF("M4""_YY_NO_GET_IN", ! option_sense);
3015 YY_BREAK
3016 case 115:
3017 YY_RULE_SETUP
3018 #line 415 "scan.l"
3019 ACTION_M4_IFDEF("M4""_YY_NO_SET_IN", ! option_sense);
3020 YY_BREAK
3021 case 116:
3022 YY_RULE_SETUP
3023 #line 416 "scan.l"
3024 ACTION_M4_IFDEF("M4""_YY_NO_GET_OUT", ! option_sense);
3025 YY_BREAK
3026 case 117:
3027 YY_RULE_SETUP
3028 #line 417 "scan.l"
3029 ACTION_M4_IFDEF("M4""_YY_NO_SET_OUT", ! option_sense);
3030 YY_BREAK
3031 case 118:
3032 YY_RULE_SETUP
3033 #line 418 "scan.l"
3034 ACTION_M4_IFDEF("M4""_YY_NO_GET_LVAL", ! option_sense);
3035 YY_BREAK
3036 case 119:
3037 YY_RULE_SETUP
3038 #line 419 "scan.l"
3039 ACTION_M4_IFDEF("M4""_YY_NO_SET_LVAL", ! option_sense);
3040 YY_BREAK
3041 case 120:
3042 YY_RULE_SETUP
3043 #line 420 "scan.l"
3044 ACTION_M4_IFDEF("M4""_YY_NO_GET_LLOC", ! option_sense);
3045 YY_BREAK
3046 case 121:
3047 YY_RULE_SETUP
3048 #line 421 "scan.l"
3049 ACTION_M4_IFDEF("M4""_YY_NO_SET_LLOC", ! option_sense);
3050 YY_BREAK
3051 case 122:
3052 YY_RULE_SETUP
3053 #line 423 "scan.l"
3054 return OPT_EXTRA_TYPE;
3055 YY_BREAK
3056 case 123:
3057 YY_RULE_SETUP
3058 #line 424 "scan.l"
3059 return OPT_OUTFILE;
3060 YY_BREAK
3061 case 124:
3062 YY_RULE_SETUP
3063 #line 425 "scan.l"
3064 return OPT_PREFIX;
3065 YY_BREAK
3066 case 125:
3067 YY_RULE_SETUP
3068 #line 426 "scan.l"
3069 return OPT_YYCLASS;
3070 YY_BREAK
3071 case 126:
3072 YY_RULE_SETUP
3073 #line 427 "scan.l"
3074 return OPT_HEADER;
3075 YY_BREAK
3076 case 127:
3077 YY_RULE_SETUP
3078 #line 428 "scan.l"
3079 return OPT_TABLES;
3080 YY_BREAK
3081 case 128:
3082 YY_RULE_SETUP
3083 #line 429 "scan.l"
3085 tablesverify = option_sense;
3086 if(!tablesext && option_sense)
3087 tablesext = true;
3089 YY_BREAK
3090 case 129:
3091 YY_RULE_SETUP
3092 #line 436 "scan.l"
3094 if(yyleng-1 < MAXLINE)
3096 strcpy( nmstr, yytext + 1 );
3098 else
3100 synerr( _("Option line too long\n"));
3101 FLEX_EXIT(EXIT_FAILURE);
3103 nmstr[strlen( nmstr ) - 1] = '\0';
3104 return NAME;
3106 YY_BREAK
3107 case 130:
3108 YY_RULE_SETUP
3109 #line 450 "scan.l"
3111 format_synerr( _( "unrecognized %%option: %s" ),
3112 yytext );
3113 BEGIN(RECOVER);
3115 YY_BREAK
3117 case 131:
3118 /* rule 131 can match eol */
3119 YY_RULE_SETUP
3120 #line 457 "scan.l"
3121 ++linenum; BEGIN(INITIAL);
3122 YY_BREAK
3124 case 132:
3125 YY_RULE_SETUP
3126 #line 461 "scan.l"
3127 ++bracelevel; yyless( 2 ); /* eat only %{ */
3128 YY_BREAK
3129 case 133:
3130 YY_RULE_SETUP
3131 #line 462 "scan.l"
3132 --bracelevel; yyless( 2 ); /* eat only %} */
3133 YY_BREAK
3134 case 134:
3135 YY_RULE_SETUP
3136 #line 464 "scan.l"
3137 ACTION_ECHO; /* indented code in prolog */
3138 YY_BREAK
3139 case 135:
3140 YY_RULE_SETUP
3141 #line 466 "scan.l"
3142 { /* non-indented code */
3143 if ( bracelevel <= 0 )
3144 { /* not in %{ ... %} */
3145 yyless( 0 ); /* put it all back */
3146 yy_set_bol( 1 );
3147 mark_prolog();
3148 BEGIN(SECT2);
3150 else
3151 ACTION_ECHO;
3153 YY_BREAK
3154 case 136:
3155 YY_RULE_SETUP
3156 #line 478 "scan.l"
3157 ACTION_ECHO;
3158 YY_BREAK
3159 case 137:
3160 /* rule 137 can match eol */
3161 YY_RULE_SETUP
3162 #line 479 "scan.l"
3163 ++linenum; ACTION_ECHO;
3164 YY_BREAK
3165 case YY_STATE_EOF(SECT2PROLOG):
3166 #line 481 "scan.l"
3168 mark_prolog();
3169 sectnum = 0;
3170 yyterminate(); /* to stop the parser */
3172 YY_BREAK
3175 case 138:
3176 /* rule 138 can match eol */
3177 YY_RULE_SETUP
3178 #line 489 "scan.l"
3179 ++linenum; /* allow blank lines in section 2 */
3180 YY_BREAK
3181 case 139:
3182 YY_RULE_SETUP
3183 #line 491 "scan.l"
3185 indented_code = false;
3186 doing_codeblock = true;
3187 bracelevel = 1;
3188 BEGIN(PERCENT_BRACE_ACTION);
3190 YY_BREAK
3191 case 140:
3192 YY_RULE_SETUP
3193 #line 498 "scan.l"
3195 /* Allow "<" to appear in (?x) patterns. */
3196 if (!sf_skip_ws())
3197 BEGIN(SC);
3198 return '<';
3200 YY_BREAK
3201 case 141:
3202 YY_RULE_SETUP
3203 #line 504 "scan.l"
3204 return '^';
3205 YY_BREAK
3206 case 142:
3207 YY_RULE_SETUP
3208 #line 505 "scan.l"
3209 BEGIN(QUOTE); return '"';
3210 YY_BREAK
3211 case 143:
3212 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3213 (yy_c_buf_p) = yy_cp = yy_bp + 1;
3214 YY_DO_BEFORE_ACTION; /* set up yytext again */
3215 YY_RULE_SETUP
3216 #line 506 "scan.l"
3218 BEGIN(NUM);
3219 if ( lex_compat || posix_compat )
3220 return BEGIN_REPEAT_POSIX;
3221 else
3222 return BEGIN_REPEAT_FLEX;
3224 YY_BREAK
3225 case 144:
3226 /* rule 144 can match eol */
3227 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3228 (yy_c_buf_p) = yy_cp = yy_bp + 1;
3229 YY_DO_BEFORE_ACTION; /* set up yytext again */
3230 YY_RULE_SETUP
3231 #line 513 "scan.l"
3232 return '$';
3233 YY_BREAK
3234 case 145:
3235 YY_RULE_SETUP
3236 #line 515 "scan.l"
3238 bracelevel = 1;
3239 BEGIN(PERCENT_BRACE_ACTION);
3241 if ( in_rule )
3243 doing_rule_action = true;
3244 in_rule = false;
3245 return '\n';
3248 YY_BREAK
3249 case 146:
3250 /* rule 146 can match eol */
3251 YY_RULE_SETUP
3252 #line 526 "scan.l"
3254 if (sf_skip_ws()){
3255 /* We're in the middle of a (?x: ) pattern. */
3256 /* Push back everything starting at the "|" */
3257 size_t amt;
3258 amt = strchr (yytext, '|') - yytext;
3259 yyless(amt);
3261 else {
3262 continued_action = true;
3263 ++linenum;
3264 return '\n';
3267 YY_BREAK
3268 case 147:
3269 YY_RULE_SETUP
3270 #line 541 "scan.l"
3273 if (sf_skip_ws()){
3274 /* We're in the middle of a (?x: ) pattern. */
3275 yy_push_state(COMMENT_DISCARD);
3277 else{
3278 yyless( yyleng - 2 ); /* put back '/', '*' */
3279 bracelevel = 0;
3280 continued_action = false;
3281 BEGIN(ACTION);
3284 YY_BREAK
3285 case 148:
3286 YY_RULE_SETUP
3287 #line 555 "scan.l"
3288 /* allow indented rules */ ;
3289 YY_BREAK
3290 case 149:
3291 YY_RULE_SETUP
3292 #line 557 "scan.l"
3294 if (sf_skip_ws()){
3295 /* We're in the middle of a (?x: ) pattern. */
3297 else{
3298 /* This rule is separate from the one below because
3299 * otherwise we get variable trailing context, so
3300 * we can't build the scanner using -{f,F}.
3302 bracelevel = 0;
3303 continued_action = false;
3304 BEGIN(ACTION);
3306 if ( in_rule )
3308 doing_rule_action = true;
3309 in_rule = false;
3310 return '\n';
3314 YY_BREAK
3315 case 150:
3316 /* rule 150 can match eol */
3317 YY_RULE_SETUP
3318 #line 579 "scan.l"
3320 if (sf_skip_ws()){
3321 /* We're in the middle of a (?x: ) pattern. */
3322 ++linenum;
3324 else{
3325 bracelevel = 0;
3326 continued_action = false;
3327 BEGIN(ACTION);
3328 unput( '\n' ); /* so <ACTION> sees it */
3330 if ( in_rule )
3332 doing_rule_action = true;
3333 in_rule = false;
3334 return '\n';
3338 YY_BREAK
3339 case 151:
3340 #line 600 "scan.l"
3341 case 152:
3342 YY_RULE_SETUP
3343 #line 600 "scan.l"
3344 return EOF_OP;
3345 YY_BREAK
3346 case 153:
3347 YY_RULE_SETUP
3348 #line 602 "scan.l"
3350 sectnum = 3;
3351 BEGIN(SECT3);
3352 outn("/* Begin user sect3 */");
3353 yyterminate(); /* to stop the parser */
3355 YY_BREAK
3356 case 154:
3357 YY_RULE_SETUP
3358 #line 609 "scan.l"
3360 int cclval;
3362 if(yyleng < MAXLINE)
3364 strcpy( nmstr, yytext );
3366 else
3368 synerr( _("Input line too long\n"));
3369 FLEX_EXIT(EXIT_FAILURE);
3372 /* Check to see if we've already encountered this
3373 * ccl.
3375 if (0 /* <--- This "0" effectively disables the reuse of a
3376 * character class (purely based on its source text).
3377 * The reason it was disabled is so yacc/bison can parse
3378 * ccl operations, such as ccl difference and union.
3380 && (cclval = ccllookup( (Char *) nmstr )) != 0 )
3382 if ( input() != ']' )
3383 synerr( _( "bad character class" ) );
3385 yylval = cclval;
3386 ++cclreuse;
3387 return PREVCCL;
3389 else
3391 /* We fudge a bit. We know that this ccl will
3392 * soon be numbered as lastccl + 1 by cclinit.
3394 cclinstal( (Char *) nmstr, lastccl + 1 );
3396 /* Push back everything but the leading bracket
3397 * so the ccl can be rescanned.
3399 yyless( 1 );
3401 BEGIN(FIRSTCCL);
3402 return '[';
3405 YY_BREAK
3406 case 155:
3407 YY_RULE_SETUP
3408 #line 655 "scan.l"
3409 return CCL_OP_DIFF;
3410 YY_BREAK
3411 case 156:
3412 YY_RULE_SETUP
3413 #line 656 "scan.l"
3414 return CCL_OP_UNION;
3415 YY_BREAK
3416 /* Check for :space: at the end of the rule so we don't
3417 * wrap the expanded regex in '(' ')' -- breaking trailing
3418 * context.
3420 case 157:
3421 /* rule 157 can match eol */
3422 YY_RULE_SETUP
3423 #line 663 "scan.l"
3425 register Char *nmdefptr;
3426 int end_is_ws, end_ch;
3428 end_ch = yytext[yyleng-1];
3429 end_is_ws = end_ch != '}' ? 1 : 0;
3431 if(yyleng-1 < MAXLINE)
3433 strcpy( nmstr, yytext + 1 );
3435 else
3437 synerr( _("Input line too long\n"));
3438 FLEX_EXIT(EXIT_FAILURE);
3440 nmstr[yyleng - 2 - end_is_ws] = '\0'; /* chop trailing brace */
3442 if ( (nmdefptr = ndlookup( nmstr )) == 0 )
3443 format_synerr(
3444 _( "undefined definition {%s}" ),
3445 nmstr );
3447 else
3448 { /* push back name surrounded by ()'s */
3449 int len = strlen( (char *) nmdefptr );
3450 if (end_is_ws)
3451 unput(end_ch);
3453 if ( lex_compat || nmdefptr[0] == '^' ||
3454 (len > 0 && nmdefptr[len - 1] == '$')
3455 || (end_is_ws && trlcontxt && !sf_skip_ws()))
3456 { /* don't use ()'s after all */
3457 PUT_BACK_STRING((char *) nmdefptr, 0);
3459 if ( nmdefptr[0] == '^' )
3460 BEGIN(CARETISBOL);
3463 else
3465 unput(')');
3466 PUT_BACK_STRING((char *) nmdefptr, 0);
3467 unput('(');
3471 YY_BREAK
3472 case 158:
3473 YY_RULE_SETUP
3474 #line 711 "scan.l"
3476 if (sf_skip_ws())
3477 yy_push_state(COMMENT_DISCARD);
3478 else{
3479 /* Push back the "*" and return "/" as usual. */
3480 yyless(1);
3481 return '/';
3484 YY_BREAK
3485 case 159:
3486 YY_RULE_SETUP
3487 #line 721 "scan.l"
3489 if (lex_compat || posix_compat){
3490 /* Push back the "?#" and treat it like a normal parens. */
3491 yyless(1);
3492 sf_push();
3493 return '(';
3495 else
3496 yy_push_state(EXTENDED_COMMENT);
3498 YY_BREAK
3499 case 160:
3500 YY_RULE_SETUP
3501 #line 731 "scan.l"
3503 sf_push();
3504 if (lex_compat || posix_compat)
3505 /* Push back the "?" and treat it like a normal parens. */
3506 yyless(1);
3507 else
3508 BEGIN(GROUP_WITH_PARAMS);
3509 return '(';
3511 YY_BREAK
3512 case 161:
3513 YY_RULE_SETUP
3514 #line 740 "scan.l"
3515 sf_push(); return '(';
3516 YY_BREAK
3517 case 162:
3518 YY_RULE_SETUP
3519 #line 741 "scan.l"
3520 sf_pop(); return ')';
3521 YY_BREAK
3522 case 163:
3523 YY_RULE_SETUP
3524 #line 743 "scan.l"
3525 return (unsigned char) yytext[0];
3526 YY_BREAK
3527 case 164:
3528 YY_RULE_SETUP
3529 #line 744 "scan.l"
3530 RETURNCHAR;
3531 YY_BREAK
3534 case 165:
3535 /* rule 165 can match eol */
3536 YY_RULE_SETUP
3537 #line 749 "scan.l"
3538 ++linenum; /* Allow blank lines & continuations */
3539 YY_BREAK
3540 case 166:
3541 YY_RULE_SETUP
3542 #line 750 "scan.l"
3543 return (unsigned char) yytext[0];
3544 YY_BREAK
3545 case 167:
3546 YY_RULE_SETUP
3547 #line 751 "scan.l"
3548 BEGIN(SECT2); return '>';
3549 YY_BREAK
3550 case 168:
3551 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3552 (yy_c_buf_p) = yy_cp = yy_bp + 1;
3553 YY_DO_BEFORE_ACTION; /* set up yytext again */
3554 YY_RULE_SETUP
3555 #line 752 "scan.l"
3556 BEGIN(CARETISBOL); return '>';
3557 YY_BREAK
3558 case 169:
3559 YY_RULE_SETUP
3560 #line 753 "scan.l"
3561 RETURNNAME;
3562 YY_BREAK
3563 case 170:
3564 YY_RULE_SETUP
3565 #line 754 "scan.l"
3567 format_synerr( _( "bad <start condition>: %s" ),
3568 yytext );
3570 YY_BREAK
3572 case 171:
3573 YY_RULE_SETUP
3574 #line 760 "scan.l"
3575 BEGIN(SECT2); return '^';
3576 YY_BREAK
3578 case 172:
3579 YY_RULE_SETUP
3580 #line 764 "scan.l"
3581 RETURNCHAR;
3582 YY_BREAK
3583 case 173:
3584 YY_RULE_SETUP
3585 #line 765 "scan.l"
3586 BEGIN(SECT2); return '"';
3587 YY_BREAK
3588 case 174:
3589 /* rule 174 can match eol */
3590 YY_RULE_SETUP
3591 #line 767 "scan.l"
3593 synerr( _( "missing quote" ) );
3594 BEGIN(SECT2);
3595 ++linenum;
3596 return '"';
3598 YY_BREAK
3601 case 175:
3602 YY_RULE_SETUP
3603 #line 776 "scan.l"
3604 BEGIN(SECT2);
3605 YY_BREAK
3606 case 176:
3607 YY_RULE_SETUP
3608 #line 777 "scan.l"
3609 BEGIN(GROUP_MINUS_PARAMS);
3610 YY_BREAK
3611 case 177:
3612 YY_RULE_SETUP
3613 #line 778 "scan.l"
3614 sf_set_case_ins(1);
3615 YY_BREAK
3616 case 178:
3617 YY_RULE_SETUP
3618 #line 779 "scan.l"
3619 sf_set_dot_all(1);
3620 YY_BREAK
3621 case 179:
3622 YY_RULE_SETUP
3623 #line 780 "scan.l"
3624 sf_set_skip_ws(1);
3625 YY_BREAK
3628 case 180:
3629 YY_RULE_SETUP
3630 #line 783 "scan.l"
3631 BEGIN(SECT2);
3632 YY_BREAK
3633 case 181:
3634 YY_RULE_SETUP
3635 #line 784 "scan.l"
3636 sf_set_case_ins(0);
3637 YY_BREAK
3638 case 182:
3639 YY_RULE_SETUP
3640 #line 785 "scan.l"
3641 sf_set_dot_all(0);
3642 YY_BREAK
3643 case 183:
3644 YY_RULE_SETUP
3645 #line 786 "scan.l"
3646 sf_set_skip_ws(0);
3647 YY_BREAK
3650 case 184:
3651 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3652 (yy_c_buf_p) = yy_cp = yy_bp + 1;
3653 YY_DO_BEFORE_ACTION; /* set up yytext again */
3654 YY_RULE_SETUP
3655 #line 790 "scan.l"
3656 BEGIN(CCL); return '^';
3657 YY_BREAK
3658 case 185:
3659 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3660 (yy_c_buf_p) = yy_cp = yy_bp + 1;
3661 YY_DO_BEFORE_ACTION; /* set up yytext again */
3662 YY_RULE_SETUP
3663 #line 791 "scan.l"
3664 return '^';
3665 YY_BREAK
3666 case 186:
3667 YY_RULE_SETUP
3668 #line 792 "scan.l"
3669 BEGIN(CCL); RETURNCHAR;
3670 YY_BREAK
3673 case 187:
3674 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3675 (yy_c_buf_p) = yy_cp = yy_bp + 1;
3676 YY_DO_BEFORE_ACTION; /* set up yytext again */
3677 YY_RULE_SETUP
3678 #line 796 "scan.l"
3679 return '-';
3680 YY_BREAK
3681 case 188:
3682 YY_RULE_SETUP
3683 #line 797 "scan.l"
3684 RETURNCHAR;
3685 YY_BREAK
3686 case 189:
3687 YY_RULE_SETUP
3688 #line 798 "scan.l"
3689 BEGIN(SECT2); return ']';
3690 YY_BREAK
3691 case 190:
3692 /* rule 190 can match eol */
3693 YY_RULE_SETUP
3694 #line 799 "scan.l"
3696 synerr( _( "bad character class" ) );
3697 BEGIN(SECT2);
3698 return ']';
3700 YY_BREAK
3703 case 191:
3704 YY_RULE_SETUP
3705 #line 807 "scan.l"
3706 BEGIN(CCL); return CCE_ALNUM;
3707 YY_BREAK
3708 case 192:
3709 YY_RULE_SETUP
3710 #line 808 "scan.l"
3711 BEGIN(CCL); return CCE_ALPHA;
3712 YY_BREAK
3713 case 193:
3714 YY_RULE_SETUP
3715 #line 809 "scan.l"
3716 BEGIN(CCL); return CCE_BLANK;
3717 YY_BREAK
3718 case 194:
3719 YY_RULE_SETUP
3720 #line 810 "scan.l"
3721 BEGIN(CCL); return CCE_CNTRL;
3722 YY_BREAK
3723 case 195:
3724 YY_RULE_SETUP
3725 #line 811 "scan.l"
3726 BEGIN(CCL); return CCE_DIGIT;
3727 YY_BREAK
3728 case 196:
3729 YY_RULE_SETUP
3730 #line 812 "scan.l"
3731 BEGIN(CCL); return CCE_GRAPH;
3732 YY_BREAK
3733 case 197:
3734 YY_RULE_SETUP
3735 #line 813 "scan.l"
3736 BEGIN(CCL); return CCE_LOWER;
3737 YY_BREAK
3738 case 198:
3739 YY_RULE_SETUP
3740 #line 814 "scan.l"
3741 BEGIN(CCL); return CCE_PRINT;
3742 YY_BREAK
3743 case 199:
3744 YY_RULE_SETUP
3745 #line 815 "scan.l"
3746 BEGIN(CCL); return CCE_PUNCT;
3747 YY_BREAK
3748 case 200:
3749 YY_RULE_SETUP
3750 #line 816 "scan.l"
3751 BEGIN(CCL); return CCE_SPACE;
3752 YY_BREAK
3753 case 201:
3754 YY_RULE_SETUP
3755 #line 817 "scan.l"
3756 BEGIN(CCL); return CCE_UPPER;
3757 YY_BREAK
3758 case 202:
3759 YY_RULE_SETUP
3760 #line 818 "scan.l"
3761 BEGIN(CCL); return CCE_XDIGIT;
3762 YY_BREAK
3763 case 203:
3764 YY_RULE_SETUP
3765 #line 820 "scan.l"
3766 BEGIN(CCL); return CCE_NEG_ALNUM;
3767 YY_BREAK
3768 case 204:
3769 YY_RULE_SETUP
3770 #line 821 "scan.l"
3771 BEGIN(CCL); return CCE_NEG_ALPHA;
3772 YY_BREAK
3773 case 205:
3774 YY_RULE_SETUP
3775 #line 822 "scan.l"
3776 BEGIN(CCL); return CCE_NEG_BLANK;
3777 YY_BREAK
3778 case 206:
3779 YY_RULE_SETUP
3780 #line 823 "scan.l"
3781 BEGIN(CCL); return CCE_NEG_CNTRL;
3782 YY_BREAK
3783 case 207:
3784 YY_RULE_SETUP
3785 #line 824 "scan.l"
3786 BEGIN(CCL); return CCE_NEG_DIGIT;
3787 YY_BREAK
3788 case 208:
3789 YY_RULE_SETUP
3790 #line 825 "scan.l"
3791 BEGIN(CCL); return CCE_NEG_GRAPH;
3792 YY_BREAK
3793 case 209:
3794 YY_RULE_SETUP
3795 #line 826 "scan.l"
3796 BEGIN(CCL); return CCE_NEG_LOWER;
3797 YY_BREAK
3798 case 210:
3799 YY_RULE_SETUP
3800 #line 827 "scan.l"
3801 BEGIN(CCL); return CCE_NEG_PRINT;
3802 YY_BREAK
3803 case 211:
3804 YY_RULE_SETUP
3805 #line 828 "scan.l"
3806 BEGIN(CCL); return CCE_NEG_PUNCT;
3807 YY_BREAK
3808 case 212:
3809 YY_RULE_SETUP
3810 #line 829 "scan.l"
3811 BEGIN(CCL); return CCE_NEG_SPACE;
3812 YY_BREAK
3813 case 213:
3814 YY_RULE_SETUP
3815 #line 830 "scan.l"
3816 BEGIN(CCL); return CCE_NEG_UPPER;
3817 YY_BREAK
3818 case 214:
3819 YY_RULE_SETUP
3820 #line 831 "scan.l"
3821 BEGIN(CCL); return CCE_NEG_XDIGIT;
3822 YY_BREAK
3823 case 215:
3824 YY_RULE_SETUP
3825 #line 832 "scan.l"
3827 format_synerr(
3828 _( "bad character class expression: %s" ),
3829 yytext );
3830 BEGIN(CCL); return CCE_ALNUM;
3832 YY_BREAK
3835 case 216:
3836 YY_RULE_SETUP
3837 #line 841 "scan.l"
3839 yylval = myctoi( yytext );
3840 return NUMBER;
3842 YY_BREAK
3843 case 217:
3844 YY_RULE_SETUP
3845 #line 846 "scan.l"
3846 return ',';
3847 YY_BREAK
3848 case 218:
3849 YY_RULE_SETUP
3850 #line 847 "scan.l"
3852 BEGIN(SECT2);
3853 if ( lex_compat || posix_compat )
3854 return END_REPEAT_POSIX;
3855 else
3856 return END_REPEAT_FLEX;
3858 YY_BREAK
3859 case 219:
3860 YY_RULE_SETUP
3861 #line 855 "scan.l"
3863 synerr( _( "bad character inside {}'s" ) );
3864 BEGIN(SECT2);
3865 return '}';
3867 YY_BREAK
3868 case 220:
3869 /* rule 220 can match eol */
3870 YY_RULE_SETUP
3871 #line 861 "scan.l"
3873 synerr( _( "missing }" ) );
3874 BEGIN(SECT2);
3875 ++linenum;
3876 return '}';
3878 YY_BREAK
3881 case 221:
3882 YY_RULE_SETUP
3883 #line 871 "scan.l"
3884 bracelevel = 0;
3885 YY_BREAK
3886 case 222:
3887 YY_RULE_SETUP
3888 #line 873 "scan.l"
3889 ACTION_ECHO; yy_push_state( COMMENT );
3890 YY_BREAK
3892 case 223:
3893 YY_RULE_SETUP
3894 #line 876 "scan.l"
3896 ACTION_ECHO;
3897 CHECK_REJECT(yytext);
3899 YY_BREAK
3900 case 224:
3901 YY_RULE_SETUP
3902 #line 880 "scan.l"
3904 ACTION_ECHO;
3905 CHECK_YYMORE(yytext);
3907 YY_BREAK
3909 case 225:
3910 YY_RULE_SETUP
3911 #line 886 "scan.l"
3912 ACTION_ECHO_QSTART;
3913 YY_BREAK
3914 case 226:
3915 YY_RULE_SETUP
3916 #line 887 "scan.l"
3917 ACTION_ECHO_QEND;
3918 YY_BREAK
3919 case 227:
3920 YY_RULE_SETUP
3921 #line 888 "scan.l"
3922 ACTION_ECHO;
3923 YY_BREAK
3924 case 228:
3925 /* rule 228 can match eol */
3926 YY_RULE_SETUP
3927 #line 889 "scan.l"
3929 ++linenum;
3930 ACTION_ECHO;
3931 if ( bracelevel == 0 ||
3932 (doing_codeblock && indented_code) )
3934 if ( doing_rule_action )
3935 add_action( "\tYY_BREAK\n" );
3937 doing_rule_action = doing_codeblock = false;
3938 BEGIN(SECT2);
3941 YY_BREAK
3943 /* Reject and YYmore() are checked for above, in PERCENT_BRACE_ACTION */
3945 case 229:
3946 YY_RULE_SETUP
3947 #line 907 "scan.l"
3948 ACTION_ECHO; ++bracelevel;
3949 YY_BREAK
3950 case 230:
3951 YY_RULE_SETUP
3952 #line 908 "scan.l"
3953 ACTION_ECHO; --bracelevel;
3954 YY_BREAK
3955 case 231:
3956 YY_RULE_SETUP
3957 #line 909 "scan.l"
3958 ACTION_ECHO_QSTART;
3959 YY_BREAK
3960 case 232:
3961 YY_RULE_SETUP
3962 #line 910 "scan.l"
3963 ACTION_ECHO_QEND;
3964 YY_BREAK
3965 case 233:
3966 YY_RULE_SETUP
3967 #line 911 "scan.l"
3968 ACTION_ECHO;
3969 YY_BREAK
3970 case 234:
3971 YY_RULE_SETUP
3972 #line 912 "scan.l"
3973 ACTION_ECHO;
3974 YY_BREAK
3975 case 235:
3976 YY_RULE_SETUP
3977 #line 913 "scan.l"
3978 ACTION_ECHO;
3979 YY_BREAK
3980 case 236:
3981 YY_RULE_SETUP
3982 #line 914 "scan.l"
3983 ACTION_ECHO; /* character constant */
3984 YY_BREAK
3985 case 237:
3986 YY_RULE_SETUP
3987 #line 915 "scan.l"
3988 ACTION_ECHO; BEGIN(ACTION_STRING);
3989 YY_BREAK
3990 case 238:
3991 /* rule 238 can match eol */
3992 YY_RULE_SETUP
3993 #line 916 "scan.l"
3995 ++linenum;
3996 ACTION_ECHO;
3997 if ( bracelevel == 0 )
3999 if ( doing_rule_action )
4000 add_action( "\tYY_BREAK\n" );
4002 doing_rule_action = false;
4003 BEGIN(SECT2);
4006 YY_BREAK
4007 case 239:
4008 YY_RULE_SETUP
4009 #line 928 "scan.l"
4010 ACTION_ECHO;
4011 YY_BREAK
4014 case 240:
4015 YY_RULE_SETUP
4016 #line 932 "scan.l"
4017 ACTION_ECHO;
4018 YY_BREAK
4019 case 241:
4020 YY_RULE_SETUP
4021 #line 933 "scan.l"
4022 ACTION_ECHO;
4023 YY_BREAK
4024 case 242:
4025 /* rule 242 can match eol */
4026 YY_RULE_SETUP
4027 #line 934 "scan.l"
4028 ++linenum; ACTION_ECHO; BEGIN(ACTION);
4029 YY_BREAK
4030 case 243:
4031 YY_RULE_SETUP
4032 #line 935 "scan.l"
4033 ACTION_ECHO; BEGIN(ACTION);
4034 YY_BREAK
4035 case 244:
4036 YY_RULE_SETUP
4037 #line 936 "scan.l"
4038 ACTION_ECHO;
4039 YY_BREAK
4041 case YY_STATE_EOF(COMMENT):
4042 case YY_STATE_EOF(COMMENT_DISCARD):
4043 case YY_STATE_EOF(ACTION):
4044 case YY_STATE_EOF(ACTION_STRING):
4045 #line 939 "scan.l"
4047 synerr( _( "EOF encountered inside an action" ) );
4048 yyterminate();
4050 YY_BREAK
4051 case YY_STATE_EOF(EXTENDED_COMMENT):
4052 case YY_STATE_EOF(GROUP_WITH_PARAMS):
4053 case YY_STATE_EOF(GROUP_MINUS_PARAMS):
4054 #line 944 "scan.l"
4056 synerr( _( "EOF encountered inside pattern" ) );
4057 yyterminate();
4059 YY_BREAK
4060 case 245:
4061 YY_RULE_SETUP
4062 #line 949 "scan.l"
4064 yylval = myesc( (Char *) yytext );
4066 if ( YY_START == FIRSTCCL )
4067 BEGIN(CCL);
4069 return CHAR;
4071 YY_BREAK
4073 case 246:
4074 YY_RULE_SETUP
4075 #line 960 "scan.l"
4076 fwrite (escaped_qstart, 1, strlen(escaped_qstart), yyout);
4077 YY_BREAK
4078 case 247:
4079 YY_RULE_SETUP
4080 #line 961 "scan.l"
4081 fwrite (escaped_qend, 1, strlen(escaped_qend), yyout);
4082 YY_BREAK
4083 case 248:
4084 /* rule 248 can match eol */
4085 YY_RULE_SETUP
4086 #line 962 "scan.l"
4087 ECHO;
4088 YY_BREAK
4089 case 249:
4090 /* rule 249 can match eol */
4091 YY_RULE_SETUP
4092 #line 963 "scan.l"
4093 ECHO;
4094 YY_BREAK
4095 case YY_STATE_EOF(SECT3):
4096 #line 964 "scan.l"
4097 sectnum = 0; yyterminate();
4098 YY_BREAK
4100 case 250:
4101 /* rule 250 can match eol */
4102 YY_RULE_SETUP
4103 #line 967 "scan.l"
4104 format_synerr( _( "bad character: %s" ), yytext );
4105 YY_BREAK
4106 case 251:
4107 YY_RULE_SETUP
4108 #line 969 "scan.l"
4109 YY_FATAL_ERROR( "flex scanner jammed" );
4110 YY_BREAK
4111 #line 4112 "scan.c"
4112 case YY_STATE_EOF(INITIAL):
4113 case YY_STATE_EOF(SECT2):
4114 case YY_STATE_EOF(CODEBLOCK):
4115 case YY_STATE_EOF(PICKUPDEF):
4116 case YY_STATE_EOF(SC):
4117 case YY_STATE_EOF(CARETISBOL):
4118 case YY_STATE_EOF(NUM):
4119 case YY_STATE_EOF(QUOTE):
4120 case YY_STATE_EOF(FIRSTCCL):
4121 case YY_STATE_EOF(CCL):
4122 case YY_STATE_EOF(RECOVER):
4123 case YY_STATE_EOF(PERCENT_BRACE_ACTION):
4124 case YY_STATE_EOF(OPTION):
4125 case YY_STATE_EOF(LINEDIR):
4126 yyterminate();
4128 case YY_END_OF_BUFFER:
4130 /* Amount of text matched not including the EOB char. */
4131 int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
4133 /* Undo the effects of YY_DO_BEFORE_ACTION. */
4134 *yy_cp = (yy_hold_char);
4135 YY_RESTORE_YY_MORE_OFFSET
4137 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
4139 /* We're scanning a new file or input source. It's
4140 * possible that this happened because the user
4141 * just pointed yyin at a new source and called
4142 * yylex(). If so, then we have to assure
4143 * consistency between YY_CURRENT_BUFFER and our
4144 * globals. Here is the right place to do so, because
4145 * this is the first action (other than possibly a
4146 * back-up) that will match for the new input source.
4148 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
4149 YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
4150 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
4153 /* Note that here we test for yy_c_buf_p "<=" to the position
4154 * of the first EOB in the buffer, since yy_c_buf_p will
4155 * already have been incremented past the NUL character
4156 * (since all states make transitions on EOB to the
4157 * end-of-buffer state). Contrast this with the test
4158 * in input().
4160 if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
4161 { /* This was really a NUL. */
4162 yy_state_type yy_next_state;
4164 (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
4166 yy_current_state = yy_get_previous_state( );
4168 /* Okay, we're now positioned to make the NUL
4169 * transition. We couldn't have
4170 * yy_get_previous_state() go ahead and do it
4171 * for us because it doesn't know how to deal
4172 * with the possibility of jamming (and we don't
4173 * want to build jamming into it because then it
4174 * will run more slowly).
4177 yy_next_state = yy_try_NUL_trans( yy_current_state );
4179 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
4181 if ( yy_next_state )
4183 /* Consume the NUL. */
4184 yy_cp = ++(yy_c_buf_p);
4185 yy_current_state = yy_next_state;
4186 goto yy_match;
4189 else
4191 yy_cp = (yy_c_buf_p);
4192 goto yy_find_action;
4196 else switch ( yy_get_next_buffer( ) )
4198 case EOB_ACT_END_OF_FILE:
4200 (yy_did_buffer_switch_on_eof) = 0;
4202 if ( yywrap( ) )
4204 /* Note: because we've taken care in
4205 * yy_get_next_buffer() to have set up
4206 * yytext, we can now set up
4207 * yy_c_buf_p so that if some total
4208 * hoser (like flex itself) wants to
4209 * call the scanner after we return the
4210 * YY_NULL, it'll still work - another
4211 * YY_NULL will get returned.
4213 (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;
4215 yy_act = YY_STATE_EOF(YY_START);
4216 goto do_action;
4219 else
4221 if ( ! (yy_did_buffer_switch_on_eof) )
4222 YY_NEW_FILE;
4224 break;
4227 case EOB_ACT_CONTINUE_SCAN:
4228 (yy_c_buf_p) =
4229 (yytext_ptr) + yy_amount_of_matched_text;
4231 yy_current_state = yy_get_previous_state( );
4233 yy_cp = (yy_c_buf_p);
4234 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
4235 goto yy_match;
4237 case EOB_ACT_LAST_MATCH:
4238 (yy_c_buf_p) =
4239 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
4241 yy_current_state = yy_get_previous_state( );
4243 yy_cp = (yy_c_buf_p);
4244 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
4245 goto yy_find_action;
4247 break;
4250 default:
4251 YY_FATAL_ERROR(
4252 "fatal flex scanner internal error--no action found" );
4253 } /* end of action switch */
4254 } /* end of scanning one token */
4255 } /* end of yylex */
4257 /* yy_get_next_buffer - try to read in a new buffer
4259 * Returns a code representing an action:
4260 * EOB_ACT_LAST_MATCH -
4261 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
4262 * EOB_ACT_END_OF_FILE - end of file
4264 static int yy_get_next_buffer (void)
4266 register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
4267 register char *source = (yytext_ptr);
4268 register int number_to_move, i;
4269 int ret_val;
4271 if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
4272 YY_FATAL_ERROR(
4273 "fatal flex scanner internal error--end of buffer missed" );
4275 if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
4276 { /* Don't try to fill the buffer, so this is an EOF. */
4277 if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
4279 /* We matched a single character, the EOB, so
4280 * treat this as a final EOF.
4282 return EOB_ACT_END_OF_FILE;
4285 else
4287 /* We matched some text prior to the EOB, first
4288 * process it.
4290 return EOB_ACT_LAST_MATCH;
4294 /* Try to read more data. */
4296 /* First move last chars to start of buffer. */
4297 number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1;
4299 for ( i = 0; i < number_to_move; ++i )
4300 *(dest++) = *(source++);
4302 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
4303 /* don't do the read, it's not guaranteed to return an EOF,
4304 * just force an EOF
4306 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
4308 else
4310 yy_size_t num_to_read =
4311 YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
4313 while ( num_to_read <= 0 )
4314 { /* Not enough room in the buffer - grow it. */
4316 YY_FATAL_ERROR(
4317 "input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
4321 if ( num_to_read > YY_READ_BUF_SIZE )
4322 num_to_read = YY_READ_BUF_SIZE;
4324 /* Read in more data. */
4325 YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
4326 (yy_n_chars), num_to_read );
4328 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
4331 if ( (yy_n_chars) == 0 )
4333 if ( number_to_move == YY_MORE_ADJ )
4335 ret_val = EOB_ACT_END_OF_FILE;
4336 yyrestart(yyin );
4339 else
4341 ret_val = EOB_ACT_LAST_MATCH;
4342 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
4343 YY_BUFFER_EOF_PENDING;
4347 else
4348 ret_val = EOB_ACT_CONTINUE_SCAN;
4350 if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
4351 /* Extend the array by 50%, plus the number we really need. */
4352 yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
4353 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size );
4354 if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
4355 YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
4358 (yy_n_chars) += number_to_move;
4359 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
4360 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
4362 (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
4364 return ret_val;
4367 /* yy_get_previous_state - get the state just before the EOB char was reached */
4369 static yy_state_type yy_get_previous_state (void)
4371 register yy_state_type yy_current_state;
4372 register char *yy_cp;
4374 yy_current_state = (yy_start);
4375 yy_current_state += YY_AT_BOL();
4377 (yy_state_ptr) = (yy_state_buf);
4378 *(yy_state_ptr)++ = yy_current_state;
4380 for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
4382 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
4383 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
4385 yy_current_state = (int) yy_def[yy_current_state];
4386 if ( yy_current_state >= 1107 )
4387 yy_c = yy_meta[(unsigned int) yy_c];
4389 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
4390 *(yy_state_ptr)++ = yy_current_state;
4393 return yy_current_state;
4396 /* yy_try_NUL_trans - try to make a transition on the NUL character
4398 * synopsis
4399 * next_state = yy_try_NUL_trans( current_state );
4401 static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state )
4403 register int yy_is_jam;
4405 register YY_CHAR yy_c = 1;
4406 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
4408 yy_current_state = (int) yy_def[yy_current_state];
4409 if ( yy_current_state >= 1107 )
4410 yy_c = yy_meta[(unsigned int) yy_c];
4412 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
4413 yy_is_jam = (yy_current_state == 1106);
4414 if ( ! yy_is_jam )
4415 *(yy_state_ptr)++ = yy_current_state;
4417 return yy_is_jam ? 0 : yy_current_state;
4420 static void yyunput (int c, register char * yy_bp )
4422 register char *yy_cp;
4424 yy_cp = (yy_c_buf_p);
4426 /* undo effects of setting up yytext */
4427 *yy_cp = (yy_hold_char);
4429 if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
4430 { /* need to shift things up to make room */
4431 /* +2 for EOB chars. */
4432 register yy_size_t number_to_move = (yy_n_chars) + 2;
4433 register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
4434 YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];
4435 register char *source =
4436 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move];
4438 while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
4439 *--dest = *--source;
4441 yy_cp += (int) (dest - source);
4442 yy_bp += (int) (dest - source);
4443 YY_CURRENT_BUFFER_LVALUE->yy_n_chars =
4444 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size;
4446 if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
4447 YY_FATAL_ERROR( "flex scanner push-back overflow" );
4450 *--yy_cp = (char) c;
4452 (yytext_ptr) = yy_bp;
4453 (yy_hold_char) = *yy_cp;
4454 (yy_c_buf_p) = yy_cp;
4457 #ifndef YY_NO_INPUT
4458 #ifdef __cplusplus
4459 static int yyinput (void)
4460 #else
4461 static int input (void)
4462 #endif
4465 int c;
4467 *(yy_c_buf_p) = (yy_hold_char);
4469 if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
4471 /* yy_c_buf_p now points to the character we want to return.
4472 * If this occurs *before* the EOB characters, then it's a
4473 * valid NUL; if not, then we've hit the end of the buffer.
4475 if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
4476 /* This was really a NUL. */
4477 *(yy_c_buf_p) = '\0';
4479 else
4480 { /* need more input */
4481 yy_size_t offset = (yy_c_buf_p) - (yytext_ptr);
4482 ++(yy_c_buf_p);
4484 switch ( yy_get_next_buffer( ) )
4486 case EOB_ACT_LAST_MATCH:
4487 /* This happens because yy_g_n_b()
4488 * sees that we've accumulated a
4489 * token and flags that we need to
4490 * try matching the token before
4491 * proceeding. But for input(),
4492 * there's no matching to consider.
4493 * So convert the EOB_ACT_LAST_MATCH
4494 * to EOB_ACT_END_OF_FILE.
4497 /* Reset buffer status. */
4498 yyrestart(yyin );
4500 /*FALLTHROUGH*/
4502 case EOB_ACT_END_OF_FILE:
4504 if ( yywrap( ) )
4505 return EOF;
4507 if ( ! (yy_did_buffer_switch_on_eof) )
4508 YY_NEW_FILE;
4509 #ifdef __cplusplus
4510 return yyinput();
4511 #else
4512 return input();
4513 #endif
4516 case EOB_ACT_CONTINUE_SCAN:
4517 (yy_c_buf_p) = (yytext_ptr) + offset;
4518 break;
4523 c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */
4524 *(yy_c_buf_p) = '\0'; /* preserve yytext */
4525 (yy_hold_char) = *++(yy_c_buf_p);
4527 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = (c == '\n');
4529 return c;
4531 #endif /* ifndef YY_NO_INPUT */
4533 /** Immediately switch to a different input stream.
4534 * @param input_file A readable stream.
4536 * @note This function does not reset the start condition to @c INITIAL .
4538 void yyrestart (FILE * input_file )
4541 if ( ! YY_CURRENT_BUFFER ){
4542 yyensure_buffer_stack ();
4543 YY_CURRENT_BUFFER_LVALUE =
4544 yy_create_buffer(yyin,YY_BUF_SIZE );
4547 yy_init_buffer(YY_CURRENT_BUFFER,input_file );
4548 yy_load_buffer_state( );
4551 /** Switch to a different input buffer.
4552 * @param new_buffer The new input buffer.
4555 void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer )
4558 /* TODO. We should be able to replace this entire function body
4559 * with
4560 * yypop_buffer_state();
4561 * yypush_buffer_state(new_buffer);
4563 yyensure_buffer_stack ();
4564 if ( YY_CURRENT_BUFFER == new_buffer )
4565 return;
4567 if ( YY_CURRENT_BUFFER )
4569 /* Flush out information for old buffer. */
4570 *(yy_c_buf_p) = (yy_hold_char);
4571 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
4572 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
4575 YY_CURRENT_BUFFER_LVALUE = new_buffer;
4576 yy_load_buffer_state( );
4578 /* We don't actually know whether we did this switch during
4579 * EOF (yywrap()) processing, but the only time this flag
4580 * is looked at is after yywrap() is called, so it's safe
4581 * to go ahead and always set it.
4583 (yy_did_buffer_switch_on_eof) = 1;
4586 static void yy_load_buffer_state (void)
4588 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
4589 (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
4590 yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
4591 (yy_hold_char) = *(yy_c_buf_p);
4594 /** Allocate and initialize an input buffer state.
4595 * @param file A readable stream.
4596 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
4598 * @return the allocated buffer state.
4600 YY_BUFFER_STATE yy_create_buffer (FILE * file, int size )
4602 YY_BUFFER_STATE b;
4604 b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) );
4605 if ( ! b )
4606 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
4608 b->yy_buf_size = size;
4610 /* yy_ch_buf has to be 2 characters longer than the size given because
4611 * we need to put in 2 end-of-buffer characters.
4613 b->yy_ch_buf = (char *) yyalloc(b->yy_buf_size + 2 );
4614 if ( ! b->yy_ch_buf )
4615 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
4617 b->yy_is_our_buffer = 1;
4619 yy_init_buffer(b,file );
4621 return b;
4624 /** Destroy the buffer.
4625 * @param b a buffer created with yy_create_buffer()
4628 void yy_delete_buffer (YY_BUFFER_STATE b )
4631 if ( ! b )
4632 return;
4634 if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
4635 YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
4637 if ( b->yy_is_our_buffer )
4638 yyfree((void *) b->yy_ch_buf );
4640 yyfree((void *) b );
4643 /* Initializes or reinitializes a buffer.
4644 * This function is sometimes called more than once on the same buffer,
4645 * such as during a yyrestart() or at EOF.
4647 static void yy_init_buffer (YY_BUFFER_STATE b, FILE * file )
4650 int oerrno = errno;
4652 yy_flush_buffer(b );
4654 b->yy_input_file = file;
4655 b->yy_fill_buffer = 1;
4657 /* If b is the current buffer, then yy_init_buffer was _probably_
4658 * called from yyrestart() or through yy_get_next_buffer.
4659 * In that case, we don't want to reset the lineno or column.
4661 if (b != YY_CURRENT_BUFFER){
4662 b->yy_bs_lineno = 1;
4663 b->yy_bs_column = 0;
4666 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
4668 errno = oerrno;
4671 /** Discard all buffered characters. On the next scan, YY_INPUT will be called.
4672 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
4675 void yy_flush_buffer (YY_BUFFER_STATE b )
4677 if ( ! b )
4678 return;
4680 b->yy_n_chars = 0;
4682 /* We always need two end-of-buffer characters. The first causes
4683 * a transition to the end-of-buffer state. The second causes
4684 * a jam in that state.
4686 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
4687 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
4689 b->yy_buf_pos = &b->yy_ch_buf[0];
4691 b->yy_at_bol = 1;
4692 b->yy_buffer_status = YY_BUFFER_NEW;
4694 if ( b == YY_CURRENT_BUFFER )
4695 yy_load_buffer_state( );
4698 /** Pushes the new state onto the stack. The new state becomes
4699 * the current state. This function will allocate the stack
4700 * if necessary.
4701 * @param new_buffer The new state.
4704 void yypush_buffer_state (YY_BUFFER_STATE new_buffer )
4706 if (new_buffer == NULL)
4707 return;
4709 yyensure_buffer_stack();
4711 /* This block is copied from yy_switch_to_buffer. */
4712 if ( YY_CURRENT_BUFFER )
4714 /* Flush out information for old buffer. */
4715 *(yy_c_buf_p) = (yy_hold_char);
4716 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
4717 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
4720 /* Only push if top exists. Otherwise, replace top. */
4721 if (YY_CURRENT_BUFFER)
4722 (yy_buffer_stack_top)++;
4723 YY_CURRENT_BUFFER_LVALUE = new_buffer;
4725 /* copied from yy_switch_to_buffer. */
4726 yy_load_buffer_state( );
4727 (yy_did_buffer_switch_on_eof) = 1;
4730 /** Removes and deletes the top of the stack, if present.
4731 * The next element becomes the new top.
4734 void yypop_buffer_state (void)
4736 if (!YY_CURRENT_BUFFER)
4737 return;
4739 yy_delete_buffer(YY_CURRENT_BUFFER );
4740 YY_CURRENT_BUFFER_LVALUE = NULL;
4741 if ((yy_buffer_stack_top) > 0)
4742 --(yy_buffer_stack_top);
4744 if (YY_CURRENT_BUFFER) {
4745 yy_load_buffer_state( );
4746 (yy_did_buffer_switch_on_eof) = 1;
4750 /* Allocates the stack if it does not exist.
4751 * Guarantees space for at least one push.
4753 static void yyensure_buffer_stack (void)
4755 yy_size_t num_to_alloc;
4757 if (!(yy_buffer_stack)) {
4759 /* First allocation is just for 2 elements, since we don't know if this
4760 * scanner will even need a stack. We use 2 instead of 1 to avoid an
4761 * immediate realloc on the next call.
4763 num_to_alloc = 1;
4764 (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc
4765 (num_to_alloc * sizeof(struct yy_buffer_state*)
4767 if ( ! (yy_buffer_stack) )
4768 YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
4770 memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
4772 (yy_buffer_stack_max) = num_to_alloc;
4773 (yy_buffer_stack_top) = 0;
4774 return;
4777 if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
4779 /* Increase the buffer to prepare for a possible push. */
4780 int grow_size = 8 /* arbitrary grow size */;
4782 num_to_alloc = (yy_buffer_stack_max) + grow_size;
4783 (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc
4784 ((yy_buffer_stack),
4785 num_to_alloc * sizeof(struct yy_buffer_state*)
4787 if ( ! (yy_buffer_stack) )
4788 YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
4790 /* zero only the new slots.*/
4791 memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
4792 (yy_buffer_stack_max) = num_to_alloc;
4796 /** Setup the input buffer state to scan directly from a user-specified character buffer.
4797 * @param base the character buffer
4798 * @param size the size in bytes of the character buffer
4800 * @return the newly allocated buffer state object.
4802 YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size )
4804 YY_BUFFER_STATE b;
4806 if ( size < 2 ||
4807 base[size-2] != YY_END_OF_BUFFER_CHAR ||
4808 base[size-1] != YY_END_OF_BUFFER_CHAR )
4809 /* They forgot to leave room for the EOB's. */
4810 return 0;
4812 b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) );
4813 if ( ! b )
4814 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
4816 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
4817 b->yy_buf_pos = b->yy_ch_buf = base;
4818 b->yy_is_our_buffer = 0;
4819 b->yy_input_file = 0;
4820 b->yy_n_chars = b->yy_buf_size;
4821 b->yy_is_interactive = 0;
4822 b->yy_at_bol = 1;
4823 b->yy_fill_buffer = 0;
4824 b->yy_buffer_status = YY_BUFFER_NEW;
4826 yy_switch_to_buffer(b );
4828 return b;
4831 /** Setup the input buffer state to scan a string. The next call to yylex() will
4832 * scan from a @e copy of @a str.
4833 * @param yystr a NUL-terminated string to scan
4835 * @return the newly allocated buffer state object.
4836 * @note If you want to scan bytes that may contain NUL values, then use
4837 * yy_scan_bytes() instead.
4839 YY_BUFFER_STATE yy_scan_string (yyconst char * yystr )
4842 return yy_scan_bytes(yystr,strlen(yystr) );
4845 /** Setup the input buffer state to scan the given bytes. The next call to yylex() will
4846 * scan from a @e copy of @a bytes.
4847 * @param yybytes the byte buffer to scan
4848 * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
4850 * @return the newly allocated buffer state object.
4852 YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len )
4854 YY_BUFFER_STATE b;
4855 char *buf;
4856 yy_size_t n;
4857 int i;
4859 /* Get memory for full buffer, including space for trailing EOB's. */
4860 n = _yybytes_len + 2;
4861 buf = (char *) yyalloc(n );
4862 if ( ! buf )
4863 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
4865 for ( i = 0; i < _yybytes_len; ++i )
4866 buf[i] = yybytes[i];
4868 buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
4870 b = yy_scan_buffer(buf,n );
4871 if ( ! b )
4872 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
4874 /* It's okay to grow etc. this buffer, and we should throw it
4875 * away when we're done.
4877 b->yy_is_our_buffer = 1;
4879 return b;
4882 static void yy_push_state (int new_state )
4884 if ( (yy_start_stack_ptr) >= (yy_start_stack_depth) )
4886 yy_size_t new_size;
4888 (yy_start_stack_depth) += YY_START_STACK_INCR;
4889 new_size = (yy_start_stack_depth) * sizeof( int );
4891 if ( ! (yy_start_stack) )
4892 (yy_start_stack) = (int *) yyalloc(new_size );
4894 else
4895 (yy_start_stack) = (int *) yyrealloc((void *) (yy_start_stack),new_size );
4897 if ( ! (yy_start_stack) )
4898 YY_FATAL_ERROR( "out of memory expanding start-condition stack" );
4901 (yy_start_stack)[(yy_start_stack_ptr)++] = YY_START;
4903 BEGIN(new_state);
4906 static void yy_pop_state (void)
4908 if ( --(yy_start_stack_ptr) < 0 )
4909 YY_FATAL_ERROR( "start-condition stack underflow" );
4911 BEGIN((yy_start_stack)[(yy_start_stack_ptr)]);
4914 #ifndef YY_EXIT_FAILURE
4915 #define YY_EXIT_FAILURE 2
4916 #endif
4918 static void yy_fatal_error (yyconst char* msg )
4920 (void) fprintf( stderr, "%s\n", msg );
4921 exit( YY_EXIT_FAILURE );
4924 /* Redefine yyless() so it works in section 3 code. */
4926 #undef yyless
4927 #define yyless(n) \
4928 do \
4930 /* Undo effects of setting up yytext. */ \
4931 int yyless_macro_arg = (n); \
4932 YY_LESS_LINENO(yyless_macro_arg);\
4933 yytext[yyleng] = (yy_hold_char); \
4934 (yy_c_buf_p) = yytext + yyless_macro_arg; \
4935 (yy_hold_char) = *(yy_c_buf_p); \
4936 *(yy_c_buf_p) = '\0'; \
4937 yyleng = yyless_macro_arg; \
4939 while ( 0 )
4941 /* Accessor methods (get/set functions) to struct members. */
4943 /** Get the current line number.
4946 int yyget_lineno (void)
4949 return yylineno;
4952 /** Get the input stream.
4955 FILE *yyget_in (void)
4957 return yyin;
4960 /** Get the output stream.
4963 FILE *yyget_out (void)
4965 return yyout;
4968 /** Get the length of the current token.
4971 yy_size_t yyget_leng (void)
4973 return yyleng;
4976 /** Get the current token.
4980 char *yyget_text (void)
4982 return yytext;
4985 /** Set the current line number.
4986 * @param line_number
4989 void yyset_lineno (int line_number )
4992 yylineno = line_number;
4995 /** Set the input stream. This does not discard the current
4996 * input buffer.
4997 * @param in_str A readable stream.
4999 * @see yy_switch_to_buffer
5001 void yyset_in (FILE * in_str )
5003 yyin = in_str ;
5006 void yyset_out (FILE * out_str )
5008 yyout = out_str ;
5011 int yyget_debug (void)
5013 return yy_flex_debug;
5016 void yyset_debug (int bdebug )
5018 yy_flex_debug = bdebug ;
5021 static int yy_init_globals (void)
5023 /* Initialization is the same as for the non-reentrant scanner.
5024 * This function is called from yylex_destroy(), so don't allocate here.
5027 (yy_buffer_stack) = 0;
5028 (yy_buffer_stack_top) = 0;
5029 (yy_buffer_stack_max) = 0;
5030 (yy_c_buf_p) = (char *) 0;
5031 (yy_init) = 0;
5032 (yy_start) = 0;
5034 (yy_start_stack_ptr) = 0;
5035 (yy_start_stack_depth) = 0;
5036 (yy_start_stack) = NULL;
5038 (yy_state_buf) = 0;
5039 (yy_state_ptr) = 0;
5040 (yy_full_match) = 0;
5041 (yy_lp) = 0;
5043 /* Defined in main.c */
5044 #ifdef YY_STDINIT
5045 yyin = stdin;
5046 yyout = stdout;
5047 #else
5048 yyin = (FILE *) 0;
5049 yyout = (FILE *) 0;
5050 #endif
5052 /* For future reference: Set errno on error, since we are called by
5053 * yylex_init()
5055 return 0;
5058 /* yylex_destroy is for both reentrant and non-reentrant scanners. */
5059 int yylex_destroy (void)
5062 /* Pop the buffer stack, destroying each element. */
5063 while(YY_CURRENT_BUFFER){
5064 yy_delete_buffer(YY_CURRENT_BUFFER );
5065 YY_CURRENT_BUFFER_LVALUE = NULL;
5066 yypop_buffer_state();
5069 /* Destroy the stack itself. */
5070 yyfree((yy_buffer_stack) );
5071 (yy_buffer_stack) = NULL;
5073 /* Destroy the start condition stack. */
5074 yyfree((yy_start_stack) );
5075 (yy_start_stack) = NULL;
5077 yyfree ( (yy_state_buf) );
5078 (yy_state_buf) = NULL;
5080 /* Reset the globals. This is important in a non-reentrant scanner so the next time
5081 * yylex() is called, initialization will occur. */
5082 yy_init_globals( );
5084 return 0;
5088 * Internal utility routines.
5091 #ifndef yytext_ptr
5092 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
5094 register int i;
5095 for ( i = 0; i < n; ++i )
5096 s1[i] = s2[i];
5098 #endif
5100 #ifdef YY_NEED_STRLEN
5101 static int yy_flex_strlen (yyconst char * s )
5103 register int n;
5104 for ( n = 0; s[n]; ++n )
5107 return n;
5109 #endif
5111 void *yyalloc (yy_size_t size )
5113 return (void *) malloc( size );
5116 void *yyrealloc (void * ptr, yy_size_t size )
5118 /* The cast to (char *) in the following accommodates both
5119 * implementations that use char* generic pointers, and those
5120 * that use void* generic pointers. It works with the latter
5121 * because both ANSI C and C++ allow castless assignment from
5122 * any pointer type to void*, and deal with argument conversions
5123 * as though doing an assignment.
5125 return (void *) realloc( (char *) ptr, size );
5128 void yyfree (void * ptr )
5130 free( (char *) ptr ); /* see yyrealloc() for (char *) cast */
5133 #define YYTABLES_NAME "yytables"
5135 #line 969 "scan.l"
5140 int yywrap()
5142 if ( --num_input_files > 0 )
5144 set_input_file( *++input_files );
5145 return 0;
5148 else
5149 return 1;
5153 /* set_input_file - open the given file (if NULL, stdin) for scanning */
5155 void set_input_file( file )
5156 char *file;
5158 if ( file && strcmp( file, "-" ) )
5160 infilename = copy_string( file );
5161 yyin = fopen( infilename, "r" );
5163 if ( yyin == NULL )
5164 lerrsf( _( "can't open %s" ), file );
5167 else
5169 yyin = stdin;
5170 infilename = copy_string( "<stdin>" );
5173 linenum = 1;
5177 /* Wrapper routines for accessing the scanner's malloc routines. */
5179 void *flex_alloc( size )
5180 size_t size;
5182 return (void *) malloc( size );
5185 void *flex_realloc( ptr, size )
5186 void *ptr;
5187 size_t size;
5189 return (void *) realloc( ptr, size );
5192 void flex_free( ptr )
5193 void *ptr;
5195 if ( ptr )
5196 free( ptr );