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