1 /* A lexical scanner generated by flex */
2
3 /* Scanner skeleton version:
4 * $Header: flex.skl,v 1.2 94/01/04 14:33:15 vern Exp $
5 */
6
7 #define FLEX_SCANNER
8
9 #include <stdio.h>
10
11
12 /* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
13 #ifdef c_plusplus
14 #ifndef __cplusplus
15 #define __cplusplus
16 #endif
17 #endif
18
19
20 #ifdef __cplusplus
21
22 #include <stdlib.h>
23 #include <unistd.h>
24
25 /* Use prototypes in function declarations. */
26 #define YY_USE_PROTOS
27
28 /* The "const" storage-class-modifier is valid. */
29 #define YY_USE_CONST
30
31 #else /* ! __cplusplus */
32
33 #ifdef __STDC__
34
35 #define YY_USE_PROTOS
36 #define YY_USE_CONST
37
38 #endif /* __STDC__ */
39 #endif /* ! __cplusplus */
40
41
42 #ifdef __TURBOC__
43 #define YY_USE_CONST
44 #endif
45
46
47 #ifndef YY_USE_CONST
48 #ifndef const
49 #define const
50 #endif
51 #endif
52
53
54 #ifdef YY_USE_PROTOS
55 #define YY_PROTO(proto) proto
56 #else
57 #define YY_PROTO(proto) ()
58 #endif
59
60 /* Returned upon end-of-file. */
61 #define YY_NULL 0
62
63 /* Promotes a possibly negative, possibly signed char to an unsigned
64 * integer for use as an array index. If the signed char is negative,
65 * we want to instead treat it as an 8-bit unsigned char, hence the
66 * double cast.
67 */
68 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
69
70 /* Enter a start condition. This macro really ought to take a parameter,
71 * but we do it the disgusting crufty way forced on us by the ()-less
72 * definition of BEGIN.
73 */
74 #define BEGIN yy_start = 1 + 2 *
75
76 /* Translate the current start state into a value that can be later handed
77 * to BEGIN to return to the state.
78 */
79 #define YY_START ((yy_start - 1) / 2)
80
81 /* Action number for EOF rule of a given start state. */
82 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
83
84 /* Special action meaning "start processing a new file". Now included
85 * only for backward compatibility with previous versions of flex.
86 */
87 #define YY_NEW_FILE yyrestart( yyin )
88
89 #define YY_END_OF_BUFFER_CHAR 0
90
91 /* Size of default input buffer. */
92 #define YY_BUF_SIZE 16384
93
94 typedef struct yy_buffer_state *YY_BUFFER_STATE;
95
96 extern int yyleng;
97 extern FILE *yyin, *yyout;
98
99 #ifdef __cplusplus
100 extern "C" {
101 #endif
102 extern int yywrap YY_PROTO(( void ));
103 #ifdef __cplusplus
104 }
105 #endif
106
107 #define EOB_ACT_CONTINUE_SCAN 0
108 #define EOB_ACT_END_OF_FILE 1
109 #define EOB_ACT_LAST_MATCH 2
110
111 /* The funky do-while in the following #define is used to turn the definition
112 * int a single C statement (which needs a semi-colon terminator). This
113 * avoids problems with code like:
114 *
115 * if ( condition_holds )
116 * yyless( 5 );
117 * else
118 * do_something_else();
119 *
120 * Prior to using the do-while the compiler would get upset at the
121 * "else" because it interpreted the "if" statement as being all
122 * done when it reached the ';' after the yyless() call.
123 */
124
125 /* Return all but the first 'n' matched characters back to the input stream. */
126
127 #define yyless(n) \
128 do \
129 { \
130 /* Undo effects of setting up yytext. */ \
131 *yy_cp = yy_hold_char; \
132 yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \
133 YY_DO_BEFORE_ACTION; /* set up yytext again */ \
134 } \
135 while ( 0 )
136
137 #define unput(c) yyunput( c, yytext_ptr )
138
139
140 struct yy_buffer_state
141 {
142 FILE *yy_input_file;
143
144 char *yy_ch_buf; /* input buffer */
145 char *yy_buf_pos; /* current position in input buffer */
146
147 /* Size of input buffer in bytes, not including room for EOB
148 * characters.
149 */
150 int yy_buf_size;
151
152 /* Number of characters read into yy_ch_buf, not including EOB
153 * characters.
154 */
155 int yy_n_chars;
156
157 /* Whether this is an "interactive" input source; if so, and
158 * if we're using stdio for input, then we want to use getc()
159 * instead of fread(), to make sure we stop fetching input after
160 * each newline.
161 */
162 int yy_is_interactive;
163
164 /* Whether to try to fill the input buffer when we reach the
165 * end of it.
166 */
167 int yy_fill_buffer;
168
169 /* Whether we've seen an EOF on this buffer. */
170 int yy_eof_status;
171 #define EOF_NOT_SEEN 0
172 /* "Pending" happens when the EOF has been seen but there's still
173 * some text to process. Note that when we actually see the EOF,
174 * we switch the status back to "not seen" (via yyrestart()), so
175 * that the user can continue scanning by just pointing yyin at
176 * a new input file.
177 */
178 #define EOF_PENDING 1
179 };
180
181 static YY_BUFFER_STATE yy_current_buffer = 0;
182
183 /* We provide macros for accessing buffer states in case in the
184 * future we want to put the buffer states in a more general
185 * "scanner state".
186 */
187 #define YY_CURRENT_BUFFER yy_current_buffer
188
189
190 /* yy_hold_char holds the character lost when yytext is formed. */
191 static char yy_hold_char;
192
193 static int yy_n_chars; /* number of characters read into yy_ch_buf */
194
195
196 int yyleng;
197
198 /* Points to current character in buffer. */
199 static char *yy_c_buf_p = (char *) 0;
200 static int yy_init = 1; /* whether we need to initialize */
201 static int yy_start = 0; /* start state number */
202
203 /* Flag which is used to allow yywrap()'s to do buffer switches
204 * instead of setting up a fresh yyin. A bit of a hack ...
205 */
206 static int yy_did_buffer_switch_on_eof;
207
208 static void yyunput YY_PROTO(( int c, char *buf_ptr ));
209 void yyrestart YY_PROTO(( FILE *input_file ));
210 void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));
211 void yy_load_buffer_state YY_PROTO(( void ));
212 YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));
213 void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));
214 void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));
215
216 static int yy_start_stack_ptr = 0;
217 static int yy_start_stack_depth = 0;
218 static int *yy_start_stack = 0;
219 static void yy_push_state YY_PROTO(( int new_state ));
220 static void yy_pop_state YY_PROTO(( void ));
221 static int yy_top_state YY_PROTO(( void ));
222
223 #ifndef yytext_ptr
224 static void yy_flex_strcpy YY_PROTO(( char *, const char * ));
225 #endif
226
227 static void *yy_flex_alloc YY_PROTO(( unsigned int ));
228 static void *yy_flex_realloc YY_PROTO(( void *ptr, unsigned int ));
229 static void yy_flex_free YY_PROTO(( void * ));
230
231 #define yy_new_buffer yy_create_buffer
232
233 #define INITIAL 0
234 typedef unsigned char YY_CHAR;
235 typedef int yy_state_type;
236 FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
237 extern char *yytext;
238 #define yytext_ptr yytext
239
240 #ifdef __cplusplus
241 static int yyinput YY_PROTO(( void ));
242 #else
243 static int input YY_PROTO(( void ));
244 #endif
245
246 static yy_state_type yy_get_previous_state YY_PROTO(( void ));
247 static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
248 static int yy_get_next_buffer YY_PROTO(( void ));
249 static void yy_fatal_error YY_PROTO(( const char msg[] ));
250
251 /* Done after the current pattern has been matched and before the
252 * corresponding action - sets up yytext.
253 */
254 #define YY_DO_BEFORE_ACTION \
255 yytext_ptr = yy_bp; \
256 yyleng = yy_cp - yy_bp; \
257 yy_hold_char = *yy_cp; \
258 *yy_cp = '\0'; \
259 yy_c_buf_p = yy_cp;
260
261 #define YY_END_OF_BUFFER 356
262 static const short int yy_accept[2052] =
263 { 0,
264 0, 0, 356, 354, 336, 337, 335, 354, 354, 354,
265 350, 353, 354, 338, 346, 351, 352, 354, 354, 354,
266 354, 354, 354, 354, 354, 354, 354, 354, 354, 354,
267 354, 354, 354, 354, 354, 354, 354, 354, 347, 348,
268 349, 344, 345, 0, 0, 335, 0, 341, 0, 0,
269 0, 0, 0, 0, 0, 0, 338, 0, 343, 0,
270 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
271 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
272 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
273 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
274
275 0, 0, 0, 0, 0, 0, 0, 0, 0, 237,
276 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
277 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
278 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
279 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
280 0, 0, 0, 0, 0, 0, 333, 0, 0, 0,
281 0, 340, 0, 0, 343, 0, 339, 0, 0, 0,
282 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
283 0, 0, 48, 0, 0, 0, 0, 0, 0, 0,
284 0, 0, 0, 0, 0, 0, 84, 0, 0, 0,
285
286 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
287 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
288 0, 0, 0, 0, 0, 0, 0, 151, 0, 0,
289 0, 0, 0, 0, 0, 0, 0, 0, 0, 202,
290 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
291 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
292 0, 0, 0, 0, 255, 0, 0, 0, 0, 0,
293 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
294 0, 0, 0, 0, 304, 0, 0, 0, 0, 0,
295 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
296
297 0, 0, 0, 327, 0, 0, 0, 0, 0, 0,
298 0, 0, 0, 0, 342, 0, 0, 0, 0, 0,
299 0, 0, 32, 0, 0, 0, 0, 37, 38, 0,
300 0, 0, 0, 0, 0, 59, 58, 0, 0, 0,
301 0, 72, 0, 0, 0, 0, 0, 0, 0, 0,
302 0, 0, 0, 0, 0, 0, 0, 0, 0, 106,
303 116, 0, 120, 0, 0, 121, 0, 0, 0, 127,
304 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
305 0, 0, 0, 180, 0, 0, 0, 0, 194, 197,
306 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
307
308 0, 0, 0, 0, 222, 0, 0, 0, 0, 236,
309 0, 0, 0, 0, 0, 244, 0, 247, 246, 0,
310 0, 0, 0, 0, 0, 267, 266, 0, 0, 0,
311 276, 0, 0, 271, 0, 0, 0, 0, 0, 0,
312 0, 0, 0, 0, 0, 0, 0, 0, 0, 305,
313 0, 0, 0, 0, 0, 314, 0, 0, 0, 0,
314 0, 318, 0, 0, 0, 0, 0, 328, 0, 0,
315 0, 0, 332, 0, 0, 0, 0, 0, 0, 339,
316 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
317 0, 0, 35, 0, 0, 36, 0, 0, 0, 53,
318
319 56, 0, 62, 0, 0, 0, 0, 0, 0, 0,
320 0, 0, 0, 0, 0, 0, 0, 0, 91, 92,
321 93, 0, 101, 102, 0, 0, 0, 105, 0, 0,
322 0, 0, 0, 0, 0, 0, 0, 119, 0, 0,
323 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
324 0, 0, 0, 143, 144, 145, 0, 0, 0, 0,
325 152, 155, 0, 0, 0, 0, 0, 0, 0, 0,
326 181, 0, 192, 193, 0, 0, 0, 0, 0, 0,
327 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
328 0, 0, 0, 0, 231, 232, 0, 0, 233, 0,
329
330 0, 0, 0, 0, 243, 0, 0, 0, 0, 0,
331 254, 256, 265, 0, 269, 0, 0, 0, 278, 0,
332 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
333 297, 0, 0, 0, 0, 0, 0, 0, 0, 0,
334 0, 0, 0, 0, 0, 315, 316, 317, 0, 0,
335 0, 0, 0, 324, 0, 0, 0, 0, 0, 0,
336 0, 4, 0, 6, 0, 0, 0, 0, 0, 0,
337 0, 0, 0, 0, 0, 0, 0, 34, 0, 0,
338 0, 47, 52, 0, 0, 0, 0, 0, 0, 0,
339 0, 0, 0, 0, 0, 0, 0, 81, 0, 0,
340
341 0, 0, 0, 0, 90, 0, 0, 0, 0, 0,
342 103, 0, 0, 0, 0, 0, 0, 0, 0, 0,
343 104, 117, 0, 122, 128, 0, 0, 0, 0, 0,
344 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
345 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
346 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
347 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
348 0, 0, 0, 208, 0, 0, 0, 0, 214, 0,
349 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
350 0, 238, 239, 0, 0, 245, 0, 0, 0, 253,
351
352 0, 0, 0, 0, 0, 0, 270, 0, 0, 0,
353 0, 0, 286, 0, 0, 0, 0, 0, 0, 0,
354 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
355 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
356 322, 326, 0, 0, 331, 0, 0, 0, 0, 0,
357 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
358 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
359 0, 0, 0, 0, 0, 0, 0, 57, 0, 0,
360 0, 0, 0, 0, 0, 0, 0, 0, 79, 0,
361 0, 0, 0, 0, 0, 0, 94, 0, 0, 0,
362
363 0, 0, 0, 0, 0, 0, 0, 0, 113, 0,
364 0, 0, 118, 0, 0, 0, 0, 0, 0, 0,
365 0, 0, 0, 0, 0, 0, 0, 0, 0, 141,
366 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
367 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
368 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
369 0, 0, 0, 0, 0, 0, 0, 203, 0, 0,
370 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
371 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
372 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
373
374 268, 277, 0, 0, 0, 0, 0, 281, 0, 0,
375 0, 287, 0, 0, 0, 0, 0, 0, 0, 0,
376 0, 0, 0, 299, 0, 0, 0, 0, 0, 0,
377 0, 0, 0, 0, 0, 323, 319, 0, 0, 329,
378 0, 0, 334, 0, 0, 0, 0, 0, 0, 0,
379 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
380 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
381 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
382 0, 0, 73, 74, 76, 0, 77, 0, 0, 0,
383 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
384
385 0, 99, 0, 0, 0, 0, 0, 0, 0, 115,
386 0, 0, 0, 0, 0, 0, 0, 0, 0, 132,
387 0, 0, 0, 0, 0, 150, 142, 0, 0, 148,
388 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
389 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
390 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
391 0, 0, 190, 0, 0, 0, 0, 0, 0, 0,
392 0, 0, 0, 210, 0, 0, 0, 0, 0, 217,
393 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
394 0, 0, 0, 0, 0, 252, 0, 0, 0, 0,
395
396 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
397 0, 0, 0, 0, 0, 0, 0, 295, 0, 0,
398 298, 0, 0, 0, 0, 0, 308, 0, 0, 311,
399 0, 0, 0, 320, 0, 0, 0, 0, 0, 0,
400 0, 0, 0, 0, 0, 0, 0, 0, 8, 18,
401 0, 0, 0, 0, 0, 29, 0, 0, 0, 0,
402 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
403 55, 0, 0, 0, 0, 0, 0, 0, 0, 75,
404 0, 0, 0, 0, 85, 0, 0, 0, 0, 0,
405 0, 100, 0, 0, 0, 0, 0, 0, 110, 112,
406
407 114, 0, 0, 0, 0, 0, 131, 0, 0, 0,
408 0, 136, 138, 0, 0, 0, 0, 149, 0, 0,
409 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
410 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
411 0, 0, 0, 0, 184, 185, 187, 0, 188, 0,
412 0, 0, 196, 0, 0, 0, 200, 0, 0, 211,
413 0, 0, 0, 0, 0, 218, 0, 0, 0, 0,
414 224, 227, 225, 0, 0, 0, 0, 0, 0, 0,
415 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
416 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
417
418 0, 0, 0, 0, 0, 0, 294, 293, 296, 0,
419 0, 300, 0, 0, 0, 309, 310, 0, 0, 0,
420 0, 0, 0, 0, 0, 0, 5, 0, 0, 7,
421 17, 0, 0, 14, 0, 16, 12, 0, 28, 0,
422 0, 0, 0, 31, 33, 0, 0, 0, 0, 0,
423 0, 0, 0, 0, 0, 0, 54, 0, 61, 0,
424 65, 0, 0, 0, 0, 0, 0, 0, 80, 0,
425 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
426 108, 109, 111, 0, 0, 0, 125, 0, 0, 135,
427 137, 134, 0, 0, 0, 0, 0, 154, 0, 0,
428
429 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
430 0, 0, 0, 0, 0, 0, 0, 0, 0, 174,
431 0, 0, 186, 0, 0, 195, 201, 0, 0, 0,
432 0, 0, 0, 0, 0, 0, 215, 0, 0, 0,
433 0, 223, 226, 0, 0, 0, 0, 0, 0, 0,
434 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
435 0, 0, 0, 0, 0, 0, 280, 0, 0, 0,
436 0, 0, 0, 0, 291, 292, 301, 0, 0, 0,
437 307, 0, 0, 0, 0, 321, 0, 330, 0, 0,
438 13, 0, 15, 11, 10, 0, 0, 0, 0, 0,
439
440 0, 30, 0, 0, 0, 0, 0, 40, 42, 0,
441 0, 0, 45, 60, 64, 63, 0, 0, 0, 0,
442 0, 0, 78, 0, 0, 0, 0, 0, 0, 0,
443 0, 95, 0, 107, 0, 123, 126, 0, 0, 133,
444 0, 0, 0, 0, 153, 0, 0, 0, 0, 0,
445 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
446 0, 0, 175, 0, 0, 172, 0, 178, 0, 191,
447 0, 0, 0, 0, 0, 0, 0, 212, 0, 221,
448 0, 219, 0, 0, 0, 0, 0, 228, 240, 0,
449 0, 0, 248, 0, 0, 0, 0, 0, 0, 0,
450
451 259, 0, 263, 0, 0, 0, 0, 279, 0, 0,
452 0, 285, 0, 0, 290, 0, 302, 306, 0, 0,
453 0, 0, 325, 0, 3, 9, 0, 0, 0, 0,
454 0, 0, 0, 0, 0, 0, 0, 39, 41, 0,
455 0, 44, 0, 0, 0, 0, 0, 0, 0, 0,
456 0, 0, 0, 0, 96, 0, 0, 124, 0, 0,
457 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
458 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
459 173, 0, 0, 176, 189, 0, 0, 0, 0, 0,
460 0, 209, 213, 216, 220, 0, 230, 0, 0, 0,
461
462 0, 249, 0, 0, 0, 260, 0, 0, 257, 0,
463 0, 0, 0, 0, 0, 283, 284, 0, 0, 0,
464 0, 0, 0, 0, 2, 0, 0, 0, 0, 0,
465 0, 0, 27, 0, 0, 0, 51, 43, 46, 0,
466 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
467 0, 0, 97, 0, 0, 0, 140, 0, 147, 0,
468 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
469 0, 0, 0, 0, 0, 177, 179, 0, 198, 0,
470 0, 0, 0, 229, 0, 234, 0, 0, 0, 250,
471 258, 0, 264, 261, 0, 0, 0, 0, 282, 0,
472
473 288, 303, 0, 312, 0, 182, 0, 0, 0, 0,
474 26, 0, 21, 24, 0, 50, 0, 0, 0, 0,
475 71, 67, 0, 0, 0, 0, 0, 0, 98, 0,
476 0, 139, 146, 0, 156, 0, 0, 0, 0, 0,
477 0, 0, 0, 0, 0, 0, 0, 0, 166, 199,
478 0, 205, 0, 204, 235, 0, 242, 251, 262, 0,
479 0, 0, 0, 289, 313, 183, 0, 25, 0, 20,
480 23, 49, 0, 70, 66, 0, 0, 0, 0, 86,
481 0, 0, 0, 129, 0, 0, 0, 0, 0, 0,
482 0, 167, 159, 0, 161, 0, 163, 0, 207, 206,
483
484 241, 0, 273, 0, 272, 19, 22, 0, 0, 0,
485 83, 0, 0, 0, 130, 157, 158, 0, 160, 0,
486 162, 0, 164, 168, 0, 275, 274, 0, 0, 0,
487 87, 0, 88, 165, 169, 0, 0, 0, 0, 82,
488 0, 0, 170, 0, 0, 89, 171, 0, 69, 68,
489 0
490 } ;
491
492 static const int yy_ec[256] =
493 { 0,
494 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
495 1, 4, 1, 1, 1, 1, 1, 1, 1, 1,
496 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
497 1, 4, 1, 5, 6, 1, 1, 1, 7, 1,
498 1, 8, 9, 1, 10, 11, 12, 13, 14, 15,
499 16, 13, 13, 13, 13, 13, 13, 17, 1, 1,
500 1, 1, 1, 1, 1, 1, 1, 1, 18, 1,
501 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
502 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
503 19, 20, 21, 1, 22, 1, 23, 24, 25, 26,
504
505 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
506 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
507 47, 48, 49, 1, 50, 1, 1, 1, 1, 1,
508 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
509 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
510 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
511 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
512 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
513 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
514 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
515
516 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
517 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
518 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
519 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
520 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
521 1, 1, 1, 1, 1
522 } ;
523
524 static const int yy_meta[51] =
525 { 0,
526 1, 1, 2, 1, 1, 1, 3, 1, 1, 1,
527 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
528 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
529 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
530 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
531 } ;
532
533 static const short int yy_base[2062] =
534 { 0,
535 0, 0, 2185, 2186, 49, 2186, 50, 52, 71, 2164,
536 2186, 45, 54, 54, 2186, 2186, 2186, 40, 55, 66,
537 84, 84, 89, 34, 71, 105, 2153, 108, 68, 110,
538 76, 120, 135, 142, 162, 2144, 105, 66, 147, 171,
539 2186, 2186, 2186, 136, 0, 172, 139, 2186, 2178, 0,
540 200, 215, 2149, 2139, 97, 146, 210, 2170, 0, 222,
541 2140, 2151, 2132, 85, 143, 160, 40, 2151, 110, 2137,
542 2141, 184, 138, 167, 2134, 2147, 193, 2131, 2127, 204,
543 2125, 2137, 2131, 2121, 2136, 2134, 164, 206, 2133, 2133,
544 2125, 181, 2127, 217, 2117, 2119, 2119, 225, 2123, 2130,
545
546 217, 147, 220, 223, 229, 2126, 2115, 2115, 229, 235,
547 247, 2107, 2117, 2111, 2123, 243, 2105, 2113, 2103, 2106,
548 2115, 2103, 2110, 250, 2115, 239, 2089, 2113, 242, 243,
549 257, 2095, 2088, 2102, 2090, 2093, 255, 2090, 2091, 2090,
550 2087, 2099, 2094, 2098, 2100, 247, 2099, 2098, 264, 2097,
551 250, 2096, 2095, 265, 289, 296, 290, 291, 310, 2081,
552 2093, 2186, 2107, 296, 0, 303, 314, 2070, 2083, 2089,
553 2068, 2073, 2076, 2061, 2076, 2069, 2063, 2079, 2076, 2056,
554 2075, 2058, 2186, 2057, 2057, 2056, 2055, 2049, 2058, 2056,
555 264, 2051, 2055, 2057, 2059, 2046, 2186, 2060, 2044, 2047,
556
557 2042, 2056, 2051, 2058, 2040, 2048, 2051, 2050, 2050, 2033,
558 2043, 2046, 2046, 284, 310, 2042, 283, 2040, 2038, 2032,
559 2030, 2038, 2031, 2027, 2020, 2035, 2030, 2186, 2027, 2032,
560 2031, 2020, 2014, 2028, 2024, 2030, 2021, 2024, 2033, 312,
561 2022, 277, 309, 2017, 312, 2020, 2006, 2016, 2008, 2016,
562 2015, 2005, 2010, 2012, 2000, 1996, 2003, 1999, 1988, 1997,
563 1990, 1994, 1992, 2000, 2186, 1993, 1997, 1980, 1989, 1990,
564 1985, 1991, 1994, 308, 1989, 1979, 1987, 1990, 1974, 318,
565 1986, 1972, 1988, 1978, 326, 1984, 1987, 1970, 1981, 1980,
566 1964, 1960, 1962, 1961, 1961, 1978, 1962, 1953, 1957, 1957,
567
568 1973, 1954, 1960, 2186, 1947, 1951, 1951, 1967, 345, 1986,
569 1985, 1960, 1957, 1977, 2186, 360, 1957, 1946, 1947, 1945,
570 1935, 329, 337, 1943, 1933, 341, 1944, 2186, 2186, 1949,
571 1938, 1947, 1943, 1931, 1929, 2186, 2186, 1930, 1927, 1937,
572 1926, 2186, 354, 1939, 1935, 1928, 1916, 1928, 1934, 347,
573 1922, 1925, 1911, 1916, 338, 1930, 359, 349, 1914, 2186,
574 2186, 1924, 2186, 1911, 1916, 2186, 1921, 1923, 102, 331,
575 1901, 369, 1908, 1907, 1903, 388, 1903, 1904, 1902, 1911,
576 1907, 360, 1897, 376, 1905, 1896, 1912, 1894, 374, 2186,
577 1900, 1894, 1910, 1896, 1908, 1907, 1902, 1892, 1884, 1903,
578
579 1902, 1897, 1887, 1879, 2186, 378, 1891, 1893, 405, 1896,
580 1889, 1886, 1880, 1872, 1884, 2186, 1890, 2186, 2186, 384,
581 1872, 1877, 1883, 1885, 1866, 2186, 2186, 1876, 1879, 1869,
582 2186, 1870, 1873, 2186, 1876, 1876, 1864, 1876, 1855, 1866,
583 1854, 1868, 395, 1861, 1866, 391, 1869, 1854, 1853, 385,
584 1853, 1845, 387, 1847, 1855, 2186, 1858, 1854, 1856, 1841,
585 1858, 2186, 1838, 1842, 1853, 1850, 1839, 2186, 1833, 1837,
586 1848, 1869, 2186, 427, 1836, 1862, 426, 434, 441, 445,
587 2186, 1829, 1845, 1841, 440, 412, 1826, 1839, 1839, 1836,
588 1835, 1835, 2186, 1824, 1832, 2186, 1818, 1822, 1816, 2186,
589
590 430, 1828, 441, 1814, 1817, 1821, 1817, 1803, 1809, 1825,
591 1820, 1819, 1819, 445, 1803, 442, 1820, 1816, 2186, 2186,
592 2186, 1800, 449, 2186, 1810, 1797, 1795, 2186, 357, 1811,
593 1800, 1798, 1798, 1810, 1802, 1814, 1803, 2186, 1787, 1792,
594 1786, 1795, 1790, 1801, 1786, 449, 1791, 1794, 1778, 1788,
595 1791, 1780, 1790, 2186, 2186, 2186, 1792, 450, 1770, 1782,
596 2186, 458, 1785, 1785, 1768, 456, 1766, 1785, 1780, 1769,
597 2186, 471, 2186, 2186, 1764, 1762, 1780, 471, 1762, 1759,
598 1758, 1765, 407, 1772, 1755, 1760, 1770, 470, 1768, 1751,
599 1765, 1765, 1766, 1766, 2186, 2186, 1765, 1753, 2186, 1746,
600
601 1758, 1758, 1741, 1740, 2186, 1741, 1739, 1749, 1747, 1750,
602 2186, 2186, 480, 1740, 2186, 1742, 1747, 1750, 2186, 1745,
603 1744, 1744, 1728, 1739, 1742, 1724, 451, 1728, 1727, 1727,
604 2186, 1739, 1724, 1723, 1719, 1718, 1733, 1728, 1732, 1725,
605 1716, 1716, 1728, 481, 1725, 2186, 2186, 2186, 1707, 1723,
606 1720, 1712, 1718, 2186, 1699, 1716, 1708, 1714, 517, 1717,
607 510, 475, 1699, 2186, 504, 1701, 1710, 1699, 46, 1704,
608 1694, 1707, 1692, 1702, 1703, 1693, 1702, 2186, 1700, 1703,
609 513, 506, 2186, 1689, 1701, 1683, 1695, 1685, 1697, 1676,
610 1682, 1674, 1693, 478, 1686, 1688, 1679, 2186, 1684, 1680,
611
612 1679, 1682, 1682, 1660, 2186, 1679, 512, 1668, 1667, 1666,
613 2186, 1659, 1665, 1674, 1662, 1669, 1668, 1670, 1672, 1659,
614 2186, 2186, 1653, 2186, 2186, 1661, 1655, 1667, 1649, 1652,
615 1640, 137, 144, 166, 188, 220, 274, 329, 514, 356,
616 392, 386, 425, 439, 461, 480, 484, 473, 488, 491,
617 537, 497, 519, 516, 507, 505, 507, 520, 513, 520,
618 509, 517, 538, 535, 537, 524, 520, 528, 533, 543,
619 542, 549, 532, 2186, 536, 535, 552, 555, 558, 550,
620 544, 543, 559, 561, 562, 560, 553, 551, 558, 562,
621 567, 2186, 2186, 572, 574, 2186, 567, 575, 557, 2186,
622
623 568, 558, 582, 579, 570, 579, 2186, 569, 569, 590,
624 591, 593, 2186, 584, 586, 595, 581, 583, 587, 596,
625 596, 584, 585, 606, 600, 588, 596, 611, 610, 602,
626 606, 615, 604, 604, 614, 619, 616, 617, 605, 612,
627 2186, 618, 608, 615, 2186, 647, 613, 615, 622, 617,
628 628, 619, 626, 627, 625, 629, 635, 614, 616, 638,
629 625, 637, 630, 642, 634, 629, 641, 650, 634, 650,
630 639, 646, 643, 656, 643, 658, 647, 2186, 647, 642,
631 655, 650, 659, 662, 654, 644, 665, 666, 2186, 660,
632 665, 657, 661, 673, 671, 679, 2186, 665, 666, 667,
633
634 671, 666, 663, 673, 679, 682, 687, 687, 2186, 688,
635 681, 690, 2186, 682, 690, 680, 692, 680, 689, 693,
636 678, 700, 700, 699, 695, 688, 690, 701, 691, 2186,
637 707, 692, 700, 703, 704, 702, 706, 712, 715, 720,
638 710, 708, 707, 722, 727, 713, 714, 712, 714, 724,
639 735, 717, 731, 733, 733, 722, 743, 744, 739, 743,
640 736, 725, 739, 745, 748, 745, 746, 2186, 755, 752,
641 750, 752, 756, 761, 740, 759, 757, 759, 762, 761,
642 764, 752, 771, 763, 766, 770, 755, 771, 757, 778,
643 762, 756, 761, 782, 779, 770, 767, 769, 779, 777,
644
645 2186, 2186, 770, 777, 791, 787, 793, 2186, 783, 791,
646 777, 2186, 784, 798, 788, 797, 787, 798, 785, 798,
647 786, 805, 799, 2186, 789, 807, 791, 807, 794, 801,
648 810, 811, 808, 806, 801, 2186, 2186, 818, 803, 2186,
649 820, 842, 2186, 809, 816, 812, 815, 819, 825, 804,
650 806, 828, 818, 827, 830, 831, 825, 818, 824, 835,
651 818, 847, 823, 839, 844, 828, 842, 833, 840, 838,
652 847, 851, 838, 836, 835, 843, 852, 838, 841, 846,
653 840, 862, 2186, 2186, 2186, 849, 2186, 850, 850, 848,
654 848, 854, 862, 865, 866, 868, 861, 855, 852, 855,
655
656 870, 2186, 871, 867, 877, 878, 895, 897, 882, 2186,
657 881, 877, 883, 882, 891, 888, 887, 883, 876, 2186,
658 889, 893, 891, 891, 887, 2186, 2186, 888, 900, 2186,
659 899, 893, 891, 902, 896, 897, 895, 893, 907, 912,
660 898, 899, 909, 894, 913, 918, 902, 909, 916, 903,
661 917, 918, 908, 918, 919, 921, 923, 926, 918, 908,
662 929, 930, 2186, 924, 925, 933, 930, 931, 934, 928,
663 929, 930, 940, 927, 929, 941, 931, 949, 946, 933,
664 935, 948, 951, 962, 939, 954, 956, 954, 948, 956,
665 955, 944, 952, 949, 959, 969, 951, 953, 963, 973,
666
667 954, 968, 969, 972, 977, 978, 967, 982, 981, 981,
668 965, 988, 988, 977, 976, 987, 975, 2186, 975, 986,
669 2186, 981, 983, 978, 979, 985, 2186, 996, 997, 2186,
670 994, 998, 1006, 2186, 1006, 1003, 1008, 1001, 997, 1007,
671 998, 1007, 1010, 1011, 1005, 998, 1001, 1012, 2186, 2186,
672 1017, 1015, 1001, 1030, 1026, 2186, 1022, 1010, 1016, 1031,
673 1028, 1021, 1030, 1020, 1017, 1020, 1039, 1033, 1026, 1037,
674 2186, 1025, 1019, 1026, 1028, 1033, 1034, 1043, 1047, 2186,
675 1033, 1031, 1036, 1037, 2186, 1053, 1047, 1056, 1054, 1041,
676 1054, 2186, 1051, 1045, 1052, 1060, 1079, 1080, 2186, 2186,
677
678 2186, 1058, 1066, 1063, 1059, 1062, 2186, 1067, 1071, 1069,
679 1058, 2186, 2186, 1065, 1073, 1078, 1062, 2186, 1068, 1066,
680 1085, 1085, 1080, 1065, 1084, 1089, 1073, 1080, 1087, 1079,
681 1081, 1079, 1079, 1097, 1090, 1099, 1092, 1093, 1095, 1095,
682 1099, 1092, 1105, 1100, 2186, 2186, 2186, 1095, 2186, 1096,
683 1096, 1107, 2186, 1099, 1107, 1107, 2186, 1116, 1117, 2186,
684 1106, 1114, 1102, 1098, 1106, 2186, 1113, 1121, 1109, 1133,
685 2186, 2186, 2186, 1125, 1123, 1117, 1119, 1128, 1119, 1121,
686 1133, 1128, 1124, 1123, 1132, 1121, 1135, 1136, 1132, 1136,
687 1137, 1139, 1142, 1135, 1136, 1138, 1148, 1151, 1135, 1134,
688
689 1152, 1142, 1151, 1147, 1156, 1144, 2186, 2186, 2186, 1149,
690 1144, 2186, 1150, 1151, 1149, 2186, 2186, 1161, 1161, 1155,
691 1153, 1154, 1168, 1156, 1161, 1156, 2186, 1159, 1170, 2186,
692 2186, 1174, 1172, 2186, 1161, 2186, 2186, 1182, 2186, 1180,
693 1169, 1176, 1168, 2186, 2186, 1182, 1184, 1182, 1175, 1171,
694 1174, 1185, 1187, 1175, 1188, 1182, 2186, 1175, 2186, 1206,
695 2186, 1186, 1195, 1199, 1185, 1205, 1198, 1207, 2186, 1189,
696 1191, 1211, 1211, 1206, 1209, 1202, 1196, 1203, 1209, 1212,
697 2186, 2186, 2186, 1215, 1202, 1208, 2186, 1223, 1204, 2186,
698 2186, 2186, 1219, 1215, 1208, 1220, 1212, 2186, 1219, 1230,
699
700 1218, 1220, 1218, 1218, 1236, 1230, 1239, 1223, 1236, 1222,
701 1238, 1232, 1232, 1244, 1242, 1235, 1248, 1244, 1227, 2186,
702 1238, 1234, 2186, 1235, 1233, 2186, 2186, 1249, 1256, 1254,
703 1256, 1256, 1258, 1248, 1259, 1260, 2186, 1262, 1252, 1263,
704 1264, 2186, 2186, 1263, 1266, 1259, 1268, 1255, 1261, 1273,
705 1257, 1264, 1272, 1272, 1280, 1273, 1274, 1276, 1280, 1280,
706 1273, 1286, 1269, 1290, 1291, 1287, 2186, 1273, 1279, 1292,
707 1286, 1291, 1299, 1296, 2186, 2186, 2186, 1282, 1290, 1286,
708 2186, 1297, 1304, 1289, 1304, 2186, 1295, 2186, 1290, 1292,
709 2186, 1292, 2186, 2186, 2186, 1310, 1299, 1306, 1304, 1291,
710
711 1293, 2186, 1315, 1313, 1316, 1304, 1315, 2186, 2186, 1315,
712 1310, 1313, 2186, 2186, 2186, 2186, 1308, 1329, 1322, 1323,
713 1314, 1327, 2186, 1335, 1331, 1325, 1336, 1334, 1328, 1327,
714 1333, 2186, 1328, 2186, 1325, 2186, 2186, 1330, 1328, 2186,
715 1335, 1343, 1340, 1335, 2186, 1350, 1347, 1335, 1348, 1334,
716 1350, 1344, 1344, 1356, 1351, 1360, 1357, 1362, 1359, 1360,
717 1346, 1342, 2186, 1353, 1361, 2186, 1352, 2186, 1370, 2186,
718 1370, 1358, 1370, 1368, 1372, 1370, 1355, 2186, 1374, 2186,
719 1357, 2186, 1376, 1377, 1364, 1379, 1371, 2186, 2186, 1366,
720 1378, 1381, 2186, 1388, 1371, 1385, 1378, 1391, 1388, 1370,
721
722 2186, 1381, 2186, 1392, 1394, 1394, 1396, 2186, 1386, 1384,
723 1391, 2186, 1403, 1386, 2186, 1391, 2186, 2186, 1405, 1393,
724 1405, 1405, 2186, 1392, 2186, 2186, 1397, 1404, 1402, 1389,
725 1391, 1402, 1413, 1407, 1413, 1416, 1427, 2186, 2186, 1409,
726 1409, 2186, 1417, 1408, 1421, 1416, 1425, 1423, 1413, 1432,
727 1433, 1430, 1436, 1436, 2186, 1423, 1425, 2186, 1422, 1437,
728 1437, 1424, 1429, 1431, 1444, 1435, 1439, 1448, 1445, 1450,
729 1447, 1448, 1434, 1435, 1453, 1443, 1455, 1439, 1454, 1446,
730 2186, 1444, 1443, 2186, 2186, 1449, 1447, 1459, 1462, 1461,
731 1464, 2186, 2186, 2186, 2186, 1451, 2186, 1457, 1452, 1464,
732
733 1459, 2186, 1456, 1471, 1452, 2186, 1463, 1459, 2186, 1462,
734 1477, 1475, 1479, 1477, 1467, 2186, 2186, 1467, 1482, 1475,
735 1474, 1472, 1486, 1474, 2186, 1481, 1468, 1470, 1481, 1492,
736 1486, 1481, 2186, 1495, 1496, 1507, 2186, 2186, 2186, 1490,
737 1499, 1497, 1497, 1514, 1488, 1504, 1492, 1509, 1500, 1501,
738 1512, 1501, 2186, 1512, 1512, 1499, 2186, 1505, 2186, 1515,
739 1502, 1502, 1520, 1510, 1522, 1506, 1521, 1513, 1521, 1510,
740 1528, 1512, 1528, 1533, 1517, 2186, 2186, 1518, 2186, 1532,
741 1519, 1534, 1521, 2186, 1521, 2186, 1527, 1529, 1539, 2186,
742 2186, 1527, 2186, 2186, 1539, 1542, 1541, 1544, 2186, 1545,
743
744 2186, 2186, 1533, 2186, 1534, 2186, 1538, 1549, 1543, 1538,
745 2186, 1552, 2186, 2186, 1563, 2186, 1550, 1567, 1541, 1536,
746 2186, 2186, 1562, 1561, 1560, 1547, 1566, 1563, 2186, 1564,
747 1552, 2186, 2186, 1559, 2186, 1564, 1553, 1571, 1555, 1571,
748 1576, 1560, 1566, 1565, 1556, 1567, 1565, 1581, 2186, 2186,
749 1566, 2186, 1567, 2186, 2186, 1573, 2186, 2186, 2186, 1583,
750 1570, 1585, 1572, 2186, 2186, 2186, 1574, 2186, 1588, 2186,
751 2186, 2186, 1568, 2186, 2186, 1594, 1578, 1589, 1586, 2186,
752 1597, 1588, 1583, 2186, 1583, 1590, 1589, 1580, 1591, 1589,
753 1605, 2186, 2186, 1591, 2186, 1592, 2186, 1591, 2186, 2186,
754
755 2186, 1593, 2186, 1594, 2186, 2186, 2186, 1613, 1595, 1613,
756 2186, 1598, 1613, 1600, 2186, 2186, 2186, 1602, 2186, 1603,
757 2186, 1602, 2186, 2186, 1608, 2186, 2186, 1604, 1616, 1618,
758 2186, 1615, 2186, 2186, 2186, 1613, 1611, 1621, 1616, 2186,
759 1613, 1615, 2186, 1619, 1621, 2186, 2186, 1622, 2186, 2186,
760 2186, 1658, 1661, 1663, 1666, 1669, 1672, 1675, 1678, 1681,
761 1684
762 } ;
763
764 static const short int yy_def[2062] =
765 { 0,
766 2051, 1, 2051, 2051, 2051, 2051, 2051, 2052, 2051, 2053,
767 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
768 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
769 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
770 2051, 2051, 2051, 2051, 9, 2051, 2052, 2051, 2052, 9,
771 2051, 2054, 2051, 2051, 2053, 2053, 2051, 2055, 2056, 2051,
772 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
773 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
774 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
775 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
776
777 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
778 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
779 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
780 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
781 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
782 2051, 2051, 2051, 2051, 2054, 2054, 2054, 2057, 2054, 2051,
783 2051, 2051, 2055, 2058, 2056, 2051, 2051, 2051, 2051, 2051,
784 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
785 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
786 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
787
788 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
789 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
790 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
791 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
792 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
793 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
794 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
795 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
796 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
797 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
798
799 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2057, 2059,
800 2057, 2051, 2051, 2060, 2051, 2051, 2051, 2051, 2051, 2051,
801 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
802 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
803 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
804 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
805 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
806 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
807 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
808 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
809
810 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
811 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
812 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
813 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
814 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
815 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
816 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
817 2051, 2059, 2051, 2051, 2051, 2060, 2058, 2051, 2051, 2051,
818 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
819 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
820
821 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
822 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
823 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
824 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
825 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
826 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
827 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
828 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
829 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
830 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
831
832 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
833 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
834 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
835 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
836 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
837 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
838 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
839 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
840 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
841 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
842
843 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
844 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
845 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
846 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
847 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
848 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
849 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
850 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
851 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
852 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
853
854 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
855 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
856 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
857 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
858 2051, 2051, 2051, 2051, 2051, 2061, 2051, 2051, 2051, 2051,
859 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
860 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
861 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
862 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
863 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
864
865 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
866 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
867 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
868 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
869 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
870 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
871 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
872 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
873 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
874 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
875
876 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
877 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
878 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
879 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
880 2051, 2061, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
881 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
882 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
883 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
884 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
885 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
886
887 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
888 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
889 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
890 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
891 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
892 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
893 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
894 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
895 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
896 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
897
898 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
899 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
900 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
901 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
902 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
903 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
904 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
905 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
906 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
907 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
908
909 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
910 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
911 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
912 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
913 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
914 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
915 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
916 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
917 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
918 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
919
920 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
921 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
922 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
923 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
924 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
925 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
926 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
927 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
928 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
929 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
930
931 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
932 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
933 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
934 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
935 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
936 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
937 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
938 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
939 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
940 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
941
942 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
943 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
944 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
945 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
946 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
947 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
948 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
949 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
950 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
951 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
952
953 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
954 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
955 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
956 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
957 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
958 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
959 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
960 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
961 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
962 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
963
964 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
965 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
966 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
967 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
968 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
969 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
970 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
971 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
972 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
973 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
974
975 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
976 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
977 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
978 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
979 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
980 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
981 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
982 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
983 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
984 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
985
986 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
987 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
988 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
989 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
990 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
991 0, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
992 2051
993 } ;
994
995 static const short int yy_nxt[2237] =
996 { 0,
997 4, 5, 6, 7, 8, 9, 10, 11, 4, 12,
998 4, 13, 14, 14, 14, 14, 15, 4, 16, 4,
999 17, 4, 18, 19, 20, 21, 22, 23, 24, 25,
1000 26, 4, 27, 28, 29, 30, 31, 32, 4, 33,
1001 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
1002 44, 44, 44, 46, 45, 45, 48, 57, 57, 57,
1003 57, 58, 178, 61, 60, 59, 57, 57, 57, 57,
1004 91, 49, 50, 92, 50, 62, 858, 65, 63, 64,
1005 51, 66, 179, 52, 52, 52, 52, 859, 67, 68,
1006 105, 69, 70, 71, 106, 143, 144, 93, 107, 72,
1007
1008 73, 94, 74, 162, 53, 75, 77, 95, 54, 82,
1009 78, 79, 76, 86, 80, 111, 56, 83, 112, 87,
1010 81, 171, 84, 541, 172, 88, 89, 85, 90, 96,
1011 101, 141, 108, 97, 102, 142, 109, 44, 103, 44,
1012 98, 45, 542, 48, 104, 99, 110, 113, 2051, 181,
1013 114, 182, 55, 115, 116, 183, 117, 120, 49, 118,
1014 188, 121, 119, 920, 122, 123, 125, 173, 189, 124,
1015 145, 126, 127, 44, 233, 46, 128, 45, 129, 130,
1016 146, 147, 174, 131, 132, 921, 148, 149, 133, 175,
1017 234, 134, 135, 176, 150, 177, 922, 151, 136, 207,
1018
1019 190, 137, 191, 214, 138, 152, 186, 215, 139, 208,
1020 153, 154, 52, 52, 52, 52, 156, 157, 156, 158,
1021 60, 923, 57, 57, 57, 57, 187, 159, 159, 159,
1022 159, 166, 194, 195, 167, 167, 167, 167, 198, 209,
1023 230, 210, 217, 199, 200, 218, 222, 239, 235, 223,
1024 924, 247, 224, 236, 237, 238, 249, 241, 231, 248,
1025 250, 271, 225, 232, 242, 259, 226, 240, 227, 252,
1026 251, 253, 268, 260, 243, 275, 277, 254, 272, 279,
1027 269, 286, 278, 303, 276, 287, 296, 297, 300, 307,
1028 304, 157, 157, 2051, 2051, 310, 280, 156, 157, 156,
1029
1030 158, 301, 308, 164, 339, 340, 395, 315, 368, 369,
1031 311, 156, 157, 156, 158, 167, 167, 167, 167, 396,
1032 925, 362, 159, 159, 159, 159, 167, 167, 167, 167,
1033 363, 316, 364, 391, 397, 401, 365, 402, 392, 398,
1034 440, 432, 403, 433, 441, 399, 393, 446, 404, 310,
1035 486, 487, 543, 434, 926, 488, 366, 519, 489, 526,
1036 447, 490, 494, 520, 311, 544, 448, 449, 478, 479,
1037 533, 491, 480, 480, 480, 480, 495, 507, 508, 527,
1038 529, 563, 509, 714, 534, 530, 564, 521, 510, 531,
1039 546, 929, 715, 511, 532, 575, 547, 566, 548, 591,
1040
1041 512, 554, 555, 556, 592, 607, 638, 567, 642, 549,
1042 568, 569, 639, 550, 576, 595, 627, 570, 930, 628,
1043 931, 596, 643, 557, 608, 632, 597, 598, 659, 629,
1044 659, 633, 634, 477, 671, 775, 51, 315, 672, 52,
1045 52, 52, 52, 661, 776, 599, 480, 480, 480, 480,
1046 661, 684, 932, 480, 480, 480, 480, 480, 480, 480,
1047 480, 665, 687, 702, 666, 685, 699, 688, 703, 667,
1048 707, 743, 700, 708, 668, 817, 731, 744, 732, 747,
1049 669, 933, 748, 934, 670, 818, 709, 752, 710, 733,
1050 753, 754, 769, 734, 760, 761, 847, 755, 781, 762,
1051
1052 886, 801, 834, 935, 887, 763, 770, 782, 936, 937,
1053 764, 802, 848, 938, 803, 804, 835, 765, 659, 939,
1054 659, 805, 480, 480, 480, 480, 51, 873, 850, 52,
1055 52, 52, 52, 851, 870, 927, 898, 871, 852, 948,
1056 874, 949, 950, 951, 853, 952, 953, 875, 854, 899,
1057 954, 900, 955, 956, 928, 957, 958, 872, 940, 941,
1058 959, 960, 942, 961, 943, 962, 963, 964, 965, 966,
1059 967, 968, 944, 969, 945, 970, 971, 946, 972, 947,
1060 973, 974, 975, 976, 977, 978, 979, 980, 981, 982,
1061 983, 984, 985, 986, 987, 988, 990, 991, 992, 993,
1062
1063 997, 989, 994, 995, 998, 999, 1000, 1001, 1002, 996,
1064 1003, 1004, 1006, 1011, 1009, 1012, 1013, 1015, 1007, 1016,
1065 1017, 1018, 1019, 1020, 1021, 1005, 1010, 1022, 1023, 1024,
1066 1014, 1008, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032,
1067 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1043,
1068 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1052, 1053, 1054,
1069 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1051, 1062, 1063,
1070 1064, 1065, 1066, 1067, 1068, 1070, 1071, 1072, 1074, 1075,
1071 1076, 1077, 1078, 1079, 1073, 1080, 1081, 1082, 1083, 1084,
1072 1085, 1086, 1088, 1089, 1069, 1090, 1091, 1092, 1093, 1094,
1073
1074 1095, 1097, 1098, 1099, 1100, 1096, 1101, 1102, 1103, 1104,
1075 1105, 1087, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113,
1076 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123,
1077 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133,
1078 1134, 1135, 1136, 1143, 1144, 1137, 1145, 1138, 1146, 1147,
1079 1148, 1149, 1150, 1151, 1152, 1139, 1153, 1140, 1154, 1155,
1080 1141, 1156, 1142, 1157, 1158, 1159, 1160, 1162, 1163, 1164,
1081 1161, 1165, 1166, 1167, 1168, 1169, 1170, 1171, 1173, 1174,
1082 1175, 1172, 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183,
1083 1184, 1185, 1186, 1188, 1189, 1190, 1191, 1187, 1192, 1193,
1084
1085 1194, 1195, 1196, 1197, 1198, 1199, 1200, 1201, 1202, 1203,
1086 1204, 1205, 1206, 1207, 1208, 1209, 1210, 1211, 1212, 1213,
1087 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223,
1088 1224, 1225, 1226, 1227, 1228, 1229, 1230, 1231, 1232, 1233,
1089 1234, 1235, 1236, 1237, 1043, 1238, 1239, 1240, 1241, 1242,
1090 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1250, 1251, 1252,
1091 1253, 1254, 1255, 1256, 1257, 1258, 1259, 1260, 1261, 1262,
1092 1263, 1264, 1265, 1266, 1267, 1268, 1269, 1270, 1271, 1272,
1093 1273, 1274, 1275, 1276, 1280, 1281, 1282, 1283, 1284, 1285,
1094 1286, 1287, 1288, 1289, 1290, 1291, 1292, 1293, 1277, 1278,
1095
1096 1294, 1295, 1296, 1297, 1298, 1299, 1279, 1300, 1301, 1302,
1097 1303, 1304, 1305, 1306, 1307, 1308, 1309, 1310, 1311, 1312,
1098 1313, 1314, 1315, 1316, 1317, 1318, 1319, 1320, 1321, 1322,
1099 1323, 1324, 1325, 1326, 1327, 1328, 1329, 1330, 1331, 1332,
1100 1333, 1334, 1335, 1336, 1337, 1338, 1339, 1340, 1341, 1342,
1101 1343, 1344, 1345, 1346, 1347, 1348, 1350, 1351, 1352, 1353,
1102 1354, 1355, 1356, 1357, 1358, 1359, 1360, 1361, 1362, 1363,
1103 1364, 1365, 1366, 1367, 1368, 1349, 1369, 1370, 1371, 1373,
1104 1374, 1375, 1376, 1377, 1378, 1379, 1380, 1381, 1382, 1383,
1105 1384, 1386, 1387, 1388, 1389, 1390, 1391, 1392, 1393, 1394,
1106
1107 1396, 1397, 1372, 1395, 1398, 1399, 1385, 1400, 1401, 1402,
1108 1404, 1405, 1406, 1407, 1408, 1409, 1410, 1411, 1412, 1413,
1109 1414, 1415, 1416, 1417, 1418, 1403, 1419, 1420, 1422, 1423,
1110 1424, 1425, 1426, 1427, 1428, 1429, 1430, 1431, 1432, 1433,
1111 1434, 1435, 1421, 1436, 1437, 1438, 1439, 1440, 1443, 1444,
1112 1441, 1445, 1446, 1448, 1449, 1450, 1451, 1447, 1452, 1453,
1113 1454, 1455, 1456, 1457, 1458, 1459, 1442, 1460, 1461, 1462,
1114 1463, 1465, 1466, 1467, 1468, 1469, 1470, 1464, 1471, 1472,
1115 1473, 1474, 1475, 1476, 1477, 1478, 1479, 1480, 1481, 1482,
1116 1483, 1484, 1485, 1486, 1487, 1488, 1489, 1490, 1491, 1492,
1117
1118 1493, 1494, 1495, 1496, 1497, 1498, 1499, 1500, 1501, 1502,
1119 1503, 1504, 1505, 1506, 1507, 1508, 1509, 1510, 1511, 1512,
1120 1513, 1514, 1515, 1516, 1517, 1518, 1519, 1520, 1521, 1522,
1121 1523, 1524, 1525, 1526, 1527, 1528, 1529, 1530, 1532, 1534,
1122 1535, 1536, 1531, 1533, 1537, 1538, 1539, 1540, 1541, 1542,
1123 1544, 1545, 1546, 1547, 1548, 1549, 1550, 1551, 1552, 1553,
1124 1554, 1555, 1556, 1557, 1558, 1559, 1560, 1561, 1562, 1563,
1125 1564, 1565, 1566, 1543, 1567, 1568, 1569, 1570, 1571, 1572,
1126 1573, 1574, 1575, 1576, 1577, 1578, 1579, 1580, 1581, 1582,
1127 1583, 1584, 1585, 1586, 1587, 1588, 1589, 1590, 1591, 1592,
1128
1129 1593, 1594, 1595, 1596, 1597, 1599, 1600, 1602, 1603, 1604,
1130 1605, 1606, 1607, 1608, 1609, 1610, 1611, 1601, 1612, 1613,
1131 1598, 1614, 1615, 1617, 1618, 1619, 1620, 1621, 1622, 1623,
1132 1624, 1625, 1626, 1627, 1628, 1629, 1630, 1631, 1632, 1633,
1133 1634, 1635, 1636, 1637, 1638, 1640, 1616, 1641, 1642, 1643,
1134 1644, 1645, 1646, 1647, 1648, 1649, 1650, 1651, 1652, 1639,
1135 1653, 1654, 1655, 1656, 1657, 1658, 1659, 1660, 1661, 1662,
1136 1663, 1664, 1665, 1666, 1667, 1668, 1669, 1670, 1671, 1672,
1137 1673, 1674, 1675, 1676, 1677, 1678, 1679, 1680, 1681, 1682,
1138 1683, 1684, 1685, 1686, 1687, 1688, 1689, 1690, 1691, 1692,
1139
1140 1693, 1694, 1695, 1696, 1697, 1698, 1699, 1700, 1701, 1702,
1141 1703, 1704, 1706, 1708, 1709, 1710, 1705, 1707, 1711, 1712,
1142 1713, 1714, 1715, 1716, 1717, 1718, 1719, 1720, 1721, 1722,
1143 1723, 1724, 1725, 1726, 1727, 1729, 1730, 1732, 1733, 1734,
1144 1735, 1736, 1737, 1738, 1739, 1740, 1741, 1731, 1742, 1743,
1145 1728, 1744, 1745, 1746, 1747, 1748, 1749, 1750, 1751, 1752,
1146 1753, 1754, 1755, 1756, 1757, 1758, 1759, 1760, 1761, 1762,
1147 1763, 1764, 1765, 1766, 1767, 1768, 1769, 1770, 1771, 1772,
1148 1773, 1774, 1775, 1776, 1777, 1778, 1779, 1780, 1781, 1782,
1149 1783, 1784, 1785, 1786, 1787, 1788, 1789, 1790, 1791, 1792,
1150
1151 1793, 1794, 1795, 1796, 1797, 1798, 1799, 1800, 1801, 1802,
1152 1803, 1804, 1805, 1806, 1807, 1808, 1809, 1810, 1811, 1812,
1153 1813, 1814, 1815, 1816, 1817, 1818, 1819, 1820, 1821, 1822,
1154 1823, 1824, 1825, 1826, 1827, 1829, 1830, 1831, 1832, 1833,
1155 1834, 1835, 1836, 1837, 1838, 1828, 1839, 1840, 1841, 1842,
1156 1843, 1844, 1845, 1846, 1847, 1848, 1849, 1850, 1851, 1852,
1157 1853, 1854, 1855, 1856, 1857, 1858, 1859, 1860, 1861, 1862,
1158 1863, 1864, 1865, 1866, 1867, 1868, 1869, 1870, 1871, 1872,
1159 1873, 1874, 1875, 1876, 1877, 1878, 1879, 1880, 1881, 1882,
1160 1883, 1884, 1885, 1886, 1887, 1888, 1889, 1890, 1891, 1892,
1161
1162 1893, 1894, 1895, 1896, 1897, 1898, 1899, 1900, 1901, 1902,
1163 1903, 1904, 1905, 1906, 1907, 1908, 1909, 1910, 1911, 1912,
1164 1913, 1914, 1915, 1916, 1917, 1918, 1919, 1920, 1921, 1922,
1165 1923, 1924, 1925, 1926, 1927, 1928, 1929, 1930, 1931, 1932,
1166 1933, 1934, 1935, 1936, 1937, 1938, 1939, 1940, 1941, 1942,
1167 1943, 1944, 1945, 1946, 1947, 1948, 1949, 1950, 1951, 1952,
1168 1953, 1954, 1955, 1956, 1957, 1958, 1959, 1960, 1961, 1962,
1169 1963, 1964, 1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972,
1170 1973, 1974, 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1982,
1171 1983, 1984, 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1992,
1172
1173 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
1174 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012,
1175 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022,
1176 2023, 2024, 2025, 2026, 2027, 2028, 2029, 2030, 2031, 2032,
1177 2033, 2034, 2035, 2036, 2037, 2038, 2039, 2040, 2041, 2042,
1178 2043, 2044, 2045, 2046, 2047, 2048, 2049, 2050, 47, 47,
1179 47, 55, 55, 155, 155, 155, 163, 163, 163, 165,
1180 919, 165, 309, 309, 309, 314, 314, 314, 472, 472,
1181 472, 476, 476, 476, 1042, 1042, 1042, 918, 917, 916,
1182 915, 914, 913, 912, 911, 910, 909, 908, 907, 906,
1183
1184 905, 904, 903, 902, 901, 897, 896, 895, 894, 893,
1185 892, 891, 890, 889, 888, 885, 884, 883, 882, 881,
1186 880, 879, 878, 877, 876, 869, 868, 867, 866, 865,
1187 864, 863, 862, 861, 860, 857, 856, 855, 849, 846,
1188 845, 844, 843, 842, 841, 840, 839, 838, 837, 836,
1189 833, 832, 831, 830, 829, 828, 827, 826, 825, 824,
1190 823, 822, 821, 820, 819, 816, 815, 814, 813, 812,
1191 811, 810, 809, 808, 807, 806, 800, 799, 798, 797,
1192 796, 795, 794, 793, 792, 791, 790, 789, 788, 787,
1193 786, 785, 784, 783, 780, 779, 778, 777, 774, 773,
1194
1195 772, 771, 768, 767, 766, 759, 758, 757, 756, 751,
1196 750, 749, 746, 745, 742, 741, 740, 739, 738, 737,
1197 736, 735, 730, 729, 728, 727, 726, 725, 724, 723,
1198 722, 721, 720, 719, 718, 717, 716, 713, 712, 711,
1199 706, 705, 704, 701, 698, 697, 696, 695, 694, 693,
1200 692, 691, 690, 689, 686, 683, 682, 681, 680, 679,
1201 678, 677, 676, 675, 674, 673, 664, 663, 662, 477,
1202 660, 473, 658, 657, 656, 655, 654, 653, 652, 651,
1203 650, 649, 648, 647, 646, 645, 644, 641, 640, 637,
1204 636, 635, 631, 630, 626, 625, 624, 623, 622, 621,
1205
1206 620, 619, 618, 617, 616, 615, 614, 613, 612, 611,
1207 610, 609, 606, 605, 604, 603, 602, 601, 600, 594,
1208 593, 590, 589, 588, 587, 586, 585, 584, 583, 582,
1209 581, 580, 579, 578, 577, 574, 573, 572, 571, 565,
1210 562, 561, 560, 559, 558, 553, 552, 551, 545, 540,
1211 539, 538, 537, 536, 535, 528, 525, 524, 523, 522,
1212 518, 517, 516, 515, 514, 513, 506, 505, 504, 503,
1213 502, 501, 500, 499, 498, 497, 496, 493, 492, 485,
1214 484, 483, 482, 481, 477, 475, 474, 2051, 473, 471,
1215 470, 469, 468, 467, 466, 465, 464, 463, 462, 461,
1216
1217 460, 459, 458, 457, 456, 455, 454, 453, 452, 451,
1218 450, 445, 444, 443, 442, 439, 438, 437, 436, 435,
1219 431, 430, 429, 428, 427, 426, 425, 424, 423, 422,
1220 421, 420, 419, 418, 417, 416, 415, 414, 413, 412,
1221 411, 410, 409, 408, 407, 406, 405, 400, 394, 390,
1222 389, 388, 387, 386, 385, 384, 383, 382, 381, 380,
1223 379, 378, 377, 376, 375, 374, 373, 372, 371, 370,
1224 367, 361, 360, 359, 358, 357, 356, 355, 354, 353,
1225 352, 351, 350, 349, 348, 347, 346, 345, 344, 343,
1226 342, 341, 338, 337, 336, 335, 334, 333, 332, 331,
1227
1228 330, 329, 328, 327, 326, 325, 324, 323, 322, 321,
1229 320, 319, 318, 317, 164, 313, 312, 306, 305, 302,
1230 299, 298, 295, 294, 293, 292, 291, 290, 289, 288,
1231 285, 284, 283, 282, 281, 274, 273, 270, 267, 266,
1232 265, 264, 263, 262, 261, 258, 257, 256, 255, 246,
1233 245, 244, 229, 228, 221, 220, 219, 216, 213, 212,
1234 211, 206, 205, 204, 203, 202, 201, 197, 196, 193,
1235 192, 185, 184, 180, 170, 169, 168, 164, 161, 160,
1236 2051, 140, 100, 56, 2051, 3, 2051, 2051, 2051, 2051,
1237 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
1238
1239 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
1240 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
1241 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
1242 2051, 2051, 2051, 2051, 2051, 2051
1243 } ;
1244
1245 static const short int yy_chk[2237] =
1246 { 0,
1247 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1248 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1249 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1250 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1251 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1252 5, 7, 5, 7, 5, 7, 8, 12, 12, 12,
1253 12, 13, 67, 18, 14, 13, 14, 14, 14, 14,
1254 24, 8, 9, 24, 9, 18, 669, 19, 18, 18,
1255 9, 19, 67, 9, 9, 9, 9, 669, 19, 19,
1256 29, 19, 20, 20, 29, 38, 38, 25, 29, 20,
1257
1258 20, 25, 20, 55, 9, 20, 21, 25, 9, 22,
1259 21, 21, 20, 23, 21, 31, 55, 22, 31, 23,
1260 21, 64, 22, 369, 64, 23, 23, 22, 23, 26,
1261 28, 37, 30, 26, 28, 37, 30, 44, 28, 44,
1262 26, 44, 369, 47, 28, 26, 30, 32, 56, 69,
1263 32, 69, 56, 32, 32, 69, 32, 33, 47, 32,
1264 73, 33, 32, 732, 33, 33, 34, 65, 73, 33,
1265 39, 34, 34, 46, 102, 46, 34, 46, 34, 34,
1266 39, 39, 65, 34, 35, 733, 39, 39, 35, 66,
1267 102, 35, 35, 66, 40, 66, 734, 40, 35, 87,
1268
1269 74, 35, 74, 92, 35, 40, 72, 92, 35, 87,
1270 40, 40, 51, 51, 51, 51, 52, 52, 52, 52,
1271 57, 735, 57, 57, 57, 57, 72, 52, 52, 52,
1272 52, 60, 77, 77, 60, 60, 60, 60, 80, 88,
1273 101, 88, 94, 80, 80, 94, 98, 104, 103, 98,
1274 736, 109, 98, 103, 103, 103, 110, 105, 101, 109,
1275 110, 126, 98, 101, 105, 116, 98, 104, 98, 111,
1276 110, 111, 124, 116, 105, 129, 130, 111, 126, 131,
1277 124, 137, 130, 151, 129, 137, 146, 146, 149, 154,
1278 151, 155, 157, 155, 157, 158, 131, 156, 156, 156,
1279
1280 156, 149, 154, 164, 191, 191, 242, 164, 217, 217,
1281 158, 159, 159, 159, 159, 166, 166, 166, 166, 242,
1282 737, 214, 159, 159, 159, 159, 167, 167, 167, 167,
1283 214, 167, 215, 240, 243, 245, 215, 245, 240, 243,
1284 280, 274, 245, 274, 280, 243, 240, 285, 245, 309,
1285 322, 322, 370, 274, 738, 322, 215, 350, 323, 355,
1286 285, 323, 326, 350, 309, 370, 285, 285, 316, 316,
1287 358, 323, 316, 316, 316, 316, 326, 343, 343, 355,
1288 357, 382, 343, 529, 358, 357, 382, 350, 343, 357,
1289 372, 740, 529, 343, 357, 389, 372, 384, 372, 406,
1290
1291 343, 376, 376, 376, 406, 420, 450, 384, 453, 372,
1292 384, 384, 450, 372, 389, 409, 443, 384, 741, 443,
1293 742, 409, 453, 376, 420, 446, 409, 409, 474, 443,
1294 474, 446, 446, 477, 486, 583, 474, 477, 486, 474,
1295 474, 474, 474, 478, 583, 409, 478, 478, 478, 478,
1296 479, 501, 743, 479, 479, 479, 479, 480, 480, 480,
1297 480, 485, 503, 516, 485, 501, 514, 503, 516, 485,
1298 523, 558, 514, 523, 485, 627, 546, 558, 546, 562,
1299 485, 744, 562, 745, 485, 627, 523, 566, 523, 546,
1300 566, 566, 578, 546, 572, 572, 662, 566, 588, 572,
1301
1302 694, 613, 644, 746, 694, 572, 578, 588, 747, 748,
1303 572, 613, 662, 749, 613, 613, 644, 572, 659, 750,
1304 659, 613, 661, 661, 661, 661, 659, 682, 665, 659,
1305 659, 659, 659, 665, 681, 739, 707, 681, 665, 752,
1306 682, 753, 754, 755, 665, 756, 757, 682, 665, 707,
1307 758, 707, 759, 760, 739, 761, 762, 681, 751, 751,
1308 763, 764, 751, 765, 751, 766, 767, 768, 769, 770,
1309 771, 772, 751, 773, 751, 775, 776, 751, 777, 751,
1310 778, 779, 780, 781, 782, 783, 784, 785, 786, 787,
1311 788, 789, 790, 791, 794, 795, 797, 798, 799, 801,
1312
1313 802, 795, 801, 801, 803, 804, 805, 806, 808, 801,
1314 809, 810, 811, 814, 812, 815, 816, 817, 811, 818,
1315 819, 820, 821, 822, 823, 810, 812, 824, 825, 826,
1316 816, 811, 827, 828, 829, 830, 831, 832, 833, 834,
1317 835, 836, 837, 838, 839, 840, 842, 843, 844, 846,
1318 847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
1319 857, 858, 859, 860, 861, 862, 863, 853, 864, 865,
1320 866, 867, 868, 869, 870, 871, 872, 873, 874, 875,
1321 876, 877, 879, 880, 873, 881, 882, 883, 884, 885,
1322 886, 887, 888, 890, 870, 891, 892, 893, 894, 895,
1323
1324 896, 898, 899, 900, 901, 896, 902, 903, 904, 905,
1325 906, 887, 907, 908, 910, 911, 912, 914, 915, 916,
1326 917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
1327 927, 928, 929, 931, 932, 933, 934, 935, 936, 937,
1328 938, 939, 940, 941, 942, 940, 943, 940, 944, 945,
1329 946, 947, 948, 949, 950, 940, 951, 940, 952, 953,
1330 940, 954, 940, 955, 956, 957, 958, 959, 960, 961,
1331 958, 962, 963, 964, 965, 966, 967, 969, 970, 971,
1332 972, 969, 973, 974, 975, 976, 977, 978, 979, 980,
1333 981, 982, 983, 984, 985, 986, 987, 983, 988, 989,
1334
1335 990, 991, 992, 993, 994, 995, 996, 997, 998, 999,
1336 1000, 1003, 1004, 1005, 1006, 1007, 1009, 1010, 1011, 1013,
1337 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023,
1338 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034,
1339 1035, 1038, 1039, 1041, 1042, 1044, 1045, 1046, 1047, 1048,
1340 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058,
1341 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068,
1342 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078,
1343 1079, 1080, 1081, 1082, 1086, 1088, 1089, 1090, 1091, 1092,
1344 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1082, 1082,
1345
1346 1101, 1103, 1104, 1105, 1106, 1107, 1082, 1108, 1109, 1111,
1347 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1121, 1122,
1348 1123, 1124, 1125, 1128, 1129, 1131, 1132, 1133, 1134, 1135,
1349 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145,
1350 1146, 1147, 1148, 1149, 1150, 1151, 1152, 1153, 1154, 1155,
1351 1156, 1157, 1158, 1159, 1160, 1161, 1162, 1164, 1165, 1166,
1352 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176,
1353 1177, 1178, 1179, 1180, 1181, 1161, 1182, 1183, 1184, 1185,
1354 1186, 1187, 1188, 1189, 1190, 1191, 1192, 1193, 1194, 1195,
1355 1196, 1197, 1198, 1199, 1200, 1201, 1202, 1203, 1204, 1205,
1356
1357 1206, 1207, 1184, 1205, 1208, 1209, 1196, 1210, 1211, 1212,
1358 1213, 1214, 1215, 1216, 1217, 1219, 1220, 1222, 1223, 1224,
1359 1225, 1226, 1228, 1229, 1231, 1212, 1232, 1233, 1235, 1236,
1360 1237, 1238, 1239, 1240, 1241, 1242, 1243, 1244, 1245, 1246,
1361 1247, 1248, 1233, 1251, 1252, 1253, 1254, 1255, 1257, 1258,
1362 1255, 1259, 1260, 1261, 1262, 1263, 1264, 1260, 1265, 1266,
1363 1267, 1268, 1269, 1270, 1272, 1273, 1255, 1274, 1275, 1276,
1364 1276, 1277, 1278, 1279, 1281, 1282, 1283, 1276, 1284, 1286,
1365 1287, 1288, 1289, 1290, 1291, 1293, 1294, 1295, 1296, 1297,
1366 1298, 1302, 1303, 1304, 1305, 1306, 1308, 1309, 1310, 1311,
1367
1368 1314, 1315, 1316, 1317, 1319, 1320, 1321, 1322, 1323, 1324,
1369 1325, 1326, 1327, 1328, 1329, 1330, 1331, 1332, 1333, 1334,
1370 1335, 1336, 1337, 1338, 1339, 1340, 1341, 1342, 1343, 1344,
1371 1348, 1350, 1351, 1352, 1354, 1355, 1356, 1358, 1359, 1361,
1372 1362, 1363, 1358, 1359, 1364, 1365, 1367, 1368, 1369, 1370,
1373 1374, 1375, 1376, 1377, 1378, 1379, 1380, 1381, 1382, 1383,
1374 1384, 1385, 1386, 1387, 1388, 1389, 1390, 1391, 1392, 1393,
1375 1394, 1395, 1396, 1370, 1397, 1398, 1399, 1400, 1401, 1402,
1376 1403, 1404, 1405, 1406, 1410, 1411, 1413, 1414, 1415, 1418,
1377 1419, 1420, 1421, 1422, 1423, 1424, 1425, 1426, 1428, 1429,
1378
1379 1432, 1433, 1435, 1438, 1440, 1441, 1442, 1443, 1446, 1447,
1380 1448, 1449, 1450, 1451, 1452, 1453, 1454, 1442, 1455, 1456,
1381 1440, 1458, 1460, 1462, 1463, 1464, 1465, 1466, 1467, 1468,
1382 1470, 1471, 1472, 1473, 1474, 1475, 1476, 1477, 1478, 1479,
1383 1480, 1484, 1485, 1486, 1488, 1489, 1460, 1493, 1494, 1495,
1384 1496, 1497, 1499, 1500, 1501, 1502, 1503, 1504, 1505, 1488,
1385 1506, 1507, 1508, 1509, 1510, 1511, 1512, 1513, 1514, 1515,
1386 1516, 1517, 1518, 1519, 1521, 1522, 1524, 1525, 1528, 1529,
1387 1530, 1531, 1532, 1533, 1534, 1535, 1536, 1538, 1539, 1540,
1388 1541, 1544, 1545, 1546, 1547, 1548, 1549, 1550, 1551, 1552,
1389
1390 1553, 1554, 1555, 1556, 1557, 1558, 1559, 1560, 1561, 1562,
1391 1563, 1564, 1565, 1566, 1568, 1569, 1564, 1565, 1570, 1571,
1392 1572, 1573, 1574, 1578, 1579, 1580, 1582, 1583, 1584, 1585,
1393 1587, 1589, 1590, 1592, 1596, 1597, 1598, 1599, 1600, 1601,
1394 1603, 1604, 1605, 1606, 1607, 1610, 1611, 1598, 1612, 1617,
1395 1596, 1618, 1619, 1620, 1621, 1622, 1624, 1625, 1626, 1627,
1396 1628, 1629, 1630, 1631, 1633, 1635, 1638, 1639, 1641, 1642,
1397 1643, 1644, 1646, 1647, 1648, 1649, 1650, 1651, 1652, 1653,
1398 1654, 1655, 1656, 1657, 1658, 1659, 1660, 1661, 1662, 1664,
1399 1665, 1667, 1669, 1671, 1672, 1673, 1674, 1675, 1676, 1677,
1400
1401 1679, 1681, 1683, 1684, 1685, 1686, 1687, 1690, 1691, 1692,
1402 1694, 1695, 1696, 1697, 1698, 1699, 1700, 1702, 1704, 1705,
1403 1706, 1707, 1709, 1710, 1711, 1713, 1714, 1716, 1719, 1720,
1404 1721, 1722, 1724, 1727, 1728, 1729, 1730, 1731, 1732, 1733,
1405 1734, 1735, 1736, 1737, 1740, 1728, 1741, 1743, 1744, 1745,
1406 1746, 1747, 1748, 1749, 1750, 1751, 1752, 1753, 1754, 1756,
1407 1757, 1759, 1760, 1761, 1762, 1763, 1764, 1765, 1766, 1767,
1408 1768, 1769, 1770, 1771, 1772, 1773, 1774, 1775, 1776, 1777,
1409 1778, 1779, 1780, 1782, 1783, 1786, 1787, 1788, 1789, 1790,
1410 1791, 1796, 1798, 1799, 1800, 1801, 1803, 1804, 1805, 1807,
1411
1412 1808, 1810, 1811, 1812, 1813, 1814, 1815, 1818, 1819, 1820,
1413 1821, 1822, 1823, 1824, 1826, 1827, 1828, 1829, 1830, 1831,
1414 1832, 1834, 1835, 1836, 1840, 1841, 1842, 1843, 1844, 1845,
1415 1846, 1847, 1848, 1849, 1850, 1851, 1852, 1854, 1855, 1856,
1416 1858, 1860, 1861, 1862, 1863, 1864, 1865, 1866, 1867, 1868,
1417 1869, 1870, 1871, 1872, 1873, 1874, 1875, 1878, 1880, 1881,
1418 1882, 1883, 1885, 1887, 1888, 1889, 1892, 1895, 1896, 1897,
1419 1898, 1900, 1903, 1905, 1907, 1908, 1909, 1910, 1912, 1915,
1420 1917, 1918, 1919, 1920, 1923, 1924, 1925, 1926, 1927, 1928,
1421 1930, 1931, 1934, 1936, 1937, 1938, 1939, 1940, 1941, 1942,
1422
1423 1943, 1944, 1945, 1946, 1947, 1948, 1951, 1953, 1956, 1960,
1424 1961, 1962, 1963, 1967, 1969, 1973, 1976, 1977, 1978, 1979,
1425 1981, 1982, 1983, 1985, 1986, 1987, 1988, 1989, 1990, 1991,
1426 1994, 1996, 1998, 2002, 2004, 2008, 2009, 2010, 2012, 2013,
1427 2014, 2018, 2020, 2022, 2025, 2028, 2029, 2030, 2032, 2036,
1428 2037, 2038, 2039, 2041, 2042, 2044, 2045, 2048, 2052, 2052,
1429 2052, 2053, 2053, 2054, 2054, 2054, 2055, 2055, 2055, 2056,
1430 731, 2056, 2057, 2057, 2057, 2058, 2058, 2058, 2059, 2059,
1431 2059, 2060, 2060, 2060, 2061, 2061, 2061, 730, 729, 728,
1432 727, 726, 723, 720, 719, 718, 717, 716, 715, 714,
1433
1434 713, 712, 710, 709, 708, 706, 704, 703, 702, 701,
1435 700, 699, 697, 696, 695, 693, 692, 691, 690, 689,
1436 688, 687, 686, 685, 684, 680, 679, 677, 676, 675,
1437 674, 673, 672, 671, 670, 668, 667, 666, 663, 660,
1438 658, 657, 656, 655, 653, 652, 651, 650, 649, 645,
1439 643, 642, 641, 640, 639, 638, 637, 636, 635, 634,
1440 633, 632, 630, 629, 628, 626, 625, 624, 623, 622,
1441 621, 620, 618, 617, 616, 614, 610, 609, 608, 607,
1442 606, 604, 603, 602, 601, 600, 598, 597, 594, 593,
1443 592, 591, 590, 589, 587, 586, 585, 584, 582, 581,
1444
1445 580, 579, 577, 576, 575, 570, 569, 568, 567, 565,
1446 564, 563, 560, 559, 557, 553, 552, 551, 550, 549,
1447 548, 547, 545, 544, 543, 542, 541, 540, 539, 537,
1448 536, 535, 534, 533, 532, 531, 530, 527, 526, 525,
1449 522, 518, 517, 515, 513, 512, 511, 510, 509, 508,
1450 507, 506, 505, 504, 502, 499, 498, 497, 495, 494,
1451 492, 491, 490, 489, 488, 487, 484, 483, 482, 476,
1452 475, 472, 471, 470, 469, 467, 466, 465, 464, 463,
1453 461, 460, 459, 458, 457, 455, 454, 452, 451, 449,
1454 448, 447, 445, 444, 442, 441, 440, 439, 438, 437,
1455
1456 436, 435, 433, 432, 430, 429, 428, 425, 424, 423,
1457 422, 421, 417, 415, 414, 413, 412, 411, 410, 408,
1458 407, 404, 403, 402, 401, 400, 399, 398, 397, 396,
1459 395, 394, 393, 392, 391, 388, 387, 386, 385, 383,
1460 381, 380, 379, 378, 377, 375, 374, 373, 371, 368,
1461 367, 365, 364, 362, 359, 356, 354, 353, 352, 351,
1462 349, 348, 347, 346, 345, 344, 341, 340, 339, 338,
1463 335, 334, 333, 332, 331, 330, 327, 325, 324, 321,
1464 320, 319, 318, 317, 314, 313, 312, 311, 310, 308,
1465 307, 306, 305, 303, 302, 301, 300, 299, 298, 297,
1466
1467 296, 295, 294, 293, 292, 291, 290, 289, 288, 287,
1468 286, 284, 283, 282, 281, 279, 278, 277, 276, 275,
1469 273, 272, 271, 270, 269, 268, 267, 266, 264, 263,
1470 262, 261, 260, 259, 258, 257, 256, 255, 254, 253,
1471 252, 251, 250, 249, 248, 247, 246, 244, 241, 239,
1472 238, 237, 236, 235, 234, 233, 232, 231, 230, 229,
1473 227, 226, 225, 224, 223, 222, 221, 220, 219, 218,
1474 216, 213, 212, 211, 210, 209, 208, 207, 206, 205,
1475 204, 203, 202, 201, 200, 199, 198, 196, 195, 194,
1476 193, 192, 190, 189, 188, 187, 186, 185, 184, 182,
1477
1478 181, 180, 179, 178, 177, 176, 175, 174, 173, 172,
1479 171, 170, 169, 168, 163, 161, 160, 153, 152, 150,
1480 148, 147, 145, 144, 143, 142, 141, 140, 139, 138,
1481 136, 135, 134, 133, 132, 128, 127, 125, 123, 122,
1482 121, 120, 119, 118, 117, 115, 114, 113, 112, 108,
1483 107, 106, 100, 99, 97, 96, 95, 93, 91, 90,
1484 89, 86, 85, 84, 83, 82, 81, 79, 78, 76,
1485 75, 71, 70, 68, 63, 62, 61, 58, 54, 53,
1486 49, 36, 27, 10, 3, 2051, 2051, 2051, 2051, 2051,
1487 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
1488
1489 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
1490 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
1491 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051, 2051,
1492 2051, 2051, 2051, 2051, 2051, 2051
1493 } ;
1494
1495 static yy_state_type yy_last_accepting_state;
1496 static char *yy_last_accepting_cpos;
1497
1498 /* The intent behind this definition is that it'll catch
1499 * any uses of REJECT which flex missed.
1500 */
1501 #define REJECT reject_used_but_not_detected
1502 #define yymore() yymore_used_but_not_detected
1503 #define YY_MORE_ADJ 0
1504 char *yytext;
1505 # line 1 "grammar.l"
1506 # line 2 "grammar.l"
1507
1508
1509 #line 2 "/RW/esprit/users/sander/src/PARSEGEN/scan.skel"
1510
1511 /*--------------------------------------------------------------------*/
1512 /* A flex scanner specification made by parsegen */
1513 /*--------------------------------------------------------------------*/
1514
1515 #ifndef lint
1516 static char *scanskel_id_string="$Id: scan.skel,v 1.6 1994/04/13 10:23:44 sander Exp sander $";
1517 #endif
1518
1519
1520
1521
1522 #line 32000 "/RW/esprit/users/sander/src/PARSEGEN/parse.skel"
1523 typedef struct stree_node *syntaxtree;
1524 #undef yysyntaxtree
1525 #define yysyntaxtree syntaxtree
1526
1527
1528 #line 580 "grammar.pgs"
1529
1530 #define BISONGEN
1531 #undef YACCGEN
1532
1533 #include <stdio.h>
1534
1535 #include <string.h>
1536
1537 #include "y.tab.h"
1538
1539
1540 #line 24 "grammar.pgs"
1541
1542 #ifndef lint
1543 static char *id_string="$Id: grammar.pgs,v 3.17 1995/02/08 18:35:02 sander Exp $";
1544 #endif
1545
1546 /*
1547 * Copyright (C) 1993-2005 Saarland University
1548 *
1549 * This program and documentation is free software; you can redistribute
1550 * it under the terms of the GNU General Public License as published by
1551 * the Free Software Foundation; either version 2 of the License, or
1552 * (at your option) any later version.
1553 *
1554 * This program is distributed in the hope that it will be useful,
1555 * but WITHOUT ANY WARRANTY; without even the implied warranty of
1556 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1557 * GNU General Public License for more details.
1558 *
1559 * You should have received a copy of the GNU General Public License
1560 * along with this program; if not, write to the Free Software
1561 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
1562 *
1563 * The software is available per anonymous ftp at ftp.cs.uni-sb.de.
1564 * Contact sander@cs.uni-sb.de for additional information.
1565 */
1566
1567
1568 /* $Log: grammar.pgs,v $
1569 # Revision 3.17 1995/02/08 18:35:02 sander
1570 # Small bug for K&R C corrected.
1571 #
1572 # Revision 3.16 1995/02/08 11:11:14 sander
1573 # Distribution version 1.3.
1574 #
1575 # Revision 3.15 1994/12/23 18:12:45 sander
1576 # Manhatten layout added.
1577 #
1578 # Revision 3.14 1994/11/23 14:50:47 sander
1579 # Hash table to 22079 expanded. Better string hash function implemented.
1580 #
1581 # Revision 3.13 1994/08/08 16:01:47 sander
1582 # Attributes xraster, xlraster, yraster added.
1583 #
1584 # Revision 3.12 1994/08/05 12:13:25 sander
1585 # Treelayout added. Attributes "treefactor" and "spreadlevel" added.
1586 # Scaling as abbreviation of "stretch/shrink" added.
1587 #
1588 # Revision 3.11 1994/08/04 08:58:20 sander
1589 # Attributes crossing_weight and crossing_optimization added.
1590 #
1591 # Revision 3.10 1994/08/03 13:58:44 sander
1592 # Horizontal order mechanism changed.
1593 # Attribute horizontal_order for edges added.
1594 #
1595 # Revision 3.9 1994/06/07 14:09:59 sander
1596 # Splines implemented.
1597 # HP-UX, Linux, AIX, Sun-Os, IRIX compatibility tested.
1598 # The tool is now ready to be distributed.
1599 #
1600 # Revision 3.8 1994/05/17 16:35:59 sander
1601 # attribute node_align added to allow nodes to be centered in the levels.
1602 #
1603 # Revision 3.7 1994/05/16 08:56:03 sander
1604 # shape attribute (boxes, rhombs, ellipses, triangles) added.
1605 #
1606 # Revision 3.6 1994/05/05 08:20:30 sander
1607 # Algorithm late labels added: If labels are inserted
1608 # after partitioning, this may yield a better layout.
1609 #
1610 # Revision 3.5 1994/04/27 16:05:19 sander
1611 # attributes of graph nodes adapted to the of normal nodes.
1612 #
1613 # Revision 3.4 1994/03/04 19:11:24 sander
1614 # Specification of levels per node added.
1615 # X11 geometry behaviour (option -geometry) changed such
1616 # that the window is now opened automatically.
1617 #
1618 # Revision 3.3 1994/03/03 15:35:39 sander
1619 # Edge line style `invisible' added.
1620 #
1621 # Revision 3.2 1994/03/02 11:48:54 sander
1622 # Layoutalgoritms mindepthslow, maxdepthslow, minindegree, ... mandegree
1623 # added.
1624 # Anchors and nearedges are not anymore allowed to be intermixed.
1625 # Escapes in strings are now allowed.
1626 #
1627 # Revision 3.1 1994/03/01 10:59:55 sander
1628 # Copyright and Gnu Licence message added.
1629 # Problem with "nearedges: no" and "selfloops" solved.
1630 #
1631 # Revision 2.4 1994/02/13 17:25:54 sander
1632 # attribute 'finetuning' added.
1633 #
1634 # Revision 2.3 1994/01/21 19:33:46 sander
1635 # VCG Version tested on Silicon Graphics IRIX, IBM R6000 AIX and Sun 3/60.
1636 # Option handling improved. Option -grabinputfocus installed.
1637 # X11 Font selection scheme implemented. The user can now select a font
1638 # during installation.
1639 # Sun K&R C (a nonansi compiler) tested. Some portabitility problems solved.
1640 #
1641 # Revision 2.1 1993/12/08 21:19:21 sander
1642 # Reasonable fast and stable version
1643 #
1644 */
1645
1646
1647 #include <stdio.h>
1648 #include <string.h>
1649 #include <ctype.h>
1650 #include <math.h>
1651 #include "globals.h"
1652 #include "main.h"
1653 #include "options.h"
1654
1655 #ifndef YY_CHAR
1656 #define YY_CHAR char
1657 extern YY_CHAR *yytext;
1658 #endif
1659
1660 /* the following is added for flex 2.4.6 */
1661
1662 #ifndef YY_MALLOC_DECL
1663 #define YY_MALLOC_DECL
1664 #include <stdlib.h>
1665 #endif
1666
1667 #undef YYVALGLOBAL
1668
1669 extern yysyntaxtree Syntax_Tree;
1670
1671 #define exit(a) gs_exit(a)
1672 extern void gs_exit _PP((int x));
1673
1674 void line_directive _PP((char *text));
1675 void escape_transl _PP((char *text));
1676 char *my_itoa _PP((int x));
1677 long long_atoi _PP((char *c));
1678 void syntaxerror _PP((int line,int pos,char *mesge));
1679 void warning _PP((int line,int pos,char *mesge));
1680
1681 #ifndef yysyntaxerror
1682 #define yysyntaxerror(l,p,m) syntaxerror(l,p,m)
1683 #endif
1684
1685 #ifndef yyerror
1686 #define yyerror(x) { \
1687 SPRINTF(message,"unexpected %s \"%s\" (%s)", \
1688 ((yychar<0)?"(?)":yytokname[YYTRANSLATE(yychar)]), \
1689 (strlen(yytext)<48?yytext:"(?)"),x); \
1690 syntaxerror(line_nr,pos_nr,message);\
1691 }
1692 #endif
1693
1694 /* Memory Management */
1695
1696 #ifdef MEMBLOCKSIZE
1697 #define PARSEBLOCKSIZE (MEMBLOCKSIZE/sizeof(struct stree_node)+1)
1698 #endif
1699
1700 /* Hash Table */
1701
1702 #define hash_size 22079
1703
1704
1705
1706
1707 #line 580 "grammar.pgs"
1708
1709 #ifdef ANSI_C
1710 char * ParseMalloc(int x);
1711 #else
1712 char * ParseMalloc();
1713 #endif
1714 #undef PARSEGENSTD
1715 #define PARSEGENSTD
1716
1717
1718 #line 1 "/RW/esprit/users/sander/src/PARSEGEN/stdth.skel"
1719
1720 #ifndef STDHASH
1721 #define STDHASH
1722
1723 /* $Id: stdth.skel,v 1.3 1994/01/07 19:35:32 sander Exp sander $ */
1724
1725 #undef HASHGENSTD
1726 #define HASHGENSTD
1727
1728
1729 /*--------------------------------------------------------------------*/
1730 /* Standard Hash Table Routines */
1731 /*--------------------------------------------------------------------*/
1732
1733 /* Global Variables */
1734 /*------------------*/
1735
1736 extern long table_size;
1737
1738 #ifndef PARSEGENSTD
1739
1740 #ifndef ALIGN
1741 #define ALIGN 8
1742 #define IALIGN (ALIGN-1)
1743 #endif
1744 #ifndef STRINGBLOCKSIZE
1745 #define STRINGBLOCKSIZE 5000
1746 #endif
1747
1748 #ifdef ANSI_C
1749 char *StringHeapMalloc(int x);
1750 void StringHeapFree(void);
1751 else
1752 char *StringHeapMalloc();
1753 void StringHeapFree();
1754 #endif
1755
1756 #endif /* PARSEGENSTD */
1757
1758 #ifndef hash_size
1759 #define hash_size 211
1760 #endif
1761 #ifndef hashtable_size
1762 #define hashtable_size 10000L
1763 #endif
1764
1765
1766 #ifdef ANSI_C
1767 void FreeHash(void);
1768 long HashInsert(register char *s);
1769 long HashTableSize(void);
1770 char *Decode(long x);
1771 #else
1772 void FreeHash();
1773 long HashInsert();
1774 long HashTableSize();
1775 char *Decode();
1776 #endif /* ANSI_C */
1777
1778 #endif /* STDHASH */
1779
1780 /*-- end of standard hash table interface ----------------------------*/
1781
1782
1783
1784 #line 12 "/RW/esprit/users/sander/src/PARSEGEN/scan.skel"
1785
1786
1787 /*--------------------------------------------------------------------*/
1788
1789 /* Global Variables */
1790 /*------------------*/
1791
1792 int line_nr;
1793 int pos_nr;
1794 extern int nr_errors; /* from Scanner */
1795
1796 /* Local Variables */
1797 /*-----------------*/
1798
1799 static char message[256];
1800
1801 #define SKIPYYTEXT { char *c; c = yytext; while (*c) { \
1802 if (*c == '\n') { pos_nr = 1; line_nr++; } \
1803 else pos_nr++; c++; }}
1804
1805
1806 /*--------------------------------------------------------------------*/
1807 /* Character classes */
1808 /*--------------------------------------------------------------------*/
1809
1810
1811 #line 188 "grammar.pgs"
1812 # line 328 "grammar.l"
1813
1814
1815
1816 #line 44 "/RW/esprit/users/sander/src/PARSEGEN/scan.skel"
1817
1818 #ifndef yywrap
1819 /* Changed for flex 2.4.6 (static removed) */
yywrap()1820 int yywrap() { return (1); }
1821 #endif
1822
1823 #ifndef RETURN
1824 #ifndef YYLTYPE
1825 #define RETURN(x) { pos_nr += strlen(yytext); \
1826 return(x); }
1827 #else
1828 extern YYLTYPE yylloc;
1829 #define RETURN(x) { pos_nr += strlen(yytext); \
1830 yylloc.first_line = yylloc.last_line = line_nr; \
1831 yylloc.first_column = pos_nr-strlen(yytext); \
1832 yylloc.last_column = pos_nr; \
1833 return(x); }
1834 #endif
1835 #endif
1836
1837 #ifndef yysyntaxerror
1838 #define yysyntaxerror(l,p,m) {(void)printf("Line %d Pos %d: %s !\n",l,p,m);\
1839 nr_errors++;}
1840 #endif
1841
1842 /*--------------------------------------------------------------------*/
1843 /* Token rules */
1844 /*--------------------------------------------------------------------*/
1845
1846
1847 #line 203 "grammar.pgs"
1848
1849 /* Macros after this point can all be overridden by user definitions in
1850 * section 1.
1851 */
1852
1853 #ifdef YY_MALLOC_DECL
1854 YY_MALLOC_DECL
1855 #else
1856 #if __STDC__
1857 #ifndef __cplusplus
1858 #include <stdlib.h>
1859 #endif
1860 #else
1861 /* Just try to get by without declaring the routines. This will fail
1862 * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int)
1863 * or sizeof(void*) != sizeof(int).
1864 */
1865 #endif
1866 #endif
1867
1868 /* Amount of stuff to slurp up with each read. */
1869 #ifndef YY_READ_BUF_SIZE
1870 #define YY_READ_BUF_SIZE 8192
1871 #endif
1872
1873 /* Copy whatever the last rule matched to the standard output. */
1874
1875 #ifndef ECHO
1876 /* This used to be an fputs(), but since the string might contain NUL's,
1877 * we now use fwrite().
1878 */
1879 #define ECHO (void) fwrite( yytext, yyleng, 1, yyout )
1880 #endif
1881
1882 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
1883 * is returned in "result".
1884 */
1885 #ifndef YY_INPUT
1886 #define YY_INPUT(buf,result,max_size) \
1887 if ( yy_current_buffer->yy_is_interactive ) \
1888 { \
1889 int c = getc( yyin ); \
1890 result = c == EOF ? 0 : 1; \
1891 buf[0] = (char) c; \
1892 } \
1893 else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
1894 && ferror( yyin ) ) \
1895 YY_FATAL_ERROR( "input in flex scanner failed" );
1896 #endif
1897
1898 /* No semi-colon after return; correct usage is to write "yyterminate();" -
1899 * we don't want an extra ';' after the "return" because that will cause
1900 * some compilers to complain about unreachable statements.
1901 */
1902 #ifndef yyterminate
1903 #define yyterminate() return YY_NULL
1904 #endif
1905
1906 /* Number of entries by which start-condition stack grows. */
1907 #ifndef YY_START_STACK_INCR
1908 #define YY_START_STACK_INCR 25
1909 #endif
1910
1911 /* Report a fatal error. */
1912 #ifndef YY_FATAL_ERROR
1913 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
1914 #endif
1915
1916 /* Default declaration of generated scanner - a define so the user can
1917 * easily add parameters.
1918 */
1919 #ifndef YY_DECL
1920 #define YY_DECL int yylex YY_PROTO(( void ))
1921 #endif
1922
1923 /* Code executed at the beginning of each rule, after yytext and yyleng
1924 * have been set up.
1925 */
1926 #ifndef YY_USER_ACTION
1927 #define YY_USER_ACTION
1928 #endif
1929
1930 /* Code executed at the end of each rule. */
1931 #ifndef YY_BREAK
1932 #define YY_BREAK break;
1933 #endif
1934
1935 YY_DECL
1936 {
1937 register yy_state_type yy_current_state;
1938 register char *yy_cp, *yy_bp;
1939 register int yy_act;
1940
1941 # line 365 "grammar.l"
1942
1943
1944
1945
1946 if ( yy_init )
1947 {
1948 #ifdef YY_USER_INIT
1949 YY_USER_INIT;
1950 #endif
1951
1952 if ( ! yy_start )
1953 yy_start = 1; /* first start state */
1954
1955 if ( ! yyin )
1956 yyin = stdin;
1957
1958 if ( ! yyout )
1959 yyout = stdout;
1960
1961 if ( yy_current_buffer )
1962 yy_init_buffer( yy_current_buffer, yyin );
1963 else
1964 yy_current_buffer =
1965 yy_create_buffer( yyin, YY_BUF_SIZE );
1966
1967 yy_load_buffer_state();
1968
1969 yy_init = 0;
1970 }
1971
1972 while ( 1 ) /* loops until end-of-file is reached */
1973 {
1974 yy_cp = yy_c_buf_p;
1975
1976 /* Support of yytext. */
1977 *yy_cp = yy_hold_char;
1978
1979 /* yy_bp points to the position in yy_ch_buf of the start of
1980 * the current run.
1981 */
1982 yy_bp = yy_cp;
1983
1984 yy_current_state = yy_start;
1985 yy_match:
1986 do
1987 {
1988 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
1989 if ( yy_accept[yy_current_state] )
1990 {
1991 yy_last_accepting_state = yy_current_state;
1992 yy_last_accepting_cpos = yy_cp;
1993 }
1994 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1995 {
1996 yy_current_state = (int) yy_def[yy_current_state];
1997 if ( yy_current_state >= 2052 )
1998 yy_c = yy_meta[(unsigned int) yy_c];
1999 }
2000 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2001 ++yy_cp;
2002 }
2003 while ( yy_base[yy_current_state] != 2186 );
2004
2005 yy_find_action:
2006 yy_act = yy_accept[yy_current_state];
2007
2008 YY_DO_BEFORE_ACTION;
2009
2010
2011 do_action: /* This label is used only to access EOF actions. */
2012
2013
2014 switch ( yy_act )
2015 { /* beginning of action switch */
2016 case 0: /* must back up */
2017 /* undo the effects of YY_DO_BEFORE_ACTION */
2018 *yy_cp = yy_hold_char;
2019 yy_cp = yy_last_accepting_cpos;
2020 yy_current_state = yy_last_accepting_state;
2021 goto yy_find_action;
2022
2023 case 1:
2024 YY_USER_ACTION
2025 # line 368 "grammar.l"
2026 {
2027 #line 209 "grammar.pgs"
2028 RETURN(LEXWORD_ABOVE); }
2029 YY_BREAK
2030 case 2:
2031 YY_USER_ACTION
2032 # line 371 "grammar.l"
2033 {
2034 #line 210 "grammar.pgs"
2035 RETURN(LEXWORD_ANCHORPOINTS); }
2036 YY_BREAK
2037 case 3:
2038 YY_USER_ACTION
2039 # line 374 "grammar.l"
2040 {
2041 #line 211 "grammar.pgs"
2042 RETURN(LEXWORD_ANCHORPOINTS); }
2043 YY_BREAK
2044 case 4:
2045 YY_USER_ACTION
2046 # line 377 "grammar.l"
2047 {
2048 #line 212 "grammar.pgs"
2049 RETURN(LEXWORD_ANCHOR); }
2050 YY_BREAK
2051 case 5:
2052 YY_USER_ACTION
2053 # line 380 "grammar.l"
2054 {
2055 #line 213 "grammar.pgs"
2056 RETURN(LEXWORD_AQUAMARINE); }
2057 YY_BREAK
2058 case 6:
2059 YY_USER_ACTION
2060 # line 383 "grammar.l"
2061 {
2062 #line 214 "grammar.pgs"
2063 RETURN(LEXWORD_AROUND); }
2064 YY_BREAK
2065 case 7:
2066 YY_USER_ACTION
2067 # line 386 "grammar.l"
2068 {
2069 #line 215 "grammar.pgs"
2070 RETURN(LEXWORD_ARROWMODE); }
2071 YY_BREAK
2072 case 8:
2073 YY_USER_ACTION
2074 # line 389 "grammar.l"
2075 {
2076 #line 216 "grammar.pgs"
2077 RETURN(LEXWORD_ARROWMODE); }
2078 YY_BREAK
2079 case 9:
2080 YY_USER_ACTION
2081 # line 392 "grammar.l"
2082 {
2083 #line 217 "grammar.pgs"
2084 RETURN(LEXWORD_ARROWHEIGHT); }
2085 YY_BREAK
2086 case 10:
2087 YY_USER_ACTION
2088 # line 395 "grammar.l"
2089 {
2090 #line 218 "grammar.pgs"
2091 RETURN(LEXWORD_ARROWHEIGHT); }
2092 YY_BREAK
2093 case 11:
2094 YY_USER_ACTION
2095 # line 398 "grammar.l"
2096 {
2097 #line 219 "grammar.pgs"
2098 RETURN(LEXWORD_ARROWWIDTH); }
2099 YY_BREAK
2100 case 12:
2101 YY_USER_ACTION
2102 # line 401 "grammar.l"
2103 {
2104 #line 220 "grammar.pgs"
2105 RETURN(LEXWORD_ARROWWIDTH); }
2106 YY_BREAK
2107 case 13:
2108 YY_USER_ACTION
2109 # line 404 "grammar.l"
2110 {
2111 #line 221 "grammar.pgs"
2112 RETURN(LEXWORD_ARROWCOLOR); }
2113 YY_BREAK
2114 case 14:
2115 YY_USER_ACTION
2116 # line 407 "grammar.l"
2117 {
2118 #line 222 "grammar.pgs"
2119 RETURN(LEXWORD_ARROWCOLOR); }
2120 YY_BREAK
2121 case 15:
2122 YY_USER_ACTION
2123 # line 410 "grammar.l"
2124 {
2125 #line 223 "grammar.pgs"
2126 RETURN(LEXWORD_ARROWSTYLE); }
2127 YY_BREAK
2128 case 16:
2129 YY_USER_ACTION
2130 # line 413 "grammar.l"
2131 {
2132 #line 224 "grammar.pgs"
2133 RETURN(LEXWORD_ARROWSTYLE); }
2134 YY_BREAK
2135 case 17:
2136 YY_USER_ACTION
2137 # line 416 "grammar.l"
2138 {
2139 #line 225 "grammar.pgs"
2140 RETURN(LEXWORD_ARROWSIZE); }
2141 YY_BREAK
2142 case 18:
2143 YY_USER_ACTION
2144 # line 419 "grammar.l"
2145 {
2146 #line 226 "grammar.pgs"
2147 RETURN(LEXWORD_ARROWSIZE); }
2148 YY_BREAK
2149 case 19:
2150 YY_USER_ACTION
2151 # line 422 "grammar.l"
2152 {
2153 #line 227 "grammar.pgs"
2154 RETURN(LEXWORD_BARROWCOLOR); }
2155 YY_BREAK
2156 case 20:
2157 YY_USER_ACTION
2158 # line 425 "grammar.l"
2159 {
2160 #line 228 "grammar.pgs"
2161 RETURN(LEXWORD_BARROWCOLOR); }
2162 YY_BREAK
2163 case 21:
2164 YY_USER_ACTION
2165 # line 428 "grammar.l"
2166 {
2167 #line 229 "grammar.pgs"
2168 RETURN(LEXWORD_BARROWCOLOR); }
2169 YY_BREAK
2170 case 22:
2171 YY_USER_ACTION
2172 # line 431 "grammar.l"
2173 {
2174 #line 230 "grammar.pgs"
2175 RETURN(LEXWORD_BARROWSTYLE); }
2176 YY_BREAK
2177 case 23:
2178 YY_USER_ACTION
2179 # line 434 "grammar.l"
2180 {
2181 #line 231 "grammar.pgs"
2182 RETURN(LEXWORD_BARROWSTYLE); }
2183 YY_BREAK
2184 case 24:
2185 YY_USER_ACTION
2186 # line 437 "grammar.l"
2187 {
2188 #line 232 "grammar.pgs"
2189 RETURN(LEXWORD_BARROWSTYLE); }
2190 YY_BREAK
2191 case 25:
2192 YY_USER_ACTION
2193 # line 440 "grammar.l"
2194 {
2195 #line 233 "grammar.pgs"
2196 RETURN(LEXWORD_BARROWSIZE); }
2197 YY_BREAK
2198 case 26:
2199 YY_USER_ACTION
2200 # line 443 "grammar.l"
2201 {
2202 #line 234 "grammar.pgs"
2203 RETURN(LEXWORD_BARROWSIZE); }
2204 YY_BREAK
2205 case 27:
2206 YY_USER_ACTION
2207 # line 446 "grammar.l"
2208 {
2209 #line 235 "grammar.pgs"
2210 RETURN(LEXWORD_BARROWSIZE); }
2211 YY_BREAK
2212 case 28:
2213 YY_USER_ACTION
2214 # line 449 "grammar.l"
2215 {
2216 #line 236 "grammar.pgs"
2217 RETURN(LEXWORD_BACKEDGE); }
2218 YY_BREAK
2219 case 29:
2220 YY_USER_ACTION
2221 # line 452 "grammar.l"
2222 {
2223 #line 237 "grammar.pgs"
2224 RETURN(LEXWORD_BACKEDGE); }
2225 YY_BREAK
2226 case 30:
2227 YY_USER_ACTION
2228 # line 455 "grammar.l"
2229 {
2230 #line 238 "grammar.pgs"
2231 RETURN(LEXWORD_BARYCENTER); }
2232 YY_BREAK
2233 case 31:
2234 YY_USER_ACTION
2235 # line 458 "grammar.l"
2236 {
2237 #line 239 "grammar.pgs"
2238 RETURN(LEXWORD_BARYCENTER); }
2239 YY_BREAK
2240 case 32:
2241 YY_USER_ACTION
2242 # line 461 "grammar.l"
2243 {
2244 #line 240 "grammar.pgs"
2245 RETURN(LEXWORD_BARY); }
2246 YY_BREAK
2247 case 33:
2248 YY_USER_ACTION
2249 # line 464 "grammar.l"
2250 {
2251 #line 241 "grammar.pgs"
2252 RETURN(LEXWORD_BARYMEDIAN); }
2253 YY_BREAK
2254 case 34:
2255 YY_USER_ACTION
2256 # line 467 "grammar.l"
2257 {
2258 #line 242 "grammar.pgs"
2259 RETURN(LEXWORD_BEHIND); }
2260 YY_BREAK
2261 case 35:
2262 YY_USER_ACTION
2263 # line 470 "grammar.l"
2264 {
2265 #line 243 "grammar.pgs"
2266 RETURN(LEXWORD_BELOW); }
2267 YY_BREAK
2268 case 36:
2269 YY_USER_ACTION
2270 # line 473 "grammar.l"
2271 {
2272 #line 244 "grammar.pgs"
2273 RETURN(LEXWORD_BLACK); }
2274 YY_BREAK
2275 case 37:
2276 YY_USER_ACTION
2277 # line 476 "grammar.l"
2278 {
2279 #line 245 "grammar.pgs"
2280 RETURN(LEXWORD_BLUE); }
2281 YY_BREAK
2282 case 38:
2283 YY_USER_ACTION
2284 # line 479 "grammar.l"
2285 {
2286 #line 246 "grammar.pgs"
2287 RETURN(LEXWORD_BMAX); }
2288 YY_BREAK
2289 case 39:
2290 YY_USER_ACTION
2291 # line 482 "grammar.l"
2292 {
2293 #line 247 "grammar.pgs"
2294 RETURN(LEXWORD_BORDERCOLOR); }
2295 YY_BREAK
2296 case 40:
2297 YY_USER_ACTION
2298 # line 485 "grammar.l"
2299 {
2300 #line 248 "grammar.pgs"
2301 RETURN(LEXWORD_BORDERCOLOR); }
2302 YY_BREAK
2303 case 41:
2304 YY_USER_ACTION
2305 # line 488 "grammar.l"
2306 {
2307 #line 249 "grammar.pgs"
2308 RETURN(LEXWORD_BORDERWIDTH); }
2309 YY_BREAK
2310 case 42:
2311 YY_USER_ACTION
2312 # line 491 "grammar.l"
2313 {
2314 #line 250 "grammar.pgs"
2315 RETURN(LEXWORD_BORDERWIDTH); }
2316 YY_BREAK
2317 case 43:
2318 YY_USER_ACTION
2319 # line 494 "grammar.l"
2320 {
2321 #line 251 "grammar.pgs"
2322 RETURN(LEXWORD_BOTTOM_MARGIN); }
2323 YY_BREAK
2324 case 44:
2325 YY_USER_ACTION
2326 # line 497 "grammar.l"
2327 {
2328 #line 252 "grammar.pgs"
2329 RETURN(LEXWORD_BOTTOM_MARGIN); }
2330 YY_BREAK
2331 case 45:
2332 YY_USER_ACTION
2333 # line 500 "grammar.l"
2334 {
2335 #line 253 "grammar.pgs"
2336 RETURN(LEXWORD_BOTTOM_TO_TOP); }
2337 YY_BREAK
2338 case 46:
2339 YY_USER_ACTION
2340 # line 503 "grammar.l"
2341 {
2342 #line 254 "grammar.pgs"
2343 RETURN(LEXWORD_BOTTOM_TO_TOP); }
2344 YY_BREAK
2345 case 47:
2346 YY_USER_ACTION
2347 # line 506 "grammar.l"
2348 {
2349 #line 255 "grammar.pgs"
2350 RETURN(LEXWORD_BOTTOM); }
2351 YY_BREAK
2352 case 48:
2353 YY_USER_ACTION
2354 # line 509 "grammar.l"
2355 {
2356 #line 256 "grammar.pgs"
2357 RETURN(LEXWORD_BOX); }
2358 YY_BREAK
2359 case 49:
2360 YY_USER_ACTION
2361 # line 512 "grammar.l"
2362 {
2363 #line 257 "grammar.pgs"
2364 RETURN(LEXWORD_BENTNEAREDGE); }
2365 YY_BREAK
2366 case 50:
2367 YY_USER_ACTION
2368 # line 515 "grammar.l"
2369 {
2370 #line 258 "grammar.pgs"
2371 RETURN(LEXWORD_BENTNEAREDGE); }
2372 YY_BREAK
2373 case 51:
2374 YY_USER_ACTION
2375 # line 518 "grammar.l"
2376 {
2377 #line 259 "grammar.pgs"
2378 RETURN(LEXWORD_BENTNEAREDGE); }
2379 YY_BREAK
2380 case 52:
2381 YY_USER_ACTION
2382 # line 521 "grammar.l"
2383 {
2384 #line 260 "grammar.pgs"
2385 RETURN(LEXWORD_CENTER); }
2386 YY_BREAK
2387 case 53:
2388 YY_USER_ACTION
2389 # line 524 "grammar.l"
2390 {
2391 #line 261 "grammar.pgs"
2392 RETURN(LEXWORD_CFISH); }
2393 YY_BREAK
2394 case 54:
2395 YY_USER_ACTION
2396 # line 527 "grammar.l"
2397 {
2398 #line 262 "grammar.pgs"
2399 RETURN(LEXWORD_CLASSNAME); }
2400 YY_BREAK
2401 case 55:
2402 YY_USER_ACTION
2403 # line 530 "grammar.l"
2404 {
2405 #line 263 "grammar.pgs"
2406 RETURN(LEXWORD_CLASSNAME); }
2407 YY_BREAK
2408 case 56:
2409 YY_USER_ACTION
2410 # line 533 "grammar.l"
2411 {
2412 #line 264 "grammar.pgs"
2413 RETURN(LEXWORD_CLASS); }
2414 YY_BREAK
2415 case 57:
2416 YY_USER_ACTION
2417 # line 536 "grammar.l"
2418 {
2419 #line 265 "grammar.pgs"
2420 RETURN(LEXWORD_CLUSTER); }
2421 YY_BREAK
2422 case 58:
2423 YY_USER_ACTION
2424 # line 539 "grammar.l"
2425 {
2426 #line 266 "grammar.pgs"
2427 RETURN(LEXWORD_CMIN); }
2428 YY_BREAK
2429 case 59:
2430 YY_USER_ACTION
2431 # line 542 "grammar.l"
2432 {
2433 #line 267 "grammar.pgs"
2434 RETURN(LEXWORD_CMAX); }
2435 YY_BREAK
2436 case 60:
2437 YY_USER_ACTION
2438 # line 545 "grammar.l"
2439 {
2440 #line 268 "grammar.pgs"
2441 RETURN(LEXWORD_COLORENTRY); }
2442 YY_BREAK
2443 case 61:
2444 YY_USER_ACTION
2445 # line 548 "grammar.l"
2446 {
2447 #line 269 "grammar.pgs"
2448 RETURN(LEXWORD_COLORENTRY); }
2449 YY_BREAK
2450 case 62:
2451 YY_USER_ACTION
2452 # line 551 "grammar.l"
2453 {
2454 #line 270 "grammar.pgs"
2455 RETURN(LEXWORD_COLOR); }
2456 YY_BREAK
2457 case 63:
2458 YY_USER_ACTION
2459 # line 554 "grammar.l"
2460 {
2461 #line 271 "grammar.pgs"
2462 RETURN(LEXWORD_CONSTRAINTS); }
2463 YY_BREAK
2464 case 64:
2465 YY_USER_ACTION
2466 # line 557 "grammar.l"
2467 {
2468 #line 272 "grammar.pgs"
2469 RETURN(LEXWORD_CONSTRAINT); }
2470 YY_BREAK
2471 case 65:
2472 YY_USER_ACTION
2473 # line 560 "grammar.l"
2474 {
2475 #line 273 "grammar.pgs"
2476 RETURN(LEXWORD_CONTINUOUS); }
2477 YY_BREAK
2478 case 66:
2479 YY_USER_ACTION
2480 # line 563 "grammar.l"
2481 {
2482 #line 274 "grammar.pgs"
2483 RETURN(LEXWORD_CROSSING_WEIGHT); }
2484 YY_BREAK
2485 case 67:
2486 YY_USER_ACTION
2487 # line 566 "grammar.l"
2488 {
2489 #line 275 "grammar.pgs"
2490 RETURN(LEXWORD_CROSSING_WEIGHT); }
2491 YY_BREAK
2492 case 68:
2493 YY_USER_ACTION
2494 # line 569 "grammar.l"
2495 {
2496 #line 276 "grammar.pgs"
2497 RETURN(LEXWORD_CROSSING_OPT); }
2498 YY_BREAK
2499 case 69:
2500 YY_USER_ACTION
2501 # line 572 "grammar.l"
2502 {
2503 #line 277 "grammar.pgs"
2504 RETURN(LEXWORD_CROSSING_OPT); }
2505 YY_BREAK
2506 case 70:
2507 YY_USER_ACTION
2508 # line 575 "grammar.l"
2509 {
2510 #line 278 "grammar.pgs"
2511 RETURN(LEXWORD_CROSSING_P2); }
2512 YY_BREAK
2513 case 71:
2514 YY_USER_ACTION
2515 # line 578 "grammar.l"
2516 {
2517 #line 279 "grammar.pgs"
2518 RETURN(LEXWORD_CROSSING_P2); }
2519 YY_BREAK
2520 case 72:
2521 YY_USER_ACTION
2522 # line 581 "grammar.l"
2523 {
2524 #line 280 "grammar.pgs"
2525 RETURN(LEXWORD_CYAN); }
2526 YY_BREAK
2527 case 73:
2528 YY_USER_ACTION
2529 # line 584 "grammar.l"
2530 {
2531 #line 281 "grammar.pgs"
2532 RETURN(LEXWORD_DARKBLUE); }
2533 YY_BREAK
2534 case 74:
2535 YY_USER_ACTION
2536 # line 587 "grammar.l"
2537 {
2538 #line 282 "grammar.pgs"
2539 RETURN(LEXWORD_DARKCYAN); }
2540 YY_BREAK
2541 case 75:
2542 YY_USER_ACTION
2543 # line 590 "grammar.l"
2544 {
2545 #line 283 "grammar.pgs"
2546 RETURN(LEXWORD_DARKGREEN); }
2547 YY_BREAK
2548 case 76:
2549 YY_USER_ACTION
2550 # line 593 "grammar.l"
2551 {
2552 #line 284 "grammar.pgs"
2553 RETURN(LEXWORD_DARKGREY); }
2554 YY_BREAK
2555 case 77:
2556 YY_USER_ACTION
2557 # line 596 "grammar.l"
2558 {
2559 #line 285 "grammar.pgs"
2560 RETURN(LEXWORD_DARKGREY); }
2561 YY_BREAK
2562 case 78:
2563 YY_USER_ACTION
2564 # line 599 "grammar.l"
2565 {
2566 #line 286 "grammar.pgs"
2567 RETURN(LEXWORD_DARKMAGENTA); }
2568 YY_BREAK
2569 case 79:
2570 YY_USER_ACTION
2571 # line 602 "grammar.l"
2572 {
2573 #line 287 "grammar.pgs"
2574 RETURN(LEXWORD_DARKRED); }
2575 YY_BREAK
2576 case 80:
2577 YY_USER_ACTION
2578 # line 605 "grammar.l"
2579 {
2580 #line 288 "grammar.pgs"
2581 RETURN(LEXWORD_DARKYELLOW); }
2582 YY_BREAK
2583 case 81:
2584 YY_USER_ACTION
2585 # line 608 "grammar.l"
2586 {
2587 #line 289 "grammar.pgs"
2588 RETURN(LEXWORD_DASHED); }
2589 YY_BREAK
2590 case 82:
2591 YY_USER_ACTION
2592 # line 611 "grammar.l"
2593 {
2594 #line 290 "grammar.pgs"
2595 RETURN(LEXWORD_DFS); }
2596 YY_BREAK
2597 case 83:
2598 YY_USER_ACTION
2599 # line 614 "grammar.l"
2600 {
2601 #line 291 "grammar.pgs"
2602 RETURN(LEXWORD_DFS); }
2603 YY_BREAK
2604 case 84:
2605 YY_USER_ACTION
2606 # line 617 "grammar.l"
2607 {
2608 #line 292 "grammar.pgs"
2609 RETURN(LEXWORD_DFS); }
2610 YY_BREAK
2611 case 85:
2612 YY_USER_ACTION
2613 # line 620 "grammar.l"
2614 {
2615 #line 293 "grammar.pgs"
2616 RETURN(LEXWORD_DIMENSION); }
2617 YY_BREAK
2618 case 86:
2619 YY_USER_ACTION
2620 # line 623 "grammar.l"
2621 {
2622 #line 294 "grammar.pgs"
2623 RETURN(LEXWORD_DIRTY_EDGE_LABELS); }
2624 YY_BREAK
2625 case 87:
2626 YY_USER_ACTION
2627 # line 626 "grammar.l"
2628 {
2629 #line 295 "grammar.pgs"
2630 RETURN(LEXWORD_DIRTY_EDGE_LABELS); }
2631 YY_BREAK
2632 case 88:
2633 YY_USER_ACTION
2634 # line 629 "grammar.l"
2635 {
2636 #line 296 "grammar.pgs"
2637 RETURN(LEXWORD_DISPLAY_EDGE_LABELS); }
2638 YY_BREAK
2639 case 89:
2640 YY_USER_ACTION
2641 # line 632 "grammar.l"
2642 {
2643 #line 297 "grammar.pgs"
2644 RETURN(LEXWORD_DISPLAY_EDGE_LABELS); }
2645 YY_BREAK
2646 case 90:
2647 YY_USER_ACTION
2648 # line 635 "grammar.l"
2649 {
2650 #line 298 "grammar.pgs"
2651 RETURN(LEXWORD_DOTTED); }
2652 YY_BREAK
2653 case 91:
2654 YY_USER_ACTION
2655 # line 638 "grammar.l"
2656 {
2657 #line 299 "grammar.pgs"
2658 RETURN(LEXWORD_EDGE1); }
2659 YY_BREAK
2660 case 92:
2661 YY_USER_ACTION
2662 # line 641 "grammar.l"
2663 {
2664 #line 300 "grammar.pgs"
2665 RETURN(LEXWORD_EDGE2); }
2666 YY_BREAK
2667 case 93:
2668 YY_USER_ACTION
2669 # line 644 "grammar.l"
2670 {
2671 #line 301 "grammar.pgs"
2672 RETURN(LEXWORD_EDGES); }
2673 YY_BREAK
2674 case 94:
2675 YY_USER_ACTION
2676 # line 647 "grammar.l"
2677 {
2678 #line 302 "grammar.pgs"
2679 RETURN(LEXWORD_ELLIPSE); }
2680 YY_BREAK
2681 case 95:
2682 YY_USER_ACTION
2683 # line 650 "grammar.l"
2684 {
2685 #line 303 "grammar.pgs"
2686 RETURN(LEXWORD_EQUAL_COLUMN); }
2687 YY_BREAK
2688 case 96:
2689 YY_USER_ACTION
2690 # line 653 "grammar.l"
2691 {
2692 #line 304 "grammar.pgs"
2693 RETURN(LEXWORD_EQUAL_COLUMN); }
2694 YY_BREAK
2695 case 97:
2696 YY_USER_ACTION
2697 # line 656 "grammar.l"
2698 {
2699 #line 305 "grammar.pgs"
2700 RETURN(LEXWORD_EQUAL_POSITION); }
2701 YY_BREAK
2702 case 98:
2703 YY_USER_ACTION
2704 # line 659 "grammar.l"
2705 {
2706 #line 306 "grammar.pgs"
2707 RETURN(LEXWORD_EQUAL_POSITION); }
2708 YY_BREAK
2709 case 99:
2710 YY_USER_ACTION
2711 # line 662 "grammar.l"
2712 {
2713 #line 307 "grammar.pgs"
2714 RETURN(LEXWORD_EQUAL_ROW); }
2715 YY_BREAK
2716 case 100:
2717 YY_USER_ACTION
2718 # line 665 "grammar.l"
2719 {
2720 #line 308 "grammar.pgs"
2721 RETURN(LEXWORD_EQUAL_ROW); }
2722 YY_BREAK
2723 case 101:
2724 YY_USER_ACTION
2725 # line 668 "grammar.l"
2726 {
2727 #line 309 "grammar.pgs"
2728 RETURN(LEXWORD_EQUAL); }
2729 YY_BREAK
2730 case 102:
2731 YY_USER_ACTION
2732 # line 671 "grammar.l"
2733 {
2734 #line 310 "grammar.pgs"
2735 RETURN(LEXWORD_EVERY); }
2736 YY_BREAK
2737 case 103:
2738 YY_USER_ACTION
2739 # line 674 "grammar.l"
2740 {
2741 #line 311 "grammar.pgs"
2742 RETURN(LEXWORD_FCFISH); }
2743 YY_BREAK
2744 case 104:
2745 YY_USER_ACTION
2746 # line 677 "grammar.l"
2747 {
2748 #line 312 "grammar.pgs"
2749 RETURN(LEXWORD_FPFISH); }
2750 YY_BREAK
2751 case 105:
2752 YY_USER_ACTION
2753 # line 680 "grammar.l"
2754 {
2755 #line 313 "grammar.pgs"
2756 RETURN(LEXWORD_FIXED); }
2757 YY_BREAK
2758 case 106:
2759 YY_USER_ACTION
2760 # line 683 "grammar.l"
2761 {
2762 #line 314 "grammar.pgs"
2763 RETURN(LEXWORD_FREE); }
2764 YY_BREAK
2765 case 107:
2766 YY_USER_ACTION
2767 # line 686 "grammar.l"
2768 {
2769 #line 315 "grammar.pgs"
2770 RETURN(LEXWORD_FINETUNING); }
2771 YY_BREAK
2772 case 108:
2773 YY_USER_ACTION
2774 # line 689 "grammar.l"
2775 {
2776 #line 316 "grammar.pgs"
2777 RETURN(LEXWORD_FINETUNING); }
2778 YY_BREAK
2779 case 109:
2780 YY_USER_ACTION
2781 # line 692 "grammar.l"
2782 {
2783 #line 317 "grammar.pgs"
2784 RETURN(LEXWORD_FOLDEDGE); }
2785 YY_BREAK
2786 case 110:
2787 YY_USER_ACTION
2788 # line 695 "grammar.l"
2789 {
2790 #line 318 "grammar.pgs"
2791 RETURN(LEXWORD_FOLDEDGE); }
2792 YY_BREAK
2793 case 111:
2794 YY_USER_ACTION
2795 # line 698 "grammar.l"
2796 {
2797 #line 319 "grammar.pgs"
2798 RETURN(LEXWORD_FOLDNODE); }
2799 YY_BREAK
2800 case 112:
2801 YY_USER_ACTION
2802 # line 701 "grammar.l"
2803 {
2804 #line 320 "grammar.pgs"
2805 RETURN(LEXWORD_FOLDNODE); }
2806 YY_BREAK
2807 case 113:
2808 YY_USER_ACTION
2809 # line 704 "grammar.l"
2810 {
2811 #line 321 "grammar.pgs"
2812 RETURN(LEXWORD_FOLDING); }
2813 YY_BREAK
2814 case 114:
2815 YY_USER_ACTION
2816 # line 707 "grammar.l"
2817 {
2818 #line 322 "grammar.pgs"
2819 RETURN(LEXWORD_FONTNAME); }
2820 YY_BREAK
2821 case 115:
2822 YY_USER_ACTION
2823 # line 710 "grammar.l"
2824 {
2825 #line 323 "grammar.pgs"
2826 RETURN(LEXWORD_FONTNAME); }
2827 YY_BREAK
2828 case 116:
2829 YY_USER_ACTION
2830 # line 713 "grammar.l"
2831 {
2832 #line 324 "grammar.pgs"
2833 RETURN(LEXWORD_GOLD); }
2834 YY_BREAK
2835 case 117:
2836 YY_USER_ACTION
2837 # line 716 "grammar.l"
2838 {
2839 #line 325 "grammar.pgs"
2840 RETURN(LEXWORD_GRAPH); }
2841 YY_BREAK
2842 case 118:
2843 YY_USER_ACTION
2844 # line 719 "grammar.l"
2845 {
2846 #line 326 "grammar.pgs"
2847 RETURN(LEXWORD_GREATER); }
2848 YY_BREAK
2849 case 119:
2850 YY_USER_ACTION
2851 # line 722 "grammar.l"
2852 {
2853 #line 327 "grammar.pgs"
2854 RETURN(LEXWORD_GREEN); }
2855 YY_BREAK
2856 case 120:
2857 YY_USER_ACTION
2858 # line 725 "grammar.l"
2859 {
2860 #line 328 "grammar.pgs"
2861 RETURN(LEXWORD_GREY); }
2862 YY_BREAK
2863 case 121:
2864 YY_USER_ACTION
2865 # line 728 "grammar.l"
2866 {
2867 #line 329 "grammar.pgs"
2868 RETURN(LEXWORD_GREY); }
2869 YY_BREAK
2870 case 122:
2871 YY_USER_ACTION
2872 # line 731 "grammar.l"
2873 {
2874 #line 330 "grammar.pgs"
2875 RETURN(LEXWORD_HEIGHT); }
2876 YY_BREAK
2877 case 123:
2878 YY_USER_ACTION
2879 # line 734 "grammar.l"
2880 {
2881 #line 331 "grammar.pgs"
2882 RETURN(LEXWORD_HIDESINGLES); }
2883 YY_BREAK
2884 case 124:
2885 YY_USER_ACTION
2886 # line 737 "grammar.l"
2887 {
2888 #line 332 "grammar.pgs"
2889 RETURN(LEXWORD_HIDESINGLES); }
2890 YY_BREAK
2891 case 125:
2892 YY_USER_ACTION
2893 # line 740 "grammar.l"
2894 {
2895 #line 333 "grammar.pgs"
2896 RETURN(LEXWORD_HIGH_MARGIN); }
2897 YY_BREAK
2898 case 126:
2899 YY_USER_ACTION
2900 # line 743 "grammar.l"
2901 {
2902 #line 334 "grammar.pgs"
2903 RETURN(LEXWORD_HIGH_MARGIN); }
2904 YY_BREAK
2905 case 127:
2906 YY_USER_ACTION
2907 # line 746 "grammar.l"
2908 {
2909 #line 335 "grammar.pgs"
2910 RETURN(LEXWORD_HIGH); }
2911 YY_BREAK
2912 case 128:
2913 YY_USER_ACTION
2914 # line 749 "grammar.l"
2915 {
2916 #line 336 "grammar.pgs"
2917 RETURN(LEXWORD_HIDDEN); }
2918 YY_BREAK
2919 case 129:
2920 YY_USER_ACTION
2921 # line 752 "grammar.l"
2922 {
2923 #line 337 "grammar.pgs"
2924 RETURN(LEXWORD_HORDER); }
2925 YY_BREAK
2926 case 130:
2927 YY_USER_ACTION
2928 # line 755 "grammar.l"
2929 {
2930 #line 338 "grammar.pgs"
2931 RETURN(LEXWORD_HORDER); }
2932 YY_BREAK
2933 case 131:
2934 YY_USER_ACTION
2935 # line 758 "grammar.l"
2936 {
2937 #line 339 "grammar.pgs"
2938 RETURN(LEXWORD_ICONFILE); }
2939 YY_BREAK
2940 case 132:
2941 YY_USER_ACTION
2942 # line 761 "grammar.l"
2943 {
2944 #line 340 "grammar.pgs"
2945 RETURN(LEXWORD_ICONFILE); }
2946 YY_BREAK
2947 case 133:
2948 YY_USER_ACTION
2949 # line 764 "grammar.l"
2950 {
2951 #line 341 "grammar.pgs"
2952 RETURN(LEXWORD_ICONHEIGHT); }
2953 YY_BREAK
2954 case 134:
2955 YY_USER_ACTION
2956 # line 767 "grammar.l"
2957 {
2958 #line 342 "grammar.pgs"
2959 RETURN(LEXWORD_ICONHEIGHT); }
2960 YY_BREAK
2961 case 135:
2962 YY_USER_ACTION
2963 # line 770 "grammar.l"
2964 {
2965 #line 343 "grammar.pgs"
2966 RETURN(LEXWORD_ICONSTYLE); }
2967 YY_BREAK
2968 case 136:
2969 YY_USER_ACTION
2970 # line 773 "grammar.l"
2971 {
2972 #line 344 "grammar.pgs"
2973 RETURN(LEXWORD_ICONSTYLE); }
2974 YY_BREAK
2975 case 137:
2976 YY_USER_ACTION
2977 # line 776 "grammar.l"
2978 {
2979 #line 345 "grammar.pgs"
2980 RETURN(LEXWORD_ICONWIDTH); }
2981 YY_BREAK
2982 case 138:
2983 YY_USER_ACTION
2984 # line 779 "grammar.l"
2985 {
2986 #line 346 "grammar.pgs"
2987 RETURN(LEXWORD_ICONWIDTH); }
2988 YY_BREAK
2989 case 139:
2990 YY_USER_ACTION
2991 # line 782 "grammar.l"
2992 {
2993 #line 347 "grammar.pgs"
2994 RETURN(LEXWORD_HIDESINGLES); }
2995 YY_BREAK
2996 case 140:
2997 YY_USER_ACTION
2998 # line 785 "grammar.l"
2999 {
3000 #line 348 "grammar.pgs"
3001 RETURN(LEXWORD_HIDESINGLES); }
3002 YY_BREAK
3003 case 141:
3004 YY_USER_ACTION
3005 # line 788 "grammar.l"
3006 {
3007 #line 349 "grammar.pgs"
3008 RETURN(LEXWORD_INCLUDE); }
3009 YY_BREAK
3010 case 142:
3011 YY_USER_ACTION
3012 # line 791 "grammar.l"
3013 {
3014 #line 350 "grammar.pgs"
3015 RETURN(LEXWORD_INFONAME); }
3016 YY_BREAK
3017 case 143:
3018 YY_USER_ACTION
3019 # line 794 "grammar.l"
3020 {
3021 #line 351 "grammar.pgs"
3022 RETURN(LEXWORD_INFO1); }
3023 YY_BREAK
3024 case 144:
3025 YY_USER_ACTION
3026 # line 797 "grammar.l"
3027 {
3028 #line 352 "grammar.pgs"
3029 RETURN(LEXWORD_INFO2); }
3030 YY_BREAK
3031 case 145:
3032 YY_USER_ACTION
3033 # line 800 "grammar.l"
3034 {
3035 #line 353 "grammar.pgs"
3036 RETURN(LEXWORD_INFO3); }
3037 YY_BREAK
3038 case 146:
3039 YY_USER_ACTION
3040 # line 803 "grammar.l"
3041 {
3042 #line 354 "grammar.pgs"
3043 RETURN(LEXWORD_INPUTFUNCTION); }
3044 YY_BREAK
3045 case 147:
3046 YY_USER_ACTION
3047 # line 806 "grammar.l"
3048 {
3049 #line 355 "grammar.pgs"
3050 RETURN(LEXWORD_INPUTFUNCTION); }
3051 YY_BREAK
3052 case 148:
3053 YY_USER_ACTION
3054 # line 809 "grammar.l"
3055 {
3056 #line 356 "grammar.pgs"
3057 RETURN(LEXWORD_INTERVAL); }
3058 YY_BREAK
3059 case 149:
3060 YY_USER_ACTION
3061 # line 812 "grammar.l"
3062 {
3063 #line 357 "grammar.pgs"
3064 RETURN(LEXWORD_INVISIBLE); }
3065 YY_BREAK
3066 case 150:
3067 YY_USER_ACTION
3068 # line 815 "grammar.l"
3069 {
3070 #line 358 "grammar.pgs"
3071 RETURN(LEXWORD_IN_FRONT); }
3072 YY_BREAK
3073 case 151:
3074 YY_USER_ACTION
3075 # line 818 "grammar.l"
3076 {
3077 #line 359 "grammar.pgs"
3078 RETURN(LEXWORD_ISI); }
3079 YY_BREAK
3080 case 152:
3081 YY_USER_ACTION
3082 # line 821 "grammar.l"
3083 {
3084 #line 360 "grammar.pgs"
3085 RETURN(LEXWORD_KHAKI); }
3086 YY_BREAK
3087 case 153:
3088 YY_USER_ACTION
3089 # line 824 "grammar.l"
3090 {
3091 #line 361 "grammar.pgs"
3092 RETURN(LEXWORD_TEXTCOLOR); }
3093 YY_BREAK
3094 case 154:
3095 YY_USER_ACTION
3096 # line 827 "grammar.l"
3097 {
3098 #line 362 "grammar.pgs"
3099 RETURN(LEXWORD_TEXTCOLOR); }
3100 YY_BREAK
3101 case 155:
3102 YY_USER_ACTION
3103 # line 830 "grammar.l"
3104 {
3105 #line 363 "grammar.pgs"
3106 RETURN(LEXWORD_LABEL); }
3107 YY_BREAK
3108 case 156:
3109 YY_USER_ACTION
3110 # line 833 "grammar.l"
3111 {
3112 #line 364 "grammar.pgs"
3113 RETURN(LEXWORD_LATE_LABELS); }
3114 YY_BREAK
3115 case 157:
3116 YY_USER_ACTION
3117 # line 836 "grammar.l"
3118 {
3119 #line 365 "grammar.pgs"
3120 RETURN(LEXWORD_LATE_LABELS); }
3121 YY_BREAK
3122 case 158:
3123 YY_USER_ACTION
3124 # line 839 "grammar.l"
3125 {
3126 #line 366 "grammar.pgs"
3127 RETURN(LEXWORD_LAYOUTALGORITHM); }
3128 YY_BREAK
3129 case 159:
3130 YY_USER_ACTION
3131 # line 842 "grammar.l"
3132 {
3133 #line 367 "grammar.pgs"
3134 RETURN(LEXWORD_LAYOUTALGORITHM); }
3135 YY_BREAK
3136 case 160:
3137 YY_USER_ACTION
3138 # line 845 "grammar.l"
3139 {
3140 #line 368 "grammar.pgs"
3141 RETURN(LEXWORD_LAYOUTFREQUENCY); }
3142 YY_BREAK
3143 case 161:
3144 YY_USER_ACTION
3145 # line 848 "grammar.l"
3146 {
3147 #line 369 "grammar.pgs"
3148 RETURN(LEXWORD_LAYOUTFREQUENCY); }
3149 YY_BREAK
3150 case 162:
3151 YY_USER_ACTION
3152 # line 851 "grammar.l"
3153 {
3154 #line 370 "grammar.pgs"
3155 RETURN(LEXWORD_LAYOUTPARAMETER); }
3156 YY_BREAK
3157 case 163:
3158 YY_USER_ACTION
3159 # line 854 "grammar.l"
3160 {
3161 #line 371 "grammar.pgs"
3162 RETURN(LEXWORD_LAYOUTPARAMETER); }
3163 YY_BREAK
3164 case 164:
3165 YY_USER_ACTION
3166 # line 857 "grammar.l"
3167 {
3168 #line 372 "grammar.pgs"
3169 RETURN(LEXWORD_LAYOUTDOWNFACTOR); }
3170 YY_BREAK
3171 case 165:
3172 YY_USER_ACTION
3173 # line 860 "grammar.l"
3174 {
3175 #line 373 "grammar.pgs"
3176 RETURN(LEXWORD_LAYOUTDOWNFACTOR); }
3177 YY_BREAK
3178 case 166:
3179 YY_USER_ACTION
3180 # line 863 "grammar.l"
3181 {
3182 #line 374 "grammar.pgs"
3183 RETURN(LEXWORD_LAYOUTUPFACTOR); }
3184 YY_BREAK
3185 case 167:
3186 YY_USER_ACTION
3187 # line 866 "grammar.l"
3188 {
3189 #line 375 "grammar.pgs"
3190 RETURN(LEXWORD_LAYOUTUPFACTOR); }
3191 YY_BREAK
3192 case 168:
3193 YY_USER_ACTION
3194 # line 869 "grammar.l"
3195 {
3196 #line 376 "grammar.pgs"
3197 RETURN(LEXWORD_LAYOUTNEARFACTOR); }
3198 YY_BREAK
3199 case 169:
3200 YY_USER_ACTION
3201 # line 872 "grammar.l"
3202 {
3203 #line 377 "grammar.pgs"
3204 RETURN(LEXWORD_LAYOUTNEARFACTOR); }
3205 YY_BREAK
3206 case 170:
3207 YY_USER_ACTION
3208 # line 875 "grammar.l"
3209 {
3210 #line 378 "grammar.pgs"
3211 RETURN(LEXWORD_LAYOUTSPLINEFACTOR); }
3212 YY_BREAK
3213 case 171:
3214 YY_USER_ACTION
3215 # line 878 "grammar.l"
3216 {
3217 #line 379 "grammar.pgs"
3218 RETURN(LEXWORD_LAYOUTSPLINEFACTOR); }
3219 YY_BREAK
3220 case 172:
3221 YY_USER_ACTION
3222 # line 881 "grammar.l"
3223 {
3224 #line 380 "grammar.pgs"
3225 RETURN(LEXWORD_LEFT_JUSTIFY); }
3226 YY_BREAK
3227 case 173:
3228 YY_USER_ACTION
3229 # line 884 "grammar.l"
3230 {
3231 #line 381 "grammar.pgs"
3232 RETURN(LEXWORD_LEFT_JUSTIFY); }
3233 YY_BREAK
3234 case 174:
3235 YY_USER_ACTION
3236 # line 887 "grammar.l"
3237 {
3238 #line 382 "grammar.pgs"
3239 RETURN(LEXWORD_LEFT_MARGIN); }
3240 YY_BREAK
3241 case 175:
3242 YY_USER_ACTION
3243 # line 890 "grammar.l"
3244 {
3245 #line 383 "grammar.pgs"
3246 RETURN(LEXWORD_LEFT_MARGIN); }
3247 YY_BREAK
3248 case 176:
3249 YY_USER_ACTION
3250 # line 893 "grammar.l"
3251 {
3252 #line 384 "grammar.pgs"
3253 RETURN(LEXWORD_LEFT_NEIGHBOR); }
3254 YY_BREAK
3255 case 177:
3256 YY_USER_ACTION
3257 # line 896 "grammar.l"
3258 {
3259 #line 385 "grammar.pgs"
3260 RETURN(LEXWORD_LEFT_NEIGHBOR); }
3261 YY_BREAK
3262 case 178:
3263 YY_USER_ACTION
3264 # line 899 "grammar.l"
3265 {
3266 #line 386 "grammar.pgs"
3267 RETURN(LEXWORD_LEFT_TO_RIGHT); }
3268 YY_BREAK
3269 case 179:
3270 YY_USER_ACTION
3271 # line 902 "grammar.l"
3272 {
3273 #line 387 "grammar.pgs"
3274 RETURN(LEXWORD_LEFT_TO_RIGHT); }
3275 YY_BREAK
3276 case 180:
3277 YY_USER_ACTION
3278 # line 905 "grammar.l"
3279 {
3280 #line 388 "grammar.pgs"
3281 RETURN(LEXWORD_LEFT); }
3282 YY_BREAK
3283 case 181:
3284 YY_USER_ACTION
3285 # line 908 "grammar.l"
3286 {
3287 #line 389 "grammar.pgs"
3288 RETURN(LEXWORD_LEVEL); }
3289 YY_BREAK
3290 case 182:
3291 YY_USER_ACTION
3292 # line 911 "grammar.l"
3293 {
3294 #line 390 "grammar.pgs"
3295 RETURN(LEXWORD_VORDER); }
3296 YY_BREAK
3297 case 183:
3298 YY_USER_ACTION
3299 # line 914 "grammar.l"
3300 {
3301 #line 391 "grammar.pgs"
3302 RETURN(LEXWORD_VORDER); }
3303 YY_BREAK
3304 case 184:
3305 YY_USER_ACTION
3306 # line 917 "grammar.l"
3307 {
3308 #line 392 "grammar.pgs"
3309 RETURN(LEXWORD_LIGHTBLUE); }
3310 YY_BREAK
3311 case 185:
3312 YY_USER_ACTION
3313 # line 920 "grammar.l"
3314 {
3315 #line 393 "grammar.pgs"
3316 RETURN(LEXWORD_LIGHTCYAN); }
3317 YY_BREAK
3318 case 186:
3319 YY_USER_ACTION
3320 # line 923 "grammar.l"
3321 {
3322 #line 394 "grammar.pgs"
3323 RETURN(LEXWORD_LIGHTGREEN); }
3324 YY_BREAK
3325 case 187:
3326 YY_USER_ACTION
3327 # line 926 "grammar.l"
3328 {
3329 #line 395 "grammar.pgs"
3330 RETURN(LEXWORD_LIGHTGREY); }
3331 YY_BREAK
3332 case 188:
3333 YY_USER_ACTION
3334 # line 929 "grammar.l"
3335 {
3336 #line 396 "grammar.pgs"
3337 RETURN(LEXWORD_LIGHTGREY); }
3338 YY_BREAK
3339 case 189:
3340 YY_USER_ACTION
3341 # line 932 "grammar.l"
3342 {
3343 #line 397 "grammar.pgs"
3344 RETURN(LEXWORD_LIGHTMAGENTA); }
3345 YY_BREAK
3346 case 190:
3347 YY_USER_ACTION
3348 # line 935 "grammar.l"
3349 {
3350 #line 398 "grammar.pgs"
3351 RETURN(LEXWORD_LIGHTRED); }
3352 YY_BREAK
3353 case 191:
3354 YY_USER_ACTION
3355 # line 938 "grammar.l"
3356 {
3357 #line 399 "grammar.pgs"
3358 RETURN(LEXWORD_LIGHTYELLOW); }
3359 YY_BREAK
3360 case 192:
3361 YY_USER_ACTION
3362 # line 941 "grammar.l"
3363 {
3364 #line 400 "grammar.pgs"
3365 RETURN(LEXWORD_LILAC); }
3366 YY_BREAK
3367 case 193:
3368 YY_USER_ACTION
3369 # line 944 "grammar.l"
3370 {
3371 #line 401 "grammar.pgs"
3372 RETURN(LEXWORD_LIMIT); }
3373 YY_BREAK
3374 case 194:
3375 YY_USER_ACTION
3376 # line 947 "grammar.l"
3377 {
3378 #line 402 "grammar.pgs"
3379 RETURN(LEXWORD_LINE); }
3380 YY_BREAK
3381 case 195:
3382 YY_USER_ACTION
3383 # line 950 "grammar.l"
3384 {
3385 #line 403 "grammar.pgs"
3386 RETURN(LEXWORD_LINESTYLE); }
3387 YY_BREAK
3388 case 196:
3389 YY_USER_ACTION
3390 # line 953 "grammar.l"
3391 {
3392 #line 404 "grammar.pgs"
3393 RETURN(LEXWORD_LINESTYLE); }
3394 YY_BREAK
3395 case 197:
3396 YY_USER_ACTION
3397 # line 956 "grammar.l"
3398 {
3399 #line 405 "grammar.pgs"
3400 RETURN(LEXWORD_LOC); }
3401 YY_BREAK
3402 case 198:
3403 YY_USER_ACTION
3404 # line 959 "grammar.l"
3405 {
3406 #line 406 "grammar.pgs"
3407 RETURN(LEXWORD_LOWER_NEIGHBOR); }
3408 YY_BREAK
3409 case 199:
3410 YY_USER_ACTION
3411 # line 962 "grammar.l"
3412 {
3413 #line 407 "grammar.pgs"
3414 RETURN(LEXWORD_LOWER_NEIGHBOR); }
3415 YY_BREAK
3416 case 200:
3417 YY_USER_ACTION
3418 # line 965 "grammar.l"
3419 {
3420 #line 408 "grammar.pgs"
3421 RETURN(LEXWORD_LOW_MARGIN); }
3422 YY_BREAK
3423 case 201:
3424 YY_USER_ACTION
3425 # line 968 "grammar.l"
3426 {
3427 #line 409 "grammar.pgs"
3428 RETURN(LEXWORD_LOW_MARGIN); }
3429 YY_BREAK
3430 case 202:
3431 YY_USER_ACTION
3432 # line 971 "grammar.l"
3433 {
3434 #line 410 "grammar.pgs"
3435 RETURN(LEXWORD_LOW); }
3436 YY_BREAK
3437 case 203:
3438 YY_USER_ACTION
3439 # line 974 "grammar.l"
3440 {
3441 #line 411 "grammar.pgs"
3442 RETURN(LEXWORD_MAGENTA); }
3443 YY_BREAK
3444 case 204:
3445 YY_USER_ACTION
3446 # line 977 "grammar.l"
3447 {
3448 #line 412 "grammar.pgs"
3449 RETURN(LEXWORD_MANHATTEN); }
3450 YY_BREAK
3451 case 205:
3452 YY_USER_ACTION
3453 # line 980 "grammar.l"
3454 {
3455 #line 413 "grammar.pgs"
3456 RETURN(LEXWORD_MANHATTEN); }
3457 YY_BREAK
3458 case 206:
3459 YY_USER_ACTION
3460 # line 983 "grammar.l"
3461 {
3462 #line 414 "grammar.pgs"
3463 RETURN(LEXWORD_MANHATTEN); }
3464 YY_BREAK
3465 case 207:
3466 YY_USER_ACTION
3467 # line 986 "grammar.l"
3468 {
3469 #line 415 "grammar.pgs"
3470 RETURN(LEXWORD_MANHATTEN); }
3471 YY_BREAK
3472 case 208:
3473 YY_USER_ACTION
3474 # line 989 "grammar.l"
3475 {
3476 #line 416 "grammar.pgs"
3477 RETURN(LEXWORD_MANUAL); }
3478 YY_BREAK
3479 case 209:
3480 YY_USER_ACTION
3481 # line 992 "grammar.l"
3482 {
3483 #line 417 "grammar.pgs"
3484 RETURN(LEXWORD_MAXDEPTHSLOW); }
3485 YY_BREAK
3486 case 210:
3487 YY_USER_ACTION
3488 # line 995 "grammar.l"
3489 {
3490 #line 418 "grammar.pgs"
3491 RETURN(LEXWORD_MAXDEPTH); }
3492 YY_BREAK
3493 case 211:
3494 YY_USER_ACTION
3495 # line 998 "grammar.l"
3496 {
3497 #line 419 "grammar.pgs"
3498 RETURN(LEXWORD_MAXDEGREE); }
3499 YY_BREAK
3500 case 212:
3501 YY_USER_ACTION
3502 # line 1001 "grammar.l"
3503 {
3504 #line 420 "grammar.pgs"
3505 RETURN(LEXWORD_MAXINDEGREE); }
3506 YY_BREAK
3507 case 213:
3508 YY_USER_ACTION
3509 # line 1004 "grammar.l"
3510 {
3511 #line 421 "grammar.pgs"
3512 RETURN(LEXWORD_MAXOUTDEGREE); }
3513 YY_BREAK
3514 case 214:
3515 YY_USER_ACTION
3516 # line 1007 "grammar.l"
3517 {
3518 #line 422 "grammar.pgs"
3519 RETURN(LEXWORD_MEDIAN); }
3520 YY_BREAK
3521 case 215:
3522 YY_USER_ACTION
3523 # line 1010 "grammar.l"
3524 {
3525 #line 423 "grammar.pgs"
3526 RETURN(LEXWORD_MEDIANBARY); }
3527 YY_BREAK
3528 case 216:
3529 YY_USER_ACTION
3530 # line 1013 "grammar.l"
3531 {
3532 #line 424 "grammar.pgs"
3533 RETURN(LEXWORD_MINDEPTHSLOW); }
3534 YY_BREAK
3535 case 217:
3536 YY_USER_ACTION
3537 # line 1016 "grammar.l"
3538 {
3539 #line 425 "grammar.pgs"
3540 RETURN(LEXWORD_MINDEPTH); }
3541 YY_BREAK
3542 case 218:
3543 YY_USER_ACTION
3544 # line 1019 "grammar.l"
3545 {
3546 #line 426 "grammar.pgs"
3547 RETURN(LEXWORD_MINDEGREE); }
3548 YY_BREAK
3549 case 219:
3550 YY_USER_ACTION
3551 # line 1022 "grammar.l"
3552 {
3553 #line 427 "grammar.pgs"
3554 RETURN(LEXWORD_MININDEGREE); }
3555 YY_BREAK
3556 case 220:
3557 YY_USER_ACTION
3558 # line 1025 "grammar.l"
3559 {
3560 #line 428 "grammar.pgs"
3561 RETURN(LEXWORD_MINOUTDEGREE); }
3562 YY_BREAK
3563 case 221:
3564 YY_USER_ACTION
3565 # line 1028 "grammar.l"
3566 {
3567 #line 429 "grammar.pgs"
3568 RETURN(LEXWORD_MINBACK); }
3569 YY_BREAK
3570 case 222:
3571 YY_USER_ACTION
3572 # line 1031 "grammar.l"
3573 {
3574 #line 430 "grammar.pgs"
3575 RETURN(LEXWORD_NAME); }
3576 YY_BREAK
3577 case 223:
3578 YY_USER_ACTION
3579 # line 1034 "grammar.l"
3580 {
3581 #line 431 "grammar.pgs"
3582 RETURN(LEXWORD_NEAREDGE); }
3583 YY_BREAK
3584 case 224:
3585 YY_USER_ACTION
3586 # line 1037 "grammar.l"
3587 {
3588 #line 432 "grammar.pgs"
3589 RETURN(LEXWORD_NEAREDGE); }
3590 YY_BREAK
3591 case 225:
3592 YY_USER_ACTION
3593 # line 1040 "grammar.l"
3594 {
3595 #line 433 "grammar.pgs"
3596 RETURN(LEXWORD_NEIGHBORS); }
3597 YY_BREAK
3598 case 226:
3599 YY_USER_ACTION
3600 # line 1043 "grammar.l"
3601 {
3602 #line 434 "grammar.pgs"
3603 RETURN(LEXWORD_NEAREDGES); }
3604 YY_BREAK
3605 case 227:
3606 YY_USER_ACTION
3607 # line 1046 "grammar.l"
3608 {
3609 #line 435 "grammar.pgs"
3610 RETURN(LEXWORD_NEAREDGES); }
3611 YY_BREAK
3612 case 228:
3613 YY_USER_ACTION
3614 # line 1049 "grammar.l"
3615 {
3616 #line 436 "grammar.pgs"
3617 RETURN(LEXWORD_NONEAREDGES); }
3618 YY_BREAK
3619 case 229:
3620 YY_USER_ACTION
3621 # line 1052 "grammar.l"
3622 {
3623 #line 437 "grammar.pgs"
3624 RETURN(LEXWORD_NONEAREDGES); }
3625 YY_BREAK
3626 case 230:
3627 YY_USER_ACTION
3628 # line 1055 "grammar.l"
3629 {
3630 #line 438 "grammar.pgs"
3631 RETURN(LEXWORD_NONEAREDGES); }
3632 YY_BREAK
3633 case 231:
3634 YY_USER_ACTION
3635 # line 1058 "grammar.l"
3636 {
3637 #line 439 "grammar.pgs"
3638 RETURN(LEXWORD_NODE1); }
3639 YY_BREAK
3640 case 232:
3641 YY_USER_ACTION
3642 # line 1061 "grammar.l"
3643 {
3644 #line 440 "grammar.pgs"
3645 RETURN(LEXWORD_NODE2); }
3646 YY_BREAK
3647 case 233:
3648 YY_USER_ACTION
3649 # line 1064 "grammar.l"
3650 {
3651 #line 441 "grammar.pgs"
3652 RETURN(LEXWORD_NODES); }
3653 YY_BREAK
3654 case 234:
3655 YY_USER_ACTION
3656 # line 1067 "grammar.l"
3657 {
3658 #line 442 "grammar.pgs"
3659 RETURN(LEXWORD_NODE_ALIGN); }
3660 YY_BREAK
3661 case 235:
3662 YY_USER_ACTION
3663 # line 1070 "grammar.l"
3664 {
3665 #line 443 "grammar.pgs"
3666 RETURN(LEXWORD_NODE_ALIGN); }
3667 YY_BREAK
3668 case 236:
3669 YY_USER_ACTION
3670 # line 1073 "grammar.l"
3671 {
3672 #line 444 "grammar.pgs"
3673 RETURN(LEXWORD_NONE); }
3674 YY_BREAK
3675 case 237:
3676 YY_USER_ACTION
3677 # line 1076 "grammar.l"
3678 {
3679 #line 445 "grammar.pgs"
3680 RETURN(LEXWORD_NO); }
3681 YY_BREAK
3682 case 238:
3683 YY_USER_ACTION
3684 # line 1079 "grammar.l"
3685 {
3686 #line 446 "grammar.pgs"
3687 RETURN(LEXWORD_ORANGE); }
3688 YY_BREAK
3689 case 239:
3690 YY_USER_ACTION
3691 # line 1082 "grammar.l"
3692 {
3693 #line 447 "grammar.pgs"
3694 RETURN(LEXWORD_ORCHID); }
3695 YY_BREAK
3696 case 240:
3697 YY_USER_ACTION
3698 # line 1085 "grammar.l"
3699 {
3700 #line 448 "grammar.pgs"
3701 RETURN(LEXWORD_ORIENTATION); }
3702 YY_BREAK
3703 case 241:
3704 YY_USER_ACTION
3705 # line 1088 "grammar.l"
3706 {
3707 #line 449 "grammar.pgs"
3708 RETURN(LEXWORD_OUTPUTFUNCTION); }
3709 YY_BREAK
3710 case 242:
3711 YY_USER_ACTION
3712 # line 1091 "grammar.l"
3713 {
3714 #line 450 "grammar.pgs"
3715 RETURN(LEXWORD_OUTPUTFUNCTION); }
3716 YY_BREAK
3717 case 243:
3718 YY_USER_ACTION
3719 # line 1094 "grammar.l"
3720 {
3721 #line 451 "grammar.pgs"
3722 RETURN(LEXWORD_PFISH); }
3723 YY_BREAK
3724 case 244:
3725 YY_USER_ACTION
3726 # line 1097 "grammar.l"
3727 {
3728 #line 452 "grammar.pgs"
3729 RETURN(LEXWORD_PINK); }
3730 YY_BREAK
3731 case 245:
3732 YY_USER_ACTION
3733 # line 1100 "grammar.l"
3734 {
3735 #line 453 "grammar.pgs"
3736 RETURN(LEXWORD_PLANAR); }
3737 YY_BREAK
3738 case 246:
3739 YY_USER_ACTION
3740 # line 1103 "grammar.l"
3741 {
3742 #line 454 "grammar.pgs"
3743 RETURN(LEXWORD_PMIN); }
3744 YY_BREAK
3745 case 247:
3746 YY_USER_ACTION
3747 # line 1106 "grammar.l"
3748 {
3749 #line 455 "grammar.pgs"
3750 RETURN(LEXWORD_PMAX); }
3751 YY_BREAK
3752 case 248:
3753 YY_USER_ACTION
3754 # line 1109 "grammar.l"
3755 {
3756 #line 456 "grammar.pgs"
3757 RETURN(LEXWORD_PORTSHARING); }
3758 YY_BREAK
3759 case 249:
3760 YY_USER_ACTION
3761 # line 1112 "grammar.l"
3762 {
3763 #line 457 "grammar.pgs"
3764 RETURN(LEXWORD_PORTSHARING); }
3765 YY_BREAK
3766 case 250:
3767 YY_USER_ACTION
3768 # line 1115 "grammar.l"
3769 {
3770 #line 458 "grammar.pgs"
3771 RETURN(LEXWORD_PRIORITYPHASE); }
3772 YY_BREAK
3773 case 251:
3774 YY_USER_ACTION
3775 # line 1118 "grammar.l"
3776 {
3777 #line 459 "grammar.pgs"
3778 RETURN(LEXWORD_PRIORITYPHASE); }
3779 YY_BREAK
3780 case 252:
3781 YY_USER_ACTION
3782 # line 1121 "grammar.l"
3783 {
3784 #line 460 "grammar.pgs"
3785 RETURN(LEXWORD_PRIORITY); }
3786 YY_BREAK
3787 case 253:
3788 YY_USER_ACTION
3789 # line 1124 "grammar.l"
3790 {
3791 #line 461 "grammar.pgs"
3792 RETURN(LEXWORD_PURPLE); }
3793 YY_BREAK
3794 case 254:
3795 YY_USER_ACTION
3796 # line 1127 "grammar.l"
3797 {
3798 #line 462 "grammar.pgs"
3799 RETURN(LEXWORD_RANGE); }
3800 YY_BREAK
3801 case 255:
3802 YY_USER_ACTION
3803 # line 1130 "grammar.l"
3804 {
3805 #line 463 "grammar.pgs"
3806 RETURN(LEXWORD_RED); }
3807 YY_BREAK
3808 case 256:
3809 YY_USER_ACTION
3810 # line 1133 "grammar.l"
3811 {
3812 #line 464 "grammar.pgs"
3813 RETURN(LEXWORD_RHOMB); }
3814 YY_BREAK
3815 case 257:
3816 YY_USER_ACTION
3817 # line 1136 "grammar.l"
3818 {
3819 #line 465 "grammar.pgs"
3820 RETURN(LEXWORD_RIGHT_JUSTIFY); }
3821 YY_BREAK
3822 case 258:
3823 YY_USER_ACTION
3824 # line 1139 "grammar.l"
3825 {
3826 #line 466 "grammar.pgs"
3827 RETURN(LEXWORD_RIGHT_JUSTIFY); }
3828 YY_BREAK
3829 case 259:
3830 YY_USER_ACTION
3831 # line 1142 "grammar.l"
3832 {
3833 #line 467 "grammar.pgs"
3834 RETURN(LEXWORD_RIGHT_MARGIN); }
3835 YY_BREAK
3836 case 260:
3837 YY_USER_ACTION
3838 # line 1145 "grammar.l"
3839 {
3840 #line 468 "grammar.pgs"
3841 RETURN(LEXWORD_RIGHT_MARGIN); }
3842 YY_BREAK
3843 case 261:
3844 YY_USER_ACTION
3845 # line 1148 "grammar.l"
3846 {
3847 #line 469 "grammar.pgs"
3848 RETURN(LEXWORD_RIGHT_NEIGHBOR); }
3849 YY_BREAK
3850 case 262:
3851 YY_USER_ACTION
3852 # line 1151 "grammar.l"
3853 {
3854 #line 470 "grammar.pgs"
3855 RETURN(LEXWORD_RIGHT_NEIGHBOR); }
3856 YY_BREAK
3857 case 263:
3858 YY_USER_ACTION
3859 # line 1154 "grammar.l"
3860 {
3861 #line 471 "grammar.pgs"
3862 RETURN(LEXWORD_RIGHT_TO_LEFT); }
3863 YY_BREAK
3864 case 264:
3865 YY_USER_ACTION
3866 # line 1157 "grammar.l"
3867 {
3868 #line 472 "grammar.pgs"
3869 RETURN(LEXWORD_RIGHT_TO_LEFT); }
3870 YY_BREAK
3871 case 265:
3872 YY_USER_ACTION
3873 # line 1160 "grammar.l"
3874 {
3875 #line 473 "grammar.pgs"
3876 RETURN(LEXWORD_RIGHT); }
3877 YY_BREAK
3878 case 266:
3879 YY_USER_ACTION
3880 # line 1163 "grammar.l"
3881 {
3882 #line 474 "grammar.pgs"
3883 RETURN(LEXWORD_RMIN); }
3884 YY_BREAK
3885 case 267:
3886 YY_USER_ACTION
3887 # line 1166 "grammar.l"
3888 {
3889 #line 475 "grammar.pgs"
3890 RETURN(LEXWORD_RMAX); }
3891 YY_BREAK
3892 case 268:
3893 YY_USER_ACTION
3894 # line 1169 "grammar.l"
3895 {
3896 #line 476 "grammar.pgs"
3897 RETURN(LEXWORD_SCALING); }
3898 YY_BREAK
3899 case 269:
3900 YY_USER_ACTION
3901 # line 1172 "grammar.l"
3902 {
3903 #line 477 "grammar.pgs"
3904 RETURN(LEXWORD_SHAPE); }
3905 YY_BREAK
3906 case 270:
3907 YY_USER_ACTION
3908 # line 1175 "grammar.l"
3909 {
3910 #line 478 "grammar.pgs"
3911 RETURN(LEXWORD_SHRINK); }
3912 YY_BREAK
3913 case 271:
3914 YY_USER_ACTION
3915 # line 1178 "grammar.l"
3916 {
3917 #line 479 "grammar.pgs"
3918 RETURN(LEXWORD_SMAX); }
3919 YY_BREAK
3920 case 272:
3921 YY_USER_ACTION
3922 # line 1181 "grammar.l"
3923 {
3924 #line 480 "grammar.pgs"
3925 RETURN(LEXWORD_SMANHATTEN); }
3926 YY_BREAK
3927 case 273:
3928 YY_USER_ACTION
3929 # line 1184 "grammar.l"
3930 {
3931 #line 481 "grammar.pgs"
3932 RETURN(LEXWORD_SMANHATTEN); }
3933 YY_BREAK
3934 case 274:
3935 YY_USER_ACTION
3936 # line 1187 "grammar.l"
3937 {
3938 #line 482 "grammar.pgs"
3939 RETURN(LEXWORD_SMANHATTEN); }
3940 YY_BREAK
3941 case 275:
3942 YY_USER_ACTION
3943 # line 1190 "grammar.l"
3944 {
3945 #line 483 "grammar.pgs"
3946 RETURN(LEXWORD_SMANHATTEN); }
3947 YY_BREAK
3948 case 276:
3949 YY_USER_ACTION
3950 # line 1193 "grammar.l"
3951 {
3952 #line 484 "grammar.pgs"
3953 RETURN(LEXWORD_SIZE); }
3954 YY_BREAK
3955 case 277:
3956 YY_USER_ACTION
3957 # line 1196 "grammar.l"
3958 {
3959 #line 485 "grammar.pgs"
3960 RETURN(LEXWORD_SMALLER); }
3961 YY_BREAK
3962 case 278:
3963 YY_USER_ACTION
3964 # line 1199 "grammar.l"
3965 {
3966 #line 486 "grammar.pgs"
3967 RETURN(LEXWORD_SOLID); }
3968 YY_BREAK
3969 case 279:
3970 YY_USER_ACTION
3971 # line 1202 "grammar.l"
3972 {
3973 #line 487 "grammar.pgs"
3974 RETURN(LEXWORD_SOURCENAME); }
3975 YY_BREAK
3976 case 280:
3977 YY_USER_ACTION
3978 # line 1205 "grammar.l"
3979 {
3980 #line 488 "grammar.pgs"
3981 RETURN(LEXWORD_SOURCENAME); }
3982 YY_BREAK
3983 case 281:
3984 YY_USER_ACTION
3985 # line 1208 "grammar.l"
3986 {
3987 #line 489 "grammar.pgs"
3988 RETURN(LEXWORD_SPLINES); }
3989 YY_BREAK
3990 case 282:
3991 YY_USER_ACTION
3992 # line 1211 "grammar.l"
3993 {
3994 #line 490 "grammar.pgs"
3995 RETURN(LEXWORD_LAYOUTSPLINEFACTOR); }
3996 YY_BREAK
3997 case 283:
3998 YY_USER_ACTION
3999 # line 1214 "grammar.l"
4000 {
4001 #line 491 "grammar.pgs"
4002 RETURN(LEXWORD_LAYOUTSPLINEFACTOR); }
4003 YY_BREAK
4004 case 284:
4005 YY_USER_ACTION
4006 # line 1217 "grammar.l"
4007 {
4008 #line 492 "grammar.pgs"
4009 RETURN(LEXWORD_SPREADLEVEL); }
4010 YY_BREAK
4011 case 285:
4012 YY_USER_ACTION
4013 # line 1220 "grammar.l"
4014 {
4015 #line 493 "grammar.pgs"
4016 RETURN(LEXWORD_SPREADLEVEL); }
4017 YY_BREAK
4018 case 286:
4019 YY_USER_ACTION
4020 # line 1223 "grammar.l"
4021 {
4022 #line 494 "grammar.pgs"
4023 RETURN(LEXWORD_STATUS); }
4024 YY_BREAK
4025 case 287:
4026 YY_USER_ACTION
4027 # line 1226 "grammar.l"
4028 {
4029 #line 495 "grammar.pgs"
4030 RETURN(LEXWORD_STRETCH); }
4031 YY_BREAK
4032 case 288:
4033 YY_USER_ACTION
4034 # line 1229 "grammar.l"
4035 {
4036 #line 496 "grammar.pgs"
4037 RETURN(LEXWORD_STRAIGHTPHASE); }
4038 YY_BREAK
4039 case 289:
4040 YY_USER_ACTION
4041 # line 1232 "grammar.l"
4042 {
4043 #line 497 "grammar.pgs"
4044 RETURN(LEXWORD_STRAIGHTPHASE); }
4045 YY_BREAK
4046 case 290:
4047 YY_USER_ACTION
4048 # line 1235 "grammar.l"
4049 {
4050 #line 498 "grammar.pgs"
4051 RETURN(LEXWORD_TARGETNAME); }
4052 YY_BREAK
4053 case 291:
4054 YY_USER_ACTION
4055 # line 1238 "grammar.l"
4056 {
4057 #line 499 "grammar.pgs"
4058 RETURN(LEXWORD_TARGETNAME); }
4059 YY_BREAK
4060 case 292:
4061 YY_USER_ACTION
4062 # line 1241 "grammar.l"
4063 {
4064 #line 500 "grammar.pgs"
4065 RETURN(LEXWORD_TEXTCOLOR); }
4066 YY_BREAK
4067 case 293:
4068 YY_USER_ACTION
4069 # line 1244 "grammar.l"
4070 {
4071 #line 501 "grammar.pgs"
4072 RETURN(LEXWORD_TEXTCOLOR); }
4073 YY_BREAK
4074 case 294:
4075 YY_USER_ACTION
4076 # line 1247 "grammar.l"
4077 {
4078 #line 502 "grammar.pgs"
4079 RETURN(LEXWORD_TEXTMODE); }
4080 YY_BREAK
4081 case 295:
4082 YY_USER_ACTION
4083 # line 1250 "grammar.l"
4084 {
4085 #line 503 "grammar.pgs"
4086 RETURN(LEXWORD_TEXTMODE); }
4087 YY_BREAK
4088 case 296:
4089 YY_USER_ACTION
4090 # line 1253 "grammar.l"
4091 {
4092 #line 504 "grammar.pgs"
4093 RETURN(LEXWORD_THICKNESS); }
4094 YY_BREAK
4095 case 297:
4096 YY_USER_ACTION
4097 # line 1256 "grammar.l"
4098 {
4099 #line 505 "grammar.pgs"
4100 RETURN(LEXWORD_TITLE); }
4101 YY_BREAK
4102 case 298:
4103 YY_USER_ACTION
4104 # line 1259 "grammar.l"
4105 {
4106 #line 506 "grammar.pgs"
4107 RETURN(LEXWORD_TOPSORT); }
4108 YY_BREAK
4109 case 299:
4110 YY_USER_ACTION
4111 # line 1262 "grammar.l"
4112 {
4113 #line 507 "grammar.pgs"
4114 RETURN(LEXWORD_TOPSORT); }
4115 YY_BREAK
4116 case 300:
4117 YY_USER_ACTION
4118 # line 1265 "grammar.l"
4119 {
4120 #line 508 "grammar.pgs"
4121 RETURN(LEXWORD_TOP_MARGIN); }
4122 YY_BREAK
4123 case 301:
4124 YY_USER_ACTION
4125 # line 1268 "grammar.l"
4126 {
4127 #line 509 "grammar.pgs"
4128 RETURN(LEXWORD_TOP_MARGIN); }
4129 YY_BREAK
4130 case 302:
4131 YY_USER_ACTION
4132 # line 1271 "grammar.l"
4133 {
4134 #line 510 "grammar.pgs"
4135 RETURN(LEXWORD_TOP_TO_BOTTOM); }
4136 YY_BREAK
4137 case 303:
4138 YY_USER_ACTION
4139 # line 1274 "grammar.l"
4140 {
4141 #line 511 "grammar.pgs"
4142 RETURN(LEXWORD_TOP_TO_BOTTOM); }
4143 YY_BREAK
4144 case 304:
4145 YY_USER_ACTION
4146 # line 1277 "grammar.l"
4147 {
4148 #line 512 "grammar.pgs"
4149 RETURN(LEXWORD_TOP); }
4150 YY_BREAK
4151 case 305:
4152 YY_USER_ACTION
4153 # line 1280 "grammar.l"
4154 {
4155 #line 513 "grammar.pgs"
4156 RETURN(LEXWORD_TREE); }
4157 YY_BREAK
4158 case 306:
4159 YY_USER_ACTION
4160 # line 1283 "grammar.l"
4161 {
4162 #line 514 "grammar.pgs"
4163 RETURN(LEXWORD_TREEFACTOR); }
4164 YY_BREAK
4165 case 307:
4166 YY_USER_ACTION
4167 # line 1286 "grammar.l"
4168 {
4169 #line 515 "grammar.pgs"
4170 RETURN(LEXWORD_TREEFACTOR); }
4171 YY_BREAK
4172 case 308:
4173 YY_USER_ACTION
4174 # line 1289 "grammar.l"
4175 {
4176 #line 516 "grammar.pgs"
4177 RETURN(LEXWORD_TRIANGLE); }
4178 YY_BREAK
4179 case 309:
4180 YY_USER_ACTION
4181 # line 1292 "grammar.l"
4182 {
4183 #line 517 "grammar.pgs"
4184 RETURN(LEXWORD_TURQUOISE); }
4185 YY_BREAK
4186 case 310:
4187 YY_USER_ACTION
4188 # line 1295 "grammar.l"
4189 {
4190 #line 518 "grammar.pgs"
4191 RETURN(LEXWORD_TYPENAME); }
4192 YY_BREAK
4193 case 311:
4194 YY_USER_ACTION
4195 # line 1298 "grammar.l"
4196 {
4197 #line 519 "grammar.pgs"
4198 RETURN(LEXWORD_TYPENAME); }
4199 YY_BREAK
4200 case 312:
4201 YY_USER_ACTION
4202 # line 1301 "grammar.l"
4203 {
4204 #line 520 "grammar.pgs"
4205 RETURN(LEXWORD_UPPER_NEIGHBOR); }
4206 YY_BREAK
4207 case 313:
4208 YY_USER_ACTION
4209 # line 1304 "grammar.l"
4210 {
4211 #line 521 "grammar.pgs"
4212 RETURN(LEXWORD_UPPER_NEIGHBOR); }
4213 YY_BREAK
4214 case 314:
4215 YY_USER_ACTION
4216 # line 1307 "grammar.l"
4217 {
4218 #line 522 "grammar.pgs"
4219 RETURN(LEXWORD_VIEW); }
4220 YY_BREAK
4221 case 315:
4222 YY_USER_ACTION
4223 # line 1310 "grammar.l"
4224 {
4225 #line 523 "grammar.pgs"
4226 RETURN(LEXWORD_WHITE); }
4227 YY_BREAK
4228 case 316:
4229 YY_USER_ACTION
4230 # line 1313 "grammar.l"
4231 {
4232 #line 524 "grammar.pgs"
4233 RETURN(LEXWORD_WIDTH); }
4234 YY_BREAK
4235 case 317:
4236 YY_USER_ACTION
4237 # line 1316 "grammar.l"
4238 {
4239 #line 525 "grammar.pgs"
4240 RETURN(LEXWORD_XBASE); }
4241 YY_BREAK
4242 case 318:
4243 YY_USER_ACTION
4244 # line 1319 "grammar.l"
4245 {
4246 #line 526 "grammar.pgs"
4247 RETURN(LEXWORD_XMAX); }
4248 YY_BREAK
4249 case 319:
4250 YY_USER_ACTION
4251 # line 1322 "grammar.l"
4252 {
4253 #line 527 "grammar.pgs"
4254 RETURN(LEXWORD_XRASTER); }
4255 YY_BREAK
4256 case 320:
4257 YY_USER_ACTION
4258 # line 1325 "grammar.l"
4259 {
4260 #line 528 "grammar.pgs"
4261 RETURN(LEXWORD_XLRASTER); }
4262 YY_BREAK
4263 case 321:
4264 YY_USER_ACTION
4265 # line 1328 "grammar.l"
4266 {
4267 #line 529 "grammar.pgs"
4268 RETURN(LEXWORD_XSCROLLBAR); }
4269 YY_BREAK
4270 case 322:
4271 YY_USER_ACTION
4272 # line 1331 "grammar.l"
4273 {
4274 #line 530 "grammar.pgs"
4275 RETURN(LEXWORD_XSPACE); }
4276 YY_BREAK
4277 case 323:
4278 YY_USER_ACTION
4279 # line 1334 "grammar.l"
4280 {
4281 #line 531 "grammar.pgs"
4282 RETURN(LEXWORD_XLSPACE); }
4283 YY_BREAK
4284 case 324:
4285 YY_USER_ACTION
4286 # line 1337 "grammar.l"
4287 {
4288 #line 532 "grammar.pgs"
4289 RETURN(LEXWORD_YBASE); }
4290 YY_BREAK
4291 case 325:
4292 YY_USER_ACTION
4293 # line 1340 "grammar.l"
4294 {
4295 #line 533 "grammar.pgs"
4296 RETURN(LEXWORD_YELLOWGREEN); }
4297 YY_BREAK
4298 case 326:
4299 YY_USER_ACTION
4300 # line 1343 "grammar.l"
4301 {
4302 #line 534 "grammar.pgs"
4303 RETURN(LEXWORD_YELLOW); }
4304 YY_BREAK
4305 case 327:
4306 YY_USER_ACTION
4307 # line 1346 "grammar.l"
4308 {
4309 #line 535 "grammar.pgs"
4310 RETURN(LEXWORD_YES); }
4311 YY_BREAK
4312 case 328:
4313 YY_USER_ACTION
4314 # line 1349 "grammar.l"
4315 {
4316 #line 536 "grammar.pgs"
4317 RETURN(LEXWORD_YMAX); }
4318 YY_BREAK
4319 case 329:
4320 YY_USER_ACTION
4321 # line 1352 "grammar.l"
4322 {
4323 #line 537 "grammar.pgs"
4324 RETURN(LEXWORD_YRASTER); }
4325 YY_BREAK
4326 case 330:
4327 YY_USER_ACTION
4328 # line 1355 "grammar.l"
4329 {
4330 #line 538 "grammar.pgs"
4331 RETURN(LEXWORD_YSCROLLBAR); }
4332 YY_BREAK
4333 case 331:
4334 YY_USER_ACTION
4335 # line 1358 "grammar.l"
4336 {
4337 #line 539 "grammar.pgs"
4338 RETURN(LEXWORD_YSPACE); }
4339 YY_BREAK
4340 case 332:
4341 YY_USER_ACTION
4342 # line 1362 "grammar.l"
4343 {
4344 #line 541 "grammar.pgs"
4345 line_directive(yytext); }
4346 YY_BREAK
4347 case 333:
4348 YY_USER_ACTION
4349 # line 1365 "grammar.l"
4350 {
4351 #line 542 "grammar.pgs"
4352 line_directive(yytext); }
4353 YY_BREAK
4354 case 334:
4355 YY_USER_ACTION
4356 # line 1368 "grammar.l"
4357 {
4358 #line 543 "grammar.pgs"
4359 /* ignore pragma directive */ }
4360 YY_BREAK
4361 case 335:
4362 YY_USER_ACTION
4363 # line 1372 "grammar.l"
4364 {
4365 #line 545 "grammar.pgs"
4366 pos_nr+=strlen(yytext); }
4367 YY_BREAK
4368 case 336:
4369 YY_USER_ACTION
4370 # line 1375 "grammar.l"
4371 {
4372 #line 546 "grammar.pgs"
4373 pos_nr++; }
4374 YY_BREAK
4375 case 337:
4376 YY_USER_ACTION
4377 # line 1378 "grammar.l"
4378 {
4379 #line 547 "grammar.pgs"
4380 line_nr++; pos_nr=1; }
4381 YY_BREAK
4382 case 338:
4383 YY_USER_ACTION
4384 # line 1382 "grammar.l"
4385 {
4386 #line 549 "grammar.pgs"
4387 yylval.lnum = long_atoi(yytext);
4388 RETURN(LEX_INT);
4389 }
4390 YY_BREAK
4391 case 339:
4392 YY_USER_ACTION
4393 # line 1387 "grammar.l"
4394 {
4395 #line 552 "grammar.pgs"
4396 yylval.lrealnum = atof(yytext);
4397 RETURN(LEX_FLOAT);
4398 }
4399 YY_BREAK
4400 case 340:
4401 YY_USER_ACTION
4402 # line 1392 "grammar.l"
4403 {
4404 #line 555 "grammar.pgs"
4405 yylval.byte = yytext[1];
4406 RETURN(LEX_CHAR);
4407 }
4408 YY_BREAK
4409 case 341:
4410 YY_USER_ACTION
4411 # line 1397 "grammar.l"
4412 {
4413 #line 558 "grammar.pgs"
4414 yytext[strlen(yytext)-1] = '\0';
4415 escape_transl(&(yytext[1]));
4416 yylval.lnum = HashInsert(&(yytext[1]));
4417 SKIPYYTEXT;
4418 RETURN(LEX_STRING);
4419 }
4420 YY_BREAK
4421 case 342:
4422 YY_USER_ACTION
4423 # line 1405 "grammar.l"
4424 {
4425 #line 564 "grammar.pgs"
4426 SKIPYYTEXT; }
4427 YY_BREAK
4428 case 343:
4429 YY_USER_ACTION
4430 # line 1408 "grammar.l"
4431 {
4432 #line 565 "grammar.pgs"
4433 SKIPYYTEXT; }
4434 YY_BREAK
4435 case 344:
4436 YY_USER_ACTION
4437 # line 1412 "grammar.l"
4438 {
4439 #line 567 "grammar.pgs"
4440 RETURN('{'); }
4441 YY_BREAK
4442 case 345:
4443 YY_USER_ACTION
4444 # line 1415 "grammar.l"
4445 {
4446 #line 568 "grammar.pgs"
4447 RETURN('}'); }
4448 YY_BREAK
4449 case 346:
4450 YY_USER_ACTION
4451 # line 1418 "grammar.l"
4452 {
4453 #line 569 "grammar.pgs"
4454 RETURN(':'); }
4455 YY_BREAK
4456 case 347:
4457 YY_USER_ACTION
4458 # line 1421 "grammar.l"
4459 {
4460 #line 570 "grammar.pgs"
4461 RETURN('x'); }
4462 YY_BREAK
4463 case 348:
4464 YY_USER_ACTION
4465 # line 1424 "grammar.l"
4466 {
4467 #line 571 "grammar.pgs"
4468 RETURN('y'); }
4469 YY_BREAK
4470 case 349:
4471 YY_USER_ACTION
4472 # line 1427 "grammar.l"
4473 {
4474 #line 572 "grammar.pgs"
4475 RETURN('z'); }
4476 YY_BREAK
4477 case 350:
4478 YY_USER_ACTION
4479 # line 1430 "grammar.l"
4480 {
4481 #line 573 "grammar.pgs"
4482 RETURN('*'); }
4483 YY_BREAK
4484 case 351:
4485 YY_USER_ACTION
4486 # line 1433 "grammar.l"
4487 {
4488 #line 574 "grammar.pgs"
4489 RETURN('['); }
4490 YY_BREAK
4491 case 352:
4492 YY_USER_ACTION
4493 # line 1436 "grammar.l"
4494 {
4495 #line 575 "grammar.pgs"
4496 RETURN(']'); }
4497 YY_BREAK
4498 case 353:
4499 YY_USER_ACTION
4500 # line 1439 "grammar.l"
4501 {
4502 #line 576 "grammar.pgs"
4503 RETURN('-'); }
4504 YY_BREAK
4505 case 354:
4506 YY_USER_ACTION
4507 # line 1445 "grammar.l"
4508 {
4509
4510
4511 #line 80 "/RW/esprit/users/sander/src/PARSEGEN/scan.skel"
4512 (void)sprintf(message,
4513 "scanner reads unexpected %c",yytext[0]);
4514 yysyntaxerror(line_nr,pos_nr,message);
4515 RETURN(' '); }
4516 YY_BREAK
4517 case 355:
4518 YY_USER_ACTION
4519 # line 1454 "grammar.l"
4520 ECHO;
4521 YY_BREAK
4522 case YY_STATE_EOF(INITIAL):
4523 yyterminate();
4524
4525 case YY_END_OF_BUFFER:
4526 {
4527 /* Amount of text matched not including the EOB char. */
4528 int yy_amount_of_matched_text = yy_cp - yytext_ptr - 1;
4529
4530 /* Undo the effects of YY_DO_BEFORE_ACTION. */
4531 *yy_cp = yy_hold_char;
4532
4533 if ( yy_current_buffer->yy_input_file != yyin )
4534 {
4535 /* This can happen if we scan a file, yywrap() returns
4536 * 1, and then later the user points yyin at a new
4537 * file to resume scanning. We have to assure
4538 * consistency between yy_current_buffer and our
4539 * globals. Here is the right place to do so, because
4540 * this is the first action (other than possibly a
4541 * back-up) that will match for the new input file.
4542 */
4543 yy_current_buffer->yy_input_file = yyin;
4544 yy_n_chars = yy_current_buffer->yy_n_chars;
4545 }
4546
4547 /* Note that here we test for yy_c_buf_p "<=" to the position
4548 * of the first EOB in the buffer, since yy_c_buf_p will
4549 * already have been incremented past the NUL character
4550 * (since all states make transitions on EOB to the
4551 * end-of-buffer state). Contrast this with the test
4552 * in input().
4553 */
4554 if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
4555 { /* This was really a NUL. */
4556 yy_state_type yy_next_state;
4557
4558 yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text;
4559
4560 yy_current_state = yy_get_previous_state();
4561
4562 /* Okay, we're now positioned to make the NUL
4563 * transition. We couldn't have
4564 * yy_get_previous_state() go ahead and do it
4565 * for us because it doesn't know how to deal
4566 * with the possibility of jamming (and we don't
4567 * want to build jamming into it because then it
4568 * will run more slowly).
4569 */
4570
4571 yy_next_state = yy_try_NUL_trans( yy_current_state );
4572
4573 yy_bp = yytext_ptr + YY_MORE_ADJ;
4574
4575 if ( yy_next_state )
4576 {
4577 /* Consume the NUL. */
4578 yy_cp = ++yy_c_buf_p;
4579 yy_current_state = yy_next_state;
4580 goto yy_match;
4581 }
4582
4583 else
4584 {
4585 goto yy_find_action;
4586 }
4587 }
4588
4589 else switch ( yy_get_next_buffer() )
4590 {
4591 case EOB_ACT_END_OF_FILE:
4592 {
4593 yy_did_buffer_switch_on_eof = 0;
4594
4595 if ( yywrap() )
4596 {
4597 /* Note: because we've taken care in
4598 * yy_get_next_buffer() to have set up
4599 * yytext, we can now set up
4600 * yy_c_buf_p so that if some total
4601 * hoser (like flex itself) wants to
4602 * call the scanner after we return the
4603 * YY_NULL, it'll still work - another
4604 * YY_NULL will get returned.
4605 */
4606 yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
4607
4608 yy_act = YY_STATE_EOF(YY_START);
4609 goto do_action;
4610 }
4611
4612 else
4613 {
4614 if ( ! yy_did_buffer_switch_on_eof )
4615 YY_NEW_FILE;
4616 }
4617 break;
4618 }
4619
4620 case EOB_ACT_CONTINUE_SCAN:
4621 yy_c_buf_p =
4622 yytext_ptr + yy_amount_of_matched_text;
4623
4624 yy_current_state = yy_get_previous_state();
4625
4626 yy_cp = yy_c_buf_p;
4627 yy_bp = yytext_ptr + YY_MORE_ADJ;
4628 goto yy_match;
4629
4630 case EOB_ACT_LAST_MATCH:
4631 yy_c_buf_p =
4632 &yy_current_buffer->yy_ch_buf[yy_n_chars];
4633
4634 yy_current_state = yy_get_previous_state();
4635
4636 yy_cp = yy_c_buf_p;
4637 yy_bp = yytext_ptr + YY_MORE_ADJ;
4638 goto yy_find_action;
4639 }
4640 break;
4641 }
4642
4643 default:
4644 YY_FATAL_ERROR(
4645 "fatal flex scanner internal error--no action found" );
4646 } /* end of action switch */
4647 } /* end of scanning one token */
4648 } /* end of yylex */
4649
4650
4651 /* yy_get_next_buffer - try to read in a new buffer
4652 *
4653 * Returns a code representing an action:
4654 * EOB_ACT_LAST_MATCH -
4655 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
4656 * EOB_ACT_END_OF_FILE - end of file
4657 */
4658
yy_get_next_buffer()4659 static int yy_get_next_buffer()
4660 {
4661 register char *dest = yy_current_buffer->yy_ch_buf;
4662 register char *source = yytext_ptr - 1; /* copy prev. char, too */
4663 register int number_to_move, i;
4664 int ret_val;
4665
4666 if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
4667 YY_FATAL_ERROR(
4668 "fatal flex scanner internal error--end of buffer missed" );
4669
4670 if ( yy_current_buffer->yy_fill_buffer == 0 )
4671 { /* Don't try to fill the buffer, so this is an EOF. */
4672 if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
4673 {
4674 /* We matched a singled characater, the EOB, so
4675 * treat this as a final EOF.
4676 */
4677 return EOB_ACT_END_OF_FILE;
4678 }
4679
4680 else
4681 {
4682 /* We matched some text prior to the EOB, first
4683 * process it.
4684 */
4685 return EOB_ACT_LAST_MATCH;
4686 }
4687 }
4688
4689 /* Try to read more data. */
4690
4691 /* First move last chars to start of buffer. */
4692 number_to_move = yy_c_buf_p - yytext_ptr;
4693
4694 for ( i = 0; i < number_to_move; ++i )
4695 *(dest++) = *(source++);
4696
4697 if ( yy_current_buffer->yy_eof_status != EOF_NOT_SEEN )
4698 /* don't do the read, it's not guaranteed to return an EOF,
4699 * just force an EOF
4700 */
4701 yy_n_chars = 0;
4702
4703 else
4704 {
4705 int num_to_read =
4706 yy_current_buffer->yy_buf_size - number_to_move - 1;
4707
4708 while ( num_to_read <= 0 )
4709 { /* Not enough room in the buffer - grow it. */
4710 #ifdef YY_USES_REJECT
4711 YY_FATAL_ERROR(
4712 "input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
4713 #else
4714
4715 /* just a shorter name for the current buffer */
4716 YY_BUFFER_STATE b = yy_current_buffer;
4717
4718 int yy_c_buf_p_offset = yy_c_buf_p - b->yy_ch_buf;
4719
4720 b->yy_buf_size *= 2;
4721 b->yy_ch_buf = (char *)
4722 yy_flex_realloc( (void *) b->yy_ch_buf,
4723 b->yy_buf_size );
4724
4725 if ( ! b->yy_ch_buf )
4726 YY_FATAL_ERROR(
4727 "fatal error - scanner input buffer overflow" );
4728
4729 yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
4730
4731 num_to_read = yy_current_buffer->yy_buf_size -
4732 number_to_move - 1;
4733 #endif
4734 }
4735
4736 if ( num_to_read > YY_READ_BUF_SIZE )
4737 num_to_read = YY_READ_BUF_SIZE;
4738
4739 /* Read in more data. */
4740 YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
4741 yy_n_chars, num_to_read );
4742 }
4743
4744 if ( yy_n_chars == 0 )
4745 {
4746 if ( number_to_move - YY_MORE_ADJ == 1 )
4747 {
4748 ret_val = EOB_ACT_END_OF_FILE;
4749 yyrestart( yyin );
4750 }
4751
4752 else
4753 {
4754 ret_val = EOB_ACT_LAST_MATCH;
4755 yy_current_buffer->yy_eof_status = EOF_PENDING;
4756 }
4757 }
4758
4759 else
4760 ret_val = EOB_ACT_CONTINUE_SCAN;
4761
4762 yy_n_chars += number_to_move;
4763 yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
4764 yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
4765
4766 /* yytext begins at the second character in yy_ch_buf; the first
4767 * character is the one which preceded it before reading in the latest
4768 * buffer; it needs to be kept around in case it's a newline, so
4769 * yy_get_previous_state() will have with '^' rules active.
4770 */
4771
4772 yytext_ptr = &yy_current_buffer->yy_ch_buf[1];
4773
4774 return ret_val;
4775 }
4776
4777
4778 /* yy_get_previous_state - get the state just before the EOB char was reached */
4779
yy_get_previous_state()4780 static yy_state_type yy_get_previous_state()
4781 {
4782 register yy_state_type yy_current_state;
4783 register char *yy_cp;
4784
4785 yy_current_state = yy_start;
4786
4787 for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
4788 {
4789 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
4790 if ( yy_accept[yy_current_state] )
4791 {
4792 yy_last_accepting_state = yy_current_state;
4793 yy_last_accepting_cpos = yy_cp;
4794 }
4795 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
4796 {
4797 yy_current_state = (int) yy_def[yy_current_state];
4798 if ( yy_current_state >= 2052 )
4799 yy_c = yy_meta[(unsigned int) yy_c];
4800 }
4801 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
4802 }
4803
4804 return yy_current_state;
4805 }
4806
4807
4808 /* yy_try_NUL_trans - try to make a transition on the NUL character
4809 *
4810 * synopsis
4811 * next_state = yy_try_NUL_trans( current_state );
4812 */
4813
4814 #ifdef YY_USE_PROTOS
yy_try_NUL_trans(yy_state_type yy_current_state)4815 static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state )
4816 #else
4817 static yy_state_type yy_try_NUL_trans( yy_current_state )
4818 yy_state_type yy_current_state;
4819 #endif
4820 {
4821 register int yy_is_jam;
4822 register char *yy_cp = yy_c_buf_p;
4823
4824 register YY_CHAR yy_c = 1;
4825 if ( yy_accept[yy_current_state] )
4826 {
4827 yy_last_accepting_state = yy_current_state;
4828 yy_last_accepting_cpos = yy_cp;
4829 }
4830 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
4831 {
4832 yy_current_state = (int) yy_def[yy_current_state];
4833 if ( yy_current_state >= 2052 )
4834 yy_c = yy_meta[(unsigned int) yy_c];
4835 }
4836 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
4837 yy_is_jam = (yy_current_state == 2051);
4838
4839 return yy_is_jam ? 0 : yy_current_state;
4840 }
4841
4842
4843 #ifdef YY_USE_PROTOS
yyunput(int c,register char * yy_bp)4844 static void yyunput( int c, register char *yy_bp )
4845 #else
4846 static void yyunput( c, yy_bp )
4847 int c;
4848 register char *yy_bp;
4849 #endif
4850 {
4851 register char *yy_cp = yy_c_buf_p;
4852
4853 /* undo effects of setting up yytext */
4854 *yy_cp = yy_hold_char;
4855
4856 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
4857 { /* need to shift things up to make room */
4858 /* +2 for EOB chars. */
4859 register int number_to_move = yy_n_chars + 2;
4860 register char *dest = &yy_current_buffer->yy_ch_buf[
4861 yy_current_buffer->yy_buf_size + 2];
4862 register char *source =
4863 &yy_current_buffer->yy_ch_buf[number_to_move];
4864
4865 while ( source > yy_current_buffer->yy_ch_buf )
4866 *--dest = *--source;
4867
4868 yy_cp += dest - source;
4869 yy_bp += dest - source;
4870 yy_n_chars = yy_current_buffer->yy_buf_size;
4871
4872 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
4873 YY_FATAL_ERROR( "flex scanner push-back overflow" );
4874 }
4875
4876 if ( yy_cp > yy_bp && yy_cp[-1] == '\n' )
4877 yy_cp[-2] = '\n';
4878
4879 *--yy_cp = (char) c;
4880
4881
4882 /* Note: the formal parameter *must* be called "yy_bp" for this
4883 * macro to now work correctly.
4884 */
4885 YY_DO_BEFORE_ACTION; /* set up yytext again */
4886 }
4887
4888
4889 #ifdef __cplusplus
yyinput()4890 static int yyinput()
4891 #else
4892 static int input()
4893 #endif
4894 {
4895 int c;
4896
4897 *yy_c_buf_p = yy_hold_char;
4898
4899 if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
4900 {
4901 /* yy_c_buf_p now points to the character we want to return.
4902 * If this occurs *before* the EOB characters, then it's a
4903 * valid NUL; if not, then we've hit the end of the buffer.
4904 */
4905 if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )
4906 /* This was really a NUL. */
4907 *yy_c_buf_p = '\0';
4908
4909 else
4910 { /* need more input */
4911 yytext_ptr = yy_c_buf_p;
4912 ++yy_c_buf_p;
4913
4914 switch ( yy_get_next_buffer() )
4915 {
4916 case EOB_ACT_END_OF_FILE:
4917 {
4918 if ( yywrap() )
4919 {
4920 yy_c_buf_p =
4921 yytext_ptr + YY_MORE_ADJ;
4922 return EOF;
4923 }
4924
4925 YY_NEW_FILE;
4926 #ifdef __cplusplus
4927 return yyinput();
4928 #else
4929 return input();
4930 #endif
4931 }
4932
4933 case EOB_ACT_CONTINUE_SCAN:
4934 yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
4935 break;
4936
4937 case EOB_ACT_LAST_MATCH:
4938 #ifdef __cplusplus
4939 YY_FATAL_ERROR(
4940 "unexpected last match in yyinput()" );
4941 #else
4942 YY_FATAL_ERROR(
4943 "unexpected last match in input()" );
4944 #endif
4945 }
4946 }
4947 }
4948
4949 c = *yy_c_buf_p;
4950 *yy_c_buf_p = '\0'; /* preserve yytext */
4951 yy_hold_char = *++yy_c_buf_p;
4952
4953 return c;
4954 }
4955
4956
4957 #ifdef YY_USE_PROTOS
yyrestart(FILE * input_file)4958 void yyrestart( FILE *input_file )
4959 #else
4960 void yyrestart( input_file )
4961 FILE *input_file;
4962 #endif
4963 {
4964 if ( ! yy_current_buffer )
4965 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE );
4966
4967 yy_init_buffer( yy_current_buffer, input_file );
4968 yy_load_buffer_state();
4969 }
4970
4971
4972 #ifdef YY_USE_PROTOS
yy_switch_to_buffer(YY_BUFFER_STATE new_buffer)4973 void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer )
4974 #else
4975 void yy_switch_to_buffer( new_buffer )
4976 YY_BUFFER_STATE new_buffer;
4977 #endif
4978 {
4979 if ( yy_current_buffer == new_buffer )
4980 return;
4981
4982 if ( yy_current_buffer )
4983 {
4984 /* Flush out information for old buffer. */
4985 *yy_c_buf_p = yy_hold_char;
4986 yy_current_buffer->yy_buf_pos = yy_c_buf_p;
4987 yy_current_buffer->yy_n_chars = yy_n_chars;
4988 }
4989
4990 yy_current_buffer = new_buffer;
4991 yy_load_buffer_state();
4992
4993 /* We don't actually know whether we did this switch during
4994 * EOF (yywrap()) processing, but the only time this flag
4995 * is looked at is after yywrap() is called, so it's safe
4996 * to go ahead and always set it.
4997 */
4998 yy_did_buffer_switch_on_eof = 1;
4999 }
5000
5001
5002 #ifdef YY_USE_PROTOS
yy_load_buffer_state(void)5003 void yy_load_buffer_state( void )
5004 #else
5005 void yy_load_buffer_state()
5006 #endif
5007 {
5008 yy_n_chars = yy_current_buffer->yy_n_chars;
5009 yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos;
5010 yyin = yy_current_buffer->yy_input_file;
5011 yy_hold_char = *yy_c_buf_p;
5012 }
5013
5014
5015 #ifdef YY_USE_PROTOS
yy_create_buffer(FILE * file,int size)5016 YY_BUFFER_STATE yy_create_buffer( FILE *file, int size )
5017 #else
5018 YY_BUFFER_STATE yy_create_buffer( file, size )
5019 FILE *file;
5020 int size;
5021 #endif
5022 {
5023 YY_BUFFER_STATE b;
5024
5025 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
5026
5027 if ( ! b )
5028 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
5029
5030 b->yy_buf_size = size;
5031
5032 /* yy_ch_buf has to be 2 characters longer than the size given because
5033 * we need to put in 2 end-of-buffer characters.
5034 */
5035 b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );
5036
5037 if ( ! b->yy_ch_buf )
5038 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
5039
5040 yy_init_buffer( b, file );
5041
5042 return b;
5043 }
5044
5045
5046 #ifdef YY_USE_PROTOS
yy_delete_buffer(YY_BUFFER_STATE b)5047 void yy_delete_buffer( YY_BUFFER_STATE b )
5048 #else
5049 void yy_delete_buffer( b )
5050 YY_BUFFER_STATE b;
5051 #endif
5052 {
5053 if ( b == yy_current_buffer )
5054 yy_current_buffer = (YY_BUFFER_STATE) 0;
5055
5056 yy_flex_free( (void *) b->yy_ch_buf );
5057 yy_flex_free( (void *) b );
5058 }
5059
5060
5061 #ifdef YY_USE_PROTOS
yy_init_buffer(YY_BUFFER_STATE b,FILE * file)5062 void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
5063 #else
5064 void yy_init_buffer( b, file )
5065 YY_BUFFER_STATE b;
5066 FILE *file;
5067 #endif
5068 {
5069 b->yy_input_file = file;
5070
5071 /* We put in the '\n' and start reading from [1] so that an
5072 * initial match-at-newline will be true.
5073 */
5074
5075 b->yy_ch_buf[0] = '\n';
5076 b->yy_n_chars = 1;
5077
5078 /* We always need two end-of-buffer characters. The first causes
5079 * a transition to the end-of-buffer state. The second causes
5080 * a jam in that state.
5081 */
5082 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
5083 b->yy_ch_buf[2] = YY_END_OF_BUFFER_CHAR;
5084
5085 b->yy_buf_pos = &b->yy_ch_buf[1];
5086
5087 b->yy_is_interactive = file ? isatty( fileno(file) ) : 0;
5088
5089 b->yy_fill_buffer = 1;
5090
5091 b->yy_eof_status = EOF_NOT_SEEN;
5092 }
5093
5094
5095 #ifdef YY_USE_PROTOS
yy_push_state(int new_state)5096 static void yy_push_state( int new_state )
5097 #else
5098 static void yy_push_state( new_state )
5099 int new_state;
5100 #endif
5101 {
5102 if ( yy_start_stack_ptr >= yy_start_stack_depth )
5103 {
5104 int new_size;
5105
5106 yy_start_stack_depth += YY_START_STACK_INCR;
5107 new_size = yy_start_stack_depth * sizeof( int );
5108
5109 if ( ! yy_start_stack )
5110 yy_start_stack = (int *) yy_flex_alloc( new_size );
5111
5112 else
5113 yy_start_stack = (int *) yy_flex_realloc(
5114 (void *) yy_start_stack, new_size );
5115
5116 if ( ! yy_start_stack )
5117 YY_FATAL_ERROR(
5118 "out of memory expanding start-condition stack" );
5119 }
5120
5121 yy_start_stack[yy_start_stack_ptr++] = YY_START;
5122
5123 BEGIN(new_state);
5124 }
5125
5126
yy_pop_state()5127 static void yy_pop_state()
5128 {
5129 if ( --yy_start_stack_ptr < 0 )
5130 YY_FATAL_ERROR( "start-condition stack underflow" );
5131
5132 BEGIN(yy_start_stack[yy_start_stack_ptr]);
5133 }
5134
5135
yy_top_state()5136 static int yy_top_state()
5137 {
5138 return yy_start_stack[yy_start_stack_ptr - 1];
5139 }
5140
5141
5142 #ifdef YY_USE_PROTOS
yy_fatal_error(const char msg[])5143 static void yy_fatal_error( const char msg[] )
5144 #else
5145 static void yy_fatal_error( msg )
5146 char msg[];
5147 #endif
5148 {
5149 (void) fprintf( stderr, "%s\n", msg );
5150 exit( 1 );
5151 }
5152
5153
5154
5155 /* Redefine yyless() so it works in section 3 code. */
5156
5157 #undef yyless
5158 #define yyless(n) \
5159 do \
5160 { \
5161 /* Undo effects of setting up yytext. */ \
5162 yytext[yyleng] = yy_hold_char; \
5163 yy_c_buf_p = yytext + n - YY_MORE_ADJ; \
5164 yy_hold_char = *yy_c_buf_p; \
5165 *yy_c_buf_p = '\0'; \
5166 yyleng = n; \
5167 } \
5168 while ( 0 )
5169
5170
5171 /* Internal utility routines. */
5172
5173 #ifndef yytext_ptr
5174 #ifdef YY_USE_PROTOS
yy_flex_strcpy(char * s1,const char * s2)5175 static void yy_flex_strcpy( char *s1, const char *s2 )
5176 #else
5177 static void yy_flex_strcpy( s1, s2 )
5178 char *s1;
5179 const char *s2;
5180 #endif
5181 {
5182 while ( (*(s1++) = *(s2++)) )
5183 ;
5184 }
5185 #endif
5186
5187
5188 #ifdef YY_USE_PROTOS
yy_flex_alloc(unsigned int size)5189 static void *yy_flex_alloc( unsigned int size )
5190 #else
5191 static void *yy_flex_alloc( size )
5192 unsigned int size;
5193 #endif
5194 {
5195 return (void *) malloc( size );
5196 }
5197
5198 #ifdef YY_USE_PROTOS
yy_flex_realloc(void * ptr,unsigned int size)5199 static void *yy_flex_realloc( void *ptr, unsigned int size )
5200 #else
5201 static void *yy_flex_realloc( ptr, size )
5202 void *ptr;
5203 unsigned int size;
5204 #endif
5205 {
5206 return (void *) realloc( ptr, size );
5207 }
5208
5209 #ifdef YY_USE_PROTOS
yy_flex_free(void * ptr)5210 static void yy_flex_free( void *ptr )
5211 #else
5212 static void yy_flex_free( ptr )
5213 void *ptr;
5214 #endif
5215 {
5216 free( ptr );
5217 }
5218 # line 1454 "grammar.l"
5219
5220
5221
5222
5223 #line 88 "/RW/esprit/users/sander/src/PARSEGEN/scan.skel"
5224
5225 /*--------------------------------------------------------------------*/
5226 /* Initialize scanner */
5227 /*--------------------------------------------------------------------*/
5228
5229 #ifdef ANSI_C
init_lex(void)5230 void init_lex(void)
5231 #else
5232 void init_lex()
5233 #endif
5234 {
5235 yy_init = 1;
5236 }
5237
5238
5239
5240 #line 1 "/RW/esprit/users/sander/src/PARSEGEN/stdtc.skel"
5241
5242 /*--------------------------------------------------------------------*/
5243 /* Standard Hash Table Routines */
5244 /*--------------------------------------------------------------------*/
5245
5246 #ifdef HASHGENSTD
5247
5248 #ifndef lint
5249 static char *stdtc_id_string="$Id: stdtc.skel,v 1.7 1994/11/25 17:23:13 sander Exp sander $";
5250 #endif
5251
5252
5253 #include <stdio.h>
5254 #include <string.h>
5255 #include <stdlib.h>
5256
5257 /* Global Variables */
5258 /*------------------*/
5259
5260 static char **decode = NULL;
5261 long table_size = 0L;
5262
5263 /*--------------------------------------------------------------------*/
5264 /* Fatal error: exit with message */
5265 /*--------------------------------------------------------------------*/
5266
5267 #ifdef ANSI_C
fatal_error(char * message)5268 static void fatal_error(char *message)
5269 #else
5270 static void fatal_error(message)
5271 char *message;
5272 #endif
5273 {
5274 (void)fprintf(stderr,"Fatal error: %s !\n",message);
5275 (void)fprintf(stderr,"Aborted !\n");
5276 exit(-1);
5277 }
5278
5279
5280 /*--------------------------------------------------------------------*/
5281 /* Memory allocation for single strings */
5282 /*--------------------------------------------------------------------*/
5283
5284 #ifndef ALIGN
5285 #define ALIGN 8
5286 #define IALIGN (ALIGN-1)
5287 #endif
5288
5289 #ifndef STRINGBLOCKSIZE
5290 #define STRINGBLOCKSIZE 5000
5291 #endif
5292
5293
5294 #ifndef PARSEGENSTD
5295
5296 /* If we include already the standard parser library, this is not
5297 * necessary
5298 */
5299
5300
5301 static char *parseheap = (char *)0; /* the heap */
5302 static char *parseheapstart; /* the base */
5303 static char *parseheaptop; /* the top */
5304 static char *parseheapend; /* the end */
5305 static int parseheapsize = STRINGBLOCKSIZE; /* the size of one block */
5306
5307
5308 #ifdef ANSI_C
alloc_block(void)5309 static void alloc_block(void)
5310 #else
5311 static void alloc_block()
5312 #endif
5313 {
5314 char * help, *help2;
5315
5316 help =(char *)malloc(parseheapsize*sizeof(long));
5317 if (!help) fatal_error("memory exhausted");
5318 help2 = (char **)help;
5319 *help2 = (char *)parseheap;
5320 parseheap = help;
5321 parseheapstart = parseheaptop =
5322 (char *)((long)parseheap + (long)sizeof(char *));
5323 parseheapend = parseheap;
5324 parseheapend += (parseheapsize-2);
5325 if ((long)parseheaptop&IALIGN)
5326 parseheaptop = (char *)
5327 (((long)parseheaptop+(long)IALIGN)&(long)(~IALIGN));
5328 }
5329
5330
5331 /* allocate x bytes */
5332
5333 #ifdef ANSI_C
ParseMalloc(int x)5334 static char * ParseMalloc(int x)
5335 #else
5336 static char * ParseMalloc(x)
5337 int x;
5338 #endif
5339 {
5340 char * help;
5341 int y;
5342
5343 if (!parseheap) alloc_block();
5344
5345 y = x;
5346 if (y&IALIGN) y = (y+IALIGN)&(~IALIGN);
5347
5348 help = parseheaptop;
5349 parseheaptop = (char *)((long)parseheaptop+(long)y);
5350
5351 if (parseheaptop > parseheapend) {
5352
5353 /* heap too small -> allocate new heap block */
5354
5355 alloc_block();
5356 help = parseheaptop;
5357 parseheaptop = (char *)((long)parseheaptop+(long)y);
5358 if (parseheaptop > parseheapend)
5359 fatal_error("string node too large");
5360 }
5361 return (help);
5362 }
5363
5364
5365 /* Global: allocate x bytes */
5366
5367 #ifdef ANSI_C
StringHeapMalloc(int x)5368 char *StringHeapMalloc(int x)
5369 #else
5370 char *StringHeapMalloc(x)
5371 int x;
5372 #endif
5373 {
5374 return(ParseMalloc(x));
5375 }
5376
5377
5378 /* global deallocate the complete syntax tree heap */
5379
5380 #ifdef ANSI_C
StringHeapFree(void)5381 void StringHeapFree(void)
5382 #else
5383 void StringHeapFree()
5384 #endif
5385 {
5386 char *help, help2;
5387
5388 help = parseheap;
5389 while (help) {
5390 help2 = *(char **)help;
5391 (void)free(help);
5392 help = help2;
5393 }
5394
5395 parseheap = (char *)0;
5396 }
5397
5398 #endif /* PARSEGENSTD */
5399
5400
5401 /*--------------------------------------------------------------------*/
5402 /* Memory allocation for decode table and hash table */
5403 /*--------------------------------------------------------------------*/
5404
5405 #ifndef hash_size
5406 #define hash_size 211
5407 #endif
5408 #ifndef hashtable_size
5409 #define hashtable_size 10000L
5410 #endif
5411
5412 /* We use a hash table with linked lists */
5413
5414 typedef struct hash_node {
5415 long num;
5416 struct hash_node *next;
5417 } *hashentry;
5418
5419
5420 /* The hash table */
5421
5422 static hashentry *hashtable = NULL;
5423 static long hashtop = 1;
5424
5425 #ifdef ANSI_C
init_hash(void)5426 static void init_hash(void)
5427 #else
5428 static void init_hash()
5429 #endif
5430 {
5431 char *h;
5432
5433 if (!hashtable) {
5434
5435 /* no hash table present -> allocate table */
5436
5437 hashtable = (hashentry *)
5438 calloc((size_t) (hash_size+1),
5439 sizeof(hashentry));
5440 if (!hashtable) fatal_error("memory exhausted");
5441 }
5442
5443 if (!decode) {
5444
5445 /* no decode table present -> allocate table */
5446
5447 hashtop = 1;
5448 table_size = hashtable_size;
5449 decode = (char **)
5450 calloc((size_t) (table_size+1L),
5451 sizeof(char *));
5452 if (!decode) fatal_error("memory exhausted");
5453 h = ParseMalloc(strlen("$!+-#Start of Hash#+-!$")+1);
5454 decode[0] = strcpy(h,"$!+-#Start of Hash#+-!$");
5455 }
5456 }
5457
5458
5459 #ifdef ANSI_C
increase_decode(void)5460 static void increase_decode(void)
5461 #else
5462 static void increase_decode()
5463 #endif
5464 {
5465 char **help,**a,**b;
5466 long mysize, j;
5467
5468 mysize = table_size * 2L;
5469 help = (char **) calloc((size_t) (mysize+1), sizeof(char *));
5470 if (!help) fatal_error("memory exhausted");
5471
5472 a = help;
5473 b = decode;
5474 for (j=0; j<table_size; j++) *a++ = *b++;
5475 if (decode) (void)free((char *)decode);
5476
5477 decode = help;
5478 table_size = mysize;
5479 }
5480
5481 #ifdef ANSI_C
FreeHash(void)5482 void FreeHash(void)
5483 #else
5484 void FreeHash()
5485 #endif
5486 {
5487 if (decode) (void)free((char *)decode);
5488 decode = (char **)0;
5489 if (hashtable) (void)free((char *)hashtable);
5490 hashtable = (hashentry *)0;
5491 }
5492
5493
5494 /*--------------------------------------------------------------------*/
5495 /* Hash table for identifers and strings */
5496 /*--------------------------------------------------------------------*/
5497
5498
5499 /* the hash function */
5500
5501 #ifdef ANSI_C
hash(register char * string)5502 static int hash(register char *string)
5503 #else
5504 static int hash(string)
5505 char *string;
5506 #endif
5507 {
5508 register int hashval = 0 ;
5509 register char *s = string;
5510
5511 for(hashval=0; *s != '\0';)
5512 hashval = (10*hashval - 48 + *s++) % hash_size;
5513 hashval = ((hashval<0 ) ? -hashval : hashval);
5514
5515 return(hashval % hash_size);
5516 /* Modulo calculation because of table range */
5517 }
5518
5519
5520
5521 /*--------------------------------------------------------------------*/
5522 /* Hash table: visible from outside */
5523 /*--------------------------------------------------------------------*/
5524
5525 #ifdef ANSI_C
HashInsert(register char * s)5526 long HashInsert(register char *s)
5527 #else
5528 long HashInsert(s)
5529 char *s;
5530 #endif
5531 {
5532 register hashentry new_node;
5533 register int hashval;
5534 register long look;
5535 char *h;
5536
5537 if (!hashtable) init_hash();
5538
5539 hashval = hash(s);
5540 new_node = hashtable[hashval];
5541 look = -1L;
5542 while (new_node != NULL) {
5543 if ( strcmp(s,decode[new_node->num]) == 0L) {
5544 look = new_node->num;
5545 break;
5546 }
5547 new_node=new_node->next;
5548 }
5549
5550 if (look == -1L) {
5551 if (hashtop == table_size-1) increase_decode();
5552 new_node = (hashentry)ParseMalloc(sizeof(struct hash_node));
5553 look = hashtop++;
5554 new_node->num = look;
5555 new_node->next = hashtable[hashval];
5556
5557 h = ParseMalloc(strlen(s)+1);
5558 decode[look] = strcpy(h,s);
5559 hashtable[hashval] = new_node;
5560 }
5561 return(look);
5562 }
5563
5564 #ifdef ANSI_C
HashTableSize(void)5565 long HashTableSize(void)
5566 #else
5567 long HashTableSize()
5568 #endif
5569 {
5570 if (!hashtable) init_hash();
5571 return(hashtop);
5572 }
5573
5574 #ifdef ANSI_C
Decode(long x)5575 char *Decode(long x)
5576 #else
5577 char *Decode(x)
5578 long x;
5579 #endif
5580 {
5581 if (!hashtable) init_hash();
5582 if (x<0) return(decode[0]);
5583 if (x<hashtop) return(decode[x]);
5584 return(decode[0]);
5585 }
5586
5587
5588 #endif /* HASHGENSTD */
5589
5590 /*--------------------------------------------------------------------*/
5591
5592
5593
5594
5595 #line 580 "grammar.pgs"
5596