OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [binutils-2.18.50/] [ld/] [ldlex.c] - Blame information for rev 271

Go to most recent revision | Details | Compare with Previous | View Log

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

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.