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