blob: 3a8652ed150f4b42cea39d405556e467a5e460e1 [file] [log] [blame]
Reid Spencer68a24bd2005-08-27 18:50:39 +00001#define yy_create_buffer Config_create_buffer
2#define yy_delete_buffer Config_delete_buffer
3#define yy_scan_buffer Config_scan_buffer
4#define yy_scan_string Config_scan_string
5#define yy_scan_bytes Config_scan_bytes
6#define yy_flex_debug Config_flex_debug
7#define yy_init_buffer Config_init_buffer
8#define yy_flush_buffer Config_flush_buffer
9#define yy_load_buffer_state Config_load_buffer_state
10#define yy_switch_to_buffer Config_switch_to_buffer
11#define yyin Configin
12#define yyleng Configleng
13#define yylex Configlex
14#define yyout Configout
15#define yyrestart Configrestart
16#define yytext Configtext
17
18#line 19 "ConfigLexer.cpp"
19/* A lexical scanner generated by flex */
20
21/* Scanner skeleton version:
22 * $Header$
23 */
24
25#define FLEX_SCANNER
26#define YY_FLEX_MAJOR_VERSION 2
27#define YY_FLEX_MINOR_VERSION 5
28
29#include <stdio.h>
30#include <unistd.h>
31
32
33/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
34#ifdef c_plusplus
35#ifndef __cplusplus
36#define __cplusplus
37#endif
38#endif
39
40
41#ifdef __cplusplus
42
43#include <stdlib.h>
44
45/* Use prototypes in function declarations. */
46#define YY_USE_PROTOS
47
48/* The "const" storage-class-modifier is valid. */
49#define YY_USE_CONST
50
51#else /* ! __cplusplus */
52
53#if __STDC__
54
55#define YY_USE_PROTOS
56#define YY_USE_CONST
57
58#endif /* __STDC__ */
59#endif /* ! __cplusplus */
60
61#ifdef __TURBOC__
62 #pragma warn -rch
63 #pragma warn -use
64#include <io.h>
65#include <stdlib.h>
66#define YY_USE_CONST
67#define YY_USE_PROTOS
68#endif
69
70#ifdef YY_USE_CONST
71#define yyconst const
72#else
73#define yyconst
74#endif
75
76
77#ifdef YY_USE_PROTOS
78#define YY_PROTO(proto) proto
79#else
80#define YY_PROTO(proto) ()
81#endif
82
83/* Returned upon end-of-file. */
84#define YY_NULL 0
85
86/* Promotes a possibly negative, possibly signed char to an unsigned
87 * integer for use as an array index. If the signed char is negative,
88 * we want to instead treat it as an 8-bit unsigned char, hence the
89 * double cast.
90 */
91#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
92
93/* Enter a start condition. This macro really ought to take a parameter,
94 * but we do it the disgusting crufty way forced on us by the ()-less
95 * definition of BEGIN.
96 */
97#define BEGIN yy_start = 1 + 2 *
98
99/* Translate the current start state into a value that can be later handed
100 * to BEGIN to return to the state. The YYSTATE alias is for lex
101 * compatibility.
102 */
103#define YY_START ((yy_start - 1) / 2)
104#define YYSTATE YY_START
105
106/* Action number for EOF rule of a given start state. */
107#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
108
109/* Special action meaning "start processing a new file". */
110#define YY_NEW_FILE yyrestart( yyin )
111
112#define YY_END_OF_BUFFER_CHAR 0
113
114/* Size of default input buffer. */
115#define YY_BUF_SIZE (16384*64)
116
117typedef struct yy_buffer_state *YY_BUFFER_STATE;
118
119extern int yyleng;
120extern FILE *yyin, *yyout;
121
122#define EOB_ACT_CONTINUE_SCAN 0
123#define EOB_ACT_END_OF_FILE 1
124#define EOB_ACT_LAST_MATCH 2
125
126/* The funky do-while in the following #define is used to turn the definition
127 * int a single C statement (which needs a semi-colon terminator). This
128 * avoids problems with code like:
129 *
130 * if ( condition_holds )
131 * yyless( 5 );
132 * else
133 * do_something_else();
134 *
135 * Prior to using the do-while the compiler would get upset at the
136 * "else" because it interpreted the "if" statement as being all
137 * done when it reached the ';' after the yyless() call.
138 */
139
140/* Return all but the first 'n' matched characters back to the input stream. */
141
142#define yyless(n) \
143 do \
144 { \
145 /* Undo effects of setting up yytext. */ \
146 *yy_cp = yy_hold_char; \
147 YY_RESTORE_YY_MORE_OFFSET \
148 yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \
149 YY_DO_BEFORE_ACTION; /* set up yytext again */ \
150 } \
151 while ( 0 )
152
153#define unput(c) yyunput( c, yytext_ptr )
154
155/* The following is because we cannot portably get our hands on size_t
156 * (without autoconf's help, which isn't available because we want
157 * flex-generated scanners to compile on their own).
158 */
159typedef unsigned int yy_size_t;
160
161
162struct yy_buffer_state
163 {
164 FILE *yy_input_file;
165
166 char *yy_ch_buf; /* input buffer */
167 char *yy_buf_pos; /* current position in input buffer */
168
169 /* Size of input buffer in bytes, not including room for EOB
170 * characters.
171 */
172 yy_size_t yy_buf_size;
173
174 /* Number of characters read into yy_ch_buf, not including EOB
175 * characters.
176 */
177 int yy_n_chars;
178
179 /* Whether we "own" the buffer - i.e., we know we created it,
180 * and can realloc() it to grow it, and should free() it to
181 * delete it.
182 */
183 int yy_is_our_buffer;
184
185 /* Whether this is an "interactive" input source; if so, and
186 * if we're using stdio for input, then we want to use getc()
187 * instead of fread(), to make sure we stop fetching input after
188 * each newline.
189 */
190 int yy_is_interactive;
191
192 /* Whether we're considered to be at the beginning of a line.
193 * If so, '^' rules will be active on the next match, otherwise
194 * not.
195 */
196 int yy_at_bol;
197
198 /* Whether to try to fill the input buffer when we reach the
199 * end of it.
200 */
201 int yy_fill_buffer;
202
203 int yy_buffer_status;
204#define YY_BUFFER_NEW 0
205#define YY_BUFFER_NORMAL 1
206 /* When an EOF's been seen but there's still some text to process
207 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
208 * shouldn't try reading from the input source any more. We might
209 * still have a bunch of tokens to match, though, because of
210 * possible backing-up.
211 *
212 * When we actually see the EOF, we change the status to "new"
213 * (via yyrestart()), so that the user can continue scanning by
214 * just pointing yyin at a new input file.
215 */
216#define YY_BUFFER_EOF_PENDING 2
217 };
218
219static YY_BUFFER_STATE yy_current_buffer = 0;
220
221/* We provide macros for accessing buffer states in case in the
222 * future we want to put the buffer states in a more general
223 * "scanner state".
224 */
225#define YY_CURRENT_BUFFER yy_current_buffer
226
227
228/* yy_hold_char holds the character lost when yytext is formed. */
229static char yy_hold_char;
230
231static int yy_n_chars; /* number of characters read into yy_ch_buf */
232
233
234int yyleng;
235
236/* Points to current character in buffer. */
237static char *yy_c_buf_p = (char *) 0;
238static int yy_init = 1; /* whether we need to initialize */
239static int yy_start = 0; /* start state number */
240
241/* Flag which is used to allow yywrap()'s to do buffer switches
242 * instead of setting up a fresh yyin. A bit of a hack ...
243 */
244static int yy_did_buffer_switch_on_eof;
245
246void yyrestart YY_PROTO(( FILE *input_file ));
247
248void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));
249void yy_load_buffer_state YY_PROTO(( void ));
250YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));
251void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));
252void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));
253void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b ));
254#define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer )
255
256YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size ));
257YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str ));
258YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));
259
260static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
261static inline void *yy_flex_realloc YY_PROTO(( void *, yy_size_t ));
262static void yy_flex_free YY_PROTO(( void * ));
263
264#define yy_new_buffer yy_create_buffer
265
266#define yy_set_interactive(is_interactive) \
267 { \
268 if ( ! yy_current_buffer ) \
269 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
270 yy_current_buffer->yy_is_interactive = is_interactive; \
271 }
272
273#define yy_set_bol(at_bol) \
274 { \
275 if ( ! yy_current_buffer ) \
276 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
277 yy_current_buffer->yy_at_bol = at_bol; \
278 }
279
280#define YY_AT_BOL() (yy_current_buffer->yy_at_bol)
281
282
283#define yywrap() 1
284#define YY_SKIP_YYWRAP
285typedef unsigned char YY_CHAR;
286FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
287typedef int yy_state_type;
288extern char *yytext;
289#define yytext_ptr yytext
290
291static yy_state_type yy_get_previous_state YY_PROTO(( void ));
292static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
293static int yy_get_next_buffer YY_PROTO(( void ));
294static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
295
296/* Done after the current pattern has been matched and before the
297 * corresponding action - sets up yytext.
298 */
299#define YY_DO_BEFORE_ACTION \
300 yytext_ptr = yy_bp; \
301 yyleng = (int) (yy_cp - yy_bp); \
302 yy_hold_char = *yy_cp; \
303 *yy_cp = '\0'; \
304 yy_c_buf_p = yy_cp;
305
306#define YY_NUM_RULES 55
307#define YY_END_OF_BUFFER 56
308static yyconst short int yy_accept[411] =
309 { 0,
310 1, 1, 56, 55, 1, 4, 55, 55, 55, 52,
311 52, 6, 5, 52, 52, 52, 52, 52, 52, 52,
312 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
313 52, 52, 52, 52, 52, 52, 52, 52, 1, 4,
314 0, 53, 0, 2, 0, 54, 52, 52, 52, 52,
315 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
316 52, 52, 49, 52, 52, 52, 52, 52, 52, 52,
317 52, 52, 52, 52, 51, 52, 52, 50, 52, 52,
318 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
319 52, 52, 52, 3, 0, 52, 52, 52, 52, 52,
320
321 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
322 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
323 52, 52, 52, 52, 52, 48, 52, 52, 52, 52,
324 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
325 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
326 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
327 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
328 52, 52, 52, 52, 52, 52, 52, 29, 52, 52,
329 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
330 52, 52, 52, 52, 52, 8, 9, 52, 52, 10,
331
332 11, 12, 13, 14, 15, 52, 52, 52, 52, 52,
333 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
334 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
335 52, 52, 52, 52, 52, 52, 52, 52, 39, 40,
336 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
337 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
338 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
339 52, 52, 52, 52, 52, 52, 26, 52, 28, 52,
340 52, 52, 32, 52, 52, 52, 52, 43, 52, 52,
341 52, 52, 52, 52, 52, 25, 52, 21, 52, 52,
342
343 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
344 52, 52, 52, 52, 52, 46, 47, 52, 45, 30,
345 52, 52, 52, 52, 41, 52, 52, 52, 52, 52,
346 52, 17, 52, 52, 52, 52, 52, 52, 52, 52,
347 7, 52, 52, 52, 52, 52, 52, 27, 31, 52,
348 52, 52, 42, 52, 52, 52, 52, 52, 52, 52,
349 18, 52, 52, 52, 52, 52, 52, 37, 52, 35,
350 52, 52, 36, 44, 24, 22, 52, 52, 52, 52,
351 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
352 23, 19, 52, 52, 52, 52, 52, 52, 52, 52,
353
354 52, 52, 52, 52, 33, 20, 16, 38, 34, 0
355 } ;
356
357static yyconst int yy_ec[256] =
358 { 0,
359 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
360 1, 1, 4, 1, 1, 1, 1, 1, 1, 1,
361 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
362 1, 2, 1, 5, 6, 1, 7, 1, 1, 1,
363 1, 1, 8, 8, 8, 9, 8, 8, 10, 11,
364 12, 13, 14, 8, 8, 8, 8, 8, 1, 1,
365 15, 1, 1, 16, 17, 18, 19, 20, 21, 22,
366 23, 24, 25, 24, 26, 27, 28, 29, 30, 31,
367 32, 33, 34, 35, 36, 37, 38, 24, 39, 40,
368 1, 41, 1, 1, 8, 1, 42, 43, 44, 45,
369
370 46, 47, 48, 49, 50, 24, 51, 52, 53, 54,
371 55, 56, 57, 58, 59, 60, 61, 62, 24, 63,
372 64, 65, 1, 8, 1, 1, 1, 1, 1, 1,
373 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
374 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
375 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
376 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
377 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
378 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
379 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
380
381 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
382 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
383 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
384 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
385 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
386 1, 1, 1, 1, 1
387 } ;
388
389static yyconst int yy_meta[66] =
390 { 0,
391 1, 1, 1, 1, 1, 1, 2, 3, 1, 3,
392 3, 3, 3, 3, 1, 3, 3, 3, 3, 3,
393 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
394 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
395 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
396 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
397 3, 3, 3, 3, 3
398 } ;
399
400static yyconst short int yy_base[415] =
401 { 0,
402 0, 0, 728, 3250, 725, 3250, 723, 719, 63, 61,
403 0, 3250, 3250, 36, 61, 46, 65, 67, 80, 83,
404 57, 72, 91, 105, 106, 75, 659, 84, 659, 671,
405 41, 39, 82, 654, 665, 651, 662, 661, 704, 3250,
406 700, 3250, 82, 3250, 701, 3250, 0, 146, 181, 216,
407 251, 303, 347, 387, 422, 470, 516, 571, 625, 669,
408 106, 644, 0, 667, 641, 672, 646, 671, 645, 667,
409 69, 641, 88, 666, 0, 640, 670, 0, 656, 655,
410 642, 628, 627, 665, 638, 646, 617, 128, 104, 640,
411 614, 637, 611, 3250, 666, 88, 608, 612, 612, 609,
412
413 107, 609, 614, 600, 599, 612, 600, 113, 598, 596,
414 709, 759, 809, 851, 899, 940, 990, 1028, 1065, 1121,
415 1175, 1229, 1265, 1317, 1364, 0, 633, 607, 631, 605,
416 622, 596, 614, 588, 623, 611, 618, 595, 583, 589,
417 613, 584, 156, 598, 165, 572, 596, 595, 589, 563,
418 594, 601, 567, 574, 585, 559, 571, 570, 562, 555,
419 565, 552, 559, 563, 188, 552, 551, 545, 551, 558,
420 544, 1416, 1470, 1524, 1577, 1616, 1669, 3250, 1723, 1769,
421 1822, 196, 237, 1869, 1923, 1965, 2005, 574, 548, 581,
422 555, 581, 555, 575, 549, 0, 0, 573, 546, 0,
423
424 0, 0, 0, 0, 0, 563, 554, 536, 527, 553,
425 518, 550, 524, 539, 512, 545, 519, 508, 514, 514,
426 508, 502, 492, 483, 483, 485, 466, 469, 2042, 2095,
427 261, 2148, 277, 2192, 2245, 2298, 287, 2342, 3250, 3250,
428 2384, 2437, 323, 2477, 499, 465, 477, 450, 470, 435,
429 446, 417, 449, 437, 421, 409, 429, 398, 417, 389,
430 414, 385, 401, 372, 383, 370, 369, 356, 363, 351,
431 355, 351, 356, 352, 335, 361, 3250, 2526, 3250, 371,
432 408, 2578, 3250, 2630, 2668, 432, 2725, 3250, 2779, 379,
433 353, 384, 351, 372, 346, 0, 350, 0, 324, 367,
434
435 336, 349, 321, 349, 323, 333, 302, 300, 305, 296,
436 275, 294, 286, 287, 273, 3250, 3250, 444, 3250, 3250,
437 454, 480, 2832, 2870, 3250, 490, 2927, 151, 150, 305,
438 279, 0, 303, 277, 301, 275, 300, 267, 273, 247,
439 0, 167, 260, 258, 240, 238, 222, 3250, 3250, 126,
440 2967, 502, 3250, 526, 248, 222, 243, 208, 226, 197,
441 0, 150, 170, 197, 196, 193, 187, 3250, 189, 3250,
442 3006, 3058, 3250, 3250, 0, 0, 206, 180, 202, 202,
443 162, 162, 160, 159, 159, 144, 3102, 3140, 213, 224,
444 0, 0, 250, 127, 3192, 539, 151, 151, 124, 115,
445
446 104, 74, 89, 552, 3250, 0, 0, 3250, 3250, 3250,
447 3241, 3244, 3246, 85
448 } ;
449
450static yyconst short int yy_def[415] =
451 { 0,
452 410, 1, 410, 410, 410, 410, 410, 411, 412, 413,
453 414, 410, 410, 414, 414, 414, 414, 414, 414, 414,
454 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
455 414, 414, 414, 414, 414, 414, 414, 414, 410, 410,
456 411, 410, 412, 410, 410, 410, 414, 413, 413, 413,
457 413, 413, 413, 413, 413, 413, 413, 413, 413, 413,
458 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
459 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
460 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
461 414, 414, 414, 410, 410, 414, 414, 414, 414, 414,
462
463 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
464 413, 413, 413, 413, 413, 413, 413, 413, 413, 413,
465 413, 413, 413, 413, 413, 414, 414, 414, 414, 414,
466 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
467 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
468 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
469 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
470 414, 413, 413, 413, 413, 413, 413, 410, 413, 413,
471 413, 413, 413, 413, 413, 413, 413, 414, 414, 414,
472 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
473
474 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
475 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
476 414, 414, 414, 414, 414, 414, 414, 414, 413, 413,
477 413, 413, 413, 413, 413, 413, 413, 413, 410, 410,
478 413, 413, 413, 413, 414, 414, 414, 414, 414, 414,
479 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
480 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
481 414, 414, 414, 414, 413, 413, 410, 413, 410, 413,
482 413, 413, 410, 413, 413, 413, 413, 410, 413, 414,
483 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
484
485 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
486 414, 414, 414, 414, 414, 410, 410, 413, 410, 410,
487 413, 413, 413, 413, 410, 413, 413, 414, 414, 414,
488 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
489 414, 414, 414, 414, 414, 414, 414, 410, 410, 414,
490 413, 413, 410, 413, 414, 414, 414, 414, 414, 414,
491 414, 414, 414, 414, 414, 414, 414, 410, 414, 410,
492 413, 413, 410, 410, 414, 414, 414, 414, 414, 414,
493 414, 414, 414, 414, 414, 414, 413, 413, 414, 414,
494 414, 414, 414, 414, 413, 413, 414, 414, 414, 414,
495
496 414, 414, 414, 413, 410, 414, 414, 410, 410, 0,
497 410, 410, 410, 410
498 } ;
499
500static yyconst short int yy_nxt[3316] =
501 { 0,
502 4, 5, 6, 7, 8, 9, 10, 11, 12, 11,
503 11, 11, 11, 11, 13, 4, 14, 15, 16, 11,
504 11, 17, 11, 11, 11, 11, 18, 11, 19, 20,
505 21, 11, 22, 11, 23, 11, 24, 11, 25, 11,
506 26, 27, 28, 29, 11, 11, 30, 11, 11, 11,
507 11, 31, 11, 32, 33, 34, 11, 35, 11, 36,
508 11, 37, 11, 38, 11, 44, 45, 46, 47, 61,
509 47, 47, 47, 47, 47, 66, 47, 94, 95, 63,
510 102, 68, 100, 70, 44, 45, 136, 47, 49, 84,
511 101, 71, 86, 75, 62, 408, 74, 137, 50, 64,
512
513 67, 47, 51, 52, 77, 53, 69, 54, 72, 75,
514 55, 78, 56, 79, 85, 57, 73, 87, 80, 58,
515 59, 76, 60, 88, 65, 90, 92, 63, 103, 81,
516 139, 407, 368, 126, 75, 78, 78, 104, 82, 127,
517 126, 140, 105, 83, 151, 153, 157, 97, 89, 162,
518 91, 93, 46, 47, 169, 47, 47, 47, 47, 47,
519 163, 47, 406, 152, 154, 201, 202, 203, 204, 205,
520 379, 355, 407, 170, 201, 202, 203, 204, 205, 380,
521 206, 369, 406, 407, 406, 403, 47, 46, 47, 126,
522 47, 47, 47, 47, 47, 356, 47, 201, 202, 203,
523
524 204, 205, 239, 47, 394, 47, 47, 47, 47, 47,
525 111, 47, 364, 126, 208, 381, 392, 391, 393, 392,
526 391, 47, 46, 47, 382, 47, 47, 47, 47, 47,
527 126, 47, 384, 397, 392, 391, 47, 223, 390, 389,
528 386, 385, 398, 240, 47, 112, 47, 47, 47, 47,
529 47, 383, 47, 376, 375, 378, 47, 46, 47, 377,
530 47, 47, 47, 47, 47, 376, 47, 277, 47, 399,
531 47, 47, 47, 47, 47, 376, 47, 47, 400, 375,
532 375, 367, 361, 279, 47, 366, 47, 47, 47, 47,
533 47, 47, 47, 283, 47, 401, 47, 47, 47, 47,
534
535 47, 47, 47, 365, 402, 63, 363, 362, 113, 46,
536 47, 361, 47, 47, 47, 47, 47, 47, 47, 361,
537 360, 359, 358, 357, 63, 63, 341, 47, 347, 288,
538 47, 346, 47, 47, 47, 47, 47, 345, 47, 344,
539 332, 316, 47, 47, 47, 47, 47, 47, 47, 343,
540 47, 342, 114, 46, 47, 341, 47, 47, 47, 47,
541 47, 341, 47, 47, 340, 339, 338, 317, 47, 337,
542 47, 47, 47, 47, 47, 47, 47, 319, 47, 336,
543 47, 47, 47, 47, 47, 335, 47, 47, 334, 333,
544 332, 332, 115, 46, 47, 331, 47, 47, 47, 47,
545
546 47, 47, 47, 330, 329, 328, 315, 314, 313, 312,
547 298, 47, 311, 296, 320, 47, 116, 47, 47, 47,
548 47, 47, 310, 47, 309, 308, 307, 47, 46, 47,
549 306, 47, 47, 47, 47, 47, 305, 47, 325, 47,
550 304, 47, 47, 47, 47, 47, 303, 47, 47, 302,
551 348, 47, 301, 47, 47, 47, 47, 47, 300, 47,
552 349, 47, 47, 47, 47, 47, 47, 47, 298, 47,
553 299, 298, 47, 297, 296, 117, 46, 47, 296, 47,
554 47, 47, 47, 47, 47, 47, 46, 47, 295, 350,
555 47, 47, 47, 47, 47, 47, 353, 47, 294, 47,
556
557 47, 47, 47, 47, 293, 47, 292, 291, 373, 47,
558 47, 47, 47, 47, 47, 47, 290, 47, 274, 118,
559 47, 119, 46, 47, 273, 47, 47, 47, 47, 47,
560 47, 47, 374, 47, 272, 47, 47, 47, 47, 47,
561 271, 47, 47, 270, 269, 405, 47, 268, 47, 47,
562 47, 47, 47, 75, 47, 267, 47, 266, 409, 47,
563 265, 47, 47, 47, 47, 47, 47, 47, 264, 263,
564 262, 120, 261, 260, 259, 258, 121, 46, 47, 47,
565 47, 47, 47, 47, 47, 257, 47, 256, 255, 254,
566 253, 252, 47, 251, 75, 75, 250, 249, 248, 247,
567
568 246, 245, 228, 78, 227, 226, 225, 224, 200, 222,
569 197, 47, 196, 221, 220, 219, 218, 217, 216, 78,
570 215, 78, 214, 213, 212, 211, 210, 209, 207, 200,
571 122, 46, 47, 200, 47, 47, 47, 47, 47, 199,
572 47, 197, 196, 198, 197, 196, 195, 194, 193, 192,
573 191, 190, 189, 188, 78, 171, 168, 167, 166, 165,
574 75, 164, 161, 160, 159, 47, 123, 158, 94, 78,
575 78, 156, 155, 150, 124, 46, 47, 149, 47, 47,
576 47, 47, 47, 148, 47, 147, 146, 145, 75, 144,
577 143, 75, 142, 141, 138, 135, 134, 133, 132, 131,
578
579 130, 129, 128, 44, 42, 39, 110, 109, 108, 47,
580 107, 106, 99, 98, 125, 46, 47, 96, 47, 47,
581 47, 47, 47, 42, 47, 40, 39, 410, 410, 410,
582 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
583 410, 410, 410, 410, 410, 410, 410, 410, 410, 47,
584 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
585 410, 410, 410, 410, 172, 46, 47, 410, 47, 47,
586 47, 47, 47, 410, 47, 410, 410, 410, 410, 410,
587 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
588 410, 410, 410, 410, 410, 410, 410, 410, 410, 47,
589
590 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
591 410, 410, 410, 410, 173, 46, 47, 410, 47, 47,
592 47, 47, 47, 410, 47, 410, 410, 410, 410, 410,
593 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
594 410, 410, 410, 410, 410, 410, 410, 410, 410, 47,
595 410, 410, 410, 410, 410, 410, 174, 46, 47, 410,
596 47, 47, 47, 47, 47, 410, 47, 410, 410, 410,
597 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
598 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
599 410, 47, 410, 410, 410, 410, 410, 410, 410, 410,
600
601 410, 410, 410, 410, 175, 46, 47, 410, 47, 47,
602 47, 47, 47, 410, 47, 410, 410, 410, 410, 410,
603 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
604 410, 410, 410, 410, 410, 410, 410, 410, 410, 47,
605 410, 410, 410, 410, 410, 176, 46, 47, 410, 47,
606 47, 47, 47, 47, 410, 47, 410, 410, 410, 410,
607 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
608 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
609 47, 410, 410, 410, 410, 410, 410, 410, 410, 410,
610 410, 410, 410, 410, 410, 177, 178, 47, 410, 47,
611
612 47, 47, 47, 47, 410, 47, 410, 410, 410, 410,
613 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
614 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
615 47, 410, 410, 179, 46, 47, 410, 47, 47, 47,
616 47, 47, 410, 47, 410, 410, 410, 410, 410, 410,
617 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
618 410, 410, 410, 410, 410, 410, 410, 410, 47, 410,
619 180, 46, 47, 410, 47, 47, 47, 47, 47, 410,
620 47, 410, 410, 410, 410, 410, 410, 410, 410, 410,
621 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
622
623 410, 410, 410, 410, 410, 47, 410, 410, 410, 410,
624 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
625 410, 410, 410, 410, 410, 410, 181, 46, 47, 410,
626 47, 47, 47, 47, 47, 410, 47, 410, 410, 410,
627 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
628 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
629 410, 47, 410, 410, 410, 410, 410, 410, 410, 410,
630 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
631 182, 46, 47, 410, 47, 47, 47, 47, 47, 410,
632 47, 410, 410, 410, 410, 410, 410, 410, 410, 410,
633
634 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
635 410, 410, 410, 410, 410, 47, 410, 410, 410, 410,
636 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
637 410, 410, 410, 410, 183, 46, 47, 410, 47, 47,
638 47, 47, 47, 410, 47, 410, 410, 410, 410, 410,
639 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
640 410, 410, 410, 410, 410, 410, 410, 410, 410, 47,
641 184, 46, 47, 410, 47, 47, 47, 47, 47, 410,
642 47, 410, 410, 410, 410, 410, 410, 410, 410, 410,
643 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
644
645 410, 410, 410, 410, 410, 47, 410, 410, 410, 410,
646 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
647 410, 410, 185, 46, 47, 410, 47, 47, 47, 47,
648 47, 410, 47, 410, 410, 410, 410, 410, 410, 410,
649 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
650 410, 410, 410, 410, 410, 410, 410, 47, 410, 410,
651 410, 410, 410, 410, 410, 410, 410, 410, 410, 186,
652 46, 47, 410, 47, 47, 47, 47, 47, 410, 47,
653 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
654 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
655
656 410, 410, 410, 410, 47, 410, 410, 410, 410, 410,
657 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
658 410, 187, 46, 47, 410, 47, 47, 47, 47, 47,
659 410, 47, 410, 410, 410, 410, 410, 410, 410, 410,
660 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
661 410, 410, 410, 410, 410, 410, 47, 410, 410, 410,
662 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
663 410, 410, 410, 410, 410, 229, 46, 47, 410, 47,
664 47, 47, 47, 47, 410, 47, 410, 410, 410, 410,
665 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
666
667 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
668 47, 410, 410, 410, 410, 410, 410, 410, 410, 410,
669 410, 410, 410, 410, 410, 410, 410, 410, 410, 230,
670 46, 47, 410, 47, 47, 47, 47, 47, 410, 47,
671 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
672 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
673 410, 410, 410, 410, 47, 410, 410, 410, 410, 410,
674 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
675 410, 410, 231, 46, 47, 410, 47, 47, 47, 47,
676 47, 410, 47, 410, 410, 410, 410, 410, 410, 410,
677
678 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
679 410, 410, 410, 410, 410, 410, 410, 47, 410, 410,
680 410, 232, 46, 47, 410, 47, 47, 47, 47, 47,
681 410, 47, 410, 410, 410, 410, 410, 410, 410, 410,
682 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
683 410, 410, 410, 410, 410, 410, 47, 410, 410, 410,
684 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
685 410, 410, 410, 410, 233, 46, 47, 410, 47, 47,
686 47, 47, 47, 410, 47, 410, 410, 410, 410, 410,
687 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
688
689 410, 410, 410, 410, 410, 410, 410, 410, 410, 47,
690 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
691 410, 410, 410, 410, 410, 410, 410, 410, 234, 46,
692 47, 410, 47, 47, 47, 47, 47, 410, 47, 410,
693 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
694 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
695 410, 410, 410, 47, 410, 410, 410, 410, 410, 410,
696 410, 410, 410, 410, 235, 46, 47, 410, 47, 47,
697 47, 47, 47, 410, 47, 410, 410, 410, 410, 410,
698 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
699
700 410, 410, 410, 410, 410, 410, 410, 410, 410, 47,
701 410, 410, 410, 236, 410, 410, 410, 410, 410, 410,
702 410, 410, 410, 410, 410, 410, 410, 237, 46, 47,
703 410, 47, 47, 47, 47, 47, 410, 47, 410, 410,
704 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
705 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
706 410, 410, 47, 410, 410, 410, 410, 410, 410, 410,
707 410, 410, 410, 410, 238, 46, 47, 410, 47, 47,
708 47, 47, 47, 410, 47, 410, 410, 410, 410, 410,
709 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
710
711 410, 410, 410, 410, 410, 410, 410, 410, 410, 47,
712 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
713 410, 410, 410, 410, 410, 410, 410, 410, 241, 46,
714 47, 410, 47, 47, 47, 47, 47, 410, 47, 410,
715 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
716 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
717 410, 410, 410, 47, 410, 410, 410, 410, 410, 410,
718 242, 46, 47, 410, 47, 47, 47, 47, 47, 410,
719 47, 410, 410, 410, 410, 410, 410, 410, 410, 410,
720 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
721
722 410, 410, 410, 410, 410, 47, 410, 410, 410, 410,
723 243, 46, 47, 410, 47, 47, 47, 47, 47, 410,
724 47, 410, 410, 410, 410, 410, 410, 410, 410, 410,
725 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
726 410, 410, 410, 410, 410, 47, 410, 244, 46, 47,
727 410, 47, 47, 47, 47, 47, 410, 47, 410, 410,
728 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
729 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
730 410, 410, 47, 410, 410, 410, 410, 410, 410, 410,
731 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
732
733 275, 46, 47, 410, 47, 47, 47, 47, 47, 410,
734 47, 410, 410, 410, 410, 410, 410, 410, 410, 410,
735 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
736 410, 410, 410, 410, 410, 47, 410, 410, 410, 410,
737 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
738 410, 410, 410, 276, 46, 47, 410, 47, 47, 47,
739 47, 47, 410, 47, 410, 410, 410, 410, 410, 410,
740 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
741 410, 410, 410, 410, 410, 410, 410, 410, 47, 410,
742 410, 410, 410, 410, 410, 410, 410, 278, 46, 47,
743
744 410, 47, 47, 47, 47, 47, 410, 47, 410, 410,
745 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
746 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
747 410, 410, 47, 410, 410, 410, 410, 410, 410, 410,
748 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
749 280, 46, 47, 410, 47, 47, 47, 47, 47, 410,
750 47, 410, 410, 410, 410, 410, 410, 410, 410, 410,
751 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
752 410, 410, 410, 410, 410, 47, 410, 410, 410, 410,
753 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
754
755 410, 410, 410, 281, 46, 47, 410, 47, 47, 47,
756 47, 47, 410, 47, 410, 410, 410, 410, 410, 410,
757 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
758 410, 410, 410, 410, 410, 410, 410, 410, 47, 410,
759 410, 410, 410, 410, 410, 410, 410, 282, 46, 47,
760 410, 47, 47, 47, 47, 47, 410, 47, 410, 410,
761 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
762 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
763 410, 410, 47, 410, 410, 284, 410, 410, 410, 285,
764 46, 47, 410, 47, 47, 47, 47, 47, 410, 47,
765
766 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
767 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
768 410, 410, 410, 410, 47, 410, 410, 410, 410, 410,
769 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
770 410, 410, 286, 46, 47, 410, 47, 47, 47, 47,
771 47, 410, 47, 410, 410, 410, 410, 410, 410, 410,
772 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
773 410, 410, 410, 410, 410, 410, 410, 47, 410, 410,
774 410, 410, 287, 46, 47, 410, 47, 47, 47, 47,
775 47, 410, 47, 410, 410, 410, 410, 410, 410, 410,
776
777 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
778 410, 410, 410, 410, 410, 410, 410, 47, 410, 410,
779 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
780 410, 289, 46, 47, 410, 47, 47, 47, 47, 47,
781 410, 47, 410, 410, 410, 410, 410, 410, 410, 410,
782 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
783 410, 410, 410, 410, 410, 410, 47, 410, 410, 410,
784 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
785 410, 410, 410, 318, 46, 47, 410, 47, 47, 47,
786 47, 47, 410, 47, 410, 410, 410, 410, 410, 410,
787
788 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
789 410, 410, 410, 410, 410, 410, 410, 410, 47, 410,
790 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
791 410, 410, 410, 410, 410, 321, 46, 47, 410, 47,
792 47, 47, 47, 47, 410, 47, 410, 410, 410, 410,
793 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
794 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
795 47, 410, 410, 322, 46, 47, 410, 47, 47, 47,
796 47, 47, 410, 47, 410, 410, 410, 410, 410, 410,
797 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
798
799 410, 410, 410, 410, 410, 410, 410, 410, 47, 410,
800 410, 323, 410, 410, 410, 410, 410, 410, 410, 410,
801 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
802 324, 46, 47, 410, 47, 47, 47, 47, 47, 410,
803 47, 410, 410, 410, 410, 410, 410, 410, 410, 410,
804 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
805 410, 410, 410, 410, 410, 47, 410, 410, 410, 410,
806 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
807 410, 410, 410, 410, 326, 46, 47, 410, 47, 47,
808 47, 47, 47, 410, 47, 410, 410, 410, 410, 410,
809
810 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
811 410, 410, 410, 410, 410, 410, 410, 410, 410, 47,
812 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
813 410, 410, 410, 410, 410, 410, 410, 327, 46, 47,
814 410, 47, 47, 47, 47, 47, 410, 47, 410, 410,
815 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
816 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
817 410, 410, 47, 410, 410, 351, 46, 47, 410, 47,
818 47, 47, 47, 47, 410, 47, 410, 410, 410, 410,
819 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
820
821 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
822 47, 410, 410, 410, 410, 410, 410, 410, 410, 410,
823 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
824 410, 410, 352, 46, 47, 410, 47, 47, 47, 47,
825 47, 410, 47, 410, 410, 410, 410, 410, 410, 410,
826 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
827 410, 410, 410, 410, 410, 410, 410, 47, 410, 410,
828 410, 410, 354, 370, 47, 410, 47, 47, 47, 47,
829 47, 410, 47, 410, 410, 410, 410, 410, 410, 410,
830 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
831
832 410, 410, 410, 410, 410, 410, 410, 47, 371, 410,
833 410, 372, 46, 47, 410, 47, 47, 47, 47, 47,
834 410, 47, 410, 410, 410, 410, 410, 410, 410, 410,
835 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
836 410, 410, 410, 410, 410, 410, 47, 410, 410, 410,
837 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
838 410, 410, 410, 387, 46, 47, 410, 47, 47, 47,
839 47, 47, 410, 47, 410, 410, 410, 410, 410, 410,
840 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
841 410, 410, 410, 410, 410, 410, 410, 410, 47, 410,
842
843 410, 410, 410, 410, 410, 410, 410, 388, 46, 47,
844 410, 47, 47, 47, 47, 47, 410, 47, 410, 410,
845 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
846 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
847 410, 410, 47, 410, 410, 395, 46, 47, 410, 47,
848 47, 47, 47, 47, 410, 47, 410, 410, 410, 410,
849 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
850 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
851 47, 410, 410, 410, 410, 410, 410, 410, 410, 410,
852 410, 410, 410, 410, 410, 410, 410, 396, 46, 47,
853
854 410, 47, 47, 47, 47, 47, 410, 47, 410, 410,
855 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
856 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
857 410, 410, 47, 410, 410, 410, 410, 410, 410, 410,
858 404, 41, 41, 41, 43, 43, 43, 48, 48, 3,
859 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
860 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
861 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
862 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
863 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
864
865 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
866 410, 410, 410, 410, 410
867 } ;
868
869static yyconst short int yy_chk[3316] =
870 { 0,
871 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
872 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
873 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
874 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
875 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
876 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
877 1, 1, 1, 1, 1, 9, 9, 10, 10, 14,
878 10, 10, 10, 10, 10, 16, 10, 26, 26, 15,
879 32, 17, 31, 18, 43, 43, 71, 414, 10, 21,
880 31, 18, 22, 32, 14, 403, 19, 71, 10, 15,
881
882 16, 10, 10, 10, 20, 10, 17, 10, 18, 19,
883 10, 20, 10, 20, 21, 10, 18, 22, 20, 10,
884 10, 19, 10, 23, 15, 24, 25, 28, 33, 20,
885 73, 402, 350, 61, 19, 33, 20, 33, 20, 61,
886 96, 73, 33, 20, 88, 89, 96, 28, 23, 101,
887 24, 25, 48, 48, 108, 48, 48, 48, 48, 48,
888 101, 48, 401, 88, 89, 143, 143, 143, 143, 143,
889 362, 328, 400, 108, 145, 145, 145, 145, 145, 362,
890 143, 350, 399, 398, 397, 394, 48, 49, 49, 328,
891 49, 49, 49, 49, 49, 329, 49, 165, 165, 165,
892
893 165, 165, 182, 182, 386, 182, 182, 182, 182, 182,
894 49, 182, 342, 329, 145, 363, 385, 384, 383, 382,
895 381, 49, 50, 50, 363, 50, 50, 50, 50, 50,
896 342, 50, 367, 389, 380, 379, 182, 165, 378, 377,
897 369, 367, 389, 183, 183, 50, 183, 183, 183, 183,
898 183, 366, 183, 365, 364, 360, 50, 51, 51, 359,
899 51, 51, 51, 51, 51, 358, 51, 231, 231, 390,
900 231, 231, 231, 231, 231, 357, 231, 183, 390, 356,
901 355, 347, 346, 233, 233, 345, 233, 233, 233, 233,
902 233, 51, 233, 237, 237, 393, 237, 237, 237, 237,
903
904 237, 231, 237, 344, 393, 343, 340, 339, 51, 52,
905 52, 338, 52, 52, 52, 52, 52, 233, 52, 337,
906 336, 335, 334, 333, 331, 330, 315, 237, 314, 243,
907 243, 313, 243, 243, 243, 243, 243, 312, 243, 311,
908 310, 275, 275, 52, 275, 275, 275, 275, 275, 309,
909 275, 308, 52, 53, 53, 307, 53, 53, 53, 53,
910 53, 306, 53, 243, 305, 304, 303, 276, 276, 302,
911 276, 276, 276, 276, 276, 275, 276, 280, 280, 301,
912 280, 280, 280, 280, 280, 300, 280, 53, 299, 297,
913 295, 294, 53, 54, 54, 293, 54, 54, 54, 54,
914
915 54, 276, 54, 292, 291, 290, 274, 273, 272, 271,
916 270, 280, 269, 268, 281, 281, 54, 281, 281, 281,
917 281, 281, 267, 281, 266, 265, 264, 54, 55, 55,
918 263, 55, 55, 55, 55, 55, 262, 55, 286, 286,
919 261, 286, 286, 286, 286, 286, 260, 286, 281, 259,
920 318, 318, 258, 318, 318, 318, 318, 318, 257, 318,
921 321, 321, 55, 321, 321, 321, 321, 321, 256, 321,
922 255, 254, 286, 253, 252, 55, 56, 56, 251, 56,
923 56, 56, 56, 56, 318, 56, 322, 322, 250, 322,
924 322, 322, 322, 322, 321, 322, 326, 326, 249, 326,
925
926 326, 326, 326, 326, 248, 326, 247, 246, 352, 352,
927 56, 352, 352, 352, 352, 352, 245, 352, 228, 56,
928 322, 56, 57, 57, 227, 57, 57, 57, 57, 57,
929 326, 57, 354, 354, 226, 354, 354, 354, 354, 354,
930 225, 354, 352, 224, 223, 396, 396, 222, 396, 396,
931 396, 396, 396, 221, 396, 220, 57, 219, 404, 404,
932 218, 404, 404, 404, 404, 404, 354, 404, 217, 216,
933 215, 57, 214, 213, 212, 211, 57, 58, 58, 396,
934 58, 58, 58, 58, 58, 210, 58, 209, 208, 207,
935 206, 199, 404, 198, 195, 194, 193, 192, 191, 190,
936
937 189, 188, 171, 170, 169, 168, 167, 166, 164, 163,
938 162, 58, 161, 160, 159, 158, 157, 156, 155, 154,
939 153, 152, 151, 150, 149, 148, 147, 146, 144, 142,
940 58, 59, 59, 141, 59, 59, 59, 59, 59, 140,
941 59, 139, 138, 137, 136, 135, 134, 133, 132, 131,
942 130, 129, 128, 127, 110, 109, 107, 106, 105, 104,
943 103, 102, 100, 99, 98, 59, 59, 97, 95, 93,
944 92, 91, 90, 87, 59, 60, 60, 86, 60, 60,
945 60, 60, 60, 85, 60, 84, 83, 82, 81, 80,
946 79, 77, 76, 74, 72, 70, 69, 68, 67, 66,
947
948 65, 64, 62, 45, 41, 39, 38, 37, 36, 60,
949 35, 34, 30, 29, 60, 111, 111, 27, 111, 111,
950 111, 111, 111, 8, 111, 7, 5, 3, 0, 0,
951 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
952 0, 0, 0, 0, 0, 0, 0, 0, 0, 111,
953 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
954 0, 0, 0, 0, 111, 112, 112, 0, 112, 112,
955 112, 112, 112, 0, 112, 0, 0, 0, 0, 0,
956 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
957 0, 0, 0, 0, 0, 0, 0, 0, 0, 112,
958
959 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
960 0, 0, 0, 0, 112, 113, 113, 0, 113, 113,
961 113, 113, 113, 0, 113, 0, 0, 0, 0, 0,
962 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
963 0, 0, 0, 0, 0, 0, 0, 0, 0, 113,
964 0, 0, 0, 0, 0, 0, 113, 114, 114, 0,
965 114, 114, 114, 114, 114, 0, 114, 0, 0, 0,
966 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
967 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
968 0, 114, 0, 0, 0, 0, 0, 0, 0, 0,
969
970 0, 0, 0, 0, 114, 115, 115, 0, 115, 115,
971 115, 115, 115, 0, 115, 0, 0, 0, 0, 0,
972 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
973 0, 0, 0, 0, 0, 0, 0, 0, 0, 115,
974 0, 0, 0, 0, 0, 115, 116, 116, 0, 116,
975 116, 116, 116, 116, 0, 116, 0, 0, 0, 0,
976 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
977 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
978 116, 0, 0, 0, 0, 0, 0, 0, 0, 0,
979 0, 0, 0, 0, 0, 116, 117, 117, 0, 117,
980
981 117, 117, 117, 117, 0, 117, 0, 0, 0, 0,
982 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
983 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
984 117, 0, 0, 117, 118, 118, 0, 118, 118, 118,
985 118, 118, 0, 118, 0, 0, 0, 0, 0, 0,
986 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
987 0, 0, 0, 0, 0, 0, 0, 0, 118, 0,
988 118, 119, 119, 0, 119, 119, 119, 119, 119, 0,
989 119, 0, 0, 0, 0, 0, 0, 0, 0, 0,
990 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
991
992 0, 0, 0, 0, 0, 119, 0, 0, 0, 0,
993 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
994 0, 0, 0, 0, 0, 0, 119, 120, 120, 0,
995 120, 120, 120, 120, 120, 0, 120, 0, 0, 0,
996 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
997 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
998 0, 120, 0, 0, 0, 0, 0, 0, 0, 0,
999 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1000 120, 121, 121, 0, 121, 121, 121, 121, 121, 0,
1001 121, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1002
1003 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1004 0, 0, 0, 0, 0, 121, 0, 0, 0, 0,
1005 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1006 0, 0, 0, 0, 121, 122, 122, 0, 122, 122,
1007 122, 122, 122, 0, 122, 0, 0, 0, 0, 0,
1008 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1009 0, 0, 0, 0, 0, 0, 0, 0, 0, 122,
1010 122, 123, 123, 0, 123, 123, 123, 123, 123, 0,
1011 123, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1012 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1013
1014 0, 0, 0, 0, 0, 123, 0, 0, 0, 0,
1015 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1016 0, 0, 123, 124, 124, 0, 124, 124, 124, 124,
1017 124, 0, 124, 0, 0, 0, 0, 0, 0, 0,
1018 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1019 0, 0, 0, 0, 0, 0, 0, 124, 0, 0,
1020 0, 0, 0, 0, 0, 0, 0, 0, 0, 124,
1021 125, 125, 0, 125, 125, 125, 125, 125, 0, 125,
1022 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1023 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1024
1025 0, 0, 0, 0, 125, 0, 0, 0, 0, 0,
1026 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1027 0, 125, 172, 172, 0, 172, 172, 172, 172, 172,
1028 0, 172, 0, 0, 0, 0, 0, 0, 0, 0,
1029 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1030 0, 0, 0, 0, 0, 0, 172, 0, 0, 0,
1031 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1032 0, 0, 0, 0, 0, 172, 173, 173, 0, 173,
1033 173, 173, 173, 173, 0, 173, 0, 0, 0, 0,
1034 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1035
1036 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1037 173, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1038 0, 0, 0, 0, 0, 0, 0, 0, 0, 173,
1039 174, 174, 0, 174, 174, 174, 174, 174, 0, 174,
1040 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1041 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1042 0, 0, 0, 0, 174, 0, 0, 0, 0, 0,
1043 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1044 0, 0, 174, 175, 175, 0, 175, 175, 175, 175,
1045 175, 0, 175, 0, 0, 0, 0, 0, 0, 0,
1046
1047 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1048 0, 0, 0, 0, 0, 0, 0, 175, 0, 0,
1049 0, 175, 176, 176, 0, 176, 176, 176, 176, 176,
1050 0, 176, 0, 0, 0, 0, 0, 0, 0, 0,
1051 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1052 0, 0, 0, 0, 0, 0, 176, 0, 0, 0,
1053 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1054 0, 0, 0, 0, 176, 177, 177, 0, 177, 177,
1055 177, 177, 177, 0, 177, 0, 0, 0, 0, 0,
1056 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1057
1058 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
1059 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1060 0, 0, 0, 0, 0, 0, 0, 0, 177, 179,
1061 179, 0, 179, 179, 179, 179, 179, 0, 179, 0,
1062 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1063 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1064 0, 0, 0, 179, 0, 0, 0, 0, 0, 0,
1065 0, 0, 0, 0, 179, 180, 180, 0, 180, 180,
1066 180, 180, 180, 0, 180, 0, 0, 0, 0, 0,
1067 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1068
1069 0, 0, 0, 0, 0, 0, 0, 0, 0, 180,
1070 0, 0, 0, 180, 0, 0, 0, 0, 0, 0,
1071 0, 0, 0, 0, 0, 0, 0, 180, 181, 181,
1072 0, 181, 181, 181, 181, 181, 0, 181, 0, 0,
1073 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1074 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1075 0, 0, 181, 0, 0, 0, 0, 0, 0, 0,
1076 0, 0, 0, 0, 181, 184, 184, 0, 184, 184,
1077 184, 184, 184, 0, 184, 0, 0, 0, 0, 0,
1078 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1079
1080 0, 0, 0, 0, 0, 0, 0, 0, 0, 184,
1081 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1082 0, 0, 0, 0, 0, 0, 0, 0, 184, 185,
1083 185, 0, 185, 185, 185, 185, 185, 0, 185, 0,
1084 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1085 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1086 0, 0, 0, 185, 0, 0, 0, 0, 0, 0,
1087 185, 186, 186, 0, 186, 186, 186, 186, 186, 0,
1088 186, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1089 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1090
1091 0, 0, 0, 0, 0, 186, 0, 0, 0, 0,
1092 186, 187, 187, 0, 187, 187, 187, 187, 187, 0,
1093 187, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1094 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1095 0, 0, 0, 0, 0, 187, 0, 187, 229, 229,
1096 0, 229, 229, 229, 229, 229, 0, 229, 0, 0,
1097 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1098 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1099 0, 0, 229, 0, 0, 0, 0, 0, 0, 0,
1100 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1101
1102 229, 230, 230, 0, 230, 230, 230, 230, 230, 0,
1103 230, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1104 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1105 0, 0, 0, 0, 0, 230, 0, 0, 0, 0,
1106 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1107 0, 0, 0, 230, 232, 232, 0, 232, 232, 232,
1108 232, 232, 0, 232, 0, 0, 0, 0, 0, 0,
1109 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1110 0, 0, 0, 0, 0, 0, 0, 0, 232, 0,
1111 0, 0, 0, 0, 0, 0, 0, 232, 234, 234,
1112
1113 0, 234, 234, 234, 234, 234, 0, 234, 0, 0,
1114 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1115 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1116 0, 0, 234, 0, 0, 0, 0, 0, 0, 0,
1117 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1118 234, 235, 235, 0, 235, 235, 235, 235, 235, 0,
1119 235, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1120 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1121 0, 0, 0, 0, 0, 235, 0, 0, 0, 0,
1122 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1123
1124 0, 0, 0, 235, 236, 236, 0, 236, 236, 236,
1125 236, 236, 0, 236, 0, 0, 0, 0, 0, 0,
1126 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1127 0, 0, 0, 0, 0, 0, 0, 0, 236, 0,
1128 0, 0, 0, 0, 0, 0, 0, 236, 238, 238,
1129 0, 238, 238, 238, 238, 238, 0, 238, 0, 0,
1130 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1131 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1132 0, 0, 238, 0, 0, 238, 0, 0, 0, 238,
1133 241, 241, 0, 241, 241, 241, 241, 241, 0, 241,
1134
1135 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1136 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1137 0, 0, 0, 0, 241, 0, 0, 0, 0, 0,
1138 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1139 0, 0, 241, 242, 242, 0, 242, 242, 242, 242,
1140 242, 0, 242, 0, 0, 0, 0, 0, 0, 0,
1141 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1142 0, 0, 0, 0, 0, 0, 0, 242, 0, 0,
1143 0, 0, 242, 244, 244, 0, 244, 244, 244, 244,
1144 244, 0, 244, 0, 0, 0, 0, 0, 0, 0,
1145
1146 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1147 0, 0, 0, 0, 0, 0, 0, 244, 0, 0,
1148 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1149 0, 244, 278, 278, 0, 278, 278, 278, 278, 278,
1150 0, 278, 0, 0, 0, 0, 0, 0, 0, 0,
1151 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1152 0, 0, 0, 0, 0, 0, 278, 0, 0, 0,
1153 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1154 0, 0, 0, 278, 282, 282, 0, 282, 282, 282,
1155 282, 282, 0, 282, 0, 0, 0, 0, 0, 0,
1156
1157 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1158 0, 0, 0, 0, 0, 0, 0, 0, 282, 0,
1159 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1160 0, 0, 0, 0, 0, 282, 284, 284, 0, 284,
1161 284, 284, 284, 284, 0, 284, 0, 0, 0, 0,
1162 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1163 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1164 284, 0, 0, 284, 285, 285, 0, 285, 285, 285,
1165 285, 285, 0, 285, 0, 0, 0, 0, 0, 0,
1166 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1167
1168 0, 0, 0, 0, 0, 0, 0, 0, 285, 0,
1169 0, 285, 0, 0, 0, 0, 0, 0, 0, 0,
1170 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1171 285, 287, 287, 0, 287, 287, 287, 287, 287, 0,
1172 287, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1173 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1174 0, 0, 0, 0, 0, 287, 0, 0, 0, 0,
1175 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1176 0, 0, 0, 0, 287, 289, 289, 0, 289, 289,
1177 289, 289, 289, 0, 289, 0, 0, 0, 0, 0,
1178
1179 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1180 0, 0, 0, 0, 0, 0, 0, 0, 0, 289,
1181 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1182 0, 0, 0, 0, 0, 0, 0, 289, 323, 323,
1183 0, 323, 323, 323, 323, 323, 0, 323, 0, 0,
1184 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1185 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1186 0, 0, 323, 0, 0, 323, 324, 324, 0, 324,
1187 324, 324, 324, 324, 0, 324, 0, 0, 0, 0,
1188 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1189
1190 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1191 324, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1192 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1193 0, 0, 324, 327, 327, 0, 327, 327, 327, 327,
1194 327, 0, 327, 0, 0, 0, 0, 0, 0, 0,
1195 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1196 0, 0, 0, 0, 0, 0, 0, 327, 0, 0,
1197 0, 0, 327, 351, 351, 0, 351, 351, 351, 351,
1198 351, 0, 351, 0, 0, 0, 0, 0, 0, 0,
1199 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1200
1201 0, 0, 0, 0, 0, 0, 0, 351, 351, 0,
1202 0, 351, 371, 371, 0, 371, 371, 371, 371, 371,
1203 0, 371, 0, 0, 0, 0, 0, 0, 0, 0,
1204 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1205 0, 0, 0, 0, 0, 0, 371, 0, 0, 0,
1206 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1207 0, 0, 0, 371, 372, 372, 0, 372, 372, 372,
1208 372, 372, 0, 372, 0, 0, 0, 0, 0, 0,
1209 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1210 0, 0, 0, 0, 0, 0, 0, 0, 372, 0,
1211
1212 0, 0, 0, 0, 0, 0, 0, 372, 387, 387,
1213 0, 387, 387, 387, 387, 387, 0, 387, 0, 0,
1214 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1215 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1216 0, 0, 387, 0, 0, 387, 388, 388, 0, 388,
1217 388, 388, 388, 388, 0, 388, 0, 0, 0, 0,
1218 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1219 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1220 388, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1221 0, 0, 0, 0, 0, 0, 0, 388, 395, 395,
1222
1223 0, 395, 395, 395, 395, 395, 0, 395, 0, 0,
1224 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1225 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1226 0, 0, 395, 0, 0, 0, 0, 0, 0, 0,
1227 395, 411, 411, 411, 412, 412, 412, 413, 413, 410,
1228 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
1229 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
1230 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
1231 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
1232 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
1233
1234 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
1235 410, 410, 410, 410, 410
1236 } ;
1237
1238static yy_state_type yy_last_accepting_state;
1239static char *yy_last_accepting_cpos;
1240
1241/* The intent behind this definition is that it'll catch
1242 * any uses of REJECT which flex missed.
1243 */
1244#define REJECT reject_used_but_not_detected
1245#define yymore() yymore_used_but_not_detected
1246#define YY_MORE_ADJ 0
1247#define YY_RESTORE_YY_MORE_OFFSET
1248char *yytext;
1249#line 1 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1250#define INITIAL 0
1251/*===- ConfigLexer.l - Scanner for CompilerDriver Config Files -*- C++ -*--===//
1252//
1253// The LLVM Compiler Infrastructure
1254//
1255// This file was developed by Reid Spencer and is distributed under the
1256// University of Illinois Open Source License. See LICENSE.TXT for details.
1257//
1258//===----------------------------------------------------------------------===//
1259//
1260// This file implements the flex scanner for configuration files for the
1261// llvmc CompilerDriver.
1262//
1263//===----------------------------------------------------------------------===*/
1264#define YY_NEVER_INTERACTIVE 1
1265#line 29 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1266
1267#include "ConfigLexer.h"
1268
1269#define YY_INPUT(buf,result,max_size) \
1270 { \
1271 assert(ConfigLexerInput != 0 && "Oops"); \
1272 result = ConfigLexerInput->read(buf,max_size); \
1273 if (result == 0 ) result = YY_NULL; \
1274 }
1275
1276#define YY_FATAL_ERROR(msg) \
1277 { \
1278 assert(ConfigLexerInput != 0 && "Oops"); \
1279 ConfigLexerInput->error(msg); \
1280 }
1281
1282#define YY_DECL ConfigLexerTokens llvm::Configlex()
1283
1284#define yyterminate() { return EOFTOK; }
1285
1286using namespace llvm;
1287
1288inline llvm::ConfigLexerTokens
1289handleNameContext(llvm::ConfigLexerTokens token) {
1290 ConfigLexerState.StringVal = yytext;
1291 if (ConfigLexerState.in_value)
1292 return OPTION;
1293 return token;
1294}
1295
1296inline llvm::ConfigLexerTokens
1297handleSubstitution(llvm::ConfigLexerTokens token) {
1298 if (ConfigLexerState.in_value) {
1299 ConfigLexerState.StringVal = yytext;
1300 return token;
1301 }
1302 YY_FATAL_ERROR("Substitition tokens not allowed in names" );
1303 return ERRORTOK;
1304};
1305
1306inline llvm::ConfigLexerTokens handleValueContext(llvm::ConfigLexerTokens token) {
1307 ConfigLexerState.StringVal = yytext;
1308 if (ConfigLexerState.in_value)
1309 return token;
1310 return OPTION;
1311}
1312
1313#line 1314 "ConfigLexer.cpp"
1314
1315/* Macros after this point can all be overridden by user definitions in
1316 * section 1.
1317 */
1318
1319#ifndef YY_SKIP_YYWRAP
1320#ifdef __cplusplus
1321extern "C" int yywrap YY_PROTO(( void ));
1322#else
1323extern int yywrap YY_PROTO(( void ));
1324#endif
1325#endif
1326
1327#ifndef YY_NO_UNPUT
1328static inline void yyunput YY_PROTO(( int c, char *buf_ptr ));
1329#endif
1330
1331#ifndef yytext_ptr
1332static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
1333#endif
1334
1335#ifdef YY_NEED_STRLEN
1336static int yy_flex_strlen YY_PROTO(( yyconst char * ));
1337#endif
1338
1339#ifndef YY_NO_INPUT
1340#ifdef __cplusplus
1341static int yyinput YY_PROTO(( void ));
1342#else
1343static int input YY_PROTO(( void ));
1344#endif
1345#endif
1346
1347#if YY_STACK_USED
1348static int yy_start_stack_ptr = 0;
1349static int yy_start_stack_depth = 0;
1350static int *yy_start_stack = 0;
1351#ifndef YY_NO_PUSH_STATE
1352static void yy_push_state YY_PROTO(( int new_state ));
1353#endif
1354#ifndef YY_NO_POP_STATE
1355static void yy_pop_state YY_PROTO(( void ));
1356#endif
1357#ifndef YY_NO_TOP_STATE
1358static int yy_top_state YY_PROTO(( void ));
1359#endif
1360
1361#else
1362#define YY_NO_PUSH_STATE 1
1363#define YY_NO_POP_STATE 1
1364#define YY_NO_TOP_STATE 1
1365#endif
1366
1367#ifdef YY_MALLOC_DECL
1368YY_MALLOC_DECL
1369#else
1370#if __STDC__
1371#ifndef __cplusplus
1372#include <stdlib.h>
1373#endif
1374#else
1375/* Just try to get by without declaring the routines. This will fail
1376 * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int)
1377 * or sizeof(void*) != sizeof(int).
1378 */
1379#endif
1380#endif
1381
1382/* Amount of stuff to slurp up with each read. */
1383#ifndef YY_READ_BUF_SIZE
1384#define YY_READ_BUF_SIZE 8192
1385#endif
1386
1387/* Copy whatever the last rule matched to the standard output. */
1388
1389#ifndef ECHO
1390/* This used to be an fputs(), but since the string might contain NUL's,
1391 * we now use fwrite().
1392 */
1393#define ECHO (void) fwrite( yytext, yyleng, 1, yyout )
1394#endif
1395
1396/* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
1397 * is returned in "result".
1398 */
1399#ifndef YY_INPUT
1400#define YY_INPUT(buf,result,max_size) \
1401 if ( yy_current_buffer->yy_is_interactive ) \
1402 { \
1403 int c = '*', n; \
1404 for ( n = 0; n < max_size && \
1405 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
1406 buf[n] = (char) c; \
1407 if ( c == '\n' ) \
1408 buf[n++] = (char) c; \
1409 if ( c == EOF && ferror( yyin ) ) \
1410 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1411 result = n; \
1412 } \
1413 else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
1414 && ferror( yyin ) ) \
1415 YY_FATAL_ERROR( "input in flex scanner failed" );
1416#endif
1417
1418/* No semi-colon after return; correct usage is to write "yyterminate();" -
1419 * we don't want an extra ';' after the "return" because that will cause
1420 * some compilers to complain about unreachable statements.
1421 */
1422#ifndef yyterminate
1423#define yyterminate() return YY_NULL
1424#endif
1425
1426/* Number of entries by which start-condition stack grows. */
1427#ifndef YY_START_STACK_INCR
1428#define YY_START_STACK_INCR 25
1429#endif
1430
1431/* Report a fatal error. */
1432#ifndef YY_FATAL_ERROR
1433#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
1434#endif
1435
1436/* Default declaration of generated scanner - a define so the user can
1437 * easily add parameters.
1438 */
1439#ifndef YY_DECL
1440#define YY_DECL int yylex YY_PROTO(( void ))
1441#endif
1442
1443/* Code executed at the beginning of each rule, after yytext and yyleng
1444 * have been set up.
1445 */
1446#ifndef YY_USER_ACTION
1447#define YY_USER_ACTION
1448#endif
1449
1450/* Code executed at the end of each rule. */
1451#ifndef YY_BREAK
1452#define YY_BREAK break;
1453#endif
1454
1455#define YY_RULE_SETUP \
1456 YY_USER_ACTION
1457
1458YY_DECL
1459 {
1460 register yy_state_type yy_current_state;
1461 register char *yy_cp = NULL, *yy_bp = NULL;
1462 register int yy_act;
1463
1464#line 114 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1465
1466
1467#line 1468 "ConfigLexer.cpp"
1468
1469 if ( yy_init )
1470 {
1471 yy_init = 0;
1472
1473#ifdef YY_USER_INIT
1474 YY_USER_INIT;
1475#endif
1476
1477 if ( ! yy_start )
1478 yy_start = 1; /* first start state */
1479
1480 if ( ! yyin )
1481 yyin = stdin;
1482
1483 if ( ! yyout )
1484 yyout = stdout;
1485
1486 if ( ! yy_current_buffer )
1487 yy_current_buffer =
1488 yy_create_buffer( yyin, YY_BUF_SIZE );
1489
1490 yy_load_buffer_state();
1491 }
1492
1493 while ( 1 ) /* loops until end-of-file is reached */
1494 {
1495 yy_cp = yy_c_buf_p;
1496
1497 /* Support of yytext. */
1498 *yy_cp = yy_hold_char;
1499
1500 /* yy_bp points to the position in yy_ch_buf of the start of
1501 * the current run.
1502 */
1503 yy_bp = yy_cp;
1504
1505 yy_current_state = yy_start;
1506yy_match:
1507 do
1508 {
1509 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
1510 if ( yy_accept[yy_current_state] )
1511 {
1512 yy_last_accepting_state = yy_current_state;
1513 yy_last_accepting_cpos = yy_cp;
1514 }
1515 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1516 {
1517 yy_current_state = (int) yy_def[yy_current_state];
1518 if ( yy_current_state >= 411 )
1519 yy_c = yy_meta[(unsigned int) yy_c];
1520 }
1521 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
1522 ++yy_cp;
1523 }
1524 while ( yy_current_state != 410 );
1525 yy_cp = yy_last_accepting_cpos;
1526 yy_current_state = yy_last_accepting_state;
1527
1528yy_find_action:
1529 yy_act = yy_accept[yy_current_state];
1530
1531 YY_DO_BEFORE_ACTION;
1532
1533
1534do_action: /* This label is used only to access EOF actions. */
1535
1536
1537 switch ( yy_act )
1538 { /* beginning of action switch */
1539 case 0: /* must back up */
1540 /* undo the effects of YY_DO_BEFORE_ACTION */
1541 *yy_cp = yy_hold_char;
1542 yy_cp = yy_last_accepting_cpos;
1543 yy_current_state = yy_last_accepting_state;
1544 goto yy_find_action;
1545
1546case 1:
1547YY_RULE_SETUP
1548#line 116 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1549{ if (ConfigLexerState.in_value) return SPACE; }
1550 YY_BREAK
1551case 2:
1552YY_RULE_SETUP
1553#line 118 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1554{ /* Ignore comments */
1555 ConfigLexerState.in_value = false;
1556 ConfigLexerState.lineNum++;
1557 return EOLTOK;
1558 }
1559 YY_BREAK
1560case 3:
1561YY_RULE_SETUP
1562#line 124 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1563{ ConfigLexerState.lineNum++;
1564 /* Don't return EOLTOK! */
1565 }
1566 YY_BREAK
1567case 4:
1568YY_RULE_SETUP
1569#line 128 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1570{ ConfigLexerState.in_value = false;
1571 ConfigLexerState.lineNum++;
1572 return EOLTOK;
1573 }
1574 YY_BREAK
1575case 5:
1576YY_RULE_SETUP
1577#line 133 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1578{ ConfigLexerState.in_value = true;
1579 return EQUALS;
1580 }
1581 YY_BREAK
1582case 6:
1583YY_RULE_SETUP
1584#line 137 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1585{ return SEPARATOR; }
1586 YY_BREAK
1587case 7:
1588YY_RULE_SETUP
1589#line 139 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1590{ return handleNameContext(VERSION_TOK); }
1591 YY_BREAK
1592case 8:
1593YY_RULE_SETUP
1594#line 141 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1595{ return handleNameContext(LANG); }
1596 YY_BREAK
1597case 9:
1598YY_RULE_SETUP
1599#line 142 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1600{ return handleNameContext(LIBS); }
1601 YY_BREAK
1602case 10:
1603YY_RULE_SETUP
1604#line 143 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1605{ return handleNameContext(NAME); }
1606 YY_BREAK
1607case 11:
1608YY_RULE_SETUP
1609#line 144 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1610{ return handleNameContext(OPT1); }
1611 YY_BREAK
1612case 12:
1613YY_RULE_SETUP
1614#line 145 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1615{ return handleNameContext(OPT2); }
1616 YY_BREAK
1617case 13:
1618YY_RULE_SETUP
1619#line 146 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1620{ return handleNameContext(OPT3); }
1621 YY_BREAK
1622case 14:
1623YY_RULE_SETUP
1624#line 147 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1625{ return handleNameContext(OPT4); }
1626 YY_BREAK
1627case 15:
1628YY_RULE_SETUP
1629#line 148 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1630{ return handleNameContext(OPT5); }
1631 YY_BREAK
1632case 16:
1633YY_RULE_SETUP
1634#line 150 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1635{ return handleNameContext(PREPROCESSOR); }
1636 YY_BREAK
1637case 17:
1638YY_RULE_SETUP
1639#line 151 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1640{ return handleNameContext(COMMAND); }
1641 YY_BREAK
1642case 18:
1643YY_RULE_SETUP
1644#line 152 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1645{ return handleNameContext(REQUIRED); }
1646 YY_BREAK
1647case 19:
1648YY_RULE_SETUP
1649#line 154 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1650{ return handleNameContext(TRANSLATOR); }
1651 YY_BREAK
1652case 20:
1653YY_RULE_SETUP
1654#line 155 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1655{ return handleNameContext(PREPROCESSES); }
1656 YY_BREAK
1657case 21:
1658YY_RULE_SETUP
1659#line 156 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1660{ return handleNameContext(OUTPUT); }
1661 YY_BREAK
1662case 22:
1663YY_RULE_SETUP
1664#line 158 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1665{ return handleNameContext(OPTIMIZER); }
1666 YY_BREAK
1667case 23:
1668YY_RULE_SETUP
1669#line 159 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1670{ return handleNameContext(TRANSLATES); }
1671 YY_BREAK
1672case 24:
1673YY_RULE_SETUP
1674#line 161 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1675{ return handleNameContext(ASSEMBLER); }
1676 YY_BREAK
1677case 25:
1678YY_RULE_SETUP
1679#line 163 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1680{ return handleNameContext(LINKER); }
1681 YY_BREAK
1682case 26:
1683YY_RULE_SETUP
1684#line 165 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1685{ return handleSubstitution(ARGS_SUBST); }
1686 YY_BREAK
1687case 27:
1688YY_RULE_SETUP
1689#line 166 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1690{ return handleSubstitution(BINDIR_SUBST); }
1691 YY_BREAK
1692case 28:
1693YY_RULE_SETUP
1694#line 167 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1695{ return handleSubstitution(DEFS_SUBST); }
1696 YY_BREAK
1697case 29:
1698YY_RULE_SETUP
1699#line 168 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1700{ return handleSubstitution(IN_SUBST); }
1701 YY_BREAK
1702case 30:
1703YY_RULE_SETUP
1704#line 169 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1705{ return handleSubstitution(INCLS_SUBST); }
1706 YY_BREAK
1707case 31:
1708YY_RULE_SETUP
1709#line 170 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1710{ return handleSubstitution(LIBDIR_SUBST); }
1711 YY_BREAK
1712case 32:
1713YY_RULE_SETUP
1714#line 171 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1715{ return handleSubstitution(LIBS_SUBST); }
1716 YY_BREAK
1717case 33:
1718YY_RULE_SETUP
1719#line 172 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1720{ return handleSubstitution(LLVMGCCDIR_SUBST); }
1721 YY_BREAK
1722case 34:
1723YY_RULE_SETUP
1724#line 173 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1725{ return handleSubstitution(LLVMGCCARCH_SUBST); }
1726 YY_BREAK
1727case 35:
1728YY_RULE_SETUP
1729#line 174 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1730{ return handleSubstitution(LLVMGCC_SUBST); }
1731 YY_BREAK
1732case 36:
1733YY_RULE_SETUP
1734#line 175 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1735{ return handleSubstitution(LLVMGXX_SUBST); }
1736 YY_BREAK
1737case 37:
1738YY_RULE_SETUP
1739#line 176 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1740{ return handleSubstitution(LLVMCC1_SUBST); }
1741 YY_BREAK
1742case 38:
1743YY_RULE_SETUP
1744#line 177 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1745{ return handleSubstitution(LLVMCC1PLUS_SUBST); }
1746 YY_BREAK
1747case 39:
1748YY_RULE_SETUP
1749#line 178 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1750{ return handleSubstitution(OPT_SUBST); }
1751 YY_BREAK
1752case 40:
1753YY_RULE_SETUP
1754#line 179 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1755{ return handleSubstitution(OUT_SUBST); }
1756 YY_BREAK
1757case 41:
1758YY_RULE_SETUP
1759#line 180 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1760{ return handleSubstitution(STATS_SUBST); }
1761 YY_BREAK
1762case 42:
1763YY_RULE_SETUP
1764#line 181 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1765{ return handleSubstitution(TARGET_SUBST); }
1766 YY_BREAK
1767case 43:
1768YY_RULE_SETUP
1769#line 182 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1770{ return handleSubstitution(TIME_SUBST); }
1771 YY_BREAK
1772case 44:
1773YY_RULE_SETUP
1774#line 183 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1775{ return handleSubstitution(VERBOSE_SUBST); }
1776 YY_BREAK
1777case 45:
1778YY_RULE_SETUP
1779#line 184 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1780{ return handleSubstitution(FOPTS_SUBST); }
1781 YY_BREAK
1782case 46:
1783YY_RULE_SETUP
1784#line 185 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1785{ return handleSubstitution(MOPTS_SUBST); }
1786 YY_BREAK
1787case 47:
1788YY_RULE_SETUP
1789#line 186 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1790{ return handleSubstitution(WOPTS_SUBST); }
1791 YY_BREAK
1792case 48:
1793YY_RULE_SETUP
1794#line 188 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1795{ return handleValueContext(ASSEMBLY); }
1796 YY_BREAK
1797case 49:
1798YY_RULE_SETUP
1799#line 189 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1800{ return handleValueContext(BYTECODE); }
1801 YY_BREAK
1802case 50:
1803YY_RULE_SETUP
1804#line 190 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1805{ return handleValueContext(TRUETOK); }
1806 YY_BREAK
1807case 51:
1808YY_RULE_SETUP
1809#line 191 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1810{ return handleValueContext(FALSETOK); }
1811 YY_BREAK
1812case 52:
1813YY_RULE_SETUP
1814#line 193 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1815{ ConfigLexerState.StringVal = yytext; return OPTION; }
1816 YY_BREAK
1817case 53:
1818YY_RULE_SETUP
1819#line 194 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1820{ ConfigLexerState.StringVal = yytext+1; // Nuke start quote
1821 ConfigLexerState.StringVal.erase(
1822 --ConfigLexerState.StringVal.end());
1823 return STRING;
1824 }
1825 YY_BREAK
1826case 54:
1827YY_RULE_SETUP
1828#line 199 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1829{ YY_FATAL_ERROR("Invalid substitution token"); }
1830 YY_BREAK
1831case 55:
1832YY_RULE_SETUP
1833#line 201 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
1834ECHO;
1835 YY_BREAK
1836#line 1837 "ConfigLexer.cpp"
1837case YY_STATE_EOF(INITIAL):
1838 yyterminate();
1839
1840 case YY_END_OF_BUFFER:
1841 {
1842 /* Amount of text matched not including the EOB char. */
1843 int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;
1844
1845 /* Undo the effects of YY_DO_BEFORE_ACTION. */
1846 *yy_cp = yy_hold_char;
1847 YY_RESTORE_YY_MORE_OFFSET
1848
1849 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
1850 {
1851 /* We're scanning a new file or input source. It's
1852 * possible that this happened because the user
1853 * just pointed yyin at a new source and called
1854 * yylex(). If so, then we have to assure
1855 * consistency between yy_current_buffer and our
1856 * globals. Here is the right place to do so, because
1857 * this is the first action (other than possibly a
1858 * back-up) that will match for the new input source.
1859 */
1860 yy_n_chars = yy_current_buffer->yy_n_chars;
1861 yy_current_buffer->yy_input_file = yyin;
1862 yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;
1863 }
1864
1865 /* Note that here we test for yy_c_buf_p "<=" to the position
1866 * of the first EOB in the buffer, since yy_c_buf_p will
1867 * already have been incremented past the NUL character
1868 * (since all states make transitions on EOB to the
1869 * end-of-buffer state). Contrast this with the test
1870 * in input().
1871 */
1872 if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
1873 { /* This was really a NUL. */
1874 yy_state_type yy_next_state;
1875
1876 yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text;
1877
1878 yy_current_state = yy_get_previous_state();
1879
1880 /* Okay, we're now positioned to make the NUL
1881 * transition. We couldn't have
1882 * yy_get_previous_state() go ahead and do it
1883 * for us because it doesn't know how to deal
1884 * with the possibility of jamming (and we don't
1885 * want to build jamming into it because then it
1886 * will run more slowly).
1887 */
1888
1889 yy_next_state = yy_try_NUL_trans( yy_current_state );
1890
1891 yy_bp = yytext_ptr + YY_MORE_ADJ;
1892
1893 if ( yy_next_state )
1894 {
1895 /* Consume the NUL. */
1896 yy_cp = ++yy_c_buf_p;
1897 yy_current_state = yy_next_state;
1898 goto yy_match;
1899 }
1900
1901 else
1902 {
1903 yy_cp = yy_last_accepting_cpos;
1904 yy_current_state = yy_last_accepting_state;
1905 goto yy_find_action;
1906 }
1907 }
1908
1909 else switch ( yy_get_next_buffer() )
1910 {
1911 case EOB_ACT_END_OF_FILE:
1912 {
1913 yy_did_buffer_switch_on_eof = 0;
1914
1915 if ( yywrap() )
1916 {
1917 /* Note: because we've taken care in
1918 * yy_get_next_buffer() to have set up
1919 * yytext, we can now set up
1920 * yy_c_buf_p so that if some total
1921 * hoser (like flex itself) wants to
1922 * call the scanner after we return the
1923 * YY_NULL, it'll still work - another
1924 * YY_NULL will get returned.
1925 */
1926 yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
1927
1928 yy_act = YY_STATE_EOF(YY_START);
1929 goto do_action;
1930 }
1931
1932 else
1933 {
1934 if ( ! yy_did_buffer_switch_on_eof )
1935 YY_NEW_FILE;
1936 }
1937 break;
1938 }
1939
1940 case EOB_ACT_CONTINUE_SCAN:
1941 yy_c_buf_p =
1942 yytext_ptr + yy_amount_of_matched_text;
1943
1944 yy_current_state = yy_get_previous_state();
1945
1946 yy_cp = yy_c_buf_p;
1947 yy_bp = yytext_ptr + YY_MORE_ADJ;
1948 goto yy_match;
1949
1950 case EOB_ACT_LAST_MATCH:
1951 yy_c_buf_p =
1952 &yy_current_buffer->yy_ch_buf[yy_n_chars];
1953
1954 yy_current_state = yy_get_previous_state();
1955
1956 yy_cp = yy_c_buf_p;
1957 yy_bp = yytext_ptr + YY_MORE_ADJ;
1958 goto yy_find_action;
1959 }
1960 break;
1961 }
1962
1963 default:
1964 YY_FATAL_ERROR(
1965 "fatal flex scanner internal error--no action found" );
1966 } /* end of action switch */
1967 } /* end of scanning one token */
1968 } /* end of yylex */
1969
1970
1971/* yy_get_next_buffer - try to read in a new buffer
1972 *
1973 * Returns a code representing an action:
1974 * EOB_ACT_LAST_MATCH -
1975 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
1976 * EOB_ACT_END_OF_FILE - end of file
1977 */
1978
1979static int yy_get_next_buffer()
1980 {
1981 register char *dest = yy_current_buffer->yy_ch_buf;
1982 register char *source = yytext_ptr;
1983 register int number_to_move, i;
1984 int ret_val;
1985
1986 if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
1987 YY_FATAL_ERROR(
1988 "fatal flex scanner internal error--end of buffer missed" );
1989
1990 if ( yy_current_buffer->yy_fill_buffer == 0 )
1991 { /* Don't try to fill the buffer, so this is an EOF. */
1992 if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
1993 {
1994 /* We matched a single character, the EOB, so
1995 * treat this as a final EOF.
1996 */
1997 return EOB_ACT_END_OF_FILE;
1998 }
1999
2000 else
2001 {
2002 /* We matched some text prior to the EOB, first
2003 * process it.
2004 */
2005 return EOB_ACT_LAST_MATCH;
2006 }
2007 }
2008
2009 /* Try to read more data. */
2010
2011 /* First move last chars to start of buffer. */
2012 number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1;
2013
2014 for ( i = 0; i < number_to_move; ++i )
2015 *(dest++) = *(source++);
2016
2017 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING )
2018 /* don't do the read, it's not guaranteed to return an EOF,
2019 * just force an EOF
2020 */
2021 yy_current_buffer->yy_n_chars = yy_n_chars = 0;
2022
2023 else
2024 {
2025 int num_to_read =
2026 yy_current_buffer->yy_buf_size - number_to_move - 1;
2027
2028 while ( num_to_read <= 0 )
2029 { /* Not enough room in the buffer - grow it. */
2030#ifdef YY_USES_REJECT
2031 YY_FATAL_ERROR(
2032"input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
2033#else
2034
2035 /* just a shorter name for the current buffer */
2036 YY_BUFFER_STATE b = yy_current_buffer;
2037
2038 int yy_c_buf_p_offset =
2039 (int) (yy_c_buf_p - b->yy_ch_buf);
2040
2041 if ( b->yy_is_our_buffer )
2042 {
2043 int new_size = b->yy_buf_size * 2;
2044
2045 if ( new_size <= 0 )
2046 b->yy_buf_size += b->yy_buf_size / 8;
2047 else
2048 b->yy_buf_size *= 2;
2049
2050 b->yy_ch_buf = (char *)
2051 /* Include room in for 2 EOB chars. */
2052 yy_flex_realloc( (void *) b->yy_ch_buf,
2053 b->yy_buf_size + 2 );
2054 }
2055 else
2056 /* Can't grow it, we don't own it. */
2057 b->yy_ch_buf = 0;
2058
2059 if ( ! b->yy_ch_buf )
2060 YY_FATAL_ERROR(
2061 "fatal error - scanner input buffer overflow" );
2062
2063 yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
2064
2065 num_to_read = yy_current_buffer->yy_buf_size -
2066 number_to_move - 1;
2067#endif
2068 }
2069
2070 if ( num_to_read > YY_READ_BUF_SIZE )
2071 num_to_read = YY_READ_BUF_SIZE;
2072
2073 /* Read in more data. */
2074 YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
2075 yy_n_chars, num_to_read );
2076
2077 yy_current_buffer->yy_n_chars = yy_n_chars;
2078 }
2079
2080 if ( yy_n_chars == 0 )
2081 {
2082 if ( number_to_move == YY_MORE_ADJ )
2083 {
2084 ret_val = EOB_ACT_END_OF_FILE;
2085 yyrestart( yyin );
2086 }
2087
2088 else
2089 {
2090 ret_val = EOB_ACT_LAST_MATCH;
2091 yy_current_buffer->yy_buffer_status =
2092 YY_BUFFER_EOF_PENDING;
2093 }
2094 }
2095
2096 else
2097 ret_val = EOB_ACT_CONTINUE_SCAN;
2098
2099 yy_n_chars += number_to_move;
2100 yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
2101 yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
2102
2103 yytext_ptr = &yy_current_buffer->yy_ch_buf[0];
2104
2105 return ret_val;
2106 }
2107
2108
2109/* yy_get_previous_state - get the state just before the EOB char was reached */
2110
2111static yy_state_type yy_get_previous_state()
2112 {
2113 register yy_state_type yy_current_state;
2114 register char *yy_cp;
2115
2116 yy_current_state = yy_start;
2117
2118 for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
2119 {
2120 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
2121 if ( yy_accept[yy_current_state] )
2122 {
2123 yy_last_accepting_state = yy_current_state;
2124 yy_last_accepting_cpos = yy_cp;
2125 }
2126 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2127 {
2128 yy_current_state = (int) yy_def[yy_current_state];
2129 if ( yy_current_state >= 411 )
2130 yy_c = yy_meta[(unsigned int) yy_c];
2131 }
2132 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2133 }
2134
2135 return yy_current_state;
2136 }
2137
2138
2139/* yy_try_NUL_trans - try to make a transition on the NUL character
2140 *
2141 * synopsis
2142 * next_state = yy_try_NUL_trans( current_state );
2143 */
2144
2145#ifdef YY_USE_PROTOS
2146static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state )
2147#else
2148static yy_state_type yy_try_NUL_trans( yy_current_state )
2149yy_state_type yy_current_state;
2150#endif
2151 {
2152 register int yy_is_jam;
2153 register char *yy_cp = yy_c_buf_p;
2154
2155 register YY_CHAR yy_c = 1;
2156 if ( yy_accept[yy_current_state] )
2157 {
2158 yy_last_accepting_state = yy_current_state;
2159 yy_last_accepting_cpos = yy_cp;
2160 }
2161 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2162 {
2163 yy_current_state = (int) yy_def[yy_current_state];
2164 if ( yy_current_state >= 411 )
2165 yy_c = yy_meta[(unsigned int) yy_c];
2166 }
2167 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2168 yy_is_jam = (yy_current_state == 410);
2169
2170 return yy_is_jam ? 0 : yy_current_state;
2171 }
2172
2173
2174#ifndef YY_NO_UNPUT
2175#ifdef YY_USE_PROTOS
2176static inline void yyunput( int c, register char *yy_bp )
2177#else
2178static inline void yyunput( c, yy_bp )
2179int c;
2180register char *yy_bp;
2181#endif
2182 {
2183 register char *yy_cp = yy_c_buf_p;
2184
2185 /* undo effects of setting up yytext */
2186 *yy_cp = yy_hold_char;
2187
2188 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
2189 { /* need to shift things up to make room */
2190 /* +2 for EOB chars. */
2191 register int number_to_move = yy_n_chars + 2;
2192 register char *dest = &yy_current_buffer->yy_ch_buf[
2193 yy_current_buffer->yy_buf_size + 2];
2194 register char *source =
2195 &yy_current_buffer->yy_ch_buf[number_to_move];
2196
2197 while ( source > yy_current_buffer->yy_ch_buf )
2198 *--dest = *--source;
2199
2200 yy_cp += (int) (dest - source);
2201 yy_bp += (int) (dest - source);
2202 yy_current_buffer->yy_n_chars =
2203 yy_n_chars = yy_current_buffer->yy_buf_size;
2204
2205 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
2206 YY_FATAL_ERROR( "flex scanner push-back overflow" );
2207 }
2208
2209 *--yy_cp = (char) c;
2210
2211
2212 yytext_ptr = yy_bp;
2213 yy_hold_char = *yy_cp;
2214 yy_c_buf_p = yy_cp;
2215 }
2216#endif /* ifndef YY_NO_UNPUT */
2217
2218
2219#ifndef YY_NO_INPUT
2220#ifdef __cplusplus
2221static int yyinput()
2222#else
2223static int input()
2224#endif
2225 {
2226 int c;
2227
2228 *yy_c_buf_p = yy_hold_char;
2229
2230 if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
2231 {
2232 /* yy_c_buf_p now points to the character we want to return.
2233 * If this occurs *before* the EOB characters, then it's a
2234 * valid NUL; if not, then we've hit the end of the buffer.
2235 */
2236 if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )
2237 /* This was really a NUL. */
2238 *yy_c_buf_p = '\0';
2239
2240 else
2241 { /* need more input */
2242 int offset = yy_c_buf_p - yytext_ptr;
2243 ++yy_c_buf_p;
2244
2245 switch ( yy_get_next_buffer() )
2246 {
2247 case EOB_ACT_LAST_MATCH:
2248 /* This happens because yy_g_n_b()
2249 * sees that we've accumulated a
2250 * token and flags that we need to
2251 * try matching the token before
2252 * proceeding. But for input(),
2253 * there's no matching to consider.
2254 * So convert the EOB_ACT_LAST_MATCH
2255 * to EOB_ACT_END_OF_FILE.
2256 */
2257
2258 /* Reset buffer status. */
2259 yyrestart( yyin );
2260
2261 /* fall through */
2262
2263 case EOB_ACT_END_OF_FILE:
2264 {
2265 if ( yywrap() )
2266 return EOF;
2267
2268 if ( ! yy_did_buffer_switch_on_eof )
2269 YY_NEW_FILE;
2270#ifdef __cplusplus
2271 return yyinput();
2272#else
2273 return input();
2274#endif
2275 }
2276
2277 case EOB_ACT_CONTINUE_SCAN:
2278 yy_c_buf_p = yytext_ptr + offset;
2279 break;
2280 }
2281 }
2282 }
2283
2284 c = *(unsigned char *) yy_c_buf_p; /* cast for 8-bit char's */
2285 *yy_c_buf_p = '\0'; /* preserve yytext */
2286 yy_hold_char = *++yy_c_buf_p;
2287
2288
2289 return c;
2290 }
2291#endif /* YY_NO_INPUT */
2292
2293#ifdef YY_USE_PROTOS
2294void yyrestart( FILE *input_file )
2295#else
2296void yyrestart( input_file )
2297FILE *input_file;
2298#endif
2299 {
2300 if ( ! yy_current_buffer )
2301 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE );
2302
2303 yy_init_buffer( yy_current_buffer, input_file );
2304 yy_load_buffer_state();
2305 }
2306
2307
2308#ifdef YY_USE_PROTOS
2309void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer )
2310#else
2311void yy_switch_to_buffer( new_buffer )
2312YY_BUFFER_STATE new_buffer;
2313#endif
2314 {
2315 if ( yy_current_buffer == new_buffer )
2316 return;
2317
2318 if ( yy_current_buffer )
2319 {
2320 /* Flush out information for old buffer. */
2321 *yy_c_buf_p = yy_hold_char;
2322 yy_current_buffer->yy_buf_pos = yy_c_buf_p;
2323 yy_current_buffer->yy_n_chars = yy_n_chars;
2324 }
2325
2326 yy_current_buffer = new_buffer;
2327 yy_load_buffer_state();
2328
2329 /* We don't actually know whether we did this switch during
2330 * EOF (yywrap()) processing, but the only time this flag
2331 * is looked at is after yywrap() is called, so it's safe
2332 * to go ahead and always set it.
2333 */
2334 yy_did_buffer_switch_on_eof = 1;
2335 }
2336
2337
2338#ifdef YY_USE_PROTOS
2339void yy_load_buffer_state( void )
2340#else
2341void yy_load_buffer_state()
2342#endif
2343 {
2344 yy_n_chars = yy_current_buffer->yy_n_chars;
2345 yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos;
2346 yyin = yy_current_buffer->yy_input_file;
2347 yy_hold_char = *yy_c_buf_p;
2348 }
2349
2350
2351#ifdef YY_USE_PROTOS
2352YY_BUFFER_STATE yy_create_buffer( FILE *file, int size )
2353#else
2354YY_BUFFER_STATE yy_create_buffer( file, size )
2355FILE *file;
2356int size;
2357#endif
2358 {
2359 YY_BUFFER_STATE b;
2360
2361 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
2362 if ( ! b )
2363 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
2364
2365 b->yy_buf_size = size;
2366
2367 /* yy_ch_buf has to be 2 characters longer than the size given because
2368 * we need to put in 2 end-of-buffer characters.
2369 */
2370 b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );
2371 if ( ! b->yy_ch_buf )
2372 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
2373
2374 b->yy_is_our_buffer = 1;
2375
2376 yy_init_buffer( b, file );
2377
2378 return b;
2379 }
2380
2381
2382#ifdef YY_USE_PROTOS
2383void yy_delete_buffer( YY_BUFFER_STATE b )
2384#else
2385void yy_delete_buffer( b )
2386YY_BUFFER_STATE b;
2387#endif
2388 {
2389 if ( ! b )
2390 return;
2391
2392 if ( b == yy_current_buffer )
2393 yy_current_buffer = (YY_BUFFER_STATE) 0;
2394
2395 if ( b->yy_is_our_buffer )
2396 yy_flex_free( (void *) b->yy_ch_buf );
2397
2398 yy_flex_free( (void *) b );
2399 }
2400
2401
2402
2403#ifdef YY_USE_PROTOS
2404void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
2405#else
2406void yy_init_buffer( b, file )
2407YY_BUFFER_STATE b;
2408FILE *file;
2409#endif
2410
2411
2412 {
2413 yy_flush_buffer( b );
2414
2415 b->yy_input_file = file;
2416 b->yy_fill_buffer = 1;
2417
2418#if YY_ALWAYS_INTERACTIVE
2419 b->yy_is_interactive = 1;
2420#else
2421#if YY_NEVER_INTERACTIVE
2422 b->yy_is_interactive = 0;
2423#else
2424 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
2425#endif
2426#endif
2427 }
2428
2429
2430#ifdef YY_USE_PROTOS
2431void yy_flush_buffer( YY_BUFFER_STATE b )
2432#else
2433void yy_flush_buffer( b )
2434YY_BUFFER_STATE b;
2435#endif
2436
2437 {
2438 if ( ! b )
2439 return;
2440
2441 b->yy_n_chars = 0;
2442
2443 /* We always need two end-of-buffer characters. The first causes
2444 * a transition to the end-of-buffer state. The second causes
2445 * a jam in that state.
2446 */
2447 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
2448 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
2449
2450 b->yy_buf_pos = &b->yy_ch_buf[0];
2451
2452 b->yy_at_bol = 1;
2453 b->yy_buffer_status = YY_BUFFER_NEW;
2454
2455 if ( b == yy_current_buffer )
2456 yy_load_buffer_state();
2457 }
2458
2459
2460#ifndef YY_NO_SCAN_BUFFER
2461#ifdef YY_USE_PROTOS
2462YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size )
2463#else
2464YY_BUFFER_STATE yy_scan_buffer( base, size )
2465char *base;
2466yy_size_t size;
2467#endif
2468 {
2469 YY_BUFFER_STATE b;
2470
2471 if ( size < 2 ||
2472 base[size-2] != YY_END_OF_BUFFER_CHAR ||
2473 base[size-1] != YY_END_OF_BUFFER_CHAR )
2474 /* They forgot to leave room for the EOB's. */
2475 return 0;
2476
2477 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
2478 if ( ! b )
2479 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
2480
2481 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
2482 b->yy_buf_pos = b->yy_ch_buf = base;
2483 b->yy_is_our_buffer = 0;
2484 b->yy_input_file = 0;
2485 b->yy_n_chars = b->yy_buf_size;
2486 b->yy_is_interactive = 0;
2487 b->yy_at_bol = 1;
2488 b->yy_fill_buffer = 0;
2489 b->yy_buffer_status = YY_BUFFER_NEW;
2490
2491 yy_switch_to_buffer( b );
2492
2493 return b;
2494 }
2495#endif
2496
2497
2498#ifndef YY_NO_SCAN_STRING
2499#ifdef YY_USE_PROTOS
2500YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str )
2501#else
2502YY_BUFFER_STATE yy_scan_string( yy_str )
2503yyconst char *yy_str;
2504#endif
2505 {
2506 int len;
2507 for ( len = 0; yy_str[len]; ++len )
2508 ;
2509
2510 return yy_scan_bytes( yy_str, len );
2511 }
2512#endif
2513
2514
2515#ifndef YY_NO_SCAN_BYTES
2516#ifdef YY_USE_PROTOS
2517YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len )
2518#else
2519YY_BUFFER_STATE yy_scan_bytes( bytes, len )
2520yyconst char *bytes;
2521int len;
2522#endif
2523 {
2524 YY_BUFFER_STATE b;
2525 char *buf;
2526 yy_size_t n;
2527 int i;
2528
2529 /* Get memory for full buffer, including space for trailing EOB's. */
2530 n = len + 2;
2531 buf = (char *) yy_flex_alloc( n );
2532 if ( ! buf )
2533 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
2534
2535 for ( i = 0; i < len; ++i )
2536 buf[i] = bytes[i];
2537
2538 buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
2539
2540 b = yy_scan_buffer( buf, n );
2541 if ( ! b )
2542 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
2543
2544 /* It's okay to grow etc. this buffer, and we should throw it
2545 * away when we're done.
2546 */
2547 b->yy_is_our_buffer = 1;
2548
2549 return b;
2550 }
2551#endif
2552
2553
2554#ifndef YY_NO_PUSH_STATE
2555#ifdef YY_USE_PROTOS
2556static void yy_push_state( int new_state )
2557#else
2558static void yy_push_state( new_state )
2559int new_state;
2560#endif
2561 {
2562 if ( yy_start_stack_ptr >= yy_start_stack_depth )
2563 {
2564 yy_size_t new_size;
2565
2566 yy_start_stack_depth += YY_START_STACK_INCR;
2567 new_size = yy_start_stack_depth * sizeof( int );
2568
2569 if ( ! yy_start_stack )
2570 yy_start_stack = (int *) yy_flex_alloc( new_size );
2571
2572 else
2573 yy_start_stack = (int *) yy_flex_realloc(
2574 (void *) yy_start_stack, new_size );
2575
2576 if ( ! yy_start_stack )
2577 YY_FATAL_ERROR(
2578 "out of memory expanding start-condition stack" );
2579 }
2580
2581 yy_start_stack[yy_start_stack_ptr++] = YY_START;
2582
2583 BEGIN(new_state);
2584 }
2585#endif
2586
2587
2588#ifndef YY_NO_POP_STATE
2589static void yy_pop_state()
2590 {
2591 if ( --yy_start_stack_ptr < 0 )
2592 YY_FATAL_ERROR( "start-condition stack underflow" );
2593
2594 BEGIN(yy_start_stack[yy_start_stack_ptr]);
2595 }
2596#endif
2597
2598
2599#ifndef YY_NO_TOP_STATE
2600static int yy_top_state()
2601 {
2602 return yy_start_stack[yy_start_stack_ptr - 1];
2603 }
2604#endif
2605
2606#ifndef YY_EXIT_FAILURE
2607#define YY_EXIT_FAILURE 2
2608#endif
2609
2610#ifdef YY_USE_PROTOS
2611static void yy_fatal_error( yyconst char msg[] )
2612#else
2613static void yy_fatal_error( msg )
2614char msg[];
2615#endif
2616 {
2617 (void) fprintf( stderr, "%s\n", msg );
2618 exit( YY_EXIT_FAILURE );
2619 }
2620
2621
2622
2623/* Redefine yyless() so it works in section 3 code. */
2624
2625#undef yyless
2626#define yyless(n) \
2627 do \
2628 { \
2629 /* Undo effects of setting up yytext. */ \
2630 yytext[yyleng] = yy_hold_char; \
2631 yy_c_buf_p = yytext + n; \
2632 yy_hold_char = *yy_c_buf_p; \
2633 *yy_c_buf_p = '\0'; \
2634 yyleng = n; \
2635 } \
2636 while ( 0 )
2637
2638
2639/* Internal utility routines. */
2640
2641#ifndef yytext_ptr
2642#ifdef YY_USE_PROTOS
2643static void yy_flex_strncpy( char *s1, yyconst char *s2, int n )
2644#else
2645static void yy_flex_strncpy( s1, s2, n )
2646char *s1;
2647yyconst char *s2;
2648int n;
2649#endif
2650 {
2651 register int i;
2652 for ( i = 0; i < n; ++i )
2653 s1[i] = s2[i];
2654 }
2655#endif
2656
2657#ifdef YY_NEED_STRLEN
2658#ifdef YY_USE_PROTOS
2659static int yy_flex_strlen( yyconst char *s )
2660#else
2661static int yy_flex_strlen( s )
2662yyconst char *s;
2663#endif
2664 {
2665 register int n;
2666 for ( n = 0; s[n]; ++n )
2667 ;
2668
2669 return n;
2670 }
2671#endif
2672
2673
2674#ifdef YY_USE_PROTOS
2675static void *yy_flex_alloc( yy_size_t size )
2676#else
2677static void *yy_flex_alloc( size )
2678yy_size_t size;
2679#endif
2680 {
2681 return (void *) malloc( size );
2682 }
2683
2684#ifdef YY_USE_PROTOS
2685static inline void *yy_flex_realloc( void *ptr, yy_size_t size )
2686#else
2687static inline void *yy_flex_realloc( ptr, size )
2688void *ptr;
2689yy_size_t size;
2690#endif
2691 {
2692 /* The cast to (char *) in the following accommodates both
2693 * implementations that use char* generic pointers, and those
2694 * that use void* generic pointers. It works with the latter
2695 * because both ANSI C and C++ allow castless assignment from
2696 * any pointer type to void*, and deal with argument conversions
2697 * as though doing an assignment.
2698 */
2699 return (void *) realloc( (char *) ptr, size );
2700 }
2701
2702#ifdef YY_USE_PROTOS
2703static void yy_flex_free( void *ptr )
2704#else
2705static void yy_flex_free( ptr )
2706void *ptr;
2707#endif
2708 {
2709 free( ptr );
2710 }
2711
2712#if YY_MAIN
2713int main()
2714 {
2715 yylex();
2716 return 0;
2717 }
2718#endif
2719#line 201 "/proj/llvm/build/../llvm/tools/llvmc/ConfigLexer.l"
2720