2 #line 3 "src/surf/simgrid_dtd.c"
4 #define YY_INT_ALIGNED short int
6 /* A lexical scanner generated by flex */
8 #define yy_create_buffer surf_parse__create_buffer
9 #define yy_delete_buffer surf_parse__delete_buffer
10 #define yy_flex_debug surf_parse__flex_debug
11 #define yy_init_buffer surf_parse__init_buffer
12 #define yy_flush_buffer surf_parse__flush_buffer
13 #define yy_load_buffer_state surf_parse__load_buffer_state
14 #define yy_switch_to_buffer surf_parse__switch_to_buffer
15 #define yyin surf_parse_in
16 #define yyleng surf_parse_leng
17 #define yylex surf_parse_lex
18 #define yylineno surf_parse_lineno
19 #define yyout surf_parse_out
20 #define yyrestart surf_parse_restart
21 #define yytext surf_parse_text
22 #define yywrap surf_parse_wrap
23 #define yyalloc surf_parse_alloc
24 #define yyrealloc surf_parse_realloc
25 #define yyfree surf_parse_free
28 #define YY_FLEX_MAJOR_VERSION 2
29 #define YY_FLEX_MINOR_VERSION 5
30 #define YY_FLEX_SUBMINOR_VERSION 35
31 #if YY_FLEX_SUBMINOR_VERSION > 0
35 /* First, we deal with platform-specific or compiler-specific issues. */
37 /* begin standard C headers. */
43 /* end standard C headers. */
45 /* flex integer type definitions */
50 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
52 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
54 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
55 * if you want the limit (max/min) macros for int types.
57 #ifndef __STDC_LIMIT_MACROS
58 #define __STDC_LIMIT_MACROS 1
62 typedef int8_t flex_int8_t;
63 typedef uint8_t flex_uint8_t;
64 typedef int16_t flex_int16_t;
65 typedef uint16_t flex_uint16_t;
66 typedef int32_t flex_int32_t;
67 typedef uint32_t flex_uint32_t;
69 typedef signed char flex_int8_t;
70 typedef short int flex_int16_t;
71 typedef int flex_int32_t;
72 typedef unsigned char flex_uint8_t;
73 typedef unsigned short int flex_uint16_t;
74 typedef unsigned int flex_uint32_t;
76 /* Limits of integral types. */
78 #define INT8_MIN (-128)
81 #define INT16_MIN (-32767-1)
84 #define INT32_MIN (-2147483647-1)
87 #define INT8_MAX (127)
90 #define INT16_MAX (32767)
93 #define INT32_MAX (2147483647)
96 #define UINT8_MAX (255U)
99 #define UINT16_MAX (65535U)
102 #define UINT32_MAX (4294967295U)
107 #endif /* ! FLEXINT_H */
111 /* The "const" storage-class-modifier is valid. */
114 #else /* ! __cplusplus */
116 /* C99 requires __STDC__ to be defined as 1. */
117 #if defined (__STDC__)
121 #endif /* defined (__STDC__) */
122 #endif /* ! __cplusplus */
125 #define yyconst const
130 /* Returned upon end-of-file. */
133 /* Promotes a possibly negative, possibly signed char to an unsigned
134 * integer for use as an array index. If the signed char is negative,
135 * we want to instead treat it as an 8-bit unsigned char, hence the
138 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
140 /* Enter a start condition. This macro really ought to take a parameter,
141 * but we do it the disgusting crufty way forced on us by the ()-less
142 * definition of BEGIN.
144 #define BEGIN (yy_start) = 1 + 2 *
146 /* Translate the current start state into a value that can be later handed
147 * to BEGIN to return to the state. The YYSTATE alias is for lex
150 #define YY_START (((yy_start) - 1) / 2)
151 #define YYSTATE YY_START
153 /* Action number for EOF rule of a given start state. */
154 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
156 /* Special action meaning "start processing a new file". */
157 #define YY_NEW_FILE surf_parse_restart(surf_parse_in )
159 #define YY_END_OF_BUFFER_CHAR 0
161 /* Size of default input buffer. */
164 /* On IA-64, the buffer size is 16k, not 8k.
165 * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
166 * Ditto for the __ia64__ case accordingly.
168 #define YY_BUF_SIZE 32768
170 #define YY_BUF_SIZE 16384
171 #endif /* __ia64__ */
174 /* The state buf must be large enough to hold one state per character in the main buffer.
176 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
178 #ifndef YY_TYPEDEF_YY_BUFFER_STATE
179 #define YY_TYPEDEF_YY_BUFFER_STATE
180 typedef struct yy_buffer_state *YY_BUFFER_STATE;
183 extern int surf_parse_leng;
185 extern FILE *surf_parse_in, *surf_parse_out;
187 #define EOB_ACT_CONTINUE_SCAN 0
188 #define EOB_ACT_END_OF_FILE 1
189 #define EOB_ACT_LAST_MATCH 2
191 /* Note: We specifically omit the test for yy_rule_can_match_eol because it requires
192 * access to the local variable yy_act. Since yyless() is a macro, it would break
193 * existing scanners that call yyless() from OUTSIDE surf_parse_lex.
194 * One obvious solution it to make yy_act a global. I tried that, and saw
195 * a 5% performance hit in a non-surf_parse_lineno scanner, because yy_act is
196 * normally declared as a register variable-- so it is not worth it.
198 #define YY_LESS_LINENO(n) \
201 for ( yyl = n; yyl < surf_parse_leng; ++yyl )\
202 if ( surf_parse_text[yyl] == '\n' )\
203 --surf_parse_lineno;\
206 /* Return all but the first "n" matched characters back to the input stream. */
210 /* Undo effects of setting up surf_parse_text. */ \
211 int yyless_macro_arg = (n); \
212 YY_LESS_LINENO(yyless_macro_arg);\
213 *yy_cp = (yy_hold_char); \
214 YY_RESTORE_YY_MORE_OFFSET \
215 (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
216 YY_DO_BEFORE_ACTION; /* set up surf_parse_text again */ \
220 #define unput(c) yyunput( c, (yytext_ptr) )
222 #ifndef YY_TYPEDEF_YY_SIZE_T
223 #define YY_TYPEDEF_YY_SIZE_T
224 typedef size_t yy_size_t;
227 #ifndef YY_STRUCT_YY_BUFFER_STATE
228 #define YY_STRUCT_YY_BUFFER_STATE
229 struct yy_buffer_state
233 char *yy_ch_buf; /* input buffer */
234 char *yy_buf_pos; /* current position in input buffer */
236 /* Size of input buffer in bytes, not including room for EOB
239 yy_size_t yy_buf_size;
241 /* Number of characters read into yy_ch_buf, not including EOB
246 /* Whether we "own" the buffer - i.e., we know we created it,
247 * and can realloc() it to grow it, and should free() it to
250 int yy_is_our_buffer;
252 /* Whether this is an "interactive" input source; if so, and
253 * if we're using stdio for input, then we want to use getc()
254 * instead of fread(), to make sure we stop fetching input after
257 int yy_is_interactive;
259 /* Whether we're considered to be at the beginning of a line.
260 * If so, '^' rules will be active on the next match, otherwise
265 int yy_bs_lineno; /**< The line count. */
266 int yy_bs_column; /**< The column count. */
268 /* Whether to try to fill the input buffer when we reach the
273 int yy_buffer_status;
275 #define YY_BUFFER_NEW 0
276 #define YY_BUFFER_NORMAL 1
277 /* When an EOF's been seen but there's still some text to process
278 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
279 * shouldn't try reading from the input source any more. We might
280 * still have a bunch of tokens to match, though, because of
281 * possible backing-up.
283 * When we actually see the EOF, we change the status to "new"
284 * (via surf_parse_restart()), so that the user can continue scanning by
285 * just pointing surf_parse_in at a new input file.
287 #define YY_BUFFER_EOF_PENDING 2
290 #endif /* !YY_STRUCT_YY_BUFFER_STATE */
292 /* Stack of input buffers. */
293 static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
294 static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
295 static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */
297 /* We provide macros for accessing buffer states in case in the
298 * future we want to put the buffer states in a more general
301 * Returns the top of the stack, or NULL.
303 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
304 ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
307 /* Same as previous macro, but useful when we know that the buffer stack is not
308 * NULL or when we need an lvalue. For internal use only.
310 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
312 /* yy_hold_char holds the character lost when surf_parse_text is formed. */
313 static char yy_hold_char;
314 static int yy_n_chars; /* number of characters read into yy_ch_buf */
317 /* Points to current character in buffer. */
318 static char *yy_c_buf_p = (char *) 0;
319 static int yy_init = 0; /* whether we need to initialize */
320 static int yy_start = 0; /* start state number */
322 /* Flag which is used to allow surf_parse_wrap()'s to do buffer switches
323 * instead of setting up a fresh surf_parse_in. A bit of a hack ...
325 static int yy_did_buffer_switch_on_eof;
327 void surf_parse_restart (FILE *input_file );
328 void surf_parse__switch_to_buffer (YY_BUFFER_STATE new_buffer );
329 YY_BUFFER_STATE surf_parse__create_buffer (FILE *file,int size );
330 void surf_parse__delete_buffer (YY_BUFFER_STATE b );
331 void surf_parse__flush_buffer (YY_BUFFER_STATE b );
332 void surf_parse_push_buffer_state (YY_BUFFER_STATE new_buffer );
333 void surf_parse_pop_buffer_state (void );
335 static void surf_parse_ensure_buffer_stack (void );
336 static void surf_parse__load_buffer_state (void );
337 static void surf_parse__init_buffer (YY_BUFFER_STATE b,FILE *file );
339 #define YY_FLUSH_BUFFER surf_parse__flush_buffer(YY_CURRENT_BUFFER )
341 YY_BUFFER_STATE surf_parse__scan_buffer (char *base,yy_size_t size );
342 YY_BUFFER_STATE surf_parse__scan_string (yyconst char *yy_str );
343 YY_BUFFER_STATE surf_parse__scan_bytes (yyconst char *bytes,int len );
345 void *surf_parse_alloc (yy_size_t );
346 void *surf_parse_realloc (void *,yy_size_t );
347 void surf_parse_free (void * );
349 #define yy_new_buffer surf_parse__create_buffer
351 #define yy_set_interactive(is_interactive) \
353 if ( ! YY_CURRENT_BUFFER ){ \
354 surf_parse_ensure_buffer_stack (); \
355 YY_CURRENT_BUFFER_LVALUE = \
356 surf_parse__create_buffer(surf_parse_in,YY_BUF_SIZE ); \
358 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
361 #define yy_set_bol(at_bol) \
363 if ( ! YY_CURRENT_BUFFER ){\
364 surf_parse_ensure_buffer_stack (); \
365 YY_CURRENT_BUFFER_LVALUE = \
366 surf_parse__create_buffer(surf_parse_in,YY_BUF_SIZE ); \
368 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
371 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
373 /* Begin user sect3 */
375 #define surf_parse_wrap(n) 1
376 #define YY_SKIP_YYWRAP
378 typedef unsigned char YY_CHAR;
380 FILE *surf_parse_in = (FILE *) 0, *surf_parse_out = (FILE *) 0;
382 typedef int yy_state_type;
384 extern int surf_parse_lineno;
386 int surf_parse_lineno = 1;
388 extern char *surf_parse_text;
389 #define yytext_ptr surf_parse_text
391 static yy_state_type yy_get_previous_state (void );
392 static yy_state_type yy_try_NUL_trans (yy_state_type current_state );
393 static int yy_get_next_buffer (void );
394 static void yy_fatal_error (yyconst char msg[] );
396 /* Done after the current pattern has been matched and before the
397 * corresponding action - sets up surf_parse_text.
399 #define YY_DO_BEFORE_ACTION \
400 (yytext_ptr) = yy_bp; \
401 surf_parse_leng = (size_t) (yy_cp - yy_bp); \
402 (yy_hold_char) = *yy_cp; \
404 (yy_c_buf_p) = yy_cp;
406 #define YY_NUM_RULES 476
407 #define YY_END_OF_BUFFER 477
408 /* This struct is not used in this scanner,
409 but its presence is necessary. */
412 flex_int32_t yy_verify;
415 static yyconst flex_int16_t yy_accept[2809] =
417 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
418 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
419 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
420 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
421 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
422 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
423 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
424 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
425 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
426 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
428 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
429 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
430 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
431 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
432 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
433 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
434 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
435 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
436 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
437 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
439 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
440 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
441 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
442 0, 0, 0, 0, 0, 0, 477, 475, 15, 10,
443 10, 15, 15, 455, 10, 455, 5, 6, 5, 8,
444 9, 8, 471, 463, 464, 472, 469, 472, 470, 474,
445 463, 464, 474, 475, 22, 10, 22, 22, 22, 20,
446 22, 26, 10, 26, 26, 475, 26, 475, 475, 26,
447 33, 10, 33, 33, 33, 31, 33, 37, 10, 37,
448 37, 48, 10, 48, 48, 48, 46, 48, 48, 48,
450 472, 471, 78, 10, 78, 78, 78, 76, 78, 78,
451 78, 78, 78, 82, 10, 82, 475, 82, 101, 10,
452 101, 101, 101, 99, 101, 101, 101, 105, 10, 105,
453 114, 10, 114, 114, 114, 112, 114, 114, 118, 10,
454 118, 118, 475, 118, 118, 475, 475, 118, 475, 118,
455 475, 118, 131, 10, 131, 131, 131, 129, 131, 131,
456 131, 131, 135, 10, 135, 135, 146, 10, 146, 146,
457 146, 144, 146, 146, 146, 150, 10, 150, 150, 159,
458 10, 159, 159, 159, 157, 159, 159, 163, 10, 163,
459 172, 10, 172, 172, 172, 170, 172, 172, 176, 10,
461 176, 199, 10, 199, 199, 199, 197, 199, 199, 199,
462 199, 199, 203, 10, 203, 475, 203, 244, 10, 244,
463 244, 244, 242, 244, 244, 244, 244, 244, 244, 244,
464 244, 248, 10, 248, 269, 10, 269, 269, 269, 267,
465 269, 269, 269, 269, 269, 269, 269, 273, 10, 273,
466 282, 10, 282, 282, 282, 280, 282, 282, 286, 10,
467 286, 313, 10, 313, 313, 313, 311, 313, 313, 313,
468 313, 317, 10, 317, 317, 330, 10, 330, 330, 330,
469 328, 330, 330, 334, 10, 334, 475, 334, 351, 10,
470 351, 351, 351, 349, 351, 351, 351, 355, 10, 355,
472 355, 368, 10, 368, 368, 368, 366, 368, 368, 372,
473 10, 372, 381, 10, 381, 381, 381, 379, 381, 381,
474 385, 10, 385, 385, 398, 10, 398, 398, 398, 396,
475 398, 398, 398, 402, 10, 402, 402, 415, 10, 415,
476 415, 415, 413, 415, 415, 415, 415, 419, 10, 419,
477 475, 419, 426, 10, 426, 426, 426, 424, 426, 430,
478 10, 430, 437, 10, 437, 437, 437, 435, 437, 441,
479 10, 441, 441, 450, 10, 450, 450, 450, 448, 450,
480 450, 454, 10, 454, 10, 0, 2, 2, 0, 4,
481 7, 466, 465, 0, 0, 0, 0, 0, 0, 0,
483 21, 23, 23, 0, 0, 0, 0, 0, 0, 0,
484 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
485 0, 0, 0, 0, 0, 0, 32, 34, 34, 0,
486 47, 49, 49, 49, 49, 0, 0, 0, 77, 79,
487 79, 79, 79, 79, 79, 79, 79, 79, 0, 0,
488 100, 102, 102, 102, 102, 0, 113, 115, 115, 115,
489 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
490 0, 0, 130, 132, 132, 132, 132, 132, 0, 145,
491 147, 147, 147, 147, 0, 158, 160, 160, 160, 0,
492 171, 173, 173, 173, 0, 198, 200, 200, 200, 200,
494 200, 200, 0, 0, 243, 245, 245, 245, 245, 245,
495 245, 245, 245, 245, 245, 245, 245, 245, 245, 0,
496 268, 270, 270, 270, 270, 270, 270, 270, 270, 0,
497 281, 283, 283, 283, 0, 312, 314, 314, 314, 314,
498 314, 314, 0, 329, 331, 331, 331, 331, 0, 0,
499 350, 352, 352, 352, 352, 352, 0, 367, 369, 369,
500 369, 0, 380, 382, 382, 382, 0, 397, 399, 399,
501 399, 399, 0, 414, 416, 416, 416, 416, 416, 0,
502 0, 425, 427, 427, 0, 436, 438, 438, 0, 449,
503 451, 451, 451, 0, 0, 0, 0, 0, 3, 0,
505 0, 0, 0, 0, 0, 0, 473, 0, 23, 0,
506 0, 107, 0, 0, 0, 0, 0, 0, 0, 0,
507 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
508 106, 0, 0, 0, 0, 0, 34, 0, 0, 49,
509 0, 0, 49, 0, 0, 0, 468, 79, 0, 0,
510 79, 79, 79, 79, 79, 79, 0, 0, 0, 102,
511 102, 102, 0, 0, 0, 0, 115, 0, 0, 107,
512 0, 0, 0, 0, 0, 106, 0, 0, 0, 0,
513 132, 0, 0, 132, 132, 0, 0, 147, 0, 0,
514 147, 0, 0, 0, 0, 160, 0, 0, 173, 173,
516 0, 0, 200, 200, 200, 0, 0, 200, 200, 0,
517 0, 0, 0, 245, 245, 0, 0, 245, 0, 0,
518 245, 245, 245, 245, 245, 245, 245, 245, 0, 0,
519 270, 270, 270, 0, 0, 270, 270, 270, 0, 0,
520 283, 0, 0, 0, 0, 314, 0, 0, 314, 314,
521 314, 0, 0, 331, 331, 331, 0, 0, 0, 352,
522 352, 352, 352, 0, 0, 369, 0, 0, 0, 0,
523 382, 382, 0, 0, 399, 399, 399, 0, 0, 416,
524 416, 416, 416, 0, 0, 0, 427, 0, 0, 0,
525 0, 0, 0, 0, 0, 451, 0, 0, 0, 14,
527 1, 0, 0, 461, 0, 0, 0, 458, 457, 0,
528 0, 23, 0, 0, 25, 0, 107, 0, 0, 0,
529 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
530 0, 0, 0, 0, 0, 0, 106, 0, 0, 0,
531 0, 0, 34, 0, 0, 36, 0, 49, 0, 41,
532 40, 49, 0, 0, 0, 51, 0, 79, 0, 55,
533 54, 0, 0, 79, 0, 0, 79, 79, 79, 0,
534 0, 81, 0, 0, 102, 102, 102, 0, 0, 104,
535 0, 0, 109, 108, 115, 0, 0, 117, 0, 0,
536 0, 0, 0, 0, 0, 0, 0, 0, 0, 132,
538 0, 122, 121, 132, 132, 0, 0, 134, 0, 147,
539 0, 139, 138, 147, 0, 0, 149, 0, 0, 154,
540 153, 160, 0, 0, 162, 0, 173, 173, 0, 0,
541 175, 0, 200, 200, 200, 0, 180, 179, 200, 200,
542 0, 0, 202, 0, 0, 0, 245, 245, 245, 245,
543 0, 219, 218, 245, 0, 207, 206, 0, 0, 245,
544 245, 245, 245, 245, 245, 245, 0, 0, 247, 0,
545 270, 270, 270, 270, 0, 252, 251, 0, 0, 270,
546 270, 0, 0, 272, 0, 283, 0, 277, 276, 0,
547 0, 285, 0, 314, 0, 290, 289, 314, 314, 314,
549 0, 0, 316, 0, 0, 0, 0, 0, 331, 0,
550 0, 333, 0, 0, 0, 0, 352, 352, 0, 0,
551 352, 0, 0, 354, 0, 369, 0, 359, 358, 0,
552 0, 371, 0, 0, 0, 0, 0, 0, 0, 384,
553 0, 0, 0, 399, 399, 0, 0, 0, 0, 401,
554 0, 416, 416, 416, 416, 0, 0, 418, 0, 0,
555 427, 0, 0, 429, 0, 0, 434, 433, 0, 0,
556 440, 0, 0, 445, 444, 451, 0, 0, 453, 0,
557 0, 0, 462, 456, 0, 0, 0, 23, 0, 0,
558 0, 0, 0, 0, 177, 0, 287, 0, 0, 250,
560 0, 0, 442, 0, 0, 0, 0, 0, 0, 0,
561 0, 249, 0, 0, 0, 0, 0, 0, 0, 49,
562 0, 0, 79, 0, 59, 58, 0, 0, 0, 57,
563 56, 79, 0, 0, 79, 0, 443, 102, 0, 0,
564 102, 0, 115, 0, 116, 0, 0, 178, 288, 0,
565 0, 0, 0, 0, 0, 132, 132, 0, 0, 0,
566 147, 147, 0, 0, 0, 0, 0, 0, 173, 0,
567 200, 200, 0, 0, 200, 200, 0, 0, 0, 245,
568 245, 245, 245, 0, 0, 0, 221, 220, 245, 245,
569 245, 245, 245, 245, 245, 0, 270, 270, 270, 270,
571 0, 260, 259, 270, 270, 0, 283, 0, 314, 314,
572 314, 314, 0, 0, 323, 322, 0, 321, 320, 331,
573 0, 287, 0, 340, 339, 352, 352, 0, 338, 337,
574 352, 0, 369, 0, 0, 378, 377, 0, 376, 375,
575 0, 0, 391, 390, 399, 399, 0, 389, 388, 0,
576 416, 0, 0, 416, 416, 0, 0, 427, 0, 0,
577 451, 0, 0, 0, 0, 12, 0, 459, 460, 0,
578 23, 0, 0, 0, 0, 0, 0, 177, 0, 287,
579 0, 151, 0, 250, 0, 0, 442, 0, 318, 0,
580 39, 0, 0, 0, 0, 249, 0, 38, 0, 30,
582 29, 0, 0, 43, 42, 49, 0, 0, 79, 0,
583 61, 60, 79, 0, 65, 64, 79, 0, 443, 102,
584 0, 0, 0, 0, 0, 0, 115, 0, 0, 178,
585 288, 319, 0, 0, 0, 319, 318, 132, 0, 0,
586 0, 126, 125, 0, 147, 147, 0, 0, 156, 155,
587 0, 0, 169, 168, 173, 0, 200, 200, 0, 184,
588 183, 0, 0, 0, 0, 200, 0, 152, 0, 245,
589 0, 0, 245, 245, 0, 217, 216, 0, 0, 245,
590 245, 245, 245, 245, 245, 0, 270, 0, 0, 270,
591 270, 0, 0, 270, 0, 283, 0, 314, 314, 314,
593 0, 0, 314, 0, 331, 0, 0, 352, 352, 352,
594 0, 369, 0, 0, 399, 399, 0, 416, 0, 406,
595 405, 416, 416, 0, 0, 0, 0, 0, 0, 0,
596 0, 0, 0, 0, 0, 11, 0, 23, 0, 0,
597 0, 0, 0, 432, 0, 0, 151, 0, 0, 0,
598 53, 318, 274, 0, 39, 0, 431, 52, 0, 0,
599 0, 38, 0, 0, 49, 0, 0, 79, 79, 79,
600 0, 102, 0, 0, 0, 0, 0, 0, 0, 0,
601 0, 96, 95, 0, 115, 0, 0, 319, 275, 0,
602 0, 0, 132, 0, 124, 123, 0, 147, 0, 0,
604 0, 0, 0, 0, 0, 200, 200, 0, 182, 181,
605 0, 0, 0, 200, 0, 201, 152, 0, 245, 0,
606 229, 228, 0, 0, 245, 0, 215, 214, 0, 0,
607 245, 245, 245, 245, 0, 0, 0, 270, 0, 256,
608 255, 0, 0, 270, 0, 254, 253, 270, 0, 271,
609 283, 0, 314, 314, 314, 0, 0, 0, 314, 0,
610 315, 331, 0, 0, 0, 0, 0, 0, 352, 0,
611 369, 0, 0, 0, 0, 0, 0, 0, 416, 416,
612 416, 0, 0, 0, 423, 422, 0, 0, 0, 447,
613 446, 0, 452, 0, 0, 0, 0, 0, 0, 0,
615 335, 0, 0, 0, 205, 432, 28, 0, 0, 0,
616 404, 53, 274, 136, 0, 431, 52, 204, 27, 403,
617 0, 0, 49, 0, 0, 50, 79, 0, 0, 79,
618 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
619 0, 0, 0, 0, 0, 0, 336, 0, 0, 275,
620 137, 0, 0, 0, 0, 0, 0, 141, 140, 0,
621 0, 161, 0, 167, 166, 0, 200, 200, 0, 0,
622 200, 0, 245, 0, 231, 230, 245, 0, 209, 208,
623 0, 0, 245, 245, 245, 0, 211, 210, 0, 270,
624 0, 258, 257, 270, 270, 283, 0, 314, 0, 0,
626 314, 314, 0, 0, 314, 331, 0, 332, 0, 0,
627 344, 343, 0, 342, 341, 352, 0, 369, 0, 0,
628 0, 395, 394, 0, 393, 392, 0, 416, 416, 416,
629 0, 0, 0, 0, 0, 0, 0, 17, 0, 19,
630 18, 0, 335, 420, 0, 0, 205, 28, 356, 164,
631 16, 404, 136, 0, 0, 204, 27, 403, 0, 0,
632 49, 467, 79, 0, 67, 66, 79, 0, 80, 0,
633 98, 97, 0, 0, 0, 0, 0, 0, 0, 0,
634 0, 0, 0, 0, 111, 110, 336, 0, 0, 137,
635 0, 0, 128, 127, 0, 0, 143, 142, 0, 0,
637 200, 200, 0, 0, 0, 0, 200, 165, 245, 245,
638 0, 213, 212, 245, 245, 245, 0, 270, 270, 270,
639 283, 0, 284, 314, 0, 296, 295, 314, 314, 0,
640 0, 0, 0, 314, 331, 357, 352, 0, 369, 0,
641 0, 0, 0, 0, 416, 416, 0, 421, 0, 0,
642 439, 0, 0, 0, 17, 0, 420, 0, 0, 356,
643 164, 16, 0, 0, 0, 0, 35, 49, 0, 0,
644 79, 0, 0, 0, 0, 0, 0, 0, 0, 0,
645 0, 0, 0, 0, 0, 0, 0, 148, 0, 200,
646 200, 0, 190, 0, 189, 200, 165, 245, 245, 0,
648 0, 245, 245, 0, 246, 270, 270, 270, 283, 0,
649 0, 314, 314, 314, 0, 300, 0, 299, 314, 331,
650 357, 352, 0, 353, 0, 0, 0, 0, 0, 0,
651 408, 407, 0, 0, 416, 0, 417, 421, 0, 0,
652 0, 0, 0, 24, 0, 0, 0, 0, 0, 49,
653 0, 0, 0, 79, 0, 0, 0, 0, 0, 0,
654 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
655 174, 200, 200, 192, 191, 0, 0, 245, 245, 0,
656 241, 240, 245, 0, 0, 270, 270, 0, 0, 283,
657 0, 292, 291, 314, 314, 314, 302, 301, 0, 0,
659 331, 352, 0, 0, 0, 0, 370, 0, 0, 0,
660 412, 411, 0, 0, 0, 428, 0, 0, 0, 0,
661 373, 0, 0, 0, 0, 0, 0, 0, 0, 0,
662 0, 0, 79, 0, 0, 0, 0, 88, 0, 0,
663 0, 0, 87, 0, 0, 374, 0, 0, 200, 0,
664 0, 0, 194, 193, 245, 245, 245, 0, 239, 238,
665 270, 0, 0, 0, 266, 265, 0, 0, 314, 314,
666 314, 0, 304, 303, 0, 0, 0, 0, 0, 0,
667 0, 0, 0, 0, 0, 0, 0, 410, 409, 0,
668 0, 0, 0, 373, 119, 0, 0, 0, 45, 44,
670 0, 0, 0, 0, 0, 0, 0, 0, 79, 0,
671 0, 0, 0, 0, 0, 0, 0, 0, 0, 374,
672 120, 0, 0, 0, 200, 0, 196, 195, 245, 245,
673 245, 270, 0, 262, 261, 0, 279, 278, 314, 0,
674 0, 314, 0, 0, 0, 0, 0, 0, 0, 0,
675 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
676 386, 119, 84, 83, 0, 0, 0, 0, 0, 0,
677 0, 0, 0, 0, 0, 0, 94, 0, 0, 0,
678 93, 0, 0, 387, 120, 0, 0, 186, 185, 200,
679 245, 245, 245, 270, 314, 0, 298, 297, 314, 0,
681 0, 0, 0, 0, 0, 0, 0, 0, 0, 361,
682 0, 0, 360, 0, 383, 0, 0, 0, 0, 0,
683 0, 0, 386, 84, 83, 0, 0, 0, 0, 0,
684 0, 0, 0, 0, 63, 62, 0, 0, 0, 0,
685 0, 0, 0, 387, 0, 133, 200, 245, 245, 0,
686 0, 270, 0, 0, 0, 0, 0, 0, 0, 0,
687 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
688 0, 0, 0, 0, 0, 0, 75, 71, 0, 0,
689 74, 70, 0, 92, 0, 0, 91, 0, 0, 0,
690 103, 200, 245, 245, 0, 0, 0, 270, 0, 294,
692 293, 0, 0, 0, 327, 0, 326, 0, 348, 0,
693 347, 0, 363, 365, 362, 364, 0, 400, 0, 0,
694 0, 12, 0, 12, 0, 0, 0, 0, 0, 86,
695 90, 85, 89, 200, 245, 245, 0, 0, 0, 0,
696 270, 0, 0, 0, 0, 325, 324, 346, 345, 0,
697 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
698 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
699 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
700 69, 0, 68, 0, 0, 188, 187, 0, 237, 236,
701 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
703 264, 263, 0, 0, 0, 0, 0, 0, 0, 11,
704 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
705 0, 0, 0, 0, 0, 0, 0, 0, 0, 73,
706 72, 0, 0, 0, 0, 0, 0, 0, 0, 0,
707 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
708 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
709 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
710 0, 223, 0, 0, 222, 0, 0, 306, 0, 0,
711 305, 0, 0, 0, 0, 0, 227, 0, 226, 0,
712 308, 0, 307, 0, 0, 0, 0, 0, 0, 0,
714 0, 0, 0, 0, 0, 233, 0, 232, 0, 0,
715 0, 0, 0, 0, 235, 234, 225, 224, 310, 309,
716 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
717 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
718 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
719 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
720 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
721 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
722 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
723 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
725 0, 0, 0, 0, 0, 0, 13, 0
728 static yyconst flex_int32_t yy_ec[256] =
730 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
731 1, 2, 4, 1, 1, 1, 1, 1, 1, 1,
732 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
733 1, 2, 5, 6, 7, 1, 1, 8, 9, 1,
734 1, 1, 1, 1, 10, 11, 12, 13, 13, 13,
735 13, 14, 13, 13, 13, 15, 13, 16, 17, 18,
736 19, 20, 21, 1, 22, 23, 24, 25, 26, 27,
737 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
738 31, 38, 39, 40, 41, 42, 43, 44, 45, 31,
739 46, 1, 47, 1, 48, 1, 49, 50, 51, 52,
741 53, 54, 55, 56, 57, 31, 58, 59, 60, 61,
742 62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
743 72, 73, 1, 1, 1, 1, 1, 1, 1, 1,
744 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
745 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
746 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
747 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
748 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
749 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
750 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
752 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
753 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
754 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
755 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
756 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
760 static yyconst flex_int32_t yy_meta[74] =
762 1, 2, 2, 2, 1, 1, 1, 1, 1, 3,
763 3, 1, 4, 4, 4, 5, 6, 1, 7, 8,
764 1, 9, 9, 9, 9, 9, 9, 5, 5, 5,
765 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
766 5, 5, 5, 5, 5, 1, 1, 5, 9, 9,
767 9, 9, 9, 9, 5, 5, 5, 5, 5, 5,
768 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
772 static yyconst flex_int16_t yy_base[3207] =
774 0, 0, 0, 3, 6, 9, 12, 29, 16, 19,
775 14, 17, 33, 36, 49, 55, 45, 61, 66, 72,
776 108, 177, 75, 78, 83, 128, 131, 134, 138, 141,
777 158, 197, 200, 203, 207, 210, 227, 230, 233, 236,
778 239, 256, 274, 328, 294, 297, 300, 304, 307, 348,
779 351, 354, 382, 445, 359, 414, 508, 574, 405, 408,
780 412, 417, 465, 468, 471, 475, 640, 707, 478, 528,
781 774, 839, 531, 534, 538, 541, 594, 597, 600, 604,
782 607, 660, 663, 666, 670, 673, 727, 730, 733, 737,
783 740, 794, 797, 800, 804, 807, 859, 862, 865, 869,
785 872, 889, 907, 973, 927, 930, 933, 937, 993, 996,
786 999, 1003, 1039, 1106, 1059, 1062, 1065, 1069, 1126, 1129,
787 1132, 1136, 1173, 1234, 1193, 1196, 1295, 1362, 1199, 1203,
788 1429, 1495, 1206, 1254, 1257, 1260, 1264, 1267, 1315, 1318,
789 1561, 0, 1321, 1325, 1634, 1700, 1328, 1382, 1766, 1823,
790 1385, 1388, 1880, 1946, 1392, 1395, 1449, 1452, 1455, 1459,
791 1515, 1518, 2012, 2078, 1521, 1525, 1654, 1657, 1660, 1664,
792 1720, 1723, 2144, 2210, 1726, 1730, 1786, 1789, 1792, 1796,
793 1843, 1846, 2276, 2333, 1849, 1853, 2390, 2456, 1900, 1903,
794 1906, 1910, 1913, 1966, 1969, 1972, 2522, 2588, 1976, 1979,
796 2032, 2035, 2038, 2042, 2045, 2098, 2654, 2720, 2101, 2104,
797 2108, 2111, 2164, 2167, 2170, 2174, 2786, 2855, 2177, 2230,
798 2924, 2981, 2233, 2236, 2240, 2243, 2296, 2299, 2302, 2306,
799 3038, 3107, 2309, 2353, 0, 0, 7718,10175,10175, 95,
800 100, 29, 41,10175, 103, 51,10175,10175, 7707,10175,
801 10175, 7692,10175, 7707, 7707, 498,10175,10175,10175,10175,
802 7701, 7701, 7656, 145,10175, 161, 7678, 0, 146,10175,
803 7644,10175, 166, 3172, 88, 204, 205, 254, 7684, 7628,
804 10175, 169, 7670, 0, 153,10175, 7632,10175, 260, 7672,
805 31,10175, 357, 7663, 0, 244,10175, 7625, 7625, 7623,
807 359, 7628,10175, 438, 7650, 0, 248,10175, 7616, 7616,
808 441, 7614, 260,10175, 567, 112, 181, 210,10175, 624,
809 7642, 0, 360,10175, 7602, 7599, 7590,10175, 633, 422,
810 10175, 692, 7634, 0, 479,10175, 7597, 7586,10175, 697,
811 2309, 2364, 29, 348, 197, 7635, 740, 805, 707, 673,
812 7630, 16,10175, 700, 7621, 0, 480,10175, 7578, 7583,
813 7572, 7576,10175, 765, 260, 361,10175, 826, 7608, 0,
814 482,10175, 7565, 7574, 7549,10175, 830, 413, 425,10175,
815 833, 7600, 0, 543,10175, 7567, 7088,10175, 895, 546,
816 10175, 898, 7116, 0, 545,10175, 7085, 7061,10175, 940,
818 611,10175, 957, 7112, 0, 609,10175, 7062, 7068, 7077,
819 7066, 7059,10175, 966, 950, 7113, 316,10175, 1023, 7103,
820 0, 612,10175, 7046, 21, 7052, 7060, 7055, 442, 382,
821 615,10175, 1032, 685,10175, 1072, 7083, 0, 684,10175,
822 7032, 7025, 7031, 7036, 7038, 7023, 7013,10175, 1089, 944,
823 10175, 1095, 7059, 0, 873,10175, 7010, 7018,10175, 1098,
824 945,10175, 1101, 7049, 0, 874,10175, 7018, 7002, 7004,
825 33,10175, 1139, 512, 527,10175, 1156, 7031, 0, 884,
826 10175, 6977, 155,10175, 1162, 959, 7030, 6981,10175, 1165,
827 7019, 0, 942,10175, 6971, 6962, 684,10175, 1168, 7019,
829 758,10175, 1223, 7005, 0, 1007,10175, 6967, 6970,10175,
830 1229, 1011,10175, 1284, 6990, 0, 1010,10175, 6943, 6940,
831 10175, 1290, 6992, 996,10175, 1345, 6982, 0, 1073,10175,
832 6935, 6907, 6907,10175, 1348, 6959, 1025,10175, 1351, 6938,
833 0, 1074,10175, 6889, 6893, 6893, 6882,10175, 1355, 1216,
834 6935, 556,10175, 1412, 6922, 0, 1140,10175, 6892,10175,
835 1415, 1399,10175, 1422, 6919, 0, 1141,10175, 6878,10175,
836 1462, 11, 926,10175, 1479, 6909, 0, 1208,10175, 6876,
837 6876,10175, 1485, 1400, 1528, 736, 6853,10175, 6903, 6892,
838 10175,10175,10175, 1674, 687, 6840, 6839, 6836, 6882, 6842,
840 10175, 0, 6834, 6830, 6846, 6819, 6810, 754, 6814, 6814,
841 6816, 757, 1224, 630, 6797, 6794, 822, 1422, 6806, 844,
842 6778, 1426, 6773, 1089, 1492, 1494,10175, 0, 6777, 6760,
843 10175, 0, 6753, 1667, 6746, 280, 6733, 6779,10175, 0,
844 6736, 1733, 6725, 6745, 6728, 6726, 6722, 6717, 6702, 1495,
845 10175, 0, 6709, 6697, 6707, 6679,10175, 0, 1799, 6676,
846 6721, 6698, 6664, 6672, 6669, 1488, 6658, 6681, 6647, 6640,
847 1628, 1630,10175, 0, 6636, 1856, 6644, 6621, 6608,10175,
848 0, 6612, 2358, 6607, 6601,10175, 0, 2413, 6605, 6602,
849 10175, 0, 6600, 6580, 6582,10175, 0, 6591, 1150, 2416,
851 6564, 6583, 6571, 1156,10175, 0, 6577, 6568, 2419, 6550,
852 2422, 6546, 6537, 6553, 6552, 6531, 6549, 6543, 6536, 6537,
853 10175, 0, 6536, 6529, 6514, 2426, 6501, 6497, 6509, 6494,
854 10175, 0, 6493, 2476, 6484,10175, 0, 6477, 2479, 6470,
855 6482, 6481, 6469,10175, 0, 6449, 6464, 6445, 6439, 6437,
856 10175, 0, 6426, 6435, 6431, 6420, 6450,10175, 0, 6404,
857 2482, 6404,10175, 0, 6395, 6405, 6404,10175, 0, 6386,
858 6403, 6395, 6395,10175, 0, 6382, 6372, 6376, 6380, 6363,
859 6353,10175, 0, 6358, 6359,10175, 0, 2485, 6348,10175,
860 0, 2488, 6335, 6329, 6371, 6379, 1254, 6315,10175, 1681,
862 0, 6311, 6310, 6354, 6352, 6302,10175, 6314, 6290, 2542,
863 2545, 1751, 6300, 6290, 6270, 6276, 6269, 6283, 6271, 6252,
864 6252, 6264, 6263, 6249, 6245, 6237, 6241, 6245, 6232, 6230,
865 1875, 6220, 6224, 6220, 6206, 6218, 6209, 2550, 2553, 6208,
866 2556, 1932, 6202, 6230, 2608, 2613,10175, 6200, 2617, 1998,
867 2620, 6190, 2623, 6189, 6193, 6195, 2627, 2687, 6180, 6180,
868 6187, 6186, 2677, 2682, 2690, 2063, 6169, 2740, 2806, 1941,
869 6171, 6167, 6152, 6139, 6142, 2006, 6129, 6128, 6112, 6111,
870 6107, 2746, 2129, 6120, 6109, 2749, 2752, 6092, 2760, 2198,
871 6099, 2755, 2810, 2818, 2264, 6094, 2814, 2821, 6088, 6087,
873 2876, 2883, 6077, 6043, 6054, 2825, 2444, 6052, 6034, 2886,
874 2889, 6028, 6023, 6032, 1490, 2895, 2507, 6034, 2944, 2576,
875 2950, 6025, 6023, 6018, 6003, 6004, 5997, 6002, 2953, 2956,
876 5994, 376, 5985, 3001, 2642, 3004, 5992, 5971, 3009, 3014,
877 5972, 3058, 2844, 3061, 3067, 5983, 3070, 2909, 5972, 5954,
878 5937, 3076, 3128, 3131, 3136, 3139, 3142, 3163, 5937, 3167,
879 3178, 3170, 3188, 3198, 3206, 5944, 3201, 3088, 3213, 3238,
880 3247, 3250, 3253, 3257, 3260, 3268, 3272, 3278, 3281, 5944,
881 5927, 5926, 5919, 3286, 3290, 5926, 5895, 3301, 3305, 3309,
882 3096, 3312, 3315, 3320, 3334, 5881, 3342, 3345, 5915,10175,
884 10175, 1314, 5869,10175, 5904, 5885, 5833,10175,10175, 5830,
885 5821, 5823, 3348, 3354,10175, 3369, 1758, 5817, 5809, 5820,
886 5802, 5812, 5794, 5794, 5794, 5780, 5777, 5770, 5763, 708,
887 5776, 5756, 5755, 5740, 5736, 5729, 1817, 5714, 5702, 5694,
888 763, 5707, 3357, 3376, 3379,10175, 3382, 3388, 3391,10175,
889 10175, 3401, 5727, 3409, 3412,10175, 3419, 5685, 3422,10175,
890 10175, 3432, 3438, 3446, 3450, 3453, 5691, 3468, 5689, 3471,
891 3474,10175, 3477, 1019, 5683, 3480, 5678, 3486, 3498,10175,
892 3501, 3505,10175,10175, 5673, 3513, 3520,10175, 3523, 5666,
893 5673, 5652, 5660, 5643, 5641, 5653, 5651, 5632, 5630, 5639,
895 3526,10175,10175, 5632, 3542, 3545, 3549,10175, 3552, 5636,
896 3564,10175,10175, 5656, 3555, 3560,10175, 3574, 3579,10175,
897 10175, 3587, 3593, 3596,10175, 3599, 3605, 3608, 3619, 3626,
898 10175, 3629, 5625, 5628, 3638, 3641,10175,10175, 5613, 5614,
899 3649, 3652,10175, 3656, 5603, 5597, 5599, 5586, 5602, 5590,
900 3659,10175,10175, 3671, 3675,10175,10175, 3683, 3689, 5579,
901 5586, 5590, 5580, 5575, 5574, 5568, 3697, 3701,10175, 3704,
902 5565, 5561, 5546, 5559, 3707,10175,10175, 3716, 3723, 5540,
903 5551, 3734, 3737,10175, 3740, 5550, 3743,10175,10175, 3759,
904 3762,10175, 3765, 5524, 3771,10175,10175, 5530, 5529, 5532,
906 3784, 3787,10175, 3792, 3795, 3799, 3807, 3813, 5530, 3821,
907 3825,10175, 3828, 5515, 3832, 3840, 5506, 5505, 3835, 3853,
908 5516, 3861, 3864,10175, 3867, 5516, 3870,10175,10175, 3886,
909 3889,10175, 3895, 3898, 3901, 3909, 3916, 3927, 3931,10175,
910 3934, 3938, 3946, 5494, 5489, 3941, 3959, 3967, 3970,10175,
911 3973, 5486, 3976, 5503, 5479, 3979, 3982,10175, 4001, 5476,
912 5490, 4004, 4007,10175, 4010, 4013,10175,10175, 4029, 4035,
913 10175, 4038, 4041,10175,10175, 5488, 4049, 4057,10175, 4064,
914 304, 4068,10175,10175, 5523, 5521, 5471, 5462, 4071, 5454,
915 5445, 5438, 5435, 5443, 2071, 5431, 2138, 5430, 5427, 2379,
917 5429, 5429, 2385, 5418, 5426, 5428, 5416, 5407, 5400, 5394,
918 5391, 2515, 5404, 5401, 4076, 4094, 4090, 4083, 4102, 5358,
919 5387, 4110, 5355, 4113,10175,10175, 4121, 4125, 4133,10175,
920 10175, 5350, 4141, 4144, 5337, 4152, 2701, 5326, 4155, 4160,
921 4173, 4176, 5325, 4179,10175, 5316, 5317, 2711, 2836, 5328,
922 5325, 5303, 5302, 5312, 5310, 5301, 4182, 4186, 4191, 4204,
923 5299, 5295, 4208, 4211, 4214, 4229, 4232, 4235, 5294, 4243,
924 5294, 5284, 4251, 4255, 4263, 4272, 4275, 5270, 5256, 5270,
925 4281, 5244, 5260, 4284, 4290, 4304,10175,10175, 4312, 5235,
926 5255, 5238, 5220, 5232, 5207, 4315, 5219, 4319, 5198, 5206,
928 4323,10175,10175, 4337, 5213, 4341, 5203, 4344, 5129, 5117,
929 5106, 4347, 4350, 4356,10175,10175, 4365,10175,10175, 5083,
930 4373, 2917, 4376,10175,10175, 5027, 5041, 4385,10175,10175,
931 5002, 4394, 4949, 4397, 4401,10175,10175, 4416,10175,10175,
932 4424, 4427,10175,10175, 4937, 4860, 4439,10175,10175, 4447,
933 4826, 4435, 4455, 4772, 4752, 4466, 4701, 4472, 4475, 4478,
934 4481, 4485, 593, 4736, 4499,10175, 4664,10175,10175, 4532,
935 4470, 4490, 80, 95, 91, 197, 197, 2714, 262, 2778,
936 265, 2781, 319, 2964, 308, 312, 2975, 345, 3028, 440,
937 4505, 442, 446, 507, 509, 3022, 558, 4509, 4512,10175,
939 10175, 4520, 4524,10175,10175, 599, 640, 4534, 690, 4556,
940 10175,10175, 746, 4567,10175,10175, 755, 4543, 3033, 771,
941 4575, 1839, 1896, 4547, 4587, 4595, 827, 821, 857, 3157,
942 3209, 4598, 891, 886, 906, 4604, 4607, 937, 4610, 4614,
943 4622,10175,10175, 4630, 942, 4633, 4636, 4640,10175,10175,
944 4651, 4655,10175,10175, 4663, 4671, 979, 977, 4674,10175,
945 10175, 4684, 4690, 4698, 4702, 1027, 4710, 4079, 1039, 1039,
946 4718, 4722, 4730, 1057, 4736,10175,10175, 4744, 4748, 4756,
947 1078, 1101, 1100, 1102, 4762, 4765, 1139, 4768, 4774, 4786,
948 1143, 4789, 4792, 1162, 4800, 1162, 4807, 1198, 1201, 1221,
950 4810, 4813, 1230, 4821, 1246, 4831, 1275, 4834, 4840, 4843,
951 4846, 1278, 4852, 4861, 4866, 4871, 4874, 1275, 4889,10175,
952 10175, 1283, 1277, 4884, 1292, 4899, 4903, 4913, 4918, 4922,
953 4926, 4940, 1341, 1340, 1407,10175, 1328, 4943, 4946, 1349,
954 1346, 1452, 1357, 4949, 1375, 1378, 4952, 1413, 1404, 1406,
955 4955, 4961, 4965, 1440, 4968, 1443, 4974, 4977, 1446, 1473,
956 1468, 4980, 1484, 4983, 1487, 1533, 4986, 1588, 4990, 1608,
957 4993, 4996, 1651, 1638, 1709, 1640, 1677, 1680, 1734, 1704,
958 5008,10175,10175, 5016, 5019, 1689, 1784, 5022, 5025, 1690,
959 1973, 2030, 5028, 5037,10175,10175, 5046, 5052, 5055, 5059,
961 5073, 5076, 5079, 5082, 5100, 1701, 1716, 5103,10175,10175,
962 5112, 1746, 1761, 1748, 5120,10175, 5123, 1753, 1752, 5127,
963 10175,10175, 5135, 5139, 1754, 5149,10175,10175, 5157, 5160,
964 5168, 1758, 1791, 1797, 5171, 5175, 5189, 1806, 5192,10175,
965 10175, 5200, 5204, 1816, 5212,10175,10175, 1809, 5220,10175,
966 1824, 5223, 1829, 5226, 1863, 5229, 1884, 1886, 1866, 5244,
967 10175, 1875, 5247, 1875, 5250, 5253, 5268, 5273, 1905, 5281,
968 1915, 5287, 5290, 5293, 5296, 5311, 5314, 5322, 1924, 1926,
969 1931, 5325, 1928, 5330,10175,10175, 5347, 5350, 5355,10175,
970 10175, 5369,10175, 2031, 2155, 1978, 1931, 5373, 5376, 5391,
972 5394, 1932, 1989, 1992, 5399, 5404, 5410, 1994, 2008, 2002,
973 5413, 5416, 5419, 5422, 2008, 5425, 5428, 5431, 5434, 5437,
974 2014, 5440, 2020, 2048, 5443,10175, 2044, 5446, 5449, 2068,
975 5464, 5469, 5472, 2083, 2081, 2081, 2088, 2084, 2093, 2095,
976 2096, 2102, 2096, 5483, 5487, 5492, 5505, 2104, 2098, 5508,
977 5511, 5514, 5517, 5525, 5528, 5533, 5546,10175,10175, 5554,
978 5559,10175, 5562,10175,10175, 5573, 2124, 2117, 2162, 2214,
979 2128, 2140, 2135, 5578,10175,10175, 2137, 5586,10175,10175,
980 5594, 5597, 2151, 2142, 2149, 5606,10175,10175, 5614, 2150,
981 5617,10175,10175, 2159, 2191, 2185, 5627, 2197, 5633, 5636,
983 2201, 2196, 2236, 2237, 2201, 2218, 5646,10175, 2213, 5651,
984 10175,10175, 5659,10175,10175, 2224, 5667, 2231, 5670, 5673,
985 5679,10175,10175, 5692,10175,10175, 5701, 5705, 5710, 5713,
986 5723, 2240, 5731, 5736, 5742, 2296, 2298, 5745, 5751,10175,
987 10175, 5762, 5765, 5768, 2250, 2251, 5772, 5775, 5781, 5784,
988 5791, 5794, 5797, 2258, 2265, 5800, 5803, 5806, 2268, 5809,
989 2263,10175, 5812, 5815,10175,10175, 5823, 5830,10175, 5834,
990 10175,10175, 2307, 2309, 2337, 2334, 2341, 2344, 2330, 2346,
991 2341, 2352, 5842, 5845,10175,10175, 5853, 2319, 2338, 5856,
992 2345, 5861,10175,10175, 5869, 5872,10175,10175, 5880, 5883,
994 2356, 2380, 2407, 2433, 2413, 2434, 2391, 5889, 2392, 2396,
995 5892,10175,10175, 5903, 2390, 2401, 5906, 2398, 2419, 2440,
996 2441, 5909,10175, 5912, 5921,10175,10175, 2439, 2435, 2472,
997 2494, 2478, 2497, 2459, 2465, 5916, 2466, 5930, 5935, 5938,
998 5941, 5944, 5949, 5953, 5963, 5967, 5970, 5973, 5976, 5985,
999 10175, 5989, 2531, 2530, 5998, 6004, 6008, 2458, 2454, 6011,
1000 6014, 6019, 2466, 2500, 2502, 6024,10175, 2492, 6027, 6030,
1001 6038, 2523, 2519, 2536, 2524, 2538, 2538, 2536, 2551, 2565,
1002 2580, 6045, 2570, 2570, 2566, 6051, 6056,10175, 6059, 2574,
1003 2583, 2644,10175, 2643,10175, 6064, 6070, 2586, 2622, 6078,
1005 6082, 2617, 6090, 6096,10175, 2610, 2616, 6100, 2617, 6108,
1006 6111, 2633, 2629, 2636, 2690,10175, 2689,10175, 6119, 2640,
1007 6122, 2647, 6126,10175, 6129, 6133, 6141, 6147, 6151, 6154,
1008 10175,10175, 6162, 6166, 6174, 6180,10175, 6183, 6186, 2795,
1009 2851, 2699, 6192,10175, 2643, 2692, 2683, 2715, 2717, 6195,
1010 6199, 2869, 2937, 6207, 2741, 2751, 2753, 2780, 2805, 2801,
1011 2813, 2812, 2820, 2834, 6215, 2781, 2798, 2789, 6218, 6221,
1012 10175, 2809, 6225,10175,10175, 6228, 6246, 2810, 2832, 6254,
1013 10175,10175, 2843, 6262, 6268, 2833, 6276, 6280, 6283, 6294,
1014 6298,10175,10175, 2853, 2863, 2860,10175,10175, 6306, 6312,
1016 6320, 6324, 6327, 2939, 3041, 6338,10175, 6342, 6345, 6348,
1017 10175,10175, 6357, 6364, 6375,10175, 3034, 3086, 3117, 2855,
1018 6378, 2870, 2889, 2899, 6381, 6384, 2923, 2961, 2987, 2972,
1019 2978, 3053, 6394, 2994, 2979, 2988, 3026,10175, 3061, 3059,
1020 3058, 3062,10175, 6399, 3056, 6402, 3083, 6408, 6412, 6418,
1021 6421, 6430,10175,10175, 3101, 3089, 3101, 6438,10175,10175,
1022 3108, 6446, 6455, 6464,10175,10175, 6472, 6475, 3098, 6483,
1023 3112, 6486,10175,10175, 6494, 6497, 6505, 6508, 3132, 3139,
1024 3142, 3151, 3152, 3158, 6516, 6519, 6523,10175,10175, 3176,
1025 3245, 6531, 3145, 6538, 6541, 3139, 3147, 6550,10175,10175,
1027 3197, 3189, 3192, 3206, 3214, 3211, 3212, 3239, 6544, 3228,
1028 3256, 3280, 3274, 3257, 3277, 3293, 3304, 6558, 3274, 6562,
1029 6568, 6571, 6577, 6580, 3276, 6591,10175,10175, 3277, 3274,
1030 3269, 3288, 6599,10175,10175, 6608,10175,10175, 3301, 6616,
1031 6619, 3291, 6627, 3353, 3374, 6635, 3382, 3450, 3321, 3331,
1032 3361, 3326, 3340, 3378, 6643, 6646, 3410, 6649, 6652, 6655,
1033 6674, 6677, 6680, 6683, 3366, 3380, 3383, 3398, 3403, 3417,
1034 3420, 3407, 6686, 6689, 3429, 3430,10175, 3431, 3437, 3437,
1035 10175, 3456, 6697, 6700, 6704, 6707, 6712,10175,10175, 3435,
1036 3436, 3439, 6720, 3441, 6726, 6729,10175,10175, 6738, 3474,
1038 3486, 3477, 3493, 3484, 3505, 3498, 3510, 3502, 3513,10175,
1039 3506, 3516,10175, 6745,10175, 6748, 3564, 6751, 6757, 6770,
1040 6801, 6848, 6778, 6781, 6784, 3535, 3565, 3568, 3539, 3561,
1041 3578, 3583, 3553, 6789,10175,10175, 3598, 3572, 3582, 3608,
1042 3585, 3587, 6812, 6821, 6824,10175, 3566, 3575, 3584, 6827,
1043 6831, 3578, 6839, 6868, 6859, 6877, 3642, 3625, 3657, 3631,
1044 3665, 3641, 3673, 3644, 3682, 3683, 3685, 3688, 6885, 3694,
1045 6894, 3728, 3703, 6914, 6961, 3701,10175,10175, 3690, 3716,
1046 10175,10175, 3693,10175, 3727, 3744,10175, 3742, 3744, 6888,
1047 10175, 3702, 3703, 3686, 6934, 3744, 3779, 3717, 6942,10175,
1049 10175, 6950, 3813, 3855,10175, 3770,10175, 3769,10175, 3775,
1050 10175, 3775,10175,10175,10175,10175, 6907,10175, 3800, 3841,
1051 3857, 3786, 3866, 3791, 6972, 3798, 3795, 3835, 3832,10175,
1052 10175,10175,10175, 6981, 6984, 6987, 3873, 3851, 3886, 3854,
1053 6992, 3917, 3856, 3979, 3887,10175,10175,10175,10175, 6995,
1054 3915, 3902, 3915, 7010, 3920, 3924, 3944, 3937, 7014, 7017,
1055 7025, 7032, 7043, 7046, 3924, 3933, 3945, 3948, 3956, 3969,
1056 7054, 7062, 3952, 3961, 3974, 3958, 3967, 3996, 7057, 4003,
1057 10175, 3991,10175, 3992, 7072,10175,10175, 7080,10175,10175,
1058 7088, 4007, 4037, 3991, 3996, 3997, 4011, 4021, 4018, 7096,
1060 10175,10175, 4020, 4029, 4052, 4064, 4074, 4071, 4153,10175,
1061 4112, 4111, 4099, 4103, 4111, 4112, 4121, 4127, 4139, 4137,
1062 4143, 4144, 4141, 4162, 4165, 4172, 4178, 4183, 4201,10175,
1063 10175, 4179, 4200, 4185, 4204, 4192, 4201, 4218, 4211, 4209,
1064 4227, 4219, 4219, 4237, 4231, 4230, 4247, 4261, 4243, 4251,
1065 4260, 4260, 4276, 4267, 4303, 4285, 4275, 4315, 4302, 4293,
1066 4327, 4308, 4299, 4328, 4337, 4325, 4346, 4343, 4357, 4378,
1067 4353,10175, 4381, 4359,10175, 4396, 4376,10175, 4403, 4380,
1068 10175, 4401, 4378, 4391, 4386, 4399,10175, 4406,10175, 4408,
1069 10175, 4420,10175, 4421, 7104, 4426, 4447, 4434, 4453, 4419,
1071 4421, 4422, 4427, 7107, 4466,10175, 4481,10175, 4491, 4490,
1072 4498, 4497, 4500, 4505,10175,10175,10175,10175,10175,10175,
1073 4515, 4519, 4552, 4554, 4522, 4584, 4625, 4699, 4555, 4583,
1074 4610, 4648, 4514, 4631, 4535, 4650, 4669, 4675, 4509, 4607,
1075 4678, 4690, 4670, 4696, 4689, 4754, 4762, 4810, 4724, 4742,
1076 4764, 4859, 4521, 4661, 4766, 4787, 4806, 4876, 4954, 4981,
1077 4847, 4860, 4862, 4877, 4779, 4941, 5022, 5024, 4879, 5013,
1078 4808, 4890, 5040, 5079, 4869, 5080, 5032, 5052, 5025, 5099,
1079 5047, 5090, 5075, 5126, 5137, 5145, 5053, 5127, 5115, 5124,
1080 5179, 5180, 5165, 5168, 5311, 5324, 5192, 5214, 5191, 5219,
1082 5221, 5288, 4985, 5346, 7115, 7118,10175,10175, 7138, 7147,
1083 7156, 7165, 7174, 7183, 7192, 7201, 7210, 7219, 7228, 7237,
1084 7246, 7255, 7264, 7273, 7282, 7291, 7300, 7309, 7318, 7327,
1085 7336, 7345, 7354, 7363, 7372, 7381, 7390, 7399, 7408, 7417,
1086 7426, 7435, 7444, 7453, 7462, 7471, 7480, 7489, 7498, 7507,
1087 7516, 7525, 7534, 7543, 7552, 7561, 7570, 7579, 7588, 7597,
1088 7606, 7613, 7620, 7627, 7634, 7641, 7648, 7655, 7662, 7669,
1089 7676, 7683, 7690, 7697, 7704, 7711, 7718, 7725, 7732, 7739,
1090 7746, 7753, 7760, 7767, 7774, 7783, 7790, 7795, 7802, 7807,
1091 7814, 7819, 7826, 7831, 7838, 7843, 7850, 7855, 7862, 7867,
1093 7874, 7879, 7886, 7891, 7898, 7903, 7910, 7915, 7922, 7927,
1094 7934, 7939, 7946, 7951, 7958, 7963, 7970, 7975, 7982, 7987,
1095 7994, 7999, 8006, 8011, 8018, 8023, 8030, 8035, 8042, 8047,
1096 8054, 8059, 8066, 8071, 8080, 8086, 8093, 8101, 8108, 8116,
1097 8123, 8131, 8138, 8146, 8153, 8161, 8168, 8176, 8183, 8191,
1098 8198, 8206, 8213, 8221, 8228, 8236, 8243, 8251, 8258, 8266,
1099 8273, 8281, 8288, 8296, 8303, 8311, 8319, 8327, 8335, 8343,
1100 8350, 8358, 8366, 8374, 8382, 8390, 8397, 8405, 8412, 8420,
1101 8428, 8435, 8443, 8452, 8458, 8465, 8473, 8481, 8489, 8497,
1102 8505, 8512, 8520, 8527, 8535, 8542, 8550, 8557, 8565, 8572,
1104 8580, 8588, 8596, 8604, 8612, 8619, 8627, 8634, 8642, 8649,
1105 8657, 8664, 8672, 8679, 8687, 8694, 8702, 8709, 8717, 8724,
1106 8732, 8740, 8747, 8755, 8762, 8770, 8777, 8785, 8793, 8800,
1107 8808, 8817, 8826, 8833, 8841, 8849, 8856, 8864, 8871, 8879,
1108 8886, 8894, 8901, 8908, 8916, 8923, 8931, 8939, 8946, 8954,
1109 8961, 8969, 8976, 8984, 8991, 8999, 9006, 9014, 9021, 9029,
1110 9036, 9044, 9051, 9059, 9066, 9074, 9082, 9089, 9097, 9104,
1111 9112, 9120, 9128, 9136, 9144, 9152, 9161, 9170, 9177, 9185,
1112 9193, 9200, 9208, 9215, 9223, 9230, 9238, 9245, 9252, 9260,
1113 9267, 9275, 9283, 9291, 9299, 9306, 9314, 9321, 9329, 9336,
1115 9344, 9351, 9359, 9366, 9374, 9381, 9389, 9397, 9405, 9412,
1116 9420, 9428, 9436, 9444, 9451, 9459, 9467, 9475, 9483, 9492,
1117 9501, 9509, 9517, 9525, 9532, 9540, 9547, 9555, 9563, 9571,
1118 9579, 9587, 9595, 9603, 9611, 9619, 9627, 9634, 9641, 9649,
1119 9656, 9663, 9671, 9678, 9685, 9693, 9700, 9708, 9715, 9723,
1120 9731, 9739, 9746, 9754, 9762, 9770, 9779, 9788, 9796, 9804,
1121 9811, 9818, 9826, 9834, 9842, 9850, 9858, 9865, 9872, 9880,
1122 9887, 9894, 9902, 9909, 9916, 9923, 9931, 9938, 9946, 9954,
1123 9962, 9970, 9978, 9986, 9994,10003,10012,10020,10028,10035,
1124 10043,10051,10059,10067,10075,10082,10089,10097,10104,10111,
1126 10120,10129,10138,10147,10156,10165
1129 static yyconst flex_int16_t yy_def[3207] =
1131 2809, 2809, 2810, 2810, 2810, 2810, 2811, 2811, 2812, 2812,
1132 2813, 2813, 2814, 2814, 2814, 2814, 2815, 2815, 2809, 2809,
1133 2816, 2816, 2817, 2817, 2817, 2817, 2809, 2809, 2817, 2817,
1134 2817, 2817, 2809, 2809, 2817, 2817, 2809, 2809, 2817, 2817,
1135 2817, 2817, 2818, 2818, 2819, 2819, 2809, 2809, 2819, 2819,
1136 2819, 2819, 2820, 2820, 2814, 2814, 2821, 2821, 2822, 2822,
1137 2809, 2809, 2822, 2822, 2822, 2822, 2823, 2823, 2824, 2824,
1138 2825, 2825, 2826, 2826, 2826, 2826, 2809, 2809, 2826, 2826,
1139 2826, 2826, 2809, 2809, 2826, 2826, 2809, 2809, 2826, 2826,
1140 2826, 2826, 2809, 2809, 2826, 2826, 2809, 2809, 2826, 2826,
1142 2826, 2826, 2827, 2827, 2828, 2828, 2809, 2809, 2828, 2828,
1143 2828, 2828, 2829, 2829, 2830, 2830, 2809, 2809, 2830, 2830,
1144 2830, 2830, 2831, 2831, 2832, 2832, 2833, 2833, 2834, 2834,
1145 2835, 2835, 2836, 2836, 2809, 2809, 2836, 2836, 2836, 2836,
1146 2808, 141, 2837, 2837, 2838, 2838, 2839, 2839, 2840, 2840,
1147 2841, 2841, 2842, 2842, 2843, 2843, 2809, 2809, 2843, 2843,
1148 2843, 2843, 2844, 2844, 2845, 2845, 2809, 2809, 2845, 2845,
1149 2845, 2845, 2846, 2846, 2847, 2847, 2809, 2809, 2847, 2847,
1150 2847, 2847, 2848, 2848, 2849, 2849, 2850, 2850, 2851, 2851,
1151 2809, 2809, 2851, 2851, 2851, 2851, 2852, 2852, 2853, 2853,
1153 2809, 2809, 2853, 2853, 2853, 2853, 2854, 2854, 2855, 2855,
1154 2809, 2809, 2855, 2855, 2855, 2855, 2856, 2856, 2857, 2857,
1155 2858, 2858, 2859, 2859, 2809, 2809, 2859, 2859, 2859, 2859,
1156 2860, 2860, 2861, 2861, 2809, 2809, 2808, 2808, 2808, 2808,
1157 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1158 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1159 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2862, 2808, 2808,
1160 2862, 2808, 2808, 2808, 274, 274, 276, 274, 277, 277,
1161 2808, 2808, 2808, 2863, 2808, 2808, 2863, 2808, 2808, 278,
1162 277, 2808, 2808, 2808, 2864, 2808, 2808, 2864, 2864, 2864,
1164 2808, 2808, 2808, 2808, 2808, 2865, 2808, 2808, 2865, 2865,
1165 2865, 2865, 2865, 2808, 2808, 277, 277, 277, 2808, 2808,
1166 2808, 2866, 2808, 2808, 2866, 2866, 2866, 2808, 2808, 2808,
1167 2808, 2808, 2808, 2867, 2808, 2808, 2867, 2867, 2808, 2808,
1168 278, 277, 278, 341, 342, 342, 342, 342, 347, 349,
1169 348, 347, 2808, 2808, 2808, 2868, 2808, 2808, 2868, 2868,
1170 2868, 2868, 2808, 2808, 277, 277, 2808, 2808, 2808, 2869,
1171 2808, 2808, 2869, 2869, 2869, 2808, 2808, 277, 277, 2808,
1172 2808, 2808, 2870, 2808, 2808, 2870, 2870, 2808, 2808, 2808,
1173 2808, 2808, 2808, 2871, 2808, 2808, 2871, 2871, 2808, 2808,
1175 2808, 2808, 2808, 2808, 2872, 2808, 2808, 2872, 2872, 2872,
1176 2872, 2872, 2808, 2808, 277, 415, 415, 2808, 2808, 2808,
1177 2873, 2808, 2808, 2873, 2873, 2873, 2873, 2873, 2873, 2873,
1178 2873, 2808, 2808, 2808, 2808, 2808, 2808, 2874, 2808, 2808,
1179 2874, 2874, 2874, 2874, 2874, 2874, 2874, 2808, 2808, 2808,
1180 2808, 2808, 2808, 2875, 2808, 2808, 2875, 2875, 2808, 2808,
1181 2808, 2808, 2808, 2808, 2876, 2808, 2808, 2876, 2876, 2876,
1182 2876, 2808, 2808, 415, 277, 2808, 2808, 2808, 2877, 2808,
1183 2808, 2877, 2877, 2808, 2808, 277, 486, 486, 2808, 2808,
1184 2808, 2878, 2808, 2808, 2878, 2878, 2878, 2808, 2808, 486,
1186 486, 2808, 2808, 2808, 2879, 2808, 2808, 2879, 2879, 2808,
1187 2808, 2808, 2808, 2808, 2808, 2880, 2808, 2808, 2880, 2880,
1188 2808, 2808, 486, 486, 2808, 2808, 2808, 2881, 2808, 2808,
1189 2881, 2881, 2881, 2808, 2808, 486, 486, 2808, 2808, 2808,
1190 2882, 2808, 2808, 2882, 2882, 2882, 2882, 2808, 2808, 277,
1191 550, 550, 2808, 2808, 2808, 2883, 2808, 2808, 2883, 2808,
1192 2808, 2808, 2808, 2808, 2808, 2884, 2808, 2808, 2884, 2808,
1193 2808, 550, 277, 2808, 2808, 2808, 2885, 2808, 2808, 2885,
1194 2885, 2808, 2808, 2808, 2808, 2886, 2808, 2808, 2808, 2808,
1195 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1197 2808, 2887, 2887, 2888, 2808, 2808, 2808, 2808, 2808, 2808,
1198 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1199 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2889, 2889, 2890,
1200 2808, 2891, 2891, 2891, 2891, 2808, 2892, 2808, 2808, 2893,
1201 2893, 2893, 2893, 2893, 2893, 2893, 2893, 2893, 2894, 2808,
1202 2808, 2895, 2895, 2895, 2895, 2896, 2808, 2897, 2897, 2897,
1203 2898, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1204 2808, 2808, 2808, 2899, 2899, 2899, 2899, 2899, 2900, 2808,
1205 2901, 2901, 2901, 2901, 2902, 2808, 2903, 2903, 2903, 2904,
1206 2808, 2905, 2905, 2905, 2906, 2808, 2907, 2907, 2907, 2907,
1208 2907, 2907, 2908, 2808, 2808, 2909, 2909, 2909, 2909, 2909,
1209 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2910,
1210 2808, 2911, 2911, 2911, 2911, 2911, 2911, 2911, 2911, 2912,
1211 2808, 2913, 2913, 2913, 2914, 2808, 2915, 2915, 2915, 2915,
1212 2915, 2915, 2916, 2808, 2917, 2917, 2917, 2917, 2918, 2808,
1213 2808, 2919, 2919, 2919, 2919, 2919, 2920, 2808, 2921, 2921,
1214 2921, 2922, 2808, 2923, 2923, 2923, 2924, 2808, 2925, 2925,
1215 2925, 2925, 2926, 2808, 2927, 2927, 2927, 2927, 2927, 2928,
1216 2808, 2808, 2929, 2929, 2930, 2808, 2931, 2931, 2932, 2808,
1217 2933, 2933, 2933, 2934, 2935, 2808, 2935, 2808, 2808, 2808,
1219 2936, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2937, 2938,
1220 2938, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1221 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1222 2808, 2808, 2808, 2808, 2808, 2808, 2939, 2940, 2940, 2941,
1223 2808, 2808, 2941, 2808, 2942, 2942, 2808, 2943, 2808, 2808,
1224 2943, 2943, 2943, 2943, 2943, 2943, 2944, 2944, 2808, 2945,
1225 2945, 2945, 2946, 2946, 2808, 2808, 2947, 2948, 2948, 2808,
1226 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1227 2949, 2808, 2808, 2949, 2949, 2950, 2950, 2951, 2808, 2808,
1228 2951, 2952, 2952, 2808, 2808, 2953, 2954, 2954, 2955, 2955,
1230 2956, 2956, 2957, 2957, 2957, 2808, 2808, 2957, 2957, 2958,
1231 2958, 2808, 2808, 2959, 2959, 2808, 2808, 2959, 2808, 2808,
1232 2959, 2959, 2959, 2959, 2959, 2959, 2959, 2959, 2960, 2960,
1233 2961, 2961, 2961, 2808, 2808, 2961, 2961, 2961, 2962, 2962,
1234 2963, 2808, 2808, 2964, 2964, 2965, 2808, 2808, 2965, 2965,
1235 2965, 2966, 2966, 2967, 2967, 2967, 2968, 2968, 2808, 2969,
1236 2969, 2969, 2969, 2970, 2970, 2971, 2808, 2808, 2972, 2972,
1237 2973, 2973, 2974, 2974, 2975, 2975, 2975, 2976, 2976, 2977,
1238 2977, 2977, 2977, 2978, 2978, 2808, 2979, 2980, 2980, 2808,
1239 2808, 2981, 2981, 2808, 2808, 2982, 2983, 2983, 2984, 2808,
1241 2808, 2984, 2808, 2808, 2985, 2808, 2808, 2808, 2808, 2808,
1242 2808, 2986, 2808, 2987, 2808, 2987, 2808, 2808, 2808, 2808,
1243 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1244 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1245 2808, 2808, 2988, 2808, 2989, 2808, 2989, 2990, 2808, 2808,
1246 2808, 2990, 2808, 2808, 2991, 2808, 2991, 2992, 2808, 2808,
1247 2808, 2808, 2808, 2992, 2808, 2808, 2992, 2992, 2992, 2808,
1248 2993, 2808, 2993, 2808, 2994, 2994, 2994, 2808, 2995, 2808,
1249 2995, 2808, 2808, 2808, 2996, 2808, 2997, 2808, 2997, 2808,
1250 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2998,
1252 2808, 2808, 2808, 2998, 2998, 2808, 2999, 2808, 2999, 3000,
1253 2808, 2808, 2808, 3000, 2808, 3001, 2808, 3001, 2808, 2808,
1254 2808, 3002, 2808, 3003, 2808, 3003, 3004, 3004, 2808, 3005,
1255 2808, 3005, 3006, 3006, 3006, 2808, 2808, 2808, 3006, 3006,
1256 2808, 3007, 2808, 3007, 2808, 2808, 3008, 3008, 3008, 3008,
1257 2808, 2808, 2808, 3008, 2808, 2808, 2808, 2808, 2808, 3008,
1258 3008, 3008, 3008, 3008, 3008, 3008, 2808, 3009, 2808, 3009,
1259 3010, 3010, 3010, 3010, 2808, 2808, 2808, 2808, 2808, 3010,
1260 3010, 2808, 3011, 2808, 3011, 3012, 2808, 2808, 2808, 2808,
1261 3013, 2808, 3013, 3014, 2808, 2808, 2808, 3014, 3014, 3014,
1263 2808, 3015, 2808, 3015, 2808, 2808, 2808, 2808, 3016, 2808,
1264 3017, 2808, 3017, 2808, 2808, 2808, 3018, 3018, 2808, 2808,
1265 3018, 2808, 3019, 2808, 3019, 3020, 2808, 2808, 2808, 2808,
1266 3021, 2808, 3021, 2808, 2808, 2808, 2808, 2808, 3022, 2808,
1267 3022, 2808, 2808, 3023, 3023, 2808, 2808, 2808, 3024, 2808,
1268 3024, 3025, 3025, 3025, 3025, 2808, 3026, 2808, 3026, 2808,
1269 3027, 2808, 3028, 2808, 3028, 2808, 2808, 2808, 2808, 3029,
1270 2808, 3029, 2808, 2808, 2808, 3030, 2808, 3031, 2808, 3031,
1271 3032, 3033, 2808, 2808, 2808, 2808, 2808, 3034, 3035, 2808,
1272 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1274 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1275 2808, 2808, 2808, 2808, 2808, 2808, 3036, 2808, 2808, 3037,
1276 2808, 3038, 3039, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1277 2808, 3039, 2808, 2808, 3039, 3040, 2808, 3041, 2808, 2808,
1278 3041, 3042, 3043, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1279 2808, 2808, 2808, 2808, 2808, 3044, 3044, 2808, 2808, 3045,
1280 3046, 3046, 3047, 2808, 2808, 3048, 2808, 2808, 3049, 3050,
1281 3051, 3051, 2808, 2808, 3051, 3051, 3052, 2808, 2808, 3053,
1282 3053, 3053, 3053, 2808, 2808, 2808, 2808, 2808, 3053, 3053,
1283 3053, 3053, 3053, 3053, 3053, 3054, 3055, 3055, 3055, 3055,
1285 2808, 2808, 2808, 3055, 3055, 3056, 3057, 3058, 3059, 3059,
1286 3059, 3059, 3060, 2808, 2808, 2808, 2808, 2808, 2808, 3061,
1287 3062, 2808, 2808, 2808, 2808, 3063, 3063, 2808, 2808, 2808,
1288 3063, 3064, 3065, 3066, 2808, 2808, 2808, 2808, 2808, 2808,
1289 3067, 2808, 2808, 2808, 3068, 3068, 2808, 2808, 2808, 3069,
1290 3070, 2808, 2808, 3070, 3070, 3071, 2808, 3072, 3073, 3074,
1291 3075, 3076, 3077, 3078, 3078, 2808, 3078, 2808, 2808, 2808,
1292 3079, 3080, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1293 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1294 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1296 2808, 3081, 2808, 2808, 2808, 3082, 2808, 3083, 3084, 2808,
1297 2808, 2808, 3084, 2808, 2808, 2808, 3084, 3085, 2808, 3086,
1298 2808, 2808, 2808, 2808, 2808, 3087, 3088, 2808, 2808, 2808,
1299 2808, 2808, 2808, 2808, 2808, 2808, 2808, 3089, 2808, 2808,
1300 2808, 2808, 2808, 3090, 3091, 3091, 3092, 2808, 2808, 2808,
1301 3093, 2808, 2808, 2808, 3094, 3095, 3096, 3096, 2808, 2808,
1302 2808, 2808, 2808, 2808, 2808, 3096, 3097, 2808, 2808, 3098,
1303 2808, 2808, 3098, 3098, 2808, 2808, 2808, 2808, 2808, 3098,
1304 3098, 3098, 3098, 3098, 3098, 3099, 3100, 2808, 2808, 3100,
1305 3100, 2808, 2808, 3100, 3101, 3102, 3103, 3104, 3104, 3104,
1307 2808, 2808, 3104, 3105, 3106, 3107, 2808, 3108, 3108, 3108,
1308 3109, 3110, 3111, 3112, 3113, 3113, 3114, 3115, 2808, 2808,
1309 2808, 3115, 3115, 3116, 2808, 2808, 2808, 3117, 3118, 2808,
1310 2808, 3119, 3120, 3121, 3121, 2808, 2808, 3122, 3123, 2808,
1311 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1312 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1313 2808, 2808, 2808, 3124, 3125, 2808, 3126, 3127, 3127, 3127,
1314 3128, 3129, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1315 2808, 2808, 2808, 3130, 3131, 2808, 2808, 2808, 2808, 2808,
1316 2808, 2808, 3132, 2808, 2808, 2808, 3133, 3134, 2808, 2808,
1318 3135, 3136, 2808, 2808, 3137, 3138, 3138, 2808, 2808, 2808,
1319 2808, 2808, 2808, 3138, 2808, 2808, 2808, 2808, 3139, 2808,
1320 2808, 2808, 2808, 2808, 3139, 2808, 2808, 2808, 2808, 2808,
1321 3139, 3139, 3139, 3139, 2808, 2808, 3140, 3141, 2808, 2808,
1322 2808, 2808, 2808, 3141, 2808, 2808, 2808, 3141, 2808, 2808,
1323 3142, 3143, 3144, 3144, 3144, 2808, 2808, 2808, 3144, 2808,
1324 2808, 3145, 3146, 2808, 2808, 2808, 2808, 2808, 3147, 3148,
1325 3149, 3150, 3151, 2808, 2808, 2808, 2808, 3152, 3153, 3153,
1326 3153, 3154, 2808, 2808, 2808, 2808, 3155, 3156, 2808, 2808,
1327 2808, 2808, 2808, 3157, 3158, 3158, 2808, 2808, 2808, 3159,
1329 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1330 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1331 2808, 3160, 3161, 2808, 2808, 2808, 3162, 2808, 2808, 3162,
1332 3163, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1333 2808, 2808, 2808, 3164, 2808, 2808, 2808, 2808, 2808, 2808,
1334 2808, 2808, 2808, 3165, 2808, 2808, 2808, 2808, 2808, 3166,
1335 2808, 2808, 2808, 2808, 2808, 3167, 3168, 3168, 2808, 2808,
1336 3168, 2808, 3169, 2808, 2808, 2808, 3169, 2808, 2808, 2808,
1337 2808, 2808, 3169, 3169, 3169, 2808, 2808, 2808, 3170, 3171,
1338 2808, 2808, 2808, 3171, 3171, 3172, 3173, 3174, 2808, 2808,
1340 3174, 3174, 2808, 2808, 3174, 3175, 2808, 2808, 2808, 2808,
1341 2808, 2808, 2808, 2808, 2808, 3176, 3177, 3178, 3179, 3180,
1342 2808, 2808, 2808, 2808, 2808, 2808, 3181, 3182, 3182, 3182,
1343 3183, 2808, 3184, 3185, 3186, 3187, 3187, 2808, 2808, 2808,
1344 2808, 3188, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1345 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 3189,
1346 3190, 2808, 3191, 2808, 2808, 2808, 3191, 2808, 2808, 2808,
1347 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1348 2808, 2808, 3192, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1349 2808, 2808, 2808, 2808, 3193, 2808, 2808, 2808, 3194, 3195,
1351 3196, 3196, 2808, 2808, 2808, 2808, 3196, 2808, 3197, 3197,
1352 2808, 2808, 2808, 3197, 3197, 3197, 3198, 3199, 3199, 3199,
1353 3200, 2808, 2808, 3174, 2808, 2808, 2808, 3174, 3174, 2808,
1354 2808, 2808, 2808, 3174, 3175, 2808, 3176, 3177, 3178, 3179,
1355 3180, 3181, 2808, 2808, 3182, 3182, 3183, 2808, 3184, 2808,
1356 2808, 3186, 3187, 3187, 2808, 3188, 2808, 2808, 2808, 2808,
1357 2808, 2808, 2808, 2808, 2808, 2808, 2808, 3190, 2808, 2808,
1358 3191, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1359 2808, 3192, 2808, 2808, 2808, 3193, 2808, 2808, 3195, 3196,
1360 3196, 2808, 2808, 2808, 2808, 3196, 2808, 3197, 3197, 2808,
1362 2808, 3197, 3197, 2808, 2808, 3199, 3199, 3199, 3200, 2808,
1363 2808, 3174, 3174, 3174, 2808, 2808, 2808, 2808, 3174, 3175,
1364 2808, 3176, 2808, 2808, 2808, 2808, 3179, 3180, 3181, 2808,
1365 2808, 2808, 2808, 2808, 3182, 2808, 2808, 2808, 3184, 3186,
1366 3187, 3187, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 3190,
1367 2808, 2808, 2808, 3191, 2808, 2808, 2808, 2808, 2808, 2808,
1368 2808, 2808, 2808, 2808, 3192, 2808, 2808, 2808, 3193, 2808,
1369 2808, 3196, 3196, 2808, 2808, 2808, 2808, 3197, 3197, 2808,
1370 2808, 2808, 3197, 2808, 2808, 3199, 3199, 2808, 2808, 3200,
1371 2808, 2808, 2808, 3174, 3174, 3174, 2808, 2808, 2808, 2808,
1373 3175, 3176, 2808, 2808, 2808, 2808, 2808, 3180, 3181, 2808,
1374 2808, 2808, 2808, 2808, 2808, 2808, 3186, 3187, 3187, 2808,
1375 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1376 2808, 2808, 3191, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1377 2808, 2808, 2808, 3192, 2808, 2808, 2808, 3193, 3196, 2808,
1378 2808, 2808, 2808, 2808, 3197, 3197, 3197, 2808, 2808, 2808,
1379 3199, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 3174, 3174,
1380 3174, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1381 2808, 2808, 2808, 2808, 3180, 3181, 2808, 2808, 2808, 3186,
1382 3187, 3187, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1384 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 3191, 2808,
1385 2808, 2808, 2808, 2808, 2808, 2808, 2808, 3192, 2808, 2808,
1386 2808, 3193, 2808, 2808, 3196, 2808, 2808, 2808, 3197, 3197,
1387 3197, 3199, 2808, 2808, 2808, 2808, 2808, 2808, 3174, 2808,
1388 2808, 3174, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1389 2808, 2808, 2808, 2808, 3180, 3181, 3186, 3187, 3187, 3187,
1390 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1391 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1392 2808, 2808, 3192, 2808, 2808, 3193, 2808, 2808, 2808, 3196,
1393 3197, 3197, 3197, 3199, 3174, 2808, 2808, 2808, 3174, 2808,
1395 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1396 2808, 2808, 2808, 2808, 2808, 3181, 3186, 3187, 3187, 3187,
1397 3201, 3202, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1398 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1399 2808, 2808, 3192, 2808, 2808, 2808, 3196, 3197, 3197, 2808,
1400 2808, 3199, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1401 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 3181, 3186,
1402 3187, 3203, 3204, 3201, 3202, 2808, 2808, 2808, 2808, 2808,
1403 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1404 2808, 3196, 3197, 3197, 2808, 2808, 2808, 3199, 2808, 2808,
1406 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1407 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 3186, 3203,
1408 3187, 3205, 3204, 3206, 3187, 2808, 2808, 2808, 2808, 2808,
1409 2808, 2808, 2808, 3196, 3197, 3197, 2808, 2808, 2808, 2808,
1410 3199, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 3186,
1411 3205, 2808, 3206, 3187, 2808, 2808, 2808, 2808, 2808, 2808,
1412 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1413 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 3186, 2808,
1414 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1415 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1417 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 3186, 2808,
1418 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1419 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 3186, 2808,
1420 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1421 2808, 2808, 2808, 2808, 2808, 2808, 2808, 3186, 2808, 2808,
1422 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1423 2808, 2808, 2808, 2808, 3186, 2808, 2808, 2808, 2808, 2808,
1424 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1425 2808, 3186, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1426 2808, 2808, 2808, 2808, 3186, 2808, 2808, 2808, 2808, 2808,
1428 2808, 2808, 2808, 3186, 2808, 2808, 2808, 2808, 2808, 2808,
1429 2808, 2808, 3186, 3186, 2808, 2808, 2808, 2808, 2808, 2808,
1430 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186,
1431 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186,
1432 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186,
1433 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186,
1434 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186,
1435 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186,
1436 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186,
1437 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186, 3186,
1439 3186, 3186, 3186, 3186, 3186, 3186, 2808, 0, 2808, 2808,
1440 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1441 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1442 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1443 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1444 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1445 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1446 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1447 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1448 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1450 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1451 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1452 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1453 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1454 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1455 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1456 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1457 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1458 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1459 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1461 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1462 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1463 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1464 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1465 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1466 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1467 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1468 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1469 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1470 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1472 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1473 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1474 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1475 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1476 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1477 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1478 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1479 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1480 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1481 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
1483 2808, 2808, 2808, 2808, 2808, 2808
1486 static yyconst flex_int16_t yy_nxt[10249] =
1488 2808, 240, 241, 240, 240, 241, 240, 240, 241, 240,
1489 240, 241, 240, 245, 241, 245, 251, 242, 248, 251,
1490 242, 248, 789, 243, 2808, 249, 243, 661, 249, 246,
1491 245, 241, 245, 586, 252, 254, 255, 252, 254, 255,
1492 256, 257, 630, 256, 257, 586, 246, 261, 262, 587,
1493 258, 254, 255, 258, 259, 589, 256, 254, 255, 606,
1494 259, 588, 256, 261, 262, 2808, 258, 241, 241, 241,
1495 708, 588, 258, 241, 241, 241, 273, 241, 273, 273,
1496 241, 273, 623, 264, 273, 241, 273, 665, 741, 264,
1497 709, 263, 274, 622, 667, 274, 585, 585, 585, 742,
1499 275, 585, 585, 585, 585, 585, 585, 263, 265, 266,
1500 241, 266, 265, 265, 265, 265, 265, 265, 265, 267,
1501 265, 265, 265, 649, 265, 269, 265, 270, 265, 273,
1502 241, 273, 241, 241, 241, 241, 241, 241, 617, 273,
1503 241, 273, 273, 241, 273, 275, 1640, 1641, 276, 589,
1504 589, 276, 618, 265, 265, 274, 1642, 589, 274, 273,
1505 241, 273, 585, 585, 585, 588, 588, 585, 585, 585,
1506 585, 585, 585, 588, 650, 277, 271, 265, 266, 241,
1507 266, 265, 265, 265, 265, 265, 265, 265, 267, 265,
1508 265, 265, 2808, 265, 269, 265, 270, 265, 273, 241,
1510 273, 241, 241, 241, 241, 241, 241, 600, 273, 241,
1511 273, 273, 241, 273, 277, 2808, 604, 278, 619, 747,
1512 278, 649, 265, 265, 275, 619, 748, 275, 241, 241,
1513 241, 241, 241, 241, 273, 241, 273, 273, 241, 273,
1514 273, 241, 273, 650, 279, 271, 607, 279, 589, 1643,
1515 277, 1644, 589, 277, 620, 624, 280, 273, 241, 273,
1516 621, 585, 585, 585, 588, 2808, 622, 625, 588, 618,
1517 623, 679, 622, 280, 281, 282, 241, 282, 281, 281,
1518 281, 281, 281, 281, 281, 283, 281, 281, 281, 796,
1519 281, 285, 281, 286, 281, 289, 241, 289, 289, 241,
1521 289, 241, 241, 241, 617, 241, 241, 241, 289, 241,
1522 289, 290, 647, 1645, 290, 1646, 626, 278, 618, 281,
1523 281, 278, 650, 1000, 290, 844, 648, 287, 281, 282,
1524 241, 282, 281, 281, 281, 281, 281, 281, 281, 283,
1525 281, 281, 281, 1463, 281, 285, 281, 286, 281, 289,
1526 241, 289, 289, 241, 289, 289, 241, 289, 585, 585,
1527 585, 254, 255, 636, 589, 290, 256, 1648, 291, 1649,
1528 637, 291, 679, 281, 281, 612, 301, 1650, 622, 588,
1529 588, 287, 292, 293, 241, 293, 292, 292, 292, 292,
1530 292, 292, 292, 294, 292, 292, 292, 669, 292, 296,
1532 292, 297, 292, 609, 1651, 302, 315, 241, 315, 315,
1533 241, 315, 618, 241, 241, 241, 254, 255, 241, 241,
1534 241, 256, 316, 622, 685, 316, 589, 292, 292, 317,
1535 715, 301, 1172, 656, 317, 298, 685, 1173, 299, 585,
1536 585, 585, 588, 716, 300, 292, 293, 241, 293, 292,
1537 292, 292, 292, 292, 292, 292, 294, 292, 292, 292,
1538 302, 292, 296, 292, 297, 292, 315, 241, 315, 315,
1539 241, 315, 315, 241, 315, 650, 315, 241, 315, 329,
1540 241, 329, 316, 589, 589, 316, 589, 622, 318, 643,
1541 292, 292, 318, 644, 1654, 330, 1657, 645, 298, 588,
1543 588, 299, 588, 713, 594, 1658, 714, 300, 303, 304,
1544 241, 304, 303, 303, 303, 303, 303, 303, 303, 305,
1545 303, 303, 303, 743, 303, 307, 303, 308, 303, 329,
1546 241, 329, 340, 241, 340, 340, 241, 340, 743, 340,
1547 241, 340, 340, 241, 340, 330, 595, 589, 341, 589,
1548 589, 341, 596, 303, 303, 342, 597, 690, 342, 1659,
1549 1660, 598, 309, 588, 310, 588, 588, 311, 585, 585,
1550 585, 612, 312, 313, 303, 304, 241, 304, 303, 303,
1551 303, 303, 303, 303, 303, 305, 303, 303, 303, 622,
1552 303, 307, 303, 308, 303, 241, 241, 241, 241, 241,
1554 241, 340, 241, 340, 606, 340, 241, 340, 340, 241,
1555 340, 343, 1000, 589, 343, 589, 589, 344, 622, 303,
1556 303, 344, 695, 1661, 345, 585, 585, 585, 309, 588,
1557 310, 588, 588, 311, 585, 585, 585, 1633, 312, 313,
1558 319, 320, 241, 320, 319, 319, 319, 319, 319, 319,
1559 319, 321, 319, 319, 319, 1665, 319, 323, 319, 324,
1560 319, 340, 241, 340, 241, 241, 241, 241, 241, 241,
1561 717, 340, 241, 340, 340, 241, 340, 345, 825, 1666,
1562 346, 718, 719, 346, 661, 319, 319, 342, 589, 589,
1563 342, 826, 325, 585, 585, 585, 720, 326, 585, 585,
1565 585, 585, 585, 585, 588, 588, 327, 319, 320, 241,
1566 320, 319, 319, 319, 319, 319, 319, 319, 321, 319,
1567 319, 319, 670, 319, 323, 319, 324, 319, 241, 241,
1568 241, 241, 241, 241, 340, 241, 340, 666, 340, 241,
1569 340, 340, 241, 340, 347, 796, 802, 347, 755, 803,
1570 345, 2808, 319, 319, 345, 756, 1668, 348, 1302, 325,
1571 797, 619, 664, 610, 326, 665, 585, 585, 585, 757,
1572 1303, 672, 667, 327, 331, 332, 241, 332, 331, 331,
1573 331, 331, 331, 331, 331, 333, 331, 331, 331, 607,
1574 331, 335, 331, 336, 331, 340, 241, 340, 241, 241,
1576 241, 241, 241, 241, 1669, 340, 241, 340, 340, 241,
1577 340, 348, 815, 1313, 349, 816, 611, 349, 820, 331,
1578 331, 350, 821, 1670, 350, 1303, 619, 585, 585, 585,
1579 337, 585, 585, 585, 585, 585, 585, 1672, 338, 331,
1580 332, 241, 332, 331, 331, 331, 331, 331, 331, 331,
1581 333, 331, 331, 331, 670, 331, 335, 331, 336, 331,
1582 241, 241, 241, 241, 241, 241, 340, 241, 340, 671,
1583 340, 241, 340, 340, 241, 340, 351, 589, 589, 351,
1584 815, 1685, 348, 829, 331, 331, 348, 1686, 589, 352,
1585 340, 241, 340, 588, 588, 337, 585, 585, 585, 585,
1587 585, 585, 832, 338, 588, 816, 352, 353, 354, 241,
1588 354, 353, 353, 353, 353, 353, 353, 353, 355, 353,
1589 353, 353, 1687, 353, 357, 353, 358, 353, 364, 241,
1590 364, 364, 241, 364, 241, 241, 241, 789, 241, 241,
1591 241, 585, 585, 585, 365, 1690, 589, 365, 589, 589,
1592 317, 1691, 353, 353, 317, 730, 735, 359, 585, 585,
1593 585, 703, 588, 360, 588, 588, 361, 585, 585, 585,
1594 749, 1692, 362, 353, 354, 241, 354, 353, 353, 353,
1595 353, 353, 353, 353, 355, 353, 353, 353, 622, 353,
1596 357, 353, 358, 353, 364, 241, 364, 364, 241, 364,
1598 364, 241, 364, 1693, 364, 241, 364, 767, 1698, 704,
1599 365, 589, 650, 365, 589, 589, 366, 750, 353, 353,
1600 366, 622, 762, 359, 585, 585, 585, 588, 1706, 360,
1601 588, 588, 361, 585, 585, 585, 773, 1707, 362, 367,
1602 368, 241, 368, 367, 367, 367, 367, 367, 367, 367,
1603 369, 367, 367, 367, 611, 367, 371, 367, 372, 367,
1604 377, 241, 377, 377, 241, 377, 241, 241, 241, 1313,
1605 241, 241, 241, 585, 585, 585, 378, 589, 589, 378,
1606 1714, 1337, 317, 611, 367, 367, 317, 1718, 1719, 373,
1607 585, 585, 585, 588, 588, 374, 585, 585, 585, 585,
1609 585, 585, 585, 585, 585, 375, 367, 368, 241, 368,
1610 367, 367, 367, 367, 367, 367, 367, 369, 367, 367,
1611 367, 1725, 367, 371, 367, 372, 367, 377, 241, 377,
1612 377, 241, 377, 377, 241, 377, 1731, 377, 241, 377,
1613 585, 585, 585, 378, 589, 589, 378, 832, 1732, 379,
1614 829, 367, 367, 379, 1733, 1734, 373, 585, 585, 585,
1615 588, 588, 374, 585, 585, 585, 585, 585, 585, 585,
1616 585, 585, 375, 380, 381, 241, 381, 380, 380, 380,
1617 380, 380, 380, 380, 382, 380, 380, 380, 1738, 380,
1618 384, 380, 385, 380, 389, 241, 389, 389, 241, 389,
1620 400, 241, 400, 1744, 400, 241, 400, 414, 241, 414,
1621 390, 904, 589, 390, 905, 1748, 401, 912, 380, 380,
1622 401, 913, 1751, 415, 585, 585, 585, 780, 588, 386,
1623 585, 585, 585, 387, 380, 381, 241, 381, 380, 380,
1624 380, 380, 380, 380, 380, 382, 380, 380, 380, 1753,
1625 380, 384, 380, 385, 380, 414, 241, 414, 241, 241,
1626 241, 241, 241, 241, 781, 414, 241, 414, 414, 241,
1627 414, 415, 1754, 1000, 416, 1755, 822, 416, 650, 380,
1628 380, 415, 823, 1759, 415, 585, 585, 585, 824, 1002,
1629 386, 585, 585, 585, 387, 391, 392, 241, 392, 391,
1631 391, 391, 391, 391, 391, 391, 393, 391, 391, 391,
1632 1762, 391, 395, 391, 396, 391, 414, 241, 414, 414,
1633 241, 414, 433, 241, 433, 1764, 433, 241, 433, 449,
1634 241, 449, 417, 1000, 1771, 417, 1779, 1281, 434, 1780,
1635 391, 391, 434, 1781, 1783, 450, 585, 585, 585, 585,
1636 585, 585, 585, 585, 585, 397, 585, 585, 585, 1466,
1637 1000, 398, 391, 392, 241, 392, 391, 391, 391, 391,
1638 391, 391, 391, 393, 391, 391, 391, 1794, 391, 395,
1639 391, 396, 391, 449, 241, 449, 460, 241, 460, 460,
1640 241, 460, 1797, 473, 241, 473, 473, 241, 473, 450,
1642 1795, 1801, 461, 589, 589, 461, 1802, 391, 391, 474,
1643 785, 794, 474, 585, 585, 585, 585, 585, 585, 588,
1644 588, 1805, 397, 585, 585, 585, 1466, 1807, 398, 402,
1645 403, 241, 403, 402, 402, 402, 402, 402, 402, 402,
1646 404, 402, 402, 402, 1808, 402, 406, 402, 407, 402,
1647 241, 241, 241, 241, 241, 241, 473, 241, 473, 1796,
1648 473, 241, 473, 585, 585, 585, 317, 1809, 1810, 317,
1649 830, 1811, 474, 1803, 402, 402, 474, 408, 834, 409,
1650 585, 585, 585, 826, 823, 410, 585, 585, 585, 1804,
1651 835, 411, 1814, 1815, 412, 402, 403, 241, 403, 402,
1653 402, 402, 402, 402, 402, 402, 404, 402, 402, 402,
1654 1818, 402, 406, 402, 407, 402, 473, 241, 473, 473,
1655 241, 473, 485, 241, 485, 1819, 485, 241, 485, 585,
1656 585, 585, 475, 1820, 1821, 475, 830, 1823, 486, 1148,
1657 402, 402, 486, 408, 834, 409, 822, 834, 1149, 874,
1658 823, 410, 823, 823, 1824, 1150, 824, 411, 835, 859,
1659 412, 418, 419, 241, 419, 418, 418, 418, 418, 418,
1660 418, 418, 420, 418, 418, 418, 421, 418, 422, 418,
1661 423, 418, 421, 421, 421, 421, 421, 421, 421, 421,
1662 421, 421, 421, 421, 421, 421, 421, 421, 421, 421,
1664 421, 421, 421, 421, 421, 421, 418, 418, 421, 424,
1665 425, 426, 421, 421, 421, 421, 421, 427, 421, 428,
1666 421, 421, 421, 429, 421, 430, 431, 421, 421, 421,
1667 421, 421, 421, 421, 435, 436, 241, 436, 435, 435,
1668 435, 435, 435, 435, 435, 437, 435, 435, 435, 1827,
1669 435, 439, 435, 440, 435, 241, 241, 241, 241, 241,
1670 241, 485, 241, 485, 1830, 485, 241, 485, 841, 841,
1671 841, 487, 1834, 1835, 487, 1838, 830, 486, 830, 435,
1672 435, 486, 441, 442, 443, 842, 800, 800, 800, 879,
1673 444, 880, 445, 800, 800, 800, 446, 1004, 1839, 447,
1675 435, 436, 241, 436, 435, 435, 435, 435, 435, 435,
1676 435, 437, 435, 435, 435, 1840, 435, 439, 435, 440,
1677 435, 485, 241, 485, 485, 241, 485, 499, 241, 499,
1678 1836, 499, 241, 499, 849, 849, 849, 488, 1837, 1843,
1679 488, 1847, 1851, 500, 801, 435, 435, 500, 441, 442,
1680 443, 850, 1017, 1017, 1017, 1841, 444, 1867, 445, 1017,
1681 1017, 1017, 446, 1842, 1868, 447, 451, 452, 241, 452,
1682 451, 451, 451, 451, 451, 451, 451, 453, 451, 451,
1683 451, 1869, 451, 455, 451, 456, 451, 241, 241, 241,
1684 241, 241, 241, 499, 241, 499, 1870, 499, 241, 499,
1686 865, 865, 865, 487, 1871, 1848, 487, 1872, 1873, 500,
1687 1877, 451, 451, 500, 1883, 1018, 457, 866, 1037, 1037,
1688 1037, 1849, 458, 451, 452, 241, 452, 451, 451, 451,
1689 451, 451, 451, 451, 453, 451, 451, 451, 1884, 451,
1690 455, 451, 456, 451, 499, 241, 499, 499, 241, 499,
1691 511, 241, 511, 1885, 511, 241, 511, 882, 882, 882,
1692 501, 1673, 1890, 501, 1894, 1895, 512, 1674, 451, 451,
1693 512, 1675, 1896, 457, 883, 1676, 1037, 1037, 1037, 458,
1694 462, 463, 241, 463, 462, 462, 462, 462, 462, 462,
1695 462, 464, 462, 462, 462, 1898, 462, 466, 462, 467,
1697 462, 522, 241, 522, 522, 241, 522, 241, 241, 241,
1698 1902, 241, 241, 241, 522, 241, 522, 523, 1677, 1903,
1699 523, 1904, 1905, 487, 1678, 462, 462, 487, 1679, 468,
1700 523, 1906, 1680, 1049, 1049, 1049, 469, 1050, 470, 1018,
1701 1051, 1909, 1017, 1017, 1017, 471, 462, 463, 241, 463,
1702 462, 462, 462, 462, 462, 462, 462, 464, 462, 462,
1703 462, 1916, 462, 466, 462, 467, 462, 522, 241, 522,
1704 522, 241, 522, 522, 241, 522, 1918, 535, 241, 535,
1705 535, 241, 535, 523, 1928, 1929, 524, 1930, 1932, 524,
1706 1938, 462, 462, 536, 1848, 468, 536, 1466, 1944, 1059,
1708 1059, 1059, 469, 1060, 470, 1090, 1061, 1037, 1037, 1037,
1709 1804, 471, 476, 477, 241, 477, 476, 476, 476, 476,
1710 476, 476, 476, 478, 476, 476, 476, 1945, 476, 480,
1711 476, 481, 476, 241, 241, 241, 241, 241, 241, 535,
1712 241, 535, 1937, 535, 241, 535, 535, 241, 535, 487,
1713 1000, 1803, 487, 1946, 1949, 536, 1935, 476, 476, 536,
1714 1950, 1951, 537, 482, 1082, 1082, 1082, 1849, 1083, 1955,
1715 1090, 1084, 1478, 1478, 1478, 1959, 1961, 483, 476, 477,
1716 241, 477, 476, 476, 476, 476, 476, 476, 476, 478,
1717 476, 476, 476, 1962, 476, 480, 476, 481, 476, 535,
1719 241, 535, 549, 241, 549, 549, 241, 549, 1963, 241,
1720 241, 241, 241, 241, 241, 537, 1967, 1973, 550, 1974,
1721 1975, 550, 1976, 476, 476, 551, 1977, 1978, 551, 482,
1722 1101, 1101, 1101, 1979, 1102, 1980, 1981, 1103, 1982, 1480,
1723 1480, 1480, 1988, 483, 489, 490, 241, 490, 489, 489,
1724 489, 489, 489, 489, 489, 491, 489, 489, 489, 1989,
1725 489, 493, 489, 494, 489, 549, 241, 549, 549, 241,
1726 549, 549, 241, 549, 1466, 549, 241, 549, 561, 241,
1727 561, 550, 2001, 2002, 550, 1481, 2007, 552, 2003, 489,
1728 489, 552, 2008, 2009, 562, 495, 2004, 2010, 496, 1111,
1730 1111, 1111, 2014, 1112, 2015, 1936, 1113, 2016, 2018, 497,
1731 489, 490, 241, 490, 489, 489, 489, 489, 489, 489,
1732 489, 491, 489, 489, 489, 2019, 489, 493, 489, 494,
1733 489, 561, 241, 561, 571, 241, 571, 571, 241, 571,
1734 2005, 241, 241, 241, 241, 241, 241, 562, 2006, 2020,
1735 572, 2021, 2024, 572, 2028, 489, 489, 317, 2029, 2034,
1736 317, 495, 2030, 2032, 496, 1119, 1119, 1119, 2035, 1120,
1737 2031, 2033, 1121, 2036, 2037, 497, 502, 503, 241, 503,
1738 502, 502, 502, 502, 502, 502, 502, 504, 502, 502,
1739 502, 2039, 502, 506, 502, 507, 502, 571, 241, 571,
1741 571, 241, 571, 571, 241, 571, 2048, 571, 241, 571,
1742 583, 241, 583, 572, 2058, 1466, 572, 1466, 2059, 573,
1743 661, 502, 502, 573, 2063, 2064, 584, 508, 2065, 2068,
1744 662, 2072, 509, 502, 503, 241, 503, 502, 502, 502,
1745 502, 502, 502, 502, 504, 502, 502, 502, 2073, 502,
1746 506, 502, 507, 502, 583, 241, 583, 2053, 663, 889,
1747 889, 889, 2074, 2054, 664, 2075, 2076, 665, 2077, 2078,
1748 584, 2079, 2080, 666, 667, 661, 890, 2081, 502, 502,
1749 1484, 1484, 1484, 2083, 508, 668, 1487, 1487, 1487, 509,
1750 513, 514, 241, 514, 513, 513, 513, 513, 513, 513,
1752 513, 515, 513, 513, 513, 2084, 513, 517, 513, 518,
1753 513, 2085, 2090, 669, 894, 894, 894, 906, 906, 906,
1754 916, 916, 916, 919, 919, 919, 622, 934, 934, 934,
1755 616, 895, 2091, 2092, 907, 513, 513, 917, 2093, 2094,
1756 920, 519, 2095, 2096, 935, 1136, 1136, 1136, 2098, 1137,
1757 2099, 2102, 1138, 2103, 2106, 520, 513, 514, 241, 514,
1758 513, 513, 513, 513, 513, 513, 513, 515, 513, 513,
1759 513, 2107, 513, 517, 513, 518, 513, 942, 942, 942,
1760 947, 947, 947, 967, 967, 967, 990, 990, 990, 994,
1761 994, 994, 2108, 2109, 943, 2113, 2114, 948, 2115, 2116,
1763 968, 513, 513, 991, 2117, 2118, 995, 519, 1151, 1151,
1764 1151, 2119, 1152, 2120, 2122, 1153, 1496, 1496, 1496, 2145,
1765 2146, 520, 525, 526, 241, 526, 525, 525, 525, 525,
1766 525, 525, 525, 527, 525, 525, 525, 2147, 525, 529,
1767 525, 530, 525, 1013, 1013, 1013, 1013, 1013, 1013, 1466,
1768 1466, 1044, 1044, 1044, 1044, 1044, 1044, 841, 841, 841,
1769 2148, 1015, 2149, 2150, 1015, 2155, 2156, 525, 525, 1046,
1770 2157, 2158, 1046, 531, 842, 2159, 532, 1155, 1155, 1155,
1771 2160, 1156, 2141, 2161, 1157, 2162, 2142, 533, 525, 526,
1772 241, 526, 525, 525, 525, 525, 525, 525, 525, 527,
1774 525, 525, 525, 1016, 525, 529, 525, 530, 525, 1054,
1775 1054, 1054, 2163, 1047, 1054, 1054, 1054, 2164, 849, 849,
1776 849, 1062, 1062, 1062, 1065, 1065, 1065, 1056, 1070, 1070,
1777 1070, 2166, 1056, 525, 525, 850, 2167, 2168, 1063, 531,
1778 2172, 1066, 532, 1175, 1175, 1175, 1072, 1176, 2173, 2174,
1779 1177, 2175, 2178, 533, 538, 539, 241, 539, 538, 538,
1780 538, 538, 538, 538, 538, 540, 538, 538, 538, 2179,
1781 538, 542, 538, 543, 538, 2183, 2186, 1057, 1078, 1078,
1782 1078, 2187, 2190, 1078, 1078, 1078, 2194, 2195, 1070, 1070,
1783 1070, 865, 865, 865, 2196, 2197, 1080, 2198, 2201, 538,
1785 538, 1080, 1519, 1519, 1519, 2202, 1072, 544, 866, 545,
1786 2220, 546, 1530, 1530, 1530, 1478, 1478, 1478, 1466, 547,
1787 538, 539, 241, 539, 538, 538, 538, 538, 538, 538,
1788 538, 540, 538, 538, 538, 1073, 538, 542, 538, 543,
1789 538, 1086, 1086, 1086, 2221, 2222, 1081, 882, 882, 882,
1790 1106, 1106, 1106, 1106, 1106, 1106, 1115, 1115, 1115, 1088,
1791 2219, 889, 889, 889, 883, 538, 538, 2223, 1108, 2224,
1792 2234, 1108, 2235, 544, 1117, 545, 2236, 546, 890, 1480,
1793 1480, 1480, 1647, 1647, 1647, 547, 553, 554, 241, 554,
1794 553, 553, 553, 553, 553, 553, 553, 555, 553, 553,
1796 553, 2237, 553, 557, 553, 558, 553, 1086, 1086, 1086,
1797 2238, 1115, 1115, 1115, 1000, 1123, 1123, 1123, 1109, 894,
1798 894, 894, 1123, 1123, 1123, 1088, 906, 906, 906, 1117,
1799 2239, 553, 553, 1125, 2240, 2241, 895, 1531, 1531, 1531,
1800 1125, 2242, 2243, 907, 1089, 1187, 1187, 1187, 2245, 1188,
1801 2246, 2247, 1189, 2217, 559, 553, 554, 241, 554, 553,
1802 553, 553, 553, 553, 553, 553, 555, 553, 553, 553,
1803 1466, 553, 557, 553, 558, 553, 1118, 1129, 1129, 1129,
1804 2249, 2255, 1126, 1481, 1129, 1129, 1129, 1141, 1141, 1141,
1805 1141, 1141, 1141, 2227, 2256, 1131, 916, 916, 916, 2257,
1807 553, 553, 1131, 2228, 2261, 1143, 2229, 2218, 1143, 2269,
1808 1195, 1195, 1195, 917, 1196, 2270, 2271, 1197, 1480, 1480,
1809 1480, 2293, 2295, 559, 563, 564, 241, 564, 563, 563,
1810 563, 563, 563, 563, 563, 565, 563, 563, 563, 2296,
1811 563, 567, 563, 568, 563, 919, 919, 919, 1132, 2297,
1812 1144, 1158, 1158, 1158, 1167, 1167, 1167, 1167, 1167, 1167,
1813 2301, 2230, 920, 2279, 1607, 1484, 1484, 1484, 1159, 563,
1814 563, 2231, 1169, 2280, 2232, 1169, 1487, 1487, 1487, 2281,
1815 569, 563, 564, 241, 564, 563, 563, 563, 563, 563,
1816 563, 563, 565, 563, 563, 563, 2302, 563, 567, 563,
1818 568, 563, 934, 934, 934, 1178, 1178, 1178, 2303, 2305,
1819 1182, 1182, 1182, 2306, 1170, 1182, 1182, 1182, 2310, 935,
1820 2311, 2304, 1179, 1496, 1496, 1496, 563, 563, 1184, 1652,
1821 1652, 1652, 2312, 1184, 1519, 1519, 1519, 569, 574, 575,
1822 241, 575, 574, 574, 574, 574, 574, 574, 574, 576,
1823 574, 574, 574, 1000, 574, 578, 574, 579, 574, 942,
1824 942, 942, 1190, 1190, 1190, 2282, 1185, 2313, 1190, 1190,
1825 1190, 947, 947, 947, 2307, 2283, 943, 1201, 1201, 1201,
1826 1192, 2284, 2290, 574, 574, 2314, 1192, 2308, 948, 1227,
1827 1227, 1227, 1653, 1228, 580, 1203, 1229, 1266, 1266, 1266,
1829 2315, 1267, 2316, 2317, 1268, 1466, 581, 574, 575, 241,
1830 575, 574, 574, 574, 574, 574, 574, 574, 576, 574,
1831 574, 574, 2319, 574, 578, 574, 579, 574, 1193, 1201,
1832 1201, 1201, 1205, 1205, 1205, 2321, 1466, 1207, 1207, 1207,
1833 2808, 2808, 2808, 1210, 1210, 1210, 2291, 1203, 2329, 1206,
1834 2330, 2331, 574, 574, 1208, 2332, 2339, 2808, 1530, 1530,
1835 1530, 1212, 2342, 580, 1210, 1210, 1210, 2349, 1215, 1215,
1836 1215, 1219, 1219, 1219, 2350, 581, 589, 2292, 2351, 2808,
1837 2808, 2808, 1212, 604, 1204, 1216, 2352, 2353, 1220, 2808,
1838 2808, 2808, 588, 605, 2354, 1000, 2808, 2361, 1209, 1222,
1840 1222, 1222, 967, 967, 967, 2363, 2808, 1222, 1222, 1222,
1841 1531, 1531, 1531, 2364, 1230, 1230, 1230, 1224, 2365, 968,
1842 606, 607, 608, 2366, 1213, 1224, 2367, 609, 610, 1217,
1843 611, 612, 1232, 2368, 613, 2369, 614, 615, 616, 1230,
1844 1230, 1230, 2357, 1218, 1225, 2370, 2371, 1221, 1234, 1234,
1845 1234, 1236, 1236, 1236, 1238, 1238, 1238, 1232, 1238, 1238,
1846 1238, 1242, 1242, 1242, 1466, 1235, 2372, 2375, 1237, 2808,
1847 2808, 2808, 1240, 1246, 1246, 1246, 1240, 2376, 1243, 1248,
1848 1248, 1248, 1248, 1248, 1248, 2377, 2808, 1256, 1256, 1256,
1849 1247, 1256, 1256, 1256, 1233, 2378, 2379, 1250, 2380, 2358,
1851 1250, 2381, 1262, 1262, 1262, 1258, 1262, 1262, 1262, 1258,
1852 990, 990, 990, 1269, 1269, 1269, 1269, 1269, 1269, 1244,
1853 1264, 994, 994, 994, 1264, 2382, 2384, 991, 1241, 2390,
1854 2391, 1271, 2392, 1245, 1271, 1273, 1273, 1273, 995, 1274,
1855 2393, 2394, 1275, 1277, 1277, 1277, 1277, 1277, 1277, 1013,
1856 1013, 1013, 1251, 2395, 1259, 1013, 1013, 1013, 1315, 1315,
1857 1315, 1279, 2399, 2408, 1279, 2409, 2410, 1015, 2411, 1265,
1858 1013, 1013, 1013, 1015, 2412, 1316, 1272, 1044, 1044, 1044,
1859 1044, 1044, 1044, 1044, 1044, 1044, 2413, 2400, 1015, 1318,
1860 1318, 1318, 1049, 1049, 1049, 1046, 1050, 2401, 1046, 1051,
1862 2426, 1046, 2808, 2808, 2808, 2427, 1319, 2428, 2402, 1280,
1863 1054, 1054, 1054, 1054, 1054, 1054, 2404, 1289, 2403, 2808,
1864 1054, 1054, 1054, 1059, 1059, 1059, 2405, 1060, 1056, 1000,
1865 1061, 1056, 1317, 1062, 1062, 1062, 2429, 2430, 1056, 1324,
1866 1324, 1324, 2431, 1325, 2432, 2433, 1326, 1327, 1327, 1327,
1867 1063, 1065, 1065, 1065, 1329, 1329, 1329, 2437, 1330, 2438,
1868 2439, 1331, 1320, 2417, 1328, 2440, 2441, 1322, 1066, 1333,
1869 1333, 1333, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070,
1870 1070, 1339, 1339, 1339, 2406, 2442, 1334, 1078, 1078, 1078,
1871 1072, 2447, 2448, 1072, 2407, 2449, 1072, 2452, 1340, 1078,
1873 1078, 1078, 1078, 1078, 1078, 1080, 1082, 1082, 1082, 2457,
1874 1083, 2458, 2459, 1084, 1086, 1086, 1086, 1080, 2460, 2461,
1875 1080, 1086, 1086, 1086, 1344, 1344, 1344, 1101, 1101, 1101,
1876 2462, 1102, 1088, 2463, 1103, 2464, 2465, 1336, 2466, 1088,
1877 2467, 2468, 1345, 1358, 1358, 1358, 1106, 1106, 1106, 1342,
1878 1106, 1106, 1106, 1106, 1106, 1106, 1115, 1115, 1115, 2476,
1879 1359, 1115, 1115, 1115, 1108, 1111, 1111, 1111, 1108, 1112,
1880 2477, 1108, 1113, 2478, 1117, 1115, 1115, 1115, 2479, 1117,
1881 1119, 1119, 1119, 1000, 1120, 2480, 2481, 1121, 1364, 1364,
1882 1364, 2482, 2483, 1117, 1123, 1123, 1123, 1123, 1123, 1123,
1884 1123, 1123, 1123, 2484, 2485, 1365, 1367, 1367, 1367, 2808,
1885 2808, 2808, 1125, 1360, 2486, 1125, 2487, 2488, 1125, 2489,
1886 1129, 1129, 1129, 1368, 2492, 2470, 2808, 1129, 1129, 1129,
1887 1129, 1129, 1129, 2493, 2494, 1363, 2498, 1369, 1131, 1373,
1888 1373, 1373, 1136, 1136, 1136, 1131, 1137, 2505, 1131, 1138,
1889 1141, 1141, 1141, 1141, 1141, 1141, 1374, 1141, 1141, 1141,
1890 1151, 1151, 1151, 2506, 1152, 2507, 1366, 1153, 1143, 2508,
1891 2509, 1143, 1384, 1384, 1384, 1143, 1155, 1155, 1155, 2510,
1892 1156, 2511, 2512, 1157, 1158, 1158, 1158, 2513, 2514, 1385,
1893 1386, 1386, 1386, 2515, 1387, 1370, 2516, 1388, 1167, 1167,
1895 1167, 1159, 1167, 1167, 1167, 1167, 1167, 1167, 1175, 1175,
1896 1175, 2521, 1176, 1000, 2526, 1177, 1169, 1178, 1178, 1178,
1897 1169, 1377, 2524, 1169, 1401, 1401, 1401, 2527, 1402, 2528,
1898 2529, 1403, 2530, 2521, 1179, 1182, 1182, 1182, 1182, 1182,
1899 1182, 1182, 1182, 1182, 1187, 1187, 1187, 2522, 1188, 2531,
1900 2532, 1189, 2533, 1184, 2534, 2535, 1184, 2536, 2519, 1184,
1901 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 2541,
1902 2537, 1396, 1195, 1195, 1195, 2546, 1196, 2547, 1192, 1197,
1903 2548, 1192, 2538, 2549, 1192, 1201, 1201, 1201, 1201, 1201,
1904 1201, 2552, 1406, 1201, 1201, 1201, 1205, 1205, 1205, 2552,
1906 1414, 1414, 1414, 1203, 1415, 2539, 1203, 1416, 1207, 1207,
1907 1207, 1203, 2555, 1206, 1417, 1417, 1417, 2540, 1418, 1000,
1908 2556, 1419, 1210, 1210, 1210, 1208, 1210, 1210, 1210, 1210,
1909 1210, 1210, 1408, 1215, 1215, 1215, 1219, 1219, 1219, 2542,
1910 1212, 1423, 1423, 1423, 1212, 1424, 2521, 1212, 1425, 2557,
1911 1216, 2543, 1413, 1220, 1428, 1428, 1428, 2558, 1429, 2550,
1912 2522, 1430, 1222, 1222, 1222, 1222, 1222, 1222, 1222, 1222,
1913 1222, 1227, 1227, 1227, 2521, 1228, 1466, 1467, 1229, 2567,
1914 1224, 2544, 2570, 1224, 2575, 2524, 1224, 1230, 1230, 1230,
1915 1230, 1230, 1230, 2545, 2565, 1421, 1230, 1230, 1230, 1234,
1917 1234, 1234, 1435, 1435, 1435, 1232, 1436, 2568, 1232, 1437,
1918 1236, 1236, 1236, 2566, 1232, 2578, 1235, 1438, 1438, 1438,
1919 2552, 1439, 2580, 2552, 1440, 2581, 2569, 1237, 1238, 1238,
1920 1238, 1432, 1238, 1238, 1238, 1238, 1238, 1238, 2573, 1242,
1921 1242, 1242, 1246, 1246, 1246, 2582, 1240, 1442, 1442, 1442,
1922 1240, 1443, 2583, 1240, 1444, 1434, 1243, 2574, 2584, 1247,
1923 1447, 1447, 1447, 2594, 1448, 2595, 2596, 1449, 1248, 1248,
1924 1248, 1248, 1248, 1248, 1248, 1248, 1248, 1452, 1452, 1452,
1925 1256, 1256, 1256, 1256, 1256, 1256, 1250, 2597, 2598, 1250,
1926 2599, 2603, 1250, 2604, 1453, 2605, 1441, 2606, 1258, 2607,
1928 2576, 1258, 1256, 1256, 1256, 1262, 1262, 1262, 1262, 1262,
1929 1262, 1262, 1262, 1262, 1266, 1266, 1266, 2608, 1267, 2577,
1930 1258, 1268, 2610, 1264, 2611, 2612, 1264, 2617, 2618, 1264,
1931 1269, 1269, 1269, 2613, 2619, 1450, 1269, 1269, 1269, 1269,
1932 1269, 1269, 1273, 1273, 1273, 2614, 1274, 2620, 1271, 1275,
1933 1277, 1277, 1277, 2621, 1271, 2622, 2623, 1271, 1277, 1277,
1934 1277, 2624, 1456, 2615, 1459, 1277, 1277, 1277, 1279, 1465,
1935 1465, 1465, 1013, 1013, 1013, 2616, 1279, 1315, 1315, 1315,
1936 1717, 1717, 1717, 1279, 1318, 1318, 1318, 1466, 1467, 2625,
1937 1015, 1044, 1044, 1044, 1316, 1499, 1499, 1499, 1460, 1500,
1939 2626, 1319, 1501, 1503, 1503, 1503, 2627, 1504, 2628, 1046,
1940 1505, 1054, 1054, 1054, 1324, 1324, 1324, 2630, 1325, 2631,
1941 2632, 1326, 1327, 1327, 1327, 1462, 1510, 1510, 1510, 1056,
1942 1511, 2633, 2634, 1512, 1329, 1329, 1329, 1472, 1330, 1328,
1943 2635, 1331, 1333, 1333, 1333, 1514, 1514, 1514, 1502, 1515,
1944 2636, 2637, 1516, 1070, 1070, 1070, 1339, 1339, 1339, 1334,
1945 1508, 1521, 1521, 1521, 2638, 1522, 2639, 2640, 1523, 2641,
1946 2642, 1072, 1000, 1340, 1524, 1524, 1524, 1078, 1078, 1078,
1947 1344, 1344, 1344, 1539, 1539, 1539, 2643, 1358, 1358, 1358,
1948 2644, 1525, 1541, 1541, 1541, 1080, 1542, 2629, 1345, 1543,
1950 1540, 2645, 2646, 1518, 1359, 1106, 1106, 1106, 2647, 1115,
1951 1115, 1115, 1364, 1364, 1364, 1548, 1548, 1548, 2649, 1549,
1952 1000, 2650, 1550, 1108, 2651, 2652, 1526, 1117, 2653, 1365,
1953 1123, 1123, 1123, 1367, 1367, 1367, 1552, 1552, 1552, 2648,
1954 1553, 2654, 2655, 1554, 1129, 1129, 1129, 2656, 1125, 2657,
1955 1368, 2658, 1373, 1373, 1373, 2659, 1559, 1559, 1559, 2660,
1956 1560, 2661, 1131, 1561, 1562, 1562, 1562, 2662, 1544, 1374,
1957 2663, 2664, 1547, 1564, 1564, 1564, 1141, 1141, 1141, 2666,
1958 1000, 1563, 1571, 1571, 1571, 1384, 1384, 1384, 2667, 1551,
1959 1565, 1575, 1575, 1575, 1143, 1576, 2668, 2669, 1577, 1572,
1961 2665, 2670, 1385, 2671, 1556, 1386, 1386, 1386, 2672, 1387,
1962 2673, 2674, 1388, 1578, 1578, 1578, 1167, 1167, 1167, 1566,
1963 1588, 1588, 1588, 2675, 1401, 1401, 1401, 2676, 1402, 2677,
1964 1579, 1403, 2678, 2679, 1169, 2680, 2681, 1589, 1592, 1592,
1965 1592, 1567, 1182, 1182, 1182, 1190, 1190, 1190, 1601, 1601,
1966 1601, 1201, 1201, 1201, 2683, 1593, 1000, 1414, 1414, 1414,
1967 1184, 1415, 2682, 1192, 1416, 1602, 1417, 1417, 1417, 1203,
1968 1418, 2684, 2685, 1419, 1210, 1210, 1210, 1423, 1423, 1423,
1969 1586, 1424, 2686, 2687, 1425, 2688, 1428, 1428, 1428, 2689,
1970 1429, 2690, 1212, 1430, 1603, 1222, 1222, 1222, 1230, 1230,
1972 1230, 2691, 1435, 1435, 1435, 1595, 1436, 1604, 2692, 1437,
1973 1597, 2693, 2694, 1224, 2696, 2697, 1232, 1438, 1438, 1438,
1974 1000, 1439, 2698, 2699, 1440, 1238, 1238, 1238, 1442, 1442,
1975 1442, 2700, 1443, 2701, 2695, 1444, 1452, 1452, 1452, 1606,
1976 1447, 1447, 1447, 1240, 1448, 2702, 2703, 1449, 1248, 1248,
1977 1248, 2705, 2706, 1453, 1613, 1611, 1619, 1619, 1619, 2707,
1978 1620, 2708, 2709, 1621, 2710, 2711, 1250, 1256, 1256, 1256,
1979 2712, 2715, 1614, 1626, 1626, 1626, 1262, 1262, 1262, 1269,
1980 1269, 1269, 1630, 1630, 1630, 1258, 1277, 1277, 1277, 2716,
1981 1627, 1013, 1013, 1013, 1264, 1617, 2717, 1271, 2718, 1631,
1983 1465, 1465, 1465, 2719, 1279, 2720, 1655, 1655, 1655, 1015,
1984 1662, 1662, 1662, 1499, 1499, 1499, 1624, 1500, 1466, 1000,
1985 1501, 1044, 1044, 1044, 1000, 1503, 1503, 1503, 1000, 1504,
1986 1638, 1629, 1505, 1000, 1000, 1054, 1054, 1054, 1000, 1046,
1987 1000, 1000, 1628, 1639, 1070, 1070, 1070, 1632, 1524, 1524,
1988 1524, 1634, 1656, 1056, 1000, 2721, 1663, 1510, 1510, 1510,
1989 2722, 1511, 1072, 2741, 1512, 1525, 2731, 1635, 1514, 1514,
1990 1514, 1000, 1515, 1000, 1000, 1516, 1521, 1521, 1521, 2735,
1991 1522, 2723, 2755, 1523, 2727, 2724, 1667, 1664, 1681, 1681,
1992 1681, 2737, 1682, 1637, 2732, 1683, 1078, 1078, 1078, 1688,
1994 1688, 1688, 1000, 1000, 1671, 1688, 1688, 1688, 1652, 1652,
1995 1652, 1539, 1539, 1539, 1080, 1694, 1694, 1694, 2725, 1695,
1996 2726, 2733, 1696, 1541, 1541, 1541, 1000, 1542, 1540, 1000,
1997 1543, 1106, 1106, 1106, 1699, 1699, 1699, 1115, 1115, 1115,
1998 2729, 1548, 1548, 1548, 1000, 1549, 2728, 1684, 1550, 1108,
1999 1000, 1700, 1123, 1123, 1123, 1117, 1552, 1552, 1552, 2734,
2000 1553, 2742, 1689, 1554, 1703, 1703, 1703, 1000, 1653, 1000,
2001 1125, 1689, 1129, 1129, 1129, 1559, 1559, 1559, 1697, 1560,
2002 1000, 1704, 1561, 1636, 1701, 1562, 1562, 1562, 1000, 1000,
2003 1131, 1708, 1708, 1708, 1000, 1709, 2736, 1000, 1710, 1564,
2005 1564, 1564, 1563, 1711, 1711, 1711, 2738, 1712, 1000, 1000,
2006 1713, 1715, 1715, 1715, 2730, 1000, 1565, 1702, 1000, 1571,
2007 1571, 1571, 2756, 1720, 1720, 1720, 2745, 1721, 2739, 1716,
2008 1722, 1723, 1723, 1723, 2740, 1705, 1572, 1575, 1575, 1575,
2009 2747, 1576, 2743, 1000, 1577, 1578, 1578, 1578, 1724, 1726,
2010 1726, 1726, 2746, 1727, 2744, 1466, 1728, 1729, 1729, 1729,
2011 1625, 1000, 1579, 1735, 1735, 1735, 1167, 1167, 1167, 1588,
2012 1588, 1588, 2749, 1000, 1730, 1739, 1739, 1739, 2751, 1740,
2013 1736, 1000, 1741, 1000, 1169, 1000, 1589, 1742, 1742, 1742,
2014 1592, 1592, 1592, 1745, 1745, 1745, 2752, 1746, 1000, 1623,
2016 1747, 1749, 1749, 1749, 1743, 2748, 1000, 1593, 1190, 1190,
2017 1190, 1601, 1601, 1601, 1756, 1756, 1756, 2753, 1757, 1750,
2018 2750, 1758, 1760, 1760, 1760, 1000, 1192, 1000, 1602, 1000,
2019 2757, 1737, 1210, 1210, 1210, 1765, 1765, 1765, 1622, 2767,
2020 1761, 1767, 1767, 1767, 2808, 2808, 2808, 1222, 1222, 1222,
2021 1212, 2758, 1766, 1230, 1230, 1230, 2773, 2763, 1768, 1752,
2022 2759, 2808, 1238, 1238, 1238, 1224, 1000, 1774, 1774, 1774,
2023 2764, 1232, 1776, 1776, 1776, 1248, 1248, 1248, 1000, 1000,
2024 1240, 1000, 1618, 1763, 1775, 1256, 1256, 1256, 1000, 1777,
2025 1619, 1619, 1619, 1250, 1620, 1000, 1000, 1621, 1000, 1772,
2027 1626, 1626, 1626, 1258, 1784, 1784, 1784, 1769, 1785, 1000,
2028 1616, 1786, 2754, 1770, 1262, 1262, 1262, 1627, 2765, 1269,
2029 1269, 1269, 2777, 1630, 1630, 1630, 1773, 1789, 1789, 1789,
2030 2760, 1790, 1264, 2766, 1791, 2771, 1782, 1271, 2774, 1778,
2031 1631, 1792, 1792, 1792, 1798, 1798, 1798, 1013, 1013, 1013,
2032 1806, 1806, 1806, 1647, 1647, 1647, 1812, 1812, 1812, 1793,
2033 1000, 1799, 1652, 1652, 1652, 1015, 1813, 1813, 1813, 1655,
2034 1655, 1655, 1787, 1000, 1788, 1816, 1816, 1816, 1817, 1817,
2035 1817, 1662, 1662, 1662, 1044, 1044, 1044, 1825, 1825, 1825,
2036 2805, 1828, 1828, 1828, 1070, 1070, 1070, 1832, 1832, 1832,
2038 1000, 2768, 1046, 1615, 1000, 1826, 2761, 1800, 1829, 1681,
2039 1681, 1681, 1072, 1682, 1833, 1612, 1683, 1078, 1078, 1078,
2040 1845, 1845, 1845, 1688, 1688, 1688, 1850, 1850, 1850, 1852,
2041 1852, 1852, 1000, 2762, 1822, 1080, 2781, 1846, 1694, 1694,
2042 1694, 1000, 1695, 1000, 1000, 1696, 1853, 1106, 1106, 1106,
2043 2775, 1000, 1831, 1855, 1855, 1855, 1699, 1699, 1699, 1000,
2044 1857, 1857, 1857, 1844, 1858, 1108, 1000, 1859, 1610, 2772,
2045 1856, 1000, 1000, 1700, 1115, 1115, 1115, 1861, 1861, 1861,
2046 1703, 1703, 1703, 1863, 1863, 1863, 2769, 1864, 2770, 2776,
2047 1865, 1609, 1117, 1608, 1000, 1862, 2779, 1704, 1000, 1000,
2049 1854, 1129, 1129, 1129, 1708, 1708, 1708, 2789, 1709, 1000,
2050 2782, 1710, 2783, 1711, 1711, 1711, 2780, 1712, 1000, 1131,
2051 1713, 1715, 1715, 1715, 1717, 1717, 1717, 1860, 1720, 1720,
2052 1720, 2785, 1721, 2778, 1000, 1722, 1723, 1723, 1723, 1716,
2053 1874, 1874, 1874, 1000, 1875, 1000, 1000, 1876, 1866, 1605,
2054 1726, 1726, 1726, 1724, 1727, 2784, 1000, 1728, 1729, 1729,
2055 1729, 1878, 1878, 1878, 1000, 1879, 1600, 1599, 1880, 1881,
2056 1881, 1881, 1735, 1735, 1735, 1730, 1886, 1886, 1886, 2791,
2057 1887, 2790, 2786, 1888, 1000, 1598, 1882, 1000, 2792, 1736,
2058 1167, 1167, 1167, 1739, 1739, 1739, 2787, 1740, 1000, 1000,
2060 1741, 1742, 1742, 1742, 2788, 1891, 1891, 1891, 1169, 1892,
2061 1000, 1000, 1893, 1745, 1745, 1745, 2795, 1746, 1743, 2796,
2062 1747, 1749, 1749, 1749, 1190, 1190, 1190, 1899, 1899, 1899,
2063 1756, 1756, 1756, 1000, 1757, 2793, 2794, 1758, 1000, 1750,
2064 1000, 1889, 1192, 2799, 1900, 1760, 1760, 1760, 1907, 1907,
2065 1907, 1765, 1765, 1765, 1910, 1910, 1910, 2801, 1911, 1596,
2066 1594, 1912, 1591, 1761, 1590, 2800, 1908, 1587, 1766, 1767,
2067 1767, 1767, 2803, 1901, 1913, 1913, 1913, 1585, 1914, 1584,
2068 1583, 1915, 1222, 1222, 1222, 2802, 1768, 1897, 1230, 1230,
2069 1230, 1238, 1238, 1238, 1774, 1774, 1774, 1921, 1921, 1921,
2071 1224, 1922, 1582, 1581, 1923, 1580, 1232, 1000, 1574, 1240,
2072 1573, 1775, 1776, 1776, 1776, 1924, 1924, 1924, 1570, 1925,
2073 1569, 2797, 1926, 1248, 1248, 1248, 1256, 1256, 1256, 1777,
2074 1000, 1784, 1784, 1784, 2798, 1785, 1568, 1919, 1786, 2804,
2075 1558, 1250, 1557, 1000, 1258, 1555, 1546, 1917, 1262, 1262,
2076 1262, 1269, 1269, 1269, 2805, 1920, 1789, 1789, 1789, 1545,
2077 1790, 1538, 1537, 1791, 1536, 1000, 1264, 1535, 1534, 1271,
2078 1792, 1792, 1792, 1533, 1798, 1798, 1798, 1939, 1939, 1939,
2079 1532, 1940, 1529, 1528, 1941, 1527, 1520, 1927, 1793, 1517,
2080 1931, 1799, 1013, 1013, 1013, 1943, 1943, 1943, 1513, 1933,
2082 1947, 1947, 1947, 1509, 1934, 1806, 1806, 1806, 1507, 1506,
2083 1015, 1948, 1948, 1948, 1952, 1952, 1952, 1812, 1812, 1812,
2084 1813, 1813, 1813, 1953, 1953, 1953, 1816, 1816, 1816, 1817,
2085 1817, 1817, 1956, 1956, 1956, 1957, 1957, 1957, 1958, 1958,
2086 1958, 1044, 1044, 1044, 1825, 1825, 1825, 1828, 1828, 1828,
2087 1964, 1964, 1964, 1498, 1965, 1942, 1497, 1966, 1495, 1046,
2088 1494, 1493, 1826, 1492, 1829, 1968, 1968, 1968, 1491, 1954,
2089 1832, 1832, 1832, 1970, 1970, 1970, 1490, 1971, 1489, 1488,
2090 1972, 1486, 1485, 1969, 1078, 1078, 1078, 1833, 1845, 1845,
2091 1845, 1483, 1960, 1984, 1984, 1984, 1482, 1985, 1479, 1477,
2093 1986, 1476, 1080, 1475, 1474, 1846, 1987, 1987, 1987, 1850,
2094 1850, 1850, 1990, 1990, 1990, 1852, 1852, 1852, 1992, 1992,
2095 1992, 1473, 1993, 1471, 1470, 1994, 1106, 1106, 1106, 1855,
2096 1855, 1855, 1853, 1983, 1996, 1996, 1996, 1469, 1997, 1468,
2097 1461, 1998, 1458, 1457, 1108, 1455, 1856, 1857, 1857, 1857,
2098 1454, 1858, 1451, 1446, 1859, 1115, 1115, 1115, 1991, 1445,
2099 1861, 1861, 1861, 1863, 1863, 1863, 1433, 1864, 1431, 1427,
2100 1865, 1426, 1422, 1117, 1129, 1129, 1129, 1995, 1862, 1874,
2101 1874, 1874, 1420, 1875, 1412, 1411, 1876, 1878, 1878, 1878,
2102 1410, 1879, 1131, 1409, 1880, 1881, 1881, 1881, 2011, 2011,
2104 2011, 1407, 2012, 1405, 1404, 2013, 1999, 1886, 1886, 1886,
2105 1400, 1887, 1882, 1399, 1888, 1167, 1167, 1167, 1891, 1891,
2106 1891, 1398, 1892, 1397, 1395, 1893, 1394, 2000, 2022, 2022,
2107 2022, 1393, 1392, 1169, 1899, 1899, 1899, 2025, 2025, 2025,
2108 1391, 2026, 1390, 1389, 2027, 1383, 2023, 1907, 1907, 1907,
2109 1382, 1900, 1910, 1910, 1910, 1381, 1911, 1380, 1379, 1912,
2110 1913, 1913, 1913, 1378, 1914, 1908, 1376, 1915, 1222, 1222,
2111 1222, 1230, 1230, 1230, 1238, 1238, 1238, 1375, 2017, 1372,
2112 1921, 1921, 1921, 1371, 1922, 1362, 1224, 1923, 1361, 1232,
2113 1357, 1356, 1240, 1924, 1924, 1924, 1355, 1925, 1354, 1353,
2115 1926, 1352, 1248, 1248, 1248, 1351, 2043, 2043, 2043, 1350,
2116 2041, 2808, 2808, 2808, 2808, 2808, 2808, 1349, 1348, 2038,
2117 1250, 1347, 2042, 2044, 1256, 1256, 1256, 1346, 2808, 1343,
2118 1341, 2808, 1262, 1262, 1262, 1338, 2040, 2050, 2050, 2050,
2119 1335, 1332, 1258, 2052, 2052, 2052, 2055, 2055, 2055, 1323,
2120 1264, 1321, 1939, 1939, 1939, 2051, 1940, 1314, 1312, 1941,
2121 1311, 1000, 2045, 1013, 1013, 1013, 1943, 1943, 1943, 2057,
2122 2057, 2057, 2046, 1947, 1947, 1947, 1948, 1948, 1948, 1310,
2123 1309, 1015, 2060, 2060, 2060, 2061, 2061, 2061, 2047, 1308,
2124 1307, 2049, 2062, 2062, 2062, 1952, 1952, 1952, 1953, 1953,
2126 1953, 1956, 1956, 1956, 1957, 1957, 1957, 1958, 1958, 1958,
2127 2066, 2066, 2066, 2069, 2069, 2069, 1964, 1964, 1964, 1306,
2128 1965, 2056, 1305, 1966, 2808, 2808, 2808, 1304, 2067, 1301,
2129 2070, 1968, 1968, 1968, 1300, 1970, 1970, 1970, 1299, 1971,
2130 1298, 2808, 1972, 1078, 1078, 1078, 1984, 1984, 1984, 1969,
2131 1985, 1297, 1296, 1986, 1987, 1987, 1987, 1990, 1990, 1990,
2132 1295, 1080, 1992, 1992, 1992, 1294, 1993, 1293, 1292, 1994,
2133 1106, 1106, 1106, 1996, 1996, 1996, 1291, 1997, 1290, 1288,
2134 1998, 2087, 2087, 2087, 1129, 1129, 1129, 1287, 1108, 2071,
2135 2097, 2097, 2097, 2011, 2011, 2011, 1286, 2012, 1285, 2088,
2137 2013, 1284, 1131, 2082, 2100, 2100, 2100, 2104, 2104, 2104,
2138 2022, 2022, 2022, 2110, 2110, 2110, 2086, 2121, 2121, 2121,
2139 1283, 2101, 2025, 2025, 2025, 2105, 2026, 1282, 2023, 2027,
2140 2111, 2123, 2123, 2123, 1000, 2089, 2125, 2125, 2125, 1230,
2141 1230, 1230, 1238, 1238, 1238, 1248, 1248, 1248, 1276, 2124,
2142 2043, 2043, 2043, 2126, 2130, 2130, 2130, 1232, 2131, 2112,
2143 1240, 2132, 1261, 1250, 2133, 2133, 2133, 2044, 2808, 2808,
2144 2808, 2136, 2136, 2136, 2138, 2138, 2138, 1262, 1262, 1262,
2145 1260, 2134, 2129, 1255, 1254, 2808, 2050, 2050, 2050, 2137,
2146 2052, 2052, 2052, 1253, 1252, 1264, 1226, 1214, 2127, 2055,
2148 2055, 2055, 2128, 1200, 2051, 2143, 2143, 2143, 1000, 2057,
2149 2057, 2057, 2060, 2060, 2060, 2061, 2061, 2061, 1199, 2135,
2150 2062, 2062, 2062, 2144, 1198, 2066, 2066, 2066, 2069, 2069,
2151 2069, 2151, 2151, 2151, 1194, 2152, 1186, 1181, 2153, 2808,
2152 2808, 2808, 2139, 2067, 1180, 2070, 1078, 1078, 1078, 1174,
2153 1171, 2140, 1106, 1106, 1106, 1166, 2808, 2087, 2087, 2087,
2154 2170, 2170, 2170, 1165, 1080, 2176, 2176, 2176, 1164, 1163,
2155 1108, 2097, 2097, 2097, 1162, 2088, 1161, 1160, 2171, 2100,
2156 2100, 2100, 2177, 2180, 2180, 2180, 1154, 2181, 1147, 1146,
2157 2182, 2184, 2184, 2184, 2154, 1145, 2101, 2104, 2104, 2104,
2159 1140, 2188, 2188, 2188, 1139, 2165, 1135, 1134, 2185, 2110,
2160 2110, 2110, 2191, 2191, 2191, 2105, 2192, 2169, 2189, 2193,
2161 2199, 2199, 2199, 2121, 2121, 2121, 2111, 2123, 2123, 2123,
2162 2125, 2125, 2125, 1133, 2203, 2203, 2203, 2200, 2204, 1128,
2163 1127, 2205, 2206, 2206, 2206, 2124, 1122, 2126, 1238, 1238,
2164 1238, 1114, 1248, 1248, 1248, 2130, 2130, 2130, 1110, 2131,
2165 2207, 1105, 2132, 2133, 2133, 2133, 1240, 2210, 2210, 2210,
2166 1250, 2211, 1104, 1100, 2212, 2213, 2213, 2213, 1099, 1098,
2167 2134, 2136, 2136, 2136, 2138, 2138, 2138, 2215, 2215, 2215,
2168 1097, 1096, 2214, 2143, 2143, 2143, 2225, 2225, 2225, 2137,
2170 2151, 2151, 2151, 1095, 2152, 2216, 1094, 2153, 2808, 2808,
2171 2808, 2144, 1093, 2226, 2208, 2209, 1078, 1078, 1078, 1106,
2172 1106, 1106, 2170, 2170, 2170, 2808, 2250, 2250, 2250, 2176,
2173 2176, 2176, 1092, 1091, 1080, 1085, 1077, 1108, 1076, 1075,
2174 2171, 1074, 1069, 2251, 1068, 1067, 2177, 2252, 2252, 2252,
2175 1064, 2253, 1058, 1053, 2254, 2180, 2180, 2180, 1052, 2181,
2176 1048, 1043, 2182, 2184, 2184, 2184, 1042, 1041, 2233, 2258,
2177 2258, 2258, 1040, 2259, 1039, 2244, 2260, 2262, 2262, 2262,
2178 2185, 2188, 2188, 2188, 2264, 2264, 2264, 1038, 2265, 2248,
2179 1036, 2266, 1035, 1034, 2263, 2267, 2267, 2267, 2189, 2191,
2181 2191, 2191, 1033, 2192, 1032, 1031, 2193, 2199, 2199, 2199,
2182 1030, 1029, 2268, 2272, 2272, 2272, 1028, 2273, 1027, 1026,
2183 2274, 2275, 2275, 2275, 2200, 2277, 2277, 2277, 2203, 2203,
2184 2203, 1025, 2204, 1024, 1023, 2205, 1022, 1021, 2276, 2206,
2185 2206, 2206, 2278, 1238, 1238, 1238, 1248, 1248, 1248, 2210,
2186 2210, 2210, 1020, 2211, 1019, 1012, 2212, 2207, 2213, 2213,
2187 2213, 1240, 1011, 1010, 1250, 2287, 2287, 2287, 1009, 2288,
2188 1008, 1007, 2289, 1006, 1003, 2214, 2215, 2215, 2215, 2294,
2189 2294, 2294, 2225, 2225, 2225, 2298, 2298, 2298, 1001, 2299,
2190 1000, 998, 2300, 996, 2216, 2808, 2808, 2808, 993, 2226,
2192 1078, 1078, 1078, 2320, 2320, 2320, 2286, 989, 2285, 1106,
2193 1106, 1106, 2808, 2323, 2323, 2323, 987, 986, 1080, 2250,
2194 2250, 2250, 2326, 2326, 2326, 985, 2327, 1108, 983, 2328,
2195 2324, 2252, 2252, 2252, 982, 2253, 2251, 981, 2254, 2258,
2196 2258, 2258, 980, 2259, 979, 977, 2260, 2262, 2262, 2262,
2197 976, 2318, 975, 974, 2309, 972, 2333, 2333, 2333, 2325,
2198 2334, 971, 970, 2335, 2263, 2264, 2264, 2264, 966, 2265,
2199 2322, 965, 2266, 2267, 2267, 2267, 2336, 2336, 2336, 963,
2200 2337, 962, 961, 2338, 2340, 2340, 2340, 2272, 2272, 2272,
2201 2268, 2273, 960, 959, 2274, 2275, 2275, 2275, 2343, 2343,
2203 2343, 2341, 2344, 958, 956, 2345, 2277, 2277, 2277, 2346,
2204 2346, 2346, 2276, 2347, 955, 954, 2348, 1238, 1238, 1238,
2205 1248, 1248, 1248, 2278, 2287, 2287, 2287, 953, 2288, 951,
2206 950, 2289, 2359, 2359, 2359, 1240, 949, 946, 1250, 2294,
2207 2294, 2294, 2362, 2362, 2362, 2373, 2373, 2373, 945, 2360,
2208 1466, 2298, 2298, 2298, 941, 2299, 940, 938, 2300, 1078,
2209 1078, 1078, 2374, 2320, 2320, 2320, 937, 936, 2355, 2385,
2210 2385, 2385, 1106, 1106, 1106, 933, 932, 1080, 2323, 2323,
2211 2323, 2387, 2387, 2387, 931, 2388, 2356, 930, 2389, 928,
2212 1108, 927, 2326, 2326, 2326, 2324, 2327, 926, 925, 2328,
2214 2333, 2333, 2333, 924, 2334, 923, 922, 2335, 2383, 2336,
2215 2336, 2336, 921, 2337, 918, 915, 2338, 2340, 2340, 2340,
2216 2396, 2396, 2396, 2386, 2397, 914, 911, 2398, 2343, 2343,
2217 2343, 909, 2344, 908, 2341, 2345, 2346, 2346, 2346, 903,
2218 2347, 902, 900, 2348, 2414, 2414, 2414, 1248, 1248, 1248,
2219 2418, 2418, 2418, 2359, 2359, 2359, 2420, 2420, 2420, 899,
2220 2421, 898, 2415, 2422, 896, 1250, 893, 2419, 1466, 891,
2221 2360, 1466, 888, 887, 1466, 2423, 2423, 2423, 2362, 2362,
2222 2362, 2424, 2424, 2424, 2425, 2425, 2425, 2373, 2373, 2373,
2223 2434, 2434, 2434, 885, 2435, 884, 881, 2436, 1078, 1078,
2225 1078, 2444, 2444, 2444, 2374, 2385, 2385, 2385, 2445, 2445,
2226 2445, 878, 2416, 2387, 2387, 2387, 1080, 2388, 877, 876,
2227 2389, 2450, 2450, 2450, 875, 873, 2446, 2453, 2453, 2453,
2228 2396, 2396, 2396, 872, 2397, 871, 870, 2398, 2451, 2455,
2229 2455, 2455, 869, 867, 2454, 864, 2414, 2414, 2414, 1248,
2230 1248, 1248, 2418, 2418, 2418, 862, 2456, 861, 2471, 2471,
2231 2471, 860, 2472, 2443, 2415, 2473, 858, 1250, 856, 2419,
2232 1466, 2420, 2420, 2420, 855, 2421, 1466, 854, 2422, 2423,
2233 2423, 2423, 2424, 2424, 2424, 2425, 2425, 2425, 853, 1466,
2234 2434, 2434, 2434, 852, 2435, 851, 848, 2436, 847, 846,
2236 2469, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464,
2237 843, 840, 1464, 2490, 2490, 2490, 839, 1464, 1464, 1464,
2238 1466, 1464, 2444, 2444, 2444, 2445, 2445, 2445, 2450, 2450,
2239 2450, 2491, 2495, 2495, 2495, 837, 2496, 836, 833, 2497,
2240 2453, 2453, 2453, 2446, 831, 2451, 1464, 1464, 1464, 1464,
2241 1464, 1464, 1464, 1464, 1464, 1464, 1464, 2454, 828, 1464,
2242 2455, 2455, 2455, 827, 1464, 1464, 1464, 1466, 1464, 2499,
2243 2499, 2499, 819, 2500, 818, 817, 2501, 2456, 2502, 2502,
2244 2502, 814, 2503, 813, 812, 2504, 2517, 2517, 2517, 2490,
2245 2490, 2490, 811, 1464, 1464, 2471, 2471, 2471, 809, 2472,
2247 808, 807, 2473, 806, 2518, 805, 804, 2491, 2517, 2517,
2248 2517, 799, 796, 1466, 1464, 1464, 1464, 1464, 1464, 2525,
2249 1464, 1464, 1464, 798, 793, 1464, 2518, 792, 790, 788,
2250 1464, 1464, 1464, 1466, 1464, 2495, 2495, 2495, 786, 2496,
2251 784, 782, 2497, 2499, 2499, 2499, 2808, 2500, 779, 778,
2252 2501, 2502, 2502, 2502, 777, 2503, 776, 774, 2504, 1464,
2253 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 2525,
2254 773, 772, 1464, 2554, 2554, 2554, 771, 1464, 1464, 1464,
2255 1466, 1464, 2559, 2559, 2559, 2561, 2561, 2561, 2563, 2563,
2256 2563, 1466, 1467, 2571, 2571, 2571, 2579, 2579, 2579, 2560,
2258 770, 768, 2562, 767, 766, 2564, 1464, 1464, 765, 763,
2259 2572, 2554, 2554, 2554, 1000, 2559, 2559, 2559, 2585, 2585,
2260 2585, 761, 2586, 760, 758, 2587, 2561, 2561, 2561, 1466,
2261 757, 754, 2560, 2588, 2588, 2588, 753, 2589, 751, 611,
2262 2590, 2808, 746, 2562, 2563, 2563, 2563, 2591, 2591, 2591,
2263 744, 2592, 740, 739, 2593, 2571, 2571, 2571, 2579, 2579,
2264 2579, 2564, 1634, 2600, 2600, 2600, 738, 2601, 736, 734,
2265 2602, 733, 2572, 2585, 2585, 2585, 1000, 2586, 731, 729,
2266 2587, 2588, 2588, 2588, 728, 2589, 727, 726, 2590, 2591,
2267 2591, 2591, 725, 2592, 724, 2609, 2593, 2600, 2600, 2600,
2269 723, 2601, 721, 712, 2602, 2704, 2704, 2704, 2704, 2704,
2270 2704, 711, 2713, 710, 707, 2714, 2806, 2806, 2806, 2806,
2271 2806, 2806, 705, 1000, 2808, 702, 1000, 701, 700, 699,
2272 698, 696, 694, 693, 2807, 691, 689, 2807, 238, 238,
2273 238, 238, 238, 238, 238, 238, 238, 239, 239, 239,
2274 239, 239, 239, 239, 239, 239, 244, 244, 244, 244,
2275 244, 244, 244, 244, 244, 247, 247, 247, 247, 247,
2276 247, 247, 247, 247, 250, 250, 250, 250, 250, 250,
2277 250, 250, 250, 253, 253, 253, 253, 253, 253, 253,
2278 253, 253, 260, 260, 260, 260, 260, 260, 260, 260,
2280 260, 268, 268, 268, 268, 268, 268, 268, 268, 268,
2281 272, 272, 272, 272, 272, 272, 272, 272, 272, 284,
2282 284, 284, 284, 284, 284, 284, 284, 284, 288, 288,
2283 288, 288, 288, 288, 288, 288, 288, 295, 295, 295,
2284 295, 295, 295, 295, 295, 295, 306, 306, 306, 306,
2285 306, 306, 306, 306, 306, 314, 314, 314, 314, 314,
2286 314, 314, 314, 314, 322, 322, 322, 322, 322, 322,
2287 322, 322, 322, 328, 328, 328, 328, 328, 328, 328,
2288 328, 328, 334, 334, 334, 334, 334, 334, 334, 334,
2289 334, 339, 339, 339, 339, 339, 339, 339, 339, 339,
2291 356, 356, 356, 356, 356, 356, 356, 356, 356, 363,
2292 363, 363, 363, 363, 363, 363, 363, 363, 370, 370,
2293 370, 370, 370, 370, 370, 370, 370, 376, 376, 376,
2294 376, 376, 376, 376, 376, 376, 383, 383, 383, 383,
2295 383, 383, 383, 383, 383, 388, 388, 388, 388, 388,
2296 388, 388, 388, 388, 394, 394, 394, 394, 394, 394,
2297 394, 394, 394, 399, 399, 399, 399, 399, 399, 399,
2298 399, 399, 405, 405, 405, 405, 405, 405, 405, 405,
2299 405, 413, 413, 413, 413, 413, 413, 413, 413, 413,
2300 432, 432, 432, 432, 432, 432, 432, 432, 432, 438,
2302 438, 438, 438, 438, 438, 438, 438, 438, 448, 448,
2303 448, 448, 448, 448, 448, 448, 448, 454, 454, 454,
2304 454, 454, 454, 454, 454, 454, 459, 459, 459, 459,
2305 459, 459, 459, 459, 459, 465, 465, 465, 465, 465,
2306 465, 465, 465, 465, 472, 472, 472, 472, 472, 472,
2307 472, 472, 472, 479, 479, 479, 479, 479, 479, 479,
2308 479, 479, 484, 484, 484, 484, 484, 484, 484, 484,
2309 484, 492, 492, 492, 492, 492, 492, 492, 492, 492,
2310 498, 498, 498, 498, 498, 498, 498, 498, 498, 505,
2311 505, 505, 505, 505, 505, 505, 505, 505, 510, 510,
2313 510, 510, 510, 510, 510, 510, 510, 516, 516, 516,
2314 516, 516, 516, 516, 516, 516, 521, 521, 521, 521,
2315 521, 521, 521, 521, 521, 528, 528, 528, 528, 528,
2316 528, 528, 528, 528, 534, 534, 534, 534, 534, 534,
2317 534, 534, 534, 541, 541, 541, 541, 541, 541, 541,
2318 541, 541, 548, 548, 548, 548, 548, 548, 548, 548,
2319 548, 556, 556, 556, 556, 556, 556, 556, 556, 556,
2320 560, 560, 560, 560, 560, 560, 560, 560, 560, 566,
2321 566, 566, 566, 566, 566, 566, 566, 566, 570, 570,
2322 570, 570, 570, 570, 570, 570, 570, 577, 577, 577,
2324 577, 577, 577, 577, 577, 577, 582, 582, 582, 582,
2325 582, 582, 582, 582, 582, 602, 602, 602, 688, 686,
2326 684, 602, 628, 628, 628, 683, 682, 680, 628, 632,
2327 632, 632, 678, 677, 676, 632, 640, 640, 640, 675,
2328 673, 2808, 640, 652, 652, 652, 2808, 660, 659, 652,
2329 658, 658, 658, 657, 655, 654, 658, 674, 674, 674,
2330 653, 651, 646, 674, 681, 681, 681, 642, 641, 639,
2331 681, 687, 687, 687, 638, 635, 634, 687, 692, 692,
2332 692, 633, 631, 630, 692, 697, 697, 697, 629, 627,
2333 622, 697, 706, 706, 706, 2808, 603, 601, 706, 722,
2335 722, 722, 599, 593, 592, 722, 732, 732, 732, 593,
2336 592, 591, 732, 737, 737, 737, 590, 2808, 2808, 737,
2337 745, 745, 745, 2808, 2808, 2808, 745, 752, 752, 752,
2338 2808, 2808, 2808, 752, 759, 759, 759, 2808, 2808, 2808,
2339 759, 764, 764, 764, 2808, 2808, 2808, 764, 769, 769,
2340 769, 2808, 2808, 2808, 769, 775, 775, 775, 2808, 2808,
2341 2808, 775, 783, 783, 783, 2808, 2808, 2808, 783, 787,
2342 787, 787, 2808, 2808, 2808, 787, 791, 791, 791, 2808,
2343 2808, 2808, 791, 795, 795, 795, 795, 795, 795, 795,
2344 2808, 795, 602, 602, 602, 2808, 2808, 2808, 602, 810,
2346 2808, 2808, 2808, 810, 628, 628, 628, 2808, 2808, 2808,
2347 628, 838, 2808, 2808, 2808, 838, 632, 632, 632, 2808,
2348 2808, 2808, 632, 845, 2808, 2808, 2808, 845, 640, 640,
2349 640, 2808, 2808, 2808, 640, 857, 2808, 2808, 2808, 857,
2350 652, 652, 652, 2808, 2808, 2808, 652, 863, 2808, 2808,
2351 2808, 863, 658, 658, 658, 2808, 2808, 2808, 658, 868,
2352 2808, 2808, 2808, 868, 674, 674, 674, 2808, 2808, 2808,
2353 674, 886, 2808, 2808, 2808, 886, 681, 681, 681, 2808,
2354 2808, 2808, 681, 892, 2808, 2808, 2808, 892, 687, 687,
2355 687, 2808, 2808, 2808, 687, 897, 2808, 2808, 2808, 897,
2357 692, 692, 692, 2808, 2808, 2808, 692, 901, 2808, 2808,
2358 2808, 901, 697, 697, 697, 2808, 2808, 2808, 697, 910,
2359 2808, 2808, 2808, 910, 706, 706, 706, 2808, 2808, 2808,
2360 706, 929, 2808, 2808, 2808, 929, 722, 722, 722, 2808,
2361 2808, 2808, 722, 939, 2808, 2808, 2808, 939, 732, 732,
2362 732, 2808, 2808, 2808, 732, 944, 2808, 2808, 2808, 944,
2363 737, 737, 737, 2808, 2808, 2808, 737, 952, 2808, 2808,
2364 2808, 952, 745, 745, 745, 2808, 2808, 2808, 745, 957,
2365 2808, 2808, 2808, 957, 752, 752, 752, 2808, 2808, 2808,
2366 752, 964, 2808, 2808, 2808, 964, 759, 759, 759, 2808,
2368 2808, 2808, 759, 969, 2808, 2808, 2808, 969, 764, 764,
2369 764, 2808, 2808, 2808, 764, 973, 2808, 2808, 2808, 973,
2370 769, 769, 769, 2808, 2808, 2808, 769, 978, 2808, 2808,
2371 2808, 978, 775, 775, 775, 2808, 2808, 2808, 775, 984,
2372 2808, 2808, 2808, 984, 783, 783, 783, 2808, 2808, 2808,
2373 783, 988, 2808, 2808, 2808, 988, 787, 787, 787, 2808,
2374 2808, 2808, 787, 992, 2808, 2808, 2808, 992, 791, 791,
2375 791, 2808, 2808, 2808, 791, 997, 2808, 2808, 2808, 997,
2376 999, 999, 999, 999, 999, 999, 999, 999, 999, 1005,
2377 2808, 2808, 2808, 2808, 1005, 602, 602, 602, 2808, 2808,
2379 2808, 602, 1014, 1014, 1014, 1014, 2808, 2808, 1014, 1014,
2380 628, 628, 628, 2808, 2808, 2808, 628, 1045, 1045, 1045,
2381 1045, 2808, 2808, 1045, 1045, 632, 632, 632, 2808, 2808,
2382 2808, 632, 1055, 1055, 1055, 1055, 2808, 2808, 1055, 1055,
2383 640, 640, 640, 2808, 2808, 2808, 640, 1071, 1071, 1071,
2384 1071, 2808, 2808, 1071, 1071, 652, 652, 652, 2808, 2808,
2385 2808, 652, 1079, 1079, 1079, 1079, 2808, 2808, 1079, 1079,
2386 658, 658, 658, 2808, 2808, 2808, 658, 1087, 1087, 1087,
2387 1087, 2808, 2808, 1087, 1087, 674, 674, 674, 2808, 2808,
2388 2808, 674, 1107, 1107, 1107, 1107, 2808, 2808, 1107, 1107,
2390 681, 681, 681, 2808, 2808, 2808, 681, 1116, 1116, 1116,
2391 1116, 2808, 2808, 1116, 1116, 687, 687, 687, 2808, 2808,
2392 2808, 687, 1124, 1124, 1124, 1124, 2808, 2808, 1124, 1124,
2393 692, 692, 692, 2808, 2808, 2808, 692, 1130, 1130, 1130,
2394 1130, 2808, 2808, 1130, 1130, 697, 697, 697, 2808, 2808,
2395 2808, 697, 1142, 1142, 1142, 1142, 2808, 2808, 1142, 1142,
2396 706, 706, 706, 2808, 2808, 2808, 706, 1168, 1168, 1168,
2397 1168, 2808, 2808, 1168, 1168, 722, 722, 722, 2808, 2808,
2398 2808, 722, 1183, 1183, 1183, 1183, 2808, 2808, 1183, 1183,
2399 732, 732, 732, 2808, 2808, 2808, 732, 1191, 1191, 1191,
2401 1191, 2808, 2808, 1191, 1191, 737, 737, 737, 2808, 2808,
2402 2808, 737, 1202, 1202, 1202, 1202, 2808, 2808, 1202, 1202,
2403 745, 745, 745, 745, 2808, 745, 2808, 745, 1211, 1211,
2404 1211, 1211, 2808, 2808, 1211, 1211, 752, 752, 752, 752,
2405 2808, 752, 2808, 752, 1223, 1223, 1223, 1223, 2808, 2808,
2406 1223, 1223, 759, 759, 759, 2808, 2808, 2808, 759, 1231,
2407 1231, 1231, 1231, 2808, 2808, 1231, 1231, 764, 764, 764,
2408 764, 2808, 764, 2808, 764, 1239, 1239, 1239, 1239, 2808,
2409 2808, 1239, 1239, 769, 769, 769, 769, 2808, 769, 2808,
2410 769, 1249, 1249, 1249, 1249, 2808, 2808, 1249, 1249, 775,
2412 775, 775, 2808, 2808, 2808, 775, 1257, 1257, 1257, 1257,
2413 2808, 2808, 1257, 1257, 783, 783, 783, 2808, 2808, 2808,
2414 783, 1263, 1263, 1263, 1263, 2808, 2808, 1263, 1263, 1270,
2415 1270, 1270, 1270, 2808, 2808, 1270, 1270, 791, 791, 791,
2416 2808, 2808, 2808, 791, 1278, 1278, 1278, 1278, 2808, 2808,
2417 1278, 1278, 999, 999, 999, 999, 999, 999, 999, 999,
2418 999, 1005, 2808, 1005, 2808, 2808, 1005, 602, 602, 602,
2419 2808, 2808, 2808, 602, 1014, 1014, 1014, 1014, 2808, 2808,
2420 1014, 1014, 628, 628, 628, 628, 2808, 628, 2808, 628,
2421 1045, 1045, 1045, 1045, 2808, 2808, 1045, 1045, 632, 632,
2423 632, 632, 2808, 632, 2808, 632, 1055, 1055, 1055, 1055,
2424 2808, 2808, 1055, 1055, 640, 640, 640, 2808, 2808, 2808,
2425 640, 1071, 1071, 1071, 1071, 2808, 2808, 1071, 1071, 652,
2426 652, 652, 2808, 2808, 2808, 652, 1079, 1079, 1079, 1079,
2427 2808, 2808, 1079, 1079, 658, 658, 658, 2808, 2808, 2808,
2428 658, 1087, 1087, 1087, 1087, 2808, 2808, 1087, 1087, 674,
2429 674, 674, 2808, 2808, 2808, 674, 1107, 1107, 1107, 1107,
2430 2808, 2808, 1107, 1107, 681, 681, 681, 2808, 2808, 2808,
2431 681, 1116, 1116, 1116, 1116, 2808, 2808, 1116, 1116, 687,
2432 687, 687, 687, 2808, 687, 2808, 687, 1124, 1124, 1124,
2434 1124, 2808, 2808, 1124, 1124, 692, 692, 692, 692, 2808,
2435 692, 2808, 692, 1130, 1130, 1130, 1130, 2808, 2808, 1130,
2436 1130, 697, 697, 697, 2808, 2808, 2808, 697, 1142, 1142,
2437 1142, 1142, 2808, 2808, 1142, 1142, 706, 706, 706, 2808,
2438 2808, 2808, 706, 1168, 1168, 1168, 1168, 2808, 2808, 1168,
2439 1168, 722, 722, 722, 2808, 2808, 2808, 722, 1183, 1183,
2440 1183, 1183, 2808, 2808, 1183, 1183, 732, 732, 732, 2808,
2441 2808, 2808, 732, 1191, 1191, 1191, 1191, 2808, 2808, 1191,
2442 1191, 737, 737, 737, 2808, 2808, 2808, 737, 1202, 1202,
2443 1202, 1202, 2808, 2808, 1202, 1202, 745, 745, 745, 2808,
2445 2808, 2808, 745, 1211, 1211, 1211, 1211, 2808, 2808, 1211,
2446 1211, 752, 752, 752, 2808, 2808, 2808, 752, 1223, 1223,
2447 1223, 1223, 2808, 2808, 1223, 1223, 759, 759, 759, 2808,
2448 2808, 2808, 759, 1231, 1231, 1231, 1231, 2808, 2808, 1231,
2449 1231, 1239, 1239, 1239, 1239, 2808, 2808, 1239, 1239, 769,
2450 769, 769, 2808, 2808, 2808, 769, 1249, 1249, 1249, 1249,
2451 2808, 2808, 1249, 1249, 775, 775, 775, 2808, 2808, 2808,
2452 775, 1257, 1257, 1257, 1257, 2808, 2808, 1257, 1257, 783,
2453 783, 783, 2808, 2808, 2808, 783, 1263, 1263, 1263, 1263,
2454 2808, 2808, 1263, 1263, 1270, 1270, 1270, 1270, 2808, 2808,
2456 1270, 1270, 791, 791, 791, 2808, 2808, 2808, 791, 1278,
2457 1278, 1278, 1278, 2808, 2808, 1278, 1278, 999, 999, 999,
2458 999, 999, 999, 999, 999, 999, 1464, 1464, 1464, 1464,
2459 1464, 1464, 1464, 1464, 1464, 602, 602, 602, 2808, 2808,
2460 2808, 602, 1014, 1014, 1014, 1014, 2808, 2808, 1014, 1014,
2461 1045, 1045, 1045, 1045, 2808, 2808, 1045, 1045, 632, 632,
2462 632, 2808, 2808, 2808, 632, 1055, 1055, 1055, 1055, 2808,
2463 2808, 1055, 1055, 640, 640, 640, 2808, 2808, 2808, 640,
2464 1071, 1071, 1071, 1071, 2808, 2808, 1071, 1071, 652, 652,
2465 652, 2808, 2808, 2808, 652, 1079, 1079, 1079, 1079, 2808,
2467 2808, 1079, 1079, 658, 658, 658, 2808, 2808, 2808, 658,
2468 674, 674, 674, 2808, 2808, 2808, 674, 1107, 1107, 1107,
2469 1107, 2808, 2808, 1107, 1107, 681, 681, 681, 2808, 2808,
2470 2808, 681, 1116, 1116, 1116, 1116, 2808, 2808, 1116, 1116,
2471 1124, 1124, 1124, 1124, 2808, 2808, 1124, 1124, 692, 692,
2472 692, 2808, 2808, 2808, 692, 1130, 1130, 1130, 1130, 2808,
2473 2808, 1130, 1130, 697, 697, 697, 2808, 2808, 2808, 697,
2474 1142, 1142, 1142, 1142, 2808, 2808, 1142, 1142, 706, 706,
2475 706, 2808, 2808, 2808, 706, 1168, 1168, 1168, 1168, 2808,
2476 2808, 1168, 1168, 722, 722, 722, 2808, 2808, 2808, 722,
2478 1183, 1183, 1183, 1183, 2808, 2808, 1183, 1183, 732, 732,
2479 732, 2808, 2808, 2808, 732, 1191, 1191, 1191, 1191, 2808,
2480 2808, 1191, 1191, 737, 737, 737, 2808, 2808, 2808, 737,
2481 1202, 1202, 1202, 1202, 2808, 2808, 1202, 1202, 745, 745,
2482 745, 2808, 2808, 2808, 745, 1211, 1211, 1211, 1211, 2808,
2483 2808, 1211, 1211, 752, 752, 752, 2808, 2808, 2808, 752,
2484 1223, 1223, 1223, 1223, 2808, 2808, 1223, 1223, 759, 759,
2485 759, 2808, 2808, 2808, 759, 1231, 1231, 1231, 1231, 2808,
2486 2808, 1231, 1231, 1239, 1239, 1239, 1239, 2808, 2808, 1239,
2487 1239, 769, 769, 769, 2808, 2808, 2808, 769, 1249, 1249,
2489 1249, 1249, 2808, 2808, 1249, 1249, 775, 775, 775, 2808,
2490 2808, 2808, 775, 1257, 1257, 1257, 1257, 2808, 2808, 1257,
2491 1257, 783, 783, 783, 783, 2808, 783, 2808, 783, 1263,
2492 1263, 1263, 1263, 2808, 2808, 1263, 1263, 1270, 1270, 1270,
2493 1270, 2808, 2808, 1270, 1270, 791, 791, 791, 791, 2808,
2494 791, 2808, 791, 1278, 1278, 1278, 1278, 2808, 2808, 1278,
2495 1278, 999, 999, 999, 999, 999, 999, 999, 999, 999,
2496 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 602,
2497 602, 602, 2808, 2808, 2808, 602, 1014, 1014, 1014, 1014,
2498 2808, 2808, 1014, 1014, 1045, 1045, 1045, 1045, 2808, 2808,
2500 1045, 1045, 632, 632, 632, 2808, 2808, 2808, 632, 1055,
2501 1055, 1055, 1055, 2808, 2808, 1055, 1055, 640, 640, 640,
2502 2808, 2808, 2808, 640, 1071, 1071, 1071, 1071, 2808, 2808,
2503 1071, 1071, 652, 652, 652, 2808, 2808, 2808, 652, 1079,
2504 1079, 1079, 1079, 2808, 2808, 1079, 1079, 658, 658, 658,
2505 2808, 2808, 2808, 658, 674, 674, 674, 2808, 2808, 2808,
2506 674, 1107, 1107, 1107, 1107, 2808, 2808, 1107, 1107, 681,
2507 681, 681, 2808, 2808, 2808, 681, 1116, 1116, 1116, 1116,
2508 2808, 2808, 1116, 1116, 1124, 1124, 1124, 1124, 2808, 2808,
2509 1124, 1124, 692, 692, 692, 692, 2808, 692, 2808, 692,
2511 1130, 1130, 1130, 1130, 2808, 2808, 1130, 1130, 697, 697,
2512 697, 2808, 2808, 2808, 697, 1142, 1142, 1142, 1142, 2808,
2513 2808, 1142, 1142, 706, 706, 706, 2808, 2808, 2808, 706,
2514 1168, 1168, 1168, 1168, 2808, 2808, 1168, 1168, 722, 722,
2515 722, 2808, 2808, 2808, 722, 1183, 1183, 1183, 1183, 2808,
2516 2808, 1183, 1183, 732, 732, 732, 2808, 2808, 2808, 732,
2517 1191, 1191, 1191, 1191, 2808, 2808, 1191, 1191, 737, 737,
2518 737, 2808, 2808, 2808, 737, 1202, 1202, 1202, 1202, 2808,
2519 2808, 1202, 1202, 745, 745, 745, 2808, 2808, 2808, 745,
2520 1211, 1211, 1211, 1211, 2808, 2808, 1211, 1211, 752, 752,
2522 752, 752, 2808, 752, 2808, 752, 1223, 1223, 1223, 1223,
2523 2808, 2808, 1223, 1223, 759, 759, 759, 2808, 2808, 2808,
2524 759, 1231, 1231, 1231, 1231, 2808, 2808, 1231, 1231, 1239,
2525 1239, 1239, 1239, 2808, 2808, 1239, 1239, 769, 769, 769,
2526 769, 2808, 769, 2808, 769, 1249, 1249, 1249, 1249, 2808,
2527 2808, 1249, 1249, 775, 775, 775, 2808, 2808, 2808, 775,
2528 1257, 1257, 1257, 1257, 2808, 2808, 1257, 1257, 1263, 1263,
2529 1263, 1263, 2808, 2808, 1263, 1263, 1270, 1270, 1270, 1270,
2530 2808, 2808, 1270, 1270, 1278, 1278, 1278, 1278, 2808, 2808,
2531 1278, 1278, 999, 999, 999, 999, 999, 999, 999, 999,
2533 999, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464,
2534 602, 602, 602, 602, 2808, 602, 2808, 602, 1014, 1014,
2535 1014, 1014, 2808, 2808, 1014, 1014, 1045, 1045, 1045, 1045,
2536 2808, 2808, 1045, 1045, 632, 632, 632, 2808, 2808, 2808,
2537 632, 1055, 1055, 1055, 1055, 2808, 2808, 1055, 1055, 640,
2538 640, 640, 2808, 2808, 2808, 640, 1071, 1071, 1071, 1071,
2539 2808, 2808, 1071, 1071, 652, 652, 652, 652, 2808, 652,
2540 2808, 652, 1079, 1079, 1079, 1079, 2808, 2808, 1079, 1079,
2541 658, 658, 658, 658, 2808, 658, 2808, 658, 674, 674,
2542 674, 674, 2808, 674, 2808, 674, 1107, 1107, 1107, 1107,
2544 2808, 2808, 1107, 1107, 681, 681, 681, 681, 2808, 681,
2545 2808, 681, 1116, 1116, 1116, 1116, 2808, 2808, 1116, 1116,
2546 1124, 1124, 1124, 1124, 2808, 2808, 1124, 1124, 1130, 1130,
2547 1130, 1130, 2808, 2808, 1130, 1130, 697, 697, 697, 2808,
2548 2808, 2808, 697, 706, 706, 706, 2808, 2808, 2808, 706,
2549 1168, 1168, 1168, 1168, 2808, 2808, 1168, 1168, 722, 722,
2550 722, 2808, 2808, 2808, 722, 732, 732, 732, 2808, 2808,
2551 2808, 732, 1191, 1191, 1191, 1191, 2808, 2808, 1191, 1191,
2552 737, 737, 737, 2808, 2808, 2808, 737, 745, 745, 745,
2553 2808, 2808, 2808, 745, 1211, 1211, 1211, 1211, 2808, 2808,
2555 1211, 1211, 752, 752, 752, 2808, 2808, 2808, 752, 1223,
2556 1223, 1223, 1223, 2808, 2808, 1223, 1223, 759, 759, 759,
2557 2808, 2808, 2808, 759, 1231, 1231, 1231, 1231, 2808, 2808,
2558 1231, 1231, 1239, 1239, 1239, 1239, 2808, 2808, 1239, 1239,
2559 1249, 1249, 1249, 1249, 2808, 2808, 1249, 1249, 775, 775,
2560 775, 2808, 2808, 2808, 775, 1257, 1257, 1257, 1257, 2808,
2561 2808, 1257, 1257, 1263, 1263, 1263, 1263, 2808, 2808, 1263,
2562 1263, 1270, 1270, 1270, 1270, 2808, 2808, 1270, 1270, 999,
2563 999, 999, 999, 999, 999, 999, 999, 999, 1464, 1464,
2564 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1014, 1014, 1014,
2566 1014, 2808, 2808, 1014, 1014, 1045, 1045, 1045, 1045, 2808,
2567 2808, 1045, 1045, 632, 632, 632, 2808, 2808, 2808, 632,
2568 640, 640, 640, 2808, 2808, 2808, 640, 1071, 1071, 1071,
2569 1071, 2808, 2808, 1071, 1071, 1079, 1079, 1079, 1079, 2808,
2570 2808, 1079, 1079, 1107, 1107, 1107, 1107, 2808, 2808, 1107,
2571 1107, 1116, 1116, 1116, 1116, 2808, 2808, 1116, 1116, 1130,
2572 1130, 1130, 1130, 2808, 2808, 1130, 1130, 697, 697, 697,
2573 2808, 2808, 2808, 697, 706, 706, 706, 2808, 2808, 2808,
2574 706, 1168, 1168, 1168, 1168, 2808, 2808, 1168, 1168, 722,
2575 722, 722, 2808, 2808, 2808, 722, 732, 732, 732, 2808,
2577 2808, 2808, 732, 1191, 1191, 1191, 1191, 2808, 2808, 1191,
2578 1191, 737, 737, 737, 2808, 2808, 2808, 737, 745, 745,
2579 745, 2808, 2808, 2808, 745, 752, 752, 752, 2808, 2808,
2580 2808, 752, 1223, 1223, 1223, 1223, 2808, 2808, 1223, 1223,
2581 759, 759, 759, 2808, 2808, 2808, 759, 1231, 1231, 1231,
2582 1231, 2808, 2808, 1231, 1231, 1239, 1239, 1239, 1239, 2808,
2583 2808, 1239, 1239, 1249, 1249, 1249, 1249, 2808, 2808, 1249,
2584 1249, 775, 775, 775, 775, 2808, 775, 2808, 775, 1257,
2585 1257, 1257, 1257, 2808, 2808, 1257, 1257, 1263, 1263, 1263,
2586 1263, 2808, 2808, 1263, 1263, 1270, 1270, 1270, 1270, 2808,
2588 2808, 1270, 1270, 999, 999, 999, 999, 999, 999, 999,
2589 999, 999, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 1464,
2590 1464, 1014, 1014, 1014, 1014, 2808, 2808, 1014, 1014, 1045,
2591 1045, 1045, 1045, 2808, 2808, 1045, 1045, 632, 632, 632,
2592 2808, 2808, 2808, 632, 640, 640, 640, 640, 2808, 640,
2593 2808, 640, 1079, 1079, 1079, 1079, 2808, 2808, 1079, 1079,
2594 1107, 1107, 1107, 1107, 2808, 2808, 1107, 1107, 1116, 1116,
2595 1116, 1116, 2808, 2808, 1116, 1116, 1130, 1130, 1130, 1130,
2596 2808, 2808, 1130, 1130, 697, 697, 697, 2808, 2808, 2808,
2597 697, 706, 706, 706, 2808, 2808, 2808, 706, 1168, 1168,
2599 1168, 1168, 2808, 2808, 1168, 1168, 722, 722, 722, 2808,
2600 2808, 2808, 722, 732, 732, 732, 2808, 2808, 2808, 732,
2601 2474, 2474, 2474, 2474, 2474, 2474, 2474, 2474, 2474, 2475,
2602 2475, 2475, 2475, 2475, 2475, 2475, 2475, 2475, 2520, 2520,
2603 2520, 2520, 2520, 2520, 2520, 2520, 2520, 2523, 2523, 2523,
2604 2523, 2523, 2523, 2523, 2523, 2523, 2551, 2551, 2551, 2551,
2605 2551, 2551, 2551, 2551, 2551, 2553, 2553, 2553, 2553, 2553,
2606 2553, 2553, 2553, 2553, 237, 2808, 2808, 2808, 2808, 2808,
2607 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
2608 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
2610 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
2611 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
2612 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
2613 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
2614 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808
2617 static yyconst flex_int16_t yy_chk[10249] =
2619 0, 3, 3, 3, 4, 4, 4, 5, 5, 5,
2620 6, 6, 6, 7, 7, 7, 11, 3, 9, 12,
2621 4, 10, 572, 5, 0, 9, 6, 352, 10, 7,
2622 8, 8, 8, 242, 11, 13, 13, 12, 14, 14,
2623 13, 13, 291, 14, 14, 243, 8, 17, 17, 242,
2624 13, 15, 15, 14, 15, 246, 15, 16, 16, 572,
2625 16, 243, 16, 18, 18, 0, 15, 19, 19, 19,
2626 425, 246, 16, 20, 20, 20, 23, 23, 23, 24,
2627 24, 24, 352, 19, 25, 25, 25, 343, 471, 20,
2628 425, 17, 23, 291, 343, 24, 240, 240, 240, 471,
2630 25, 241, 241, 241, 245, 245, 245, 18, 21, 21,
2631 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
2632 21, 21, 21, 316, 21, 21, 21, 21, 21, 26,
2633 26, 26, 27, 27, 27, 28, 28, 28, 275, 29,
2634 29, 29, 30, 30, 30, 26, 1473, 1474, 27, 264,
2635 269, 28, 275, 21, 21, 29, 1475, 285, 30, 31,
2636 31, 31, 266, 266, 266, 264, 269, 273, 273, 273,
2637 282, 282, 282, 285, 316, 31, 21, 22, 22, 22,
2638 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
2639 22, 22, 317, 22, 22, 22, 22, 22, 32, 32,
2641 32, 33, 33, 33, 34, 34, 34, 264, 35, 35,
2642 35, 36, 36, 36, 32, 276, 277, 33, 345, 483,
2643 34, 318, 22, 22, 35, 276, 483, 36, 37, 37,
2644 37, 38, 38, 38, 39, 39, 39, 40, 40, 40,
2645 41, 41, 41, 317, 37, 22, 345, 38, 296, 1476,
2646 39, 1477, 307, 40, 276, 277, 41, 42, 42, 42,
2647 276, 289, 289, 289, 296, 278, 276, 277, 307, 277,
2648 276, 365, 318, 42, 43, 43, 43, 43, 43, 43,
2649 43, 43, 43, 43, 43, 43, 43, 43, 43, 636,
2650 43, 43, 43, 43, 43, 45, 45, 45, 46, 46,
2652 46, 47, 47, 47, 278, 48, 48, 48, 49, 49,
2653 49, 45, 313, 1479, 46, 1481, 278, 47, 278, 43,
2654 43, 48, 365, 1281, 49, 636, 313, 43, 44, 44,
2655 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
2656 44, 44, 44, 1281, 44, 44, 44, 44, 44, 50,
2657 50, 50, 51, 51, 51, 52, 52, 52, 293, 293,
2658 293, 55, 55, 301, 323, 50, 55, 1483, 51, 1485,
2659 301, 52, 366, 44, 44, 417, 55, 1486, 417, 301,
2660 323, 44, 53, 53, 53, 53, 53, 53, 53, 53,
2661 53, 53, 53, 53, 53, 53, 53, 344, 53, 53,
2663 53, 53, 53, 344, 1488, 55, 59, 59, 59, 60,
2664 60, 60, 344, 61, 61, 61, 56, 56, 62, 62,
2665 62, 56, 59, 366, 378, 60, 330, 53, 53, 61,
2666 430, 56, 932, 330, 62, 53, 379, 932, 53, 304,
2667 304, 304, 330, 430, 53, 54, 54, 54, 54, 54,
2668 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
2669 56, 54, 54, 54, 54, 54, 63, 63, 63, 64,
2670 64, 64, 65, 65, 65, 378, 66, 66, 66, 69,
2671 69, 69, 63, 335, 357, 64, 371, 379, 65, 311,
2672 54, 54, 66, 311, 1490, 69, 1492, 311, 54, 335,
2674 357, 54, 371, 429, 256, 1493, 429, 54, 57, 57,
2675 57, 57, 57, 57, 57, 57, 57, 57, 57, 57,
2676 57, 57, 57, 474, 57, 57, 57, 57, 57, 70,
2677 70, 70, 73, 73, 73, 74, 74, 74, 475, 75,
2678 75, 75, 76, 76, 76, 70, 256, 384, 73, 395,
2679 390, 74, 256, 57, 57, 75, 256, 390, 76, 1494,
2680 1495, 256, 57, 384, 57, 395, 390, 57, 315, 315,
2681 315, 474, 57, 57, 58, 58, 58, 58, 58, 58,
2682 58, 58, 58, 58, 58, 58, 58, 58, 58, 475,
2683 58, 58, 58, 58, 58, 77, 77, 77, 78, 78,
2685 78, 79, 79, 79, 552, 80, 80, 80, 81, 81,
2686 81, 77, 1463, 406, 78, 401, 422, 79, 552, 58,
2687 58, 80, 401, 1497, 81, 320, 320, 320, 58, 406,
2688 58, 401, 422, 58, 329, 329, 329, 1463, 58, 58,
2689 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
2690 67, 67, 67, 67, 67, 1506, 67, 67, 67, 67,
2691 67, 82, 82, 82, 83, 83, 83, 84, 84, 84,
2692 431, 85, 85, 85, 86, 86, 86, 82, 614, 1507,
2693 83, 431, 431, 84, 350, 67, 67, 85, 439, 434,
2694 86, 614, 67, 332, 332, 332, 434, 67, 340, 340,
2696 340, 354, 354, 354, 439, 434, 67, 68, 68, 68,
2697 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
2698 68, 68, 350, 68, 68, 68, 68, 68, 87, 87,
2699 87, 88, 88, 88, 89, 89, 89, 350, 90, 90,
2700 90, 91, 91, 91, 87, 586, 595, 88, 497, 595,
2701 89, 347, 68, 68, 90, 497, 1509, 91, 1030, 68,
2702 586, 347, 349, 349, 68, 349, 364, 364, 364, 501,
2703 1030, 349, 349, 68, 71, 71, 71, 71, 71, 71,
2704 71, 71, 71, 71, 71, 71, 71, 71, 71, 347,
2705 71, 71, 71, 71, 71, 92, 92, 92, 93, 93,
2707 93, 94, 94, 94, 1513, 95, 95, 95, 96, 96,
2708 96, 92, 608, 1041, 93, 608, 501, 94, 612, 71,
2709 71, 95, 612, 1517, 96, 1041, 348, 368, 368, 368,
2710 71, 377, 377, 377, 381, 381, 381, 1520, 71, 72,
2711 72, 72, 72, 72, 72, 72, 72, 72, 72, 72,
2712 72, 72, 72, 72, 348, 72, 72, 72, 72, 72,
2713 97, 97, 97, 98, 98, 98, 99, 99, 99, 348,
2714 100, 100, 100, 101, 101, 101, 97, 455, 466, 98,
2715 617, 1527, 99, 617, 72, 72, 100, 1528, 480, 101,
2716 102, 102, 102, 455, 466, 72, 389, 389, 389, 392,
2718 392, 392, 620, 72, 480, 620, 102, 103, 103, 103,
2719 103, 103, 103, 103, 103, 103, 103, 103, 103, 103,
2720 103, 103, 1529, 103, 103, 103, 103, 103, 105, 105,
2721 105, 106, 106, 106, 107, 107, 107, 573, 108, 108,
2722 108, 400, 400, 400, 105, 1533, 493, 106, 450, 461,
2723 107, 1534, 103, 103, 108, 450, 461, 103, 403, 403,
2724 403, 415, 493, 103, 450, 461, 103, 414, 414, 414,
2725 486, 1535, 103, 104, 104, 104, 104, 104, 104, 104,
2726 104, 104, 104, 104, 104, 104, 104, 104, 573, 104,
2727 104, 104, 104, 104, 109, 109, 109, 110, 110, 110,
2729 111, 111, 111, 1538, 112, 112, 112, 524, 1545, 415,
2730 109, 506, 415, 110, 517, 512, 111, 486, 104, 104,
2731 112, 486, 512, 104, 419, 419, 419, 506, 1557, 104,
2732 517, 512, 104, 433, 433, 433, 537, 1558, 104, 113,
2733 113, 113, 113, 113, 113, 113, 113, 113, 113, 113,
2734 113, 113, 113, 113, 524, 113, 113, 113, 113, 113,
2735 115, 115, 115, 116, 116, 116, 117, 117, 117, 1074,
2736 118, 118, 118, 436, 436, 436, 115, 529, 542, 116,
2737 1566, 1074, 117, 537, 113, 113, 118, 1569, 1570, 113,
2738 449, 449, 449, 529, 542, 113, 452, 452, 452, 460,
2740 460, 460, 463, 463, 463, 113, 114, 114, 114, 114,
2741 114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
2742 114, 1574, 114, 114, 114, 114, 114, 119, 119, 119,
2743 120, 120, 120, 121, 121, 121, 1581, 122, 122, 122,
2744 473, 473, 473, 119, 557, 567, 120, 624, 1582, 121,
2745 624, 114, 114, 122, 1583, 1584, 114, 477, 477, 477,
2746 557, 567, 114, 485, 485, 485, 490, 490, 490, 499,
2747 499, 499, 114, 123, 123, 123, 123, 123, 123, 123,
2748 123, 123, 123, 123, 123, 123, 123, 123, 1587, 123,
2749 123, 123, 123, 123, 125, 125, 125, 126, 126, 126,
2751 129, 129, 129, 1591, 130, 130, 130, 133, 133, 133,
2752 125, 699, 578, 126, 699, 1594, 129, 704, 123, 123,
2753 130, 704, 1596, 133, 503, 503, 503, 550, 578, 123,
2754 511, 511, 511, 123, 124, 124, 124, 124, 124, 124,
2755 124, 124, 124, 124, 124, 124, 124, 124, 124, 1598,
2756 124, 124, 124, 124, 124, 134, 134, 134, 135, 135,
2757 135, 136, 136, 136, 550, 137, 137, 137, 138, 138,
2758 138, 134, 1599, 797, 135, 1600, 613, 136, 550, 124,
2759 124, 137, 613, 1603, 138, 514, 514, 514, 613, 797,
2760 124, 522, 522, 522, 124, 127, 127, 127, 127, 127,
2762 127, 127, 127, 127, 127, 127, 127, 127, 127, 127,
2763 1605, 127, 127, 127, 127, 127, 139, 139, 139, 140,
2764 140, 140, 143, 143, 143, 1607, 144, 144, 144, 147,
2765 147, 147, 139, 1002, 1612, 140, 1618, 1002, 143, 1622,
2766 127, 127, 144, 1623, 1625, 147, 526, 526, 526, 535,
2767 535, 535, 539, 539, 539, 127, 549, 549, 549, 1634,
2768 1633, 127, 128, 128, 128, 128, 128, 128, 128, 128,
2769 128, 128, 128, 128, 128, 128, 128, 1633, 128, 128,
2770 128, 128, 128, 148, 148, 148, 151, 151, 151, 152,
2771 152, 152, 1637, 155, 155, 155, 156, 156, 156, 148,
2773 1634, 1640, 151, 562, 584, 152, 1641, 128, 128, 155,
2774 562, 584, 156, 554, 554, 554, 561, 561, 561, 562,
2775 584, 1643, 128, 564, 564, 564, 1635, 1645, 128, 131,
2776 131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
2777 131, 131, 131, 131, 1646, 131, 131, 131, 131, 131,
2778 157, 157, 157, 158, 158, 158, 159, 159, 159, 1635,
2779 160, 160, 160, 571, 571, 571, 157, 1648, 1649, 158,
2780 618, 1650, 159, 1642, 131, 131, 160, 131, 622, 131,
2781 575, 575, 575, 618, 622, 131, 583, 583, 583, 1642,
2782 622, 131, 1654, 1656, 131, 132, 132, 132, 132, 132,
2784 132, 132, 132, 132, 132, 132, 132, 132, 132, 132,
2785 1659, 132, 132, 132, 132, 132, 161, 161, 161, 162,
2786 162, 162, 165, 165, 165, 1660, 166, 166, 166, 585,
2787 585, 585, 161, 1661, 1663, 162, 666, 1665, 165, 915,
2788 132, 132, 166, 132, 625, 132, 626, 650, 915, 666,
2789 625, 132, 626, 650, 1666, 915, 625, 132, 626, 650,
2790 132, 141, 141, 141, 141, 141, 141, 141, 141, 141,
2791 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
2792 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
2793 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
2795 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
2796 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
2797 141, 141, 141, 141, 141, 141, 141, 141, 141, 141,
2798 141, 141, 141, 141, 145, 145, 145, 145, 145, 145,
2799 145, 145, 145, 145, 145, 145, 145, 145, 145, 1668,
2800 145, 145, 145, 145, 145, 167, 167, 167, 168, 168,
2801 168, 169, 169, 169, 1670, 170, 170, 170, 634, 634,
2802 634, 167, 1673, 1674, 168, 1676, 671, 169, 672, 145,
2803 145, 170, 145, 145, 145, 634, 594, 594, 594, 671,
2804 145, 672, 145, 800, 800, 800, 145, 800, 1677, 145,
2806 146, 146, 146, 146, 146, 146, 146, 146, 146, 146,
2807 146, 146, 146, 146, 146, 1678, 146, 146, 146, 146,
2808 146, 171, 171, 171, 172, 172, 172, 175, 175, 175,
2809 1675, 176, 176, 176, 642, 642, 642, 171, 1675, 1680,
2810 172, 1686, 1690, 175, 594, 146, 146, 176, 146, 146,
2811 146, 642, 812, 812, 812, 1679, 146, 1706, 146, 1017,
2812 1017, 1017, 146, 1679, 1707, 146, 149, 149, 149, 149,
2813 149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
2814 149, 1712, 149, 149, 149, 149, 149, 177, 177, 177,
2815 178, 178, 178, 179, 179, 179, 1713, 180, 180, 180,
2817 659, 659, 659, 177, 1714, 1687, 178, 1718, 1719, 179,
2818 1725, 149, 149, 180, 1732, 812, 149, 659, 1037, 1037,
2819 1037, 1687, 149, 150, 150, 150, 150, 150, 150, 150,
2820 150, 150, 150, 150, 150, 150, 150, 150, 1733, 150,
2821 150, 150, 150, 150, 181, 181, 181, 182, 182, 182,
2822 185, 185, 185, 1734, 186, 186, 186, 676, 676, 676,
2823 181, 1522, 1738, 182, 1744, 1748, 185, 1522, 150, 150,
2824 186, 1522, 1751, 150, 676, 1522, 831, 831, 831, 150,
2825 153, 153, 153, 153, 153, 153, 153, 153, 153, 153,
2826 153, 153, 153, 153, 153, 1753, 153, 153, 153, 153,
2828 153, 189, 189, 189, 190, 190, 190, 191, 191, 191,
2829 1755, 192, 192, 192, 193, 193, 193, 189, 1523, 1757,
2830 190, 1758, 1759, 191, 1523, 153, 153, 192, 1523, 153,
2831 193, 1762, 1523, 842, 842, 842, 153, 842, 153, 831,
2832 842, 1764, 870, 870, 870, 153, 154, 154, 154, 154,
2833 154, 154, 154, 154, 154, 154, 154, 154, 154, 154,
2834 154, 1769, 154, 154, 154, 154, 154, 194, 194, 194,
2835 195, 195, 195, 196, 196, 196, 1771, 199, 199, 199,
2836 200, 200, 200, 194, 1779, 1780, 195, 1781, 1783, 196,
2837 1797, 154, 154, 199, 1691, 154, 200, 1796, 1802, 850,
2839 850, 850, 154, 850, 154, 870, 850, 876, 876, 876,
2840 1691, 154, 163, 163, 163, 163, 163, 163, 163, 163,
2841 163, 163, 163, 163, 163, 163, 163, 1803, 163, 163,
2842 163, 163, 163, 201, 201, 201, 202, 202, 202, 203,
2843 203, 203, 1796, 204, 204, 204, 205, 205, 205, 201,
2844 1794, 1692, 202, 1804, 1808, 203, 1794, 163, 163, 204,
2845 1809, 1810, 205, 163, 866, 866, 866, 1692, 866, 1815,
2846 876, 866, 1295, 1295, 1295, 1821, 1823, 163, 164, 164,
2847 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
2848 164, 164, 164, 1824, 164, 164, 164, 164, 164, 206,
2850 206, 206, 209, 209, 209, 210, 210, 210, 1827, 211,
2851 211, 211, 212, 212, 212, 206, 1830, 1834, 209, 1835,
2852 1836, 210, 1837, 164, 164, 211, 1838, 1839, 212, 164,
2853 883, 883, 883, 1840, 883, 1841, 1842, 883, 1843, 1297,
2854 1297, 1297, 1848, 164, 173, 173, 173, 173, 173, 173,
2855 173, 173, 173, 173, 173, 173, 173, 173, 173, 1849,
2856 173, 173, 173, 173, 173, 213, 213, 213, 214, 214,
2857 214, 215, 215, 215, 1795, 216, 216, 216, 219, 219,
2858 219, 213, 1867, 1868, 214, 1297, 1871, 215, 1869, 173,
2859 173, 216, 1872, 1873, 219, 173, 1869, 1877, 173, 890,
2861 890, 890, 1883, 890, 1884, 1795, 890, 1885, 1890, 173,
2862 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
2863 174, 174, 174, 174, 174, 1894, 174, 174, 174, 174,
2864 174, 220, 220, 220, 223, 223, 223, 224, 224, 224,
2865 1870, 225, 225, 225, 226, 226, 226, 220, 1870, 1895,
2866 223, 1896, 1898, 224, 1901, 174, 174, 225, 1902, 1905,
2867 226, 174, 1903, 1904, 174, 895, 895, 895, 1906, 895,
2868 1903, 1904, 895, 1909, 1916, 174, 183, 183, 183, 183,
2869 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
2870 183, 1918, 183, 183, 183, 183, 183, 227, 227, 227,
2872 228, 228, 228, 229, 229, 229, 1932, 230, 230, 230,
2873 233, 233, 233, 227, 1945, 1936, 228, 1937, 1946, 229,
2874 341, 183, 183, 230, 1954, 1955, 233, 183, 1959, 1961,
2875 341, 1973, 183, 184, 184, 184, 184, 184, 184, 184,
2876 184, 184, 184, 184, 184, 184, 184, 184, 1974, 184,
2877 184, 184, 184, 184, 234, 234, 234, 1936, 341, 683,
2878 683, 683, 1975, 1937, 341, 1976, 1977, 341, 1978, 1979,
2879 234, 1980, 1981, 341, 341, 342, 683, 1982, 184, 184,
2880 1300, 1300, 1300, 1988, 184, 342, 1303, 1303, 1303, 184,
2881 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
2883 187, 187, 187, 187, 187, 1989, 187, 187, 187, 187,
2884 187, 1991, 2001, 342, 688, 688, 688, 700, 700, 700,
2885 709, 709, 709, 711, 711, 711, 342, 726, 726, 726,
2886 342, 688, 2002, 2003, 700, 187, 187, 709, 2004, 2005,
2887 711, 187, 2006, 2007, 726, 907, 907, 907, 2009, 907,
2888 2010, 2015, 907, 2016, 2018, 187, 188, 188, 188, 188,
2889 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
2890 188, 2019, 188, 188, 188, 188, 188, 734, 734, 734,
2891 739, 739, 739, 761, 761, 761, 788, 788, 788, 792,
2892 792, 792, 2020, 2021, 734, 2028, 2029, 739, 2030, 2031,
2894 761, 188, 188, 788, 2032, 2033, 792, 188, 917, 917,
2895 917, 2034, 917, 2035, 2037, 917, 1312, 1312, 1312, 2058,
2896 2059, 188, 197, 197, 197, 197, 197, 197, 197, 197,
2897 197, 197, 197, 197, 197, 197, 197, 2063, 197, 197,
2898 197, 197, 197, 810, 810, 810, 811, 811, 811, 2054,
2899 2053, 838, 838, 838, 839, 839, 839, 841, 841, 841,
2900 2064, 810, 2065, 2068, 811, 2072, 2073, 197, 197, 838,
2901 2074, 2075, 839, 197, 841, 2076, 197, 920, 920, 920,
2902 2077, 920, 2053, 2078, 920, 2079, 2054, 197, 198, 198,
2903 198, 198, 198, 198, 198, 198, 198, 198, 198, 198,
2905 198, 198, 198, 811, 198, 198, 198, 198, 198, 845,
2906 845, 845, 2080, 839, 846, 846, 846, 2081, 849, 849,
2907 849, 851, 851, 851, 853, 853, 853, 845, 857, 857,
2908 857, 2083, 846, 198, 198, 849, 2084, 2085, 851, 198,
2909 2090, 853, 198, 935, 935, 935, 857, 935, 2091, 2092,
2910 935, 2094, 2098, 198, 207, 207, 207, 207, 207, 207,
2911 207, 207, 207, 207, 207, 207, 207, 207, 207, 2099,
2912 207, 207, 207, 207, 207, 2102, 2106, 846, 863, 863,
2913 863, 2107, 2109, 864, 864, 864, 2112, 2113, 858, 858,
2914 858, 865, 865, 865, 2114, 2115, 863, 2117, 2120, 207,
2916 207, 864, 1337, 1337, 1337, 2122, 858, 207, 865, 207,
2917 2145, 207, 1348, 1348, 1348, 1478, 1478, 1478, 2142, 207,
2918 208, 208, 208, 208, 208, 208, 208, 208, 208, 208,
2919 208, 208, 208, 208, 208, 858, 208, 208, 208, 208,
2920 208, 868, 868, 868, 2146, 2147, 864, 882, 882, 882,
2921 886, 886, 886, 887, 887, 887, 892, 892, 892, 868,
2922 2142, 889, 889, 889, 882, 208, 208, 2148, 886, 2149,
2923 2155, 887, 2156, 208, 892, 208, 2157, 208, 889, 1480,
2924 1480, 1480, 1482, 1482, 1482, 208, 217, 217, 217, 217,
2925 217, 217, 217, 217, 217, 217, 217, 217, 217, 217,
2927 217, 2158, 217, 217, 217, 217, 217, 869, 869, 869,
2928 2159, 893, 893, 893, 2140, 897, 897, 897, 887, 894,
2929 894, 894, 898, 898, 898, 869, 906, 906, 906, 893,
2930 2160, 217, 217, 897, 2161, 2162, 894, 1349, 1349, 1349,
2931 898, 2163, 2164, 906, 869, 943, 943, 943, 2166, 943,
2932 2167, 2168, 943, 2140, 217, 218, 218, 218, 218, 218,
2933 218, 218, 218, 218, 218, 218, 218, 218, 218, 218,
2934 2141, 218, 218, 218, 218, 218, 893, 901, 901, 901,
2935 2172, 2178, 898, 1349, 902, 902, 902, 910, 910, 910,
2936 911, 911, 911, 2152, 2179, 901, 916, 916, 916, 2183,
2938 218, 218, 902, 2152, 2186, 910, 2152, 2141, 911, 2194,
2939 948, 948, 948, 916, 948, 2195, 2196, 948, 1422, 1422,
2940 1422, 2220, 2222, 218, 221, 221, 221, 221, 221, 221,
2941 221, 221, 221, 221, 221, 221, 221, 221, 221, 2223,
2942 221, 221, 221, 221, 221, 919, 919, 919, 902, 2224,
2943 911, 921, 921, 921, 929, 929, 929, 930, 930, 930,
2944 2227, 2153, 919, 2204, 1422, 1484, 1484, 1484, 921, 221,
2945 221, 2153, 929, 2204, 2153, 930, 1487, 1487, 1487, 2204,
2946 221, 222, 222, 222, 222, 222, 222, 222, 222, 222,
2947 222, 222, 222, 222, 222, 222, 2228, 222, 222, 222,
2949 222, 222, 934, 934, 934, 936, 936, 936, 2229, 2230,
2950 939, 939, 939, 2231, 930, 940, 940, 940, 2234, 934,
2951 2235, 2229, 936, 1496, 1496, 1496, 222, 222, 939, 1489,
2952 1489, 1489, 2236, 940, 1519, 1519, 1519, 222, 231, 231,
2953 231, 231, 231, 231, 231, 231, 231, 231, 231, 231,
2954 231, 231, 231, 2217, 231, 231, 231, 231, 231, 942,
2955 942, 942, 944, 944, 944, 2205, 940, 2237, 945, 945,
2956 945, 947, 947, 947, 2232, 2205, 942, 952, 952, 952,
2957 944, 2205, 2217, 231, 231, 2239, 945, 2232, 947, 968,
2958 968, 968, 1489, 968, 231, 952, 968, 991, 991, 991,
2960 2240, 991, 2241, 2242, 991, 2218, 231, 232, 232, 232,
2961 232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
2962 232, 232, 2245, 232, 232, 232, 232, 232, 945, 953,
2963 953, 953, 954, 954, 954, 2247, 2219, 955, 955, 955,
2964 956, 956, 956, 957, 957, 957, 2218, 953, 2255, 954,
2965 2256, 2257, 232, 232, 955, 2261, 2269, 956, 1530, 1530,
2966 1530, 957, 2271, 232, 958, 958, 958, 2279, 960, 960,
2967 960, 962, 962, 962, 2280, 232, 274, 2219, 2281, 961,
2968 961, 961, 958, 274, 953, 960, 2282, 2283, 962, 963,
2969 963, 963, 274, 274, 2284, 2290, 961, 2293, 956, 964,
2971 964, 964, 967, 967, 967, 2296, 963, 965, 965, 965,
2972 1531, 1531, 1531, 2297, 969, 969, 969, 964, 2301, 967,
2973 274, 274, 274, 2302, 958, 965, 2303, 274, 274, 961,
2974 274, 274, 969, 2304, 274, 2305, 274, 274, 274, 970,
2975 970, 970, 2290, 961, 965, 2306, 2307, 963, 971, 971,
2976 971, 972, 972, 972, 973, 973, 973, 970, 974, 974,
2977 974, 975, 975, 975, 2291, 971, 2308, 2310, 972, 976,
2978 976, 976, 973, 977, 977, 977, 974, 2311, 975, 978,
2979 978, 978, 979, 979, 979, 2312, 976, 984, 984, 984,
2980 977, 985, 985, 985, 970, 2313, 2314, 978, 2315, 2291,
2982 979, 2316, 988, 988, 988, 984, 989, 989, 989, 985,
2983 990, 990, 990, 992, 992, 992, 993, 993, 993, 976,
2984 988, 994, 994, 994, 989, 2317, 2319, 990, 974, 2325,
2985 2329, 992, 2330, 976, 993, 995, 995, 995, 994, 995,
2986 2331, 2332, 995, 997, 997, 997, 998, 998, 998, 1013,
2987 1013, 1013, 979, 2339, 985, 1014, 1014, 1014, 1043, 1043,
2988 1043, 997, 2342, 2349, 998, 2350, 2351, 1013, 2352, 989,
2989 1016, 1016, 1016, 1014, 2353, 1043, 993, 1044, 1044, 1044,
2990 1045, 1045, 1045, 1047, 1047, 1047, 2354, 2344, 1016, 1048,
2991 1048, 1048, 1049, 1049, 1049, 1044, 1049, 2344, 1045, 1049,
2993 2365, 1047, 1052, 1052, 1052, 2366, 1048, 2367, 2345, 998,
2994 1054, 1054, 1054, 1055, 1055, 1055, 2347, 1016, 2345, 1052,
2995 1057, 1057, 1057, 1059, 1059, 1059, 2347, 1059, 1054, 2357,
2996 1059, 1055, 1047, 1062, 1062, 1062, 2368, 2369, 1057, 1063,
2997 1063, 1063, 2370, 1063, 2371, 2372, 1063, 1064, 1064, 1064,
2998 1062, 1065, 1065, 1065, 1066, 1066, 1066, 2375, 1066, 2376,
2999 2378, 1066, 1052, 2357, 1064, 2379, 2380, 1057, 1065, 1068,
3000 1068, 1068, 1070, 1070, 1070, 1071, 1071, 1071, 1073, 1073,
3001 1073, 1076, 1076, 1076, 2348, 2382, 1068, 1078, 1078, 1078,
3002 1070, 2390, 2391, 1071, 2348, 2392, 1073, 2394, 1076, 1079,
3004 1079, 1079, 1081, 1081, 1081, 1078, 1082, 1082, 1082, 2400,
3005 1082, 2401, 2402, 1082, 1086, 1086, 1086, 1079, 2403, 2404,
3006 1081, 1087, 1087, 1087, 1089, 1089, 1089, 1101, 1101, 1101,
3007 2405, 1101, 1086, 2406, 1101, 2407, 2408, 1073, 2409, 1087,
3008 2411, 2412, 1089, 1105, 1105, 1105, 1106, 1106, 1106, 1081,
3009 1107, 1107, 1107, 1109, 1109, 1109, 1115, 1115, 1115, 2426,
3010 1105, 1116, 1116, 1116, 1106, 1111, 1111, 1111, 1107, 1111,
3011 2427, 1109, 1111, 2428, 1115, 1118, 1118, 1118, 2429, 1116,
3012 1119, 1119, 1119, 2417, 1119, 2430, 2431, 1119, 1122, 1122,
3013 1122, 2432, 2433, 1118, 1123, 1123, 1123, 1124, 1124, 1124,
3015 1126, 1126, 1126, 2437, 2438, 1122, 1127, 1127, 1127, 1128,
3016 1128, 1128, 1123, 1109, 2439, 1124, 2440, 2441, 1126, 2442,
3017 1129, 1129, 1129, 1127, 2447, 2417, 1128, 1130, 1130, 1130,
3018 1132, 1132, 1132, 2448, 2449, 1118, 2452, 1128, 1129, 1135,
3019 1135, 1135, 1136, 1136, 1136, 1130, 1136, 2457, 1132, 1136,
3020 1141, 1141, 1141, 1142, 1142, 1142, 1135, 1144, 1144, 1144,
3021 1151, 1151, 1151, 2458, 1151, 2459, 1126, 1151, 1141, 2460,
3022 2461, 1142, 1154, 1154, 1154, 1144, 1155, 1155, 1155, 2462,
3023 1155, 2463, 2464, 1155, 1158, 1158, 1158, 2465, 2466, 1154,
3024 1159, 1159, 1159, 2467, 1159, 1132, 2468, 1159, 1167, 1167,
3026 1167, 1158, 1168, 1168, 1168, 1170, 1170, 1170, 1175, 1175,
3027 1175, 2473, 1175, 2470, 2476, 1175, 1167, 1178, 1178, 1178,
3028 1168, 1144, 2473, 1170, 1179, 1179, 1179, 2479, 1179, 2480,
3029 2483, 1179, 2485, 2472, 1178, 1182, 1182, 1182, 1183, 1183,
3030 1183, 1185, 1185, 1185, 1187, 1187, 1187, 2472, 1187, 2486,
3031 2488, 1187, 2489, 1182, 2492, 2493, 1183, 2494, 2470, 1185,
3032 1190, 1190, 1190, 1191, 1191, 1191, 1193, 1193, 1193, 2498,
3033 2496, 1170, 1195, 1195, 1195, 2506, 1195, 2508, 1190, 1195,
3034 2510, 1191, 2496, 2512, 1193, 1201, 1201, 1201, 1202, 1202,
3035 1202, 2522, 1185, 1204, 1204, 1204, 1205, 1205, 1205, 2524,
3037 1206, 1206, 1206, 1201, 1206, 2497, 1202, 1206, 1207, 1207,
3038 1207, 1204, 2526, 1205, 1208, 1208, 1208, 2497, 1208, 2519,
3039 2527, 1208, 1210, 1210, 1210, 1207, 1211, 1211, 1211, 1213,
3040 1213, 1213, 1193, 1215, 1215, 1215, 1219, 1219, 1219, 2503,
3041 1210, 1216, 1216, 1216, 1211, 1216, 2520, 1213, 1216, 2528,
3042 1215, 2503, 1204, 1219, 1220, 1220, 1220, 2529, 1220, 2519,
3043 2520, 1220, 1222, 1222, 1222, 1223, 1223, 1223, 1225, 1225,
3044 1225, 1227, 1227, 1227, 2523, 1227, 2521, 2521, 1227, 2538,
3045 1222, 2504, 2540, 1223, 2543, 2523, 1225, 1230, 1230, 1230,
3046 1231, 1231, 1231, 2504, 2537, 1213, 1233, 1233, 1233, 1234,
3048 1234, 1234, 1235, 1235, 1235, 1230, 1235, 2539, 1231, 1235,
3049 1236, 1236, 1236, 2537, 1233, 2545, 1234, 1237, 1237, 1237,
3050 2551, 1237, 2552, 2553, 1237, 2555, 2539, 1236, 1238, 1238,
3051 1238, 1225, 1239, 1239, 1239, 1241, 1241, 1241, 2542, 1242,
3052 1242, 1242, 1246, 1246, 1246, 2556, 1238, 1243, 1243, 1243,
3053 1239, 1243, 2557, 1241, 1243, 1233, 1242, 2542, 2558, 1246,
3054 1247, 1247, 1247, 2565, 1247, 2566, 2567, 1247, 1248, 1248,
3055 1248, 1249, 1249, 1249, 1251, 1251, 1251, 1253, 1253, 1253,
3056 1256, 1256, 1256, 1257, 1257, 1257, 1248, 2568, 2569, 1249,
3057 2570, 2573, 1251, 2574, 1253, 2575, 1241, 2576, 1256, 2577,
3059 2544, 1257, 1259, 1259, 1259, 1262, 1262, 1262, 1263, 1263,
3060 1263, 1265, 1265, 1265, 1266, 1266, 1266, 2578, 1266, 2544,
3061 1259, 1266, 2580, 1262, 2582, 2584, 1263, 2594, 2595, 1265,
3062 1269, 1269, 1269, 2592, 2596, 1251, 1270, 1270, 1270, 1272,
3063 1272, 1272, 1273, 1273, 1273, 2592, 1273, 2597, 1269, 1273,
3064 1277, 1277, 1277, 2598, 1270, 2599, 2603, 1272, 1278, 1278,
3065 1278, 2604, 1259, 2593, 1265, 1280, 1280, 1280, 1277, 1282,
3066 1282, 1282, 1289, 1289, 1289, 2593, 1278, 1315, 1315, 1315,
3067 1568, 1568, 1568, 1280, 1318, 1318, 1318, 1282, 1282, 2605,
3068 1289, 1317, 1317, 1317, 1315, 1316, 1316, 1316, 1272, 1316,
3070 2606, 1318, 1316, 1319, 1319, 1319, 2607, 1319, 2608, 1317,
3071 1319, 1322, 1322, 1322, 1324, 1324, 1324, 2611, 1324, 2612,
3072 2613, 1324, 1327, 1327, 1327, 1280, 1328, 1328, 1328, 1322,
3073 1328, 2614, 2615, 1328, 1329, 1329, 1329, 1289, 1329, 1327,
3074 2616, 1329, 1333, 1333, 1333, 1334, 1334, 1334, 1317, 1334,
3075 2617, 2618, 1334, 1336, 1336, 1336, 1339, 1339, 1339, 1333,
3076 1322, 1340, 1340, 1340, 2619, 1340, 2620, 2621, 1340, 2622,
3077 2623, 1336, 2609, 1339, 1341, 1341, 1341, 1342, 1342, 1342,
3078 1344, 1344, 1344, 1357, 1357, 1357, 2624, 1358, 1358, 1358,
3079 2625, 1341, 1359, 1359, 1359, 1342, 1359, 2609, 1344, 1359,
3081 1357, 2626, 2627, 1336, 1358, 1360, 1360, 1360, 2628, 1363,
3082 1363, 1363, 1364, 1364, 1364, 1365, 1365, 1365, 2632, 1365,
3083 2629, 2633, 1365, 1360, 2634, 2635, 1342, 1363, 2636, 1364,
3084 1366, 1366, 1366, 1367, 1367, 1367, 1368, 1368, 1368, 2629,
3085 1368, 2637, 2638, 1368, 1370, 1370, 1370, 2639, 1366, 2640,
3086 1367, 2641, 1373, 1373, 1373, 2642, 1374, 1374, 1374, 2643,
3087 1374, 2644, 1370, 1374, 1375, 1375, 1375, 2645, 1360, 1373,
3088 2646, 2647, 1363, 1376, 1376, 1376, 1377, 1377, 1377, 2649,
3089 2648, 1375, 1381, 1381, 1381, 1384, 1384, 1384, 2650, 1366,
3090 1376, 1385, 1385, 1385, 1377, 1385, 2651, 2652, 1385, 1381,
3092 2648, 2653, 1384, 2654, 1370, 1386, 1386, 1386, 2655, 1386,
3093 2656, 2657, 1386, 1389, 1389, 1389, 1396, 1396, 1396, 1376,
3094 1398, 1398, 1398, 2658, 1401, 1401, 1401, 2659, 1401, 2660,
3095 1389, 1401, 2661, 2662, 1396, 2663, 2664, 1398, 1404, 1404,
3096 1404, 1377, 1406, 1406, 1406, 1408, 1408, 1408, 1412, 1412,
3097 1412, 1413, 1413, 1413, 2666, 1404, 2665, 1414, 1414, 1414,
3098 1406, 1414, 2665, 1408, 1414, 1412, 1417, 1417, 1417, 1413,
3099 1417, 2667, 2668, 1417, 1421, 1421, 1421, 1423, 1423, 1423,
3100 1396, 1423, 2669, 2670, 1423, 2671, 1428, 1428, 1428, 2673,
3101 1428, 2674, 1421, 1428, 1412, 1432, 1432, 1432, 1434, 1434,
3103 1434, 2676, 1435, 1435, 1435, 1406, 1435, 1413, 2677, 1435,
3104 1408, 2679, 2680, 1432, 2683, 2684, 1434, 1438, 1438, 1438,
3105 2682, 1438, 2685, 2686, 1438, 1441, 1441, 1441, 1442, 1442,
3106 1442, 2688, 1442, 2690, 2682, 1442, 1452, 1452, 1452, 1421,
3107 1447, 1447, 1447, 1441, 1447, 2692, 2694, 1447, 1450, 1450,
3108 1450, 2696, 2697, 1452, 1434, 1432, 1453, 1453, 1453, 2698,
3109 1453, 2699, 2700, 1453, 2701, 2702, 1450, 1456, 1456, 1456,
3110 2703, 2705, 1441, 1458, 1458, 1458, 1459, 1459, 1459, 1460,
3111 1460, 1460, 1461, 1461, 1461, 1456, 1462, 1462, 1462, 2707,
3112 1458, 1472, 1472, 1472, 1459, 1450, 2709, 1460, 2710, 1461,
3114 1465, 1465, 1465, 2711, 1462, 2712, 1491, 1491, 1491, 1472,
3115 1498, 1498, 1498, 1499, 1499, 1499, 1456, 1499, 1465, 2713,
3116 1499, 1502, 1502, 1502, 2714, 1503, 1503, 1503, 2739, 1503,
3117 1471, 1460, 1503, 2733, 2721, 1508, 1508, 1508, 2722, 1502,
3118 2753, 2725, 1459, 1472, 1518, 1518, 1518, 1462, 1524, 1524,
3119 1524, 1465, 1491, 1508, 2735, 2713, 1498, 1510, 1510, 1510,
3120 2714, 1510, 1518, 2739, 1510, 1524, 2729, 1465, 1514, 1514,
3121 1514, 2723, 1514, 2724, 2729, 1514, 1521, 1521, 1521, 2733,
3122 1521, 2721, 2753, 1521, 2725, 2722, 1508, 1502, 1525, 1525,
3123 1525, 2735, 1525, 1470, 2730, 1525, 1526, 1526, 1526, 1532,
3125 1532, 1532, 2730, 2726, 1518, 1536, 1536, 1536, 1537, 1537,
3126 1537, 1539, 1539, 1539, 1526, 1540, 1540, 1540, 2723, 1540,
3127 2724, 2731, 1540, 1541, 1541, 1541, 2740, 1541, 1539, 2731,
3128 1541, 1544, 1544, 1544, 1546, 1546, 1546, 1547, 1547, 1547,
3129 2727, 1548, 1548, 1548, 2727, 1548, 2726, 1526, 1548, 1544,
3130 2734, 1546, 1551, 1551, 1551, 1547, 1552, 1552, 1552, 2732,
3131 1552, 2740, 1532, 1552, 1555, 1555, 1555, 2732, 1536, 2736,
3132 1551, 1537, 1556, 1556, 1556, 1559, 1559, 1559, 1544, 1559,
3133 2754, 1555, 1559, 1467, 1547, 1562, 1562, 1562, 2737, 2743,
3134 1556, 1563, 1563, 1563, 2738, 1563, 2734, 2741, 1563, 1564,
3136 1564, 1564, 1562, 1565, 1565, 1565, 2736, 1565, 2745, 2742,
3137 1565, 1567, 1567, 1567, 2728, 2744, 1564, 1551, 2728, 1571,
3138 1571, 1571, 2754, 1572, 1572, 1572, 2743, 1572, 2737, 1567,
3139 1572, 1573, 1573, 1573, 2738, 1556, 1571, 1575, 1575, 1575,
3140 2745, 1575, 2741, 2749, 1575, 1578, 1578, 1578, 1573, 1579,
3141 1579, 1579, 2744, 1579, 2742, 1464, 1579, 1580, 1580, 1580,
3142 1457, 2750, 1578, 1585, 1585, 1585, 1586, 1586, 1586, 1588,
3143 1588, 1588, 2747, 2746, 1580, 1589, 1589, 1589, 2749, 1589,
3144 1585, 2747, 1589, 2751, 1586, 2755, 1588, 1590, 1590, 1590,
3145 1592, 1592, 1592, 1593, 1593, 1593, 2750, 1593, 2765, 1455,
3147 1593, 1595, 1595, 1595, 1590, 2746, 2756, 1592, 1597, 1597,
3148 1597, 1601, 1601, 1601, 1602, 1602, 1602, 2751, 1602, 1595,
3149 2748, 1602, 1604, 1604, 1604, 2757, 1597, 2771, 1601, 2748,
3150 2755, 1586, 1606, 1606, 1606, 1608, 1608, 1608, 1454, 2765,
3151 1604, 1609, 1609, 1609, 1610, 1610, 1610, 1611, 1611, 1611,
3152 1606, 2756, 1608, 1613, 1613, 1613, 2771, 2761, 1609, 1597,
3153 2757, 1610, 1614, 1614, 1614, 1611, 2761, 1615, 1615, 1615,
3154 2762, 1613, 1616, 1616, 1616, 1617, 1617, 1617, 2752, 2762,
3155 1614, 2763, 1451, 1606, 1615, 1624, 1624, 1624, 2775, 1616,
3156 1619, 1619, 1619, 1617, 1619, 2758, 2764, 1619, 2769, 1613,
3158 1626, 1626, 1626, 1624, 1627, 1627, 1627, 1610, 1627, 2772,
3159 1446, 1627, 2752, 1611, 1628, 1628, 1628, 1626, 2763, 1629,
3160 1629, 1629, 2775, 1630, 1630, 1630, 1614, 1631, 1631, 1631,
3161 2758, 1631, 1628, 2764, 1631, 2769, 1624, 1629, 2772, 1617,
3162 1630, 1632, 1632, 1632, 1638, 1638, 1638, 1639, 1639, 1639,
3163 1644, 1644, 1644, 1647, 1647, 1647, 1651, 1651, 1651, 1632,
3164 2766, 1638, 1652, 1652, 1652, 1639, 1653, 1653, 1653, 1655,
3165 1655, 1655, 1628, 2759, 1629, 1657, 1657, 1657, 1658, 1658,
3166 1658, 1662, 1662, 1662, 1664, 1664, 1664, 1667, 1667, 1667,
3167 2803, 1669, 1669, 1669, 1671, 1671, 1671, 1672, 1672, 1672,
3169 2760, 2766, 1664, 1445, 2803, 1667, 2759, 1639, 1669, 1681,
3170 1681, 1681, 1671, 1681, 1672, 1433, 1681, 1684, 1684, 1684,
3171 1685, 1685, 1685, 1688, 1688, 1688, 1689, 1689, 1689, 1693,
3172 1693, 1693, 2770, 2760, 1664, 1684, 2779, 1685, 1694, 1694,
3173 1694, 2767, 1694, 2768, 2779, 1694, 1693, 1697, 1697, 1697,
3174 2773, 2777, 1671, 1698, 1698, 1698, 1699, 1699, 1699, 2773,
3175 1700, 1700, 1700, 1684, 1700, 1697, 2781, 1700, 1431, 2770,
3176 1698, 2778, 2787, 1699, 1701, 1701, 1701, 1702, 1702, 1702,
3177 1703, 1703, 1703, 1704, 1704, 1704, 2767, 1704, 2768, 2774,
3178 1704, 1427, 1701, 1426, 2783, 1702, 2777, 1703, 2774, 2776,
3180 1697, 1705, 1705, 1705, 1708, 1708, 1708, 2787, 1708, 2782,
3181 2780, 1708, 2781, 1711, 1711, 1711, 2778, 1711, 2780, 1705,
3182 1711, 1715, 1715, 1715, 1717, 1717, 1717, 1701, 1720, 1720,
3183 1720, 2783, 1720, 2776, 2789, 1720, 1723, 1723, 1723, 1715,
3184 1724, 1724, 1724, 2790, 1724, 2784, 2788, 1724, 1705, 1420,
3185 1726, 1726, 1726, 1723, 1726, 2782, 2785, 1726, 1729, 1729,
3186 1729, 1730, 1730, 1730, 2786, 1730, 1411, 1410, 1730, 1731,
3187 1731, 1731, 1735, 1735, 1735, 1729, 1736, 1736, 1736, 2789,
3188 1736, 2788, 2784, 1736, 2793, 1409, 1731, 2794, 2790, 1735,
3189 1737, 1737, 1737, 1739, 1739, 1739, 2785, 1739, 2791, 2792,
3191 1739, 1742, 1742, 1742, 2786, 1743, 1743, 1743, 1737, 1743,
3192 2799, 2797, 1743, 1745, 1745, 1745, 2793, 1745, 1742, 2794,
3193 1745, 1749, 1749, 1749, 1752, 1752, 1752, 1754, 1754, 1754,
3194 1756, 1756, 1756, 2798, 1756, 2791, 2792, 1756, 2800, 1749,
3195 2801, 1737, 1752, 2797, 1754, 1760, 1760, 1760, 1763, 1763,
3196 1763, 1765, 1765, 1765, 1766, 1766, 1766, 2799, 1766, 1407,
3197 1405, 1766, 1400, 1760, 1399, 2798, 1763, 1397, 1765, 1767,
3198 1767, 1767, 2801, 1754, 1768, 1768, 1768, 1395, 1768, 1394,
3199 1393, 1768, 1770, 1770, 1770, 2800, 1767, 1752, 1772, 1772,
3200 1772, 1773, 1773, 1773, 1774, 1774, 1774, 1775, 1775, 1775,
3202 1770, 1775, 1392, 1391, 1775, 1390, 1772, 2802, 1383, 1773,
3203 1382, 1774, 1776, 1776, 1776, 1777, 1777, 1777, 1380, 1777,
3204 1379, 2795, 1777, 1778, 1778, 1778, 1782, 1782, 1782, 1776,
3205 2795, 1784, 1784, 1784, 2796, 1784, 1378, 1772, 1784, 2802,
3206 1372, 1778, 1371, 2796, 1782, 1369, 1362, 1770, 1787, 1787,
3207 1787, 1788, 1788, 1788, 2804, 1773, 1789, 1789, 1789, 1361,
3208 1789, 1356, 1355, 1789, 1354, 2804, 1787, 1353, 1352, 1788,
3209 1792, 1792, 1792, 1351, 1798, 1798, 1798, 1799, 1799, 1799,
3210 1350, 1799, 1347, 1346, 1799, 1343, 1338, 1778, 1792, 1335,
3211 1782, 1798, 1800, 1800, 1800, 1801, 1801, 1801, 1332, 1787,
3213 1805, 1805, 1805, 1323, 1788, 1806, 1806, 1806, 1321, 1320,
3214 1800, 1807, 1807, 1807, 1811, 1811, 1811, 1812, 1812, 1812,
3215 1813, 1813, 1813, 1814, 1814, 1814, 1816, 1816, 1816, 1817,
3216 1817, 1817, 1818, 1818, 1818, 1819, 1819, 1819, 1820, 1820,
3217 1820, 1822, 1822, 1822, 1825, 1825, 1825, 1828, 1828, 1828,
3218 1829, 1829, 1829, 1314, 1829, 1800, 1313, 1829, 1311, 1822,
3219 1310, 1309, 1825, 1308, 1828, 1831, 1831, 1831, 1307, 1814,
3220 1832, 1832, 1832, 1833, 1833, 1833, 1306, 1833, 1305, 1304,
3221 1833, 1302, 1301, 1831, 1844, 1844, 1844, 1832, 1845, 1845,
3222 1845, 1299, 1822, 1846, 1846, 1846, 1298, 1846, 1296, 1294,
3224 1846, 1293, 1844, 1292, 1291, 1845, 1847, 1847, 1847, 1850,
3225 1850, 1850, 1851, 1851, 1851, 1852, 1852, 1852, 1853, 1853,
3226 1853, 1290, 1853, 1288, 1287, 1853, 1854, 1854, 1854, 1855,
3227 1855, 1855, 1852, 1844, 1856, 1856, 1856, 1286, 1856, 1285,
3228 1276, 1856, 1261, 1260, 1854, 1255, 1855, 1857, 1857, 1857,
3229 1254, 1857, 1252, 1245, 1857, 1860, 1860, 1860, 1851, 1244,
3230 1861, 1861, 1861, 1863, 1863, 1863, 1226, 1863, 1221, 1218,
3231 1863, 1217, 1214, 1860, 1866, 1866, 1866, 1854, 1861, 1874,
3232 1874, 1874, 1209, 1874, 1200, 1199, 1874, 1878, 1878, 1878,
3233 1198, 1878, 1866, 1194, 1878, 1881, 1881, 1881, 1882, 1882,
3235 1882, 1186, 1882, 1181, 1180, 1882, 1860, 1886, 1886, 1886,
3236 1174, 1886, 1881, 1173, 1886, 1889, 1889, 1889, 1891, 1891,
3237 1891, 1172, 1891, 1171, 1166, 1891, 1165, 1866, 1897, 1897,
3238 1897, 1164, 1163, 1889, 1899, 1899, 1899, 1900, 1900, 1900,
3239 1162, 1900, 1161, 1160, 1900, 1150, 1897, 1907, 1907, 1907,
3240 1149, 1899, 1910, 1910, 1910, 1148, 1910, 1147, 1146, 1910,
3241 1913, 1913, 1913, 1145, 1913, 1907, 1140, 1913, 1917, 1917,
3242 1917, 1919, 1919, 1919, 1920, 1920, 1920, 1139, 1889, 1134,
3243 1921, 1921, 1921, 1133, 1921, 1114, 1917, 1921, 1110, 1919,
3244 1104, 1100, 1920, 1924, 1924, 1924, 1099, 1924, 1098, 1097,
3246 1924, 1096, 1927, 1927, 1927, 1095, 1928, 1928, 1928, 1094,
3247 1920, 1929, 1929, 1929, 1930, 1930, 1930, 1093, 1092, 1917,
3248 1927, 1091, 1927, 1928, 1931, 1931, 1931, 1090, 1929, 1085,
3249 1077, 1930, 1933, 1933, 1933, 1075, 1919, 1934, 1934, 1934,
3250 1069, 1067, 1931, 1935, 1935, 1935, 1938, 1938, 1938, 1058,
3251 1933, 1053, 1939, 1939, 1939, 1934, 1939, 1042, 1040, 1939,
3252 1039, 1935, 1929, 1942, 1942, 1942, 1943, 1943, 1943, 1944,
3253 1944, 1944, 1930, 1947, 1947, 1947, 1948, 1948, 1948, 1038,
3254 1036, 1942, 1949, 1949, 1949, 1950, 1950, 1950, 1931, 1035,
3255 1034, 1933, 1951, 1951, 1951, 1952, 1952, 1952, 1953, 1953,
3257 1953, 1956, 1956, 1956, 1957, 1957, 1957, 1958, 1958, 1958,
3258 1960, 1960, 1960, 1963, 1963, 1963, 1964, 1964, 1964, 1033,
3259 1964, 1942, 1032, 1964, 1967, 1967, 1967, 1031, 1960, 1029,
3260 1963, 1968, 1968, 1968, 1028, 1970, 1970, 1970, 1027, 1970,
3261 1026, 1967, 1970, 1983, 1983, 1983, 1984, 1984, 1984, 1968,
3262 1984, 1025, 1024, 1984, 1987, 1987, 1987, 1990, 1990, 1990,
3263 1023, 1983, 1992, 1992, 1992, 1022, 1992, 1021, 1020, 1992,
3264 1995, 1995, 1995, 1996, 1996, 1996, 1019, 1996, 1018, 1012,
3265 1996, 1999, 1999, 1999, 2000, 2000, 2000, 1011, 1995, 1967,
3266 2008, 2008, 2008, 2011, 2011, 2011, 1010, 2011, 1007, 1999,
3268 2011, 1006, 2000, 1983, 2014, 2014, 2014, 2017, 2017, 2017,
3269 2022, 2022, 2022, 2024, 2024, 2024, 1995, 2036, 2036, 2036,
3270 1005, 2014, 2025, 2025, 2025, 2017, 2025, 1003, 2022, 2025,
3271 2024, 2038, 2038, 2038, 999, 2000, 2039, 2039, 2039, 2040,
3272 2040, 2040, 2041, 2041, 2041, 2042, 2042, 2042, 996, 2038,
3273 2043, 2043, 2043, 2039, 2044, 2044, 2044, 2040, 2044, 2024,
3274 2041, 2044, 987, 2042, 2045, 2045, 2045, 2043, 2046, 2046,
3275 2046, 2047, 2047, 2047, 2048, 2048, 2048, 2049, 2049, 2049,
3276 986, 2045, 2042, 983, 982, 2046, 2050, 2050, 2050, 2047,
3277 2052, 2052, 2052, 981, 980, 2049, 966, 959, 2040, 2055,
3279 2055, 2055, 2041, 951, 2050, 2056, 2056, 2056, 2052, 2057,
3280 2057, 2057, 2060, 2060, 2060, 2061, 2061, 2061, 950, 2046,
3281 2062, 2062, 2062, 2056, 949, 2066, 2066, 2066, 2069, 2069,
3282 2069, 2070, 2070, 2070, 946, 2070, 941, 938, 2070, 2071,
3283 2071, 2071, 2049, 2066, 937, 2069, 2082, 2082, 2082, 933,
3284 931, 2052, 2086, 2086, 2086, 928, 2071, 2087, 2087, 2087,
3285 2089, 2089, 2089, 927, 2082, 2096, 2096, 2096, 926, 925,
3286 2086, 2097, 2097, 2097, 924, 2087, 923, 922, 2089, 2100,
3287 2100, 2100, 2096, 2101, 2101, 2101, 918, 2101, 914, 913,
3288 2101, 2103, 2103, 2103, 2071, 912, 2100, 2104, 2104, 2104,
3290 909, 2108, 2108, 2108, 908, 2082, 905, 904, 2103, 2110,
3291 2110, 2110, 2111, 2111, 2111, 2104, 2111, 2086, 2108, 2111,
3292 2119, 2119, 2119, 2121, 2121, 2121, 2110, 2123, 2123, 2123,
3293 2125, 2125, 2125, 903, 2126, 2126, 2126, 2119, 2126, 900,
3294 899, 2126, 2127, 2127, 2127, 2123, 896, 2125, 2128, 2128,
3295 2128, 891, 2129, 2129, 2129, 2130, 2130, 2130, 888, 2130,
3296 2127, 885, 2130, 2133, 2133, 2133, 2128, 2134, 2134, 2134,
3297 2129, 2134, 884, 881, 2134, 2135, 2135, 2135, 880, 879,
3298 2133, 2136, 2136, 2136, 2138, 2138, 2138, 2139, 2139, 2139,
3299 878, 877, 2135, 2143, 2143, 2143, 2150, 2150, 2150, 2136,
3301 2151, 2151, 2151, 875, 2151, 2139, 874, 2151, 2154, 2154,
3302 2154, 2143, 873, 2150, 2128, 2129, 2165, 2165, 2165, 2169,
3303 2169, 2169, 2170, 2170, 2170, 2154, 2173, 2173, 2173, 2176,
3304 2176, 2176, 872, 871, 2165, 867, 862, 2169, 861, 860,
3305 2170, 859, 856, 2173, 855, 854, 2176, 2177, 2177, 2177,
3306 852, 2177, 848, 844, 2177, 2180, 2180, 2180, 843, 2180,
3307 840, 837, 2180, 2184, 2184, 2184, 836, 835, 2154, 2185,
3308 2185, 2185, 834, 2185, 833, 2165, 2185, 2187, 2187, 2187,
3309 2184, 2188, 2188, 2188, 2189, 2189, 2189, 832, 2189, 2169,
3310 830, 2189, 829, 828, 2187, 2190, 2190, 2190, 2188, 2191,
3312 2191, 2191, 827, 2191, 826, 825, 2191, 2199, 2199, 2199,
3313 824, 823, 2190, 2200, 2200, 2200, 822, 2200, 821, 820,
3314 2200, 2201, 2201, 2201, 2199, 2202, 2202, 2202, 2203, 2203,
3315 2203, 819, 2203, 818, 817, 2203, 816, 815, 2201, 2206,
3316 2206, 2206, 2202, 2208, 2208, 2208, 2209, 2209, 2209, 2210,
3317 2210, 2210, 814, 2210, 813, 809, 2210, 2206, 2213, 2213,
3318 2213, 2208, 808, 806, 2209, 2214, 2214, 2214, 805, 2214,
3319 804, 803, 2214, 802, 798, 2213, 2215, 2215, 2215, 2221,
3320 2221, 2221, 2225, 2225, 2225, 2226, 2226, 2226, 796, 2226,
3321 795, 794, 2226, 793, 2215, 2233, 2233, 2233, 789, 2225,
3323 2244, 2244, 2244, 2246, 2246, 2246, 2209, 785, 2208, 2248,
3324 2248, 2248, 2233, 2249, 2249, 2249, 784, 781, 2244, 2250,
3325 2250, 2250, 2251, 2251, 2251, 780, 2251, 2248, 779, 2251,
3326 2249, 2252, 2252, 2252, 778, 2252, 2250, 777, 2252, 2258,
3327 2258, 2258, 776, 2258, 773, 772, 2258, 2262, 2262, 2262,
3328 771, 2244, 770, 767, 2233, 766, 2263, 2263, 2263, 2249,
3329 2263, 765, 762, 2263, 2262, 2264, 2264, 2264, 760, 2264,
3330 2248, 757, 2264, 2267, 2267, 2267, 2268, 2268, 2268, 756,
3331 2268, 755, 754, 2268, 2270, 2270, 2270, 2272, 2272, 2272,
3332 2267, 2272, 753, 750, 2272, 2275, 2275, 2275, 2276, 2276,
3334 2276, 2270, 2276, 749, 748, 2276, 2277, 2277, 2277, 2278,
3335 2278, 2278, 2275, 2278, 747, 746, 2278, 2285, 2285, 2285,
3336 2286, 2286, 2286, 2277, 2287, 2287, 2287, 743, 2287, 742,
3337 741, 2287, 2292, 2292, 2292, 2285, 740, 738, 2286, 2294,
3338 2294, 2294, 2295, 2295, 2295, 2309, 2309, 2309, 735, 2292,
3339 2292, 2298, 2298, 2298, 733, 2298, 730, 729, 2298, 2318,
3340 2318, 2318, 2309, 2320, 2320, 2320, 728, 727, 2285, 2321,
3341 2321, 2321, 2322, 2322, 2322, 725, 724, 2318, 2323, 2323,
3342 2323, 2324, 2324, 2324, 723, 2324, 2286, 720, 2324, 719,
3343 2322, 718, 2326, 2326, 2326, 2323, 2326, 717, 716, 2326,
3345 2333, 2333, 2333, 715, 2333, 714, 713, 2333, 2318, 2336,
3346 2336, 2336, 712, 2336, 710, 708, 2336, 2340, 2340, 2340,
3347 2341, 2341, 2341, 2322, 2341, 707, 703, 2341, 2343, 2343,
3348 2343, 702, 2343, 701, 2340, 2343, 2346, 2346, 2346, 698,
3349 2346, 695, 694, 2346, 2355, 2355, 2355, 2356, 2356, 2356,
3350 2358, 2358, 2358, 2359, 2359, 2359, 2360, 2360, 2360, 693,
3351 2360, 690, 2355, 2360, 689, 2356, 685, 2358, 2358, 684,
3352 2359, 2359, 682, 679, 2360, 2361, 2361, 2361, 2362, 2362,
3353 2362, 2363, 2363, 2363, 2364, 2364, 2364, 2373, 2373, 2373,
3354 2374, 2374, 2374, 678, 2374, 677, 675, 2374, 2383, 2383,
3356 2383, 2384, 2384, 2384, 2373, 2385, 2385, 2385, 2386, 2386,
3357 2386, 670, 2356, 2387, 2387, 2387, 2383, 2387, 669, 668,
3358 2387, 2393, 2393, 2393, 667, 665, 2386, 2395, 2395, 2395,
3359 2396, 2396, 2396, 664, 2396, 663, 662, 2396, 2393, 2399,
3360 2399, 2399, 661, 660, 2395, 656, 2414, 2414, 2414, 2416,
3361 2416, 2416, 2418, 2418, 2418, 655, 2399, 654, 2419, 2419,
3362 2419, 653, 2419, 2383, 2414, 2419, 649, 2416, 648, 2418,
3363 2418, 2420, 2420, 2420, 647, 2420, 2419, 646, 2420, 2423,
3364 2423, 2423, 2424, 2424, 2424, 2425, 2425, 2425, 645, 2420,
3365 2434, 2434, 2434, 644, 2434, 643, 641, 2434, 638, 637,
3367 2416, 2421, 2421, 2421, 2421, 2421, 2421, 2421, 2421, 2421,
3368 635, 633, 2421, 2443, 2443, 2443, 630, 2421, 2421, 2421,
3369 2421, 2421, 2444, 2444, 2444, 2445, 2445, 2445, 2450, 2450,
3370 2450, 2443, 2451, 2451, 2451, 629, 2451, 623, 621, 2451,
3371 2453, 2453, 2453, 2445, 619, 2450, 2421, 2421, 2422, 2422,
3372 2422, 2422, 2422, 2422, 2422, 2422, 2422, 2453, 616, 2422,
3373 2455, 2455, 2455, 615, 2422, 2422, 2422, 2422, 2422, 2454,
3374 2454, 2454, 611, 2454, 610, 609, 2454, 2455, 2456, 2456,
3375 2456, 607, 2456, 606, 605, 2456, 2469, 2469, 2469, 2490,
3376 2490, 2490, 604, 2422, 2422, 2471, 2471, 2471, 603, 2471,
3378 600, 599, 2471, 598, 2469, 597, 596, 2490, 2517, 2517,
3379 2517, 590, 589, 2471, 2474, 2474, 2474, 2474, 2474, 2474,
3380 2474, 2474, 2474, 587, 581, 2474, 2517, 580, 576, 569,
3381 2474, 2474, 2474, 2474, 2474, 2495, 2495, 2495, 565, 2495,
3382 559, 555, 2495, 2499, 2499, 2499, 551, 2499, 547, 546,
3383 2499, 2502, 2502, 2502, 545, 2502, 544, 540, 2502, 2474,
3384 2474, 2475, 2475, 2475, 2475, 2475, 2475, 2475, 2475, 2475,
3385 536, 533, 2475, 2525, 2525, 2525, 532, 2475, 2475, 2475,
3386 2475, 2475, 2534, 2534, 2534, 2535, 2535, 2535, 2536, 2536,
3387 2536, 2525, 2525, 2541, 2541, 2541, 2550, 2550, 2550, 2534,
3389 531, 527, 2535, 523, 520, 2536, 2475, 2475, 519, 515,
3390 2541, 2554, 2554, 2554, 2550, 2559, 2559, 2559, 2560, 2560,
3391 2560, 509, 2560, 508, 504, 2560, 2561, 2561, 2561, 2554,
3392 500, 496, 2559, 2562, 2562, 2562, 495, 2562, 491, 488,
3393 2562, 487, 482, 2561, 2563, 2563, 2563, 2564, 2564, 2564,
3394 478, 2564, 470, 469, 2564, 2571, 2571, 2571, 2579, 2579,
3395 2579, 2563, 2554, 2572, 2572, 2572, 468, 2572, 464, 458,
3396 2572, 457, 2571, 2585, 2585, 2585, 2579, 2585, 453, 447,
3397 2585, 2588, 2588, 2588, 446, 2588, 445, 444, 2588, 2591,
3398 2591, 2591, 443, 2591, 442, 2579, 2591, 2600, 2600, 2600,
3400 441, 2600, 437, 428, 2600, 2695, 2695, 2695, 2704, 2704,
3401 2704, 427, 2704, 426, 424, 2704, 2805, 2805, 2805, 2806,
3402 2806, 2806, 420, 2695, 416, 412, 2704, 411, 410, 409,
3403 408, 404, 398, 397, 2805, 393, 387, 2806, 2809, 2809,
3404 2809, 2809, 2809, 2809, 2809, 2809, 2809, 2810, 2810, 2810,
3405 2810, 2810, 2810, 2810, 2810, 2810, 2811, 2811, 2811, 2811,
3406 2811, 2811, 2811, 2811, 2811, 2812, 2812, 2812, 2812, 2812,
3407 2812, 2812, 2812, 2812, 2813, 2813, 2813, 2813, 2813, 2813,
3408 2813, 2813, 2813, 2814, 2814, 2814, 2814, 2814, 2814, 2814,
3409 2814, 2814, 2815, 2815, 2815, 2815, 2815, 2815, 2815, 2815,
3411 2815, 2816, 2816, 2816, 2816, 2816, 2816, 2816, 2816, 2816,
3412 2817, 2817, 2817, 2817, 2817, 2817, 2817, 2817, 2817, 2818,
3413 2818, 2818, 2818, 2818, 2818, 2818, 2818, 2818, 2819, 2819,
3414 2819, 2819, 2819, 2819, 2819, 2819, 2819, 2820, 2820, 2820,
3415 2820, 2820, 2820, 2820, 2820, 2820, 2821, 2821, 2821, 2821,
3416 2821, 2821, 2821, 2821, 2821, 2822, 2822, 2822, 2822, 2822,
3417 2822, 2822, 2822, 2822, 2823, 2823, 2823, 2823, 2823, 2823,
3418 2823, 2823, 2823, 2824, 2824, 2824, 2824, 2824, 2824, 2824,
3419 2824, 2824, 2825, 2825, 2825, 2825, 2825, 2825, 2825, 2825,
3420 2825, 2826, 2826, 2826, 2826, 2826, 2826, 2826, 2826, 2826,
3422 2827, 2827, 2827, 2827, 2827, 2827, 2827, 2827, 2827, 2828,
3423 2828, 2828, 2828, 2828, 2828, 2828, 2828, 2828, 2829, 2829,
3424 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2830, 2830, 2830,
3425 2830, 2830, 2830, 2830, 2830, 2830, 2831, 2831, 2831, 2831,
3426 2831, 2831, 2831, 2831, 2831, 2832, 2832, 2832, 2832, 2832,
3427 2832, 2832, 2832, 2832, 2833, 2833, 2833, 2833, 2833, 2833,
3428 2833, 2833, 2833, 2834, 2834, 2834, 2834, 2834, 2834, 2834,
3429 2834, 2834, 2835, 2835, 2835, 2835, 2835, 2835, 2835, 2835,
3430 2835, 2836, 2836, 2836, 2836, 2836, 2836, 2836, 2836, 2836,
3431 2837, 2837, 2837, 2837, 2837, 2837, 2837, 2837, 2837, 2838,
3433 2838, 2838, 2838, 2838, 2838, 2838, 2838, 2838, 2839, 2839,
3434 2839, 2839, 2839, 2839, 2839, 2839, 2839, 2840, 2840, 2840,
3435 2840, 2840, 2840, 2840, 2840, 2840, 2841, 2841, 2841, 2841,
3436 2841, 2841, 2841, 2841, 2841, 2842, 2842, 2842, 2842, 2842,
3437 2842, 2842, 2842, 2842, 2843, 2843, 2843, 2843, 2843, 2843,
3438 2843, 2843, 2843, 2844, 2844, 2844, 2844, 2844, 2844, 2844,
3439 2844, 2844, 2845, 2845, 2845, 2845, 2845, 2845, 2845, 2845,
3440 2845, 2846, 2846, 2846, 2846, 2846, 2846, 2846, 2846, 2846,
3441 2847, 2847, 2847, 2847, 2847, 2847, 2847, 2847, 2847, 2848,
3442 2848, 2848, 2848, 2848, 2848, 2848, 2848, 2848, 2849, 2849,
3444 2849, 2849, 2849, 2849, 2849, 2849, 2849, 2850, 2850, 2850,
3445 2850, 2850, 2850, 2850, 2850, 2850, 2851, 2851, 2851, 2851,
3446 2851, 2851, 2851, 2851, 2851, 2852, 2852, 2852, 2852, 2852,
3447 2852, 2852, 2852, 2852, 2853, 2853, 2853, 2853, 2853, 2853,
3448 2853, 2853, 2853, 2854, 2854, 2854, 2854, 2854, 2854, 2854,
3449 2854, 2854, 2855, 2855, 2855, 2855, 2855, 2855, 2855, 2855,
3450 2855, 2856, 2856, 2856, 2856, 2856, 2856, 2856, 2856, 2856,
3451 2857, 2857, 2857, 2857, 2857, 2857, 2857, 2857, 2857, 2858,
3452 2858, 2858, 2858, 2858, 2858, 2858, 2858, 2858, 2859, 2859,
3453 2859, 2859, 2859, 2859, 2859, 2859, 2859, 2860, 2860, 2860,
3455 2860, 2860, 2860, 2860, 2860, 2860, 2861, 2861, 2861, 2861,
3456 2861, 2861, 2861, 2861, 2861, 2862, 2862, 2862, 386, 382,
3457 375, 2862, 2863, 2863, 2863, 374, 373, 369, 2863, 2864,
3458 2864, 2864, 362, 361, 360, 2864, 2865, 2865, 2865, 359,
3459 355, 351, 2865, 2866, 2866, 2866, 346, 338, 337, 2866,
3460 2867, 2867, 2867, 333, 327, 326, 2867, 2868, 2868, 2868,
3461 325, 321, 312, 2868, 2869, 2869, 2869, 310, 309, 305,
3462 2869, 2870, 2870, 2870, 302, 300, 299, 2870, 2871, 2871,
3463 2871, 298, 294, 290, 2871, 2872, 2872, 2872, 287, 283,
3464 280, 2872, 2873, 2873, 2873, 279, 271, 267, 2873, 2874,
3466 2874, 2874, 263, 262, 261, 2874, 2875, 2875, 2875, 255,
3467 254, 252, 2875, 2876, 2876, 2876, 249, 237, 0, 2876,
3468 2877, 2877, 2877, 0, 0, 0, 2877, 2878, 2878, 2878,
3469 0, 0, 0, 2878, 2879, 2879, 2879, 0, 0, 0,
3470 2879, 2880, 2880, 2880, 0, 0, 0, 2880, 2881, 2881,
3471 2881, 0, 0, 0, 2881, 2882, 2882, 2882, 0, 0,
3472 0, 2882, 2883, 2883, 2883, 0, 0, 0, 2883, 2884,
3473 2884, 2884, 0, 0, 0, 2884, 2885, 2885, 2885, 0,
3474 0, 0, 2885, 2886, 2886, 2886, 2886, 2886, 2886, 2886,
3475 0, 2886, 2887, 2887, 2887, 0, 0, 0, 2887, 2888,
3477 0, 0, 0, 2888, 2889, 2889, 2889, 0, 0, 0,
3478 2889, 2890, 0, 0, 0, 2890, 2891, 2891, 2891, 0,
3479 0, 0, 2891, 2892, 0, 0, 0, 2892, 2893, 2893,
3480 2893, 0, 0, 0, 2893, 2894, 0, 0, 0, 2894,
3481 2895, 2895, 2895, 0, 0, 0, 2895, 2896, 0, 0,
3482 0, 2896, 2897, 2897, 2897, 0, 0, 0, 2897, 2898,
3483 0, 0, 0, 2898, 2899, 2899, 2899, 0, 0, 0,
3484 2899, 2900, 0, 0, 0, 2900, 2901, 2901, 2901, 0,
3485 0, 0, 2901, 2902, 0, 0, 0, 2902, 2903, 2903,
3486 2903, 0, 0, 0, 2903, 2904, 0, 0, 0, 2904,
3488 2905, 2905, 2905, 0, 0, 0, 2905, 2906, 0, 0,
3489 0, 2906, 2907, 2907, 2907, 0, 0, 0, 2907, 2908,
3490 0, 0, 0, 2908, 2909, 2909, 2909, 0, 0, 0,
3491 2909, 2910, 0, 0, 0, 2910, 2911, 2911, 2911, 0,
3492 0, 0, 2911, 2912, 0, 0, 0, 2912, 2913, 2913,
3493 2913, 0, 0, 0, 2913, 2914, 0, 0, 0, 2914,
3494 2915, 2915, 2915, 0, 0, 0, 2915, 2916, 0, 0,
3495 0, 2916, 2917, 2917, 2917, 0, 0, 0, 2917, 2918,
3496 0, 0, 0, 2918, 2919, 2919, 2919, 0, 0, 0,
3497 2919, 2920, 0, 0, 0, 2920, 2921, 2921, 2921, 0,
3499 0, 0, 2921, 2922, 0, 0, 0, 2922, 2923, 2923,
3500 2923, 0, 0, 0, 2923, 2924, 0, 0, 0, 2924,
3501 2925, 2925, 2925, 0, 0, 0, 2925, 2926, 0, 0,
3502 0, 2926, 2927, 2927, 2927, 0, 0, 0, 2927, 2928,
3503 0, 0, 0, 2928, 2929, 2929, 2929, 0, 0, 0,
3504 2929, 2930, 0, 0, 0, 2930, 2931, 2931, 2931, 0,
3505 0, 0, 2931, 2932, 0, 0, 0, 2932, 2933, 2933,
3506 2933, 0, 0, 0, 2933, 2934, 0, 0, 0, 2934,
3507 2935, 2935, 2935, 2935, 2935, 2935, 2935, 2935, 2935, 2936,
3508 0, 0, 0, 0, 2936, 2937, 2937, 2937, 0, 0,
3510 0, 2937, 2938, 2938, 2938, 2938, 0, 0, 2938, 2938,
3511 2939, 2939, 2939, 0, 0, 0, 2939, 2940, 2940, 2940,
3512 2940, 0, 0, 2940, 2940, 2941, 2941, 2941, 0, 0,
3513 0, 2941, 2942, 2942, 2942, 2942, 0, 0, 2942, 2942,
3514 2943, 2943, 2943, 0, 0, 0, 2943, 2944, 2944, 2944,
3515 2944, 0, 0, 2944, 2944, 2945, 2945, 2945, 0, 0,
3516 0, 2945, 2946, 2946, 2946, 2946, 0, 0, 2946, 2946,
3517 2947, 2947, 2947, 0, 0, 0, 2947, 2948, 2948, 2948,
3518 2948, 0, 0, 2948, 2948, 2949, 2949, 2949, 0, 0,
3519 0, 2949, 2950, 2950, 2950, 2950, 0, 0, 2950, 2950,
3521 2951, 2951, 2951, 0, 0, 0, 2951, 2952, 2952, 2952,
3522 2952, 0, 0, 2952, 2952, 2953, 2953, 2953, 0, 0,
3523 0, 2953, 2954, 2954, 2954, 2954, 0, 0, 2954, 2954,
3524 2955, 2955, 2955, 0, 0, 0, 2955, 2956, 2956, 2956,
3525 2956, 0, 0, 2956, 2956, 2957, 2957, 2957, 0, 0,
3526 0, 2957, 2958, 2958, 2958, 2958, 0, 0, 2958, 2958,
3527 2959, 2959, 2959, 0, 0, 0, 2959, 2960, 2960, 2960,
3528 2960, 0, 0, 2960, 2960, 2961, 2961, 2961, 0, 0,
3529 0, 2961, 2962, 2962, 2962, 2962, 0, 0, 2962, 2962,
3530 2963, 2963, 2963, 0, 0, 0, 2963, 2964, 2964, 2964,
3532 2964, 0, 0, 2964, 2964, 2965, 2965, 2965, 0, 0,
3533 0, 2965, 2966, 2966, 2966, 2966, 0, 0, 2966, 2966,
3534 2967, 2967, 2967, 2967, 0, 2967, 0, 2967, 2968, 2968,
3535 2968, 2968, 0, 0, 2968, 2968, 2969, 2969, 2969, 2969,
3536 0, 2969, 0, 2969, 2970, 2970, 2970, 2970, 0, 0,
3537 2970, 2970, 2971, 2971, 2971, 0, 0, 0, 2971, 2972,
3538 2972, 2972, 2972, 0, 0, 2972, 2972, 2973, 2973, 2973,
3539 2973, 0, 2973, 0, 2973, 2974, 2974, 2974, 2974, 0,
3540 0, 2974, 2974, 2975, 2975, 2975, 2975, 0, 2975, 0,
3541 2975, 2976, 2976, 2976, 2976, 0, 0, 2976, 2976, 2977,
3543 2977, 2977, 0, 0, 0, 2977, 2978, 2978, 2978, 2978,
3544 0, 0, 2978, 2978, 2979, 2979, 2979, 0, 0, 0,
3545 2979, 2980, 2980, 2980, 2980, 0, 0, 2980, 2980, 2981,
3546 2981, 2981, 2981, 0, 0, 2981, 2981, 2982, 2982, 2982,
3547 0, 0, 0, 2982, 2983, 2983, 2983, 2983, 0, 0,
3548 2983, 2983, 2984, 2984, 2984, 2984, 2984, 2984, 2984, 2984,
3549 2984, 2985, 0, 2985, 0, 0, 2985, 2986, 2986, 2986,
3550 0, 0, 0, 2986, 2987, 2987, 2987, 2987, 0, 0,
3551 2987, 2987, 2988, 2988, 2988, 2988, 0, 2988, 0, 2988,
3552 2989, 2989, 2989, 2989, 0, 0, 2989, 2989, 2990, 2990,
3554 2990, 2990, 0, 2990, 0, 2990, 2991, 2991, 2991, 2991,
3555 0, 0, 2991, 2991, 2992, 2992, 2992, 0, 0, 0,
3556 2992, 2993, 2993, 2993, 2993, 0, 0, 2993, 2993, 2994,
3557 2994, 2994, 0, 0, 0, 2994, 2995, 2995, 2995, 2995,
3558 0, 0, 2995, 2995, 2996, 2996, 2996, 0, 0, 0,
3559 2996, 2997, 2997, 2997, 2997, 0, 0, 2997, 2997, 2998,
3560 2998, 2998, 0, 0, 0, 2998, 2999, 2999, 2999, 2999,
3561 0, 0, 2999, 2999, 3000, 3000, 3000, 0, 0, 0,
3562 3000, 3001, 3001, 3001, 3001, 0, 0, 3001, 3001, 3002,
3563 3002, 3002, 3002, 0, 3002, 0, 3002, 3003, 3003, 3003,
3565 3003, 0, 0, 3003, 3003, 3004, 3004, 3004, 3004, 0,
3566 3004, 0, 3004, 3005, 3005, 3005, 3005, 0, 0, 3005,
3567 3005, 3006, 3006, 3006, 0, 0, 0, 3006, 3007, 3007,
3568 3007, 3007, 0, 0, 3007, 3007, 3008, 3008, 3008, 0,
3569 0, 0, 3008, 3009, 3009, 3009, 3009, 0, 0, 3009,
3570 3009, 3010, 3010, 3010, 0, 0, 0, 3010, 3011, 3011,
3571 3011, 3011, 0, 0, 3011, 3011, 3012, 3012, 3012, 0,
3572 0, 0, 3012, 3013, 3013, 3013, 3013, 0, 0, 3013,
3573 3013, 3014, 3014, 3014, 0, 0, 0, 3014, 3015, 3015,
3574 3015, 3015, 0, 0, 3015, 3015, 3016, 3016, 3016, 0,
3576 0, 0, 3016, 3017, 3017, 3017, 3017, 0, 0, 3017,
3577 3017, 3018, 3018, 3018, 0, 0, 0, 3018, 3019, 3019,
3578 3019, 3019, 0, 0, 3019, 3019, 3020, 3020, 3020, 0,
3579 0, 0, 3020, 3021, 3021, 3021, 3021, 0, 0, 3021,
3580 3021, 3022, 3022, 3022, 3022, 0, 0, 3022, 3022, 3023,
3581 3023, 3023, 0, 0, 0, 3023, 3024, 3024, 3024, 3024,
3582 0, 0, 3024, 3024, 3025, 3025, 3025, 0, 0, 0,
3583 3025, 3026, 3026, 3026, 3026, 0, 0, 3026, 3026, 3027,
3584 3027, 3027, 0, 0, 0, 3027, 3028, 3028, 3028, 3028,
3585 0, 0, 3028, 3028, 3029, 3029, 3029, 3029, 0, 0,
3587 3029, 3029, 3030, 3030, 3030, 0, 0, 0, 3030, 3031,
3588 3031, 3031, 3031, 0, 0, 3031, 3031, 3032, 3032, 3032,
3589 3032, 3032, 3032, 3032, 3032, 3032, 3033, 3033, 3033, 3033,
3590 3033, 3033, 3033, 3033, 3033, 3034, 3034, 3034, 0, 0,
3591 0, 3034, 3035, 3035, 3035, 3035, 0, 0, 3035, 3035,
3592 3036, 3036, 3036, 3036, 0, 0, 3036, 3036, 3037, 3037,
3593 3037, 0, 0, 0, 3037, 3038, 3038, 3038, 3038, 0,
3594 0, 3038, 3038, 3039, 3039, 3039, 0, 0, 0, 3039,
3595 3040, 3040, 3040, 3040, 0, 0, 3040, 3040, 3041, 3041,
3596 3041, 0, 0, 0, 3041, 3042, 3042, 3042, 3042, 0,
3598 0, 3042, 3042, 3043, 3043, 3043, 0, 0, 0, 3043,
3599 3044, 3044, 3044, 0, 0, 0, 3044, 3045, 3045, 3045,
3600 3045, 0, 0, 3045, 3045, 3046, 3046, 3046, 0, 0,
3601 0, 3046, 3047, 3047, 3047, 3047, 0, 0, 3047, 3047,
3602 3048, 3048, 3048, 3048, 0, 0, 3048, 3048, 3049, 3049,
3603 3049, 0, 0, 0, 3049, 3050, 3050, 3050, 3050, 0,
3604 0, 3050, 3050, 3051, 3051, 3051, 0, 0, 0, 3051,
3605 3052, 3052, 3052, 3052, 0, 0, 3052, 3052, 3053, 3053,
3606 3053, 0, 0, 0, 3053, 3054, 3054, 3054, 3054, 0,
3607 0, 3054, 3054, 3055, 3055, 3055, 0, 0, 0, 3055,
3609 3056, 3056, 3056, 3056, 0, 0, 3056, 3056, 3057, 3057,
3610 3057, 0, 0, 0, 3057, 3058, 3058, 3058, 3058, 0,
3611 0, 3058, 3058, 3059, 3059, 3059, 0, 0, 0, 3059,
3612 3060, 3060, 3060, 3060, 0, 0, 3060, 3060, 3061, 3061,
3613 3061, 0, 0, 0, 3061, 3062, 3062, 3062, 3062, 0,
3614 0, 3062, 3062, 3063, 3063, 3063, 0, 0, 0, 3063,
3615 3064, 3064, 3064, 3064, 0, 0, 3064, 3064, 3065, 3065,
3616 3065, 0, 0, 0, 3065, 3066, 3066, 3066, 3066, 0,
3617 0, 3066, 3066, 3067, 3067, 3067, 3067, 0, 0, 3067,
3618 3067, 3068, 3068, 3068, 0, 0, 0, 3068, 3069, 3069,
3620 3069, 3069, 0, 0, 3069, 3069, 3070, 3070, 3070, 0,
3621 0, 0, 3070, 3071, 3071, 3071, 3071, 0, 0, 3071,
3622 3071, 3072, 3072, 3072, 3072, 0, 3072, 0, 3072, 3073,
3623 3073, 3073, 3073, 0, 0, 3073, 3073, 3074, 3074, 3074,
3624 3074, 0, 0, 3074, 3074, 3075, 3075, 3075, 3075, 0,
3625 3075, 0, 3075, 3076, 3076, 3076, 3076, 0, 0, 3076,
3626 3076, 3077, 3077, 3077, 3077, 3077, 3077, 3077, 3077, 3077,
3627 3078, 3078, 3078, 3078, 3078, 3078, 3078, 3078, 3078, 3079,
3628 3079, 3079, 0, 0, 0, 3079, 3080, 3080, 3080, 3080,
3629 0, 0, 3080, 3080, 3081, 3081, 3081, 3081, 0, 0,
3631 3081, 3081, 3082, 3082, 3082, 0, 0, 0, 3082, 3083,
3632 3083, 3083, 3083, 0, 0, 3083, 3083, 3084, 3084, 3084,
3633 0, 0, 0, 3084, 3085, 3085, 3085, 3085, 0, 0,
3634 3085, 3085, 3086, 3086, 3086, 0, 0, 0, 3086, 3087,
3635 3087, 3087, 3087, 0, 0, 3087, 3087, 3088, 3088, 3088,
3636 0, 0, 0, 3088, 3089, 3089, 3089, 0, 0, 0,
3637 3089, 3090, 3090, 3090, 3090, 0, 0, 3090, 3090, 3091,
3638 3091, 3091, 0, 0, 0, 3091, 3092, 3092, 3092, 3092,
3639 0, 0, 3092, 3092, 3093, 3093, 3093, 3093, 0, 0,
3640 3093, 3093, 3094, 3094, 3094, 3094, 0, 3094, 0, 3094,
3642 3095, 3095, 3095, 3095, 0, 0, 3095, 3095, 3096, 3096,
3643 3096, 0, 0, 0, 3096, 3097, 3097, 3097, 3097, 0,
3644 0, 3097, 3097, 3098, 3098, 3098, 0, 0, 0, 3098,
3645 3099, 3099, 3099, 3099, 0, 0, 3099, 3099, 3100, 3100,
3646 3100, 0, 0, 0, 3100, 3101, 3101, 3101, 3101, 0,
3647 0, 3101, 3101, 3102, 3102, 3102, 0, 0, 0, 3102,
3648 3103, 3103, 3103, 3103, 0, 0, 3103, 3103, 3104, 3104,
3649 3104, 0, 0, 0, 3104, 3105, 3105, 3105, 3105, 0,
3650 0, 3105, 3105, 3106, 3106, 3106, 0, 0, 0, 3106,
3651 3107, 3107, 3107, 3107, 0, 0, 3107, 3107, 3108, 3108,
3653 3108, 3108, 0, 3108, 0, 3108, 3109, 3109, 3109, 3109,
3654 0, 0, 3109, 3109, 3110, 3110, 3110, 0, 0, 0,
3655 3110, 3111, 3111, 3111, 3111, 0, 0, 3111, 3111, 3112,
3656 3112, 3112, 3112, 0, 0, 3112, 3112, 3113, 3113, 3113,
3657 3113, 0, 3113, 0, 3113, 3114, 3114, 3114, 3114, 0,
3658 0, 3114, 3114, 3115, 3115, 3115, 0, 0, 0, 3115,
3659 3116, 3116, 3116, 3116, 0, 0, 3116, 3116, 3117, 3117,
3660 3117, 3117, 0, 0, 3117, 3117, 3118, 3118, 3118, 3118,
3661 0, 0, 3118, 3118, 3119, 3119, 3119, 3119, 0, 0,
3662 3119, 3119, 3120, 3120, 3120, 3120, 3120, 3120, 3120, 3120,
3664 3120, 3121, 3121, 3121, 3121, 3121, 3121, 3121, 3121, 3121,
3665 3122, 3122, 3122, 3122, 0, 3122, 0, 3122, 3123, 3123,
3666 3123, 3123, 0, 0, 3123, 3123, 3124, 3124, 3124, 3124,
3667 0, 0, 3124, 3124, 3125, 3125, 3125, 0, 0, 0,
3668 3125, 3126, 3126, 3126, 3126, 0, 0, 3126, 3126, 3127,
3669 3127, 3127, 0, 0, 0, 3127, 3128, 3128, 3128, 3128,
3670 0, 0, 3128, 3128, 3129, 3129, 3129, 3129, 0, 3129,
3671 0, 3129, 3130, 3130, 3130, 3130, 0, 0, 3130, 3130,
3672 3131, 3131, 3131, 3131, 0, 3131, 0, 3131, 3132, 3132,
3673 3132, 3132, 0, 3132, 0, 3132, 3133, 3133, 3133, 3133,
3675 0, 0, 3133, 3133, 3134, 3134, 3134, 3134, 0, 3134,
3676 0, 3134, 3135, 3135, 3135, 3135, 0, 0, 3135, 3135,
3677 3136, 3136, 3136, 3136, 0, 0, 3136, 3136, 3137, 3137,
3678 3137, 3137, 0, 0, 3137, 3137, 3138, 3138, 3138, 0,
3679 0, 0, 3138, 3139, 3139, 3139, 0, 0, 0, 3139,
3680 3140, 3140, 3140, 3140, 0, 0, 3140, 3140, 3141, 3141,
3681 3141, 0, 0, 0, 3141, 3142, 3142, 3142, 0, 0,
3682 0, 3142, 3143, 3143, 3143, 3143, 0, 0, 3143, 3143,
3683 3144, 3144, 3144, 0, 0, 0, 3144, 3145, 3145, 3145,
3684 0, 0, 0, 3145, 3146, 3146, 3146, 3146, 0, 0,
3686 3146, 3146, 3147, 3147, 3147, 0, 0, 0, 3147, 3148,
3687 3148, 3148, 3148, 0, 0, 3148, 3148, 3149, 3149, 3149,
3688 0, 0, 0, 3149, 3150, 3150, 3150, 3150, 0, 0,
3689 3150, 3150, 3151, 3151, 3151, 3151, 0, 0, 3151, 3151,
3690 3152, 3152, 3152, 3152, 0, 0, 3152, 3152, 3153, 3153,
3691 3153, 0, 0, 0, 3153, 3154, 3154, 3154, 3154, 0,
3692 0, 3154, 3154, 3155, 3155, 3155, 3155, 0, 0, 3155,
3693 3155, 3156, 3156, 3156, 3156, 0, 0, 3156, 3156, 3157,
3694 3157, 3157, 3157, 3157, 3157, 3157, 3157, 3157, 3158, 3158,
3695 3158, 3158, 3158, 3158, 3158, 3158, 3158, 3159, 3159, 3159,
3697 3159, 0, 0, 3159, 3159, 3160, 3160, 3160, 3160, 0,
3698 0, 3160, 3160, 3161, 3161, 3161, 0, 0, 0, 3161,
3699 3162, 3162, 3162, 0, 0, 0, 3162, 3163, 3163, 3163,
3700 3163, 0, 0, 3163, 3163, 3164, 3164, 3164, 3164, 0,
3701 0, 3164, 3164, 3165, 3165, 3165, 3165, 0, 0, 3165,
3702 3165, 3166, 3166, 3166, 3166, 0, 0, 3166, 3166, 3167,
3703 3167, 3167, 3167, 0, 0, 3167, 3167, 3168, 3168, 3168,
3704 0, 0, 0, 3168, 3169, 3169, 3169, 0, 0, 0,
3705 3169, 3170, 3170, 3170, 3170, 0, 0, 3170, 3170, 3171,
3706 3171, 3171, 0, 0, 0, 3171, 3172, 3172, 3172, 0,
3708 0, 0, 3172, 3173, 3173, 3173, 3173, 0, 0, 3173,
3709 3173, 3174, 3174, 3174, 0, 0, 0, 3174, 3175, 3175,
3710 3175, 0, 0, 0, 3175, 3176, 3176, 3176, 0, 0,
3711 0, 3176, 3177, 3177, 3177, 3177, 0, 0, 3177, 3177,
3712 3178, 3178, 3178, 0, 0, 0, 3178, 3179, 3179, 3179,
3713 3179, 0, 0, 3179, 3179, 3180, 3180, 3180, 3180, 0,
3714 0, 3180, 3180, 3181, 3181, 3181, 3181, 0, 0, 3181,
3715 3181, 3182, 3182, 3182, 3182, 0, 3182, 0, 3182, 3183,
3716 3183, 3183, 3183, 0, 0, 3183, 3183, 3184, 3184, 3184,
3717 3184, 0, 0, 3184, 3184, 3185, 3185, 3185, 3185, 0,
3719 0, 3185, 3185, 3186, 3186, 3186, 3186, 3186, 3186, 3186,
3720 3186, 3186, 3187, 3187, 3187, 3187, 3187, 3187, 3187, 3187,
3721 3187, 3188, 3188, 3188, 3188, 0, 0, 3188, 3188, 3189,
3722 3189, 3189, 3189, 0, 0, 3189, 3189, 3190, 3190, 3190,
3723 0, 0, 0, 3190, 3191, 3191, 3191, 3191, 0, 3191,
3724 0, 3191, 3192, 3192, 3192, 3192, 0, 0, 3192, 3192,
3725 3193, 3193, 3193, 3193, 0, 0, 3193, 3193, 3194, 3194,
3726 3194, 3194, 0, 0, 3194, 3194, 3195, 3195, 3195, 3195,
3727 0, 0, 3195, 3195, 3196, 3196, 3196, 0, 0, 0,
3728 3196, 3197, 3197, 3197, 0, 0, 0, 3197, 3198, 3198,
3730 3198, 3198, 0, 0, 3198, 3198, 3199, 3199, 3199, 0,
3731 0, 0, 3199, 3200, 3200, 3200, 0, 0, 0, 3200,
3732 3201, 3201, 3201, 3201, 3201, 3201, 3201, 3201, 3201, 3202,
3733 3202, 3202, 3202, 3202, 3202, 3202, 3202, 3202, 3203, 3203,
3734 3203, 3203, 3203, 3203, 3203, 3203, 3203, 3204, 3204, 3204,
3735 3204, 3204, 3204, 3204, 3204, 3204, 3205, 3205, 3205, 3205,
3736 3205, 3205, 3205, 3205, 3205, 3206, 3206, 3206, 3206, 3206,
3737 3206, 3206, 3206, 3206, 2808, 2808, 2808, 2808, 2808, 2808,
3738 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
3739 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
3741 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
3742 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
3743 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
3744 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808,
3745 2808, 2808, 2808, 2808, 2808, 2808, 2808, 2808
3748 /* Table of booleans, true if rule could match eol. */
3749 static yyconst flex_int32_t yy_rule_can_match_eol[477] =
3751 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1,
3752 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1,
3753 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
3754 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0,
3755 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
3756 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1,
3757 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1,
3758 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0,
3759 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1,
3760 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0,
3761 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
3762 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
3763 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
3764 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1,
3765 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
3766 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1,
3767 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1,
3768 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1,
3769 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0,
3770 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0,
3771 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0,
3772 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1,
3773 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0,
3774 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, };
3776 static yy_state_type yy_last_accepting_state;
3777 static char *yy_last_accepting_cpos;
3779 extern int surf_parse__flex_debug;
3780 int surf_parse__flex_debug = 0;
3782 /* The intent behind this definition is that it'll catch
3783 * any uses of REJECT which flex missed.
3785 #define REJECT reject_used_but_not_detected
3786 #define yymore() yymore_used_but_not_detected
3787 #define YY_MORE_ADJ 0
3788 #define YY_RESTORE_YY_MORE_OFFSET
3789 char *surf_parse_text;
3790 /* Validating XML processor for src/surf/simgrid.dtd.
3792 * This program was generated with the FleXML XML processor generator.
3793 * FleXML is Copyright (C) 1999-2005 Kristoffer Rose. All rights reserved.
3794 * FleXML is Copyright (C) 2003-2011 Martin Quinson. All rights reserved.
3795 * (Id: flexml.pl,v 1.67 2011/11/01 20:49:21 mquinson Exp).
3797 * There are two, intertwined parts to this program, part A and part B.
3802 * Some parts, here collectively called "Part A", are found in the
3803 * FleXML package. They are Copyright (C) 1999-2005 Kristoffer Rose
3804 * and Copyright (C) 2003-2011 Martin Quinson. All rights reserved.
3806 * You can redistribute, use, perform, display and/or modify "Part A"
3807 * provided the following two conditions hold:
3809 * 1. The program is distributed WITHOUT ANY WARRANTY from the author of
3810 * FleXML; without even the implied warranty of MERCHANTABILITY or
3811 * FITNESS FOR A PARTICULAR PURPOSE.
3813 * 2. The program distribution conditions do not in any way affect the
3814 * distribution conditions of the FleXML system used to generate this
3815 * file or any version of FleXML derived from that system.
3817 * Notice that these are explicit rights granted to you for files
3818 * generated by the FleXML system. For your rights in connection with
3819 * the FleXML system itself please consult the GNU General Public License.
3824 * The other parts, here collectively called "Part B", and which came
3825 * from the DTD used by FleXML to generate this program, can be
3826 * distributed (or not, as the case may be) under the terms of whoever
3827 * wrote them, provided these terms respect and obey the two conditions
3828 * above under the heading "Part A".
3830 * The author of and contributors to FleXML specifically disclaim
3831 * any copyright interest in "Part B", unless "Part B" was written
3832 * by the author of or contributors to FleXML.
3836 /* Version strings. */
3837 const char rcs_surfxml_flexml_skeleton[] =
3838 "$" "Id: skel,v 1.40 2007/10/11 09:57:24 mquinson Exp $";
3839 const char rcs_surfxml_flexml[] =
3840 "$" "Id: flexml.pl,v 1.67 2011/11/01 20:49:21 mquinson Exp $";
3843 #include <stdlib.h> /* for realloc() -- needed here when using flex 2.5.4 */
3850 #if defined(_XBT_WIN32) || defined(__WIN32__) || defined(WIN32) || defined(__TOS_WIN__)
3851 # ifndef __STRICT_ANSI__
3853 # include <process.h>
3856 # include <unistd.h>
3859 #ifndef FLEXML_INDEXSTACKSIZE
3860 #define FLEXML_INDEXSTACKSIZE 1000
3863 /* Generated definitions. */
3864 #define FLEXML_yylineno
3865 #ifndef FLEXML_BUFFERSTACKSIZE
3866 #define FLEXML_BUFFERSTACKSIZE 1000000
3868 #define FLEXML_NEED_BUFFERLIT
3870 /* XML processor api. */
3871 /* FleXML-provided data. */
3872 int surfxml_pcdata_ix;
3873 extern char *surfxml_bufferstack;
3874 #define surfxml_pcdata (surfxml_bufferstack + surfxml_pcdata_ix)
3875 AT_surfxml_mount_name AX_surfxml_mount_name;
3876 #define A_surfxml_mount_name (surfxml_bufferstack + AX_surfxml_mount_name)
3877 short int surfxml_mount_name_isset;
3878 AT_surfxml_random_generator AX_surfxml_random_generator;
3879 #define A_surfxml_random_generator AX_surfxml_random_generator
3880 short int surfxml_random_generator_isset;
3881 AT_surfxml_ASroute_gw_dst AX_surfxml_ASroute_gw_dst;
3882 #define A_surfxml_ASroute_gw_dst (surfxml_bufferstack + AX_surfxml_ASroute_gw_dst)
3883 short int surfxml_ASroute_gw_dst_isset;
3884 AT_surfxml_trace_connect_element AX_surfxml_trace_connect_element;
3885 #define A_surfxml_trace_connect_element (surfxml_bufferstack + AX_surfxml_trace_connect_element)
3886 short int surfxml_trace_connect_element_isset;
3887 AT_surfxml_prop_id AX_surfxml_prop_id;
3888 #define A_surfxml_prop_id (surfxml_bufferstack + AX_surfxml_prop_id)
3889 short int surfxml_prop_id_isset;
3890 AT_surfxml_host_id AX_surfxml_host_id;
3891 #define A_surfxml_host_id (surfxml_bufferstack + AX_surfxml_host_id)
3892 short int surfxml_host_id_isset;
3893 AT_surfxml_ASroute_symmetrical AX_surfxml_ASroute_symmetrical;
3894 #define A_surfxml_ASroute_symmetrical AX_surfxml_ASroute_symmetrical
3895 short int surfxml_ASroute_symmetrical_isset;
3896 AT_surfxml_peer_lat AX_surfxml_peer_lat;
3897 #define A_surfxml_peer_lat (surfxml_bufferstack + AX_surfxml_peer_lat)
3898 short int surfxml_peer_lat_isset;
3899 AT_surfxml_link_latency_file AX_surfxml_link_latency_file;
3900 #define A_surfxml_link_latency_file (surfxml_bufferstack + AX_surfxml_link_latency_file)
3901 short int surfxml_link_latency_file_isset;
3902 AT_surfxml_peer_availability_file AX_surfxml_peer_availability_file;
3903 #define A_surfxml_peer_availability_file (surfxml_bufferstack + AX_surfxml_peer_availability_file)
3904 short int surfxml_peer_availability_file_isset;
3905 AT_surfxml_link_ctn_direction AX_surfxml_link_ctn_direction;
3906 #define A_surfxml_link_ctn_direction AX_surfxml_link_ctn_direction
3907 short int surfxml_link_ctn_direction_isset;
3908 AT_surfxml_host_state AX_surfxml_host_state;
3909 #define A_surfxml_host_state AX_surfxml_host_state
3910 short int surfxml_host_state_isset;
3911 AT_surfxml_AS_id AX_surfxml_AS_id;
3912 #define A_surfxml_AS_id (surfxml_bufferstack + AX_surfxml_AS_id)
3913 short int surfxml_AS_id_isset;
3914 AT_surfxml_host_power AX_surfxml_host_power;
3915 #define A_surfxml_host_power (surfxml_bufferstack + AX_surfxml_host_power)
3916 short int surfxml_host_power_isset;
3917 AT_surfxml_router_id AX_surfxml_router_id;
3918 #define A_surfxml_router_id (surfxml_bufferstack + AX_surfxml_router_id)
3919 short int surfxml_router_id_isset;
3920 AT_surfxml_storage_type_id AX_surfxml_storage_type_id;
3921 #define A_surfxml_storage_type_id (surfxml_bufferstack + AX_surfxml_storage_type_id)
3922 short int surfxml_storage_type_id_isset;
3923 AT_surfxml_process_start_time AX_surfxml_process_start_time;
3924 #define A_surfxml_process_start_time (surfxml_bufferstack + AX_surfxml_process_start_time)
3925 short int surfxml_process_start_time_isset;
3926 AT_surfxml_cluster_suffix AX_surfxml_cluster_suffix;
3927 #define A_surfxml_cluster_suffix (surfxml_bufferstack + AX_surfxml_cluster_suffix)
3928 short int surfxml_cluster_suffix_isset;
3929 AT_surfxml_bypassASroute_dst AX_surfxml_bypassASroute_dst;
3930 #define A_surfxml_bypassASroute_dst (surfxml_bufferstack + AX_surfxml_bypassASroute_dst)
3931 short int surfxml_bypassASroute_dst_isset;
3932 AT_surfxml_ASroute_src AX_surfxml_ASroute_src;
3933 #define A_surfxml_ASroute_src (surfxml_bufferstack + AX_surfxml_ASroute_src)
3934 short int surfxml_ASroute_src_isset;
3935 AT_surfxml_cluster_prefix AX_surfxml_cluster_prefix;
3936 #define A_surfxml_cluster_prefix (surfxml_bufferstack + AX_surfxml_cluster_prefix)
3937 short int surfxml_cluster_prefix_isset;
3938 AT_surfxml_trace_file AX_surfxml_trace_file;
3939 #define A_surfxml_trace_file (surfxml_bufferstack + AX_surfxml_trace_file)
3940 short int surfxml_trace_file_isset;
3941 AT_surfxml_link_sharing_policy AX_surfxml_link_sharing_policy;
3942 #define A_surfxml_link_sharing_policy AX_surfxml_link_sharing_policy
3943 short int surfxml_link_sharing_policy_isset;
3944 AT_surfxml_storage_typeId AX_surfxml_storage_typeId;
3945 #define A_surfxml_storage_typeId (surfxml_bufferstack + AX_surfxml_storage_typeId)
3946 short int surfxml_storage_typeId_isset;
3947 AT_surfxml_random_min AX_surfxml_random_min;
3948 #define A_surfxml_random_min (surfxml_bufferstack + AX_surfxml_random_min)
3949 short int surfxml_random_min_isset;
3950 AT_surfxml_link_ctn_id AX_surfxml_link_ctn_id;
3951 #define A_surfxml_link_ctn_id (surfxml_bufferstack + AX_surfxml_link_ctn_id)
3952 short int surfxml_link_ctn_id_isset;
3953 AT_surfxml_peer_bw_out AX_surfxml_peer_bw_out;
3954 #define A_surfxml_peer_bw_out (surfxml_bufferstack + AX_surfxml_peer_bw_out)
3955 short int surfxml_peer_bw_out_isset;
3956 AT_surfxml_cluster_availability_file AX_surfxml_cluster_availability_file;
3957 #define A_surfxml_cluster_availability_file (surfxml_bufferstack + AX_surfxml_cluster_availability_file)
3958 short int surfxml_cluster_availability_file_isset;
3959 AT_surfxml_storage_content AX_surfxml_storage_content;
3960 #define A_surfxml_storage_content (surfxml_bufferstack + AX_surfxml_storage_content)
3961 short int surfxml_storage_content_isset;
3962 AT_surfxml_process_kill_time AX_surfxml_process_kill_time;
3963 #define A_surfxml_process_kill_time (surfxml_bufferstack + AX_surfxml_process_kill_time)
3964 short int surfxml_process_kill_time_isset;
3965 AT_surfxml_cluster_bb_bw AX_surfxml_cluster_bb_bw;
3966 #define A_surfxml_cluster_bb_bw (surfxml_bufferstack + AX_surfxml_cluster_bb_bw)
3967 short int surfxml_cluster_bb_bw_isset;
3968 AT_surfxml_argument_value AX_surfxml_argument_value;
3969 #define A_surfxml_argument_value (surfxml_bufferstack + AX_surfxml_argument_value)
3970 short int surfxml_argument_value_isset;
3971 AT_surfxml_link_state AX_surfxml_link_state;
3972 #define A_surfxml_link_state AX_surfxml_link_state
3973 short int surfxml_link_state_isset;
3974 AT_surfxml_ASroute_gw_src AX_surfxml_ASroute_gw_src;
3975 #define A_surfxml_ASroute_gw_src (surfxml_bufferstack + AX_surfxml_ASroute_gw_src)
3976 short int surfxml_ASroute_gw_src_isset;
3977 AT_surfxml_AS_routing AX_surfxml_AS_routing;
3978 #define A_surfxml_AS_routing (surfxml_bufferstack + AX_surfxml_AS_routing)
3979 short int surfxml_AS_routing_isset;
3980 AT_surfxml_link_bandwidth AX_surfxml_link_bandwidth;
3981 #define A_surfxml_link_bandwidth (surfxml_bufferstack + AX_surfxml_link_bandwidth)
3982 short int surfxml_link_bandwidth_isset;
3983 AT_surfxml_cluster_id AX_surfxml_cluster_id;
3984 #define A_surfxml_cluster_id (surfxml_bufferstack + AX_surfxml_cluster_id)
3985 short int surfxml_cluster_id_isset;
3986 AT_surfxml_peer_bw_in AX_surfxml_peer_bw_in;
3987 #define A_surfxml_peer_bw_in (surfxml_bufferstack + AX_surfxml_peer_bw_in)
3988 short int surfxml_peer_bw_in_isset;
3989 AT_surfxml_random_mean AX_surfxml_random_mean;
3990 #define A_surfxml_random_mean (surfxml_bufferstack + AX_surfxml_random_mean)
3991 short int surfxml_random_mean_isset;
3992 AT_surfxml_storage_type_size AX_surfxml_storage_type_size;
3993 #define A_surfxml_storage_type_size (surfxml_bufferstack + AX_surfxml_storage_type_size)
3994 short int surfxml_storage_type_size_isset;
3995 AT_surfxml_cluster_bb_lat AX_surfxml_cluster_bb_lat;
3996 #define A_surfxml_cluster_bb_lat (surfxml_bufferstack + AX_surfxml_cluster_bb_lat)
3997 short int surfxml_cluster_bb_lat_isset;
3998 AT_surfxml_link_latency AX_surfxml_link_latency;
3999 #define A_surfxml_link_latency (surfxml_bufferstack + AX_surfxml_link_latency)
4000 short int surfxml_link_latency_isset;
4001 AT_surfxml_trace_connect_kind AX_surfxml_trace_connect_kind;
4002 #define A_surfxml_trace_connect_kind AX_surfxml_trace_connect_kind
4003 short int surfxml_trace_connect_kind_isset;
4004 AT_surfxml_random_seed AX_surfxml_random_seed;
4005 #define A_surfxml_random_seed (surfxml_bufferstack + AX_surfxml_random_seed)
4006 short int surfxml_random_seed_isset;
4007 AT_surfxml_cluster_state_file AX_surfxml_cluster_state_file;
4008 #define A_surfxml_cluster_state_file (surfxml_bufferstack + AX_surfxml_cluster_state_file)
4009 short int surfxml_cluster_state_file_isset;
4010 AT_surfxml_link_bandwidth_file AX_surfxml_link_bandwidth_file;
4011 #define A_surfxml_link_bandwidth_file (surfxml_bufferstack + AX_surfxml_link_bandwidth_file)
4012 short int surfxml_link_bandwidth_file_isset;
4013 AT_surfxml_storage_type_content AX_surfxml_storage_type_content;
4014 #define A_surfxml_storage_type_content (surfxml_bufferstack + AX_surfxml_storage_type_content)
4015 short int surfxml_storage_type_content_isset;
4016 AT_surfxml_route_symmetrical AX_surfxml_route_symmetrical;
4017 #define A_surfxml_route_symmetrical AX_surfxml_route_symmetrical
4018 short int surfxml_route_symmetrical_isset;
4019 AT_surfxml_random_id AX_surfxml_random_id;
4020 #define A_surfxml_random_id (surfxml_bufferstack + AX_surfxml_random_id)
4021 short int surfxml_random_id_isset;
4022 AT_surfxml_mstorage_name AX_surfxml_mstorage_name;
4023 #define A_surfxml_mstorage_name (surfxml_bufferstack + AX_surfxml_mstorage_name)
4024 short int surfxml_mstorage_name_isset;
4025 AT_surfxml_random_max AX_surfxml_random_max;
4026 #define A_surfxml_random_max (surfxml_bufferstack + AX_surfxml_random_max)
4027 short int surfxml_random_max_isset;
4028 AT_surfxml_link_id AX_surfxml_link_id;
4029 #define A_surfxml_link_id (surfxml_bufferstack + AX_surfxml_link_id)
4030 short int surfxml_link_id_isset;
4031 AT_surfxml_process_host AX_surfxml_process_host;
4032 #define A_surfxml_process_host (surfxml_bufferstack + AX_surfxml_process_host)
4033 short int surfxml_process_host_isset;
4034 AT_surfxml_host_availability_file AX_surfxml_host_availability_file;
4035 #define A_surfxml_host_availability_file (surfxml_bufferstack + AX_surfxml_host_availability_file)
4036 short int surfxml_host_availability_file_isset;
4037 AT_surfxml_cluster_lat AX_surfxml_cluster_lat;
4038 #define A_surfxml_cluster_lat (surfxml_bufferstack + AX_surfxml_cluster_lat)
4039 short int surfxml_cluster_lat_isset;
4040 AT_surfxml_trace_periodicity AX_surfxml_trace_periodicity;
4041 #define A_surfxml_trace_periodicity (surfxml_bufferstack + AX_surfxml_trace_periodicity)
4042 short int surfxml_trace_periodicity_isset;
4043 AT_surfxml_cluster_bb_sharing_policy AX_surfxml_cluster_bb_sharing_policy;
4044 #define A_surfxml_cluster_bb_sharing_policy AX_surfxml_cluster_bb_sharing_policy
4045 short int surfxml_cluster_bb_sharing_policy_isset;
4046 AT_surfxml_router_coordinates AX_surfxml_router_coordinates;
4047 #define A_surfxml_router_coordinates (surfxml_bufferstack + AX_surfxml_router_coordinates)
4048 short int surfxml_router_coordinates_isset;
4049 AT_surfxml_peer_coordinates AX_surfxml_peer_coordinates;
4050 #define A_surfxml_peer_coordinates (surfxml_bufferstack + AX_surfxml_peer_coordinates)
4051 short int surfxml_peer_coordinates_isset;
4052 AT_surfxml_peer_state_file AX_surfxml_peer_state_file;
4053 #define A_surfxml_peer_state_file (surfxml_bufferstack + AX_surfxml_peer_state_file)
4054 short int surfxml_peer_state_file_isset;
4055 AT_surfxml_bypassASroute_src AX_surfxml_bypassASroute_src;
4056 #define A_surfxml_bypassASroute_src (surfxml_bufferstack + AX_surfxml_bypassASroute_src)
4057 short int surfxml_bypassASroute_src_isset;
4058 AT_surfxml_prop_value AX_surfxml_prop_value;
4059 #define A_surfxml_prop_value (surfxml_bufferstack + AX_surfxml_prop_value)
4060 short int surfxml_prop_value_isset;
4061 AT_surfxml_mstorage_typeId AX_surfxml_mstorage_typeId;
4062 #define A_surfxml_mstorage_typeId (surfxml_bufferstack + AX_surfxml_mstorage_typeId)
4063 short int surfxml_mstorage_typeId_isset;
4064 AT_surfxml_ASroute_dst AX_surfxml_ASroute_dst;
4065 #define A_surfxml_ASroute_dst (surfxml_bufferstack + AX_surfxml_ASroute_dst)
4066 short int surfxml_ASroute_dst_isset;
4067 AT_surfxml_link_state_file AX_surfxml_link_state_file;
4068 #define A_surfxml_link_state_file (surfxml_bufferstack + AX_surfxml_link_state_file)
4069 short int surfxml_link_state_file_isset;
4070 AT_surfxml_random_radical AX_surfxml_random_radical;
4071 #define A_surfxml_random_radical (surfxml_bufferstack + AX_surfxml_random_radical)
4072 short int surfxml_random_radical_isset;
4073 AT_surfxml_bypassASroute_gw_src AX_surfxml_bypassASroute_gw_src;
4074 #define A_surfxml_bypassASroute_gw_src (surfxml_bufferstack + AX_surfxml_bypassASroute_gw_src)
4075 short int surfxml_bypassASroute_gw_src_isset;
4076 AT_surfxml_trace_connect_trace AX_surfxml_trace_connect_trace;
4077 #define A_surfxml_trace_connect_trace (surfxml_bufferstack + AX_surfxml_trace_connect_trace)
4078 short int surfxml_trace_connect_trace_isset;
4079 AT_surfxml_mount_id AX_surfxml_mount_id;
4080 #define A_surfxml_mount_id (surfxml_bufferstack + AX_surfxml_mount_id)
4081 short int surfxml_mount_id_isset;
4082 AT_surfxml_cluster_power AX_surfxml_cluster_power;
4083 #define A_surfxml_cluster_power (surfxml_bufferstack + AX_surfxml_cluster_power)
4084 short int surfxml_cluster_power_isset;
4085 AT_surfxml_process_function AX_surfxml_process_function;
4086 #define A_surfxml_process_function (surfxml_bufferstack + AX_surfxml_process_function)
4087 short int surfxml_process_function_isset;
4088 AT_surfxml_peer_id AX_surfxml_peer_id;
4089 #define A_surfxml_peer_id (surfxml_bufferstack + AX_surfxml_peer_id)
4090 short int surfxml_peer_id_isset;
4091 AT_surfxml_cluster_router_id AX_surfxml_cluster_router_id;
4092 #define A_surfxml_cluster_router_id (surfxml_bufferstack + AX_surfxml_cluster_router_id)
4093 short int surfxml_cluster_router_id_isset;
4094 AT_surfxml_cluster_sharing_policy AX_surfxml_cluster_sharing_policy;
4095 #define A_surfxml_cluster_sharing_policy AX_surfxml_cluster_sharing_policy
4096 short int surfxml_cluster_sharing_policy_isset;
4097 AT_surfxml_bypassRoute_dst AX_surfxml_bypassRoute_dst;
4098 #define A_surfxml_bypassRoute_dst (surfxml_bufferstack + AX_surfxml_bypassRoute_dst)
4099 short int surfxml_bypassRoute_dst_isset;
4100 AT_surfxml_host_core AX_surfxml_host_core;
4101 #define A_surfxml_host_core (surfxml_bufferstack + AX_surfxml_host_core)
4102 short int surfxml_host_core_isset;
4103 AT_surfxml_storage_type_model AX_surfxml_storage_type_model;
4104 #define A_surfxml_storage_type_model (surfxml_bufferstack + AX_surfxml_storage_type_model)
4105 short int surfxml_storage_type_model_isset;
4106 AT_surfxml_host_availability AX_surfxml_host_availability;
4107 #define A_surfxml_host_availability (surfxml_bufferstack + AX_surfxml_host_availability)
4108 short int surfxml_host_availability_isset;
4109 AT_surfxml_bypassRoute_src AX_surfxml_bypassRoute_src;
4110 #define A_surfxml_bypassRoute_src (surfxml_bufferstack + AX_surfxml_bypassRoute_src)
4111 short int surfxml_bypassRoute_src_isset;
4112 AT_surfxml_route_src AX_surfxml_route_src;
4113 #define A_surfxml_route_src (surfxml_bufferstack + AX_surfxml_route_src)
4114 short int surfxml_route_src_isset;
4115 AT_surfxml_storage_id AX_surfxml_storage_id;
4116 #define A_surfxml_storage_id (surfxml_bufferstack + AX_surfxml_storage_id)
4117 short int surfxml_storage_id_isset;
4118 AT_surfxml_host_coordinates AX_surfxml_host_coordinates;
4119 #define A_surfxml_host_coordinates (surfxml_bufferstack + AX_surfxml_host_coordinates)
4120 short int surfxml_host_coordinates_isset;
4121 AT_surfxml_trace_id AX_surfxml_trace_id;
4122 #define A_surfxml_trace_id (surfxml_bufferstack + AX_surfxml_trace_id)
4123 short int surfxml_trace_id_isset;
4124 AT_surfxml_peer_power AX_surfxml_peer_power;
4125 #define A_surfxml_peer_power (surfxml_bufferstack + AX_surfxml_peer_power)
4126 short int surfxml_peer_power_isset;
4127 AT_surfxml_cluster_radical AX_surfxml_cluster_radical;
4128 #define A_surfxml_cluster_radical (surfxml_bufferstack + AX_surfxml_cluster_radical)
4129 short int surfxml_cluster_radical_isset;
4130 AT_surfxml_config_id AX_surfxml_config_id;
4131 #define A_surfxml_config_id (surfxml_bufferstack + AX_surfxml_config_id)
4132 short int surfxml_config_id_isset;
4133 AT_surfxml_bypassASroute_gw_dst AX_surfxml_bypassASroute_gw_dst;
4134 #define A_surfxml_bypassASroute_gw_dst (surfxml_bufferstack + AX_surfxml_bypassASroute_gw_dst)
4135 short int surfxml_bypassASroute_gw_dst_isset;
4136 AT_surfxml_include_file AX_surfxml_include_file;
4137 #define A_surfxml_include_file (surfxml_bufferstack + AX_surfxml_include_file)
4138 short int surfxml_include_file_isset;
4139 AT_surfxml_random_std_deviation AX_surfxml_random_std_deviation;
4140 #define A_surfxml_random_std_deviation (surfxml_bufferstack + AX_surfxml_random_std_deviation)
4141 short int surfxml_random_std_deviation_isset;
4142 AT_surfxml_cluster_core AX_surfxml_cluster_core;
4143 #define A_surfxml_cluster_core (surfxml_bufferstack + AX_surfxml_cluster_core)
4144 short int surfxml_cluster_core_isset;
4145 AT_surfxml_host_state_file AX_surfxml_host_state_file;
4146 #define A_surfxml_host_state_file (surfxml_bufferstack + AX_surfxml_host_state_file)
4147 short int surfxml_host_state_file_isset;
4148 AT_surfxml_route_dst AX_surfxml_route_dst;
4149 #define A_surfxml_route_dst (surfxml_bufferstack + AX_surfxml_route_dst)
4150 short int surfxml_route_dst_isset;
4151 AT_surfxml_cluster_bw AX_surfxml_cluster_bw;
4152 #define A_surfxml_cluster_bw (surfxml_bufferstack + AX_surfxml_cluster_bw)
4153 short int surfxml_cluster_bw_isset;
4154 AT_surfxml_platform_version AX_surfxml_platform_version;
4155 #define A_surfxml_platform_version (surfxml_bufferstack + AX_surfxml_platform_version)
4156 short int surfxml_platform_version_isset;
4160 # define ENTER(state) debug_enter(state,#state)
4161 # define LEAVE debug_leave()
4162 # define SET(state) debug_set(state,#state)
4163 static void debug_enter(int, const char*);
4164 static void debug_leave(void);
4165 static void debug_set(int, const char*);
4167 # define ENTER(state) (yy_push_state(state))
4168 # define LEAVE (yy_pop_state())
4169 # define SET(state) BEGIN(state)
4172 /* Generic actions. */
4173 #define SKIP /*skip*/
4174 #define SUCCEED CLEANUP; return 0
4176 #define FAIL return fail
4177 static int fail(const char*, ...);
4179 enum {flexml_max_err_msg_size = 512};
4180 static char flexml_err_msg[flexml_max_err_msg_size];
4181 const char * surfxml_parse_err_msg()
4183 return flexml_err_msg;
4185 static void reset_surfxml_parse_err_msg()
4187 flexml_err_msg[0] = '\0';
4191 static void cleanup(void);
4192 #define CLEANUP cleanup()
4194 /* Text buffer stack handling. */
4195 char *surfxml_bufferstack = NULL;
4196 static int blimit = FLEXML_BUFFERSTACKSIZE;
4197 static int bnext = 1;
4199 static int *indexstack = NULL;
4200 static int ilimit = FLEXML_INDEXSTACKSIZE;
4201 static int inext = 1;
4203 #define BUFFERSET(P) (P = bnext)
4204 #define BUFFERPUTC(C) (ck_blimit(), surfxml_bufferstack[bnext++] = (C))
4205 #define BUFFERDONE (BUFFERPUTC('\0'))
4207 #define BUFFERLITERAL(C, P) surfxml_bufferliteral(C, &(P), surf_parse_text)
4209 /* after this is called, there are at least 2 slots left in the stack */
4210 static int ck_blimit()
4212 if (bnext >= blimit) {
4213 blimit += FLEXML_BUFFERSTACKSIZE + 2;
4215 char *temp = (char *) realloc(surfxml_bufferstack, blimit);
4217 surfxml_bufferstack = temp;
4223 /* after this is called, there are at least 2 slots left in the stack */
4224 static int ck_ilimit()
4226 if (inext >= ilimit) {
4227 ilimit += FLEXML_INDEXSTACKSIZE + 2;
4229 int *temp = (int *) realloc(indexstack, ilimit);
4237 #ifdef FLEXML_NEED_BUFFERLIT
4238 static void surfxml_bufferliteral(char c, int* pp, const char* text)
4240 const char *s = (c ? strchr(text,c) : text-1), *e = strrchr(text,c);
4241 assert(s <= e); BUFFERSET(*pp);
4243 if (isspace(*s) && c) { BUFFERPUTC(' '); while (isspace(*s)) ++s; }
4244 else BUFFERPUTC(*s);
4250 static void pushbuffer(int p)
4253 indexstack[inext++] = p;
4254 indexstack[inext++] = bnext;
4257 static int popbuffer(void)
4260 bnext = indexstack[--inext];
4261 return indexstack[--inext];
4264 /* General internal entities are `unput' back onto the input stream... */
4265 #define ENTITYTEXT(T) \
4266 { char *s = (T), *e = s+strlen(s);\
4267 while (--e >= s) { unput(*e); }}
4269 /* Flex standard options. */
4270 #define YY_NO_INPUT 1
4271 /* Flex user-requested options. */
4272 /* XML character classes (currently restricted to ASCII). */
4273 /* "Common syntactic structures." */
4274 /* "Names and Tokens." */
4275 /* Miscellaneous. */
4276 /* Parser states (flex `exclusive start conditions'):
4278 * PROLOG the XML prolog of the document before <?xml...>
4279 * DOCTYPE the XML prolog of the document after <?xml...>
4280 * EPILOG after the root element
4281 * INCOMMENT inside an XML comment <!--....-->
4282 * INPI inside an XML PI <?...?>
4283 * VALUE1 inside a '...'-delimited literal
4284 * VALUE2 inside a "..."-delimited literal
4285 * CDATA inside a <![CDATA[...] ]> section.
4286 * ROOT_<tag> expect root element <tag>
4287 * AL_<tag> inside the attribute list for <tag>
4288 * IN_<tag> inside a <tag> with element contents (ready for end tag)
4289 * IMPOSSIBLE dummy to permit disabling rules; must be last
4293 const char* *surfxml_statenames=NULL;
4304 #define ROOT_surfxml_platform 9
4305 #define AL_surfxml_platform 10
4306 #define S_surfxml_platform 11
4307 #define S_surfxml_platform_1 12
4308 #define S_surfxml_platform_2 13
4309 #define S_surfxml_platform_3 14
4310 #define S_surfxml_platform_4 15
4311 #define S_surfxml_platform_5 16
4312 #define S_surfxml_platform_6 17
4313 #define S_surfxml_platform_7 18
4314 #define S_surfxml_platform_8 19
4315 #define E_surfxml_platform 20
4316 #define AL_surfxml_include 21
4317 #define S_surfxml_include 22
4318 #define S_surfxml_include_1 23
4319 #define S_surfxml_include_2 24
4320 #define E_surfxml_include 25
4321 #define AL_surfxml_trace 26
4323 #define AL_surfxml_random 28
4324 #define S_surfxml_random 29
4325 #define S_surfxml_random_1 30
4326 #define S_surfxml_random_2 31
4327 #define E_surfxml_random 32
4328 #define AL_surfxml_trace_connect 33
4329 #define E_surfxml_trace_connect 34
4330 #define AL_surfxml_AS 35
4331 #define S_surfxml_AS 36
4332 #define S_surfxml_AS_1 37
4333 #define S_surfxml_AS_2 38
4334 #define S_surfxml_AS_3 39
4335 #define S_surfxml_AS_4 40
4336 #define S_surfxml_AS_5 41
4337 #define S_surfxml_AS_6 42
4338 #define S_surfxml_AS_7 43
4339 #define S_surfxml_AS_8 44
4340 #define S_surfxml_AS_9 45
4341 #define S_surfxml_AS_10 46
4342 #define S_surfxml_AS_11 47
4343 #define S_surfxml_AS_12 48
4344 #define S_surfxml_AS_13 49
4345 #define E_surfxml_AS 50
4346 #define AL_surfxml_storage_type 51
4347 #define S_surfxml_storage_type 52
4348 #define S_surfxml_storage_type_1 53
4349 #define S_surfxml_storage_type_2 54
4350 #define E_surfxml_storage_type 55
4351 #define AL_surfxml_storage 56
4352 #define S_surfxml_storage 57
4353 #define S_surfxml_storage_1 58
4354 #define S_surfxml_storage_2 59
4355 #define E_surfxml_storage 60
4356 #define AL_surfxml_mount 61
4357 #define E_surfxml_mount 62
4358 #define AL_surfxml_mstorage 63
4359 #define E_surfxml_mstorage 64
4360 #define AL_surfxml_host 65
4361 #define S_surfxml_host 66
4362 #define S_surfxml_host_1 67
4363 #define S_surfxml_host_2 68
4364 #define E_surfxml_host 69
4365 #define AL_surfxml_cluster 70
4366 #define E_surfxml_cluster 71
4367 #define AL_surfxml_peer 72
4368 #define E_surfxml_peer 73
4369 #define AL_surfxml_router 74
4370 #define E_surfxml_router 75
4371 #define AL_surfxml_link 76
4372 #define S_surfxml_link 77
4373 #define S_surfxml_link_1 78
4374 #define S_surfxml_link_2 79
4375 #define E_surfxml_link 80
4376 #define AL_surfxml_route 81
4377 #define S_surfxml_route 82
4378 #define S_surfxml_route_1 83
4379 #define S_surfxml_route_2 84
4380 #define E_surfxml_route 85
4381 #define AL_surfxml_ASroute 86
4382 #define S_surfxml_ASroute 87
4383 #define S_surfxml_ASroute_1 88
4384 #define S_surfxml_ASroute_2 89
4385 #define E_surfxml_ASroute 90
4386 #define AL_surfxml_link_ctn 91
4387 #define E_surfxml_link_ctn 92
4388 #define AL_surfxml_bypassRoute 93
4389 #define S_surfxml_bypassRoute 94
4390 #define S_surfxml_bypassRoute_1 95
4391 #define S_surfxml_bypassRoute_2 96
4392 #define E_surfxml_bypassRoute 97
4393 #define AL_surfxml_bypassASroute 98
4394 #define S_surfxml_bypassASroute 99
4395 #define S_surfxml_bypassASroute_1 100
4396 #define S_surfxml_bypassASroute_2 101
4397 #define E_surfxml_bypassASroute 102
4398 #define AL_surfxml_process 103
4399 #define S_surfxml_process 104
4400 #define S_surfxml_process_1 105
4401 #define S_surfxml_process_2 106
4402 #define E_surfxml_process 107
4403 #define AL_surfxml_argument 108
4404 #define E_surfxml_argument 109
4405 #define AL_surfxml_config 110
4406 #define S_surfxml_config 111
4407 #define S_surfxml_config_1 112
4408 #define S_surfxml_config_2 113
4409 #define E_surfxml_config 114
4410 #define AL_surfxml_prop 115
4411 #define E_surfxml_prop 116
4412 #define IMPOSSIBLE 117
4414 #ifndef YY_NO_UNISTD_H
4415 /* Special case for "unistd.h", since it is non-ANSI. We include it way
4416 * down here because we want the user's section 1 to have been scanned first.
4417 * The user has a chance to override it with an option.
4419 #if defined(_XBT_WIN32) || defined(__WIN32__) || defined(WIN32) || defined(__TOS_WIN__)
4420 # ifndef __STRICT_ANSI__
4422 # include <process.h>
4425 # include <unistd.h>
4429 #ifndef YY_EXTRA_TYPE
4430 #define YY_EXTRA_TYPE void *
4433 static int yy_init_globals (void );
4435 /* Accessor methods to globals.
4436 These are made visible to non-reentrant scanners for convenience. */
4438 int surf_parse_lex_destroy (void );
4440 int surf_parse_get_debug (void );
4442 void surf_parse_set_debug (int debug_flag );
4444 YY_EXTRA_TYPE surf_parse_get_extra (void );
4446 void surf_parse_set_extra (YY_EXTRA_TYPE user_defined );
4448 FILE *surf_parse_get_in (void );
4450 void surf_parse_set_in (FILE * in_str );
4452 FILE *surf_parse_get_out (void );
4454 void surf_parse_set_out (FILE * out_str );
4456 int surf_parse_get_leng (void );
4458 char *surf_parse_get_text (void );
4460 int surf_parse_get_lineno (void );
4462 void surf_parse_set_lineno (int line_number );
4464 /* Macros after this point can all be overridden by user definitions in
4468 #ifndef YY_SKIP_YYWRAP
4470 extern "C" int surf_parse_wrap (void );
4472 extern int surf_parse_wrap (void );
4477 static void yy_flex_strncpy (char *,yyconst char *,int );
4480 #ifdef YY_NEED_STRLEN
4481 static int yy_flex_strlen (yyconst char * );
4487 static int yyinput (void );
4489 static int input (void );
4494 static int yy_start_stack_ptr = 0;
4495 static int yy_start_stack_depth = 0;
4496 static int *yy_start_stack = NULL;
4498 static void yy_push_state (int new_state );
4500 static void yy_pop_state (void );
4502 /* Amount of stuff to slurp up with each read. */
4503 #ifndef YY_READ_BUF_SIZE
4505 /* On IA-64, the buffer size is 16k, not 8k */
4506 #define YY_READ_BUF_SIZE 16384
4508 #define YY_READ_BUF_SIZE 8192
4509 #endif /* __ia64__ */
4512 /* Copy whatever the last rule matched to the standard output. */
4514 /* This used to be an fputs(), but since the string might contain NUL's,
4515 * we now use fwrite().
4517 #define ECHO do { if (fwrite( surf_parse_text, surf_parse_leng, 1, surf_parse_out )) {} } while (0)
4520 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
4521 * is returned in "result".
4524 #define YY_INPUT(buf,result,max_size) \
4525 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
4529 for ( n = 0; n < max_size && \
4530 (c = getc( surf_parse_in )) != EOF && c != '\n'; ++n ) \
4531 buf[n] = (char) c; \
4533 buf[n++] = (char) c; \
4534 if ( c == EOF && ferror( surf_parse_in ) ) \
4535 YY_FATAL_ERROR( "input in flex scanner failed" ); \
4541 while ( (result = fread(buf, 1, max_size, surf_parse_in))==0 && ferror(surf_parse_in)) \
4543 if( errno != EINTR) \
4545 YY_FATAL_ERROR( "input in flex scanner failed" ); \
4549 clearerr(surf_parse_in); \
4556 /* No semi-colon after return; correct usage is to write "yyterminate();" -
4557 * we don't want an extra ';' after the "return" because that will cause
4558 * some compilers to complain about unreachable statements.
4561 #define yyterminate() return YY_NULL
4564 /* Number of entries by which start-condition stack grows. */
4565 #ifndef YY_START_STACK_INCR
4566 #define YY_START_STACK_INCR 25
4569 /* Report a fatal error. */
4570 #ifndef YY_FATAL_ERROR
4571 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
4574 /* end tables serialization structures and prototypes */
4576 /* Default declaration of generated scanner - a define so the user can
4577 * easily add parameters.
4580 #define YY_DECL_IS_OURS 1
4582 extern int surf_parse_lex (void);
4584 #define YY_DECL int surf_parse_lex (void)
4585 #endif /* !YY_DECL */
4587 /* Code executed at the beginning of each rule, after surf_parse_text and surf_parse_leng
4590 #ifndef YY_USER_ACTION
4591 #define YY_USER_ACTION
4594 /* Code executed at the end of each rule. */
4596 #define YY_BREAK break;
4599 #define YY_RULE_SETUP \
4602 /** The main scanner function which does all the work.
4606 register yy_state_type yy_current_state;
4607 register char *yy_cp, *yy_bp;
4608 register int yy_act;
4610 /* Bypass Flex's default INITIAL state and begin by parsing the XML prolog. */
4612 reset_surfxml_parse_err_msg();
4613 surfxml_bufferstack = (char *) malloc(FLEXML_BUFFERSTACKSIZE);
4614 assert(surfxml_bufferstack);
4618 for (i = 0; i < blimit; i++) {
4619 surfxml_bufferstack[i] = '\377';
4623 surfxml_bufferstack[0] = '\0';
4624 indexstack = (int *) malloc(FLEXML_INDEXSTACKSIZE * sizeof(int));
4630 surfxml_bufferliteral('\0', &bnext, "0.0");
4631 surfxml_bufferliteral('\0', &bnext, "2147483647");
4632 surfxml_bufferliteral('\0', &bnext, "1");
4633 surfxml_bufferliteral('\0', &bnext, "1.0");
4634 surfxml_bufferliteral('\0', &bnext, "1");
4635 surfxml_bufferliteral('\0', &bnext, "0.0");
4636 surfxml_bufferliteral('\0', &bnext, "-1.0");
4637 surfxml_bufferliteral('\0', &bnext, "-1.0");
4638 if(!surfxml_statenames) {surfxml_statenames= (const char **)calloc(IMPOSSIBLE,sizeof(char*));
4639 surfxml_statenames[PROLOG] = NULL;
4640 surfxml_statenames[DOCTYPE] = NULL;
4641 surfxml_statenames[EPILOG] = NULL;
4642 surfxml_statenames[INCOMMENT] = NULL;
4643 surfxml_statenames[INPI] = NULL;
4644 surfxml_statenames[VALUE1] = NULL;
4645 surfxml_statenames[VALUE2] = NULL;
4646 surfxml_statenames[CDATA] = NULL;
4647 surfxml_statenames[ROOT_surfxml_platform] = NULL;
4648 surfxml_statenames[AL_surfxml_platform] = NULL;
4649 surfxml_statenames[S_surfxml_platform] = "platform";
4650 surfxml_statenames[S_surfxml_platform_1] = "platform";
4651 surfxml_statenames[S_surfxml_platform_2] = "platform";
4652 surfxml_statenames[S_surfxml_platform_3] = "platform";
4653 surfxml_statenames[S_surfxml_platform_4] = "platform";
4654 surfxml_statenames[S_surfxml_platform_5] = "platform";
4655 surfxml_statenames[S_surfxml_platform_6] = "platform";
4656 surfxml_statenames[S_surfxml_platform_7] = "platform";
4657 surfxml_statenames[S_surfxml_platform_8] = "platform";
4658 surfxml_statenames[E_surfxml_platform] = "platform";
4659 surfxml_statenames[AL_surfxml_include] = NULL;
4660 surfxml_statenames[S_surfxml_include] = "include";
4661 surfxml_statenames[S_surfxml_include_1] = "include";
4662 surfxml_statenames[S_surfxml_include_2] = "include";
4663 surfxml_statenames[E_surfxml_include] = "include";
4664 surfxml_statenames[AL_surfxml_trace] = NULL;
4665 surfxml_statenames[IN_trace] = "trace";
4666 surfxml_statenames[AL_surfxml_random] = NULL;
4667 surfxml_statenames[S_surfxml_random] = "random";
4668 surfxml_statenames[S_surfxml_random_1] = "random";
4669 surfxml_statenames[S_surfxml_random_2] = "random";
4670 surfxml_statenames[E_surfxml_random] = "random";
4671 surfxml_statenames[AL_surfxml_trace_connect] = NULL;
4672 surfxml_statenames[E_surfxml_trace_connect] = "trace_connect";
4673 surfxml_statenames[AL_surfxml_AS] = NULL;
4674 surfxml_statenames[S_surfxml_AS] = "AS";
4675 surfxml_statenames[S_surfxml_AS_1] = "AS";
4676 surfxml_statenames[S_surfxml_AS_2] = "AS";
4677 surfxml_statenames[S_surfxml_AS_3] = "AS";
4678 surfxml_statenames[S_surfxml_AS_4] = "AS";
4679 surfxml_statenames[S_surfxml_AS_5] = "AS";
4680 surfxml_statenames[S_surfxml_AS_6] = "AS";
4681 surfxml_statenames[S_surfxml_AS_7] = "AS";
4682 surfxml_statenames[S_surfxml_AS_8] = "AS";
4683 surfxml_statenames[S_surfxml_AS_9] = "AS";
4684 surfxml_statenames[S_surfxml_AS_10] = "AS";
4685 surfxml_statenames[S_surfxml_AS_11] = "AS";
4686 surfxml_statenames[S_surfxml_AS_12] = "AS";
4687 surfxml_statenames[S_surfxml_AS_13] = "AS";
4688 surfxml_statenames[E_surfxml_AS] = "AS";
4689 surfxml_statenames[AL_surfxml_storage_type] = NULL;
4690 surfxml_statenames[S_surfxml_storage_type] = "storage_type";
4691 surfxml_statenames[S_surfxml_storage_type_1] = "storage_type";
4692 surfxml_statenames[S_surfxml_storage_type_2] = "storage_type";
4693 surfxml_statenames[E_surfxml_storage_type] = "storage_type";
4694 surfxml_statenames[AL_surfxml_storage] = NULL;
4695 surfxml_statenames[S_surfxml_storage] = "storage";
4696 surfxml_statenames[S_surfxml_storage_1] = "storage";
4697 surfxml_statenames[S_surfxml_storage_2] = "storage";
4698 surfxml_statenames[E_surfxml_storage] = "storage";
4699 surfxml_statenames[AL_surfxml_mount] = NULL;
4700 surfxml_statenames[E_surfxml_mount] = "mount";
4701 surfxml_statenames[AL_surfxml_mstorage] = NULL;
4702 surfxml_statenames[E_surfxml_mstorage] = "mstorage";
4703 surfxml_statenames[AL_surfxml_host] = NULL;
4704 surfxml_statenames[S_surfxml_host] = "host";
4705 surfxml_statenames[S_surfxml_host_1] = "host";
4706 surfxml_statenames[S_surfxml_host_2] = "host";
4707 surfxml_statenames[E_surfxml_host] = "host";
4708 surfxml_statenames[AL_surfxml_cluster] = NULL;
4709 surfxml_statenames[E_surfxml_cluster] = "cluster";
4710 surfxml_statenames[AL_surfxml_peer] = NULL;
4711 surfxml_statenames[E_surfxml_peer] = "peer";
4712 surfxml_statenames[AL_surfxml_router] = NULL;
4713 surfxml_statenames[E_surfxml_router] = "router";
4714 surfxml_statenames[AL_surfxml_link] = NULL;
4715 surfxml_statenames[S_surfxml_link] = "link";
4716 surfxml_statenames[S_surfxml_link_1] = "link";
4717 surfxml_statenames[S_surfxml_link_2] = "link";
4718 surfxml_statenames[E_surfxml_link] = "link";
4719 surfxml_statenames[AL_surfxml_route] = NULL;
4720 surfxml_statenames[S_surfxml_route] = "route";
4721 surfxml_statenames[S_surfxml_route_1] = "route";
4722 surfxml_statenames[S_surfxml_route_2] = "route";
4723 surfxml_statenames[E_surfxml_route] = "route";
4724 surfxml_statenames[AL_surfxml_ASroute] = NULL;
4725 surfxml_statenames[S_surfxml_ASroute] = "ASroute";
4726 surfxml_statenames[S_surfxml_ASroute_1] = "ASroute";
4727 surfxml_statenames[S_surfxml_ASroute_2] = "ASroute";
4728 surfxml_statenames[E_surfxml_ASroute] = "ASroute";
4729 surfxml_statenames[AL_surfxml_link_ctn] = NULL;
4730 surfxml_statenames[E_surfxml_link_ctn] = "link_ctn";
4731 surfxml_statenames[AL_surfxml_bypassRoute] = NULL;
4732 surfxml_statenames[S_surfxml_bypassRoute] = "bypassRoute";
4733 surfxml_statenames[S_surfxml_bypassRoute_1] = "bypassRoute";
4734 surfxml_statenames[S_surfxml_bypassRoute_2] = "bypassRoute";
4735 surfxml_statenames[E_surfxml_bypassRoute] = "bypassRoute";
4736 surfxml_statenames[AL_surfxml_bypassASroute] = NULL;
4737 surfxml_statenames[S_surfxml_bypassASroute] = "bypassASroute";
4738 surfxml_statenames[S_surfxml_bypassASroute_1] = "bypassASroute";
4739 surfxml_statenames[S_surfxml_bypassASroute_2] = "bypassASroute";
4740 surfxml_statenames[E_surfxml_bypassASroute] = "bypassASroute";
4741 surfxml_statenames[AL_surfxml_process] = NULL;
4742 surfxml_statenames[S_surfxml_process] = "process";
4743 surfxml_statenames[S_surfxml_process_1] = "process";
4744 surfxml_statenames[S_surfxml_process_2] = "process";
4745 surfxml_statenames[E_surfxml_process] = "process";
4746 surfxml_statenames[AL_surfxml_argument] = NULL;
4747 surfxml_statenames[E_surfxml_argument] = "argument";
4748 surfxml_statenames[AL_surfxml_config] = NULL;
4749 surfxml_statenames[S_surfxml_config] = "config";
4750 surfxml_statenames[S_surfxml_config_1] = "config";
4751 surfxml_statenames[S_surfxml_config_2] = "config";
4752 surfxml_statenames[E_surfxml_config] = "config";
4753 surfxml_statenames[AL_surfxml_prop] = NULL;
4754 surfxml_statenames[E_surfxml_prop] = "prop";
4757 /* COMMENTS and PIs: handled uniformly for efficiency. */
4768 (yy_start) = 1; /* first start state */
4770 if ( ! surf_parse_in )
4771 surf_parse_in = stdin;
4773 if ( ! surf_parse_out )
4774 surf_parse_out = stdout;
4776 if ( ! YY_CURRENT_BUFFER ) {
4777 surf_parse_ensure_buffer_stack ();
4778 YY_CURRENT_BUFFER_LVALUE =
4779 surf_parse__create_buffer(surf_parse_in,YY_BUF_SIZE );
4782 surf_parse__load_buffer_state( );
4785 while ( 1 ) /* loops until end-of-file is reached */
4787 yy_cp = (yy_c_buf_p);
4789 /* Support of surf_parse_text. */
4790 *yy_cp = (yy_hold_char);
4792 /* yy_bp points to the position in yy_ch_buf of the start of
4797 yy_current_state = (yy_start);
4801 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
4802 if ( yy_accept[yy_current_state] )
4804 (yy_last_accepting_state) = yy_current_state;
4805 (yy_last_accepting_cpos) = yy_cp;
4807 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
4809 yy_current_state = (int) yy_def[yy_current_state];
4810 if ( yy_current_state >= 2809 )
4811 yy_c = yy_meta[(unsigned int) yy_c];
4813 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
4816 while ( yy_base[yy_current_state] != 10175 );
4819 yy_act = yy_accept[yy_current_state];
4821 { /* have to back up */
4822 yy_cp = (yy_last_accepting_cpos);
4823 yy_current_state = (yy_last_accepting_state);
4824 yy_act = yy_accept[yy_current_state];
4827 YY_DO_BEFORE_ACTION;
4829 if ( yy_act != YY_END_OF_BUFFER && yy_rule_can_match_eol[yy_act] )
4832 for ( yyl = 0; yyl < surf_parse_leng; ++yyl )
4833 if ( surf_parse_text[yyl] == '\n' )
4835 surf_parse_lineno++;
4839 do_action: /* This label is used only to access EOF actions. */
4842 { /* beginning of action switch */
4843 case 0: /* must back up */
4844 /* undo the effects of YY_DO_BEFORE_ACTION */
4845 *yy_cp = (yy_hold_char);
4846 yy_cp = (yy_last_accepting_cpos);
4847 yy_current_state = (yy_last_accepting_state);
4848 goto yy_find_action;
4866 /* rule 6 can match eol */
4870 case YY_STATE_EOF(INCOMMENT):
4871 FAIL("EOF in comment.");
4880 /* rule 9 can match eol */
4884 case YY_STATE_EOF(INPI):
4885 FAIL("EOF in PI (processing instruction).");
4888 /* SPACES: skipped uniformly */
4890 /* rule 10 can match eol */
4894 /* PROLOG: determine root element and process it. */
4897 /* rule 11 can match eol */
4902 /* rule 12 can match eol */
4904 FAIL("Bad declaration %s.",surf_parse_text);
4908 /* rule 13 can match eol */
4910 SET(ROOT_surfxml_platform);
4913 /* rule 14 can match eol */
4915 FAIL("Bad declaration %s.",surf_parse_text);
4919 FAIL("Unexpected character `%c' in prolog.", surf_parse_text[0]);
4921 case YY_STATE_EOF(PROLOG):
4922 case YY_STATE_EOF(DOCTYPE):
4923 FAIL("EOF in prolog.");
4926 /* RULES DERIVED FROM DTD. */
4927 /* <!-- Small DTD for SURF based tools. --> */
4929 /* rule 16 can match eol */
4931 FAIL("Starting tag <platform> is not allowed here.");
4934 /* rule 17 can match eol */
4937 AX_surfxml_platform_version = 1;
4938 surfxml_platform_version_isset = 0;
4939 ENTER(AL_surfxml_platform); pushbuffer(0);
4944 /* rule 18 can match eol */
4946 if (surfxml_platform_version_isset != 0) {FAIL("Multiple definition of attribute version in <surfxml_platform>");} surfxml_platform_version_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_platform_version);
4949 /* rule 19 can match eol */
4951 if (surfxml_platform_version_isset != 0) {FAIL("Multiple definition of attribute version in <surfxml_platform>");} surfxml_platform_version_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_platform_version);
4956 LEAVE; STag_surfxml_platform();surfxml_pcdata_ix = 0; ENTER(S_surfxml_platform);
4962 LEAVE; STag_surfxml_platform(); surfxml_pcdata_ix = 0; ETag_surfxml_platform(); popbuffer(); /* attribute */
4964 case ROOT_surfxml_platform: SET(EPILOG); break;
4970 FAIL("Unexpected character `%c' in attribute list of platform element.", surf_parse_text[0]);
4974 FAIL("Bad attribute `%s' in `platform' element start tag.",surf_parse_text);
4976 case YY_STATE_EOF(AL_surfxml_platform):
4977 FAIL("EOF in attribute list of `platform' element.");
4981 /* rule 24 can match eol */
4985 ETag_surfxml_platform();
4986 popbuffer(); /* attribute */
4988 case ROOT_surfxml_platform: SET(EPILOG); break;
4993 /* rule 25 can match eol */
4995 FAIL("Unexpected end-tag `%s': `</platform>' expected.",surf_parse_text);
4999 FAIL("Unexpected character `%c': `</platform>' expected.",surf_parse_text[0]);
5001 case YY_STATE_EOF(S_surfxml_platform_8):
5002 case YY_STATE_EOF(S_surfxml_platform_1):
5003 case YY_STATE_EOF(S_surfxml_platform_3):
5004 case YY_STATE_EOF(S_surfxml_platform):
5005 case YY_STATE_EOF(S_surfxml_platform_4):
5006 case YY_STATE_EOF(S_surfxml_platform_6):
5007 case YY_STATE_EOF(E_surfxml_platform):
5008 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</platform>' expected.");
5012 /* rule 27 can match eol */
5014 FAIL("Starting tag <include> is not allowed here.");
5017 /* rule 28 can match eol */
5020 AX_surfxml_include_file = 0;
5021 surfxml_include_file_isset = 0;
5022 ENTER(AL_surfxml_include); pushbuffer(0);
5027 /* rule 29 can match eol */
5029 if (surfxml_include_file_isset != 0) {FAIL("Multiple definition of attribute file in <surfxml_include>");} surfxml_include_file_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_include_file);
5032 /* rule 30 can match eol */
5034 if (surfxml_include_file_isset != 0) {FAIL("Multiple definition of attribute file in <surfxml_include>");} surfxml_include_file_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_include_file);
5039 if (!AX_surfxml_include_file) FAIL("Required attribute `file' not set for `include' element.");
5040 LEAVE; STag_surfxml_include();surfxml_pcdata_ix = 0; ENTER(S_surfxml_include);
5046 if (!AX_surfxml_include_file) FAIL("Required attribute `file' not set for `include' element.");
5047 LEAVE; STag_surfxml_include(); surfxml_pcdata_ix = 0; ETag_surfxml_include(); popbuffer(); /* attribute */
5049 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5050 case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
5051 case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_6: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break;
5052 case S_surfxml_include: case S_surfxml_include_2: case S_surfxml_include_1: SET(S_surfxml_include_2); break;
5058 FAIL("Unexpected character `%c' in attribute list of include element.", surf_parse_text[0]);
5062 FAIL("Bad attribute `%s' in `include' element start tag.",surf_parse_text);
5064 case YY_STATE_EOF(AL_surfxml_include):
5065 FAIL("EOF in attribute list of `include' element.");
5069 /* rule 35 can match eol */
5073 ETag_surfxml_include();
5074 popbuffer(); /* attribute */
5076 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5077 case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
5078 case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_6: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break;
5079 case S_surfxml_include: case S_surfxml_include_2: case S_surfxml_include_1: SET(S_surfxml_include_2); break;
5084 /* rule 36 can match eol */
5086 FAIL("Unexpected end-tag `%s': `</include>' expected.",surf_parse_text);
5090 FAIL("Unexpected character `%c': `</include>' expected.",surf_parse_text[0]);
5092 case YY_STATE_EOF(E_surfxml_include):
5093 case YY_STATE_EOF(S_surfxml_include):
5094 case YY_STATE_EOF(S_surfxml_include_2):
5095 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</include>' expected.");
5099 /* rule 38 can match eol */
5101 FAIL("Starting tag <trace> is not allowed here.");
5104 /* rule 39 can match eol */
5107 AX_surfxml_trace_id = 0;
5108 surfxml_trace_id_isset = 0;
5109 AX_surfxml_trace_file = 0;
5110 surfxml_trace_file_isset = 0;
5111 AX_surfxml_trace_periodicity = 0;
5112 surfxml_trace_periodicity_isset = 0;
5113 ENTER(AL_surfxml_trace); pushbuffer(0);
5118 /* rule 40 can match eol */
5120 if (surfxml_trace_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_trace>");} surfxml_trace_id_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_trace_id);
5123 /* rule 41 can match eol */
5125 if (surfxml_trace_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_trace>");} surfxml_trace_id_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_trace_id);
5128 /* rule 42 can match eol */
5130 if (surfxml_trace_file_isset != 0) {FAIL("Multiple definition of attribute file in <surfxml_trace>");} surfxml_trace_file_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_trace_file);
5133 /* rule 43 can match eol */
5135 if (surfxml_trace_file_isset != 0) {FAIL("Multiple definition of attribute file in <surfxml_trace>");} surfxml_trace_file_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_trace_file);
5138 /* rule 44 can match eol */
5140 if (surfxml_trace_periodicity_isset != 0) {FAIL("Multiple definition of attribute periodicity in <surfxml_trace>");} surfxml_trace_periodicity_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_trace_periodicity);
5143 /* rule 45 can match eol */
5145 if (surfxml_trace_periodicity_isset != 0) {FAIL("Multiple definition of attribute periodicity in <surfxml_trace>");} surfxml_trace_periodicity_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_trace_periodicity);
5150 if (!AX_surfxml_trace_id) FAIL("Required attribute `id' not set for `trace' element.");
5151 if (!AX_surfxml_trace_periodicity) FAIL("Required attribute `periodicity' not set for `trace' element.");
5152 LEAVE; STag_surfxml_trace();pushbuffer(surfxml_pcdata_ix); BUFFERSET(surfxml_pcdata_ix);; ENTER(IN_trace);
5158 if (!AX_surfxml_trace_id) FAIL("Required attribute `id' not set for `trace' element.");
5159 if (!AX_surfxml_trace_periodicity) FAIL("Required attribute `periodicity' not set for `trace' element.");
5160 LEAVE; STag_surfxml_trace(); surfxml_pcdata_ix = 0; ETag_surfxml_trace(); popbuffer(); /* attribute */
5162 case S_surfxml_AS_8: case S_surfxml_AS_4: case S_surfxml_AS_7: case S_surfxml_AS_6: SET(S_surfxml_AS_8); break;
5163 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5164 case S_surfxml_AS_2: SET(S_surfxml_AS_3); break;
5165 case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break;
5166 case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break;
5167 case S_surfxml_AS_12: case S_surfxml_AS_9: case S_surfxml_AS_13: SET(S_surfxml_AS_13); break;
5168 case S_surfxml_include: case S_surfxml_include_2: case S_surfxml_include_1: SET(S_surfxml_include_2); break;
5174 FAIL("Unexpected character `%c' in attribute list of trace element.", surf_parse_text[0]);
5178 FAIL("Bad attribute `%s' in `trace' element start tag.",surf_parse_text);
5180 case YY_STATE_EOF(AL_surfxml_trace):
5181 FAIL("EOF in attribute list of `trace' element.");
5185 /* rule 50 can match eol */
5190 ETag_surfxml_trace();
5191 surfxml_pcdata_ix = popbuffer();
5192 popbuffer(); /* attribute */
5194 case S_surfxml_AS_8: case S_surfxml_AS_4: case S_surfxml_AS_7: case S_surfxml_AS_6: SET(S_surfxml_AS_8); break;
5195 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5196 case S_surfxml_AS_2: SET(S_surfxml_AS_3); break;
5197 case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break;
5198 case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break;
5199 case S_surfxml_AS_12: case S_surfxml_AS_9: case S_surfxml_AS_13: SET(S_surfxml_AS_13); break;
5200 case S_surfxml_include: case S_surfxml_include_2: case S_surfxml_include_1: SET(S_surfxml_include_2); break;
5205 /* rule 51 can match eol */
5207 FAIL("Unexpected end-tag `%s': `</trace>' expected.",surf_parse_text);
5209 case YY_STATE_EOF(IN_trace):
5210 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</trace>' expected.");
5214 /* rule 52 can match eol */
5216 FAIL("Starting tag <random> is not allowed here.");
5219 /* rule 53 can match eol */
5222 AX_surfxml_random_id = 0;
5223 surfxml_random_id_isset = 0;
5224 AX_surfxml_random_min = 0;
5225 surfxml_random_min_isset = 0;
5226 AX_surfxml_random_max = 0;
5227 surfxml_random_max_isset = 0;
5228 AX_surfxml_random_mean = 0;
5229 surfxml_random_mean_isset = 0;
5230 AX_surfxml_random_std_deviation = 0;
5231 surfxml_random_std_deviation_isset = 0;
5232 AX_surfxml_random_seed = 5;
5233 surfxml_random_seed_isset = 0;
5234 AX_surfxml_random_radical = 0;
5235 surfxml_random_radical_isset = 0;
5236 AX_surfxml_random_generator = A_surfxml_random_generator_DRAND48;
5237 surfxml_random_generator_isset = 0;
5238 ENTER(AL_surfxml_random); pushbuffer(0);
5243 /* rule 54 can match eol */
5245 if (surfxml_random_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_random>");} surfxml_random_id_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_random_id);
5248 /* rule 55 can match eol */
5250 if (surfxml_random_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_random>");} surfxml_random_id_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_random_id);
5253 /* rule 56 can match eol */
5255 if (surfxml_random_min_isset != 0) {FAIL("Multiple definition of attribute min in <surfxml_random>");} surfxml_random_min_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_random_min);
5258 /* rule 57 can match eol */
5260 if (surfxml_random_min_isset != 0) {FAIL("Multiple definition of attribute min in <surfxml_random>");} surfxml_random_min_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_random_min);
5263 /* rule 58 can match eol */
5265 if (surfxml_random_max_isset != 0) {FAIL("Multiple definition of attribute max in <surfxml_random>");} surfxml_random_max_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_random_max);
5268 /* rule 59 can match eol */
5270 if (surfxml_random_max_isset != 0) {FAIL("Multiple definition of attribute max in <surfxml_random>");} surfxml_random_max_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_random_max);
5273 /* rule 60 can match eol */
5275 if (surfxml_random_mean_isset != 0) {FAIL("Multiple definition of attribute mean in <surfxml_random>");} surfxml_random_mean_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_random_mean);
5278 /* rule 61 can match eol */
5280 if (surfxml_random_mean_isset != 0) {FAIL("Multiple definition of attribute mean in <surfxml_random>");} surfxml_random_mean_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_random_mean);
5283 /* rule 62 can match eol */
5285 if (surfxml_random_std_deviation_isset != 0) {FAIL("Multiple definition of attribute std_deviation in <surfxml_random>");} surfxml_random_std_deviation_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_random_std_deviation);
5288 /* rule 63 can match eol */
5290 if (surfxml_random_std_deviation_isset != 0) {FAIL("Multiple definition of attribute std_deviation in <surfxml_random>");} surfxml_random_std_deviation_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_random_std_deviation);
5293 /* rule 64 can match eol */
5295 if (surfxml_random_seed_isset != 0) {FAIL("Multiple definition of attribute seed in <surfxml_random>");} surfxml_random_seed_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_random_seed);
5298 /* rule 65 can match eol */
5300 if (surfxml_random_seed_isset != 0) {FAIL("Multiple definition of attribute seed in <surfxml_random>");} surfxml_random_seed_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_random_seed);
5303 /* rule 66 can match eol */
5305 if (surfxml_random_radical_isset != 0) {FAIL("Multiple definition of attribute radical in <surfxml_random>");} surfxml_random_radical_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_random_radical);
5308 /* rule 67 can match eol */
5310 if (surfxml_random_radical_isset != 0) {FAIL("Multiple definition of attribute radical in <surfxml_random>");} surfxml_random_radical_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_random_radical);
5313 /* rule 68 can match eol */
5315 /* rule 69 can match eol */
5317 A_surfxml_random_generator = A_surfxml_random_generator_DRAND48;
5320 /* rule 70 can match eol */
5322 /* rule 71 can match eol */
5324 A_surfxml_random_generator = A_surfxml_random_generator_RAND;
5327 /* rule 72 can match eol */
5329 /* rule 73 can match eol */
5331 A_surfxml_random_generator = A_surfxml_random_generator_RNGSTREAM;
5334 /* rule 74 can match eol */
5336 /* rule 75 can match eol */
5338 A_surfxml_random_generator = A_surfxml_random_generator_NONE;
5343 if (!AX_surfxml_random_id) FAIL("Required attribute `id' not set for `random' element.");
5344 if (!AX_surfxml_random_min) FAIL("Required attribute `min' not set for `random' element.");
5345 if (!AX_surfxml_random_max) FAIL("Required attribute `max' not set for `random' element.");
5346 if (!AX_surfxml_random_mean) FAIL("Required attribute `mean' not set for `random' element.");
5347 if (!AX_surfxml_random_std_deviation) FAIL("Required attribute `std_deviation' not set for `random' element.");
5348 LEAVE; STag_surfxml_random();surfxml_pcdata_ix = 0; ENTER(S_surfxml_random);
5354 if (!AX_surfxml_random_id) FAIL("Required attribute `id' not set for `random' element.");
5355 if (!AX_surfxml_random_min) FAIL("Required attribute `min' not set for `random' element.");
5356 if (!AX_surfxml_random_max) FAIL("Required attribute `max' not set for `random' element.");
5357 if (!AX_surfxml_random_mean) FAIL("Required attribute `mean' not set for `random' element.");
5358 if (!AX_surfxml_random_std_deviation) FAIL("Required attribute `std_deviation' not set for `random' element.");
5359 LEAVE; STag_surfxml_random(); surfxml_pcdata_ix = 0; ETag_surfxml_random(); popbuffer(); /* attribute */
5361 case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break;
5367 FAIL("Unexpected character `%c' in attribute list of random element.", surf_parse_text[0]);
5371 FAIL("Bad attribute `%s' in `random' element start tag.",surf_parse_text);
5373 case YY_STATE_EOF(AL_surfxml_random):
5374 FAIL("EOF in attribute list of `random' element.");
5378 /* rule 80 can match eol */
5382 ETag_surfxml_random();
5383 popbuffer(); /* attribute */
5385 case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break;
5390 /* rule 81 can match eol */
5392 FAIL("Unexpected end-tag `%s': `</random>' expected.",surf_parse_text);
5396 FAIL("Unexpected character `%c': `</random>' expected.",surf_parse_text[0]);
5398 case YY_STATE_EOF(S_surfxml_random):
5399 case YY_STATE_EOF(S_surfxml_random_2):
5400 case YY_STATE_EOF(E_surfxml_random):
5401 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</random>' expected.");
5405 /* rule 83 can match eol */
5407 FAIL("Starting tag <trace_connect> is not allowed here.");
5410 /* rule 84 can match eol */
5413 AX_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_HOST_AVAIL;
5414 surfxml_trace_connect_kind_isset = 0;
5415 AX_surfxml_trace_connect_trace = 0;
5416 surfxml_trace_connect_trace_isset = 0;
5417 AX_surfxml_trace_connect_element = 0;
5418 surfxml_trace_connect_element_isset = 0;
5419 ENTER(AL_surfxml_trace_connect); pushbuffer(0);
5424 /* rule 85 can match eol */
5426 /* rule 86 can match eol */
5428 A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_HOST_AVAIL;
5431 /* rule 87 can match eol */
5433 /* rule 88 can match eol */
5435 A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_POWER;
5438 /* rule 89 can match eol */
5440 /* rule 90 can match eol */
5442 A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_LINK_AVAIL;
5445 /* rule 91 can match eol */
5447 /* rule 92 can match eol */
5449 A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_BANDWIDTH;
5452 /* rule 93 can match eol */
5454 /* rule 94 can match eol */
5456 A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_LATENCY;
5459 /* rule 95 can match eol */
5461 if (surfxml_trace_connect_trace_isset != 0) {FAIL("Multiple definition of attribute trace in <surfxml_trace_connect>");} surfxml_trace_connect_trace_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_trace_connect_trace);
5464 /* rule 96 can match eol */
5466 if (surfxml_trace_connect_trace_isset != 0) {FAIL("Multiple definition of attribute trace in <surfxml_trace_connect>");} surfxml_trace_connect_trace_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_trace_connect_trace);
5469 /* rule 97 can match eol */
5471 if (surfxml_trace_connect_element_isset != 0) {FAIL("Multiple definition of attribute element in <surfxml_trace_connect>");} surfxml_trace_connect_element_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_trace_connect_element);
5474 /* rule 98 can match eol */
5476 if (surfxml_trace_connect_element_isset != 0) {FAIL("Multiple definition of attribute element in <surfxml_trace_connect>");} surfxml_trace_connect_element_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_trace_connect_element);
5481 if (!AX_surfxml_trace_connect_trace) FAIL("Required attribute `trace' not set for `trace_connect' element.");
5482 if (!AX_surfxml_trace_connect_element) FAIL("Required attribute `element' not set for `trace_connect' element.");
5483 LEAVE; STag_surfxml_trace_connect();surfxml_pcdata_ix = 0; ENTER(E_surfxml_trace_connect);
5489 if (!AX_surfxml_trace_connect_trace) FAIL("Required attribute `trace' not set for `trace_connect' element.");
5490 if (!AX_surfxml_trace_connect_element) FAIL("Required attribute `element' not set for `trace_connect' element.");
5491 LEAVE; STag_surfxml_trace_connect(); surfxml_pcdata_ix = 0; ETag_surfxml_trace_connect(); popbuffer(); /* attribute */
5493 case S_surfxml_AS_8: case S_surfxml_AS_4: case S_surfxml_AS_7: case S_surfxml_AS_6: SET(S_surfxml_AS_8); break;
5494 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5495 case S_surfxml_AS_2: SET(S_surfxml_AS_3); break;
5496 case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break;
5497 case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break;
5498 case S_surfxml_AS_12: case S_surfxml_AS_9: case S_surfxml_AS_13: SET(S_surfxml_AS_13); break;
5499 case S_surfxml_include: case S_surfxml_include_2: case S_surfxml_include_1: SET(S_surfxml_include_2); break;
5505 FAIL("Unexpected character `%c' in attribute list of trace_connect element.", surf_parse_text[0]);
5509 FAIL("Bad attribute `%s' in `trace_connect' element start tag.",surf_parse_text);
5511 case YY_STATE_EOF(AL_surfxml_trace_connect):
5512 FAIL("EOF in attribute list of `trace_connect' element.");
5516 /* rule 103 can match eol */
5520 ETag_surfxml_trace_connect();
5521 popbuffer(); /* attribute */
5523 case S_surfxml_AS_8: case S_surfxml_AS_4: case S_surfxml_AS_7: case S_surfxml_AS_6: SET(S_surfxml_AS_8); break;
5524 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5525 case S_surfxml_AS_2: SET(S_surfxml_AS_3); break;
5526 case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break;
5527 case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break;
5528 case S_surfxml_AS_12: case S_surfxml_AS_9: case S_surfxml_AS_13: SET(S_surfxml_AS_13); break;
5529 case S_surfxml_include: case S_surfxml_include_2: case S_surfxml_include_1: SET(S_surfxml_include_2); break;
5534 /* rule 104 can match eol */
5536 FAIL("Unexpected end-tag `%s': `</trace_connect>' expected.",surf_parse_text);
5540 FAIL("Unexpected character `%c': `</trace_connect>' expected.",surf_parse_text[0]);
5542 case YY_STATE_EOF(E_surfxml_trace_connect):
5543 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</trace_connect>' expected.");
5547 /* rule 106 can match eol */
5549 FAIL("Starting tag <AS> is not allowed here.");
5552 /* rule 107 can match eol */
5555 AX_surfxml_AS_id = 0;
5556 surfxml_AS_id_isset = 0;
5557 AX_surfxml_AS_routing = 0;
5558 surfxml_AS_routing_isset = 0;
5559 ENTER(AL_surfxml_AS); pushbuffer(0);
5564 /* rule 108 can match eol */
5566 if (surfxml_AS_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_AS>");} surfxml_AS_id_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_AS_id);
5569 /* rule 109 can match eol */
5571 if (surfxml_AS_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_AS>");} surfxml_AS_id_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_AS_id);
5574 /* rule 110 can match eol */
5576 if (surfxml_AS_routing_isset != 0) {FAIL("Multiple definition of attribute routing in <surfxml_AS>");} surfxml_AS_routing_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_AS_routing);
5579 /* rule 111 can match eol */
5581 if (surfxml_AS_routing_isset != 0) {FAIL("Multiple definition of attribute routing in <surfxml_AS>");} surfxml_AS_routing_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_AS_routing);
5586 if (!AX_surfxml_AS_id) FAIL("Required attribute `id' not set for `AS' element.");
5587 if (!AX_surfxml_AS_routing) FAIL("Required attribute `routing' not set for `AS' element.");
5588 LEAVE; STag_surfxml_AS();surfxml_pcdata_ix = 0; ENTER(S_surfxml_AS);
5594 if (!AX_surfxml_AS_id) FAIL("Required attribute `id' not set for `AS' element.");
5595 if (!AX_surfxml_AS_routing) FAIL("Required attribute `routing' not set for `AS' element.");
5596 LEAVE; STag_surfxml_AS(); surfxml_pcdata_ix = 0; ETag_surfxml_AS(); popbuffer(); /* attribute */
5598 case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
5599 case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break;
5600 case S_surfxml_include: case S_surfxml_include_2: case S_surfxml_include_1: SET(S_surfxml_include_2); break;
5606 FAIL("Unexpected character `%c' in attribute list of AS element.", surf_parse_text[0]);
5610 FAIL("Bad attribute `%s' in `AS' element start tag.",surf_parse_text);
5612 case YY_STATE_EOF(AL_surfxml_AS):
5613 FAIL("EOF in attribute list of `AS' element.");
5617 /* rule 116 can match eol */
5622 popbuffer(); /* attribute */
5624 case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
5625 case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break;
5626 case S_surfxml_include: case S_surfxml_include_2: case S_surfxml_include_1: SET(S_surfxml_include_2); break;
5631 /* rule 117 can match eol */
5633 FAIL("Unexpected end-tag `%s': `</AS>' expected.",surf_parse_text);
5637 FAIL("Unexpected character `%c': `</AS>' expected.",surf_parse_text[0]);
5639 case YY_STATE_EOF(S_surfxml_AS_9):
5640 case YY_STATE_EOF(S_surfxml_AS_1):
5641 case YY_STATE_EOF(S_surfxml_AS_11):
5642 case YY_STATE_EOF(S_surfxml_AS_6):
5643 case YY_STATE_EOF(E_surfxml_AS):
5644 case YY_STATE_EOF(S_surfxml_AS_3):
5645 case YY_STATE_EOF(S_surfxml_AS_13):
5646 case YY_STATE_EOF(S_surfxml_AS_8):
5647 case YY_STATE_EOF(S_surfxml_AS):
5648 case YY_STATE_EOF(S_surfxml_AS_4):
5649 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</AS>' expected.");
5653 /* rule 119 can match eol */
5655 FAIL("Starting tag <storage_type> is not allowed here.");
5658 /* rule 120 can match eol */
5661 AX_surfxml_storage_type_id = 0;
5662 surfxml_storage_type_id_isset = 0;
5663 AX_surfxml_storage_type_model = 0;
5664 surfxml_storage_type_model_isset = 0;
5665 AX_surfxml_storage_type_size = 0;
5666 surfxml_storage_type_size_isset = 0;
5667 AX_surfxml_storage_type_content = 0;
5668 surfxml_storage_type_content_isset = 0;
5669 ENTER(AL_surfxml_storage_type); pushbuffer(0);
5674 /* rule 121 can match eol */
5676 if (surfxml_storage_type_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_storage_type>");} surfxml_storage_type_id_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_storage_type_id);
5679 /* rule 122 can match eol */
5681 if (surfxml_storage_type_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_storage_type>");} surfxml_storage_type_id_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_storage_type_id);
5684 /* rule 123 can match eol */
5686 if (surfxml_storage_type_model_isset != 0) {FAIL("Multiple definition of attribute model in <surfxml_storage_type>");} surfxml_storage_type_model_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_storage_type_model);
5689 /* rule 124 can match eol */
5691 if (surfxml_storage_type_model_isset != 0) {FAIL("Multiple definition of attribute model in <surfxml_storage_type>");} surfxml_storage_type_model_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_storage_type_model);
5694 /* rule 125 can match eol */
5696 if (surfxml_storage_type_size_isset != 0) {FAIL("Multiple definition of attribute size in <surfxml_storage_type>");} surfxml_storage_type_size_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_storage_type_size);
5699 /* rule 126 can match eol */
5701 if (surfxml_storage_type_size_isset != 0) {FAIL("Multiple definition of attribute size in <surfxml_storage_type>");} surfxml_storage_type_size_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_storage_type_size);
5704 /* rule 127 can match eol */
5706 if (surfxml_storage_type_content_isset != 0) {FAIL("Multiple definition of attribute content in <surfxml_storage_type>");} surfxml_storage_type_content_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_storage_type_content);
5709 /* rule 128 can match eol */
5711 if (surfxml_storage_type_content_isset != 0) {FAIL("Multiple definition of attribute content in <surfxml_storage_type>");} surfxml_storage_type_content_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_storage_type_content);
5716 if (!AX_surfxml_storage_type_id) FAIL("Required attribute `id' not set for `storage_type' element.");
5717 if (!AX_surfxml_storage_type_model) FAIL("Required attribute `model' not set for `storage_type' element.");
5718 if (!AX_surfxml_storage_type_size) FAIL("Required attribute `size' not set for `storage_type' element.");
5719 LEAVE; STag_surfxml_storage_type();surfxml_pcdata_ix = 0; ENTER(S_surfxml_storage_type);
5725 if (!AX_surfxml_storage_type_id) FAIL("Required attribute `id' not set for `storage_type' element.");
5726 if (!AX_surfxml_storage_type_model) FAIL("Required attribute `model' not set for `storage_type' element.");
5727 if (!AX_surfxml_storage_type_size) FAIL("Required attribute `size' not set for `storage_type' element.");
5728 LEAVE; STag_surfxml_storage_type(); surfxml_pcdata_ix = 0; ETag_surfxml_storage_type(); popbuffer(); /* attribute */
5730 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5731 case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
5737 FAIL("Unexpected character `%c' in attribute list of storage_type element.", surf_parse_text[0]);
5741 FAIL("Bad attribute `%s' in `storage_type' element start tag.",surf_parse_text);
5743 case YY_STATE_EOF(AL_surfxml_storage_type):
5744 FAIL("EOF in attribute list of `storage_type' element.");
5748 /* rule 133 can match eol */
5752 ETag_surfxml_storage_type();
5753 popbuffer(); /* attribute */
5755 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5756 case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
5761 /* rule 134 can match eol */
5763 FAIL("Unexpected end-tag `%s': `</storage_type>' expected.",surf_parse_text);
5767 FAIL("Unexpected character `%c': `</storage_type>' expected.",surf_parse_text[0]);
5769 case YY_STATE_EOF(E_surfxml_storage_type):
5770 case YY_STATE_EOF(S_surfxml_storage_type_2):
5771 case YY_STATE_EOF(S_surfxml_storage_type):
5772 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</storage_type>' expected.");
5776 /* rule 136 can match eol */
5778 FAIL("Starting tag <storage> is not allowed here.");
5781 /* rule 137 can match eol */
5784 AX_surfxml_storage_id = 0;
5785 surfxml_storage_id_isset = 0;
5786 AX_surfxml_storage_typeId = 0;
5787 surfxml_storage_typeId_isset = 0;
5788 AX_surfxml_storage_content = 0;
5789 surfxml_storage_content_isset = 0;
5790 ENTER(AL_surfxml_storage); pushbuffer(0);
5795 /* rule 138 can match eol */
5797 if (surfxml_storage_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_storage>");} surfxml_storage_id_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_storage_id);
5800 /* rule 139 can match eol */
5802 if (surfxml_storage_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_storage>");} surfxml_storage_id_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_storage_id);
5805 /* rule 140 can match eol */
5807 if (surfxml_storage_typeId_isset != 0) {FAIL("Multiple definition of attribute typeId in <surfxml_storage>");} surfxml_storage_typeId_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_storage_typeId);
5810 /* rule 141 can match eol */
5812 if (surfxml_storage_typeId_isset != 0) {FAIL("Multiple definition of attribute typeId in <surfxml_storage>");} surfxml_storage_typeId_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_storage_typeId);
5815 /* rule 142 can match eol */
5817 if (surfxml_storage_content_isset != 0) {FAIL("Multiple definition of attribute content in <surfxml_storage>");} surfxml_storage_content_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_storage_content);
5820 /* rule 143 can match eol */
5822 if (surfxml_storage_content_isset != 0) {FAIL("Multiple definition of attribute content in <surfxml_storage>");} surfxml_storage_content_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_storage_content);
5827 if (!AX_surfxml_storage_id) FAIL("Required attribute `id' not set for `storage' element.");
5828 if (!AX_surfxml_storage_typeId) FAIL("Required attribute `typeId' not set for `storage' element.");
5829 LEAVE; STag_surfxml_storage();surfxml_pcdata_ix = 0; ENTER(S_surfxml_storage);
5835 if (!AX_surfxml_storage_id) FAIL("Required attribute `id' not set for `storage' element.");
5836 if (!AX_surfxml_storage_typeId) FAIL("Required attribute `typeId' not set for `storage' element.");
5837 LEAVE; STag_surfxml_storage(); surfxml_pcdata_ix = 0; ETag_surfxml_storage(); popbuffer(); /* attribute */
5839 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5840 case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
5846 FAIL("Unexpected character `%c' in attribute list of storage element.", surf_parse_text[0]);
5850 FAIL("Bad attribute `%s' in `storage' element start tag.",surf_parse_text);
5852 case YY_STATE_EOF(AL_surfxml_storage):
5853 FAIL("EOF in attribute list of `storage' element.");
5857 /* rule 148 can match eol */
5861 ETag_surfxml_storage();
5862 popbuffer(); /* attribute */
5864 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5865 case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
5870 /* rule 149 can match eol */
5872 FAIL("Unexpected end-tag `%s': `</storage>' expected.",surf_parse_text);
5876 FAIL("Unexpected character `%c': `</storage>' expected.",surf_parse_text[0]);
5878 case YY_STATE_EOF(E_surfxml_storage):
5879 case YY_STATE_EOF(S_surfxml_storage):
5880 case YY_STATE_EOF(S_surfxml_storage_2):
5881 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</storage>' expected.");
5885 /* rule 151 can match eol */
5887 FAIL("Starting tag <mount> is not allowed here.");
5890 /* rule 152 can match eol */
5893 AX_surfxml_mount_id = 0;
5894 surfxml_mount_id_isset = 0;
5895 AX_surfxml_mount_name = 0;
5896 surfxml_mount_name_isset = 0;
5897 ENTER(AL_surfxml_mount); pushbuffer(0);
5902 /* rule 153 can match eol */
5904 if (surfxml_mount_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_mount>");} surfxml_mount_id_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_mount_id);
5907 /* rule 154 can match eol */
5909 if (surfxml_mount_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_mount>");} surfxml_mount_id_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_mount_id);
5912 /* rule 155 can match eol */
5914 if (surfxml_mount_name_isset != 0) {FAIL("Multiple definition of attribute name in <surfxml_mount>");} surfxml_mount_name_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_mount_name);
5917 /* rule 156 can match eol */
5919 if (surfxml_mount_name_isset != 0) {FAIL("Multiple definition of attribute name in <surfxml_mount>");} surfxml_mount_name_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_mount_name);
5924 if (!AX_surfxml_mount_id) FAIL("Required attribute `id' not set for `mount' element.");
5925 if (!AX_surfxml_mount_name) FAIL("Required attribute `name' not set for `mount' element.");
5926 LEAVE; STag_surfxml_mount();surfxml_pcdata_ix = 0; ENTER(E_surfxml_mount);
5932 if (!AX_surfxml_mount_id) FAIL("Required attribute `id' not set for `mount' element.");
5933 if (!AX_surfxml_mount_name) FAIL("Required attribute `name' not set for `mount' element.");
5934 LEAVE; STag_surfxml_mount(); surfxml_pcdata_ix = 0; ETag_surfxml_mount(); popbuffer(); /* attribute */
5936 case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break;
5942 FAIL("Unexpected character `%c' in attribute list of mount element.", surf_parse_text[0]);
5946 FAIL("Bad attribute `%s' in `mount' element start tag.",surf_parse_text);
5948 case YY_STATE_EOF(AL_surfxml_mount):
5949 FAIL("EOF in attribute list of `mount' element.");
5953 /* rule 161 can match eol */
5957 ETag_surfxml_mount();
5958 popbuffer(); /* attribute */
5960 case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break;
5965 /* rule 162 can match eol */
5967 FAIL("Unexpected end-tag `%s': `</mount>' expected.",surf_parse_text);
5971 FAIL("Unexpected character `%c': `</mount>' expected.",surf_parse_text[0]);
5973 case YY_STATE_EOF(E_surfxml_mount):
5974 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</mount>' expected.");
5978 /* rule 164 can match eol */
5980 FAIL("Starting tag <mstorage> is not allowed here.");
5983 /* rule 165 can match eol */
5986 AX_surfxml_mstorage_typeId = 0;
5987 surfxml_mstorage_typeId_isset = 0;
5988 AX_surfxml_mstorage_name = 0;
5989 surfxml_mstorage_name_isset = 0;
5990 ENTER(AL_surfxml_mstorage); pushbuffer(0);
5995 /* rule 166 can match eol */
5997 if (surfxml_mstorage_typeId_isset != 0) {FAIL("Multiple definition of attribute typeId in <surfxml_mstorage>");} surfxml_mstorage_typeId_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_mstorage_typeId);
6000 /* rule 167 can match eol */
6002 if (surfxml_mstorage_typeId_isset != 0) {FAIL("Multiple definition of attribute typeId in <surfxml_mstorage>");} surfxml_mstorage_typeId_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_mstorage_typeId);
6005 /* rule 168 can match eol */
6007 if (surfxml_mstorage_name_isset != 0) {FAIL("Multiple definition of attribute name in <surfxml_mstorage>");} surfxml_mstorage_name_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_mstorage_name);
6010 /* rule 169 can match eol */
6012 if (surfxml_mstorage_name_isset != 0) {FAIL("Multiple definition of attribute name in <surfxml_mstorage>");} surfxml_mstorage_name_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_mstorage_name);
6017 if (!AX_surfxml_mstorage_typeId) FAIL("Required attribute `typeId' not set for `mstorage' element.");
6018 if (!AX_surfxml_mstorage_name) FAIL("Required attribute `name' not set for `mstorage' element.");
6019 LEAVE; STag_surfxml_mstorage();surfxml_pcdata_ix = 0; ENTER(E_surfxml_mstorage);
6025 if (!AX_surfxml_mstorage_typeId) FAIL("Required attribute `typeId' not set for `mstorage' element.");
6026 if (!AX_surfxml_mstorage_name) FAIL("Required attribute `name' not set for `mstorage' element.");
6027 LEAVE; STag_surfxml_mstorage(); surfxml_pcdata_ix = 0; ETag_surfxml_mstorage(); popbuffer(); /* attribute */
6029 case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break;
6035 FAIL("Unexpected character `%c' in attribute list of mstorage element.", surf_parse_text[0]);
6039 FAIL("Bad attribute `%s' in `mstorage' element start tag.",surf_parse_text);
6041 case YY_STATE_EOF(AL_surfxml_mstorage):
6042 FAIL("EOF in attribute list of `mstorage' element.");
6046 /* rule 174 can match eol */
6050 ETag_surfxml_mstorage();
6051 popbuffer(); /* attribute */
6053 case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break;
6058 /* rule 175 can match eol */
6060 FAIL("Unexpected end-tag `%s': `</mstorage>' expected.",surf_parse_text);
6064 FAIL("Unexpected character `%c': `</mstorage>' expected.",surf_parse_text[0]);
6066 case YY_STATE_EOF(E_surfxml_mstorage):
6067 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</mstorage>' expected.");
6071 /* rule 177 can match eol */
6073 FAIL("Starting tag <host> is not allowed here.");
6076 /* rule 178 can match eol */
6079 AX_surfxml_host_id = 0;
6080 surfxml_host_id_isset = 0;
6081 AX_surfxml_host_power = 0;
6082 surfxml_host_power_isset = 0;
6083 AX_surfxml_host_core = 16;
6084 surfxml_host_core_isset = 0;
6085 AX_surfxml_host_availability = 18;
6086 surfxml_host_availability_isset = 0;
6087 AX_surfxml_host_availability_file = 0;
6088 surfxml_host_availability_file_isset = 0;
6089 AX_surfxml_host_state = A_surfxml_host_state_ON;
6090 surfxml_host_state_isset = 0;
6091 AX_surfxml_host_state_file = 0;
6092 surfxml_host_state_file_isset = 0;
6093 AX_surfxml_host_coordinates = 0;
6094 surfxml_host_coordinates_isset = 0;
6095 ENTER(AL_surfxml_host); pushbuffer(0);
6100 /* rule 179 can match eol */
6102 if (surfxml_host_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_host>");} surfxml_host_id_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_host_id);
6105 /* rule 180 can match eol */
6107 if (surfxml_host_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_host>");} surfxml_host_id_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_host_id);
6110 /* rule 181 can match eol */
6112 if (surfxml_host_power_isset != 0) {FAIL("Multiple definition of attribute power in <surfxml_host>");} surfxml_host_power_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_host_power);
6115 /* rule 182 can match eol */
6117 if (surfxml_host_power_isset != 0) {FAIL("Multiple definition of attribute power in <surfxml_host>");} surfxml_host_power_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_host_power);
6120 /* rule 183 can match eol */
6122 if (surfxml_host_core_isset != 0) {FAIL("Multiple definition of attribute core in <surfxml_host>");} surfxml_host_core_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_host_core);
6125 /* rule 184 can match eol */
6127 if (surfxml_host_core_isset != 0) {FAIL("Multiple definition of attribute core in <surfxml_host>");} surfxml_host_core_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_host_core);
6130 /* rule 185 can match eol */
6132 if (surfxml_host_availability_isset != 0) {FAIL("Multiple definition of attribute availability in <surfxml_host>");} surfxml_host_availability_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_host_availability);
6135 /* rule 186 can match eol */
6137 if (surfxml_host_availability_isset != 0) {FAIL("Multiple definition of attribute availability in <surfxml_host>");} surfxml_host_availability_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_host_availability);
6140 /* rule 187 can match eol */
6142 if (surfxml_host_availability_file_isset != 0) {FAIL("Multiple definition of attribute availability_file in <surfxml_host>");} surfxml_host_availability_file_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_host_availability_file);
6145 /* rule 188 can match eol */
6147 if (surfxml_host_availability_file_isset != 0) {FAIL("Multiple definition of attribute availability_file in <surfxml_host>");} surfxml_host_availability_file_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_host_availability_file);
6150 /* rule 189 can match eol */
6152 /* rule 190 can match eol */
6154 A_surfxml_host_state = A_surfxml_host_state_ON;
6157 /* rule 191 can match eol */
6159 /* rule 192 can match eol */
6161 A_surfxml_host_state = A_surfxml_host_state_OFF;
6164 /* rule 193 can match eol */
6166 if (surfxml_host_state_file_isset != 0) {FAIL("Multiple definition of attribute state_file in <surfxml_host>");} surfxml_host_state_file_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_host_state_file);
6169 /* rule 194 can match eol */
6171 if (surfxml_host_state_file_isset != 0) {FAIL("Multiple definition of attribute state_file in <surfxml_host>");} surfxml_host_state_file_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_host_state_file);
6174 /* rule 195 can match eol */
6176 if (surfxml_host_coordinates_isset != 0) {FAIL("Multiple definition of attribute coordinates in <surfxml_host>");} surfxml_host_coordinates_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_host_coordinates);
6179 /* rule 196 can match eol */
6181 if (surfxml_host_coordinates_isset != 0) {FAIL("Multiple definition of attribute coordinates in <surfxml_host>");} surfxml_host_coordinates_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_host_coordinates);
6186 if (!AX_surfxml_host_id) FAIL("Required attribute `id' not set for `host' element.");
6187 if (!AX_surfxml_host_power) FAIL("Required attribute `power' not set for `host' element.");
6188 LEAVE; STag_surfxml_host();surfxml_pcdata_ix = 0; ENTER(S_surfxml_host);
6194 if (!AX_surfxml_host_id) FAIL("Required attribute `id' not set for `host' element.");
6195 if (!AX_surfxml_host_power) FAIL("Required attribute `power' not set for `host' element.");
6196 LEAVE; STag_surfxml_host(); surfxml_pcdata_ix = 0; ETag_surfxml_host(); popbuffer(); /* attribute */
6198 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
6204 FAIL("Unexpected character `%c' in attribute list of host element.", surf_parse_text[0]);
6208 FAIL("Bad attribute `%s' in `host' element start tag.",surf_parse_text);
6210 case YY_STATE_EOF(AL_surfxml_host):
6211 FAIL("EOF in attribute list of `host' element.");
6215 /* rule 201 can match eol */
6219 ETag_surfxml_host();
6220 popbuffer(); /* attribute */
6222 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
6227 /* rule 202 can match eol */
6229 FAIL("Unexpected end-tag `%s': `</host>' expected.",surf_parse_text);
6233 FAIL("Unexpected character `%c': `</host>' expected.",surf_parse_text[0]);
6235 case YY_STATE_EOF(S_surfxml_host):
6236 case YY_STATE_EOF(E_surfxml_host):
6237 case YY_STATE_EOF(S_surfxml_host_2):
6238 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</host>' expected.");
6242 /* rule 204 can match eol */
6244 FAIL("Starting tag <cluster> is not allowed here.");
6247 /* rule 205 can match eol */
6250 AX_surfxml_cluster_id = 0;
6251 surfxml_cluster_id_isset = 0;
6252 AX_surfxml_cluster_prefix = 0;
6253 surfxml_cluster_prefix_isset = 0;
6254 AX_surfxml_cluster_suffix = 0;
6255 surfxml_cluster_suffix_isset = 0;
6256 AX_surfxml_cluster_radical = 0;
6257 surfxml_cluster_radical_isset = 0;
6258 AX_surfxml_cluster_power = 0;
6259 surfxml_cluster_power_isset = 0;
6260 AX_surfxml_cluster_core = 22;
6261 surfxml_cluster_core_isset = 0;
6262 AX_surfxml_cluster_bw = 0;
6263 surfxml_cluster_bw_isset = 0;
6264 AX_surfxml_cluster_lat = 0;
6265 surfxml_cluster_lat_isset = 0;
6266 AX_surfxml_cluster_sharing_policy = A_surfxml_cluster_sharing_policy_FULLDUPLEX;
6267 surfxml_cluster_sharing_policy_isset = 0;
6268 AX_surfxml_cluster_bb_bw = 0;
6269 surfxml_cluster_bb_bw_isset = 0;
6270 AX_surfxml_cluster_bb_lat = 0;
6271 surfxml_cluster_bb_lat_isset = 0;
6272 AX_surfxml_cluster_bb_sharing_policy = A_surfxml_cluster_bb_sharing_policy_SHARED;
6273 surfxml_cluster_bb_sharing_policy_isset = 0;
6274 AX_surfxml_cluster_availability_file = 0;
6275 surfxml_cluster_availability_file_isset = 0;
6276 AX_surfxml_cluster_state_file = 0;
6277 surfxml_cluster_state_file_isset = 0;
6278 AX_surfxml_cluster_router_id = 0;
6279 surfxml_cluster_router_id_isset = 0;
6280 ENTER(AL_surfxml_cluster); pushbuffer(0);
6285 /* rule 206 can match eol */
6287 if (surfxml_cluster_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_cluster>");} surfxml_cluster_id_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_cluster_id);
6290 /* rule 207 can match eol */
6292 if (surfxml_cluster_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_cluster>");} surfxml_cluster_id_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_cluster_id);
6295 /* rule 208 can match eol */
6297 if (surfxml_cluster_prefix_isset != 0) {FAIL("Multiple definition of attribute prefix in <surfxml_cluster>");} surfxml_cluster_prefix_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_cluster_prefix);
6300 /* rule 209 can match eol */
6302 if (surfxml_cluster_prefix_isset != 0) {FAIL("Multiple definition of attribute prefix in <surfxml_cluster>");} surfxml_cluster_prefix_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_cluster_prefix);
6305 /* rule 210 can match eol */
6307 if (surfxml_cluster_suffix_isset != 0) {FAIL("Multiple definition of attribute suffix in <surfxml_cluster>");} surfxml_cluster_suffix_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_cluster_suffix);
6310 /* rule 211 can match eol */
6312 if (surfxml_cluster_suffix_isset != 0) {FAIL("Multiple definition of attribute suffix in <surfxml_cluster>");} surfxml_cluster_suffix_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_cluster_suffix);
6315 /* rule 212 can match eol */
6317 if (surfxml_cluster_radical_isset != 0) {FAIL("Multiple definition of attribute radical in <surfxml_cluster>");} surfxml_cluster_radical_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_cluster_radical);
6320 /* rule 213 can match eol */
6322 if (surfxml_cluster_radical_isset != 0) {FAIL("Multiple definition of attribute radical in <surfxml_cluster>");} surfxml_cluster_radical_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_cluster_radical);
6325 /* rule 214 can match eol */
6327 if (surfxml_cluster_power_isset != 0) {FAIL("Multiple definition of attribute power in <surfxml_cluster>");} surfxml_cluster_power_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_cluster_power);
6330 /* rule 215 can match eol */
6332 if (surfxml_cluster_power_isset != 0) {FAIL("Multiple definition of attribute power in <surfxml_cluster>");} surfxml_cluster_power_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_cluster_power);
6335 /* rule 216 can match eol */
6337 if (surfxml_cluster_core_isset != 0) {FAIL("Multiple definition of attribute core in <surfxml_cluster>");} surfxml_cluster_core_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_cluster_core);
6340 /* rule 217 can match eol */
6342 if (surfxml_cluster_core_isset != 0) {FAIL("Multiple definition of attribute core in <surfxml_cluster>");} surfxml_cluster_core_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_cluster_core);
6345 /* rule 218 can match eol */
6347 if (surfxml_cluster_bw_isset != 0) {FAIL("Multiple definition of attribute bw in <surfxml_cluster>");} surfxml_cluster_bw_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_cluster_bw);
6350 /* rule 219 can match eol */
6352 if (surfxml_cluster_bw_isset != 0) {FAIL("Multiple definition of attribute bw in <surfxml_cluster>");} surfxml_cluster_bw_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_cluster_bw);
6355 /* rule 220 can match eol */
6357 if (surfxml_cluster_lat_isset != 0) {FAIL("Multiple definition of attribute lat in <surfxml_cluster>");} surfxml_cluster_lat_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_cluster_lat);
6360 /* rule 221 can match eol */
6362 if (surfxml_cluster_lat_isset != 0) {FAIL("Multiple definition of attribute lat in <surfxml_cluster>");} surfxml_cluster_lat_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_cluster_lat);
6365 /* rule 222 can match eol */
6367 /* rule 223 can match eol */
6369 A_surfxml_cluster_sharing_policy = A_surfxml_cluster_sharing_policy_SHARED;
6372 /* rule 224 can match eol */
6374 /* rule 225 can match eol */
6376 A_surfxml_cluster_sharing_policy = A_surfxml_cluster_sharing_policy_FULLDUPLEX;
6379 /* rule 226 can match eol */
6381 /* rule 227 can match eol */
6383 A_surfxml_cluster_sharing_policy = A_surfxml_cluster_sharing_policy_FATPIPE;
6386 /* rule 228 can match eol */
6388 if (surfxml_cluster_bb_bw_isset != 0) {FAIL("Multiple definition of attribute bb_bw in <surfxml_cluster>");} surfxml_cluster_bb_bw_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_cluster_bb_bw);
6391 /* rule 229 can match eol */
6393 if (surfxml_cluster_bb_bw_isset != 0) {FAIL("Multiple definition of attribute bb_bw in <surfxml_cluster>");} surfxml_cluster_bb_bw_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_cluster_bb_bw);
6396 /* rule 230 can match eol */
6398 if (surfxml_cluster_bb_lat_isset != 0) {FAIL("Multiple definition of attribute bb_lat in <surfxml_cluster>");} surfxml_cluster_bb_lat_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_cluster_bb_lat);
6401 /* rule 231 can match eol */
6403 if (surfxml_cluster_bb_lat_isset != 0) {FAIL("Multiple definition of attribute bb_lat in <surfxml_cluster>");} surfxml_cluster_bb_lat_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_cluster_bb_lat);
6406 /* rule 232 can match eol */
6408 /* rule 233 can match eol */
6410 A_surfxml_cluster_bb_sharing_policy = A_surfxml_cluster_bb_sharing_policy_SHARED;
6413 /* rule 234 can match eol */
6415 /* rule 235 can match eol */
6417 A_surfxml_cluster_bb_sharing_policy = A_surfxml_cluster_bb_sharing_policy_FATPIPE;
6420 /* rule 236 can match eol */
6422 if (surfxml_cluster_availability_file_isset != 0) {FAIL("Multiple definition of attribute availability_file in <surfxml_cluster>");} surfxml_cluster_availability_file_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_cluster_availability_file);
6425 /* rule 237 can match eol */
6427 if (surfxml_cluster_availability_file_isset != 0) {FAIL("Multiple definition of attribute availability_file in <surfxml_cluster>");} surfxml_cluster_availability_file_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_cluster_availability_file);
6430 /* rule 238 can match eol */
6432 if (surfxml_cluster_state_file_isset != 0) {FAIL("Multiple definition of attribute state_file in <surfxml_cluster>");} surfxml_cluster_state_file_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_cluster_state_file);
6435 /* rule 239 can match eol */
6437 if (surfxml_cluster_state_file_isset != 0) {FAIL("Multiple definition of attribute state_file in <surfxml_cluster>");} surfxml_cluster_state_file_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_cluster_state_file);
6440 /* rule 240 can match eol */
6442 if (surfxml_cluster_router_id_isset != 0) {FAIL("Multiple definition of attribute router_id in <surfxml_cluster>");} surfxml_cluster_router_id_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_cluster_router_id);
6445 /* rule 241 can match eol */
6447 if (surfxml_cluster_router_id_isset != 0) {FAIL("Multiple definition of attribute router_id in <surfxml_cluster>");} surfxml_cluster_router_id_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_cluster_router_id);
6452 if (!AX_surfxml_cluster_id) FAIL("Required attribute `id' not set for `cluster' element.");
6453 if (!AX_surfxml_cluster_prefix) FAIL("Required attribute `prefix' not set for `cluster' element.");
6454 if (!AX_surfxml_cluster_suffix) FAIL("Required attribute `suffix' not set for `cluster' element.");
6455 if (!AX_surfxml_cluster_radical) FAIL("Required attribute `radical' not set for `cluster' element.");
6456 if (!AX_surfxml_cluster_power) FAIL("Required attribute `power' not set for `cluster' element.");
6457 if (!AX_surfxml_cluster_bw) FAIL("Required attribute `bw' not set for `cluster' element.");
6458 if (!AX_surfxml_cluster_lat) FAIL("Required attribute `lat' not set for `cluster' element.");
6459 LEAVE; STag_surfxml_cluster();surfxml_pcdata_ix = 0; ENTER(E_surfxml_cluster);
6465 if (!AX_surfxml_cluster_id) FAIL("Required attribute `id' not set for `cluster' element.");
6466 if (!AX_surfxml_cluster_prefix) FAIL("Required attribute `prefix' not set for `cluster' element.");
6467 if (!AX_surfxml_cluster_suffix) FAIL("Required attribute `suffix' not set for `cluster' element.");
6468 if (!AX_surfxml_cluster_radical) FAIL("Required attribute `radical' not set for `cluster' element.");
6469 if (!AX_surfxml_cluster_power) FAIL("Required attribute `power' not set for `cluster' element.");
6470 if (!AX_surfxml_cluster_bw) FAIL("Required attribute `bw' not set for `cluster' element.");
6471 if (!AX_surfxml_cluster_lat) FAIL("Required attribute `lat' not set for `cluster' element.");
6472 LEAVE; STag_surfxml_cluster(); surfxml_pcdata_ix = 0; ETag_surfxml_cluster(); popbuffer(); /* attribute */
6474 case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
6475 case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break;
6476 case S_surfxml_include: case S_surfxml_include_2: case S_surfxml_include_1: SET(S_surfxml_include_2); break;
6482 FAIL("Unexpected character `%c' in attribute list of cluster element.", surf_parse_text[0]);
6486 FAIL("Bad attribute `%s' in `cluster' element start tag.",surf_parse_text);
6488 case YY_STATE_EOF(AL_surfxml_cluster):
6489 FAIL("EOF in attribute list of `cluster' element.");
6493 /* rule 246 can match eol */
6497 ETag_surfxml_cluster();
6498 popbuffer(); /* attribute */
6500 case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
6501 case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break;
6502 case S_surfxml_include: case S_surfxml_include_2: case S_surfxml_include_1: SET(S_surfxml_include_2); break;
6507 /* rule 247 can match eol */
6509 FAIL("Unexpected end-tag `%s': `</cluster>' expected.",surf_parse_text);
6513 FAIL("Unexpected character `%c': `</cluster>' expected.",surf_parse_text[0]);
6515 case YY_STATE_EOF(E_surfxml_cluster):
6516 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</cluster>' expected.");
6520 /* rule 249 can match eol */
6522 FAIL("Starting tag <peer> is not allowed here.");
6525 /* rule 250 can match eol */
6528 AX_surfxml_peer_id = 0;
6529 surfxml_peer_id_isset = 0;
6530 AX_surfxml_peer_power = 0;
6531 surfxml_peer_power_isset = 0;
6532 AX_surfxml_peer_bw_in = 0;
6533 surfxml_peer_bw_in_isset = 0;
6534 AX_surfxml_peer_bw_out = 0;
6535 surfxml_peer_bw_out_isset = 0;
6536 AX_surfxml_peer_lat = 0;
6537 surfxml_peer_lat_isset = 0;
6538 AX_surfxml_peer_coordinates = 0;
6539 surfxml_peer_coordinates_isset = 0;
6540 AX_surfxml_peer_availability_file = 0;
6541 surfxml_peer_availability_file_isset = 0;
6542 AX_surfxml_peer_state_file = 0;
6543 surfxml_peer_state_file_isset = 0;
6544 ENTER(AL_surfxml_peer); pushbuffer(0);
6549 /* rule 251 can match eol */
6551 if (surfxml_peer_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_peer>");} surfxml_peer_id_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_peer_id);
6554 /* rule 252 can match eol */
6556 if (surfxml_peer_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_peer>");} surfxml_peer_id_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_peer_id);
6559 /* rule 253 can match eol */
6561 if (surfxml_peer_power_isset != 0) {FAIL("Multiple definition of attribute power in <surfxml_peer>");} surfxml_peer_power_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_peer_power);
6564 /* rule 254 can match eol */
6566 if (surfxml_peer_power_isset != 0) {FAIL("Multiple definition of attribute power in <surfxml_peer>");} surfxml_peer_power_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_peer_power);
6569 /* rule 255 can match eol */
6571 if (surfxml_peer_bw_in_isset != 0) {FAIL("Multiple definition of attribute bw_in in <surfxml_peer>");} surfxml_peer_bw_in_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_peer_bw_in);
6574 /* rule 256 can match eol */
6576 if (surfxml_peer_bw_in_isset != 0) {FAIL("Multiple definition of attribute bw_in in <surfxml_peer>");} surfxml_peer_bw_in_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_peer_bw_in);
6579 /* rule 257 can match eol */
6581 if (surfxml_peer_bw_out_isset != 0) {FAIL("Multiple definition of attribute bw_out in <surfxml_peer>");} surfxml_peer_bw_out_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_peer_bw_out);
6584 /* rule 258 can match eol */
6586 if (surfxml_peer_bw_out_isset != 0) {FAIL("Multiple definition of attribute bw_out in <surfxml_peer>");} surfxml_peer_bw_out_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_peer_bw_out);
6589 /* rule 259 can match eol */
6591 if (surfxml_peer_lat_isset != 0) {FAIL("Multiple definition of attribute lat in <surfxml_peer>");} surfxml_peer_lat_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_peer_lat);
6594 /* rule 260 can match eol */
6596 if (surfxml_peer_lat_isset != 0) {FAIL("Multiple definition of attribute lat in <surfxml_peer>");} surfxml_peer_lat_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_peer_lat);
6599 /* rule 261 can match eol */
6601 if (surfxml_peer_coordinates_isset != 0) {FAIL("Multiple definition of attribute coordinates in <surfxml_peer>");} surfxml_peer_coordinates_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_peer_coordinates);
6604 /* rule 262 can match eol */
6606 if (surfxml_peer_coordinates_isset != 0) {FAIL("Multiple definition of attribute coordinates in <surfxml_peer>");} surfxml_peer_coordinates_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_peer_coordinates);
6609 /* rule 263 can match eol */
6611 if (surfxml_peer_availability_file_isset != 0) {FAIL("Multiple definition of attribute availability_file in <surfxml_peer>");} surfxml_peer_availability_file_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_peer_availability_file);
6614 /* rule 264 can match eol */
6616 if (surfxml_peer_availability_file_isset != 0) {FAIL("Multiple definition of attribute availability_file in <surfxml_peer>");} surfxml_peer_availability_file_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_peer_availability_file);
6619 /* rule 265 can match eol */
6621 if (surfxml_peer_state_file_isset != 0) {FAIL("Multiple definition of attribute state_file in <surfxml_peer>");} surfxml_peer_state_file_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_peer_state_file);
6624 /* rule 266 can match eol */
6626 if (surfxml_peer_state_file_isset != 0) {FAIL("Multiple definition of attribute state_file in <surfxml_peer>");} surfxml_peer_state_file_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_peer_state_file);
6631 if (!AX_surfxml_peer_id) FAIL("Required attribute `id' not set for `peer' element.");
6632 if (!AX_surfxml_peer_power) FAIL("Required attribute `power' not set for `peer' element.");
6633 if (!AX_surfxml_peer_bw_in) FAIL("Required attribute `bw_in' not set for `peer' element.");
6634 if (!AX_surfxml_peer_bw_out) FAIL("Required attribute `bw_out' not set for `peer' element.");
6635 if (!AX_surfxml_peer_lat) FAIL("Required attribute `lat' not set for `peer' element.");
6636 LEAVE; STag_surfxml_peer();surfxml_pcdata_ix = 0; ENTER(E_surfxml_peer);
6642 if (!AX_surfxml_peer_id) FAIL("Required attribute `id' not set for `peer' element.");
6643 if (!AX_surfxml_peer_power) FAIL("Required attribute `power' not set for `peer' element.");
6644 if (!AX_surfxml_peer_bw_in) FAIL("Required attribute `bw_in' not set for `peer' element.");
6645 if (!AX_surfxml_peer_bw_out) FAIL("Required attribute `bw_out' not set for `peer' element.");
6646 if (!AX_surfxml_peer_lat) FAIL("Required attribute `lat' not set for `peer' element.");
6647 LEAVE; STag_surfxml_peer(); surfxml_pcdata_ix = 0; ETag_surfxml_peer(); popbuffer(); /* attribute */
6649 case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
6650 case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break;
6651 case S_surfxml_include: case S_surfxml_include_2: case S_surfxml_include_1: SET(S_surfxml_include_2); break;
6657 FAIL("Unexpected character `%c' in attribute list of peer element.", surf_parse_text[0]);
6661 FAIL("Bad attribute `%s' in `peer' element start tag.",surf_parse_text);
6663 case YY_STATE_EOF(AL_surfxml_peer):
6664 FAIL("EOF in attribute list of `peer' element.");
6668 /* rule 271 can match eol */
6672 ETag_surfxml_peer();
6673 popbuffer(); /* attribute */
6675 case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
6676 case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break;
6677 case S_surfxml_include: case S_surfxml_include_2: case S_surfxml_include_1: SET(S_surfxml_include_2); break;
6682 /* rule 272 can match eol */
6684 FAIL("Unexpected end-tag `%s': `</peer>' expected.",surf_parse_text);
6688 FAIL("Unexpected character `%c': `</peer>' expected.",surf_parse_text[0]);
6690 case YY_STATE_EOF(E_surfxml_peer):
6691 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</peer>' expected.");
6695 /* rule 274 can match eol */
6697 FAIL("Starting tag <router> is not allowed here.");
6700 /* rule 275 can match eol */
6703 AX_surfxml_router_id = 0;
6704 surfxml_router_id_isset = 0;
6705 AX_surfxml_router_coordinates = 0;
6706 surfxml_router_coordinates_isset = 0;
6707 ENTER(AL_surfxml_router); pushbuffer(0);
6712 /* rule 276 can match eol */
6714 if (surfxml_router_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_router>");} surfxml_router_id_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_router_id);
6717 /* rule 277 can match eol */
6719 if (surfxml_router_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_router>");} surfxml_router_id_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_router_id);
6722 /* rule 278 can match eol */
6724 if (surfxml_router_coordinates_isset != 0) {FAIL("Multiple definition of attribute coordinates in <surfxml_router>");} surfxml_router_coordinates_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_router_coordinates);
6727 /* rule 279 can match eol */
6729 if (surfxml_router_coordinates_isset != 0) {FAIL("Multiple definition of attribute coordinates in <surfxml_router>");} surfxml_router_coordinates_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_router_coordinates);
6734 if (!AX_surfxml_router_id) FAIL("Required attribute `id' not set for `router' element.");
6735 LEAVE; STag_surfxml_router();surfxml_pcdata_ix = 0; ENTER(E_surfxml_router);
6741 if (!AX_surfxml_router_id) FAIL("Required attribute `id' not set for `router' element.");
6742 LEAVE; STag_surfxml_router(); surfxml_pcdata_ix = 0; ETag_surfxml_router(); popbuffer(); /* attribute */
6744 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
6750 FAIL("Unexpected character `%c' in attribute list of router element.", surf_parse_text[0]);
6754 FAIL("Bad attribute `%s' in `router' element start tag.",surf_parse_text);
6756 case YY_STATE_EOF(AL_surfxml_router):
6757 FAIL("EOF in attribute list of `router' element.");
6761 /* rule 284 can match eol */
6765 ETag_surfxml_router();
6766 popbuffer(); /* attribute */
6768 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
6773 /* rule 285 can match eol */
6775 FAIL("Unexpected end-tag `%s': `</router>' expected.",surf_parse_text);
6779 FAIL("Unexpected character `%c': `</router>' expected.",surf_parse_text[0]);
6781 case YY_STATE_EOF(E_surfxml_router):
6782 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</router>' expected.");
6786 /* rule 287 can match eol */
6788 FAIL("Starting tag <link> is not allowed here.");
6791 /* rule 288 can match eol */
6794 AX_surfxml_link_id = 0;
6795 surfxml_link_id_isset = 0;
6796 AX_surfxml_link_bandwidth = 0;
6797 surfxml_link_bandwidth_isset = 0;
6798 AX_surfxml_link_bandwidth_file = 0;
6799 surfxml_link_bandwidth_file_isset = 0;
6800 AX_surfxml_link_latency = 24;
6801 surfxml_link_latency_isset = 0;
6802 AX_surfxml_link_latency_file = 0;
6803 surfxml_link_latency_file_isset = 0;
6804 AX_surfxml_link_state = A_surfxml_link_state_ON;
6805 surfxml_link_state_isset = 0;
6806 AX_surfxml_link_state_file = 0;
6807 surfxml_link_state_file_isset = 0;
6808 AX_surfxml_link_sharing_policy = A_surfxml_link_sharing_policy_SHARED;
6809 surfxml_link_sharing_policy_isset = 0;
6810 ENTER(AL_surfxml_link); pushbuffer(0);
6815 /* rule 289 can match eol */
6817 if (surfxml_link_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_link>");} surfxml_link_id_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_link_id);
6820 /* rule 290 can match eol */
6822 if (surfxml_link_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_link>");} surfxml_link_id_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_link_id);
6825 /* rule 291 can match eol */
6827 if (surfxml_link_bandwidth_isset != 0) {FAIL("Multiple definition of attribute bandwidth in <surfxml_link>");} surfxml_link_bandwidth_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_link_bandwidth);
6830 /* rule 292 can match eol */
6832 if (surfxml_link_bandwidth_isset != 0) {FAIL("Multiple definition of attribute bandwidth in <surfxml_link>");} surfxml_link_bandwidth_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_link_bandwidth);
6835 /* rule 293 can match eol */
6837 if (surfxml_link_bandwidth_file_isset != 0) {FAIL("Multiple definition of attribute bandwidth_file in <surfxml_link>");} surfxml_link_bandwidth_file_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_link_bandwidth_file);
6840 /* rule 294 can match eol */
6842 if (surfxml_link_bandwidth_file_isset != 0) {FAIL("Multiple definition of attribute bandwidth_file in <surfxml_link>");} surfxml_link_bandwidth_file_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_link_bandwidth_file);
6845 /* rule 295 can match eol */
6847 if (surfxml_link_latency_isset != 0) {FAIL("Multiple definition of attribute latency in <surfxml_link>");} surfxml_link_latency_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_link_latency);
6850 /* rule 296 can match eol */
6852 if (surfxml_link_latency_isset != 0) {FAIL("Multiple definition of attribute latency in <surfxml_link>");} surfxml_link_latency_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_link_latency);
6855 /* rule 297 can match eol */
6857 if (surfxml_link_latency_file_isset != 0) {FAIL("Multiple definition of attribute latency_file in <surfxml_link>");} surfxml_link_latency_file_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_link_latency_file);
6860 /* rule 298 can match eol */
6862 if (surfxml_link_latency_file_isset != 0) {FAIL("Multiple definition of attribute latency_file in <surfxml_link>");} surfxml_link_latency_file_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_link_latency_file);
6865 /* rule 299 can match eol */
6867 /* rule 300 can match eol */
6869 A_surfxml_link_state = A_surfxml_link_state_ON;
6872 /* rule 301 can match eol */
6874 /* rule 302 can match eol */
6876 A_surfxml_link_state = A_surfxml_link_state_OFF;
6879 /* rule 303 can match eol */
6881 if (surfxml_link_state_file_isset != 0) {FAIL("Multiple definition of attribute state_file in <surfxml_link>");} surfxml_link_state_file_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_link_state_file);
6884 /* rule 304 can match eol */
6886 if (surfxml_link_state_file_isset != 0) {FAIL("Multiple definition of attribute state_file in <surfxml_link>");} surfxml_link_state_file_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_link_state_file);
6889 /* rule 305 can match eol */
6891 /* rule 306 can match eol */
6893 A_surfxml_link_sharing_policy = A_surfxml_link_sharing_policy_SHARED;
6896 /* rule 307 can match eol */
6898 /* rule 308 can match eol */
6900 A_surfxml_link_sharing_policy = A_surfxml_link_sharing_policy_FATPIPE;
6903 /* rule 309 can match eol */
6905 /* rule 310 can match eol */
6907 A_surfxml_link_sharing_policy = A_surfxml_link_sharing_policy_FULLDUPLEX;
6912 if (!AX_surfxml_link_id) FAIL("Required attribute `id' not set for `link' element.");
6913 if (!AX_surfxml_link_bandwidth) FAIL("Required attribute `bandwidth' not set for `link' element.");
6914 LEAVE; STag_surfxml_link();surfxml_pcdata_ix = 0; ENTER(S_surfxml_link);
6920 if (!AX_surfxml_link_id) FAIL("Required attribute `id' not set for `link' element.");
6921 if (!AX_surfxml_link_bandwidth) FAIL("Required attribute `bandwidth' not set for `link' element.");
6922 LEAVE; STag_surfxml_link(); surfxml_pcdata_ix = 0; ETag_surfxml_link(); popbuffer(); /* attribute */
6924 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
6925 case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
6931 FAIL("Unexpected character `%c' in attribute list of link element.", surf_parse_text[0]);
6935 FAIL("Bad attribute `%s' in `link' element start tag.",surf_parse_text);
6937 case YY_STATE_EOF(AL_surfxml_link):
6938 FAIL("EOF in attribute list of `link' element.");
6942 /* rule 315 can match eol */
6946 ETag_surfxml_link();
6947 popbuffer(); /* attribute */
6949 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
6950 case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
6955 /* rule 316 can match eol */
6957 FAIL("Unexpected end-tag `%s': `</link>' expected.",surf_parse_text);
6961 FAIL("Unexpected character `%c': `</link>' expected.",surf_parse_text[0]);
6963 case YY_STATE_EOF(E_surfxml_link):
6964 case YY_STATE_EOF(S_surfxml_link_2):
6965 case YY_STATE_EOF(S_surfxml_link):
6966 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</link>' expected.");
6970 /* rule 318 can match eol */
6972 FAIL("Starting tag <route> is not allowed here.");
6975 /* rule 319 can match eol */
6978 AX_surfxml_route_src = 0;
6979 surfxml_route_src_isset = 0;
6980 AX_surfxml_route_dst = 0;
6981 surfxml_route_dst_isset = 0;
6982 AX_surfxml_route_symmetrical = A_surfxml_route_symmetrical_YES;
6983 surfxml_route_symmetrical_isset = 0;
6984 ENTER(AL_surfxml_route); pushbuffer(0);
6989 /* rule 320 can match eol */
6991 if (surfxml_route_src_isset != 0) {FAIL("Multiple definition of attribute src in <surfxml_route>");} surfxml_route_src_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_route_src);
6994 /* rule 321 can match eol */
6996 if (surfxml_route_src_isset != 0) {FAIL("Multiple definition of attribute src in <surfxml_route>");} surfxml_route_src_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_route_src);
6999 /* rule 322 can match eol */
7001 if (surfxml_route_dst_isset != 0) {FAIL("Multiple definition of attribute dst in <surfxml_route>");} surfxml_route_dst_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_route_dst);
7004 /* rule 323 can match eol */
7006 if (surfxml_route_dst_isset != 0) {FAIL("Multiple definition of attribute dst in <surfxml_route>");} surfxml_route_dst_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_route_dst);
7009 /* rule 324 can match eol */
7011 /* rule 325 can match eol */
7013 A_surfxml_route_symmetrical = A_surfxml_route_symmetrical_YES;
7016 /* rule 326 can match eol */
7018 /* rule 327 can match eol */
7020 A_surfxml_route_symmetrical = A_surfxml_route_symmetrical_NO;
7025 if (!AX_surfxml_route_src) FAIL("Required attribute `src' not set for `route' element.");
7026 if (!AX_surfxml_route_dst) FAIL("Required attribute `dst' not set for `route' element.");
7027 LEAVE; STag_surfxml_route();surfxml_pcdata_ix = 0; ENTER(S_surfxml_route);
7033 if (!AX_surfxml_route_src) FAIL("Required attribute `src' not set for `route' element.");
7034 if (!AX_surfxml_route_dst) FAIL("Required attribute `dst' not set for `route' element.");
7035 LEAVE; STag_surfxml_route(); surfxml_pcdata_ix = 0; ETag_surfxml_route(); popbuffer(); /* attribute */
7037 case S_surfxml_AS_12: case S_surfxml_AS_9: case S_surfxml_AS_11: case S_surfxml_AS_13: case S_surfxml_AS: SET(S_surfxml_AS_13); break;
7043 FAIL("Unexpected character `%c' in attribute list of route element.", surf_parse_text[0]);
7047 FAIL("Bad attribute `%s' in `route' element start tag.",surf_parse_text);
7049 case YY_STATE_EOF(AL_surfxml_route):
7050 FAIL("EOF in attribute list of `route' element.");
7054 /* rule 332 can match eol */
7058 ETag_surfxml_route();
7059 popbuffer(); /* attribute */
7061 case S_surfxml_AS_12: case S_surfxml_AS_9: case S_surfxml_AS_11: case S_surfxml_AS_13: case S_surfxml_AS: SET(S_surfxml_AS_13); break;
7066 /* rule 333 can match eol */
7068 FAIL("Unexpected end-tag `%s': `</route>' expected.",surf_parse_text);
7072 FAIL("Unexpected character `%c': `</route>' expected.",surf_parse_text[0]);
7074 case YY_STATE_EOF(S_surfxml_route):
7075 case YY_STATE_EOF(S_surfxml_route_2):
7076 case YY_STATE_EOF(E_surfxml_route):
7077 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</route>' expected.");
7081 /* rule 335 can match eol */
7083 FAIL("Starting tag <ASroute> is not allowed here.");
7086 /* rule 336 can match eol */
7089 AX_surfxml_ASroute_src = 0;
7090 surfxml_ASroute_src_isset = 0;
7091 AX_surfxml_ASroute_dst = 0;
7092 surfxml_ASroute_dst_isset = 0;
7093 AX_surfxml_ASroute_gw_src = 0;
7094 surfxml_ASroute_gw_src_isset = 0;
7095 AX_surfxml_ASroute_gw_dst = 0;
7096 surfxml_ASroute_gw_dst_isset = 0;
7097 AX_surfxml_ASroute_symmetrical = A_surfxml_ASroute_symmetrical_YES;
7098 surfxml_ASroute_symmetrical_isset = 0;
7099 ENTER(AL_surfxml_ASroute); pushbuffer(0);
7104 /* rule 337 can match eol */
7106 if (surfxml_ASroute_src_isset != 0) {FAIL("Multiple definition of attribute src in <surfxml_ASroute>");} surfxml_ASroute_src_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_ASroute_src);
7109 /* rule 338 can match eol */
7111 if (surfxml_ASroute_src_isset != 0) {FAIL("Multiple definition of attribute src in <surfxml_ASroute>");} surfxml_ASroute_src_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_ASroute_src);
7114 /* rule 339 can match eol */
7116 if (surfxml_ASroute_dst_isset != 0) {FAIL("Multiple definition of attribute dst in <surfxml_ASroute>");} surfxml_ASroute_dst_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_ASroute_dst);
7119 /* rule 340 can match eol */
7121 if (surfxml_ASroute_dst_isset != 0) {FAIL("Multiple definition of attribute dst in <surfxml_ASroute>");} surfxml_ASroute_dst_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_ASroute_dst);
7124 /* rule 341 can match eol */
7126 if (surfxml_ASroute_gw_src_isset != 0) {FAIL("Multiple definition of attribute gw_src in <surfxml_ASroute>");} surfxml_ASroute_gw_src_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_ASroute_gw_src);
7129 /* rule 342 can match eol */
7131 if (surfxml_ASroute_gw_src_isset != 0) {FAIL("Multiple definition of attribute gw_src in <surfxml_ASroute>");} surfxml_ASroute_gw_src_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_ASroute_gw_src);
7134 /* rule 343 can match eol */
7136 if (surfxml_ASroute_gw_dst_isset != 0) {FAIL("Multiple definition of attribute gw_dst in <surfxml_ASroute>");} surfxml_ASroute_gw_dst_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_ASroute_gw_dst);
7139 /* rule 344 can match eol */
7141 if (surfxml_ASroute_gw_dst_isset != 0) {FAIL("Multiple definition of attribute gw_dst in <surfxml_ASroute>");} surfxml_ASroute_gw_dst_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_ASroute_gw_dst);
7144 /* rule 345 can match eol */
7146 /* rule 346 can match eol */
7148 A_surfxml_ASroute_symmetrical = A_surfxml_ASroute_symmetrical_YES;
7151 /* rule 347 can match eol */
7153 /* rule 348 can match eol */
7155 A_surfxml_ASroute_symmetrical = A_surfxml_ASroute_symmetrical_NO;
7160 if (!AX_surfxml_ASroute_src) FAIL("Required attribute `src' not set for `ASroute' element.");
7161 if (!AX_surfxml_ASroute_dst) FAIL("Required attribute `dst' not set for `ASroute' element.");
7162 if (!AX_surfxml_ASroute_gw_src) FAIL("Required attribute `gw_src' not set for `ASroute' element.");
7163 if (!AX_surfxml_ASroute_gw_dst) FAIL("Required attribute `gw_dst' not set for `ASroute' element.");
7164 LEAVE; STag_surfxml_ASroute();surfxml_pcdata_ix = 0; ENTER(S_surfxml_ASroute);
7170 if (!AX_surfxml_ASroute_src) FAIL("Required attribute `src' not set for `ASroute' element.");
7171 if (!AX_surfxml_ASroute_dst) FAIL("Required attribute `dst' not set for `ASroute' element.");
7172 if (!AX_surfxml_ASroute_gw_src) FAIL("Required attribute `gw_src' not set for `ASroute' element.");
7173 if (!AX_surfxml_ASroute_gw_dst) FAIL("Required attribute `gw_dst' not set for `ASroute' element.");
7174 LEAVE; STag_surfxml_ASroute(); surfxml_pcdata_ix = 0; ETag_surfxml_ASroute(); popbuffer(); /* attribute */
7176 case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS: case S_surfxml_AS_6: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break;
7182 FAIL("Unexpected character `%c' in attribute list of ASroute element.", surf_parse_text[0]);
7186 FAIL("Bad attribute `%s' in `ASroute' element start tag.",surf_parse_text);
7188 case YY_STATE_EOF(AL_surfxml_ASroute):
7189 FAIL("EOF in attribute list of `ASroute' element.");
7193 /* rule 353 can match eol */
7197 ETag_surfxml_ASroute();
7198 popbuffer(); /* attribute */
7200 case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS: case S_surfxml_AS_6: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break;
7205 /* rule 354 can match eol */
7207 FAIL("Unexpected end-tag `%s': `</ASroute>' expected.",surf_parse_text);
7211 FAIL("Unexpected character `%c': `</ASroute>' expected.",surf_parse_text[0]);
7213 case YY_STATE_EOF(E_surfxml_ASroute):
7214 case YY_STATE_EOF(S_surfxml_ASroute):
7215 case YY_STATE_EOF(S_surfxml_ASroute_2):
7216 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</ASroute>' expected.");
7220 /* rule 356 can match eol */
7222 FAIL("Starting tag <link_ctn> is not allowed here.");
7225 /* rule 357 can match eol */
7228 AX_surfxml_link_ctn_id = 0;
7229 surfxml_link_ctn_id_isset = 0;
7230 AX_surfxml_link_ctn_direction = A_surfxml_link_ctn_direction_NONE;
7231 surfxml_link_ctn_direction_isset = 0;
7232 ENTER(AL_surfxml_link_ctn); pushbuffer(0);
7237 /* rule 358 can match eol */
7239 if (surfxml_link_ctn_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_link_ctn>");} surfxml_link_ctn_id_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_link_ctn_id);
7242 /* rule 359 can match eol */
7244 if (surfxml_link_ctn_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_link_ctn>");} surfxml_link_ctn_id_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_link_ctn_id);
7247 /* rule 360 can match eol */
7249 /* rule 361 can match eol */
7251 A_surfxml_link_ctn_direction = A_surfxml_link_ctn_direction_UP;
7254 /* rule 362 can match eol */
7256 /* rule 363 can match eol */
7258 A_surfxml_link_ctn_direction = A_surfxml_link_ctn_direction_DOWN;
7261 /* rule 364 can match eol */
7263 /* rule 365 can match eol */
7265 A_surfxml_link_ctn_direction = A_surfxml_link_ctn_direction_NONE;
7270 if (!AX_surfxml_link_ctn_id) FAIL("Required attribute `id' not set for `link_ctn' element.");
7271 LEAVE; STag_surfxml_link_ctn();surfxml_pcdata_ix = 0; ENTER(E_surfxml_link_ctn);
7277 if (!AX_surfxml_link_ctn_id) FAIL("Required attribute `id' not set for `link_ctn' element.");
7278 LEAVE; STag_surfxml_link_ctn(); surfxml_pcdata_ix = 0; ETag_surfxml_link_ctn(); popbuffer(); /* attribute */
7280 case S_surfxml_bypassRoute: case S_surfxml_bypassRoute_2: case S_surfxml_bypassRoute_1: SET(S_surfxml_bypassRoute_2); break;
7281 case S_surfxml_route_1: case S_surfxml_route: case S_surfxml_route_2: SET(S_surfxml_route_2); break;
7282 case S_surfxml_bypassASroute_2: case S_surfxml_bypassASroute_1: case S_surfxml_bypassASroute: SET(S_surfxml_bypassASroute_2); break;
7283 case S_surfxml_ASroute: case S_surfxml_ASroute_1: case S_surfxml_ASroute_2: SET(S_surfxml_ASroute_2); break;
7289 FAIL("Unexpected character `%c' in attribute list of link_ctn element.", surf_parse_text[0]);
7293 FAIL("Bad attribute `%s' in `link_ctn' element start tag.",surf_parse_text);
7295 case YY_STATE_EOF(AL_surfxml_link_ctn):
7296 FAIL("EOF in attribute list of `link_ctn' element.");
7300 /* rule 370 can match eol */
7304 ETag_surfxml_link_ctn();
7305 popbuffer(); /* attribute */
7307 case S_surfxml_bypassRoute: case S_surfxml_bypassRoute_2: case S_surfxml_bypassRoute_1: SET(S_surfxml_bypassRoute_2); break;
7308 case S_surfxml_route_1: case S_surfxml_route: case S_surfxml_route_2: SET(S_surfxml_route_2); break;
7309 case S_surfxml_bypassASroute_2: case S_surfxml_bypassASroute_1: case S_surfxml_bypassASroute: SET(S_surfxml_bypassASroute_2); break;
7310 case S_surfxml_ASroute: case S_surfxml_ASroute_1: case S_surfxml_ASroute_2: SET(S_surfxml_ASroute_2); break;
7315 /* rule 371 can match eol */
7317 FAIL("Unexpected end-tag `%s': `</link_ctn>' expected.",surf_parse_text);
7321 FAIL("Unexpected character `%c': `</link_ctn>' expected.",surf_parse_text[0]);
7323 case YY_STATE_EOF(E_surfxml_link_ctn):
7324 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</link_ctn>' expected.");
7328 /* rule 373 can match eol */
7330 FAIL("Starting tag <bypassRoute> is not allowed here.");
7333 /* rule 374 can match eol */
7336 AX_surfxml_bypassRoute_src = 0;
7337 surfxml_bypassRoute_src_isset = 0;
7338 AX_surfxml_bypassRoute_dst = 0;
7339 surfxml_bypassRoute_dst_isset = 0;
7340 ENTER(AL_surfxml_bypassRoute); pushbuffer(0);
7345 /* rule 375 can match eol */
7347 if (surfxml_bypassRoute_src_isset != 0) {FAIL("Multiple definition of attribute src in <surfxml_bypassRoute>");} surfxml_bypassRoute_src_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_bypassRoute_src);
7350 /* rule 376 can match eol */
7352 if (surfxml_bypassRoute_src_isset != 0) {FAIL("Multiple definition of attribute src in <surfxml_bypassRoute>");} surfxml_bypassRoute_src_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_bypassRoute_src);
7355 /* rule 377 can match eol */
7357 if (surfxml_bypassRoute_dst_isset != 0) {FAIL("Multiple definition of attribute dst in <surfxml_bypassRoute>");} surfxml_bypassRoute_dst_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_bypassRoute_dst);
7360 /* rule 378 can match eol */
7362 if (surfxml_bypassRoute_dst_isset != 0) {FAIL("Multiple definition of attribute dst in <surfxml_bypassRoute>");} surfxml_bypassRoute_dst_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_bypassRoute_dst);
7367 if (!AX_surfxml_bypassRoute_src) FAIL("Required attribute `src' not set for `bypassRoute' element.");
7368 if (!AX_surfxml_bypassRoute_dst) FAIL("Required attribute `dst' not set for `bypassRoute' element.");
7369 LEAVE; STag_surfxml_bypassRoute();surfxml_pcdata_ix = 0; ENTER(S_surfxml_bypassRoute);
7375 if (!AX_surfxml_bypassRoute_src) FAIL("Required attribute `src' not set for `bypassRoute' element.");
7376 if (!AX_surfxml_bypassRoute_dst) FAIL("Required attribute `dst' not set for `bypassRoute' element.");
7377 LEAVE; STag_surfxml_bypassRoute(); surfxml_pcdata_ix = 0; ETag_surfxml_bypassRoute(); popbuffer(); /* attribute */
7379 case S_surfxml_AS_12: case S_surfxml_AS_9: case S_surfxml_AS_11: case S_surfxml_AS_13: case S_surfxml_AS: SET(S_surfxml_AS_13); break;
7385 FAIL("Unexpected character `%c' in attribute list of bypassRoute element.", surf_parse_text[0]);
7389 FAIL("Bad attribute `%s' in `bypassRoute' element start tag.",surf_parse_text);
7391 case YY_STATE_EOF(AL_surfxml_bypassRoute):
7392 FAIL("EOF in attribute list of `bypassRoute' element.");
7396 /* rule 383 can match eol */
7400 ETag_surfxml_bypassRoute();
7401 popbuffer(); /* attribute */
7403 case S_surfxml_AS_12: case S_surfxml_AS_9: case S_surfxml_AS_11: case S_surfxml_AS_13: case S_surfxml_AS: SET(S_surfxml_AS_13); break;
7408 /* rule 384 can match eol */
7410 FAIL("Unexpected end-tag `%s': `</bypassRoute>' expected.",surf_parse_text);
7414 FAIL("Unexpected character `%c': `</bypassRoute>' expected.",surf_parse_text[0]);
7416 case YY_STATE_EOF(S_surfxml_bypassRoute):
7417 case YY_STATE_EOF(S_surfxml_bypassRoute_2):
7418 case YY_STATE_EOF(E_surfxml_bypassRoute):
7419 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</bypassRoute>' expected.");
7423 /* rule 386 can match eol */
7425 FAIL("Starting tag <bypassASroute> is not allowed here.");
7428 /* rule 387 can match eol */
7431 AX_surfxml_bypassASroute_src = 0;
7432 surfxml_bypassASroute_src_isset = 0;
7433 AX_surfxml_bypassASroute_dst = 0;
7434 surfxml_bypassASroute_dst_isset = 0;
7435 AX_surfxml_bypassASroute_gw_src = 0;
7436 surfxml_bypassASroute_gw_src_isset = 0;
7437 AX_surfxml_bypassASroute_gw_dst = 0;
7438 surfxml_bypassASroute_gw_dst_isset = 0;
7439 ENTER(AL_surfxml_bypassASroute); pushbuffer(0);
7444 /* rule 388 can match eol */
7446 if (surfxml_bypassASroute_src_isset != 0) {FAIL("Multiple definition of attribute src in <surfxml_bypassASroute>");} surfxml_bypassASroute_src_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_bypassASroute_src);
7449 /* rule 389 can match eol */
7451 if (surfxml_bypassASroute_src_isset != 0) {FAIL("Multiple definition of attribute src in <surfxml_bypassASroute>");} surfxml_bypassASroute_src_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_bypassASroute_src);
7454 /* rule 390 can match eol */
7456 if (surfxml_bypassASroute_dst_isset != 0) {FAIL("Multiple definition of attribute dst in <surfxml_bypassASroute>");} surfxml_bypassASroute_dst_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_bypassASroute_dst);
7459 /* rule 391 can match eol */
7461 if (surfxml_bypassASroute_dst_isset != 0) {FAIL("Multiple definition of attribute dst in <surfxml_bypassASroute>");} surfxml_bypassASroute_dst_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_bypassASroute_dst);
7464 /* rule 392 can match eol */
7466 if (surfxml_bypassASroute_gw_src_isset != 0) {FAIL("Multiple definition of attribute gw_src in <surfxml_bypassASroute>");} surfxml_bypassASroute_gw_src_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_bypassASroute_gw_src);
7469 /* rule 393 can match eol */
7471 if (surfxml_bypassASroute_gw_src_isset != 0) {FAIL("Multiple definition of attribute gw_src in <surfxml_bypassASroute>");} surfxml_bypassASroute_gw_src_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_bypassASroute_gw_src);
7474 /* rule 394 can match eol */
7476 if (surfxml_bypassASroute_gw_dst_isset != 0) {FAIL("Multiple definition of attribute gw_dst in <surfxml_bypassASroute>");} surfxml_bypassASroute_gw_dst_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_bypassASroute_gw_dst);
7479 /* rule 395 can match eol */
7481 if (surfxml_bypassASroute_gw_dst_isset != 0) {FAIL("Multiple definition of attribute gw_dst in <surfxml_bypassASroute>");} surfxml_bypassASroute_gw_dst_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_bypassASroute_gw_dst);
7486 if (!AX_surfxml_bypassASroute_src) FAIL("Required attribute `src' not set for `bypassASroute' element.");
7487 if (!AX_surfxml_bypassASroute_dst) FAIL("Required attribute `dst' not set for `bypassASroute' element.");
7488 if (!AX_surfxml_bypassASroute_gw_src) FAIL("Required attribute `gw_src' not set for `bypassASroute' element.");
7489 if (!AX_surfxml_bypassASroute_gw_dst) FAIL("Required attribute `gw_dst' not set for `bypassASroute' element.");
7490 LEAVE; STag_surfxml_bypassASroute();surfxml_pcdata_ix = 0; ENTER(S_surfxml_bypassASroute);
7496 if (!AX_surfxml_bypassASroute_src) FAIL("Required attribute `src' not set for `bypassASroute' element.");
7497 if (!AX_surfxml_bypassASroute_dst) FAIL("Required attribute `dst' not set for `bypassASroute' element.");
7498 if (!AX_surfxml_bypassASroute_gw_src) FAIL("Required attribute `gw_src' not set for `bypassASroute' element.");
7499 if (!AX_surfxml_bypassASroute_gw_dst) FAIL("Required attribute `gw_dst' not set for `bypassASroute' element.");
7500 LEAVE; STag_surfxml_bypassASroute(); surfxml_pcdata_ix = 0; ETag_surfxml_bypassASroute(); popbuffer(); /* attribute */
7502 case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS: case S_surfxml_AS_6: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break;
7508 FAIL("Unexpected character `%c' in attribute list of bypassASroute element.", surf_parse_text[0]);
7512 FAIL("Bad attribute `%s' in `bypassASroute' element start tag.",surf_parse_text);
7514 case YY_STATE_EOF(AL_surfxml_bypassASroute):
7515 FAIL("EOF in attribute list of `bypassASroute' element.");
7519 /* rule 400 can match eol */
7523 ETag_surfxml_bypassASroute();
7524 popbuffer(); /* attribute */
7526 case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS: case S_surfxml_AS_6: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break;
7531 /* rule 401 can match eol */
7533 FAIL("Unexpected end-tag `%s': `</bypassASroute>' expected.",surf_parse_text);
7537 FAIL("Unexpected character `%c': `</bypassASroute>' expected.",surf_parse_text[0]);
7539 case YY_STATE_EOF(S_surfxml_bypassASroute_2):
7540 case YY_STATE_EOF(E_surfxml_bypassASroute):
7541 case YY_STATE_EOF(S_surfxml_bypassASroute):
7542 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</bypassASroute>' expected.");
7546 /* rule 403 can match eol */
7548 FAIL("Starting tag <process> is not allowed here.");
7551 /* rule 404 can match eol */
7554 AX_surfxml_process_host = 0;
7555 surfxml_process_host_isset = 0;
7556 AX_surfxml_process_function = 0;
7557 surfxml_process_function_isset = 0;
7558 AX_surfxml_process_start_time = 28;
7559 surfxml_process_start_time_isset = 0;
7560 AX_surfxml_process_kill_time = 33;
7561 surfxml_process_kill_time_isset = 0;
7562 ENTER(AL_surfxml_process); pushbuffer(0);
7567 /* rule 405 can match eol */
7569 if (surfxml_process_host_isset != 0) {FAIL("Multiple definition of attribute host in <surfxml_process>");} surfxml_process_host_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_process_host);
7572 /* rule 406 can match eol */
7574 if (surfxml_process_host_isset != 0) {FAIL("Multiple definition of attribute host in <surfxml_process>");} surfxml_process_host_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_process_host);
7577 /* rule 407 can match eol */
7579 if (surfxml_process_function_isset != 0) {FAIL("Multiple definition of attribute function in <surfxml_process>");} surfxml_process_function_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_process_function);
7582 /* rule 408 can match eol */
7584 if (surfxml_process_function_isset != 0) {FAIL("Multiple definition of attribute function in <surfxml_process>");} surfxml_process_function_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_process_function);
7587 /* rule 409 can match eol */
7589 if (surfxml_process_start_time_isset != 0) {FAIL("Multiple definition of attribute start_time in <surfxml_process>");} surfxml_process_start_time_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_process_start_time);
7592 /* rule 410 can match eol */
7594 if (surfxml_process_start_time_isset != 0) {FAIL("Multiple definition of attribute start_time in <surfxml_process>");} surfxml_process_start_time_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_process_start_time);
7597 /* rule 411 can match eol */
7599 if (surfxml_process_kill_time_isset != 0) {FAIL("Multiple definition of attribute kill_time in <surfxml_process>");} surfxml_process_kill_time_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_process_kill_time);
7602 /* rule 412 can match eol */
7604 if (surfxml_process_kill_time_isset != 0) {FAIL("Multiple definition of attribute kill_time in <surfxml_process>");} surfxml_process_kill_time_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_process_kill_time);
7609 if (!AX_surfxml_process_host) FAIL("Required attribute `host' not set for `process' element.");
7610 if (!AX_surfxml_process_function) FAIL("Required attribute `function' not set for `process' element.");
7611 LEAVE; STag_surfxml_process();surfxml_pcdata_ix = 0; ENTER(S_surfxml_process);
7617 if (!AX_surfxml_process_host) FAIL("Required attribute `host' not set for `process' element.");
7618 if (!AX_surfxml_process_function) FAIL("Required attribute `function' not set for `process' element.");
7619 LEAVE; STag_surfxml_process(); surfxml_pcdata_ix = 0; ETag_surfxml_process(); popbuffer(); /* attribute */
7621 case S_surfxml_platform_6: case S_surfxml_platform_4: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_8: case S_surfxml_platform_7: case S_surfxml_platform_3: SET(S_surfxml_platform_8); break;
7627 FAIL("Unexpected character `%c' in attribute list of process element.", surf_parse_text[0]);
7631 FAIL("Bad attribute `%s' in `process' element start tag.",surf_parse_text);
7633 case YY_STATE_EOF(AL_surfxml_process):
7634 FAIL("EOF in attribute list of `process' element.");
7638 /* rule 417 can match eol */
7642 ETag_surfxml_process();
7643 popbuffer(); /* attribute */
7645 case S_surfxml_platform_6: case S_surfxml_platform_4: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_8: case S_surfxml_platform_7: case S_surfxml_platform_3: SET(S_surfxml_platform_8); break;
7650 /* rule 418 can match eol */
7652 FAIL("Unexpected end-tag `%s': `</process>' expected.",surf_parse_text);
7656 FAIL("Unexpected character `%c': `</process>' expected.",surf_parse_text[0]);
7658 case YY_STATE_EOF(E_surfxml_process):
7659 case YY_STATE_EOF(S_surfxml_process):
7660 case YY_STATE_EOF(S_surfxml_process_2):
7661 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</process>' expected.");
7665 /* rule 420 can match eol */
7667 FAIL("Starting tag <argument> is not allowed here.");
7670 /* rule 421 can match eol */
7673 AX_surfxml_argument_value = 0;
7674 surfxml_argument_value_isset = 0;
7675 ENTER(AL_surfxml_argument); pushbuffer(0);
7680 /* rule 422 can match eol */
7682 if (surfxml_argument_value_isset != 0) {FAIL("Multiple definition of attribute value in <surfxml_argument>");} surfxml_argument_value_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_argument_value);
7685 /* rule 423 can match eol */
7687 if (surfxml_argument_value_isset != 0) {FAIL("Multiple definition of attribute value in <surfxml_argument>");} surfxml_argument_value_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_argument_value);
7692 if (!AX_surfxml_argument_value) FAIL("Required attribute `value' not set for `argument' element.");
7693 LEAVE; STag_surfxml_argument();surfxml_pcdata_ix = 0; ENTER(E_surfxml_argument);
7699 if (!AX_surfxml_argument_value) FAIL("Required attribute `value' not set for `argument' element.");
7700 LEAVE; STag_surfxml_argument(); surfxml_pcdata_ix = 0; ETag_surfxml_argument(); popbuffer(); /* attribute */
7702 case S_surfxml_process_1: case S_surfxml_process: case S_surfxml_process_2: SET(S_surfxml_process_2); break;
7708 FAIL("Unexpected character `%c' in attribute list of argument element.", surf_parse_text[0]);
7712 FAIL("Bad attribute `%s' in `argument' element start tag.",surf_parse_text);
7714 case YY_STATE_EOF(AL_surfxml_argument):
7715 FAIL("EOF in attribute list of `argument' element.");
7719 /* rule 428 can match eol */
7723 ETag_surfxml_argument();
7724 popbuffer(); /* attribute */
7726 case S_surfxml_process_1: case S_surfxml_process: case S_surfxml_process_2: SET(S_surfxml_process_2); break;
7731 /* rule 429 can match eol */
7733 FAIL("Unexpected end-tag `%s': `</argument>' expected.",surf_parse_text);
7737 FAIL("Unexpected character `%c': `</argument>' expected.",surf_parse_text[0]);
7739 case YY_STATE_EOF(E_surfxml_argument):
7740 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</argument>' expected.");
7744 /* rule 431 can match eol */
7746 FAIL("Starting tag <config> is not allowed here.");
7749 /* rule 432 can match eol */
7752 AX_surfxml_config_id = 0;
7753 surfxml_config_id_isset = 0;
7754 ENTER(AL_surfxml_config); pushbuffer(0);
7759 /* rule 433 can match eol */
7761 if (surfxml_config_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_config>");} surfxml_config_id_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_config_id);
7764 /* rule 434 can match eol */
7766 if (surfxml_config_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_config>");} surfxml_config_id_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_config_id);
7771 LEAVE; STag_surfxml_config();surfxml_pcdata_ix = 0; ENTER(S_surfxml_config);
7777 LEAVE; STag_surfxml_config(); surfxml_pcdata_ix = 0; ETag_surfxml_config(); popbuffer(); /* attribute */
7779 case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break;
7785 FAIL("Unexpected character `%c' in attribute list of config element.", surf_parse_text[0]);
7789 FAIL("Bad attribute `%s' in `config' element start tag.",surf_parse_text);
7791 case YY_STATE_EOF(AL_surfxml_config):
7792 FAIL("EOF in attribute list of `config' element.");
7796 /* rule 439 can match eol */
7800 ETag_surfxml_config();
7801 popbuffer(); /* attribute */
7803 case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break;
7808 /* rule 440 can match eol */
7810 FAIL("Unexpected end-tag `%s': `</config>' expected.",surf_parse_text);
7814 FAIL("Unexpected character `%c': `</config>' expected.",surf_parse_text[0]);
7816 case YY_STATE_EOF(S_surfxml_config):
7817 case YY_STATE_EOF(S_surfxml_config_2):
7818 case YY_STATE_EOF(E_surfxml_config):
7819 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</config>' expected.");
7822 /* <!-- <!ATTLIST prop key CDATA #REQUIRED> -->
7823 * <!-- <!ATTLIST prop key CDATA #REQUIRED> --> */
7825 /* rule 442 can match eol */
7827 FAIL("Starting tag <prop> is not allowed here.");
7830 /* rule 443 can match eol */
7833 AX_surfxml_prop_id = 0;
7834 surfxml_prop_id_isset = 0;
7835 AX_surfxml_prop_value = 0;
7836 surfxml_prop_value_isset = 0;
7837 ENTER(AL_surfxml_prop); pushbuffer(0);
7842 /* rule 444 can match eol */
7844 if (surfxml_prop_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_prop>");} surfxml_prop_id_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_prop_id);
7847 /* rule 445 can match eol */
7849 if (surfxml_prop_id_isset != 0) {FAIL("Multiple definition of attribute id in <surfxml_prop>");} surfxml_prop_id_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_prop_id);
7852 /* rule 446 can match eol */
7854 if (surfxml_prop_value_isset != 0) {FAIL("Multiple definition of attribute value in <surfxml_prop>");} surfxml_prop_value_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_prop_value);
7857 /* rule 447 can match eol */
7859 if (surfxml_prop_value_isset != 0) {FAIL("Multiple definition of attribute value in <surfxml_prop>");} surfxml_prop_value_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_prop_value);
7864 if (!AX_surfxml_prop_id) FAIL("Required attribute `id' not set for `prop' element.");
7865 if (!AX_surfxml_prop_value) FAIL("Required attribute `value' not set for `prop' element.");
7866 LEAVE; STag_surfxml_prop();surfxml_pcdata_ix = 0; ENTER(E_surfxml_prop);
7872 if (!AX_surfxml_prop_id) FAIL("Required attribute `id' not set for `prop' element.");
7873 if (!AX_surfxml_prop_value) FAIL("Required attribute `value' not set for `prop' element.");
7874 LEAVE; STag_surfxml_prop(); surfxml_pcdata_ix = 0; ETag_surfxml_prop(); popbuffer(); /* attribute */
7876 case S_surfxml_random: case S_surfxml_random_2: case S_surfxml_random_1: SET(S_surfxml_random_2); break;
7877 case S_surfxml_storage_1: case S_surfxml_storage_2: case S_surfxml_storage: SET(S_surfxml_storage_2); break;
7878 case S_surfxml_config_1: case S_surfxml_config: case S_surfxml_config_2: SET(S_surfxml_config_2); break;
7879 case S_surfxml_process_1: case S_surfxml_process: case S_surfxml_process_2: SET(S_surfxml_process_2); break;
7880 case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break;
7881 case S_surfxml_storage_type_2: case S_surfxml_storage_type: case S_surfxml_storage_type_1: SET(S_surfxml_storage_type_2); break;
7882 case S_surfxml_link_1: case S_surfxml_link_2: case S_surfxml_link: SET(S_surfxml_link_2); break;
7888 FAIL("Unexpected character `%c' in attribute list of prop element.", surf_parse_text[0]);
7892 FAIL("Bad attribute `%s' in `prop' element start tag.",surf_parse_text);
7894 case YY_STATE_EOF(AL_surfxml_prop):
7895 FAIL("EOF in attribute list of `prop' element.");
7899 /* rule 452 can match eol */
7903 ETag_surfxml_prop();
7904 popbuffer(); /* attribute */
7906 case S_surfxml_random: case S_surfxml_random_2: case S_surfxml_random_1: SET(S_surfxml_random_2); break;
7907 case S_surfxml_storage_1: case S_surfxml_storage_2: case S_surfxml_storage: SET(S_surfxml_storage_2); break;
7908 case S_surfxml_config_1: case S_surfxml_config: case S_surfxml_config_2: SET(S_surfxml_config_2); break;
7909 case S_surfxml_process_1: case S_surfxml_process: case S_surfxml_process_2: SET(S_surfxml_process_2); break;
7910 case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break;
7911 case S_surfxml_storage_type_2: case S_surfxml_storage_type: case S_surfxml_storage_type_1: SET(S_surfxml_storage_type_2); break;
7912 case S_surfxml_link_1: case S_surfxml_link_2: case S_surfxml_link: SET(S_surfxml_link_2); break;
7917 /* rule 453 can match eol */
7919 FAIL("Unexpected end-tag `%s': `</prop>' expected.",surf_parse_text);
7923 FAIL("Unexpected character `%c': `</prop>' expected.",surf_parse_text[0]);
7925 case YY_STATE_EOF(E_surfxml_prop):
7926 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</prop>' expected.");
7929 /* EPILOG: after the root element. */
7933 {SET(PROLOG); yyless(0); CLEANUP; return -1;}
7935 case YY_STATE_EOF(EPILOG):
7939 /* CHARACTER DATA. */
7941 /* Non-defined standard entities... */
7962 /* Character entities. */
7965 BUFFERPUTC((unsigned char)atoi(surf_parse_text+2));
7969 BUFFERPUTC((unsigned char)strtol(surf_parse_text+3,NULL,16));
7973 /* rule 463 can match eol */
7975 /* rule 464 can match eol */
7977 /* rule 465 can match eol */
7979 /* rule 466 can match eol */
7990 FAIL("Unexpected `]""]>' in character data.");
7997 case YY_STATE_EOF(VALUE1):
7998 FAIL("EOF in literal (\"'\" expected).");
8005 case YY_STATE_EOF(VALUE2):
8006 FAIL("EOF in literal (`\"' expected).");
8010 /* rule 471 can match eol */
8012 BUFFERPUTC(surf_parse_text[0]);
8016 FAIL("Spurious `%c' in character data.",surf_parse_text[0]);
8023 /* "]""]" BUFFERPUTC(surf_parse_text[0]); BUFFERPUTC(surf_parse_text[1]); */
8026 BUFFERPUTC(surf_parse_text[0]);
8028 case YY_STATE_EOF(CDATA):
8029 FAIL("EOF in CDATA section.");
8032 /* Impossible rules to avoid warnings from flex(1). */
8033 /* Ideally, this should be replaced by code in flexml.pl that
8034 generates just the states not covered by other rules. */
8037 /* rule 475 can match eol */
8039 FAIL("Syntax error on character `%c'.", surf_parse_text[0]);
8046 case YY_STATE_EOF(INITIAL):
8047 case YY_STATE_EOF(ROOT_surfxml_platform):
8048 case YY_STATE_EOF(S_surfxml_platform_2):
8049 case YY_STATE_EOF(S_surfxml_platform_5):
8050 case YY_STATE_EOF(S_surfxml_platform_7):
8051 case YY_STATE_EOF(S_surfxml_include_1):
8052 case YY_STATE_EOF(S_surfxml_random_1):
8053 case YY_STATE_EOF(S_surfxml_AS_2):
8054 case YY_STATE_EOF(S_surfxml_AS_5):
8055 case YY_STATE_EOF(S_surfxml_AS_7):
8056 case YY_STATE_EOF(S_surfxml_AS_10):
8057 case YY_STATE_EOF(S_surfxml_AS_12):
8058 case YY_STATE_EOF(S_surfxml_storage_type_1):
8059 case YY_STATE_EOF(S_surfxml_storage_1):
8060 case YY_STATE_EOF(S_surfxml_host_1):
8061 case YY_STATE_EOF(S_surfxml_link_1):
8062 case YY_STATE_EOF(S_surfxml_route_1):
8063 case YY_STATE_EOF(S_surfxml_ASroute_1):
8064 case YY_STATE_EOF(S_surfxml_bypassRoute_1):
8065 case YY_STATE_EOF(S_surfxml_bypassASroute_1):
8066 case YY_STATE_EOF(S_surfxml_process_1):
8067 case YY_STATE_EOF(S_surfxml_config_1):
8068 case YY_STATE_EOF(IMPOSSIBLE):
8071 case YY_END_OF_BUFFER:
8073 /* Amount of text matched not including the EOB char. */
8074 int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
8076 /* Undo the effects of YY_DO_BEFORE_ACTION. */
8077 *yy_cp = (yy_hold_char);
8078 YY_RESTORE_YY_MORE_OFFSET
8080 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
8082 /* We're scanning a new file or input source. It's
8083 * possible that this happened because the user
8084 * just pointed surf_parse_in at a new source and called
8085 * surf_parse_lex(). If so, then we have to assure
8086 * consistency between YY_CURRENT_BUFFER and our
8087 * globals. Here is the right place to do so, because
8088 * this is the first action (other than possibly a
8089 * back-up) that will match for the new input source.
8091 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
8092 YY_CURRENT_BUFFER_LVALUE->yy_input_file = surf_parse_in;
8093 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
8096 /* Note that here we test for yy_c_buf_p "<=" to the position
8097 * of the first EOB in the buffer, since yy_c_buf_p will
8098 * already have been incremented past the NUL character
8099 * (since all states make transitions on EOB to the
8100 * end-of-buffer state). Contrast this with the test
8103 if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
8104 { /* This was really a NUL. */
8105 yy_state_type yy_next_state;
8107 (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
8109 yy_current_state = yy_get_previous_state( );
8111 /* Okay, we're now positioned to make the NUL
8112 * transition. We couldn't have
8113 * yy_get_previous_state() go ahead and do it
8114 * for us because it doesn't know how to deal
8115 * with the possibility of jamming (and we don't
8116 * want to build jamming into it because then it
8117 * will run more slowly).
8120 yy_next_state = yy_try_NUL_trans( yy_current_state );
8122 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
8124 if ( yy_next_state )
8126 /* Consume the NUL. */
8127 yy_cp = ++(yy_c_buf_p);
8128 yy_current_state = yy_next_state;
8134 yy_cp = (yy_c_buf_p);
8135 goto yy_find_action;
8139 else switch ( yy_get_next_buffer( ) )
8141 case EOB_ACT_END_OF_FILE:
8143 (yy_did_buffer_switch_on_eof) = 0;
8145 if ( surf_parse_wrap( ) )
8147 /* Note: because we've taken care in
8148 * yy_get_next_buffer() to have set up
8149 * surf_parse_text, we can now set up
8150 * yy_c_buf_p so that if some total
8151 * hoser (like flex itself) wants to
8152 * call the scanner after we return the
8153 * YY_NULL, it'll still work - another
8154 * YY_NULL will get returned.
8156 (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;
8158 yy_act = YY_STATE_EOF(YY_START);
8164 if ( ! (yy_did_buffer_switch_on_eof) )
8170 case EOB_ACT_CONTINUE_SCAN:
8172 (yytext_ptr) + yy_amount_of_matched_text;
8174 yy_current_state = yy_get_previous_state( );
8176 yy_cp = (yy_c_buf_p);
8177 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
8180 case EOB_ACT_LAST_MATCH:
8182 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
8184 yy_current_state = yy_get_previous_state( );
8186 yy_cp = (yy_c_buf_p);
8187 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
8188 goto yy_find_action;
8195 "fatal flex scanner internal error--no action found" );
8196 } /* end of action switch */
8197 } /* end of scanning one token */
8198 } /* end of surf_parse_lex */
8200 /* yy_get_next_buffer - try to read in a new buffer
8202 * Returns a code representing an action:
8203 * EOB_ACT_LAST_MATCH -
8204 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
8205 * EOB_ACT_END_OF_FILE - end of file
8207 static int yy_get_next_buffer (void)
8209 register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
8210 register char *source = (yytext_ptr);
8211 register int number_to_move, i;
8214 if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
8216 "fatal flex scanner internal error--end of buffer missed" );
8218 if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
8219 { /* Don't try to fill the buffer, so this is an EOF. */
8220 if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
8222 /* We matched a single character, the EOB, so
8223 * treat this as a final EOF.
8225 return EOB_ACT_END_OF_FILE;
8230 /* We matched some text prior to the EOB, first
8233 return EOB_ACT_LAST_MATCH;
8237 /* Try to read more data. */
8239 /* First move last chars to start of buffer. */
8240 number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1;
8242 for ( i = 0; i < number_to_move; ++i )
8243 *(dest++) = *(source++);
8245 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
8246 /* don't do the read, it's not guaranteed to return an EOF,
8249 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
8254 YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
8256 while ( num_to_read <= 0 )
8257 { /* Not enough room in the buffer - grow it. */
8259 /* just a shorter name for the current buffer */
8260 YY_BUFFER_STATE b = YY_CURRENT_BUFFER;
8262 int yy_c_buf_p_offset =
8263 (int) ((yy_c_buf_p) - b->yy_ch_buf);
8265 if ( b->yy_is_our_buffer )
8267 int new_size = b->yy_buf_size * 2;
8269 if ( new_size <= 0 )
8270 b->yy_buf_size += b->yy_buf_size / 8;
8272 b->yy_buf_size *= 2;
8274 b->yy_ch_buf = (char *)
8275 /* Include room in for 2 EOB chars. */
8276 surf_parse_realloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 );
8279 /* Can't grow it, we don't own it. */
8282 if ( ! b->yy_ch_buf )
8284 "fatal error - scanner input buffer overflow" );
8286 (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
8288 num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
8293 if ( num_to_read > YY_READ_BUF_SIZE )
8294 num_to_read = YY_READ_BUF_SIZE;
8296 /* Read in more data. */
8297 YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
8298 (yy_n_chars), (size_t) num_to_read );
8300 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
8303 if ( (yy_n_chars) == 0 )
8305 if ( number_to_move == YY_MORE_ADJ )
8307 ret_val = EOB_ACT_END_OF_FILE;
8308 surf_parse_restart(surf_parse_in );
8313 ret_val = EOB_ACT_LAST_MATCH;
8314 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
8315 YY_BUFFER_EOF_PENDING;
8320 ret_val = EOB_ACT_CONTINUE_SCAN;
8322 if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
8323 /* Extend the array by 50%, plus the number we really need. */
8324 yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
8325 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) surf_parse_realloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size );
8326 if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
8327 YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
8330 (yy_n_chars) += number_to_move;
8331 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
8332 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
8334 (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
8339 /* yy_get_previous_state - get the state just before the EOB char was reached */
8341 static yy_state_type yy_get_previous_state (void)
8343 register yy_state_type yy_current_state;
8344 register char *yy_cp;
8346 yy_current_state = (yy_start);
8348 for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
8350 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
8351 if ( yy_accept[yy_current_state] )
8353 (yy_last_accepting_state) = yy_current_state;
8354 (yy_last_accepting_cpos) = yy_cp;
8356 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
8358 yy_current_state = (int) yy_def[yy_current_state];
8359 if ( yy_current_state >= 2809 )
8360 yy_c = yy_meta[(unsigned int) yy_c];
8362 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
8365 return yy_current_state;
8368 /* yy_try_NUL_trans - try to make a transition on the NUL character
8371 * next_state = yy_try_NUL_trans( current_state );
8373 static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state )
8375 register int yy_is_jam;
8376 register char *yy_cp = (yy_c_buf_p);
8378 register YY_CHAR yy_c = 1;
8379 if ( yy_accept[yy_current_state] )
8381 (yy_last_accepting_state) = yy_current_state;
8382 (yy_last_accepting_cpos) = yy_cp;
8384 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
8386 yy_current_state = (int) yy_def[yy_current_state];
8387 if ( yy_current_state >= 2809 )
8388 yy_c = yy_meta[(unsigned int) yy_c];
8390 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
8391 yy_is_jam = (yy_current_state == 2808);
8393 return yy_is_jam ? 0 : yy_current_state;
8398 static int yyinput (void)
8400 static int input (void)
8406 *(yy_c_buf_p) = (yy_hold_char);
8408 if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
8410 /* yy_c_buf_p now points to the character we want to return.
8411 * If this occurs *before* the EOB characters, then it's a
8412 * valid NUL; if not, then we've hit the end of the buffer.
8414 if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
8415 /* This was really a NUL. */
8416 *(yy_c_buf_p) = '\0';
8419 { /* need more input */
8420 int offset = (yy_c_buf_p) - (yytext_ptr);
8423 switch ( yy_get_next_buffer( ) )
8425 case EOB_ACT_LAST_MATCH:
8426 /* This happens because yy_g_n_b()
8427 * sees that we've accumulated a
8428 * token and flags that we need to
8429 * try matching the token before
8430 * proceeding. But for input(),
8431 * there's no matching to consider.
8432 * So convert the EOB_ACT_LAST_MATCH
8433 * to EOB_ACT_END_OF_FILE.
8436 /* Reset buffer status. */
8437 surf_parse_restart(surf_parse_in );
8441 case EOB_ACT_END_OF_FILE:
8443 if ( surf_parse_wrap( ) )
8446 if ( ! (yy_did_buffer_switch_on_eof) )
8455 case EOB_ACT_CONTINUE_SCAN:
8456 (yy_c_buf_p) = (yytext_ptr) + offset;
8462 c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */
8463 *(yy_c_buf_p) = '\0'; /* preserve surf_parse_text */
8464 (yy_hold_char) = *++(yy_c_buf_p);
8468 surf_parse_lineno++;
8473 #endif /* ifndef YY_NO_INPUT */
8475 /** Immediately switch to a different input stream.
8476 * @param input_file A readable stream.
8478 * @note This function does not reset the start condition to @c INITIAL .
8480 void surf_parse_restart (FILE * input_file )
8483 if ( ! YY_CURRENT_BUFFER ){
8484 surf_parse_ensure_buffer_stack ();
8485 YY_CURRENT_BUFFER_LVALUE =
8486 surf_parse__create_buffer(surf_parse_in,YY_BUF_SIZE );
8489 surf_parse__init_buffer(YY_CURRENT_BUFFER,input_file );
8490 surf_parse__load_buffer_state( );
8493 /** Switch to a different input buffer.
8494 * @param new_buffer The new input buffer.
8497 void surf_parse__switch_to_buffer (YY_BUFFER_STATE new_buffer )
8500 /* TODO. We should be able to replace this entire function body
8502 * surf_parse_pop_buffer_state();
8503 * surf_parse_push_buffer_state(new_buffer);
8505 surf_parse_ensure_buffer_stack ();
8506 if ( YY_CURRENT_BUFFER == new_buffer )
8509 if ( YY_CURRENT_BUFFER )
8511 /* Flush out information for old buffer. */
8512 *(yy_c_buf_p) = (yy_hold_char);
8513 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
8514 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
8517 YY_CURRENT_BUFFER_LVALUE = new_buffer;
8518 surf_parse__load_buffer_state( );
8520 /* We don't actually know whether we did this switch during
8521 * EOF (surf_parse_wrap()) processing, but the only time this flag
8522 * is looked at is after surf_parse_wrap() is called, so it's safe
8523 * to go ahead and always set it.
8525 (yy_did_buffer_switch_on_eof) = 1;
8528 static void surf_parse__load_buffer_state (void)
8530 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
8531 (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
8532 surf_parse_in = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
8533 (yy_hold_char) = *(yy_c_buf_p);
8536 /** Allocate and initialize an input buffer state.
8537 * @param file A readable stream.
8538 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
8540 * @return the allocated buffer state.
8542 YY_BUFFER_STATE surf_parse__create_buffer (FILE * file, int size )
8546 b = (YY_BUFFER_STATE) surf_parse_alloc(sizeof( struct yy_buffer_state ) );
8548 YY_FATAL_ERROR( "out of dynamic memory in surf_parse__create_buffer()" );
8550 b->yy_buf_size = size;
8552 /* yy_ch_buf has to be 2 characters longer than the size given because
8553 * we need to put in 2 end-of-buffer characters.
8555 b->yy_ch_buf = (char *) surf_parse_alloc(b->yy_buf_size + 2 );
8556 if ( ! b->yy_ch_buf )
8557 YY_FATAL_ERROR( "out of dynamic memory in surf_parse__create_buffer()" );
8559 b->yy_is_our_buffer = 1;
8561 surf_parse__init_buffer(b,file );
8566 /** Destroy the buffer.
8567 * @param b a buffer created with surf_parse__create_buffer()
8570 void surf_parse__delete_buffer (YY_BUFFER_STATE b )
8576 if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
8577 YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
8579 if ( b->yy_is_our_buffer )
8580 surf_parse_free((void *) b->yy_ch_buf );
8582 surf_parse_free((void *) b );
8586 extern int isatty (int );
8587 #endif /* __cplusplus */
8589 /* Initializes or reinitializes a buffer.
8590 * This function is sometimes called more than once on the same buffer,
8591 * such as during a surf_parse_restart() or at EOF.
8593 static void surf_parse__init_buffer (YY_BUFFER_STATE b, FILE * file )
8598 surf_parse__flush_buffer(b );
8600 b->yy_input_file = file;
8601 b->yy_fill_buffer = 1;
8603 /* If b is the current buffer, then surf_parse__init_buffer was _probably_
8604 * called from surf_parse_restart() or through yy_get_next_buffer.
8605 * In that case, we don't want to reset the lineno or column.
8607 if (b != YY_CURRENT_BUFFER){
8608 b->yy_bs_lineno = 1;
8609 b->yy_bs_column = 0;
8612 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
8617 /** Discard all buffered characters. On the next scan, YY_INPUT will be called.
8618 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
8621 void surf_parse__flush_buffer (YY_BUFFER_STATE b )
8628 /* We always need two end-of-buffer characters. The first causes
8629 * a transition to the end-of-buffer state. The second causes
8630 * a jam in that state.
8632 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
8633 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
8635 b->yy_buf_pos = &b->yy_ch_buf[0];
8638 b->yy_buffer_status = YY_BUFFER_NEW;
8640 if ( b == YY_CURRENT_BUFFER )
8641 surf_parse__load_buffer_state( );
8644 /** Pushes the new state onto the stack. The new state becomes
8645 * the current state. This function will allocate the stack
8647 * @param new_buffer The new state.
8650 void surf_parse_push_buffer_state (YY_BUFFER_STATE new_buffer )
8652 if (new_buffer == NULL)
8655 surf_parse_ensure_buffer_stack();
8657 /* This block is copied from surf_parse__switch_to_buffer. */
8658 if ( YY_CURRENT_BUFFER )
8660 /* Flush out information for old buffer. */
8661 *(yy_c_buf_p) = (yy_hold_char);
8662 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
8663 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
8666 /* Only push if top exists. Otherwise, replace top. */
8667 if (YY_CURRENT_BUFFER)
8668 (yy_buffer_stack_top)++;
8669 YY_CURRENT_BUFFER_LVALUE = new_buffer;
8671 /* copied from surf_parse__switch_to_buffer. */
8672 surf_parse__load_buffer_state( );
8673 (yy_did_buffer_switch_on_eof) = 1;
8676 /** Removes and deletes the top of the stack, if present.
8677 * The next element becomes the new top.
8680 void surf_parse_pop_buffer_state (void)
8682 if (!YY_CURRENT_BUFFER)
8685 surf_parse__delete_buffer(YY_CURRENT_BUFFER );
8686 YY_CURRENT_BUFFER_LVALUE = NULL;
8687 if ((yy_buffer_stack_top) > 0)
8688 --(yy_buffer_stack_top);
8690 if (YY_CURRENT_BUFFER) {
8691 surf_parse__load_buffer_state( );
8692 (yy_did_buffer_switch_on_eof) = 1;
8696 /* Allocates the stack if it does not exist.
8697 * Guarantees space for at least one push.
8699 static void surf_parse_ensure_buffer_stack (void)
8703 if (!(yy_buffer_stack)) {
8705 /* First allocation is just for 2 elements, since we don't know if this
8706 * scanner will even need a stack. We use 2 instead of 1 to avoid an
8707 * immediate realloc on the next call.
8710 (yy_buffer_stack) = (struct yy_buffer_state**)surf_parse_alloc
8711 (num_to_alloc * sizeof(struct yy_buffer_state*)
8713 if ( ! (yy_buffer_stack) )
8714 YY_FATAL_ERROR( "out of dynamic memory in surf_parse_ensure_buffer_stack()" );
8716 memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
8718 (yy_buffer_stack_max) = num_to_alloc;
8719 (yy_buffer_stack_top) = 0;
8723 if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
8725 /* Increase the buffer to prepare for a possible push. */
8726 int grow_size = 8 /* arbitrary grow size */;
8728 num_to_alloc = (yy_buffer_stack_max) + grow_size;
8729 (yy_buffer_stack) = (struct yy_buffer_state**)surf_parse_realloc
8731 num_to_alloc * sizeof(struct yy_buffer_state*)
8733 if ( ! (yy_buffer_stack) )
8734 YY_FATAL_ERROR( "out of dynamic memory in surf_parse_ensure_buffer_stack()" );
8736 /* zero only the new slots.*/
8737 memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
8738 (yy_buffer_stack_max) = num_to_alloc;
8742 /** Setup the input buffer state to scan directly from a user-specified character buffer.
8743 * @param base the character buffer
8744 * @param size the size in bytes of the character buffer
8746 * @return the newly allocated buffer state object.
8748 YY_BUFFER_STATE surf_parse__scan_buffer (char * base, yy_size_t size )
8753 base[size-2] != YY_END_OF_BUFFER_CHAR ||
8754 base[size-1] != YY_END_OF_BUFFER_CHAR )
8755 /* They forgot to leave room for the EOB's. */
8758 b = (YY_BUFFER_STATE) surf_parse_alloc(sizeof( struct yy_buffer_state ) );
8760 YY_FATAL_ERROR( "out of dynamic memory in surf_parse__scan_buffer()" );
8762 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
8763 b->yy_buf_pos = b->yy_ch_buf = base;
8764 b->yy_is_our_buffer = 0;
8765 b->yy_input_file = 0;
8766 b->yy_n_chars = b->yy_buf_size;
8767 b->yy_is_interactive = 0;
8769 b->yy_fill_buffer = 0;
8770 b->yy_buffer_status = YY_BUFFER_NEW;
8772 surf_parse__switch_to_buffer(b );
8777 /** Setup the input buffer state to scan a string. The next call to surf_parse_lex() will
8778 * scan from a @e copy of @a str.
8779 * @param yystr a NUL-terminated string to scan
8781 * @return the newly allocated buffer state object.
8782 * @note If you want to scan bytes that may contain NUL values, then use
8783 * surf_parse__scan_bytes() instead.
8785 YY_BUFFER_STATE surf_parse__scan_string (yyconst char * yystr )
8788 return surf_parse__scan_bytes(yystr,strlen(yystr) );
8791 /** Setup the input buffer state to scan the given bytes. The next call to surf_parse_lex() will
8792 * scan from a @e copy of @a bytes.
8793 * @param yybytes the byte buffer to scan
8794 * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
8796 * @return the newly allocated buffer state object.
8798 YY_BUFFER_STATE surf_parse__scan_bytes (yyconst char * yybytes, int _yybytes_len )
8805 /* Get memory for full buffer, including space for trailing EOB's. */
8806 n = _yybytes_len + 2;
8807 buf = (char *) surf_parse_alloc(n );
8809 YY_FATAL_ERROR( "out of dynamic memory in surf_parse__scan_bytes()" );
8811 for ( i = 0; i < _yybytes_len; ++i )
8812 buf[i] = yybytes[i];
8814 buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
8816 b = surf_parse__scan_buffer(buf,n );
8818 YY_FATAL_ERROR( "bad buffer in surf_parse__scan_bytes()" );
8820 /* It's okay to grow etc. this buffer, and we should throw it
8821 * away when we're done.
8823 b->yy_is_our_buffer = 1;
8828 static void yy_push_state (int new_state )
8830 if ( (yy_start_stack_ptr) >= (yy_start_stack_depth) )
8834 (yy_start_stack_depth) += YY_START_STACK_INCR;
8835 new_size = (yy_start_stack_depth) * sizeof( int );
8837 if ( ! (yy_start_stack) )
8838 (yy_start_stack) = (int *) surf_parse_alloc(new_size );
8841 (yy_start_stack) = (int *) surf_parse_realloc((void *) (yy_start_stack),new_size );
8843 if ( ! (yy_start_stack) )
8844 YY_FATAL_ERROR( "out of memory expanding start-condition stack" );
8847 (yy_start_stack)[(yy_start_stack_ptr)++] = YY_START;
8852 static void yy_pop_state (void)
8854 if ( --(yy_start_stack_ptr) < 0 )
8855 YY_FATAL_ERROR( "start-condition stack underflow" );
8857 BEGIN((yy_start_stack)[(yy_start_stack_ptr)]);
8860 #ifndef YY_EXIT_FAILURE
8861 #define YY_EXIT_FAILURE 2
8864 static void yy_fatal_error (yyconst char* msg )
8866 (void) fprintf( stderr, "%s\n", msg );
8867 exit( YY_EXIT_FAILURE );
8870 /* Redefine yyless() so it works in section 3 code. */
8876 /* Undo effects of setting up surf_parse_text. */ \
8877 int yyless_macro_arg = (n); \
8878 YY_LESS_LINENO(yyless_macro_arg);\
8879 surf_parse_text[surf_parse_leng] = (yy_hold_char); \
8880 (yy_c_buf_p) = surf_parse_text + yyless_macro_arg; \
8881 (yy_hold_char) = *(yy_c_buf_p); \
8882 *(yy_c_buf_p) = '\0'; \
8883 surf_parse_leng = yyless_macro_arg; \
8887 /* Accessor methods (get/set functions) to struct members. */
8889 /** Get the current line number.
8892 int surf_parse_get_lineno (void)
8895 return surf_parse_lineno;
8898 /** Get the input stream.
8901 FILE *surf_parse_get_in (void)
8903 return surf_parse_in;
8906 /** Get the output stream.
8909 FILE *surf_parse_get_out (void)
8911 return surf_parse_out;
8914 /** Get the length of the current token.
8917 int surf_parse_get_leng (void)
8919 return surf_parse_leng;
8922 /** Get the current token.
8926 char *surf_parse_get_text (void)
8928 return surf_parse_text;
8931 /** Set the current line number.
8932 * @param line_number
8935 void surf_parse_set_lineno (int line_number )
8938 surf_parse_lineno = line_number;
8941 /** Set the input stream. This does not discard the current
8943 * @param in_str A readable stream.
8945 * @see surf_parse__switch_to_buffer
8947 void surf_parse_set_in (FILE * in_str )
8949 surf_parse_in = in_str ;
8952 void surf_parse_set_out (FILE * out_str )
8954 surf_parse_out = out_str ;
8957 int surf_parse_get_debug (void)
8959 return surf_parse__flex_debug;
8962 void surf_parse_set_debug (int bdebug )
8964 surf_parse__flex_debug = bdebug ;
8967 static int yy_init_globals (void)
8969 /* Initialization is the same as for the non-reentrant scanner.
8970 * This function is called from surf_parse_lex_destroy(), so don't allocate here.
8973 /* We do not touch surf_parse_lineno unless the option is enabled. */
8974 surf_parse_lineno = 1;
8976 (yy_buffer_stack) = 0;
8977 (yy_buffer_stack_top) = 0;
8978 (yy_buffer_stack_max) = 0;
8979 (yy_c_buf_p) = (char *) 0;
8983 (yy_start_stack_ptr) = 0;
8984 (yy_start_stack_depth) = 0;
8985 (yy_start_stack) = NULL;
8987 /* Defined in main.c */
8989 surf_parse_in = stdin;
8990 surf_parse_out = stdout;
8992 surf_parse_in = (FILE *) 0;
8993 surf_parse_out = (FILE *) 0;
8996 /* For future reference: Set errno on error, since we are called by
8997 * surf_parse_lex_init()
9002 /* surf_parse_lex_destroy is for both reentrant and non-reentrant scanners. */
9003 int surf_parse_lex_destroy (void)
9006 /* Pop the buffer stack, destroying each element. */
9007 while(YY_CURRENT_BUFFER){
9008 surf_parse__delete_buffer(YY_CURRENT_BUFFER );
9009 YY_CURRENT_BUFFER_LVALUE = NULL;
9010 surf_parse_pop_buffer_state();
9013 /* Destroy the stack itself. */
9014 surf_parse_free((yy_buffer_stack) );
9015 (yy_buffer_stack) = NULL;
9017 /* Destroy the start condition stack. */
9018 surf_parse_free((yy_start_stack) );
9019 (yy_start_stack) = NULL;
9021 /* Reset the globals. This is important in a non-reentrant scanner so the next time
9022 * surf_parse_lex() is called, initialization will occur. */
9029 * Internal utility routines.
9033 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
9036 for ( i = 0; i < n; ++i )
9041 #ifdef YY_NEED_STRLEN
9042 static int yy_flex_strlen (yyconst char * s )
9045 for ( n = 0; s[n]; ++n )
9052 void *surf_parse_alloc (yy_size_t size )
9054 return (void *) malloc( size );
9057 void *surf_parse_realloc (void * ptr, yy_size_t size )
9059 /* The cast to (char *) in the following accommodates both
9060 * implementations that use char* generic pointers, and those
9061 * that use void* generic pointers. It works with the latter
9062 * because both ANSI C and C++ allow castless assignment from
9063 * any pointer type to void*, and deal with argument conversions
9064 * as though doing an assignment.
9066 return (void *) realloc( (char *) ptr, size );
9069 void surf_parse_free (void * ptr )
9071 free( (char *) ptr ); /* see surf_parse_realloc() for (char *) cast */
9074 #define YYTABLES_NAME "yytables"
9076 /* Element context stack lookup. */
9077 int surfxml_element_context(int i)
9079 return (0<i && i<yy_start_stack_depth
9080 ? yy_start_stack[yy_start_stack_ptr - i]
9085 void print_yy_stack(char* fmt, ...)
9087 int i = 0; va_list ap; va_start(ap, fmt);
9088 vfprintf(stderr, fmt, ap);
9089 if (surfxml_statenames) {
9090 for (i=1; i<yy_start_stack_ptr; i++) {
9091 fprintf(stderr, "%s/", surfxml_statenames[yy_start_stack[i] ]);
9093 fprintf(stderr,"%s\n", surfxml_statenames[YY_START]);
9098 void print_surfxml_bufferstack()
9101 fputs("Buffer: ", stderr);
9102 for (i = 0; i < blimit; i++) {
9103 if ( surfxml_bufferstack[i] == '\377' ) break;
9104 putc(surfxml_bufferstack[i], stderr);
9109 static void debug_enter(int state, const char* statename) {
9110 yy_push_state(state);
9111 if (surf_parse__flex_debug) {
9112 print_yy_stack("--ENTER(%s) : ",statename);
9113 print_surfxml_bufferstack();
9117 static void debug_leave(void) {
9118 if (surf_parse__flex_debug) {
9119 print_yy_stack("--LEAVE : ");
9120 print_surfxml_bufferstack();
9125 static void debug_set(int state, const char* statename) {
9127 if (surf_parse__flex_debug) print_yy_stack("--SET(%s) : ",statename);
9131 static void cleanup(void)
9133 if (surfxml_statenames) {
9134 free(surfxml_statenames);
9135 surfxml_statenames = NULL;
9137 free(surfxml_bufferstack);
9138 surfxml_bufferstack = NULL;
9144 static int fail(const char* fmt, ...)
9146 int chars_left, used;
9147 va_list ap; va_start(ap, fmt);
9148 #ifdef FLEXML_yylineno
9149 used = sprintf(flexml_err_msg,
9150 "Invalid XML (XML input line %d, state %d): ",
9151 surf_parse_lineno, YY_START);
9153 used = sprintf(flexml_err_msg,
9154 "Invalid XML (state %d): ",
9157 chars_left = flexml_max_err_msg_size - used - 1;
9158 vsnprintf(flexml_err_msg + used, chars_left, fmt, ap);
9161 #ifndef FLEXML_quiet_parser
9162 /* print directly to sdterr */
9163 fprintf(stderr, "%s\n", flexml_err_msg);
9164 flexml_err_msg[0] = '\0';