source: vendor/flex/2.5.33/scan.c@ 3031

Last change on this file since 3031 was 3031, checked in by bird, 18 years ago

flex 2.5.33.

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