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 459
407 #define YY_END_OF_BUFFER 460
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[2695] =
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 460, 458, 15, 10, 10, 15, 15, 438, 10, 438,
442 5, 6, 5, 8, 9, 8, 454, 446, 447, 455,
443 452, 455, 453, 457, 446, 447, 457, 458, 22, 10,
444 22, 22, 22, 20, 22, 26, 10, 26, 26, 458,
445 26, 458, 458, 26, 33, 10, 33, 33, 33, 31,
446 33, 37, 10, 37, 48, 10, 48, 48, 48, 46,
447 48, 48, 48, 455, 454, 78, 10, 78, 78, 78,
448 76, 78, 78, 78, 78, 78, 82, 10, 82, 458,
450 82, 101, 10, 101, 101, 101, 99, 101, 101, 101,
451 105, 10, 105, 114, 10, 114, 114, 114, 112, 114,
452 114, 118, 10, 118, 118, 458, 118, 118, 458, 458,
453 118, 458, 118, 458, 118, 129, 10, 129, 129, 129,
454 127, 129, 129, 129, 133, 10, 133, 133, 142, 10,
455 142, 142, 142, 140, 142, 142, 146, 10, 146, 146,
456 155, 10, 155, 155, 155, 153, 155, 155, 159, 10,
457 159, 168, 10, 168, 168, 168, 166, 168, 168, 172,
458 10, 172, 195, 10, 195, 195, 195, 193, 195, 195,
459 195, 195, 195, 199, 10, 199, 458, 199, 240, 10,
461 240, 240, 240, 238, 240, 240, 240, 240, 240, 240,
462 240, 240, 244, 10, 244, 265, 10, 265, 265, 265,
463 263, 265, 265, 265, 265, 265, 265, 265, 269, 10,
464 269, 278, 10, 278, 278, 278, 276, 278, 278, 282,
465 10, 282, 309, 10, 309, 309, 309, 307, 309, 309,
466 309, 309, 313, 10, 313, 313, 326, 10, 326, 326,
467 326, 324, 326, 326, 330, 10, 330, 458, 330, 347,
468 10, 347, 347, 347, 345, 347, 347, 347, 351, 10,
469 351, 351, 364, 10, 364, 364, 364, 362, 364, 364,
470 368, 10, 368, 381, 10, 381, 381, 381, 379, 381,
472 381, 381, 385, 10, 385, 385, 398, 10, 398, 398,
473 398, 396, 398, 398, 398, 398, 402, 10, 402, 458,
474 402, 409, 10, 409, 409, 409, 407, 409, 413, 10,
475 413, 420, 10, 420, 420, 420, 418, 420, 424, 10,
476 424, 424, 433, 10, 433, 433, 433, 431, 433, 433,
477 437, 10, 437, 10, 0, 2, 2, 0, 4, 7,
478 449, 448, 0, 0, 0, 0, 0, 0, 0, 21,
479 23, 23, 0, 0, 0, 0, 0, 0, 0, 0,
480 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
481 0, 0, 0, 0, 0, 32, 34, 34, 0, 47,
483 49, 49, 49, 49, 0, 0, 0, 77, 79, 79,
484 79, 79, 79, 79, 79, 79, 79, 0, 0, 100,
485 102, 102, 102, 102, 0, 113, 115, 115, 115, 0,
486 0, 0, 0, 0, 0, 0, 0, 0, 0, 128,
487 130, 130, 130, 130, 0, 141, 143, 143, 143, 0,
488 154, 156, 156, 156, 0, 167, 169, 169, 169, 0,
489 194, 196, 196, 196, 196, 196, 196, 0, 0, 239,
490 241, 241, 241, 241, 241, 241, 241, 241, 241, 241,
491 241, 241, 241, 241, 0, 264, 266, 266, 266, 266,
492 266, 266, 266, 266, 0, 277, 279, 279, 279, 0,
494 308, 310, 310, 310, 310, 310, 310, 0, 325, 327,
495 327, 327, 327, 0, 0, 346, 348, 348, 348, 348,
496 348, 0, 363, 365, 365, 365, 0, 380, 382, 382,
497 382, 382, 0, 397, 399, 399, 399, 399, 399, 0,
498 0, 408, 410, 410, 0, 419, 421, 421, 0, 432,
499 434, 434, 434, 0, 0, 0, 0, 0, 3, 0,
500 0, 0, 0, 0, 0, 0, 456, 0, 23, 0,
501 0, 107, 0, 0, 0, 0, 0, 0, 0, 0,
502 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
503 106, 0, 0, 0, 0, 0, 34, 0, 0, 49,
505 0, 0, 49, 0, 0, 0, 451, 79, 0, 0,
506 79, 79, 79, 79, 79, 79, 0, 0, 0, 102,
507 102, 102, 0, 0, 0, 0, 115, 0, 0, 107,
508 0, 0, 0, 0, 0, 106, 0, 0, 130, 0,
509 0, 130, 0, 0, 0, 0, 143, 0, 0, 0,
510 0, 156, 0, 0, 169, 169, 0, 0, 196, 196,
511 196, 0, 0, 196, 196, 0, 0, 0, 0, 241,
512 241, 0, 0, 241, 0, 0, 241, 241, 241, 241,
513 241, 241, 241, 241, 0, 0, 266, 266, 266, 0,
514 0, 266, 266, 266, 0, 0, 279, 0, 0, 0,
516 0, 310, 0, 0, 310, 310, 310, 0, 0, 327,
517 327, 327, 0, 0, 0, 348, 348, 348, 348, 0,
518 0, 365, 0, 0, 0, 0, 382, 382, 382, 0,
519 0, 399, 399, 399, 399, 0, 0, 0, 410, 0,
520 0, 0, 0, 0, 0, 0, 0, 434, 0, 0,
521 0, 14, 1, 0, 0, 444, 0, 0, 0, 441,
522 440, 0, 0, 23, 0, 0, 25, 0, 107, 0,
523 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
524 0, 0, 0, 0, 0, 0, 0, 0, 106, 0,
525 0, 0, 0, 0, 34, 0, 0, 36, 0, 49,
527 0, 41, 40, 49, 0, 0, 0, 51, 0, 79,
528 0, 55, 54, 0, 0, 79, 0, 0, 79, 79,
529 79, 0, 0, 81, 0, 0, 102, 102, 102, 0,
530 0, 104, 0, 0, 109, 108, 115, 0, 0, 117,
531 0, 0, 0, 0, 0, 0, 0, 0, 0, 130,
532 0, 122, 121, 130, 0, 0, 132, 0, 0, 137,
533 136, 143, 0, 0, 145, 0, 0, 150, 149, 156,
534 0, 0, 158, 0, 169, 169, 0, 0, 171, 0,
535 196, 196, 196, 0, 176, 175, 196, 196, 0, 0,
536 198, 0, 0, 0, 241, 241, 241, 241, 0, 215,
538 214, 241, 0, 203, 202, 0, 0, 241, 241, 241,
539 241, 241, 241, 241, 0, 0, 243, 0, 266, 266,
540 266, 266, 0, 248, 247, 0, 0, 266, 266, 0,
541 0, 268, 0, 279, 0, 273, 272, 0, 0, 281,
542 0, 310, 0, 286, 285, 310, 310, 310, 0, 0,
543 312, 0, 0, 0, 0, 0, 327, 0, 0, 329,
544 0, 0, 0, 0, 348, 348, 0, 0, 348, 0,
545 0, 350, 0, 365, 0, 355, 354, 0, 0, 367,
546 0, 0, 0, 382, 382, 0, 0, 0, 0, 384,
547 0, 399, 399, 399, 399, 0, 0, 401, 0, 0,
549 410, 0, 0, 412, 0, 0, 417, 416, 0, 0,
550 423, 0, 0, 428, 427, 434, 0, 0, 436, 0,
551 0, 0, 445, 439, 0, 0, 0, 23, 0, 0,
552 0, 0, 0, 0, 173, 0, 283, 0, 0, 246,
553 0, 0, 425, 0, 0, 0, 0, 0, 0, 0,
554 0, 245, 0, 0, 0, 0, 0, 0, 0, 49,
555 0, 0, 79, 0, 59, 58, 0, 0, 0, 57,
556 56, 79, 0, 0, 79, 0, 426, 102, 0, 0,
557 102, 0, 115, 0, 116, 0, 0, 174, 284, 0,
558 0, 0, 0, 130, 130, 0, 143, 0, 0, 0,
560 0, 0, 0, 169, 0, 196, 196, 0, 0, 196,
561 196, 0, 0, 0, 241, 241, 241, 241, 0, 0,
562 0, 217, 216, 241, 241, 241, 241, 241, 241, 241,
563 0, 266, 266, 266, 266, 0, 256, 255, 266, 266,
564 0, 279, 0, 310, 310, 310, 310, 0, 0, 319,
565 318, 0, 317, 316, 327, 0, 283, 0, 336, 335,
566 348, 348, 0, 334, 333, 348, 0, 365, 0, 0,
567 374, 373, 382, 382, 0, 372, 371, 0, 399, 0,
568 0, 399, 399, 0, 0, 410, 0, 0, 434, 0,
569 0, 0, 0, 12, 0, 442, 443, 0, 23, 0,
571 0, 0, 0, 0, 0, 173, 0, 283, 0, 147,
572 0, 246, 0, 0, 425, 0, 314, 0, 39, 0,
573 0, 0, 0, 245, 0, 38, 0, 30, 29, 0,
574 0, 43, 42, 49, 0, 0, 79, 0, 61, 60,
575 79, 0, 65, 64, 79, 0, 426, 102, 0, 0,
576 0, 0, 0, 0, 115, 0, 0, 174, 284, 315,
577 0, 315, 314, 130, 0, 0, 0, 143, 0, 0,
578 152, 151, 0, 0, 165, 164, 169, 0, 196, 196,
579 0, 180, 179, 0, 0, 0, 0, 196, 0, 148,
580 0, 241, 0, 0, 241, 241, 0, 213, 212, 0,
582 0, 241, 241, 241, 241, 241, 241, 0, 266, 0,
583 0, 266, 266, 0, 0, 266, 0, 279, 0, 310,
584 310, 310, 0, 0, 310, 0, 327, 0, 0, 348,
585 348, 348, 0, 365, 0, 382, 382, 0, 399, 0,
586 389, 388, 399, 399, 0, 0, 0, 0, 0, 0,
587 0, 0, 0, 0, 0, 0, 11, 0, 23, 0,
588 0, 0, 0, 0, 415, 0, 0, 147, 0, 0,
589 0, 53, 314, 270, 0, 39, 0, 414, 52, 0,
590 0, 0, 38, 0, 0, 49, 0, 0, 79, 79,
591 79, 0, 102, 0, 0, 0, 0, 0, 0, 0,
593 0, 0, 96, 95, 0, 115, 0, 0, 315, 271,
594 0, 130, 0, 124, 123, 0, 0, 0, 0, 0,
595 0, 0, 0, 196, 196, 0, 178, 177, 0, 0,
596 0, 196, 0, 197, 148, 0, 241, 0, 225, 224,
597 0, 0, 241, 0, 211, 210, 0, 0, 241, 241,
598 241, 241, 0, 0, 0, 266, 0, 252, 251, 0,
599 0, 266, 0, 250, 249, 266, 0, 267, 279, 0,
600 310, 310, 310, 0, 0, 0, 310, 0, 311, 327,
601 0, 0, 0, 0, 0, 0, 348, 0, 365, 0,
602 0, 0, 0, 0, 0, 399, 399, 399, 0, 0,
604 0, 406, 405, 0, 0, 0, 430, 429, 0, 435,
605 0, 0, 0, 0, 0, 0, 0, 331, 0, 0,
606 201, 415, 28, 0, 0, 0, 387, 53, 270, 134,
607 0, 414, 52, 200, 27, 386, 0, 0, 49, 0,
608 0, 50, 79, 0, 0, 79, 0, 0, 0, 0,
609 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
610 0, 0, 332, 0, 271, 135, 0, 0, 0, 0,
611 139, 138, 0, 0, 157, 0, 163, 162, 0, 196,
612 196, 0, 0, 196, 0, 241, 0, 227, 226, 241,
613 0, 205, 204, 0, 0, 241, 241, 241, 0, 207,
615 206, 0, 266, 0, 254, 253, 266, 266, 279, 0,
616 310, 0, 0, 310, 310, 0, 0, 310, 327, 0,
617 328, 0, 0, 340, 339, 0, 338, 337, 348, 0,
618 365, 0, 0, 378, 377, 0, 376, 375, 0, 399,
619 399, 399, 0, 0, 0, 0, 0, 0, 0, 17,
620 0, 19, 18, 0, 331, 403, 0, 201, 28, 352,
621 160, 16, 387, 134, 0, 0, 200, 27, 386, 0,
622 0, 49, 450, 79, 0, 67, 66, 79, 0, 80,
623 0, 98, 97, 0, 0, 0, 0, 0, 0, 0,
624 0, 0, 0, 0, 0, 111, 110, 332, 0, 135,
626 0, 0, 126, 125, 0, 0, 0, 196, 196, 0,
627 0, 0, 0, 196, 161, 241, 241, 0, 209, 208,
628 241, 241, 241, 0, 266, 266, 266, 279, 0, 280,
629 310, 0, 292, 291, 310, 310, 0, 0, 0, 0,
630 310, 327, 353, 348, 0, 365, 0, 0, 0, 0,
631 399, 399, 0, 404, 0, 0, 422, 0, 0, 0,
632 17, 0, 403, 0, 352, 160, 16, 0, 0, 0,
633 0, 35, 49, 0, 0, 79, 0, 0, 0, 0,
634 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
635 0, 144, 0, 196, 196, 0, 186, 0, 185, 196,
637 161, 241, 241, 0, 0, 241, 241, 0, 242, 266,
638 266, 266, 279, 0, 0, 310, 310, 310, 0, 296,
639 0, 295, 310, 327, 353, 348, 0, 349, 0, 0,
640 0, 0, 0, 391, 390, 0, 0, 399, 0, 400,
641 404, 0, 0, 0, 0, 0, 24, 0, 0, 0,
642 0, 49, 0, 0, 0, 79, 0, 0, 0, 0,
643 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
644 0, 170, 196, 196, 188, 187, 0, 0, 241, 241,
645 0, 237, 236, 241, 0, 0, 266, 266, 0, 0,
646 279, 0, 288, 287, 310, 310, 310, 298, 297, 0,
648 0, 327, 348, 0, 0, 0, 0, 366, 0, 0,
649 395, 394, 0, 0, 0, 411, 0, 0, 0, 369,
650 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
651 0, 79, 0, 0, 0, 0, 88, 0, 0, 0,
652 0, 87, 0, 370, 0, 0, 196, 0, 0, 0,
653 190, 189, 241, 241, 241, 0, 235, 234, 266, 0,
654 0, 0, 262, 261, 0, 0, 310, 310, 310, 0,
655 300, 299, 0, 0, 0, 0, 0, 0, 0, 0,
656 0, 0, 0, 0, 393, 392, 0, 0, 0, 369,
657 119, 0, 0, 0, 45, 44, 0, 0, 0, 0,
659 0, 0, 0, 0, 79, 0, 0, 0, 0, 0,
660 0, 0, 0, 0, 370, 120, 0, 0, 0, 196,
661 0, 192, 191, 241, 241, 241, 266, 0, 258, 257,
662 0, 275, 274, 310, 0, 0, 310, 0, 0, 0,
663 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
664 0, 0, 0, 0, 119, 84, 83, 0, 0, 0,
665 0, 0, 0, 0, 0, 0, 0, 0, 0, 94,
666 0, 0, 0, 93, 0, 0, 120, 0, 0, 182,
667 181, 196, 241, 241, 241, 266, 310, 0, 294, 293,
668 310, 0, 0, 0, 0, 0, 0, 0, 0, 0,
670 0, 357, 0, 0, 356, 0, 383, 0, 0, 0,
671 0, 0, 0, 84, 83, 0, 0, 0, 0, 0,
672 0, 0, 0, 0, 63, 62, 0, 0, 0, 0,
673 0, 0, 0, 0, 131, 196, 241, 241, 0, 0,
674 266, 0, 0, 0, 0, 0, 0, 0, 0, 0,
675 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
676 0, 0, 0, 0, 75, 71, 0, 0, 74, 70,
677 0, 92, 0, 0, 91, 0, 0, 0, 103, 196,
678 241, 241, 0, 0, 0, 266, 0, 290, 289, 0,
679 0, 0, 323, 0, 322, 0, 344, 0, 343, 0,
681 359, 361, 358, 360, 0, 0, 0, 12, 0, 12,
682 0, 0, 0, 0, 0, 86, 90, 85, 89, 196,
683 241, 241, 0, 0, 0, 0, 266, 0, 0, 0,
684 0, 321, 320, 342, 341, 0, 0, 0, 0, 0,
685 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
686 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
687 0, 0, 0, 0, 0, 0, 69, 0, 68, 0,
688 0, 184, 183, 0, 233, 232, 0, 0, 0, 0,
689 0, 0, 0, 0, 0, 0, 260, 259, 0, 0,
690 0, 0, 0, 0, 0, 11, 0, 0, 0, 0,
692 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
693 0, 0, 0, 0, 0, 73, 72, 0, 0, 0,
694 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
695 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
696 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
697 0, 0, 0, 0, 0, 0, 0, 219, 0, 0,
698 218, 0, 0, 302, 0, 0, 301, 0, 0, 0,
699 0, 0, 223, 0, 222, 0, 304, 0, 303, 0,
700 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
701 0, 229, 0, 228, 0, 0, 0, 0, 0, 0,
703 231, 230, 221, 220, 306, 305, 0, 0, 0, 0,
704 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
705 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
706 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0,
711 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
716 static yyconst flex_int32_t yy_ec[256] =
718 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
719 1, 2, 4, 1, 1, 1, 1, 1, 1, 1,
720 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
721 1, 2, 5, 6, 7, 1, 1, 8, 9, 1,
722 1, 1, 1, 1, 10, 11, 12, 13, 13, 13,
723 13, 14, 13, 13, 13, 15, 13, 16, 17, 18,
724 19, 20, 21, 1, 22, 23, 24, 25, 26, 27,
725 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
726 31, 38, 39, 40, 41, 42, 43, 44, 45, 31,
727 46, 1, 47, 1, 48, 1, 49, 50, 51, 52,
729 53, 54, 55, 56, 57, 31, 58, 59, 60, 61,
730 62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
731 72, 31, 1, 1, 1, 1, 1, 1, 1, 1,
732 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
733 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
734 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
735 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
736 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
737 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
738 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
740 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
741 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
742 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
743 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
744 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
748 static yyconst flex_int32_t yy_meta[73] =
750 1, 2, 2, 2, 1, 1, 1, 1, 1, 3,
751 3, 1, 4, 4, 4, 5, 6, 1, 7, 8,
752 1, 9, 9, 9, 9, 9, 9, 5, 5, 5,
753 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
754 5, 5, 5, 5, 5, 1, 1, 5, 9, 9,
755 9, 9, 9, 9, 5, 5, 5, 5, 5, 5,
756 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
760 static yyconst flex_int16_t yy_base[3070] =
762 0, 0, 0, 3, 6, 9, 12, 29, 16, 19,
763 14, 17, 33, 36, 49, 55, 45, 61, 66, 72,
764 108, 177, 75, 78, 83, 128, 131, 134, 138, 141,
765 158, 197, 200, 203, 207, 210, 227, 230, 233, 236,
766 239, 256, 274, 328, 294, 297, 382, 445, 305, 351,
767 508, 574, 300, 354, 358, 361, 402, 405, 408, 412,
768 640, 707, 415, 465, 774, 839, 468, 471, 475, 478,
769 528, 531, 534, 538, 541, 594, 597, 600, 604, 607,
770 660, 663, 666, 670, 673, 727, 730, 733, 737, 740,
771 794, 797, 800, 804, 807, 859, 904, 964, 862, 865,
773 869, 872, 924, 927, 930, 934, 1024, 1091, 984, 987,
774 990, 994, 1044, 1047, 1050, 1054, 1158, 1219, 1057, 1111,
775 1280, 1347, 1114, 1117, 1414, 1480, 1121, 1124, 1178, 1181,
776 1184, 1188, 1191, 1239, 1546, 0, 1242, 1245, 1618, 0,
777 1249, 1252, 1690, 1747, 1300, 1303, 1804, 1870, 1306, 1310,
778 1313, 1367, 1370, 1373, 1377, 1380, 1936, 2002, 1434, 1437,
779 1440, 1444, 1500, 1503, 1506, 1510, 2068, 2134, 1710, 1713,
780 1716, 1720, 1767, 1770, 1773, 1777, 2200, 2257, 1824, 1827,
781 2314, 2380, 1830, 1834, 1837, 1890, 1893, 1896, 1900, 1903,
782 2446, 2512, 1956, 1959, 1962, 1966, 1969, 2022, 2025, 2028,
784 2578, 2647, 2032, 2035, 2716, 2773, 2088, 2091, 2094, 2098,
785 2101, 2154, 2157, 2160, 2830, 2899, 2164, 2167, 0, 0,
786 7450, 9619, 9619, 95, 100, 29, 41, 9619, 103, 51,
787 9619, 9619, 7439, 9619, 9619, 7428, 9619, 7441, 7441, 498,
788 9619, 9619, 9619, 9619, 7439, 7435, 7390, 145, 9619, 161,
789 7416, 0, 146, 9619, 7380, 9619, 166, 2964, 88, 204,
790 205, 254, 7420, 3, 9619, 169, 7411, 0, 153, 9619,
791 7369, 9619, 260, 419, 9619, 322, 7405, 0, 244, 9619,
792 7367, 7369, 7367, 420, 7372, 9619, 364, 7394, 0, 248,
793 9619, 7360, 7360, 257, 7360, 360, 9619, 440, 31, 7396,
795 7344, 9619, 567, 7382, 0, 306, 9619, 7342, 7343, 7332,
796 9619, 624, 482, 9619, 633, 7376, 0, 416, 9619, 7343,
797 7328, 9619, 692, 2172, 2176, 285, 35, 7367, 240, 135,
798 740, 2185, 59, 7376, 152, 9619, 697, 7365, 0, 417,
799 9619, 7322, 7331, 7316, 9619, 700, 7357, 181, 9619, 764,
800 7348, 0, 479, 9619, 7315, 7290, 9619, 767, 7349, 210,
801 9619, 824, 7340, 0, 480, 9619, 7303, 7305, 9619, 830,
802 483, 9619, 833, 7333, 0, 485, 9619, 7299, 7275, 9619,
803 889, 546, 9619, 895, 7326, 0, 543, 9619, 7272, 7278,
804 7287, 7272, 7266, 9619, 898, 310, 464, 527, 9619, 937,
806 7312, 0, 545, 9619, 7258, 303, 7264, 7273, 7271, 185,
807 568, 615, 9619, 954, 611, 9619, 997, 7299, 0, 684,
808 9619, 7249, 7243, 7250, 7259, 7257, 7243, 7237, 9619, 1014,
809 685, 9619, 1074, 7279, 0, 742, 9619, 7236, 7245, 9619,
810 1080, 752, 9619, 1083, 7272, 0, 751, 9619, 7242, 7238,
811 7236, 505, 9619, 1086, 7272, 593, 9619, 1141, 7263, 0,
812 808, 9619, 7212, 306, 9619, 1147, 950, 7265, 7217, 9619,
813 1150, 7251, 0, 809, 9619, 7204, 7199, 620, 9619, 1153,
814 7252, 621, 9619, 1208, 7243, 0, 873, 9619, 7205, 7205,
815 9619, 1214, 942, 9619, 1269, 7236, 0, 874, 9619, 7189,
817 7180, 7184, 9619, 1275, 7236, 811, 9619, 1330, 7223, 0,
818 938, 9619, 7174, 7179, 7179, 7168, 9619, 1333, 449, 991,
819 826, 9619, 1336, 7214, 0, 939, 9619, 7180, 9619, 1340,
820 1002, 9619, 1397, 7208, 0, 999, 9619, 7175, 9619, 1400,
821 7210, 872, 9619, 1403, 7201, 0, 1001, 9619, 7168, 7166,
822 9619, 1407, 1445, 1465, 713, 7143, 9619, 7203, 6738, 9619,
823 9619, 9619, 1459, 317, 6690, 6688, 6686, 6733, 6693, 9619,
824 0, 6686, 6687, 6710, 6682, 6674, 687, 6682, 6675, 6678,
825 887, 30, 1017, 6666, 6660, 757, 1018, 6684, 1071, 6661,
826 1081, 6655, 1138, 1148, 1209, 9619, 0, 6656, 6657, 9619,
828 0, 6653, 1513, 6641, 1009, 6637, 6680, 9619, 0, 6637,
829 1723, 6626, 6646, 6626, 6634, 6631, 6631, 6616, 1411, 9619,
830 0, 6623, 6613, 6620, 6601, 9619, 0, 1780, 6598, 6639,
831 6617, 6583, 6591, 6591, 1471, 6575, 6602, 1473, 1474, 9619,
832 0, 6578, 2221, 6572, 6557, 9619, 0, 2230, 6558, 6554,
833 9619, 0, 2277, 6552, 6551, 9619, 0, 6539, 6531, 6533,
834 9619, 0, 6531, 1196, 2280, 6509, 6528, 6516, 1007, 9619,
835 0, 6522, 6521, 2283, 6499, 2286, 6496, 6491, 6499, 6499,
836 6479, 6486, 6485, 6473, 6475, 9619, 0, 6472, 6469, 6453,
837 2289, 6447, 6442, 6458, 6442, 9619, 0, 6442, 2334, 6437,
839 9619, 0, 6427, 2337, 6402, 6419, 6417, 6406, 9619, 0,
840 6396, 6407, 6397, 6390, 6389, 9619, 0, 6378, 6395, 6389,
841 6369, 6396, 9619, 0, 6352, 2340, 6356, 9619, 0, 6343,
842 6358, 6348, 6348, 9619, 0, 6335, 6316, 6322, 6330, 6315,
843 6311, 9619, 0, 6316, 6324, 9619, 0, 2343, 6309, 9619,
844 0, 2346, 6300, 6294, 6322, 6331, 1111, 6279, 9619, 1525,
845 0, 6259, 6259, 6301, 6298, 6251, 9619, 6262, 6244, 2400,
846 2403, 1799, 6253, 6231, 6225, 6230, 6219, 6232, 6217, 6209,
847 6200, 6213, 6210, 6196, 6195, 6182, 6186, 6194, 6179, 6170,
848 1854, 6162, 6177, 6174, 6145, 6154, 6145, 2408, 2411, 6137,
850 2414, 1922, 6132, 6155, 2466, 2471, 9619, 6125, 2475, 1987,
851 2478, 6107, 2486, 6110, 6105, 6108, 2481, 2545, 6084, 6085,
852 6091, 6084, 2535, 2540, 2548, 2053, 6061, 2598, 2606, 1865,
853 6062, 6058, 6052, 6044, 6048, 1930, 6037, 6036, 6035, 2609,
854 2122, 6044, 2612, 2617, 2627, 2368, 6043, 2667, 2671, 2676,
855 2434, 6041, 2679, 2686, 6034, 6033, 2694, 2737, 6027, 5997,
856 6007, 2740, 2632, 6005, 5990, 2747, 2750, 5987, 5974, 5982,
857 1475, 2794, 2698, 5985, 2797, 2706, 2802, 5983, 5977, 5973,
858 5961, 5958, 5955, 5966, 2805, 2862, 5952, 557, 5943, 2850,
859 2762, 2853, 5953, 5938, 2858, 2871, 5938, 2877, 2820, 2923,
861 2927, 5950, 2930, 2886, 5947, 5923, 5920, 2933, 2937, 2948,
862 2956, 2959, 2962, 2970, 5924, 2977, 2989, 2997, 3003, 3008,
863 3031, 5924, 3034, 3040, 3054, 3057, 3062, 3065, 3069, 3076,
864 3083, 5925, 5907, 5914, 5906, 3087, 3091, 5911, 5897, 3095,
865 3098, 3102, 3120, 3130, 3133, 3106, 3136, 5891, 3144, 3155,
866 5936, 9619, 9619, 1299, 5886, 9619, 5926, 5925, 5874, 9619,
867 9619, 5871, 5870, 5878, 3158, 3163, 9619, 3166, 1741, 5865,
868 5858, 5870, 5852, 5858, 5843, 5846, 5846, 5841, 5835, 5831,
869 5824, 1327, 5827, 5809, 5809, 5814, 5793, 5794, 1995, 5769,
870 5775, 5767, 1670, 5773, 3169, 3177, 3187, 9619, 3190, 3197,
872 3200, 9619, 9619, 3209, 5797, 3215, 3219, 9619, 3223, 5752,
873 3227, 9619, 9619, 3242, 3245, 3254, 3260, 3272, 5765, 3263,
874 5762, 3266, 3281, 9619, 3285, 1727, 5747, 3288, 5744, 3291,
875 3294, 9619, 3300, 3306, 9619, 9619, 5738, 3314, 3319, 9619,
876 3322, 5729, 5740, 5712, 5719, 5709, 5703, 5699, 5694, 5707,
877 3326, 9619, 9619, 5699, 3334, 3341, 9619, 3348, 3353, 9619,
878 9619, 5720, 3361, 3367, 9619, 3370, 3373, 9619, 9619, 3381,
879 3389, 3392, 9619, 3395, 3399, 3403, 3417, 3421, 9619, 3424,
880 5689, 5695, 3427, 3436, 9619, 9619, 5677, 5688, 3432, 3445,
881 9619, 3451, 5678, 5676, 5669, 5647, 5661, 5653, 3455, 9619,
883 9619, 3464, 3470, 9619, 9619, 3478, 3483, 5642, 5640, 5640,
884 5633, 5628, 5619, 5610, 3491, 3496, 9619, 3499, 5607, 5596,
885 5588, 5602, 3503, 9619, 9619, 3511, 3518, 5588, 5583, 3529,
886 3532, 9619, 3535, 5582, 3538, 9619, 9619, 3554, 3557, 9619,
887 3560, 5561, 3566, 9619, 9619, 5568, 5548, 5545, 3579, 3582,
888 9619, 3587, 3590, 3594, 3602, 3608, 5538, 3616, 3620, 9619,
889 3623, 5532, 3627, 3635, 5516, 5513, 3630, 3648, 5520, 3656,
890 3659, 9619, 3662, 5521, 3665, 9619, 9619, 3681, 3684, 9619,
891 3690, 3693, 3696, 5500, 5497, 3704, 3711, 3722, 3726, 9619,
892 3729, 5481, 3733, 5499, 5478, 3736, 3741, 9619, 3751, 5472,
894 5479, 3755, 3760, 9619, 3763, 3770, 9619, 9619, 3766, 3785,
895 9619, 3791, 3794, 9619, 9619, 5478, 3804, 3812, 9619, 3817,
896 1305, 3823, 9619, 9619, 5503, 5501, 5460, 5447, 3826, 5439,
897 5441, 5433, 5393, 5394, 2061, 5382, 2188, 5372, 5372, 2251,
898 5375, 5375, 2308, 5358, 5366, 5368, 5363, 5357, 5350, 5343,
899 5341, 2504, 5354, 5353, 3831, 3836, 3845, 3851, 3854, 5352,
900 5360, 3864, 5326, 3869, 9619, 9619, 3878, 3883, 3892, 9619,
901 9619, 5325, 3903, 3907, 5315, 3915, 2507, 5298, 3921, 3924,
902 3934, 3939, 5296, 3942, 9619, 5284, 5285, 2559, 2569, 5296,
903 5291, 5286, 5284, 5275, 3945, 3948, 5282, 3952, 3967, 3971,
905 3979, 3985, 3989, 5274, 3998, 5272, 5263, 4003, 4006, 4017,
906 4022, 4025, 5251, 5252, 5266, 4028, 5239, 5255, 4031, 4040,
907 4049, 9619, 9619, 4035, 5228, 5249, 5231, 5223, 5232, 5207,
908 4059, 5228, 4062, 5199, 5197, 4065, 9619, 9619, 4074, 5204,
909 4080, 5194, 4083, 5153, 5152, 5136, 4086, 4093, 4105, 9619,
910 9619, 4113, 9619, 9619, 5124, 4124, 3000, 4127, 9619, 9619,
911 5123, 5122, 4137, 9619, 9619, 5105, 4145, 5102, 4150, 4153,
912 9619, 9619, 5101, 5067, 4165, 9619, 9619, 4173, 5056, 4176,
913 4179, 5045, 5058, 4194, 5034, 4197, 4200, 4207, 4215, 4221,
914 593, 5071, 4226, 9619, 5052, 9619, 9619, 5008, 4992, 4229,
916 4936, 4931, 4901, 4875, 4856, 2572, 4857, 2640, 4857, 2743,
917 4810, 2881, 4735, 4673, 4233, 4594, 4236, 4593, 4240, 4573,
918 4563, 4515, 4459, 4248, 4389, 4251, 4254, 9619, 9619, 4262,
919 4267, 9619, 9619, 4382, 4299, 4283, 4271, 4287, 9619, 9619,
920 4253, 4302, 9619, 9619, 79, 4311, 4314, 108, 4317, 1763,
921 2084, 4325, 4331, 4339, 165, 240, 250, 4343, 4346, 4349,
922 295, 4352, 4358, 314, 4361, 4365, 4373, 4379, 4382, 4385,
923 9619, 9619, 4393, 4397, 9619, 9619, 4405, 4408, 384, 374,
924 4423, 9619, 9619, 4416, 4434, 4442, 4445, 443, 4454, 4460,
925 458, 510, 4463, 4466, 4474, 559, 4477, 9619, 9619, 4485,
927 4488, 4496, 620, 702, 697, 705, 4499, 4503, 711, 4506,
928 4510, 4518, 756, 4524, 4527, 770, 4536, 794, 4542, 829,
929 810, 833, 4545, 4548, 849, 4556, 855, 4563, 895, 4569,
930 4575, 4578, 4582, 923, 4587, 4596, 4601, 4606, 933, 4615,
931 9619, 9619, 1006, 997, 4609, 1021, 4628, 4635, 4649, 4653,
932 4656, 4661, 4674, 1309, 1302, 1121, 9619, 1042, 4677, 4680,
933 1069, 1075, 1151, 1133, 4683, 1150, 1141, 4686, 1159, 1170,
934 1184, 4689, 4695, 4699, 1206, 4702, 1213, 4709, 4712, 1204,
935 1222, 1230, 4715, 1260, 4718, 1269, 1308, 4721, 1324, 4724,
936 1330, 4727, 4730, 1367, 1356, 1423, 1360, 1375, 1376, 1429,
938 1377, 4742, 9619, 9619, 4733, 4752, 1377, 1411, 4755, 4758,
939 1401, 4761, 4770, 9619, 9619, 4764, 4786, 4789, 4797, 4800,
940 4804, 4807, 4822, 1399, 1426, 4825, 9619, 9619, 4834, 1442,
941 1443, 1439, 4842, 9619, 4845, 1456, 1462, 4851, 9619, 9619,
942 4861, 4864, 1487, 4872, 9619, 9619, 4880, 4883, 4891, 1488,
943 1658, 1672, 4894, 4898, 4912, 1673, 4915, 9619, 9619, 4923,
944 4927, 1683, 4935, 9619, 9619, 1678, 4943, 9619, 1690, 4946,
945 1673, 4949, 1698, 4952, 1727, 1751, 1732, 4967, 9619, 1740,
946 4970, 1753, 4973, 4976, 4991, 4996, 1778, 5004, 1781, 5010,
947 5013, 5016, 5024, 5031, 5042, 1783, 1786, 1790, 5045, 1788,
949 5048, 9619, 9619, 5056, 5064, 5071, 9619, 9619, 5079, 9619,
950 1833, 2079, 1845, 1800, 5083, 5086, 5094, 5101, 1795, 1804,
951 5113, 5118, 5121, 1825, 1848, 1849, 5124, 5127, 5130, 5133,
952 1850, 5136, 5139, 5142, 5145, 5148, 1851, 5151, 1858, 1876,
953 5154, 9619, 1858, 5158, 5161, 1886, 5176, 5180, 5183, 1917,
954 1928, 1935, 1941, 1935, 1944, 1942, 1945, 1951, 1949, 5191,
955 5198, 5203, 5211, 1932, 5216, 5219, 5222, 5225, 5233, 5241,
956 9619, 9619, 5236, 5255, 9619, 5259, 9619, 9619, 5267, 1941,
957 1934, 2006, 2017, 1959, 1989, 1986, 5270, 9619, 9619, 1986,
958 5279, 9619, 9619, 5288, 5291, 1999, 1995, 2001, 5299, 9619,
960 9619, 5307, 2002, 5310, 9619, 9619, 1999, 2008, 2017, 5321,
961 2052, 5326, 5329, 2056, 2048, 2138, 2152, 2059, 2071, 5340,
962 9619, 2066, 5344, 9619, 9619, 5352, 9619, 9619, 2078, 5360,
963 2071, 5363, 5367, 9619, 9619, 5375, 9619, 9619, 5383, 5386,
964 5389, 5392, 5395, 2066, 5398, 5420, 5423, 2154, 2130, 5429,
965 5432, 9619, 9619, 5442, 5445, 5451, 2108, 5454, 5461, 5464,
966 5467, 5470, 5473, 5476, 2110, 2122, 5479, 5482, 5485, 2132,
967 5488, 2128, 9619, 5491, 5494, 9619, 9619, 5502, 5509, 9619,
968 5513, 9619, 9619, 2174, 2187, 2203, 2198, 2209, 2220, 2208,
969 2230, 2241, 2268, 5521, 5524, 9619, 9619, 5532, 2227, 5535,
971 2230, 5540, 9619, 9619, 5548, 5551, 5554, 2241, 2247, 2274,
972 2300, 2280, 2304, 2277, 5557, 2294, 2297, 5561, 9619, 9619,
973 5573, 2292, 2302, 5577, 2300, 2305, 2310, 2311, 5582, 9619,
974 5585, 5597, 9619, 9619, 2310, 2306, 2346, 2369, 2349, 2369,
975 2326, 2347, 5591, 2359, 5606, 5609, 5612, 5615, 5618, 5621,
976 5636, 5639, 5642, 5645, 5648, 5661, 9619, 5667, 2389, 2414,
977 5657, 5676, 5672, 2352, 5680, 5686, 5691, 2349, 2361, 2363,
978 5696, 9619, 2353, 5699, 5702, 5710, 2386, 2382, 2404, 2394,
979 2406, 2402, 2428, 2452, 2447, 2458, 5717, 2431, 2427, 5720,
980 5723, 9619, 5729, 2436, 2462, 2528, 9619, 2526, 9619, 5732,
982 5742, 2473, 2493, 5750, 5753, 2486, 5761, 5768, 9619, 2479,
983 2487, 5771, 2488, 5779, 5790, 2502, 2498, 2505, 2563, 9619,
984 2568, 9619, 5782, 2544, 5800, 2545, 5803, 9619, 5806, 5809,
985 5817, 5824, 5827, 9619, 9619, 5836, 5839, 5847, 5850, 9619,
986 5854, 5857, 2613, 2619, 2643, 5860, 9619, 2553, 2544, 2569,
987 2570, 5865, 5869, 2833, 3116, 5879, 2597, 2618, 2653, 2663,
988 2680, 2662, 2681, 2687, 2691, 2723, 5883, 2702, 2693, 5886,
989 5891, 9619, 2686, 5897, 9619, 9619, 5905, 5911, 2688, 2698,
990 5919, 9619, 9619, 2712, 5927, 5930, 2700, 5945, 5948, 5951,
991 5959, 5966, 9619, 9619, 2732, 2742, 2745, 9619, 9619, 5977,
993 5980, 5988, 5991, 5995, 2903, 3173, 6009, 9619, 6012, 6015,
994 9619, 9619, 6023, 6031, 6041, 9619, 2797, 2798, 2922, 6044,
995 2757, 2760, 2763, 6047, 6050, 2777, 2791, 2949, 2790, 2827,
996 3004, 6061, 2842, 2828, 2841, 2851, 9619, 2869, 2855, 2853,
997 2873, 9619, 6065, 6068, 2869, 6071, 6079, 6074, 6086, 6097,
998 9619, 9619, 2875, 2886, 2903, 6105, 9619, 9619, 2907, 6113,
999 6117, 6127, 9619, 9619, 6135, 6138, 2911, 6146, 2926, 6149,
1000 9619, 9619, 6157, 6160, 6168, 6171, 2951, 2952, 2958, 2961,
1001 2962, 2972, 6179, 6182, 9619, 9619, 3025, 2997, 6190, 6193,
1002 6198, 2951, 2958, 6202, 9619, 9619, 3018, 3012, 3015, 3026,
1004 3040, 3040, 3041, 3054, 6210, 3043, 3090, 3107, 3094, 3079,
1005 3098, 3118, 3106, 6213, 6216, 6219, 6222, 6232, 6235, 3076,
1006 6243, 9619, 9619, 3089, 3085, 3077, 3098, 6251, 9619, 9619,
1007 6259, 9619, 9619, 3121, 6267, 6270, 3104, 6278, 3142, 3189,
1008 6286, 3197, 3205, 3139, 3149, 3179, 3153, 3170, 3228, 6294,
1009 3279, 6297, 6300, 6303, 6322, 6325, 6328, 3203, 3226, 3228,
1010 3216, 3224, 3234, 3252, 3241, 6331, 6334, 3271, 3276, 9619,
1011 3283, 3290, 3297, 9619, 3301, 6342, 6345, 6349, 6352, 9619,
1012 9619, 3283, 3284, 3290, 6361, 3291, 6364, 6368, 9619, 9619,
1013 6382, 3317, 3332, 3324, 3340, 3331, 3352, 3344, 3360, 3353,
1015 3363, 9619, 3369, 3382, 9619, 6385, 9619, 3394, 6388, 6391,
1016 6410, 6430, 6477, 6400, 6418, 3386, 3407, 3410, 3377, 3418,
1017 3441, 3442, 3420, 6450, 9619, 9619, 3456, 3436, 3437, 3466,
1018 3444, 3445, 6421, 6424, 9619, 3425, 3429, 3439, 6468, 6458,
1019 3437, 6471, 6497, 6489, 6507, 3498, 3469, 3501, 3479, 3517,
1020 3486, 3517, 3489, 3523, 3537, 3536, 3537, 3530, 6516, 3545,
1021 3567, 6536, 6583, 3534, 9619, 9619, 3515, 3540, 9619, 9619,
1022 3528, 9619, 3565, 3567, 9619, 3569, 3570, 6526, 9619, 3548,
1023 3555, 3541, 6556, 3608, 3650, 3562, 6564, 9619, 9619, 6572,
1024 3651, 3682, 9619, 3610, 9619, 3633, 9619, 3639, 9619, 3644,
1026 9619, 9619, 9619, 9619, 3721, 3650, 3652, 3649, 3702, 3666,
1027 6529, 3665, 3655, 3688, 3690, 9619, 9619, 9619, 9619, 6594,
1028 6603, 6606, 3760, 3689, 3763, 3690, 6612, 3768, 3705, 3769,
1029 3718, 9619, 9619, 9619, 9619, 6615, 3742, 3729, 3751, 6624,
1030 3771, 3756, 3775, 3777, 6630, 6634, 6643, 6648, 6656, 6661,
1031 3762, 3779, 3795, 3782, 3790, 3809, 6669, 6676, 3796, 3808,
1032 3829, 3819, 3828, 3840, 6687, 3844, 9619, 3835, 9619, 3840,
1033 6690, 9619, 9619, 6699, 9619, 9619, 6707, 3849, 3863, 3840,
1034 3850, 3853, 3862, 3867, 3865, 6715, 9619, 9619, 3871, 3879,
1035 3876, 3883, 3888, 3891, 3912, 9619, 3925, 3925, 3917, 3929,
1037 3938, 3932, 3933, 3940, 3940, 3946, 3953, 3953, 3954, 3960,
1038 3968, 3966, 3972, 3977, 4036, 9619, 9619, 3971, 3992, 3976,
1039 4001, 4011, 4016, 4034, 4035, 4032, 4055, 4054, 4053, 4073,
1040 4062, 4060, 4077, 4084, 4069, 4072, 4075, 4080, 4094, 4084,
1041 4117, 4106, 4098, 4128, 4112, 4105, 4152, 4134, 4124, 4154,
1042 4146, 4134, 4147, 4154, 4160, 4181, 4156, 9619, 4181, 4159,
1043 9619, 4188, 4172, 9619, 4197, 4179, 9619, 4228, 4176, 4190,
1044 4184, 4201, 9619, 4221, 9619, 4233, 9619, 4241, 9619, 4246,
1045 6725, 4248, 4269, 4251, 4269, 4236, 4237, 4248, 4250, 6728,
1046 4291, 9619, 4289, 9619, 4294, 4293, 4301, 4300, 4302, 4359,
1048 9619, 9619, 9619, 9619, 9619, 9619, 4290, 4305, 4385, 4465,
1049 4358, 4370, 4350, 4414, 4312, 4430, 4522, 4541, 4451, 4475,
1050 4384, 4396, 4464, 4515, 4567, 4572, 4549, 4581, 4439, 4576,
1051 4554, 4573, 4625, 4629, 4720, 4730, 4614, 4641, 4646, 4732,
1052 4749, 4757, 4763, 4766, 4654, 4762, 4819, 4821, 4776, 4815,
1053 4830, 4859, 4838, 4841, 4831, 4902, 4622, 4885, 5018, 5044,
1054 4758, 4836, 4892, 4923, 4543, 4857, 4915, 4920, 4903, 4944,
1055 4963, 4971, 4984, 5001, 4976, 5168, 5022, 5043, 5049, 5058,
1056 5155, 5235, 5156, 5178, 4942, 4969, 5196, 5212, 5087, 5240,
1057 6736, 6739, 9619, 9619, 6759, 6768, 6777, 6786, 6795, 6804,
1059 6813, 6822, 6831, 6840, 6849, 6858, 6867, 6876, 6885, 6894,
1060 6903, 6912, 6921, 6930, 6939, 6948, 6957, 6966, 6975, 6984,
1061 6993, 7002, 7011, 7020, 7029, 7038, 7047, 7056, 7065, 7074,
1062 7083, 7092, 7101, 7110, 7119, 7128, 7137, 7146, 7155, 7164,
1063 7173, 7182, 7191, 7200, 7207, 7214, 7221, 7228, 7235, 7242,
1064 7249, 7256, 7263, 7270, 7277, 7284, 7291, 7298, 7305, 7312,
1065 7319, 7326, 7333, 7340, 7347, 7354, 7361, 7370, 7377, 7382,
1066 7389, 7394, 7401, 7406, 7413, 7418, 7425, 7430, 7437, 7442,
1067 7449, 7454, 7461, 7466, 7473, 7478, 7485, 7490, 7497, 7502,
1068 7509, 7514, 7521, 7526, 7533, 7538, 7545, 7550, 7557, 7562,
1070 7569, 7574, 7581, 7586, 7593, 7598, 7605, 7610, 7617, 7622,
1071 7629, 7634, 7641, 7646, 7655, 7661, 7668, 7676, 7683, 7691,
1072 7698, 7706, 7713, 7721, 7728, 7736, 7743, 7751, 7758, 7766,
1073 7773, 7781, 7788, 7796, 7803, 7811, 7818, 7826, 7833, 7841,
1074 7848, 7856, 7863, 7871, 7878, 7886, 7894, 7902, 7910, 7918,
1075 7925, 7933, 7941, 7949, 7956, 7964, 7971, 7979, 7987, 7994,
1076 8002, 8011, 8017, 8024, 8032, 8040, 8048, 8056, 8064, 8071,
1077 8079, 8086, 8094, 8101, 8109, 8116, 8124, 8131, 8139, 8147,
1078 8155, 8163, 8171, 8178, 8186, 8193, 8201, 8208, 8216, 8223,
1079 8231, 8238, 8246, 8253, 8261, 8268, 8276, 8283, 8291, 8298,
1081 8306, 8313, 8321, 8328, 8336, 8344, 8351, 8359, 8368, 8377,
1082 8384, 8392, 8400, 8407, 8415, 8422, 8430, 8437, 8445, 8452,
1083 8459, 8467, 8474, 8482, 8490, 8497, 8505, 8512, 8520, 8527,
1084 8535, 8542, 8550, 8557, 8565, 8572, 8580, 8587, 8595, 8602,
1085 8610, 8617, 8625, 8632, 8640, 8647, 8655, 8663, 8671, 8679,
1086 8687, 8695, 8704, 8713, 8720, 8728, 8736, 8743, 8751, 8758,
1087 8766, 8773, 8781, 8788, 8795, 8803, 8811, 8819, 8827, 8835,
1088 8843, 8850, 8858, 8865, 8873, 8880, 8888, 8895, 8903, 8910,
1089 8918, 8925, 8933, 8941, 8949, 8956, 8964, 8972, 8980, 8987,
1090 8995, 9003, 9011, 9019, 9028, 9037, 9045, 9053, 9061, 9068,
1092 9076, 9083, 9091, 9099, 9107, 9115, 9123, 9131, 9139, 9147,
1093 9155, 9162, 9169, 9177, 9184, 9191, 9199, 9206, 9213, 9221,
1094 9228, 9236, 9243, 9251, 9259, 9266, 9274, 9282, 9290, 9299,
1095 9308, 9316, 9324, 9331, 9338, 9346, 9354, 9362, 9370, 9378,
1096 9385, 9392, 9400, 9407, 9414, 9422, 9429, 9436, 9443, 9451,
1097 9458, 9466, 9474, 9482, 9490, 9498, 9506, 9515, 9524, 9532,
1098 9540, 9547, 9555, 9564, 9573, 9582, 9591, 9600, 9609
1101 static yyconst flex_int16_t yy_def[3070] =
1103 2695, 2695, 2696, 2696, 2696, 2696, 2697, 2697, 2698, 2698,
1104 2699, 2699, 2700, 2700, 2700, 2700, 2701, 2701, 2695, 2695,
1105 2702, 2702, 2703, 2703, 2703, 2703, 2695, 2695, 2703, 2703,
1106 2703, 2703, 2695, 2695, 2703, 2703, 2695, 2695, 2703, 2703,
1107 2703, 2703, 2704, 2704, 2705, 2705, 2706, 2706, 2700, 2700,
1108 2707, 2707, 2708, 2708, 2695, 2695, 2708, 2708, 2708, 2708,
1109 2709, 2709, 2710, 2710, 2711, 2711, 2712, 2712, 2712, 2712,
1110 2695, 2695, 2712, 2712, 2712, 2712, 2695, 2695, 2712, 2712,
1111 2695, 2695, 2712, 2712, 2712, 2712, 2695, 2695, 2712, 2712,
1112 2695, 2695, 2712, 2712, 2712, 2712, 2713, 2713, 2714, 2714,
1114 2695, 2695, 2714, 2714, 2714, 2714, 2715, 2715, 2716, 2716,
1115 2695, 2695, 2716, 2716, 2716, 2716, 2717, 2717, 2718, 2718,
1116 2719, 2719, 2720, 2720, 2721, 2721, 2722, 2722, 2695, 2695,
1117 2722, 2722, 2722, 2722, 2694, 135, 2723, 2723, 2694, 139,
1118 2724, 2724, 2725, 2725, 2726, 2726, 2727, 2727, 2728, 2728,
1119 2695, 2695, 2728, 2728, 2728, 2728, 2729, 2729, 2730, 2730,
1120 2695, 2695, 2730, 2730, 2730, 2730, 2731, 2731, 2732, 2732,
1121 2695, 2695, 2732, 2732, 2732, 2732, 2733, 2733, 2734, 2734,
1122 2735, 2735, 2736, 2736, 2695, 2695, 2736, 2736, 2736, 2736,
1123 2737, 2737, 2738, 2738, 2695, 2695, 2738, 2738, 2738, 2738,
1125 2739, 2739, 2740, 2740, 2741, 2741, 2742, 2742, 2695, 2695,
1126 2742, 2742, 2742, 2742, 2743, 2743, 2744, 2744, 2695, 2695,
1127 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1128 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1129 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1130 2694, 2745, 2694, 2694, 2745, 2694, 2694, 2694, 258, 258,
1131 258, 258, 261, 261, 2694, 2694, 2694, 2746, 2694, 2694,
1132 2746, 2694, 2694, 2694, 2694, 2694, 2694, 2747, 2694, 2694,
1133 2747, 2747, 2747, 2694, 2694, 2694, 2694, 2694, 2748, 2694,
1134 2694, 2748, 2748, 2748, 2748, 2748, 2694, 2694, 261, 299,
1136 299, 2694, 2694, 2694, 2749, 2694, 2694, 2749, 2749, 2749,
1137 2694, 2694, 2694, 2694, 2694, 2694, 2750, 2694, 2694, 2750,
1138 2750, 2694, 2694, 262, 299, 262, 324, 325, 325, 325,
1139 325, 331, 332, 331, 331, 2694, 2694, 2694, 2751, 2694,
1140 2694, 2751, 2751, 2751, 2694, 2694, 299, 299, 2694, 2694,
1141 2694, 2752, 2694, 2694, 2752, 2752, 2694, 2694, 299, 299,
1142 2694, 2694, 2694, 2753, 2694, 2694, 2753, 2753, 2694, 2694,
1143 2694, 2694, 2694, 2694, 2754, 2694, 2694, 2754, 2754, 2694,
1144 2694, 2694, 2694, 2694, 2694, 2755, 2694, 2694, 2755, 2755,
1145 2755, 2755, 2755, 2694, 2694, 299, 299, 299, 2694, 2694,
1147 2694, 2756, 2694, 2694, 2756, 2756, 2756, 2756, 2756, 2756,
1148 2756, 2756, 2694, 2694, 2694, 2694, 2694, 2694, 2757, 2694,
1149 2694, 2757, 2757, 2757, 2757, 2757, 2757, 2757, 2694, 2694,
1150 2694, 2694, 2694, 2694, 2758, 2694, 2694, 2758, 2758, 2694,
1151 2694, 2694, 2694, 2694, 2694, 2759, 2694, 2694, 2759, 2759,
1152 2759, 2759, 2694, 2694, 299, 299, 2694, 2694, 2694, 2760,
1153 2694, 2694, 2760, 2760, 2694, 2694, 299, 467, 467, 2694,
1154 2694, 2694, 2761, 2694, 2694, 2761, 2761, 2761, 2694, 2694,
1155 467, 467, 2694, 2694, 2694, 2762, 2694, 2694, 2762, 2762,
1156 2694, 2694, 2694, 2694, 2694, 2694, 2763, 2694, 2694, 2763,
1158 2763, 2763, 2694, 2694, 467, 467, 2694, 2694, 2694, 2764,
1159 2694, 2694, 2764, 2764, 2764, 2764, 2694, 2694, 299, 299,
1160 299, 2694, 2694, 2694, 2765, 2694, 2694, 2765, 2694, 2694,
1161 2694, 2694, 2694, 2694, 2766, 2694, 2694, 2766, 2694, 2694,
1162 299, 299, 2694, 2694, 2694, 2767, 2694, 2694, 2767, 2767,
1163 2694, 2694, 2694, 2694, 2768, 2694, 2694, 2694, 2694, 2694,
1164 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1165 2769, 2769, 2770, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1166 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1167 2694, 2694, 2694, 2694, 2694, 2694, 2771, 2771, 2772, 2694,
1169 2773, 2773, 2773, 2773, 2694, 2774, 2694, 2694, 2775, 2775,
1170 2775, 2775, 2775, 2775, 2775, 2775, 2775, 2776, 2694, 2694,
1171 2777, 2777, 2777, 2777, 2778, 2694, 2779, 2779, 2779, 2780,
1172 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1173 2781, 2781, 2781, 2781, 2782, 2694, 2783, 2783, 2783, 2784,
1174 2694, 2785, 2785, 2785, 2786, 2694, 2787, 2787, 2787, 2788,
1175 2694, 2789, 2789, 2789, 2789, 2789, 2789, 2790, 2694, 2694,
1176 2791, 2791, 2791, 2791, 2791, 2791, 2791, 2791, 2791, 2791,
1177 2791, 2791, 2791, 2791, 2792, 2694, 2793, 2793, 2793, 2793,
1178 2793, 2793, 2793, 2793, 2794, 2694, 2795, 2795, 2795, 2796,
1180 2694, 2797, 2797, 2797, 2797, 2797, 2797, 2798, 2694, 2799,
1181 2799, 2799, 2799, 2800, 2694, 2694, 2801, 2801, 2801, 2801,
1182 2801, 2802, 2694, 2803, 2803, 2803, 2804, 2694, 2805, 2805,
1183 2805, 2805, 2806, 2694, 2807, 2807, 2807, 2807, 2807, 2808,
1184 2694, 2694, 2809, 2809, 2810, 2694, 2811, 2811, 2812, 2694,
1185 2813, 2813, 2813, 2814, 2815, 2694, 2815, 2694, 2694, 2694,
1186 2816, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2817, 2818,
1187 2818, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1188 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1189 2694, 2694, 2694, 2694, 2694, 2694, 2819, 2820, 2820, 2821,
1191 2694, 2694, 2821, 2694, 2822, 2822, 2694, 2823, 2694, 2694,
1192 2823, 2823, 2823, 2823, 2823, 2823, 2824, 2824, 2694, 2825,
1193 2825, 2825, 2826, 2826, 2694, 2694, 2827, 2828, 2828, 2694,
1194 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2829, 2694,
1195 2694, 2829, 2830, 2830, 2694, 2694, 2831, 2832, 2832, 2694,
1196 2694, 2833, 2834, 2834, 2835, 2835, 2836, 2836, 2837, 2837,
1197 2837, 2694, 2694, 2837, 2837, 2838, 2838, 2694, 2694, 2839,
1198 2839, 2694, 2694, 2839, 2694, 2694, 2839, 2839, 2839, 2839,
1199 2839, 2839, 2839, 2839, 2840, 2840, 2841, 2841, 2841, 2694,
1200 2694, 2841, 2841, 2841, 2842, 2842, 2843, 2694, 2694, 2844,
1202 2844, 2845, 2694, 2694, 2845, 2845, 2845, 2846, 2846, 2847,
1203 2847, 2847, 2848, 2848, 2694, 2849, 2849, 2849, 2849, 2850,
1204 2850, 2851, 2694, 2694, 2852, 2852, 2853, 2853, 2853, 2854,
1205 2854, 2855, 2855, 2855, 2855, 2856, 2856, 2694, 2857, 2858,
1206 2858, 2694, 2694, 2859, 2859, 2694, 2694, 2860, 2861, 2861,
1207 2862, 2694, 2694, 2862, 2694, 2694, 2863, 2694, 2694, 2694,
1208 2694, 2694, 2694, 2864, 2694, 2865, 2694, 2865, 2694, 2694,
1209 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1210 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1211 2694, 2694, 2694, 2694, 2866, 2694, 2867, 2694, 2867, 2868,
1213 2694, 2694, 2694, 2868, 2694, 2694, 2869, 2694, 2869, 2870,
1214 2694, 2694, 2694, 2694, 2694, 2870, 2694, 2694, 2870, 2870,
1215 2870, 2694, 2871, 2694, 2871, 2694, 2872, 2872, 2872, 2694,
1216 2873, 2694, 2873, 2694, 2694, 2694, 2874, 2694, 2875, 2694,
1217 2875, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2876,
1218 2694, 2694, 2694, 2876, 2694, 2877, 2694, 2877, 2694, 2694,
1219 2694, 2878, 2694, 2879, 2694, 2879, 2694, 2694, 2694, 2880,
1220 2694, 2881, 2694, 2881, 2882, 2882, 2694, 2883, 2694, 2883,
1221 2884, 2884, 2884, 2694, 2694, 2694, 2884, 2884, 2694, 2885,
1222 2694, 2885, 2694, 2694, 2886, 2886, 2886, 2886, 2694, 2694,
1224 2694, 2886, 2694, 2694, 2694, 2694, 2694, 2886, 2886, 2886,
1225 2886, 2886, 2886, 2886, 2694, 2887, 2694, 2887, 2888, 2888,
1226 2888, 2888, 2694, 2694, 2694, 2694, 2694, 2888, 2888, 2694,
1227 2889, 2694, 2889, 2890, 2694, 2694, 2694, 2694, 2891, 2694,
1228 2891, 2892, 2694, 2694, 2694, 2892, 2892, 2892, 2694, 2893,
1229 2694, 2893, 2694, 2694, 2694, 2694, 2894, 2694, 2895, 2694,
1230 2895, 2694, 2694, 2694, 2896, 2896, 2694, 2694, 2896, 2694,
1231 2897, 2694, 2897, 2898, 2694, 2694, 2694, 2694, 2899, 2694,
1232 2899, 2694, 2694, 2900, 2900, 2694, 2694, 2694, 2901, 2694,
1233 2901, 2902, 2902, 2902, 2902, 2694, 2903, 2694, 2903, 2694,
1235 2904, 2694, 2905, 2694, 2905, 2694, 2694, 2694, 2694, 2906,
1236 2694, 2906, 2694, 2694, 2694, 2907, 2694, 2908, 2694, 2908,
1237 2909, 2910, 2694, 2694, 2694, 2694, 2694, 2911, 2912, 2694,
1238 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1239 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1240 2694, 2694, 2694, 2694, 2694, 2694, 2913, 2694, 2694, 2914,
1241 2694, 2915, 2916, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1242 2694, 2916, 2694, 2694, 2916, 2917, 2694, 2918, 2694, 2694,
1243 2918, 2919, 2920, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1244 2694, 2694, 2694, 2921, 2921, 2922, 2923, 2924, 2694, 2694,
1246 2925, 2694, 2694, 2926, 2927, 2928, 2928, 2694, 2694, 2928,
1247 2928, 2929, 2694, 2694, 2930, 2930, 2930, 2930, 2694, 2694,
1248 2694, 2694, 2694, 2930, 2930, 2930, 2930, 2930, 2930, 2930,
1249 2931, 2932, 2932, 2932, 2932, 2694, 2694, 2694, 2932, 2932,
1250 2933, 2934, 2935, 2936, 2936, 2936, 2936, 2937, 2694, 2694,
1251 2694, 2694, 2694, 2694, 2938, 2939, 2694, 2694, 2694, 2694,
1252 2940, 2940, 2694, 2694, 2694, 2940, 2941, 2942, 2943, 2694,
1253 2694, 2694, 2944, 2944, 2694, 2694, 2694, 2945, 2946, 2694,
1254 2694, 2946, 2946, 2947, 2694, 2948, 2949, 2950, 2951, 2952,
1255 2953, 2954, 2954, 2694, 2954, 2694, 2694, 2694, 2955, 2956,
1257 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1258 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1259 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2957,
1260 2694, 2694, 2694, 2958, 2694, 2959, 2960, 2694, 2694, 2694,
1261 2960, 2694, 2694, 2694, 2960, 2961, 2694, 2962, 2694, 2694,
1262 2694, 2694, 2694, 2963, 2964, 2694, 2694, 2694, 2694, 2694,
1263 2694, 2694, 2694, 2965, 2694, 2694, 2966, 2967, 2968, 2694,
1264 2694, 2694, 2969, 2694, 2694, 2694, 2970, 2971, 2972, 2972,
1265 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2972, 2973, 2694,
1266 2694, 2974, 2694, 2694, 2974, 2974, 2694, 2694, 2694, 2694,
1268 2694, 2974, 2974, 2974, 2974, 2974, 2974, 2975, 2976, 2694,
1269 2694, 2976, 2976, 2694, 2694, 2976, 2977, 2978, 2979, 2980,
1270 2980, 2980, 2694, 2694, 2980, 2981, 2982, 2983, 2694, 2984,
1271 2984, 2984, 2985, 2986, 2987, 2988, 2988, 2989, 2990, 2694,
1272 2694, 2694, 2990, 2990, 2991, 2694, 2694, 2694, 2992, 2993,
1273 2694, 2694, 2994, 2995, 2996, 2996, 2694, 2694, 2997, 2998,
1274 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1275 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1276 2694, 2694, 2694, 2694, 2999, 3000, 2694, 3001, 3002, 3002,
1277 3002, 3003, 3004, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1279 2694, 2694, 2694, 2694, 3005, 3006, 2694, 2694, 2694, 2694,
1280 2694, 3007, 2694, 2694, 2694, 3008, 2694, 2694, 3009, 3010,
1281 2694, 2694, 3011, 3012, 3012, 2694, 2694, 2694, 2694, 2694,
1282 2694, 3012, 2694, 2694, 2694, 2694, 3013, 2694, 2694, 2694,
1283 2694, 2694, 3013, 2694, 2694, 2694, 2694, 2694, 3013, 3013,
1284 3013, 3013, 2694, 2694, 3014, 3015, 2694, 2694, 2694, 2694,
1285 2694, 3015, 2694, 2694, 2694, 3015, 2694, 2694, 3016, 3017,
1286 3018, 3018, 3018, 2694, 2694, 2694, 3018, 2694, 2694, 3019,
1287 3020, 2694, 2694, 2694, 2694, 2694, 3021, 3022, 3023, 3024,
1288 2694, 2694, 2694, 2694, 3025, 3026, 3026, 3026, 3027, 2694,
1290 2694, 2694, 2694, 3028, 3029, 2694, 2694, 2694, 2694, 2694,
1291 3030, 3031, 3031, 2694, 2694, 2694, 3032, 2694, 2694, 2694,
1292 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1293 2694, 2694, 2694, 2694, 2694, 2694, 2694, 3033, 3034, 2694,
1294 2694, 2694, 3035, 2694, 2694, 3035, 3036, 2694, 2694, 2694,
1295 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 3037,
1296 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 3038, 2694,
1297 2694, 2694, 3039, 2694, 2694, 2694, 2694, 2694, 3040, 3041,
1298 3041, 2694, 2694, 3041, 2694, 3042, 2694, 2694, 2694, 3042,
1299 2694, 2694, 2694, 2694, 2694, 3042, 3042, 3042, 2694, 2694,
1301 2694, 3043, 3044, 2694, 2694, 2694, 3044, 3044, 3045, 3046,
1302 3047, 2694, 2694, 3047, 3047, 2694, 2694, 3047, 3048, 2694,
1303 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 3049, 3050,
1304 3051, 3052, 2694, 2694, 2694, 2694, 2694, 2694, 3053, 3054,
1305 3054, 3054, 3055, 2694, 3056, 3057, 3058, 3059, 3059, 2694,
1306 2694, 2694, 2694, 3060, 2694, 2694, 2694, 2694, 2694, 2694,
1307 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1308 3061, 3062, 2694, 3063, 2694, 2694, 2694, 3063, 2694, 2694,
1309 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1310 2694, 2694, 2694, 3037, 2694, 2694, 2694, 2694, 2694, 2694,
1312 2694, 2694, 2694, 2694, 3038, 3039, 3040, 3041, 3041, 2694,
1313 2694, 2694, 2694, 3041, 2694, 3042, 3042, 2694, 2694, 2694,
1314 3042, 3042, 3042, 3043, 3044, 3044, 3044, 3045, 2694, 2694,
1315 3047, 2694, 2694, 2694, 3047, 3047, 2694, 2694, 2694, 2694,
1316 3047, 3048, 2694, 3049, 3050, 3051, 3052, 3053, 2694, 2694,
1317 3054, 3054, 3055, 2694, 3056, 2694, 2694, 3058, 3059, 3059,
1318 2694, 3060, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1319 2694, 2694, 3062, 2694, 2694, 3063, 2694, 2694, 2694, 2694,
1320 2694, 2694, 2694, 2694, 2694, 2694, 3037, 2694, 2694, 3038,
1321 2694, 2694, 3040, 3041, 3041, 2694, 2694, 2694, 2694, 3041,
1323 2694, 3042, 3042, 2694, 2694, 3042, 3042, 2694, 2694, 3044,
1324 3044, 3044, 3045, 2694, 2694, 3047, 3047, 3047, 2694, 2694,
1325 2694, 2694, 3047, 3048, 2694, 3049, 2694, 2694, 2694, 2694,
1326 3052, 3053, 2694, 2694, 2694, 2694, 2694, 3054, 2694, 2694,
1327 2694, 3056, 3058, 3059, 3059, 2694, 2694, 2694, 2694, 2694,
1328 2694, 3062, 2694, 2694, 2694, 3063, 2694, 2694, 2694, 2694,
1329 2694, 2694, 2694, 2694, 2694, 2694, 3037, 2694, 2694, 3038,
1330 2694, 2694, 3041, 3041, 2694, 2694, 2694, 2694, 3042, 3042,
1331 2694, 2694, 2694, 3042, 2694, 2694, 3044, 3044, 2694, 2694,
1332 3045, 2694, 2694, 2694, 3047, 3047, 3047, 2694, 2694, 2694,
1334 2694, 3048, 3049, 2694, 2694, 2694, 2694, 2694, 3053, 2694,
1335 2694, 2694, 2694, 2694, 2694, 2694, 3058, 3059, 3059, 2694,
1336 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1337 2694, 3063, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1338 2694, 2694, 3037, 2694, 2694, 3038, 3041, 2694, 2694, 2694,
1339 2694, 2694, 3042, 3042, 3042, 2694, 2694, 2694, 3044, 2694,
1340 2694, 2694, 2694, 2694, 2694, 2694, 3047, 3047, 3047, 2694,
1341 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1342 2694, 2694, 3053, 2694, 2694, 2694, 3058, 3059, 3059, 2694,
1343 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1345 2694, 2694, 2694, 2694, 3063, 2694, 2694, 2694, 2694, 2694,
1346 2694, 2694, 2694, 3037, 2694, 2694, 3038, 2694, 2694, 3041,
1347 2694, 2694, 2694, 3042, 3042, 3042, 3044, 2694, 2694, 2694,
1348 2694, 2694, 2694, 3047, 2694, 2694, 3047, 2694, 2694, 2694,
1349 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 3053,
1350 3058, 3059, 3059, 3059, 2694, 2694, 2694, 2694, 2694, 2694,
1351 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1352 2694, 2694, 2694, 2694, 2694, 3037, 2694, 3038, 2694, 2694,
1353 2694, 3041, 3042, 3042, 3042, 3044, 3047, 2694, 2694, 2694,
1354 3047, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1356 2694, 2694, 2694, 2694, 2694, 2694, 2694, 3058, 3059, 3059,
1357 3059, 3064, 3065, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1358 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1359 2694, 2694, 3037, 2694, 2694, 3041, 3042, 3042, 2694, 2694,
1360 3044, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1361 2694, 2694, 2694, 2694, 2694, 2694, 2694, 3058, 3059, 3066,
1362 3067, 3064, 3065, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1363 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 3041,
1364 3042, 3042, 2694, 2694, 2694, 3044, 2694, 2694, 2694, 2694,
1365 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1367 2694, 2694, 2694, 2694, 3058, 3066, 3059, 3068, 3067, 3069,
1368 3059, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 3041,
1369 3042, 3042, 2694, 2694, 2694, 2694, 3044, 2694, 2694, 2694,
1370 2694, 2694, 2694, 2694, 2694, 3058, 3068, 2694, 3069, 3059,
1371 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1372 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1373 2694, 2694, 2694, 2694, 3058, 2694, 2694, 2694, 2694, 2694,
1374 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1375 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1376 2694, 2694, 2694, 2694, 3058, 2694, 2694, 2694, 2694, 2694,
1378 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1379 2694, 2694, 2694, 2694, 3058, 2694, 2694, 2694, 2694, 2694,
1380 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1381 2694, 2694, 2694, 3058, 2694, 2694, 2694, 2694, 2694, 2694,
1382 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1383 3058, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1384 2694, 2694, 2694, 2694, 2694, 2694, 2694, 3058, 2694, 2694,
1385 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1386 3058, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 3058,
1387 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 3058, 3058,
1389 2694, 2694, 2694, 2694, 2694, 2694, 3058, 3058, 3058, 3058,
1390 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058,
1391 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058,
1392 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058,
1393 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058,
1394 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058,
1395 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058,
1396 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058,
1397 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058, 3058,
1398 3058, 3058, 2694, 0, 2694, 2694, 2694, 2694, 2694, 2694,
1400 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1401 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1402 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1403 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1404 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1405 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1406 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1407 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1408 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1409 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1411 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1412 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1413 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1414 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1415 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1416 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1417 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1418 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1419 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1420 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1422 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1423 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1424 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1425 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1426 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1427 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1428 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1429 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1430 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1431 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1433 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1434 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1435 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1436 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1437 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1438 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
1439 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694
1442 static yyconst flex_int16_t yy_nxt[9692] =
1444 2694, 224, 225, 224, 224, 225, 224, 224, 225, 224,
1445 224, 225, 224, 229, 225, 229, 235, 226, 232, 235,
1446 226, 232, 2694, 227, 2694, 233, 227, 2694, 233, 230,
1447 229, 225, 229, 555, 236, 238, 239, 236, 238, 239,
1448 240, 241, 618, 240, 241, 555, 230, 245, 246, 556,
1449 242, 238, 239, 242, 243, 558, 240, 238, 239, 590,
1450 243, 557, 240, 245, 246, 591, 242, 225, 225, 225,
1451 630, 557, 242, 225, 225, 225, 257, 225, 257, 257,
1452 225, 257, 782, 248, 257, 225, 257, 590, 783, 248,
1453 578, 247, 258, 619, 784, 258, 554, 554, 554, 587,
1455 259, 554, 554, 554, 554, 554, 554, 247, 249, 250,
1456 225, 250, 249, 249, 249, 249, 249, 249, 249, 251,
1457 249, 249, 249, 635, 249, 253, 249, 254, 249, 257,
1458 225, 257, 225, 225, 225, 225, 225, 225, 586, 257,
1459 225, 257, 257, 225, 257, 259, 2694, 1591, 260, 558,
1460 558, 260, 587, 249, 249, 258, 588, 558, 258, 257,
1461 225, 257, 554, 554, 554, 557, 557, 554, 554, 554,
1462 554, 554, 554, 557, 1593, 261, 255, 249, 250, 225,
1463 250, 249, 249, 249, 249, 249, 249, 249, 251, 249,
1464 249, 249, 645, 249, 253, 249, 254, 249, 257, 225,
1466 257, 225, 225, 225, 225, 225, 225, 569, 257, 225,
1467 257, 257, 225, 257, 261, 2694, 587, 262, 592, 1606,
1468 262, 650, 249, 249, 259, 588, 588, 259, 225, 225,
1469 225, 225, 225, 225, 257, 225, 257, 257, 225, 257,
1470 257, 225, 257, 591, 263, 255, 678, 263, 558, 679,
1471 261, 2694, 558, 261, 589, 593, 264, 257, 225, 257,
1472 590, 554, 554, 554, 557, 2694, 591, 594, 557, 587,
1473 592, 592, 591, 264, 265, 266, 225, 266, 265, 265,
1474 265, 265, 265, 265, 265, 267, 265, 265, 265, 576,
1475 265, 269, 265, 270, 265, 273, 225, 273, 273, 225,
1477 273, 298, 225, 298, 586, 612, 1607, 238, 239, 613,
1478 558, 274, 240, 614, 274, 1608, 595, 299, 587, 265,
1479 265, 668, 284, 554, 554, 554, 557, 271, 265, 266,
1480 225, 266, 265, 265, 265, 265, 265, 265, 265, 267,
1481 265, 265, 265, 634, 265, 269, 265, 270, 265, 1611,
1482 636, 285, 673, 238, 239, 298, 225, 298, 240, 225,
1483 225, 225, 225, 225, 225, 554, 554, 554, 284, 669,
1484 712, 299, 674, 265, 265, 300, 762, 713, 300, 763,
1485 1612, 271, 275, 276, 225, 276, 275, 275, 275, 275,
1486 275, 275, 275, 277, 275, 275, 275, 285, 275, 279,
1488 275, 280, 275, 298, 225, 298, 298, 225, 298, 298,
1489 225, 298, 616, 298, 225, 298, 312, 225, 312, 299,
1490 558, 558, 299, 558, 605, 301, 617, 275, 275, 301,
1491 599, 606, 313, 1624, 1625, 281, 557, 557, 282, 557,
1492 557, 554, 554, 554, 283, 275, 276, 225, 276, 275,
1493 275, 275, 275, 275, 275, 275, 277, 275, 275, 275,
1494 740, 275, 279, 275, 280, 275, 312, 225, 312, 323,
1495 225, 323, 323, 225, 323, 2694, 323, 225, 323, 323,
1496 225, 323, 313, 558, 558, 324, 558, 558, 324, 558,
1497 275, 275, 325, 625, 655, 325, 1632, 741, 281, 557,
1499 557, 282, 557, 557, 563, 557, 1636, 283, 286, 287,
1500 225, 287, 286, 286, 286, 286, 286, 286, 286, 288,
1501 286, 286, 286, 669, 286, 290, 286, 291, 286, 225,
1502 225, 225, 225, 225, 225, 323, 225, 323, 668, 323,
1503 225, 323, 323, 225, 323, 326, 564, 558, 326, 558,
1504 558, 327, 565, 286, 286, 327, 566, 660, 328, 1637,
1505 706, 567, 292, 557, 293, 557, 557, 294, 554, 554,
1506 554, 707, 295, 296, 286, 287, 225, 287, 286, 286,
1507 286, 286, 286, 286, 286, 288, 286, 286, 286, 591,
1508 286, 290, 286, 291, 286, 323, 225, 323, 225, 225,
1510 225, 225, 225, 225, 708, 323, 225, 323, 323, 225,
1511 323, 328, 952, 1120, 329, 558, 680, 329, 1121, 286,
1512 286, 325, 685, 1643, 325, 554, 554, 554, 292, 681,
1513 293, 557, 722, 294, 554, 554, 554, 1554, 295, 296,
1514 302, 303, 225, 303, 302, 302, 302, 302, 302, 302,
1515 302, 304, 302, 302, 302, 591, 302, 306, 302, 307,
1516 302, 225, 225, 225, 225, 225, 225, 323, 225, 323,
1517 682, 323, 225, 323, 323, 225, 323, 330, 1649, 580,
1518 330, 683, 684, 328, 720, 302, 302, 328, 558, 558,
1519 331, 721, 308, 554, 554, 554, 695, 309, 554, 554,
1521 554, 554, 554, 554, 557, 557, 310, 302, 303, 225,
1522 303, 302, 302, 302, 302, 302, 302, 302, 304, 302,
1523 302, 302, 756, 302, 306, 302, 307, 302, 323, 225,
1524 323, 225, 225, 225, 225, 225, 225, 757, 323, 225,
1525 323, 323, 225, 323, 331, 775, 558, 332, 776, 1650,
1526 332, 1651, 302, 302, 333, 558, 558, 333, 1652, 308,
1527 1656, 588, 557, 700, 309, 554, 554, 554, 554, 554,
1528 554, 557, 557, 310, 314, 315, 225, 315, 314, 314,
1529 314, 314, 314, 314, 314, 316, 314, 314, 314, 576,
1530 314, 318, 314, 319, 314, 225, 225, 225, 225, 225,
1532 225, 323, 225, 323, 638, 323, 225, 323, 323, 225,
1533 323, 334, 558, 558, 334, 775, 1662, 331, 789, 314,
1534 314, 331, 733, 1666, 335, 554, 554, 554, 557, 557,
1535 320, 554, 554, 554, 554, 554, 554, 740, 321, 314,
1536 315, 225, 315, 314, 314, 314, 314, 314, 314, 314,
1537 316, 314, 314, 314, 1669, 314, 318, 314, 319, 314,
1538 323, 225, 323, 346, 225, 346, 346, 225, 346, 580,
1539 225, 225, 225, 225, 225, 225, 335, 558, 558, 347,
1540 1671, 1672, 347, 749, 314, 314, 300, 1673, 591, 300,
1541 554, 554, 554, 557, 557, 320, 554, 554, 554, 554,
1543 554, 554, 1677, 321, 336, 337, 225, 337, 336, 336,
1544 336, 336, 336, 336, 336, 338, 336, 336, 336, 1680,
1545 336, 340, 336, 341, 336, 346, 225, 346, 346, 225,
1546 346, 346, 225, 346, 591, 346, 225, 346, 554, 554,
1547 554, 347, 558, 558, 347, 1682, 558, 348, 780, 336,
1548 336, 348, 781, 727, 342, 554, 554, 554, 557, 557,
1549 343, 714, 557, 344, 336, 337, 225, 337, 336, 336,
1550 336, 336, 336, 336, 336, 338, 336, 336, 336, 1689,
1551 336, 340, 336, 341, 336, 358, 225, 358, 358, 225,
1552 358, 225, 225, 225, 1696, 225, 225, 225, 554, 554,
1554 554, 359, 2694, 558, 359, 558, 558, 300, 715, 336,
1555 336, 300, 591, 745, 342, 554, 554, 554, 756, 557,
1556 343, 557, 557, 344, 349, 350, 225, 350, 349, 349,
1557 349, 349, 349, 349, 349, 351, 349, 349, 349, 741,
1558 349, 353, 349, 354, 349, 358, 225, 358, 358, 225,
1559 358, 358, 225, 358, 804, 358, 225, 358, 370, 225,
1560 370, 359, 1697, 1698, 359, 785, 790, 360, 868, 349,
1561 349, 360, 869, 1700, 371, 554, 554, 554, 786, 786,
1562 355, 554, 554, 554, 554, 554, 554, 554, 554, 554,
1563 356, 349, 350, 225, 350, 349, 349, 349, 349, 349,
1565 349, 349, 351, 349, 349, 349, 1714, 349, 353, 349,
1566 354, 349, 370, 225, 370, 381, 225, 381, 381, 225,
1567 381, 1718, 395, 225, 395, 395, 225, 395, 371, 792,
1568 952, 382, 776, 794, 382, 1719, 349, 349, 396, 783,
1569 1394, 396, 554, 554, 554, 795, 954, 355, 554, 554,
1570 554, 554, 554, 554, 554, 554, 554, 356, 361, 362,
1571 225, 362, 361, 361, 361, 361, 361, 361, 361, 363,
1572 361, 361, 361, 1713, 361, 365, 361, 366, 361, 225,
1573 225, 225, 225, 225, 225, 395, 225, 395, 1720, 395,
1574 225, 395, 395, 225, 395, 397, 792, 1721, 397, 789,
1576 794, 396, 1723, 361, 361, 396, 783, 1724, 398, 554,
1577 554, 554, 784, 1725, 367, 554, 554, 554, 368, 361,
1578 362, 225, 362, 361, 361, 361, 361, 361, 361, 361,
1579 363, 361, 361, 361, 1726, 361, 365, 361, 366, 361,
1580 395, 225, 395, 414, 225, 414, 414, 225, 414, 1727,
1581 430, 225, 430, 430, 225, 430, 398, 860, 1730, 415,
1582 861, 782, 415, 1731, 361, 361, 431, 783, 1734, 431,
1583 554, 554, 554, 795, 1735, 367, 554, 554, 554, 368,
1584 372, 373, 225, 373, 372, 372, 372, 372, 372, 372,
1585 372, 374, 372, 372, 372, 1736, 372, 376, 372, 377,
1587 372, 441, 225, 441, 441, 225, 441, 454, 225, 454,
1588 1737, 454, 225, 454, 225, 225, 225, 442, 952, 1739,
1589 442, 1394, 1221, 455, 952, 372, 372, 455, 952, 1740,
1590 300, 554, 554, 554, 554, 554, 554, 554, 554, 554,
1591 378, 554, 554, 554, 1391, 1711, 379, 372, 373, 225,
1592 373, 372, 372, 372, 372, 372, 372, 372, 374, 372,
1593 372, 372, 1712, 372, 376, 372, 377, 372, 225, 225,
1594 225, 454, 225, 454, 454, 225, 454, 1242, 454, 225,
1595 454, 454, 225, 454, 300, 1743, 1746, 455, 1750, 1243,
1596 455, 1751, 372, 372, 456, 1754, 1755, 456, 554, 554,
1598 554, 554, 554, 554, 554, 554, 554, 378, 554, 554,
1599 554, 1756, 1759, 379, 383, 384, 225, 384, 383, 383,
1600 383, 383, 383, 383, 383, 385, 383, 383, 383, 1763,
1601 383, 387, 383, 388, 383, 466, 225, 466, 466, 225,
1602 466, 225, 225, 225, 1752, 225, 225, 225, 1764, 558,
1603 1757, 467, 1753, 1766, 467, 1780, 754, 468, 1758, 383,
1604 383, 468, 389, 794, 390, 557, 554, 554, 554, 783,
1605 391, 760, 760, 760, 1781, 819, 392, 1782, 1783, 393,
1606 383, 384, 225, 384, 383, 383, 383, 383, 383, 383,
1607 383, 385, 383, 383, 383, 1784, 383, 387, 383, 388,
1609 383, 466, 225, 466, 466, 225, 466, 466, 225, 466,
1610 1785, 466, 225, 466, 801, 801, 801, 467, 1786, 790,
1611 467, 790, 790, 469, 1096, 383, 383, 469, 389, 761,
1612 390, 802, 834, 1097, 837, 838, 391, 760, 760, 760,
1613 1098, 956, 392, 1790, 1796, 393, 399, 400, 225, 400,
1614 399, 399, 399, 399, 399, 399, 399, 401, 399, 399,
1615 399, 402, 399, 403, 399, 404, 399, 402, 402, 402,
1616 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
1617 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
1618 402, 399, 399, 402, 405, 406, 407, 402, 402, 402,
1620 402, 402, 408, 402, 409, 402, 402, 402, 410, 402,
1621 411, 412, 402, 402, 402, 402, 402, 402, 416, 417,
1622 225, 417, 416, 416, 416, 416, 416, 416, 416, 418,
1623 416, 416, 416, 419, 416, 420, 416, 421, 416, 419,
1624 419, 419, 419, 419, 419, 419, 419, 419, 419, 419,
1625 419, 419, 419, 419, 419, 419, 419, 419, 419, 419,
1626 419, 419, 419, 416, 416, 419, 422, 423, 424, 419,
1627 419, 419, 419, 419, 425, 419, 426, 419, 419, 419,
1628 427, 419, 419, 428, 419, 419, 419, 419, 419, 419,
1629 432, 433, 225, 433, 432, 432, 432, 432, 432, 432,
1631 432, 434, 432, 432, 432, 1797, 432, 436, 432, 437,
1632 432, 480, 225, 480, 480, 225, 480, 225, 225, 225,
1633 1253, 225, 225, 225, 809, 809, 809, 481, 1798, 1803,
1634 481, 1807, 1243, 468, 1808, 432, 432, 468, 1809, 1811,
1635 438, 810, 969, 969, 969, 1815, 439, 432, 433, 225,
1636 433, 432, 432, 432, 432, 432, 432, 432, 434, 432,
1637 432, 432, 1816, 432, 436, 432, 437, 432, 480, 225,
1638 480, 480, 225, 480, 480, 225, 480, 1253, 480, 225,
1639 480, 825, 825, 825, 481, 1594, 1817, 481, 1818, 1277,
1640 482, 1595, 432, 432, 482, 1596, 1819, 438, 826, 1597,
1642 969, 969, 969, 439, 443, 444, 225, 444, 443, 443,
1643 443, 443, 443, 443, 443, 445, 443, 443, 443, 1822,
1644 443, 447, 443, 448, 443, 492, 225, 492, 492, 225,
1645 492, 504, 225, 504, 1829, 504, 225, 504, 225, 225,
1646 225, 493, 1831, 1840, 493, 1841, 1842, 505, 1844, 443,
1647 443, 505, 952, 449, 468, 989, 989, 989, 1847, 1850,
1648 450, 1856, 451, 970, 1394, 1857, 969, 969, 969, 452,
1649 443, 444, 225, 444, 443, 443, 443, 443, 443, 443,
1650 443, 445, 443, 443, 443, 1860, 443, 447, 443, 448,
1651 443, 225, 225, 225, 504, 225, 504, 504, 225, 504,
1653 1861, 504, 225, 504, 504, 225, 504, 468, 1862, 1849,
1654 505, 1866, 1870, 505, 1872, 443, 443, 506, 970, 449,
1655 506, 1873, 1874, 1001, 1001, 1001, 450, 1002, 451, 1042,
1656 1003, 989, 989, 989, 1878, 452, 457, 458, 225, 458,
1657 457, 457, 457, 457, 457, 457, 457, 459, 457, 457,
1658 457, 1884, 457, 461, 457, 462, 457, 518, 225, 518,
1659 518, 225, 518, 225, 225, 225, 1885, 225, 225, 225,
1660 518, 225, 518, 519, 1886, 1887, 519, 1888, 1889, 520,
1661 1890, 457, 457, 520, 1891, 1892, 519, 463, 1011, 1011,
1662 1011, 1893, 1012, 1899, 1042, 1013, 989, 989, 989, 1908,
1664 1909, 464, 457, 458, 225, 458, 457, 457, 457, 457,
1665 457, 457, 457, 459, 457, 457, 457, 1914, 457, 461,
1666 457, 462, 457, 518, 225, 518, 518, 225, 518, 518,
1667 225, 518, 1910, 530, 225, 530, 530, 225, 530, 519,
1668 1911, 1915, 521, 1912, 1916, 521, 1917, 457, 457, 531,
1669 1921, 1913, 531, 463, 1034, 1034, 1034, 1922, 1035, 1923,
1670 1925, 1036, 1406, 1406, 1406, 1926, 1927, 464, 470, 471,
1671 225, 471, 470, 470, 470, 470, 470, 470, 470, 472,
1672 470, 470, 470, 1928, 470, 474, 470, 475, 470, 540,
1673 225, 540, 540, 225, 540, 225, 225, 225, 1394, 225,
1675 225, 225, 540, 225, 540, 541, 1598, 1931, 541, 1935,
1676 1936, 300, 1599, 470, 470, 300, 1600, 1941, 541, 476,
1677 1601, 1942, 477, 1051, 1051, 1051, 1943, 1052, 1944, 1848,
1678 1053, 1946, 1954, 478, 470, 471, 225, 471, 470, 470,
1679 470, 470, 470, 470, 470, 472, 470, 470, 470, 1394,
1680 470, 474, 470, 475, 470, 540, 225, 540, 540, 225,
1681 540, 540, 225, 540, 1937, 552, 225, 552, 552, 225,
1682 552, 541, 1938, 1394, 542, 1964, 1968, 542, 1939, 470,
1683 470, 553, 1969, 630, 553, 476, 1940, 630, 477, 1408,
1684 1408, 1408, 1970, 631, 1973, 1960, 2694, 637, 1977, 478,
1686 483, 484, 225, 484, 483, 483, 483, 483, 483, 483,
1687 483, 485, 483, 483, 483, 1959, 483, 487, 483, 488,
1688 483, 632, 840, 840, 840, 632, 1978, 633, 1979, 1980,
1689 634, 845, 845, 845, 1981, 1409, 635, 636, 591, 841,
1690 633, 579, 585, 634, 1982, 483, 483, 1983, 846, 639,
1691 636, 489, 1412, 1412, 1412, 1984, 490, 483, 484, 225,
1692 484, 483, 483, 483, 483, 483, 483, 483, 485, 483,
1693 483, 483, 1985, 483, 487, 483, 488, 483, 850, 850,
1694 850, 862, 862, 862, 872, 872, 872, 875, 875, 875,
1695 890, 890, 890, 1986, 1988, 851, 1989, 1994, 863, 1995,
1697 1996, 873, 483, 483, 876, 1997, 1998, 891, 489, 1415,
1698 1415, 1415, 1999, 490, 494, 495, 225, 495, 494, 494,
1699 494, 494, 494, 494, 494, 496, 494, 494, 494, 2000,
1700 494, 498, 494, 499, 494, 898, 898, 898, 903, 903,
1701 903, 923, 923, 923, 942, 942, 942, 946, 946, 946,
1702 2002, 2003, 899, 2006, 2007, 904, 2010, 2011, 924, 494,
1703 494, 943, 2012, 2013, 947, 500, 2017, 2018, 501, 1059,
1704 1059, 1059, 2019, 1060, 2020, 2021, 1061, 2022, 2023, 502,
1705 494, 495, 225, 495, 494, 494, 494, 494, 494, 494,
1706 494, 496, 494, 494, 494, 2024, 494, 498, 494, 499,
1708 494, 965, 965, 965, 965, 965, 965, 2026, 1394, 996,
1709 996, 996, 996, 996, 996, 801, 801, 801, 2048, 967,
1710 2049, 2050, 967, 2051, 2052, 494, 494, 998, 2057, 2058,
1711 998, 500, 802, 1394, 501, 1067, 1067, 1067, 2059, 1068,
1712 2044, 2060, 1069, 2061, 2062, 502, 507, 508, 225, 508,
1713 507, 507, 507, 507, 507, 507, 507, 509, 507, 507,
1714 507, 968, 507, 511, 507, 512, 507, 1006, 1006, 1006,
1715 2045, 999, 1006, 1006, 1006, 2063, 809, 809, 809, 1014,
1716 1014, 1014, 1022, 1022, 1022, 1008, 2064, 1017, 1017, 1017,
1717 1008, 507, 507, 810, 2065, 2066, 1015, 2068, 2069, 513,
1719 1024, 514, 2073, 515, 1018, 1424, 1424, 1424, 1447, 1447,
1720 1447, 516, 507, 508, 225, 508, 507, 507, 507, 507,
1721 507, 507, 507, 509, 507, 507, 507, 2074, 507, 511,
1722 507, 512, 507, 2075, 2076, 1009, 1030, 1030, 1030, 2079,
1723 2080, 1030, 1030, 1030, 2084, 2087, 1022, 1022, 1022, 825,
1724 825, 825, 2088, 2091, 1032, 2095, 2096, 507, 507, 1032,
1725 1458, 1458, 1458, 2097, 1024, 513, 826, 514, 2098, 515,
1726 1459, 1459, 1459, 1406, 1406, 1406, 2099, 516, 522, 523,
1727 225, 523, 522, 522, 522, 522, 522, 522, 522, 524,
1728 522, 522, 522, 1025, 522, 526, 522, 527, 522, 1038,
1730 1038, 1038, 2102, 2103, 1033, 2120, 2121, 1038, 1038, 1038,
1731 840, 840, 840, 1055, 1055, 1055, 1409, 1040, 1055, 1055,
1732 1055, 2122, 2123, 522, 522, 1040, 2133, 841, 845, 845,
1733 845, 1057, 952, 1084, 1084, 1084, 1057, 1085, 1394, 2134,
1734 1086, 1408, 1408, 1408, 1041, 846, 528, 522, 523, 225,
1735 523, 522, 522, 522, 522, 522, 522, 522, 524, 522,
1736 522, 522, 1394, 522, 526, 522, 527, 522, 1063, 1063,
1737 1063, 2117, 1063, 1063, 1063, 2118, 2135, 850, 850, 850,
1738 1071, 1071, 1071, 1058, 2136, 2137, 1065, 1071, 1071, 1071,
1739 1065, 2138, 522, 522, 851, 1077, 1077, 1077, 1073, 1099,
1741 1099, 1099, 2139, 1100, 2119, 1073, 1101, 1103, 1103, 1103,
1742 2140, 1104, 2141, 1079, 1105, 528, 532, 533, 225, 533,
1743 532, 532, 532, 532, 532, 532, 532, 534, 532, 532,
1744 532, 2142, 532, 536, 532, 537, 532, 1066, 1077, 1077,
1745 1077, 862, 862, 862, 1568, 1568, 1568, 1074, 1089, 1089,
1746 1089, 1089, 1089, 1089, 2144, 2145, 1079, 2147, 863, 2153,
1747 2154, 532, 532, 1123, 1123, 1123, 1091, 1124, 2155, 1091,
1748 1125, 2159, 538, 532, 533, 225, 533, 532, 532, 532,
1749 532, 532, 532, 532, 534, 532, 532, 532, 2167, 532,
1750 536, 532, 537, 532, 2168, 872, 872, 872, 875, 875,
1752 875, 2169, 1080, 1106, 1106, 1106, 1115, 1115, 1115, 2191,
1753 2192, 1092, 873, 2193, 2197, 876, 952, 1394, 532, 532,
1754 1107, 1135, 1135, 1135, 1117, 1136, 2198, 2201, 1137, 538,
1755 543, 544, 225, 544, 543, 543, 543, 543, 543, 543,
1756 543, 545, 543, 543, 543, 2187, 543, 547, 543, 548,
1757 543, 890, 890, 890, 1126, 1126, 1126, 2126, 2188, 1130,
1758 1130, 1130, 2202, 1115, 1115, 1115, 2206, 2127, 891, 2207,
1759 2128, 1127, 1130, 1130, 1130, 543, 543, 1132, 898, 898,
1760 898, 1117, 1412, 1412, 1412, 2208, 549, 1143, 1143, 1143,
1761 1132, 1144, 2209, 2210, 1145, 899, 2211, 2212, 550, 543,
1763 544, 225, 544, 543, 543, 543, 543, 543, 543, 543,
1764 545, 543, 543, 543, 2213, 543, 547, 543, 548, 543,
1765 1118, 2216, 2224, 1133, 1138, 1138, 1138, 2177, 1138, 1138,
1766 1138, 903, 903, 903, 1149, 1149, 1149, 2178, 1149, 1149,
1767 1149, 1394, 1140, 2179, 543, 543, 1140, 2225, 904, 1153,
1768 1153, 1153, 1151, 2226, 2227, 549, 1151, 1155, 1155, 1155,
1769 2694, 2694, 2694, 1158, 1158, 1158, 1154, 550, 558, 2234,
1770 2199, 1158, 1158, 1158, 1156, 573, 2237, 2694, 1163, 1163,
1771 1163, 1160, 2189, 2200, 557, 574, 2244, 2245, 1141, 1160,
1772 2694, 2694, 2694, 1152, 2246, 1164, 2247, 2248, 1167, 1167,
1774 1167, 1408, 1408, 1408, 2694, 2694, 2694, 2694, 2249, 1170,
1775 1170, 1170, 575, 576, 577, 1168, 1394, 2256, 1157, 578,
1776 579, 2694, 580, 581, 2257, 2203, 582, 1172, 583, 584,
1777 585, 1161, 1170, 1170, 1170, 923, 923, 923, 2204, 2258,
1778 1165, 1175, 1175, 1175, 952, 1176, 2259, 1529, 1177, 2260,
1779 1172, 2252, 924, 2261, 1166, 1178, 1178, 1178, 1178, 1178,
1780 1178, 2262, 1169, 1182, 1182, 1182, 2694, 2694, 2694, 1173,
1781 1186, 1186, 1186, 1180, 2263, 2264, 1180, 1188, 1188, 1188,
1782 1183, 2265, 2268, 2694, 1188, 1188, 1188, 1187, 1196, 1196,
1783 1196, 2251, 1196, 1196, 1196, 1190, 1202, 1202, 1202, 1202,
1785 1202, 1202, 1190, 942, 942, 942, 1198, 946, 946, 946,
1786 1198, 2269, 2270, 1181, 1204, 2271, 1184, 1204, 2272, 2273,
1787 943, 1206, 1206, 1206, 947, 1207, 2274, 2275, 1208, 2282,
1788 1185, 1209, 1209, 1209, 1209, 1209, 1209, 1213, 1213, 1213,
1789 2129, 1214, 2283, 2284, 1215, 1217, 1217, 1217, 2285, 1211,
1790 2130, 2286, 1211, 2131, 1191, 1199, 1217, 1217, 1217, 965,
1791 965, 965, 1205, 1219, 965, 965, 965, 965, 965, 965,
1792 1255, 1255, 1255, 2287, 1219, 2291, 2292, 967, 996, 996,
1793 996, 2300, 967, 2301, 2302, 967, 2293, 1256, 996, 996,
1794 996, 996, 996, 996, 1212, 2303, 998, 2180, 1258, 1258,
1796 1258, 1001, 1001, 1001, 2304, 1002, 998, 2181, 1003, 998,
1797 2694, 2694, 2694, 2182, 1229, 1259, 1006, 1006, 1006, 1220,
1798 1006, 1006, 1006, 2294, 1006, 1006, 1006, 2694, 1011, 1011,
1799 1011, 2296, 1012, 2295, 1008, 1013, 2305, 2316, 1008, 2298,
1800 1257, 2297, 1008, 1014, 1014, 1014, 1264, 1264, 1264, 2299,
1801 1265, 2317, 2318, 1266, 2319, 1267, 1267, 1267, 2320, 2321,
1802 1015, 1017, 1017, 1017, 1273, 1273, 1273, 1022, 1022, 1022,
1803 1260, 1262, 1268, 1269, 1269, 1269, 2322, 1270, 1018, 2323,
1804 1271, 1274, 1022, 1022, 1022, 1024, 1022, 1022, 1022, 1279,
1805 1279, 1279, 1030, 1030, 1030, 1030, 1030, 1030, 952, 2327,
1807 1024, 1030, 1030, 1030, 1024, 2328, 1280, 1034, 1034, 1034,
1808 1032, 1035, 2329, 1032, 1036, 1038, 1038, 1038, 2330, 1032,
1809 1038, 1038, 1038, 1284, 1284, 1284, 2331, 1051, 1051, 1051,
1810 2332, 1052, 2308, 1040, 1053, 1055, 1055, 1055, 1040, 2336,
1811 2337, 1285, 1055, 1055, 1055, 1276, 2338, 2341, 1282, 1055,
1812 1055, 1055, 2346, 1057, 1059, 1059, 1059, 2347, 1060, 2348,
1813 1057, 1061, 1063, 1063, 1063, 2349, 2350, 1057, 1063, 1063,
1814 1063, 1063, 1063, 1063, 1067, 1067, 1067, 2351, 1068, 2352,
1815 1065, 1069, 1299, 1299, 1299, 2353, 1065, 2354, 2355, 1065,
1816 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1300,
1818 1302, 1302, 1302, 2356, 2694, 2694, 2694, 2357, 1073, 1296,
1819 2364, 1073, 2365, 952, 1073, 2366, 2367, 1303, 1077, 1077,
1820 1077, 2694, 1077, 1077, 1077, 1077, 1077, 1077, 1308, 1308,
1821 1308, 1298, 1304, 1089, 1089, 1089, 1079, 1084, 1084, 1084,
1822 1079, 1085, 2368, 1079, 1086, 1309, 1089, 1089, 1089, 2369,
1823 2370, 1091, 1089, 1089, 1089, 2358, 1099, 1099, 1099, 2371,
1824 1100, 2372, 1301, 1101, 1091, 1319, 1319, 1319, 2373, 2374,
1825 1091, 1103, 1103, 1103, 2375, 1104, 2376, 2377, 1105, 1106,
1826 1106, 1106, 1320, 2380, 1321, 1321, 1321, 2381, 1322, 2382,
1827 1305, 1323, 1115, 1115, 1115, 2386, 1107, 1115, 1115, 1115,
1829 1115, 1115, 1115, 2393, 1123, 1123, 1123, 2394, 1124, 2395,
1830 1117, 1125, 1126, 1126, 1126, 1117, 1312, 2396, 1117, 1336,
1831 1336, 1336, 2397, 1337, 2398, 2399, 1338, 2400, 2401, 1127,
1832 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1135,
1833 1135, 1135, 2402, 1136, 2403, 2404, 1137, 2412, 1132, 952,
1834 2407, 1132, 2413, 2414, 1132, 1138, 1138, 1138, 1138, 1138,
1835 1138, 1138, 1138, 1138, 2408, 2415, 1331, 1143, 1143, 1143,
1836 2416, 1144, 2417, 1140, 1145, 2407, 1140, 2418, 2419, 1140,
1837 1149, 1149, 1149, 1149, 1149, 1149, 2410, 1341, 1149, 1149,
1838 1149, 1153, 1153, 1153, 2405, 1349, 1349, 1349, 1151, 1350,
1840 2420, 1151, 1351, 1155, 1155, 1155, 1151, 2421, 1154, 1352,
1841 1352, 1352, 2422, 1353, 2427, 2432, 1354, 1158, 1158, 1158,
1842 1156, 1158, 1158, 1158, 1158, 1158, 1158, 1343, 1163, 1163,
1843 1163, 1167, 1167, 1167, 2423, 1160, 1358, 1358, 1358, 1160,
1844 1359, 2433, 1160, 1360, 2434, 1164, 2424, 1348, 1168, 1363,
1845 1363, 1363, 2435, 1364, 2438, 2407, 1365, 1170, 1170, 1170,
1846 1170, 1170, 1170, 1170, 1170, 1170, 1175, 1175, 1175, 2408,
1847 1176, 1394, 1395, 1177, 2438, 1172, 2425, 2428, 1172, 2441,
1848 2442, 1172, 1178, 1178, 1178, 1178, 1178, 1178, 2426, 2429,
1849 1356, 1178, 1178, 1178, 1182, 1182, 1182, 1370, 1370, 1370,
1851 1180, 1371, 2443, 1180, 1372, 1186, 1186, 1186, 2430, 1180,
1852 2407, 1183, 1375, 1375, 1375, 2444, 1376, 2453, 2456, 1377,
1853 2431, 2410, 1187, 1188, 1188, 1188, 1367, 1188, 1188, 1188,
1854 1188, 1188, 1188, 2461, 1380, 1380, 1380, 1196, 1196, 1196,
1855 952, 1190, 1196, 1196, 1196, 1190, 2464, 2438, 1190, 2466,
1856 1369, 1381, 1196, 1196, 1196, 1198, 1202, 1202, 1202, 2438,
1857 1198, 1202, 1202, 1202, 1202, 1202, 1202, 1209, 1209, 1209,
1858 1198, 1206, 1206, 1206, 1204, 1207, 2467, 2468, 1208, 1204,
1859 2436, 2451, 1204, 2469, 2454, 1211, 1209, 1209, 1209, 2459,
1860 2462, 1378, 1209, 1209, 1209, 1213, 1213, 1213, 2470, 1214,
1862 2452, 2480, 1215, 2455, 1211, 1217, 1217, 1217, 2460, 2463,
1863 1211, 2481, 1384, 1217, 1217, 1217, 2482, 1387, 1217, 1217,
1864 1217, 2483, 2484, 1219, 1393, 1393, 1393, 965, 965, 965,
1865 2485, 1219, 1255, 1255, 1255, 2489, 1219, 1427, 1427, 1427,
1866 2490, 1428, 1394, 1395, 1429, 967, 996, 996, 996, 1256,
1867 2491, 1388, 1258, 1258, 1258, 1431, 1431, 1431, 2492, 1432,
1868 2493, 2494, 1433, 2496, 998, 1006, 1006, 1006, 2497, 1259,
1869 1264, 1264, 1264, 2498, 1265, 2499, 2503, 1266, 1390, 1267,
1870 1267, 1267, 2504, 1008, 1438, 1438, 1438, 2500, 1439, 2501,
1871 2505, 1440, 1400, 1269, 1269, 1269, 1268, 1270, 2506, 2507,
1873 1271, 2502, 2508, 1430, 1273, 1273, 1273, 2509, 1442, 1442,
1874 1442, 2510, 1443, 2511, 1436, 1444, 1022, 1022, 1022, 2512,
1875 2513, 1274, 1279, 1279, 1279, 1449, 1449, 1449, 2514, 1450,
1876 2516, 952, 1451, 2517, 1024, 1452, 1452, 1452, 2518, 1280,
1877 1030, 1030, 1030, 1284, 1284, 1284, 1465, 1465, 1465, 1055,
1878 1055, 1055, 1453, 1063, 1063, 1063, 2515, 2519, 1032, 2520,
1879 2521, 1285, 2522, 1466, 2523, 2524, 1446, 1057, 1299, 1299,
1880 1299, 1065, 1470, 1470, 1470, 2525, 1471, 2526, 2527, 1472,
1881 1071, 1071, 1071, 2528, 2529, 1300, 1302, 1302, 1302, 1454,
1882 1474, 1474, 1474, 2530, 1475, 2531, 2532, 1476, 1073, 1077,
1884 1077, 1077, 2533, 1303, 1308, 1308, 1308, 1481, 1481, 1481,
1885 2535, 1482, 1467, 2536, 1483, 2537, 1469, 1079, 1484, 1484,
1886 1484, 1309, 2538, 1486, 1486, 1486, 1089, 1089, 1089, 1493,
1887 1493, 1493, 1319, 1319, 1319, 1485, 1500, 1500, 1500, 1473,
1888 1487, 1497, 1497, 1497, 1091, 1498, 1494, 2539, 1499, 1320,
1889 1321, 1321, 1321, 1501, 1322, 952, 2540, 1323, 2541, 1478,
1890 1115, 1115, 1115, 1510, 1510, 1510, 1336, 1336, 1336, 1488,
1891 1337, 2542, 2543, 1338, 2534, 1514, 1514, 1514, 1117, 2544,
1892 1511, 1130, 1130, 1130, 1138, 1138, 1138, 1523, 1523, 1523,
1893 2545, 1489, 1515, 2546, 1149, 1149, 1149, 2547, 2548, 1132,
1895 2549, 2550, 1140, 952, 1524, 2552, 1349, 1349, 1349, 2553,
1896 1350, 2554, 1151, 1351, 1352, 1352, 1352, 2555, 1353, 2556,
1897 2557, 1354, 2558, 2551, 1508, 1158, 1158, 1158, 1358, 1358,
1898 1358, 2559, 1359, 1525, 2560, 1360, 2561, 2562, 1363, 1363,
1899 1363, 2563, 1364, 1160, 1517, 1365, 1170, 1170, 1170, 1519,
1900 1526, 1178, 1178, 1178, 1370, 1370, 1370, 2564, 1371, 2565,
1901 2566, 1372, 2567, 2569, 1172, 952, 1375, 1375, 1375, 1180,
1902 1376, 2568, 2570, 1377, 1188, 1188, 1188, 1380, 1380, 1380,
1903 1540, 1540, 1540, 2571, 1541, 2572, 2573, 1542, 2574, 2575,
1904 1528, 2576, 1190, 2577, 1381, 1196, 1196, 1196, 1547, 1547,
1906 1547, 1202, 1202, 1202, 2578, 2579, 1533, 1535, 1209, 1209,
1907 1209, 2580, 2582, 1198, 2583, 1548, 1551, 1551, 1551, 1204,
1908 2584, 1538, 1217, 1217, 1217, 2585, 1211, 1393, 1393, 1393,
1909 965, 965, 965, 1552, 1415, 1415, 1415, 1573, 1573, 1573,
1910 1219, 1576, 1576, 1576, 1545, 1394, 2586, 952, 967, 1424,
1911 1424, 1424, 1583, 1583, 1583, 1427, 1427, 1427, 2587, 1428,
1912 1550, 2581, 1429, 996, 996, 996, 2588, 1549, 1431, 1431,
1913 1431, 2589, 1432, 2591, 2592, 1433, 2593, 2594, 1555, 2595,
1914 2596, 998, 1560, 1553, 1006, 1006, 1006, 1577, 1438, 1438,
1915 1438, 2597, 1439, 2598, 1556, 1440, 2601, 2602, 1584, 2603,
1917 1574, 2604, 1008, 1442, 1442, 1442, 2605, 1443, 2606, 952,
1918 1444, 1590, 1022, 1022, 1022, 1447, 1447, 1447, 1449, 1449,
1919 1449, 952, 1450, 2617, 952, 1451, 1452, 1452, 1452, 1585,
1920 1024, 952, 1602, 1602, 1602, 1588, 1603, 1589, 1587, 1604,
1921 1030, 1030, 1030, 1453, 1458, 1458, 1458, 1459, 1459, 1459,
1922 1609, 1609, 1609, 1609, 1609, 1609, 2609, 2607, 1032, 1573,
1923 1573, 1573, 1465, 1465, 1465, 2615, 1613, 1613, 1613, 952,
1924 1614, 2610, 1592, 1615, 1055, 1055, 1055, 952, 952, 1466,
1925 1617, 1617, 1617, 1063, 1063, 1063, 1470, 1470, 1470, 952,
1926 1471, 1605, 1057, 1472, 1071, 1071, 1071, 1618, 1474, 1474,
1928 1474, 1065, 1475, 952, 952, 1476, 1621, 1621, 1621, 1077,
1929 1077, 1077, 1073, 1610, 2608, 952, 1574, 1484, 1484, 1484,
1930 2613, 1616, 1610, 1622, 1481, 1481, 1481, 1079, 1482, 2616,
1931 1619, 1483, 2614, 952, 1485, 1626, 1626, 1626, 1586, 1627,
1932 2623, 2618, 1628, 1486, 1486, 1486, 1629, 1629, 1629, 952,
1933 1630, 2611, 2624, 1631, 1582, 1633, 1633, 1633, 952, 1620,
1934 1487, 1635, 1635, 1635, 1493, 1493, 1493, 1638, 1638, 1638,
1935 952, 1639, 1623, 1634, 1640, 1641, 1641, 1641, 1497, 1497,
1936 1497, 1494, 1498, 952, 952, 1499, 1500, 1500, 1500, 1644,
1937 1644, 1644, 1642, 1645, 952, 2631, 1646, 1647, 1647, 1647,
1939 1653, 1653, 1653, 1501, 1115, 1115, 1115, 1510, 1510, 1510,
1940 1581, 1657, 1657, 1657, 1648, 1658, 2621, 1654, 1659, 1660,
1941 1660, 1660, 1117, 2625, 1511, 1514, 1514, 1514, 1663, 1663,
1942 1663, 2612, 1664, 2619, 952, 1665, 1661, 1667, 1667, 1667,
1943 2622, 952, 1515, 1138, 1138, 1138, 1523, 1523, 1523, 1674,
1944 1674, 1674, 2620, 1675, 2667, 1668, 1676, 1678, 1678, 1678,
1945 952, 1140, 952, 1524, 1158, 1158, 1158, 1580, 952, 1655,
1946 1683, 1683, 1683, 952, 2626, 1679, 1685, 1685, 1685, 2694,
1947 2694, 2694, 1160, 1170, 1170, 1170, 952, 1684, 1178, 1178,
1948 1178, 952, 952, 1686, 1670, 952, 2694, 1691, 1691, 1691,
1950 952, 1172, 1693, 1693, 1693, 2633, 1180, 1188, 1188, 1188,
1951 1196, 1196, 1196, 2629, 1692, 1681, 1540, 1540, 1540, 1694,
1952 1541, 2627, 1579, 1542, 2634, 1190, 2628, 1578, 1198, 1547,
1953 1547, 1547, 2632, 952, 1690, 2635, 1701, 1701, 1701, 2636,
1954 1702, 952, 1687, 1703, 952, 2630, 1548, 1575, 952, 1688,
1955 1202, 1202, 1202, 1572, 1209, 1209, 1209, 1551, 1551, 1551,
1956 952, 1699, 1706, 1706, 1706, 952, 1707, 2639, 1204, 1708,
1957 2659, 1695, 1211, 952, 1552, 1709, 1709, 1709, 1715, 1715,
1958 1715, 965, 965, 965, 1722, 1722, 1722, 1568, 1568, 1568,
1959 1728, 1728, 1728, 1710, 2640, 1716, 1573, 1573, 1573, 967,
1961 1729, 1729, 1729, 1576, 1576, 1576, 2647, 2641, 1704, 1705,
1962 1732, 1732, 1732, 1733, 1733, 1733, 1583, 1583, 1583, 996,
1963 996, 996, 1741, 1741, 1741, 1744, 1744, 1744, 1022, 1022,
1964 1022, 1748, 1748, 1748, 1030, 1030, 1030, 998, 1571, 952,
1965 1742, 1717, 1745, 1602, 1602, 1602, 1024, 1603, 1749, 952,
1966 1604, 952, 1032, 1761, 1761, 1761, 1609, 1609, 1609, 1765,
1967 1765, 1765, 1767, 1767, 1767, 1055, 1055, 1055, 952, 1738,
1968 1762, 1613, 1613, 1613, 2637, 1614, 952, 952, 1615, 1768,
1969 1760, 952, 952, 1057, 2638, 952, 1747, 1617, 1617, 1617,
1970 1770, 1770, 1770, 2642, 1771, 952, 1570, 1772, 1063, 1063,
1972 1063, 1774, 1774, 1774, 1618, 1621, 1621, 1621, 1776, 1776,
1973 1776, 2663, 1777, 2643, 2648, 1778, 1065, 2645, 1769, 1775,
1974 2646, 2644, 1622, 1077, 1077, 1077, 1626, 1626, 1626, 2649,
1975 1627, 2650, 2651, 1628, 952, 1629, 1629, 1629, 952, 1630,
1976 952, 1079, 1631, 1633, 1633, 1633, 1635, 1635, 1635, 952,
1977 952, 1773, 1638, 1638, 1638, 952, 1639, 952, 1569, 1640,
1978 952, 1634, 1641, 1641, 1641, 1787, 1787, 1787, 2668, 1788,
1979 1779, 2652, 1789, 1644, 1644, 1644, 952, 1645, 952, 1642,
1980 1646, 1647, 1647, 1647, 1791, 1791, 1791, 2657, 1792, 2664,
1981 2653, 1793, 1794, 1794, 1794, 1653, 1653, 1653, 1648, 1799,
1983 1799, 1799, 2655, 1800, 952, 2656, 1801, 1567, 1566, 1795,
1984 1565, 952, 1654, 1115, 1115, 1115, 1657, 1657, 1657, 2654,
1985 1658, 952, 952, 1659, 1660, 1660, 1660, 1564, 1804, 1804,
1986 1804, 1117, 1805, 2660, 952, 1806, 1663, 1663, 1663, 952,
1987 1664, 1661, 952, 1665, 1667, 1667, 1667, 1138, 1138, 1138,
1988 1812, 1812, 1812, 1674, 1674, 1674, 2665, 1675, 2658, 2671,
1989 1676, 952, 1668, 952, 1802, 1140, 1563, 1813, 1678, 1678,
1990 1678, 1820, 1820, 1820, 1683, 1683, 1683, 1823, 1823, 1823,
1991 2669, 1824, 952, 1562, 1825, 2670, 1679, 2666, 952, 1821,
1992 952, 1684, 1685, 1685, 1685, 952, 1814, 1826, 1826, 1826,
1994 2672, 1827, 1561, 952, 1828, 1170, 1170, 1170, 2687, 1686,
1995 1810, 1178, 1178, 1178, 1691, 1691, 1691, 1833, 1833, 1833,
1996 952, 1834, 2673, 1172, 1835, 1693, 1693, 1693, 2661, 1180,
1997 2674, 1692, 1836, 1836, 1836, 2688, 1837, 952, 2675, 1838,
1998 2677, 952, 1694, 1188, 1188, 1188, 1196, 1196, 1196, 1701,
1999 1701, 1701, 1559, 1702, 2662, 2676, 1703, 1202, 1202, 1202,
2000 1832, 1190, 952, 952, 1198, 1209, 1209, 1209, 952, 1558,
2001 1830, 1557, 1706, 1706, 1706, 1204, 1707, 952, 2679, 1708,
2002 1709, 1709, 1709, 1211, 1715, 1715, 1715, 1851, 1851, 1851,
2003 1394, 1852, 2691, 1546, 1853, 965, 965, 965, 1710, 2680,
2005 2681, 1716, 1855, 1855, 1855, 1544, 952, 1839, 1845, 2682,
2006 1843, 1543, 1539, 967, 1858, 1858, 1858, 1537, 1846, 1722,
2007 1722, 1722, 1859, 1859, 1859, 1863, 1863, 1863, 1728, 1728,
2008 1728, 1729, 1729, 1729, 1864, 1864, 1864, 1732, 1732, 1732,
2009 1733, 1733, 1733, 1867, 1867, 1867, 1868, 1868, 1868, 1869,
2010 1869, 1869, 996, 996, 996, 1741, 1741, 1741, 1854, 1744,
2011 1744, 1744, 1875, 1875, 1875, 2683, 1876, 1536, 1534, 1877,
2012 998, 1532, 1531, 1742, 952, 952, 1745, 1879, 1879, 1879,
2013 1865, 1748, 1748, 1748, 1881, 1881, 1881, 952, 1882, 1530,
2014 1527, 1883, 1030, 1030, 1030, 1880, 1522, 952, 1749, 1761,
2016 1761, 1761, 1521, 1871, 1895, 1895, 1895, 2685, 1896, 1520,
2017 1032, 1897, 1898, 1898, 1898, 952, 1762, 1765, 1765, 1765,
2018 1900, 1900, 1900, 1767, 1767, 1767, 1902, 1902, 1902, 2686,
2019 1903, 952, 2678, 1904, 1055, 1055, 1055, 1063, 1063, 1063,
2020 1768, 1894, 1770, 1770, 1770, 2684, 1771, 2689, 2691, 1772,
2021 1518, 1516, 1057, 1513, 952, 1065, 1774, 1774, 1774, 952,
2022 1776, 1776, 1776, 2690, 1777, 1512, 1901, 1778, 1077, 1077,
2023 1077, 1787, 1787, 1787, 1775, 1788, 1509, 1507, 1789, 1506,
2024 1791, 1791, 1791, 1505, 1792, 1905, 1079, 1793, 1906, 1794,
2025 1794, 1794, 1918, 1918, 1918, 1504, 1919, 1503, 1502, 1920,
2027 1799, 1799, 1799, 1496, 1800, 1495, 1795, 1801, 1115, 1115,
2028 1115, 1804, 1804, 1804, 1492, 1805, 1491, 1490, 1806, 1480,
2029 1479, 1907, 1929, 1929, 1929, 1477, 1117, 1812, 1812, 1812,
2030 1932, 1932, 1932, 1468, 1933, 1464, 1463, 1934, 1462, 1461,
2031 1930, 1820, 1820, 1820, 1813, 1823, 1823, 1823, 1460, 1824,
2032 1457, 1456, 1825, 1826, 1826, 1826, 1455, 1827, 1448, 1821,
2033 1828, 1170, 1170, 1170, 1178, 1178, 1178, 1445, 1833, 1833,
2034 1833, 1924, 1834, 1441, 1437, 1835, 1836, 1836, 1836, 1172,
2035 1837, 1435, 1180, 1838, 1188, 1188, 1188, 1949, 1949, 1949,
2036 2694, 2694, 2694, 2694, 2694, 2694, 1196, 1196, 1196, 1202,
2038 1202, 1202, 1190, 1434, 1950, 1426, 1425, 2694, 1423, 1422,
2039 2694, 1421, 1945, 1420, 1198, 1419, 1418, 1204, 1417, 1416,
2040 1948, 1956, 1956, 1956, 1958, 1958, 1958, 1414, 1413, 1947,
2041 1961, 1961, 1961, 1851, 1851, 1851, 1411, 1852, 1410, 1957,
2042 1853, 1951, 952, 965, 965, 965, 1855, 1855, 1855, 1407,
2043 1405, 1952, 1963, 1963, 1963, 1858, 1858, 1858, 1955, 1404,
2044 1953, 967, 1859, 1859, 1859, 1965, 1965, 1965, 1966, 1966,
2045 1966, 1967, 1967, 1967, 1863, 1863, 1863, 1864, 1864, 1864,
2046 1867, 1867, 1867, 1868, 1868, 1868, 1869, 1869, 1869, 1971,
2047 1971, 1971, 1974, 1974, 1974, 1875, 1875, 1875, 1403, 1876,
2049 1402, 1962, 1877, 2694, 2694, 2694, 1401, 1972, 1399, 1975,
2050 1879, 1879, 1879, 1398, 1881, 1881, 1881, 1397, 1882, 1396,
2051 2694, 1883, 1030, 1030, 1030, 1895, 1895, 1895, 1880, 1896,
2052 1389, 1386, 1897, 1898, 1898, 1898, 1900, 1900, 1900, 1385,
2053 1032, 1902, 1902, 1902, 1383, 1903, 1382, 1379, 1904, 1055,
2054 1055, 1055, 1991, 1991, 1991, 1077, 1077, 1077, 2001, 2001,
2055 2001, 1374, 1918, 1918, 1918, 1373, 1919, 1057, 1976, 1920,
2056 1992, 1368, 1366, 1079, 2004, 2004, 2004, 1362, 2008, 2008,
2057 2008, 1361, 1987, 1929, 1929, 1929, 2014, 2014, 2014, 1357,
2058 1355, 2005, 2025, 2025, 2025, 1990, 2009, 1347, 1932, 1932,
2060 1932, 1930, 1933, 2015, 1346, 1934, 1993, 2027, 2027, 2027,
2061 2029, 2029, 2029, 1178, 1178, 1178, 1188, 1188, 1188, 1949,
2062 1949, 1949, 2033, 2033, 2033, 2028, 2034, 2030, 1345, 2035,
2063 1344, 1180, 2016, 1342, 1190, 1340, 1950, 2036, 2036, 2036,
2064 2694, 2694, 2694, 2039, 2039, 2039, 2041, 2041, 2041, 1202,
2065 1202, 1202, 1339, 1335, 2037, 1334, 1333, 2694, 1961, 1961,
2066 1961, 2040, 1956, 1956, 1956, 1332, 1330, 1204, 1958, 1958,
2067 1958, 1329, 2031, 1963, 1963, 1963, 2032, 2046, 2046, 2046,
2068 1957, 1965, 1965, 1965, 1328, 1327, 952, 1966, 1966, 1966,
2069 1326, 2038, 1967, 1967, 1967, 2047, 1325, 1971, 1971, 1971,
2071 1974, 1974, 1974, 2053, 2053, 2053, 1324, 2054, 1318, 1317,
2072 2055, 2694, 2694, 2694, 2042, 1972, 1316, 1975, 1030, 1030,
2073 1030, 1055, 1055, 1055, 1991, 1991, 1991, 1315, 2694, 2043,
2074 2071, 2071, 2071, 2077, 2077, 2077, 1032, 1314, 1313, 1057,
2075 1311, 1310, 1992, 2001, 2001, 2001, 1307, 1306, 2072, 1297,
2076 2078, 2004, 2004, 2004, 2081, 2081, 2081, 1295, 2082, 1294,
2077 1293, 2083, 2085, 2085, 2085, 1292, 2056, 1291, 2005, 2008,
2078 2008, 2008, 2089, 2089, 2089, 1290, 1289, 2067, 1288, 2086,
2079 2014, 2014, 2014, 2100, 2100, 2100, 2070, 2009, 1287, 2090,
2080 1286, 2092, 2092, 2092, 1283, 2093, 1281, 2015, 2094, 1278,
2082 2101, 2025, 2025, 2025, 2027, 2027, 2027, 2029, 2029, 2029,
2083 2104, 2104, 2104, 1275, 2105, 1272, 1263, 2106, 2107, 2107,
2084 2107, 1261, 2028, 1254, 2030, 1188, 1188, 1188, 2033, 2033,
2085 2033, 1252, 2034, 1251, 1250, 2035, 2108, 2036, 2036, 2036,
2086 2110, 2110, 2110, 1190, 2111, 1249, 1248, 2112, 2113, 2113,
2087 2113, 2039, 2039, 2039, 2037, 2041, 2041, 2041, 2115, 2115,
2088 2115, 2046, 2046, 2046, 1247, 2114, 2124, 2124, 2124, 2040,
2089 2053, 2053, 2053, 1246, 2054, 1245, 2116, 2055, 1244, 2047,
2090 2694, 2694, 2694, 2125, 1030, 1030, 1030, 1055, 1055, 1055,
2091 1241, 2109, 2071, 2071, 2071, 1240, 1239, 2694, 2148, 2148,
2093 2148, 1238, 1032, 1237, 1236, 1057, 2077, 2077, 2077, 1235,
2094 2072, 1234, 2150, 2150, 2150, 2149, 2151, 1233, 1232, 2152,
2095 2081, 2081, 2081, 2078, 2082, 1231, 1230, 2083, 2085, 2085,
2096 2085, 2156, 2156, 2156, 1228, 2157, 1227, 1226, 2158, 1225,
2097 2132, 1224, 1223, 2143, 1222, 2086, 2160, 2160, 2160, 2089,
2098 2089, 2089, 2162, 2162, 2162, 952, 2163, 2146, 1216, 2164,
2099 2165, 2165, 2165, 2161, 1201, 1200, 2090, 2092, 2092, 2092,
2100 1195, 2093, 1194, 1193, 2094, 1192, 1174, 2166, 2100, 2100,
2101 2100, 2170, 2170, 2170, 1162, 2171, 1148, 1147, 2172, 2173,
2102 2173, 2173, 2175, 2175, 2175, 2101, 2104, 2104, 2104, 1146,
2104 2105, 1142, 1134, 2106, 1129, 1128, 2174, 1122, 1119, 2176,
2105 2107, 2107, 2107, 1188, 1188, 1188, 2110, 2110, 2110, 1114,
2106 2111, 1113, 1112, 2112, 2113, 2113, 2113, 1111, 2108, 1110,
2107 1109, 1190, 2184, 2184, 2184, 1108, 2185, 1102, 1095, 2186,
2108 1094, 2114, 2115, 2115, 2115, 2190, 2190, 2190, 2124, 2124,
2109 2124, 2194, 2194, 2194, 1093, 2195, 1088, 1087, 2196, 1083,
2110 2116, 1082, 2694, 2694, 2694, 2125, 1030, 1030, 1030, 2215,
2111 2215, 2215, 1055, 1055, 1055, 2148, 2148, 2148, 2183, 2694,
2112 2218, 2218, 2218, 1081, 1032, 1076, 1075, 2221, 2221, 2221,
2113 1057, 2222, 2149, 1070, 2223, 1062, 1054, 2219, 2150, 2150,
2115 2150, 1050, 2151, 1049, 1048, 2152, 2156, 2156, 2156, 1047,
2116 2157, 1046, 1045, 2158, 2160, 2160, 2160, 2214, 2228, 2228,
2117 2228, 2205, 2229, 1044, 1043, 2230, 2220, 1037, 2162, 2162,
2118 2162, 2161, 2163, 2217, 1029, 2164, 2165, 2165, 2165, 2231,
2119 2231, 2231, 1028, 2232, 1027, 1026, 2233, 2235, 2235, 2235,
2120 2170, 2170, 2170, 2166, 2171, 1021, 1020, 2172, 2173, 2173,
2121 2173, 2238, 2238, 2238, 2236, 2239, 1019, 1016, 2240, 2175,
2122 2175, 2175, 2241, 2241, 2241, 2174, 2242, 1010, 1005, 2243,
2123 1188, 1188, 1188, 2184, 2184, 2184, 2176, 2185, 1004, 1000,
2124 2186, 2253, 2253, 2253, 2190, 2190, 2190, 995, 1190, 2255,
2126 2255, 2255, 994, 2194, 2194, 2194, 993, 2195, 2254, 1394,
2127 2196, 2266, 2266, 2266, 1030, 1030, 1030, 2215, 2215, 2215,
2128 2277, 2277, 2277, 1055, 1055, 1055, 992, 991, 2267, 990,
2129 988, 2250, 1032, 2218, 2218, 2218, 2279, 2279, 2279, 987,
2130 2280, 1057, 986, 2281, 2221, 2221, 2221, 985, 2222, 984,
2131 2219, 2223, 2228, 2228, 2228, 983, 2229, 982, 981, 2230,
2132 2231, 2231, 2231, 2276, 2232, 980, 979, 2233, 2235, 2235,
2133 2235, 2288, 2288, 2288, 2278, 2289, 978, 977, 2290, 2238,
2134 2238, 2238, 976, 2239, 975, 2236, 2240, 2241, 2241, 2241,
2135 974, 2242, 973, 972, 2243, 2306, 2306, 2306, 2309, 2309,
2137 2309, 2253, 2253, 2253, 2311, 2311, 2311, 971, 2312, 964,
2138 963, 2313, 962, 2307, 961, 2310, 1394, 960, 2254, 1394,
2139 959, 958, 1394, 2255, 2255, 2255, 2314, 2314, 2314, 2315,
2140 2315, 2315, 2266, 2266, 2266, 2324, 2324, 2324, 955, 2325,
2141 953, 952, 2326, 1030, 1030, 1030, 2277, 2277, 2277, 2267,
2142 2334, 2334, 2334, 2279, 2279, 2279, 950, 2280, 948, 945,
2143 2281, 1032, 2339, 2339, 2339, 2342, 2342, 2342, 2335, 2288,
2144 2288, 2288, 941, 2289, 939, 938, 2290, 937, 935, 2340,
2145 934, 933, 2343, 2344, 2344, 2344, 2306, 2306, 2306, 2309,
2146 2309, 2309, 2359, 2359, 2359, 932, 2360, 931, 929, 2361,
2148 2345, 2314, 2314, 2314, 2307, 928, 2310, 1394, 2333, 927,
2149 1394, 2311, 2311, 2311, 926, 2312, 922, 921, 2313, 2315,
2150 2315, 2315, 2378, 2378, 2378, 2334, 2334, 2334, 919, 1394,
2151 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 918,
2152 2379, 1392, 917, 2335, 916, 915, 1392, 1392, 1392, 1394,
2153 1392, 2324, 2324, 2324, 914, 2325, 912, 911, 2326, 2383,
2154 2383, 2383, 910, 2384, 909, 907, 2385, 906, 905, 2339,
2155 2339, 2339, 2342, 2342, 2342, 1392, 1392, 1392, 1392, 1392,
2156 1392, 1392, 1392, 1392, 1392, 1392, 2340, 902, 1392, 2343,
2157 2344, 2344, 2344, 1392, 1392, 1392, 1394, 1392, 2387, 2387,
2159 2387, 901, 2388, 897, 896, 2389, 894, 2345, 2390, 2390,
2160 2390, 893, 2391, 892, 889, 2392, 888, 2359, 2359, 2359,
2161 887, 2360, 1392, 1392, 2361, 886, 884, 2378, 2378, 2378,
2162 2440, 2440, 2440, 883, 882, 1394, 1392, 1392, 1392, 1392,
2163 1392, 2411, 1392, 1392, 1392, 2379, 881, 1392, 1394, 1395,
2164 880, 879, 1392, 1392, 1392, 1394, 1392, 2383, 2383, 2383,
2165 878, 2384, 877, 874, 2385, 2387, 2387, 2387, 871, 2388,
2166 870, 867, 2389, 2390, 2390, 2390, 865, 2391, 864, 859,
2167 2392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392,
2168 1392, 2411, 858, 856, 1392, 2445, 2445, 2445, 855, 1392,
2170 1392, 1392, 1394, 1392, 2447, 2447, 2447, 2449, 2449, 2449,
2171 854, 852, 2446, 2457, 2457, 2457, 2465, 2465, 2465, 849,
2172 847, 2448, 844, 842, 2450, 2440, 2440, 2440, 1392, 1392,
2173 2458, 2445, 2445, 2445, 952, 2471, 2471, 2471, 839, 2472,
2174 836, 835, 2473, 1394, 2447, 2447, 2447, 833, 2446, 2474,
2175 2474, 2474, 832, 2475, 831, 830, 2476, 2449, 2449, 2449,
2176 829, 2448, 2477, 2477, 2477, 827, 2478, 824, 822, 2479,
2177 2457, 2457, 2457, 821, 2450, 820, 1555, 2486, 2486, 2486,
2178 818, 2487, 816, 815, 2488, 814, 813, 2458, 2465, 2465,
2179 2465, 2471, 2471, 2471, 812, 2472, 811, 808, 2473, 807,
2181 2474, 2474, 2474, 806, 2475, 803, 952, 2476, 2477, 2477,
2182 2477, 800, 2478, 799, 797, 2479, 2486, 2486, 2486, 796,
2183 2487, 793, 791, 2488, 788, 2495, 2590, 2590, 2590, 2590,
2184 2590, 2590, 787, 2599, 779, 778, 2600, 2692, 2692, 2692,
2185 2692, 2692, 2692, 777, 952, 774, 773, 952, 772, 771,
2186 769, 768, 767, 766, 765, 2693, 764, 759, 2693, 222,
2187 222, 222, 222, 222, 222, 222, 222, 222, 223, 223,
2188 223, 223, 223, 223, 223, 223, 223, 228, 228, 228,
2189 228, 228, 228, 228, 228, 228, 231, 231, 231, 231,
2190 231, 231, 231, 231, 231, 234, 234, 234, 234, 234,
2192 234, 234, 234, 234, 237, 237, 237, 237, 237, 237,
2193 237, 237, 237, 244, 244, 244, 244, 244, 244, 244,
2194 244, 244, 252, 252, 252, 252, 252, 252, 252, 252,
2195 252, 256, 256, 256, 256, 256, 256, 256, 256, 256,
2196 268, 268, 268, 268, 268, 268, 268, 268, 268, 272,
2197 272, 272, 272, 272, 272, 272, 272, 272, 278, 278,
2198 278, 278, 278, 278, 278, 278, 278, 289, 289, 289,
2199 289, 289, 289, 289, 289, 289, 297, 297, 297, 297,
2200 297, 297, 297, 297, 297, 305, 305, 305, 305, 305,
2201 305, 305, 305, 305, 311, 311, 311, 311, 311, 311,
2203 311, 311, 311, 317, 317, 317, 317, 317, 317, 317,
2204 317, 317, 322, 322, 322, 322, 322, 322, 322, 322,
2205 322, 339, 339, 339, 339, 339, 339, 339, 339, 339,
2206 345, 345, 345, 345, 345, 345, 345, 345, 345, 352,
2207 352, 352, 352, 352, 352, 352, 352, 352, 357, 357,
2208 357, 357, 357, 357, 357, 357, 357, 364, 364, 364,
2209 364, 364, 364, 364, 364, 364, 369, 369, 369, 369,
2210 369, 369, 369, 369, 369, 375, 375, 375, 375, 375,
2211 375, 375, 375, 375, 380, 380, 380, 380, 380, 380,
2212 380, 380, 380, 386, 386, 386, 386, 386, 386, 386,
2214 386, 386, 394, 394, 394, 394, 394, 394, 394, 394,
2215 394, 413, 413, 413, 413, 413, 413, 413, 413, 413,
2216 429, 429, 429, 429, 429, 429, 429, 429, 429, 435,
2217 435, 435, 435, 435, 435, 435, 435, 435, 440, 440,
2218 440, 440, 440, 440, 440, 440, 440, 446, 446, 446,
2219 446, 446, 446, 446, 446, 446, 453, 453, 453, 453,
2220 453, 453, 453, 453, 453, 460, 460, 460, 460, 460,
2221 460, 460, 460, 460, 465, 465, 465, 465, 465, 465,
2222 465, 465, 465, 473, 473, 473, 473, 473, 473, 473,
2223 473, 473, 479, 479, 479, 479, 479, 479, 479, 479,
2225 479, 486, 486, 486, 486, 486, 486, 486, 486, 486,
2226 491, 491, 491, 491, 491, 491, 491, 491, 491, 497,
2227 497, 497, 497, 497, 497, 497, 497, 497, 503, 503,
2228 503, 503, 503, 503, 503, 503, 503, 510, 510, 510,
2229 510, 510, 510, 510, 510, 510, 517, 517, 517, 517,
2230 517, 517, 517, 517, 517, 525, 525, 525, 525, 525,
2231 525, 525, 525, 525, 529, 529, 529, 529, 529, 529,
2232 529, 529, 529, 535, 535, 535, 535, 535, 535, 535,
2233 535, 535, 539, 539, 539, 539, 539, 539, 539, 539,
2234 539, 546, 546, 546, 546, 546, 546, 546, 546, 546,
2236 551, 551, 551, 551, 551, 551, 551, 551, 551, 571,
2237 571, 571, 756, 758, 753, 571, 597, 597, 597, 752,
2238 750, 749, 597, 601, 601, 601, 748, 746, 744, 601,
2239 609, 609, 609, 742, 739, 738, 609, 621, 621, 621,
2240 737, 736, 734, 621, 627, 627, 627, 733, 732, 731,
2241 627, 641, 641, 641, 730, 728, 726, 641, 647, 647,
2242 647, 725, 723, 722, 647, 652, 652, 652, 719, 718,
2243 716, 652, 657, 657, 657, 580, 2694, 711, 657, 662,
2244 662, 662, 709, 708, 705, 662, 671, 671, 671, 704,
2245 703, 701, 671, 687, 687, 687, 699, 698, 696, 687,
2247 697, 697, 697, 694, 693, 692, 697, 702, 702, 702,
2248 691, 690, 689, 702, 710, 710, 710, 688, 686, 677,
2249 710, 717, 717, 717, 676, 675, 672, 717, 724, 724,
2250 724, 670, 667, 666, 724, 729, 729, 729, 665, 664,
2251 663, 729, 735, 735, 735, 661, 659, 658, 735, 743,
2252 743, 743, 656, 654, 653, 743, 747, 747, 747, 651,
2253 650, 649, 747, 751, 751, 751, 648, 646, 645, 751,
2254 755, 755, 755, 755, 755, 755, 755, 644, 755, 571,
2255 571, 571, 643, 642, 640, 571, 770, 2694, 588, 629,
2256 770, 597, 597, 597, 628, 626, 624, 597, 798, 623,
2258 622, 620, 798, 601, 601, 601, 591, 2694, 615, 601,
2259 805, 611, 610, 608, 805, 609, 609, 609, 607, 604,
2260 603, 609, 817, 602, 600, 598, 817, 621, 621, 621,
2261 596, 2694, 572, 621, 823, 570, 568, 562, 823, 627,
2262 627, 627, 561, 562, 561, 627, 828, 560, 559, 2694,
2263 828, 641, 641, 641, 2694, 2694, 2694, 641, 843, 2694,
2264 2694, 2694, 843, 647, 647, 647, 2694, 2694, 2694, 647,
2265 848, 2694, 2694, 2694, 848, 652, 652, 652, 2694, 2694,
2266 2694, 652, 853, 2694, 2694, 2694, 853, 657, 657, 657,
2267 2694, 2694, 2694, 657, 857, 2694, 2694, 2694, 857, 662,
2269 662, 662, 2694, 2694, 2694, 662, 866, 2694, 2694, 2694,
2270 866, 671, 671, 671, 2694, 2694, 2694, 671, 885, 2694,
2271 2694, 2694, 885, 687, 687, 687, 2694, 2694, 2694, 687,
2272 895, 2694, 2694, 2694, 895, 697, 697, 697, 2694, 2694,
2273 2694, 697, 900, 2694, 2694, 2694, 900, 702, 702, 702,
2274 2694, 2694, 2694, 702, 908, 2694, 2694, 2694, 908, 710,
2275 710, 710, 2694, 2694, 2694, 710, 913, 2694, 2694, 2694,
2276 913, 717, 717, 717, 2694, 2694, 2694, 717, 920, 2694,
2277 2694, 2694, 920, 724, 724, 724, 2694, 2694, 2694, 724,
2278 925, 2694, 2694, 2694, 925, 729, 729, 729, 2694, 2694,
2280 2694, 729, 930, 2694, 2694, 2694, 930, 735, 735, 735,
2281 2694, 2694, 2694, 735, 936, 2694, 2694, 2694, 936, 743,
2282 743, 743, 2694, 2694, 2694, 743, 940, 2694, 2694, 2694,
2283 940, 747, 747, 747, 2694, 2694, 2694, 747, 944, 2694,
2284 2694, 2694, 944, 751, 751, 751, 2694, 2694, 2694, 751,
2285 949, 2694, 2694, 2694, 949, 951, 951, 951, 951, 951,
2286 951, 951, 951, 951, 957, 2694, 2694, 2694, 2694, 957,
2287 571, 571, 571, 2694, 2694, 2694, 571, 966, 966, 966,
2288 966, 2694, 2694, 966, 966, 597, 597, 597, 2694, 2694,
2289 2694, 597, 997, 997, 997, 997, 2694, 2694, 997, 997,
2291 601, 601, 601, 2694, 2694, 2694, 601, 1007, 1007, 1007,
2292 1007, 2694, 2694, 1007, 1007, 609, 609, 609, 2694, 2694,
2293 2694, 609, 1023, 1023, 1023, 1023, 2694, 2694, 1023, 1023,
2294 621, 621, 621, 2694, 2694, 2694, 621, 1031, 1031, 1031,
2295 1031, 2694, 2694, 1031, 1031, 627, 627, 627, 2694, 2694,
2296 2694, 627, 1039, 1039, 1039, 1039, 2694, 2694, 1039, 1039,
2297 641, 641, 641, 2694, 2694, 2694, 641, 1056, 1056, 1056,
2298 1056, 2694, 2694, 1056, 1056, 647, 647, 647, 2694, 2694,
2299 2694, 647, 1064, 1064, 1064, 1064, 2694, 2694, 1064, 1064,
2300 652, 652, 652, 2694, 2694, 2694, 652, 1072, 1072, 1072,
2302 1072, 2694, 2694, 1072, 1072, 657, 657, 657, 2694, 2694,
2303 2694, 657, 1078, 1078, 1078, 1078, 2694, 2694, 1078, 1078,
2304 662, 662, 662, 2694, 2694, 2694, 662, 1090, 1090, 1090,
2305 1090, 2694, 2694, 1090, 1090, 671, 671, 671, 2694, 2694,
2306 2694, 671, 1116, 1116, 1116, 1116, 2694, 2694, 1116, 1116,
2307 687, 687, 687, 2694, 2694, 2694, 687, 1131, 1131, 1131,
2308 1131, 2694, 2694, 1131, 1131, 697, 697, 697, 2694, 2694,
2309 2694, 697, 1139, 1139, 1139, 1139, 2694, 2694, 1139, 1139,
2310 702, 702, 702, 2694, 2694, 2694, 702, 1150, 1150, 1150,
2311 1150, 2694, 2694, 1150, 1150, 710, 710, 710, 710, 2694,
2313 710, 2694, 710, 1159, 1159, 1159, 1159, 2694, 2694, 1159,
2314 1159, 717, 717, 717, 717, 2694, 717, 2694, 717, 1171,
2315 1171, 1171, 1171, 2694, 2694, 1171, 1171, 724, 724, 724,
2316 2694, 2694, 2694, 724, 1179, 1179, 1179, 1179, 2694, 2694,
2317 1179, 1179, 729, 729, 729, 729, 2694, 729, 2694, 729,
2318 1189, 1189, 1189, 1189, 2694, 2694, 1189, 1189, 735, 735,
2319 735, 2694, 2694, 2694, 735, 1197, 1197, 1197, 1197, 2694,
2320 2694, 1197, 1197, 743, 743, 743, 2694, 2694, 2694, 743,
2321 1203, 1203, 1203, 1203, 2694, 2694, 1203, 1203, 1210, 1210,
2322 1210, 1210, 2694, 2694, 1210, 1210, 751, 751, 751, 2694,
2324 2694, 2694, 751, 1218, 1218, 1218, 1218, 2694, 2694, 1218,
2325 1218, 951, 951, 951, 951, 951, 951, 951, 951, 951,
2326 957, 2694, 957, 2694, 2694, 957, 571, 571, 571, 2694,
2327 2694, 2694, 571, 966, 966, 966, 966, 2694, 2694, 966,
2328 966, 597, 597, 597, 597, 2694, 597, 2694, 597, 997,
2329 997, 997, 997, 2694, 2694, 997, 997, 601, 601, 601,
2330 601, 2694, 601, 2694, 601, 1007, 1007, 1007, 1007, 2694,
2331 2694, 1007, 1007, 609, 609, 609, 2694, 2694, 2694, 609,
2332 1023, 1023, 1023, 1023, 2694, 2694, 1023, 1023, 621, 621,
2333 621, 2694, 2694, 2694, 621, 1031, 1031, 1031, 1031, 2694,
2335 2694, 1031, 1031, 627, 627, 627, 2694, 2694, 2694, 627,
2336 1039, 1039, 1039, 1039, 2694, 2694, 1039, 1039, 641, 641,
2337 641, 2694, 2694, 2694, 641, 1056, 1056, 1056, 1056, 2694,
2338 2694, 1056, 1056, 647, 647, 647, 2694, 2694, 2694, 647,
2339 1064, 1064, 1064, 1064, 2694, 2694, 1064, 1064, 652, 652,
2340 652, 652, 2694, 652, 2694, 652, 1072, 1072, 1072, 1072,
2341 2694, 2694, 1072, 1072, 657, 657, 657, 657, 2694, 657,
2342 2694, 657, 1078, 1078, 1078, 1078, 2694, 2694, 1078, 1078,
2343 662, 662, 662, 2694, 2694, 2694, 662, 1090, 1090, 1090,
2344 1090, 2694, 2694, 1090, 1090, 671, 671, 671, 2694, 2694,
2346 2694, 671, 1116, 1116, 1116, 1116, 2694, 2694, 1116, 1116,
2347 687, 687, 687, 2694, 2694, 2694, 687, 1131, 1131, 1131,
2348 1131, 2694, 2694, 1131, 1131, 697, 697, 697, 2694, 2694,
2349 2694, 697, 1139, 1139, 1139, 1139, 2694, 2694, 1139, 1139,
2350 702, 702, 702, 2694, 2694, 2694, 702, 1150, 1150, 1150,
2351 1150, 2694, 2694, 1150, 1150, 710, 710, 710, 2694, 2694,
2352 2694, 710, 1159, 1159, 1159, 1159, 2694, 2694, 1159, 1159,
2353 717, 717, 717, 2694, 2694, 2694, 717, 1171, 1171, 1171,
2354 1171, 2694, 2694, 1171, 1171, 724, 724, 724, 2694, 2694,
2355 2694, 724, 1179, 1179, 1179, 1179, 2694, 2694, 1179, 1179,
2357 729, 729, 729, 2694, 2694, 2694, 729, 1189, 1189, 1189,
2358 1189, 2694, 2694, 1189, 1189, 735, 735, 735, 2694, 2694,
2359 2694, 735, 1197, 1197, 1197, 1197, 2694, 2694, 1197, 1197,
2360 743, 743, 743, 2694, 2694, 2694, 743, 1203, 1203, 1203,
2361 1203, 2694, 2694, 1203, 1203, 1210, 1210, 1210, 1210, 2694,
2362 2694, 1210, 1210, 751, 751, 751, 2694, 2694, 2694, 751,
2363 1218, 1218, 1218, 1218, 2694, 2694, 1218, 1218, 951, 951,
2364 951, 951, 951, 951, 951, 951, 951, 1392, 1392, 1392,
2365 1392, 1392, 1392, 1392, 1392, 1392, 571, 571, 571, 2694,
2366 2694, 2694, 571, 966, 966, 966, 966, 2694, 2694, 966,
2368 966, 997, 997, 997, 997, 2694, 2694, 997, 997, 601,
2369 601, 601, 2694, 2694, 2694, 601, 1007, 1007, 1007, 1007,
2370 2694, 2694, 1007, 1007, 609, 609, 609, 2694, 2694, 2694,
2371 609, 1023, 1023, 1023, 1023, 2694, 2694, 1023, 1023, 621,
2372 621, 621, 2694, 2694, 2694, 621, 1031, 1031, 1031, 1031,
2373 2694, 2694, 1031, 1031, 627, 627, 627, 2694, 2694, 2694,
2374 627, 641, 641, 641, 2694, 2694, 2694, 641, 1056, 1056,
2375 1056, 1056, 2694, 2694, 1056, 1056, 647, 647, 647, 2694,
2376 2694, 2694, 647, 1064, 1064, 1064, 1064, 2694, 2694, 1064,
2377 1064, 1072, 1072, 1072, 1072, 2694, 2694, 1072, 1072, 657,
2379 657, 657, 2694, 2694, 2694, 657, 1078, 1078, 1078, 1078,
2380 2694, 2694, 1078, 1078, 662, 662, 662, 2694, 2694, 2694,
2381 662, 1090, 1090, 1090, 1090, 2694, 2694, 1090, 1090, 671,
2382 671, 671, 2694, 2694, 2694, 671, 1116, 1116, 1116, 1116,
2383 2694, 2694, 1116, 1116, 687, 687, 687, 2694, 2694, 2694,
2384 687, 1131, 1131, 1131, 1131, 2694, 2694, 1131, 1131, 697,
2385 697, 697, 2694, 2694, 2694, 697, 1139, 1139, 1139, 1139,
2386 2694, 2694, 1139, 1139, 702, 702, 702, 2694, 2694, 2694,
2387 702, 1150, 1150, 1150, 1150, 2694, 2694, 1150, 1150, 710,
2388 710, 710, 2694, 2694, 2694, 710, 1159, 1159, 1159, 1159,
2390 2694, 2694, 1159, 1159, 717, 717, 717, 2694, 2694, 2694,
2391 717, 1171, 1171, 1171, 1171, 2694, 2694, 1171, 1171, 724,
2392 724, 724, 2694, 2694, 2694, 724, 1179, 1179, 1179, 1179,
2393 2694, 2694, 1179, 1179, 729, 729, 729, 2694, 2694, 2694,
2394 729, 1189, 1189, 1189, 1189, 2694, 2694, 1189, 1189, 735,
2395 735, 735, 2694, 2694, 2694, 735, 1197, 1197, 1197, 1197,
2396 2694, 2694, 1197, 1197, 743, 743, 743, 743, 2694, 743,
2397 2694, 743, 1203, 1203, 1203, 1203, 2694, 2694, 1203, 1203,
2398 1210, 1210, 1210, 1210, 2694, 2694, 1210, 1210, 751, 751,
2399 751, 751, 2694, 751, 2694, 751, 1218, 1218, 1218, 1218,
2401 2694, 2694, 1218, 1218, 951, 951, 951, 951, 951, 951,
2402 951, 951, 951, 1392, 1392, 1392, 1392, 1392, 1392, 1392,
2403 1392, 1392, 571, 571, 571, 2694, 2694, 2694, 571, 966,
2404 966, 966, 966, 2694, 2694, 966, 966, 997, 997, 997,
2405 997, 2694, 2694, 997, 997, 601, 601, 601, 2694, 2694,
2406 2694, 601, 1007, 1007, 1007, 1007, 2694, 2694, 1007, 1007,
2407 609, 609, 609, 2694, 2694, 2694, 609, 1023, 1023, 1023,
2408 1023, 2694, 2694, 1023, 1023, 621, 621, 621, 2694, 2694,
2409 2694, 621, 1031, 1031, 1031, 1031, 2694, 2694, 1031, 1031,
2410 627, 627, 627, 2694, 2694, 2694, 627, 641, 641, 641,
2412 2694, 2694, 2694, 641, 1056, 1056, 1056, 1056, 2694, 2694,
2413 1056, 1056, 647, 647, 647, 647, 2694, 647, 2694, 647,
2414 1064, 1064, 1064, 1064, 2694, 2694, 1064, 1064, 1072, 1072,
2415 1072, 1072, 2694, 2694, 1072, 1072, 657, 657, 657, 657,
2416 2694, 657, 2694, 657, 1078, 1078, 1078, 1078, 2694, 2694,
2417 1078, 1078, 662, 662, 662, 2694, 2694, 2694, 662, 1090,
2418 1090, 1090, 1090, 2694, 2694, 1090, 1090, 671, 671, 671,
2419 2694, 2694, 2694, 671, 1116, 1116, 1116, 1116, 2694, 2694,
2420 1116, 1116, 687, 687, 687, 2694, 2694, 2694, 687, 1131,
2421 1131, 1131, 1131, 2694, 2694, 1131, 1131, 697, 697, 697,
2423 2694, 2694, 2694, 697, 1139, 1139, 1139, 1139, 2694, 2694,
2424 1139, 1139, 702, 702, 702, 2694, 2694, 2694, 702, 1150,
2425 1150, 1150, 1150, 2694, 2694, 1150, 1150, 710, 710, 710,
2426 2694, 2694, 2694, 710, 1159, 1159, 1159, 1159, 2694, 2694,
2427 1159, 1159, 717, 717, 717, 717, 2694, 717, 2694, 717,
2428 1171, 1171, 1171, 1171, 2694, 2694, 1171, 1171, 724, 724,
2429 724, 2694, 2694, 2694, 724, 1179, 1179, 1179, 1179, 2694,
2430 2694, 1179, 1179, 729, 729, 729, 729, 2694, 729, 2694,
2431 729, 1189, 1189, 1189, 1189, 2694, 2694, 1189, 1189, 735,
2432 735, 735, 2694, 2694, 2694, 735, 1197, 1197, 1197, 1197,
2434 2694, 2694, 1197, 1197, 1203, 1203, 1203, 1203, 2694, 2694,
2435 1203, 1203, 1210, 1210, 1210, 1210, 2694, 2694, 1210, 1210,
2436 1218, 1218, 1218, 1218, 2694, 2694, 1218, 1218, 951, 951,
2437 951, 951, 951, 951, 951, 951, 951, 1392, 1392, 1392,
2438 1392, 1392, 1392, 1392, 1392, 1392, 571, 571, 571, 571,
2439 2694, 571, 2694, 571, 966, 966, 966, 966, 2694, 2694,
2440 966, 966, 997, 997, 997, 997, 2694, 2694, 997, 997,
2441 601, 601, 601, 2694, 2694, 2694, 601, 1007, 1007, 1007,
2442 1007, 2694, 2694, 1007, 1007, 609, 609, 609, 2694, 2694,
2443 2694, 609, 1023, 1023, 1023, 1023, 2694, 2694, 1023, 1023,
2445 621, 621, 621, 621, 2694, 621, 2694, 621, 1031, 1031,
2446 1031, 1031, 2694, 2694, 1031, 1031, 627, 627, 627, 627,
2447 2694, 627, 2694, 627, 641, 641, 641, 641, 2694, 641,
2448 2694, 641, 1056, 1056, 1056, 1056, 2694, 2694, 1056, 1056,
2449 1064, 1064, 1064, 1064, 2694, 2694, 1064, 1064, 1072, 1072,
2450 1072, 1072, 2694, 2694, 1072, 1072, 1078, 1078, 1078, 1078,
2451 2694, 2694, 1078, 1078, 662, 662, 662, 2694, 2694, 2694,
2452 662, 671, 671, 671, 2694, 2694, 2694, 671, 1116, 1116,
2453 1116, 1116, 2694, 2694, 1116, 1116, 687, 687, 687, 2694,
2454 2694, 2694, 687, 697, 697, 697, 2694, 2694, 2694, 697,
2456 1139, 1139, 1139, 1139, 2694, 2694, 1139, 1139, 702, 702,
2457 702, 2694, 2694, 2694, 702, 710, 710, 710, 2694, 2694,
2458 2694, 710, 1159, 1159, 1159, 1159, 2694, 2694, 1159, 1159,
2459 717, 717, 717, 2694, 2694, 2694, 717, 1171, 1171, 1171,
2460 1171, 2694, 2694, 1171, 1171, 724, 724, 724, 2694, 2694,
2461 2694, 724, 1179, 1179, 1179, 1179, 2694, 2694, 1179, 1179,
2462 1189, 1189, 1189, 1189, 2694, 2694, 1189, 1189, 735, 735,
2463 735, 2694, 2694, 2694, 735, 1197, 1197, 1197, 1197, 2694,
2464 2694, 1197, 1197, 1203, 1203, 1203, 1203, 2694, 2694, 1203,
2465 1203, 1210, 1210, 1210, 1210, 2694, 2694, 1210, 1210, 951,
2467 951, 951, 951, 951, 951, 951, 951, 951, 1392, 1392,
2468 1392, 1392, 1392, 1392, 1392, 1392, 1392, 966, 966, 966,
2469 966, 2694, 2694, 966, 966, 997, 997, 997, 997, 2694,
2470 2694, 997, 997, 601, 601, 601, 2694, 2694, 2694, 601,
2471 609, 609, 609, 2694, 2694, 2694, 609, 1023, 1023, 1023,
2472 1023, 2694, 2694, 1023, 1023, 1031, 1031, 1031, 1031, 2694,
2473 2694, 1031, 1031, 1056, 1056, 1056, 1056, 2694, 2694, 1056,
2474 1056, 1064, 1064, 1064, 1064, 2694, 2694, 1064, 1064, 1078,
2475 1078, 1078, 1078, 2694, 2694, 1078, 1078, 662, 662, 662,
2476 2694, 2694, 2694, 662, 671, 671, 671, 2694, 2694, 2694,
2478 671, 1116, 1116, 1116, 1116, 2694, 2694, 1116, 1116, 687,
2479 687, 687, 2694, 2694, 2694, 687, 697, 697, 697, 2694,
2480 2694, 2694, 697, 1139, 1139, 1139, 1139, 2694, 2694, 1139,
2481 1139, 702, 702, 702, 2694, 2694, 2694, 702, 710, 710,
2482 710, 2694, 2694, 2694, 710, 717, 717, 717, 2694, 2694,
2483 2694, 717, 1171, 1171, 1171, 1171, 2694, 2694, 1171, 1171,
2484 724, 724, 724, 2694, 2694, 2694, 724, 1179, 1179, 1179,
2485 1179, 2694, 2694, 1179, 1179, 1189, 1189, 1189, 1189, 2694,
2486 2694, 1189, 1189, 735, 735, 735, 735, 2694, 735, 2694,
2487 735, 1197, 1197, 1197, 1197, 2694, 2694, 1197, 1197, 1203,
2489 1203, 1203, 1203, 2694, 2694, 1203, 1203, 1210, 1210, 1210,
2490 1210, 2694, 2694, 1210, 1210, 951, 951, 951, 951, 951,
2491 951, 951, 951, 951, 1392, 1392, 1392, 1392, 1392, 1392,
2492 1392, 1392, 1392, 966, 966, 966, 966, 2694, 2694, 966,
2493 966, 997, 997, 997, 997, 2694, 2694, 997, 997, 601,
2494 601, 601, 2694, 2694, 2694, 601, 609, 609, 609, 609,
2495 2694, 609, 2694, 609, 2362, 2362, 2362, 2362, 2362, 2362,
2496 2362, 2362, 2362, 2363, 2363, 2363, 2363, 2363, 2363, 2363,
2497 2363, 2363, 2406, 2406, 2406, 2406, 2406, 2406, 2406, 2406,
2498 2406, 2409, 2409, 2409, 2409, 2409, 2409, 2409, 2409, 2409,
2500 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2437, 2439,
2501 2439, 2439, 2439, 2439, 2439, 2439, 2439, 2439, 221, 2694,
2502 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
2503 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
2504 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
2505 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
2506 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
2507 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
2508 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
2513 static yyconst flex_int16_t yy_chk[9692] =
2515 0, 3, 3, 3, 4, 4, 4, 5, 5, 5,
2516 6, 6, 6, 7, 7, 7, 11, 3, 9, 12,
2517 4, 10, 0, 5, 0, 9, 6, 0, 10, 7,
2518 8, 8, 8, 226, 11, 13, 13, 12, 14, 14,
2519 13, 13, 299, 14, 14, 227, 8, 17, 17, 226,
2520 13, 15, 15, 14, 15, 230, 15, 16, 16, 264,
2521 16, 227, 16, 18, 18, 264, 15, 19, 19, 19,
2522 333, 230, 16, 20, 20, 20, 23, 23, 23, 24,
2523 24, 24, 582, 19, 25, 25, 25, 299, 582, 20,
2524 327, 17, 23, 299, 582, 24, 224, 224, 224, 327,
2526 25, 225, 225, 225, 229, 229, 229, 18, 21, 21,
2527 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
2528 21, 21, 21, 333, 21, 21, 21, 21, 21, 26,
2529 26, 26, 27, 27, 27, 28, 28, 28, 259, 29,
2530 29, 29, 30, 30, 30, 26, 330, 1445, 27, 248,
2531 253, 28, 259, 21, 21, 29, 330, 269, 30, 31,
2532 31, 31, 250, 250, 250, 248, 253, 257, 257, 257,
2533 266, 266, 266, 269, 1448, 31, 21, 22, 22, 22,
2534 22, 22, 22, 22, 22, 22, 22, 22, 22, 22,
2535 22, 22, 348, 22, 22, 22, 22, 22, 32, 32,
2537 32, 33, 33, 33, 34, 34, 34, 248, 35, 35,
2538 35, 36, 36, 36, 32, 260, 335, 33, 335, 1455,
2539 34, 360, 22, 22, 35, 260, 261, 36, 37, 37,
2540 37, 38, 38, 38, 39, 39, 39, 40, 40, 40,
2541 41, 41, 41, 348, 37, 22, 410, 38, 279, 410,
2542 39, 329, 290, 40, 260, 261, 41, 42, 42, 42,
2543 260, 273, 273, 273, 279, 262, 260, 261, 290, 261,
2544 260, 261, 360, 42, 43, 43, 43, 43, 43, 43,
2545 43, 43, 43, 43, 43, 43, 43, 43, 43, 329,
2546 43, 43, 43, 43, 43, 45, 45, 45, 46, 46,
2548 46, 53, 53, 53, 262, 294, 1456, 49, 49, 294,
2549 306, 45, 49, 294, 46, 1457, 262, 53, 262, 43,
2550 43, 396, 49, 276, 276, 276, 306, 43, 44, 44,
2551 44, 44, 44, 44, 44, 44, 44, 44, 44, 44,
2552 44, 44, 44, 326, 44, 44, 44, 44, 44, 1461,
2553 326, 49, 406, 50, 50, 54, 54, 54, 50, 55,
2554 55, 55, 56, 56, 56, 287, 287, 287, 50, 396,
2555 464, 54, 406, 44, 44, 55, 564, 464, 56, 564,
2556 1464, 44, 47, 47, 47, 47, 47, 47, 47, 47,
2557 47, 47, 47, 47, 47, 47, 47, 50, 47, 47,
2559 47, 47, 47, 57, 57, 57, 58, 58, 58, 59,
2560 59, 59, 296, 60, 60, 60, 63, 63, 63, 57,
2561 318, 340, 58, 274, 284, 59, 296, 47, 47, 60,
2562 274, 284, 63, 1479, 1480, 47, 318, 340, 47, 274,
2563 284, 298, 298, 298, 47, 48, 48, 48, 48, 48,
2564 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
2565 519, 48, 48, 48, 48, 48, 64, 64, 64, 67,
2566 67, 67, 68, 68, 68, 397, 69, 69, 69, 70,
2567 70, 70, 64, 353, 365, 67, 313, 371, 68, 376,
2568 48, 48, 69, 313, 371, 70, 1488, 519, 48, 353,
2570 365, 48, 313, 371, 240, 376, 1491, 48, 51, 51,
2571 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
2572 51, 51, 51, 397, 51, 51, 51, 51, 51, 71,
2573 71, 71, 72, 72, 72, 73, 73, 73, 398, 74,
2574 74, 74, 75, 75, 75, 71, 240, 387, 72, 403,
2575 382, 73, 240, 51, 51, 74, 240, 382, 75, 1492,
2576 452, 240, 51, 387, 51, 403, 382, 51, 303, 303,
2577 303, 452, 51, 51, 52, 52, 52, 52, 52, 52,
2578 52, 52, 52, 52, 52, 52, 52, 52, 52, 398,
2579 52, 52, 52, 52, 52, 76, 76, 76, 77, 77,
2581 77, 78, 78, 78, 456, 79, 79, 79, 80, 80,
2582 80, 76, 1391, 888, 77, 415, 411, 78, 888, 52,
2583 52, 79, 415, 1496, 80, 312, 312, 312, 52, 411,
2584 52, 415, 482, 52, 315, 315, 315, 1391, 52, 52,
2585 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
2586 61, 61, 61, 61, 61, 456, 61, 61, 61, 61,
2587 61, 81, 81, 81, 82, 82, 82, 83, 83, 83,
2588 412, 84, 84, 84, 85, 85, 85, 81, 1503, 482,
2589 82, 412, 412, 83, 478, 61, 61, 84, 420, 431,
2590 85, 478, 61, 323, 323, 323, 431, 61, 337, 337,
2592 337, 346, 346, 346, 420, 431, 61, 62, 62, 62,
2593 62, 62, 62, 62, 62, 62, 62, 62, 62, 62,
2594 62, 62, 555, 62, 62, 62, 62, 62, 86, 86,
2595 86, 87, 87, 87, 88, 88, 88, 555, 89, 89,
2596 89, 90, 90, 90, 86, 577, 436, 87, 577, 1504,
2597 88, 1505, 62, 62, 89, 447, 442, 90, 1506, 62,
2598 1509, 331, 436, 442, 62, 350, 350, 350, 358, 358,
2599 358, 447, 442, 62, 65, 65, 65, 65, 65, 65,
2600 65, 65, 65, 65, 65, 65, 65, 65, 65, 331,
2601 65, 65, 65, 65, 65, 91, 91, 91, 92, 92,
2603 92, 93, 93, 93, 331, 94, 94, 94, 95, 95,
2604 95, 91, 461, 474, 92, 586, 1513, 93, 586, 65,
2605 65, 94, 506, 1516, 95, 362, 362, 362, 461, 474,
2606 65, 370, 370, 370, 373, 373, 373, 521, 65, 66,
2607 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
2608 66, 66, 66, 66, 1518, 66, 66, 66, 66, 66,
2609 96, 96, 96, 99, 99, 99, 100, 100, 100, 506,
2610 101, 101, 101, 102, 102, 102, 96, 487, 498, 99,
2611 1520, 1521, 100, 542, 66, 66, 101, 1522, 521, 102,
2612 381, 381, 381, 487, 498, 66, 384, 384, 384, 395,
2614 395, 395, 1525, 66, 97, 97, 97, 97, 97, 97,
2615 97, 97, 97, 97, 97, 97, 97, 97, 97, 1527,
2616 97, 97, 97, 97, 97, 103, 103, 103, 104, 104,
2617 104, 105, 105, 105, 542, 106, 106, 106, 400, 400,
2618 400, 103, 511, 526, 104, 1529, 493, 105, 581, 97,
2619 97, 106, 581, 493, 97, 414, 414, 414, 511, 526,
2620 97, 467, 493, 97, 98, 98, 98, 98, 98, 98,
2621 98, 98, 98, 98, 98, 98, 98, 98, 98, 1534,
2622 98, 98, 98, 98, 98, 109, 109, 109, 110, 110,
2623 110, 111, 111, 111, 1539, 112, 112, 112, 417, 417,
2625 417, 109, 520, 536, 110, 547, 531, 111, 467, 98,
2626 98, 112, 467, 531, 98, 430, 430, 430, 605, 536,
2627 98, 547, 531, 98, 107, 107, 107, 107, 107, 107,
2628 107, 107, 107, 107, 107, 107, 107, 107, 107, 520,
2629 107, 107, 107, 107, 107, 113, 113, 113, 114, 114,
2630 114, 115, 115, 115, 605, 116, 116, 116, 119, 119,
2631 119, 113, 1543, 1544, 114, 583, 587, 115, 669, 107,
2632 107, 116, 669, 1546, 119, 433, 433, 433, 583, 587,
2633 107, 441, 441, 441, 444, 444, 444, 454, 454, 454,
2634 107, 108, 108, 108, 108, 108, 108, 108, 108, 108,
2636 108, 108, 108, 108, 108, 108, 1558, 108, 108, 108,
2637 108, 108, 120, 120, 120, 123, 123, 123, 124, 124,
2638 124, 1561, 127, 127, 127, 128, 128, 128, 120, 589,
2639 757, 123, 589, 591, 124, 1562, 108, 108, 127, 591,
2640 1556, 128, 458, 458, 458, 591, 757, 108, 466, 466,
2641 466, 471, 471, 471, 480, 480, 480, 108, 117, 117,
2642 117, 117, 117, 117, 117, 117, 117, 117, 117, 117,
2643 117, 117, 117, 1556, 117, 117, 117, 117, 117, 129,
2644 129, 129, 130, 130, 130, 131, 131, 131, 1563, 132,
2645 132, 132, 133, 133, 133, 129, 593, 1564, 130, 593,
2647 594, 131, 1566, 117, 117, 132, 594, 1567, 133, 484,
2648 484, 484, 594, 1569, 117, 492, 492, 492, 117, 118,
2649 118, 118, 118, 118, 118, 118, 118, 118, 118, 118,
2650 118, 118, 118, 118, 1570, 118, 118, 118, 118, 118,
2651 134, 134, 134, 137, 137, 137, 138, 138, 138, 1571,
2652 141, 141, 141, 142, 142, 142, 134, 664, 1575, 137,
2653 664, 595, 138, 1577, 118, 118, 141, 595, 1580, 142,
2654 495, 495, 495, 595, 1581, 118, 504, 504, 504, 118,
2655 121, 121, 121, 121, 121, 121, 121, 121, 121, 121,
2656 121, 121, 121, 121, 121, 1582, 121, 121, 121, 121,
2658 121, 145, 145, 145, 146, 146, 146, 149, 149, 149,
2659 1584, 150, 150, 150, 151, 151, 151, 145, 954, 1586,
2660 146, 1555, 954, 149, 1221, 121, 121, 150, 1554, 1587,
2661 151, 508, 508, 508, 518, 518, 518, 523, 523, 523,
2662 121, 530, 530, 530, 1221, 1554, 121, 122, 122, 122,
2663 122, 122, 122, 122, 122, 122, 122, 122, 122, 122,
2664 122, 122, 1555, 122, 122, 122, 122, 122, 152, 152,
2665 152, 153, 153, 153, 154, 154, 154, 982, 155, 155,
2666 155, 156, 156, 156, 152, 1589, 1591, 153, 1594, 982,
2667 154, 1595, 122, 122, 155, 1597, 1598, 156, 533, 533,
2669 533, 540, 540, 540, 544, 544, 544, 122, 552, 552,
2670 552, 1599, 1601, 122, 125, 125, 125, 125, 125, 125,
2671 125, 125, 125, 125, 125, 125, 125, 125, 125, 1607,
2672 125, 125, 125, 125, 125, 159, 159, 159, 160, 160,
2673 160, 161, 161, 161, 1596, 162, 162, 162, 1608, 553,
2674 1600, 159, 1596, 1611, 160, 1624, 553, 161, 1600, 125,
2675 125, 162, 125, 619, 125, 553, 554, 554, 554, 619,
2676 125, 563, 563, 563, 1625, 619, 125, 1630, 1631, 125,
2677 126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
2678 126, 126, 126, 126, 126, 1632, 126, 126, 126, 126,
2680 126, 163, 163, 163, 164, 164, 164, 165, 165, 165,
2681 1636, 166, 166, 166, 603, 603, 603, 163, 1637, 635,
2682 164, 638, 639, 165, 871, 126, 126, 166, 126, 563,
2683 126, 603, 635, 871, 638, 639, 126, 760, 760, 760,
2684 871, 760, 126, 1643, 1650, 126, 135, 135, 135, 135,
2685 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
2686 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
2687 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
2688 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
2689 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
2691 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
2692 135, 135, 135, 135, 135, 135, 135, 135, 139, 139,
2693 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
2694 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
2695 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
2696 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
2697 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
2698 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
2699 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
2700 143, 143, 143, 143, 143, 143, 143, 143, 143, 143,
2702 143, 143, 143, 143, 143, 1651, 143, 143, 143, 143,
2703 143, 169, 169, 169, 170, 170, 170, 171, 171, 171,
2704 993, 172, 172, 172, 611, 611, 611, 169, 1652, 1656,
2705 170, 1662, 993, 171, 1666, 143, 143, 172, 1669, 1671,
2706 143, 611, 969, 969, 969, 1673, 143, 144, 144, 144,
2707 144, 144, 144, 144, 144, 144, 144, 144, 144, 144,
2708 144, 144, 1675, 144, 144, 144, 144, 144, 173, 173,
2709 173, 174, 174, 174, 175, 175, 175, 1026, 176, 176,
2710 176, 628, 628, 628, 173, 1450, 1676, 174, 1677, 1026,
2711 175, 1450, 144, 144, 176, 1450, 1680, 144, 628, 1450,
2713 772, 772, 772, 144, 147, 147, 147, 147, 147, 147,
2714 147, 147, 147, 147, 147, 147, 147, 147, 147, 1682,
2715 147, 147, 147, 147, 147, 179, 179, 179, 180, 180,
2716 180, 183, 183, 183, 1687, 184, 184, 184, 185, 185,
2717 185, 179, 1689, 1696, 180, 1697, 1698, 183, 1700, 147,
2718 147, 184, 1711, 147, 185, 791, 791, 791, 1711, 1714,
2719 147, 1719, 147, 772, 1713, 1720, 830, 830, 830, 147,
2720 148, 148, 148, 148, 148, 148, 148, 148, 148, 148,
2721 148, 148, 148, 148, 148, 1724, 148, 148, 148, 148,
2722 148, 186, 186, 186, 187, 187, 187, 188, 188, 188,
2724 1725, 189, 189, 189, 190, 190, 190, 186, 1726, 1713,
2725 187, 1731, 1737, 188, 1739, 148, 148, 189, 791, 148,
2726 190, 1740, 1743, 802, 802, 802, 148, 802, 148, 830,
2727 802, 836, 836, 836, 1746, 148, 157, 157, 157, 157,
2728 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
2729 157, 1750, 157, 157, 157, 157, 157, 193, 193, 193,
2730 194, 194, 194, 195, 195, 195, 1751, 196, 196, 196,
2731 197, 197, 197, 193, 1752, 1753, 194, 1754, 1755, 195,
2732 1756, 157, 157, 196, 1757, 1758, 197, 157, 810, 810,
2733 810, 1759, 810, 1764, 836, 810, 989, 989, 989, 1780,
2735 1781, 157, 158, 158, 158, 158, 158, 158, 158, 158,
2736 158, 158, 158, 158, 158, 158, 158, 1784, 158, 158,
2737 158, 158, 158, 198, 198, 198, 199, 199, 199, 200,
2738 200, 200, 1782, 203, 203, 203, 204, 204, 204, 198,
2739 1782, 1785, 199, 1783, 1786, 200, 1790, 158, 158, 203,
2740 1796, 1783, 204, 158, 826, 826, 826, 1797, 826, 1798,
2741 1803, 826, 1235, 1235, 1235, 1807, 1808, 158, 167, 167,
2742 167, 167, 167, 167, 167, 167, 167, 167, 167, 167,
2743 167, 167, 167, 1809, 167, 167, 167, 167, 167, 207,
2744 207, 207, 208, 208, 208, 209, 209, 209, 1712, 210,
2746 210, 210, 211, 211, 211, 207, 1451, 1811, 208, 1814,
2747 1815, 209, 1451, 167, 167, 210, 1451, 1818, 211, 167,
2748 1451, 1819, 167, 841, 841, 841, 1822, 841, 1829, 1712,
2749 841, 1831, 1844, 167, 168, 168, 168, 168, 168, 168,
2750 168, 168, 168, 168, 168, 168, 168, 168, 168, 1849,
2751 168, 168, 168, 168, 168, 212, 212, 212, 213, 213,
2752 213, 214, 214, 214, 1816, 217, 217, 217, 218, 218,
2753 218, 212, 1816, 1848, 213, 1857, 1865, 214, 1817, 168,
2754 168, 217, 1866, 324, 218, 168, 1817, 325, 168, 1237,
2755 1237, 1237, 1870, 324, 1872, 1849, 332, 325, 1884, 168,
2757 177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
2758 177, 177, 177, 177, 177, 1848, 177, 177, 177, 177,
2759 177, 324, 643, 643, 643, 325, 1885, 324, 1886, 1887,
2760 324, 648, 648, 648, 1888, 1237, 324, 324, 325, 643,
2761 332, 332, 325, 332, 1889, 177, 177, 1890, 648, 332,
2762 332, 177, 1240, 1240, 1240, 1891, 177, 178, 178, 178,
2763 178, 178, 178, 178, 178, 178, 178, 178, 178, 178,
2764 178, 178, 1892, 178, 178, 178, 178, 178, 653, 653,
2765 653, 665, 665, 665, 674, 674, 674, 676, 676, 676,
2766 691, 691, 691, 1893, 1899, 653, 1901, 1908, 665, 1909,
2768 1910, 674, 178, 178, 676, 1911, 1912, 691, 178, 1243,
2769 1243, 1243, 1913, 178, 181, 181, 181, 181, 181, 181,
2770 181, 181, 181, 181, 181, 181, 181, 181, 181, 1914,
2771 181, 181, 181, 181, 181, 699, 699, 699, 704, 704,
2772 704, 726, 726, 726, 748, 748, 748, 752, 752, 752,
2773 1916, 1917, 699, 1922, 1923, 704, 1925, 1926, 726, 181,
2774 181, 748, 1927, 1928, 752, 181, 1935, 1936, 181, 846,
2775 846, 846, 1937, 846, 1938, 1939, 846, 1940, 1941, 181,
2776 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
2777 182, 182, 182, 182, 182, 1942, 182, 182, 182, 182,
2779 182, 770, 770, 770, 771, 771, 771, 1944, 1959, 798,
2780 798, 798, 799, 799, 799, 801, 801, 801, 1964, 770,
2781 1968, 1969, 771, 1970, 1973, 182, 182, 798, 1977, 1978,
2782 799, 182, 801, 1960, 182, 851, 851, 851, 1979, 851,
2783 1959, 1980, 851, 1981, 1982, 182, 191, 191, 191, 191,
2784 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
2785 191, 771, 191, 191, 191, 191, 191, 805, 805, 805,
2786 1960, 799, 806, 806, 806, 1983, 809, 809, 809, 811,
2787 811, 811, 817, 817, 817, 805, 1984, 813, 813, 813,
2788 806, 191, 191, 809, 1985, 1986, 811, 1988, 1989, 191,
2790 817, 191, 1994, 191, 813, 1252, 1252, 1252, 1277, 1277,
2791 1277, 191, 192, 192, 192, 192, 192, 192, 192, 192,
2792 192, 192, 192, 192, 192, 192, 192, 1995, 192, 192,
2793 192, 192, 192, 1996, 1998, 806, 823, 823, 823, 2002,
2794 2003, 824, 824, 824, 2006, 2010, 818, 818, 818, 825,
2795 825, 825, 2011, 2013, 823, 2016, 2017, 192, 192, 824,
2796 1288, 1288, 1288, 2018, 818, 192, 825, 192, 2019, 192,
2797 1289, 1289, 1289, 1406, 1406, 1406, 2021, 192, 201, 201,
2798 201, 201, 201, 201, 201, 201, 201, 201, 201, 201,
2799 201, 201, 201, 818, 201, 201, 201, 201, 201, 828,
2801 828, 828, 2024, 2026, 824, 2048, 2049, 829, 829, 829,
2802 840, 840, 840, 843, 843, 843, 1289, 828, 844, 844,
2803 844, 2050, 2051, 201, 201, 829, 2057, 840, 845, 845,
2804 845, 843, 2043, 863, 863, 863, 844, 863, 2044, 2058,
2805 863, 1408, 1408, 1408, 829, 845, 201, 202, 202, 202,
2806 202, 202, 202, 202, 202, 202, 202, 202, 202, 202,
2807 202, 202, 2045, 202, 202, 202, 202, 202, 848, 848,
2808 848, 2043, 849, 849, 849, 2044, 2059, 850, 850, 850,
2809 853, 853, 853, 844, 2060, 2061, 848, 854, 854, 854,
2810 849, 2062, 202, 202, 850, 857, 857, 857, 853, 873,
2812 873, 873, 2063, 873, 2045, 854, 873, 876, 876, 876,
2813 2064, 876, 2065, 857, 876, 202, 205, 205, 205, 205,
2814 205, 205, 205, 205, 205, 205, 205, 205, 205, 205,
2815 205, 2066, 205, 205, 205, 205, 205, 849, 858, 858,
2816 858, 862, 862, 862, 1410, 1410, 1410, 854, 866, 866,
2817 866, 867, 867, 867, 2068, 2069, 858, 2073, 862, 2079,
2818 2080, 205, 205, 891, 891, 891, 866, 891, 2084, 867,
2819 891, 2087, 205, 206, 206, 206, 206, 206, 206, 206,
2820 206, 206, 206, 206, 206, 206, 206, 206, 2095, 206,
2821 206, 206, 206, 206, 2096, 872, 872, 872, 875, 875,
2823 875, 2097, 858, 877, 877, 877, 885, 885, 885, 2121,
2824 2122, 867, 872, 2123, 2126, 875, 2117, 2118, 206, 206,
2825 877, 899, 899, 899, 885, 899, 2127, 2129, 899, 206,
2826 215, 215, 215, 215, 215, 215, 215, 215, 215, 215,
2827 215, 215, 215, 215, 215, 2117, 215, 215, 215, 215,
2828 215, 890, 890, 890, 892, 892, 892, 2054, 2118, 895,
2829 895, 895, 2130, 886, 886, 886, 2133, 2054, 890, 2134,
2830 2054, 892, 896, 896, 896, 215, 215, 895, 898, 898,
2831 898, 886, 1412, 1412, 1412, 2135, 215, 904, 904, 904,
2832 896, 904, 2136, 2138, 904, 898, 2139, 2140, 215, 216,
2834 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
2835 216, 216, 216, 216, 2141, 216, 216, 216, 216, 216,
2836 886, 2145, 2153, 896, 900, 900, 900, 2105, 901, 901,
2837 901, 903, 903, 903, 908, 908, 908, 2105, 909, 909,
2838 909, 2119, 900, 2105, 216, 216, 901, 2154, 903, 910,
2839 910, 910, 908, 2155, 2159, 216, 909, 911, 911, 911,
2840 912, 912, 912, 913, 913, 913, 910, 216, 258, 2167,
2841 2128, 914, 914, 914, 911, 258, 2169, 912, 916, 916,
2842 916, 913, 2119, 2128, 258, 258, 2177, 2178, 901, 914,
2843 917, 917, 917, 909, 2179, 916, 2180, 2181, 918, 918,
2845 918, 1357, 1357, 1357, 919, 919, 919, 917, 2182, 920,
2846 920, 920, 258, 258, 258, 918, 2188, 2192, 912, 258,
2847 258, 919, 258, 258, 2193, 2131, 258, 920, 258, 258,
2848 258, 914, 921, 921, 921, 923, 923, 923, 2131, 2197,
2849 917, 924, 924, 924, 2187, 924, 2198, 1357, 924, 2199,
2850 921, 2188, 923, 2200, 917, 925, 925, 925, 926, 926,
2851 926, 2201, 919, 927, 927, 927, 928, 928, 928, 921,
2852 929, 929, 929, 925, 2202, 2203, 926, 930, 930, 930,
2853 927, 2204, 2206, 928, 931, 931, 931, 929, 936, 936,
2854 936, 2187, 937, 937, 937, 930, 940, 940, 940, 941,
2856 941, 941, 931, 942, 942, 942, 936, 946, 946, 946,
2857 937, 2207, 2208, 926, 940, 2209, 928, 941, 2210, 2211,
2858 942, 943, 943, 943, 946, 943, 2212, 2213, 943, 2220,
2859 928, 944, 944, 944, 945, 945, 945, 947, 947, 947,
2860 2055, 947, 2224, 2225, 947, 949, 949, 949, 2226, 944,
2861 2055, 2227, 945, 2055, 931, 937, 950, 950, 950, 965,
2862 965, 965, 941, 949, 966, 966, 966, 968, 968, 968,
2863 995, 995, 995, 2234, 950, 2237, 2239, 965, 996, 996,
2864 996, 2244, 966, 2245, 2246, 968, 2239, 995, 997, 997,
2865 997, 999, 999, 999, 945, 2247, 996, 2106, 1000, 1000,
2867 1000, 1001, 1001, 1001, 2248, 1001, 997, 2106, 1001, 999,
2868 1004, 1004, 1004, 2106, 968, 1000, 1006, 1006, 1006, 950,
2869 1007, 1007, 1007, 2240, 1009, 1009, 1009, 1004, 1011, 1011,
2870 1011, 2242, 1011, 2240, 1006, 1011, 2249, 2258, 1007, 2243,
2871 999, 2242, 1009, 1014, 1014, 1014, 1015, 1015, 1015, 2243,
2872 1015, 2259, 2260, 1015, 2261, 1016, 1016, 1016, 2262, 2263,
2873 1014, 1017, 1017, 1017, 1020, 1020, 1020, 1022, 1022, 1022,
2874 1004, 1009, 1016, 1018, 1018, 1018, 2264, 1018, 1017, 2265,
2875 1018, 1020, 1023, 1023, 1023, 1022, 1025, 1025, 1025, 1028,
2876 1028, 1028, 1030, 1030, 1030, 1031, 1031, 1031, 2251, 2268,
2878 1023, 1033, 1033, 1033, 1025, 2269, 1028, 1034, 1034, 1034,
2879 1030, 1034, 2271, 1031, 1034, 1038, 1038, 1038, 2272, 1033,
2880 1039, 1039, 1039, 1041, 1041, 1041, 2273, 1051, 1051, 1051,
2881 2275, 1051, 2251, 1038, 1051, 1055, 1055, 1055, 1039, 2282,
2882 2283, 1041, 1056, 1056, 1056, 1025, 2284, 2286, 1033, 1058,
2883 1058, 1058, 2292, 1055, 1059, 1059, 1059, 2293, 1059, 2294,
2884 1056, 1059, 1063, 1063, 1063, 2295, 2296, 1058, 1064, 1064,
2885 1064, 1066, 1066, 1066, 1067, 1067, 1067, 2297, 1067, 2298,
2886 1063, 1067, 1070, 1070, 1070, 2299, 1064, 2300, 2301, 1066,
2887 1071, 1071, 1071, 1072, 1072, 1072, 1074, 1074, 1074, 1070,
2889 1075, 1075, 1075, 2303, 1076, 1076, 1076, 2304, 1071, 1058,
2890 2316, 1072, 2317, 2308, 1074, 2318, 2319, 1075, 1077, 1077,
2891 1077, 1076, 1078, 1078, 1078, 1080, 1080, 1080, 1083, 1083,
2892 1083, 1066, 1076, 1089, 1089, 1089, 1077, 1084, 1084, 1084,
2893 1078, 1084, 2320, 1080, 1084, 1083, 1090, 1090, 1090, 2321,
2894 2322, 1089, 1092, 1092, 1092, 2308, 1099, 1099, 1099, 2323,
2895 1099, 2327, 1074, 1099, 1090, 1102, 1102, 1102, 2328, 2329,
2896 1092, 1103, 1103, 1103, 2330, 1103, 2331, 2332, 1103, 1106,
2897 1106, 1106, 1102, 2336, 1107, 1107, 1107, 2337, 1107, 2338,
2898 1080, 1107, 1115, 1115, 1115, 2341, 1106, 1116, 1116, 1116,
2900 1118, 1118, 1118, 2346, 1123, 1123, 1123, 2347, 1123, 2348,
2901 1115, 1123, 1126, 1126, 1126, 1116, 1092, 2349, 1118, 1127,
2902 1127, 1127, 2350, 1127, 2351, 2352, 1127, 2353, 2354, 1126,
2903 1130, 1130, 1130, 1131, 1131, 1131, 1133, 1133, 1133, 1135,
2904 1135, 1135, 2355, 1135, 2356, 2357, 1135, 2364, 1130, 2358,
2905 2360, 1131, 2367, 2368, 1133, 1138, 1138, 1138, 1139, 1139,
2906 1139, 1141, 1141, 1141, 2360, 2371, 1118, 1143, 1143, 1143,
2907 2373, 1143, 2374, 1138, 1143, 2361, 1139, 2376, 2377, 1141,
2908 1149, 1149, 1149, 1150, 1150, 1150, 2361, 1133, 1152, 1152,
2909 1152, 1153, 1153, 1153, 2358, 1154, 1154, 1154, 1149, 1154,
2911 2380, 1150, 1154, 1155, 1155, 1155, 1152, 2381, 1153, 1156,
2912 1156, 1156, 2382, 1156, 2386, 2394, 1156, 1158, 1158, 1158,
2913 1155, 1159, 1159, 1159, 1161, 1161, 1161, 1141, 1163, 1163,
2914 1163, 1167, 1167, 1167, 2384, 1158, 1164, 1164, 1164, 1159,
2915 1164, 2396, 1161, 1164, 2398, 1163, 2384, 1152, 1167, 1168,
2916 1168, 1168, 2400, 1168, 2408, 2406, 1168, 1170, 1170, 1170,
2917 1171, 1171, 1171, 1173, 1173, 1173, 1175, 1175, 1175, 2406,
2918 1175, 2407, 2407, 1175, 2410, 1170, 2385, 2391, 1171, 2412,
2919 2413, 1173, 1178, 1178, 1178, 1179, 1179, 1179, 2385, 2391,
2920 1161, 1181, 1181, 1181, 1182, 1182, 1182, 1183, 1183, 1183,
2922 1178, 1183, 2414, 1179, 1183, 1186, 1186, 1186, 2392, 1181,
2923 2409, 1182, 1187, 1187, 1187, 2415, 1187, 2424, 2426, 1187,
2924 2392, 2409, 1186, 1188, 1188, 1188, 1173, 1189, 1189, 1189,
2925 1191, 1191, 1191, 2429, 1193, 1193, 1193, 1196, 1196, 1196,
2926 2405, 1188, 1197, 1197, 1197, 1189, 2431, 2437, 1191, 2438,
2927 1181, 1193, 1199, 1199, 1199, 1196, 1202, 1202, 1202, 2439,
2928 1197, 1203, 1203, 1203, 1205, 1205, 1205, 1209, 1209, 1209,
2929 1199, 1206, 1206, 1206, 1202, 1206, 2441, 2442, 1206, 1203,
2930 2405, 2423, 1205, 2443, 2425, 1209, 1210, 1210, 1210, 2428,
2931 2430, 1191, 1212, 1212, 1212, 1213, 1213, 1213, 2444, 1213,
2933 2423, 2451, 1213, 2425, 1210, 1217, 1217, 1217, 2428, 2430,
2934 1212, 2452, 1199, 1218, 1218, 1218, 2453, 1205, 1220, 1220,
2935 1220, 2454, 2455, 1217, 1222, 1222, 1222, 1229, 1229, 1229,
2936 2456, 1218, 1255, 1255, 1255, 2459, 1220, 1256, 1256, 1256,
2937 2460, 1256, 1222, 1222, 1256, 1229, 1257, 1257, 1257, 1255,
2938 2461, 1212, 1258, 1258, 1258, 1259, 1259, 1259, 2462, 1259,
2939 2463, 2464, 1259, 2466, 1257, 1262, 1262, 1262, 2468, 1258,
2940 1264, 1264, 1264, 2470, 1264, 2478, 2480, 1264, 1220, 1267,
2941 1267, 1267, 2481, 1262, 1268, 1268, 1268, 2478, 1268, 2479,
2942 2482, 1268, 1229, 1269, 1269, 1269, 1267, 1269, 2483, 2484,
2944 1269, 2479, 2485, 1257, 1273, 1273, 1273, 2489, 1274, 1274,
2945 1274, 2490, 1274, 2491, 1262, 1274, 1276, 1276, 1276, 2492,
2946 2493, 1273, 1279, 1279, 1279, 1280, 1280, 1280, 2494, 1280,
2947 2497, 2495, 1280, 2498, 1276, 1281, 1281, 1281, 2499, 1279,
2948 1282, 1282, 1282, 1284, 1284, 1284, 1295, 1295, 1295, 1296,
2949 1296, 1296, 1281, 1298, 1298, 1298, 2495, 2500, 1282, 2501,
2950 2502, 1284, 2503, 1295, 2504, 2505, 1276, 1296, 1299, 1299,
2951 1299, 1298, 1300, 1300, 1300, 2506, 1300, 2507, 2508, 1300,
2952 1301, 1301, 1301, 2509, 2510, 1299, 1302, 1302, 1302, 1282,
2953 1303, 1303, 1303, 2511, 1303, 2512, 2513, 1303, 1301, 1305,
2955 1305, 1305, 2514, 1302, 1308, 1308, 1308, 1309, 1309, 1309,
2956 2518, 1309, 1296, 2519, 1309, 2520, 1298, 1305, 1310, 1310,
2957 1310, 1308, 2521, 1311, 1311, 1311, 1312, 1312, 1312, 1316,
2958 1316, 1316, 1319, 1319, 1319, 1310, 1324, 1324, 1324, 1301,
2959 1311, 1320, 1320, 1320, 1312, 1320, 1316, 2522, 1320, 1319,
2960 1321, 1321, 1321, 1324, 1321, 2515, 2523, 1321, 2524, 1305,
2961 1331, 1331, 1331, 1333, 1333, 1333, 1336, 1336, 1336, 1311,
2962 1336, 2525, 2526, 1336, 2515, 1339, 1339, 1339, 1331, 2527,
2963 1333, 1341, 1341, 1341, 1343, 1343, 1343, 1347, 1347, 1347,
2964 2528, 1312, 1339, 2529, 1348, 1348, 1348, 2530, 2531, 1341,
2966 2532, 2533, 1343, 2534, 1347, 2535, 1349, 1349, 1349, 2536,
2967 1349, 2537, 1348, 1349, 1352, 1352, 1352, 2538, 1352, 2539,
2968 2540, 1352, 2541, 2534, 1331, 1356, 1356, 1356, 1358, 1358,
2969 1358, 2542, 1358, 1347, 2543, 1358, 2544, 2545, 1363, 1363,
2970 1363, 2546, 1363, 1356, 1341, 1363, 1367, 1367, 1367, 1343,
2971 1348, 1369, 1369, 1369, 1370, 1370, 1370, 2547, 1370, 2548,
2972 2549, 1370, 2550, 2552, 1367, 2551, 1375, 1375, 1375, 1369,
2973 1375, 2551, 2553, 1375, 1378, 1378, 1378, 1380, 1380, 1380,
2974 1381, 1381, 1381, 2554, 1381, 2555, 2556, 1381, 2557, 2559,
2975 1356, 2560, 1378, 2562, 1380, 1384, 1384, 1384, 1386, 1386,
2977 1386, 1387, 1387, 1387, 2563, 2565, 1367, 1369, 1388, 1388,
2978 1388, 2566, 2569, 1384, 2570, 1386, 1389, 1389, 1389, 1387,
2979 2571, 1378, 1390, 1390, 1390, 2572, 1388, 1393, 1393, 1393,
2980 1400, 1400, 1400, 1389, 1415, 1415, 1415, 1417, 1417, 1417,
2981 1390, 1419, 1419, 1419, 1384, 1393, 2574, 2568, 1400, 1424,
2982 1424, 1424, 1426, 1426, 1426, 1427, 1427, 1427, 2576, 1427,
2983 1388, 2568, 1427, 1430, 1430, 1430, 2578, 1387, 1431, 1431,
2984 1431, 2580, 1431, 2582, 2583, 1431, 2584, 2585, 1393, 2586,
2985 2587, 1430, 1400, 1390, 1436, 1436, 1436, 1419, 1438, 1438,
2986 1438, 2588, 1438, 2589, 1393, 1438, 2591, 2593, 1426, 2595,
2988 1417, 2596, 1436, 1442, 1442, 1442, 2597, 1442, 2598, 2607,
2989 1442, 1441, 1446, 1446, 1446, 1447, 1447, 1447, 1449, 1449,
2990 1449, 2599, 1449, 2615, 2608, 1449, 1452, 1452, 1452, 1430,
2991 1446, 2615, 1453, 1453, 1453, 1436, 1453, 1437, 1435, 1453,
2992 1454, 1454, 1454, 1452, 1458, 1458, 1458, 1459, 1459, 1459,
2993 1460, 1460, 1460, 1462, 1462, 1462, 2607, 2599, 1454, 1463,
2994 1463, 1463, 1465, 1465, 1465, 2613, 1466, 1466, 1466, 2613,
2995 1466, 2608, 1446, 1466, 1467, 1467, 1467, 2611, 2600, 1465,
2996 1468, 1468, 1468, 1469, 1469, 1469, 1470, 1470, 1470, 2612,
2997 1470, 1454, 1467, 1470, 1473, 1473, 1473, 1468, 1474, 1474,
2999 1474, 1469, 1474, 2621, 2609, 1474, 1477, 1477, 1477, 1478,
3000 1478, 1478, 1473, 1460, 2600, 2622, 1462, 1484, 1484, 1484,
3001 2611, 1467, 1463, 1477, 1481, 1481, 1481, 1478, 1481, 2614,
3002 1469, 1481, 2612, 2614, 1484, 1485, 1485, 1485, 1434, 1485,
3003 2621, 2616, 1485, 1486, 1486, 1486, 1487, 1487, 1487, 2616,
3004 1487, 2609, 2622, 1487, 1425, 1489, 1489, 1489, 2629, 1473,
3005 1486, 1490, 1490, 1490, 1493, 1493, 1493, 1494, 1494, 1494,
3006 2619, 1494, 1478, 1489, 1494, 1495, 1495, 1495, 1497, 1497,
3007 1497, 1493, 1497, 2623, 2610, 1497, 1500, 1500, 1500, 1501,
3008 1501, 1501, 1495, 1501, 2620, 2629, 1501, 1502, 1502, 1502,
3010 1507, 1507, 1507, 1500, 1508, 1508, 1508, 1510, 1510, 1510,
3011 1423, 1511, 1511, 1511, 1502, 1511, 2619, 1507, 1511, 1512,
3012 1512, 1512, 1508, 2623, 1510, 1514, 1514, 1514, 1515, 1515,
3013 1515, 2610, 1515, 2617, 2624, 1515, 1512, 1517, 1517, 1517,
3014 2620, 2617, 1514, 1519, 1519, 1519, 1523, 1523, 1523, 1524,
3015 1524, 1524, 2618, 1524, 2665, 1517, 1524, 1526, 1526, 1526,
3016 2618, 1519, 2665, 1523, 1528, 1528, 1528, 1422, 2627, 1508,
3017 1530, 1530, 1530, 2631, 2624, 1526, 1531, 1531, 1531, 1532,
3018 1532, 1532, 1528, 1533, 1533, 1533, 2625, 1530, 1535, 1535,
3019 1535, 2626, 2632, 1531, 1519, 2630, 1532, 1536, 1536, 1536,
3021 2628, 1533, 1537, 1537, 1537, 2631, 1535, 1538, 1538, 1538,
3022 1545, 1545, 1545, 2627, 1536, 1528, 1540, 1540, 1540, 1537,
3023 1540, 2625, 1421, 1540, 2632, 1538, 2626, 1420, 1545, 1547,
3024 1547, 1547, 2630, 2637, 1535, 2633, 1548, 1548, 1548, 2634,
3025 1548, 2657, 1532, 1548, 2633, 2628, 1547, 1418, 2634, 1533,
3026 1549, 1549, 1549, 1416, 1550, 1550, 1550, 1551, 1551, 1551,
3027 2638, 1545, 1552, 1552, 1552, 2639, 1552, 2637, 1549, 1552,
3028 2657, 1538, 1550, 2645, 1551, 1553, 1553, 1553, 1559, 1559,
3029 1559, 1560, 1560, 1560, 1565, 1565, 1565, 1568, 1568, 1568,
3030 1572, 1572, 1572, 1553, 2638, 1559, 1573, 1573, 1573, 1560,
3032 1574, 1574, 1574, 1576, 1576, 1576, 2645, 2639, 1549, 1550,
3033 1578, 1578, 1578, 1579, 1579, 1579, 1583, 1583, 1583, 1585,
3034 1585, 1585, 1588, 1588, 1588, 1590, 1590, 1590, 1592, 1592,
3035 1592, 1593, 1593, 1593, 1605, 1605, 1605, 1585, 1414, 2635,
3036 1588, 1560, 1590, 1602, 1602, 1602, 1592, 1602, 1593, 2636,
3037 1602, 2640, 1605, 1606, 1606, 1606, 1609, 1609, 1609, 1610,
3038 1610, 1610, 1612, 1612, 1612, 1616, 1616, 1616, 2641, 1585,
3039 1606, 1613, 1613, 1613, 2635, 1613, 2642, 2661, 1613, 1612,
3040 1605, 2646, 2643, 1616, 2636, 2644, 1592, 1617, 1617, 1617,
3041 1618, 1618, 1618, 2640, 1618, 2649, 1413, 1618, 1619, 1619,
3043 1619, 1620, 1620, 1620, 1617, 1621, 1621, 1621, 1622, 1622,
3044 1622, 2661, 1622, 2641, 2646, 1622, 1619, 2643, 1616, 1620,
3045 2644, 2642, 1621, 1623, 1623, 1623, 1626, 1626, 1626, 2647,
3046 1626, 2648, 2649, 1626, 2650, 1629, 1629, 1629, 2647, 1629,
3047 2648, 1623, 1629, 1633, 1633, 1633, 1635, 1635, 1635, 2651,
3048 2655, 1619, 1638, 1638, 1638, 2662, 1638, 2653, 1411, 1638,
3049 2654, 1633, 1641, 1641, 1641, 1642, 1642, 1642, 2666, 1642,
3050 1623, 2650, 1642, 1644, 1644, 1644, 2666, 1644, 2652, 1641,
3051 1644, 1647, 1647, 1647, 1648, 1648, 1648, 2655, 1648, 2662,
3052 2651, 1648, 1649, 1649, 1649, 1653, 1653, 1653, 1647, 1654,
3054 1654, 1654, 2653, 1654, 2658, 2654, 1654, 1409, 1407, 1649,
3055 1405, 2663, 1653, 1655, 1655, 1655, 1657, 1657, 1657, 2652,
3056 1657, 2656, 2669, 1657, 1660, 1660, 1660, 1404, 1661, 1661,
3057 1661, 1655, 1661, 2658, 2667, 1661, 1663, 1663, 1663, 2668,
3058 1663, 1660, 2664, 1663, 1667, 1667, 1667, 1670, 1670, 1670,
3059 1672, 1672, 1672, 1674, 1674, 1674, 2663, 1674, 2656, 2669,
3060 1674, 2685, 1667, 2670, 1655, 1670, 1403, 1672, 1678, 1678,
3061 1678, 1681, 1681, 1681, 1683, 1683, 1683, 1684, 1684, 1684,
3062 2667, 1684, 2671, 1402, 1684, 2668, 1678, 2664, 2686, 1681,
3063 2672, 1683, 1685, 1685, 1685, 2675, 1672, 1686, 1686, 1686,
3065 2670, 1686, 1401, 2673, 1686, 1688, 1688, 1688, 2685, 1685,
3066 1670, 1690, 1690, 1690, 1691, 1691, 1691, 1692, 1692, 1692,
3067 2674, 1692, 2671, 1688, 1692, 1693, 1693, 1693, 2659, 1690,
3068 2672, 1691, 1694, 1694, 1694, 2686, 1694, 2659, 2673, 1694,
3069 2675, 2677, 1693, 1695, 1695, 1695, 1699, 1699, 1699, 1701,
3070 1701, 1701, 1399, 1701, 2660, 2674, 1701, 1704, 1704, 1704,
3071 1690, 1695, 2678, 2660, 1699, 1705, 1705, 1705, 2679, 1398,
3072 1688, 1395, 1706, 1706, 1706, 1704, 1706, 2680, 2677, 1706,
3073 1709, 1709, 1709, 1705, 1715, 1715, 1715, 1716, 1716, 1716,
3074 1392, 1716, 2689, 1385, 1716, 1717, 1717, 1717, 1709, 2678,
3076 2679, 1715, 1718, 1718, 1718, 1383, 2689, 1695, 1704, 2680,
3077 1699, 1382, 1379, 1717, 1721, 1721, 1721, 1374, 1705, 1722,
3078 1722, 1722, 1723, 1723, 1723, 1727, 1727, 1727, 1728, 1728,
3079 1728, 1729, 1729, 1729, 1730, 1730, 1730, 1732, 1732, 1732,
3080 1733, 1733, 1733, 1734, 1734, 1734, 1735, 1735, 1735, 1736,
3081 1736, 1736, 1738, 1738, 1738, 1741, 1741, 1741, 1717, 1744,
3082 1744, 1744, 1745, 1745, 1745, 2681, 1745, 1373, 1368, 1745,
3083 1738, 1366, 1362, 1741, 2681, 2683, 1744, 1747, 1747, 1747,
3084 1730, 1748, 1748, 1748, 1749, 1749, 1749, 2676, 1749, 1361,
3085 1355, 1749, 1760, 1760, 1760, 1747, 1346, 2684, 1748, 1761,
3087 1761, 1761, 1345, 1738, 1762, 1762, 1762, 2683, 1762, 1344,
3088 1760, 1762, 1763, 1763, 1763, 2687, 1761, 1765, 1765, 1765,
3089 1766, 1766, 1766, 1767, 1767, 1767, 1768, 1768, 1768, 2684,
3090 1768, 2688, 2676, 1768, 1769, 1769, 1769, 1773, 1773, 1773,
3091 1767, 1760, 1770, 1770, 1770, 2682, 1770, 2687, 2690, 1770,
3092 1342, 1340, 1769, 1335, 2682, 1773, 1774, 1774, 1774, 2690,
3093 1776, 1776, 1776, 2688, 1776, 1334, 1766, 1776, 1779, 1779,
3094 1779, 1787, 1787, 1787, 1774, 1787, 1332, 1330, 1787, 1329,
3095 1791, 1791, 1791, 1328, 1791, 1769, 1779, 1791, 1773, 1794,
3096 1794, 1794, 1795, 1795, 1795, 1327, 1795, 1326, 1325, 1795,
3098 1799, 1799, 1799, 1318, 1799, 1317, 1794, 1799, 1802, 1802,
3099 1802, 1804, 1804, 1804, 1315, 1804, 1314, 1313, 1804, 1307,
3100 1306, 1779, 1810, 1810, 1810, 1304, 1802, 1812, 1812, 1812,
3101 1813, 1813, 1813, 1297, 1813, 1294, 1293, 1813, 1292, 1291,
3102 1810, 1820, 1820, 1820, 1812, 1823, 1823, 1823, 1290, 1823,
3103 1287, 1286, 1823, 1826, 1826, 1826, 1283, 1826, 1278, 1820,
3104 1826, 1830, 1830, 1830, 1832, 1832, 1832, 1275, 1833, 1833,
3105 1833, 1802, 1833, 1272, 1263, 1833, 1836, 1836, 1836, 1830,
3106 1836, 1261, 1832, 1836, 1839, 1839, 1839, 1840, 1840, 1840,
3107 1841, 1841, 1841, 1842, 1842, 1842, 1843, 1843, 1843, 1845,
3109 1845, 1845, 1839, 1260, 1840, 1254, 1253, 1841, 1251, 1250,
3110 1842, 1249, 1830, 1248, 1843, 1247, 1246, 1845, 1245, 1244,
3111 1839, 1846, 1846, 1846, 1847, 1847, 1847, 1242, 1241, 1832,
3112 1850, 1850, 1850, 1851, 1851, 1851, 1239, 1851, 1238, 1846,
3113 1851, 1841, 1847, 1854, 1854, 1854, 1855, 1855, 1855, 1236,
3114 1234, 1842, 1856, 1856, 1856, 1858, 1858, 1858, 1845, 1233,
3115 1843, 1854, 1859, 1859, 1859, 1860, 1860, 1860, 1861, 1861,
3116 1861, 1862, 1862, 1862, 1863, 1863, 1863, 1864, 1864, 1864,
3117 1867, 1867, 1867, 1868, 1868, 1868, 1869, 1869, 1869, 1871,
3118 1871, 1871, 1874, 1874, 1874, 1875, 1875, 1875, 1232, 1875,
3120 1231, 1854, 1875, 1878, 1878, 1878, 1230, 1871, 1228, 1874,
3121 1879, 1879, 1879, 1227, 1881, 1881, 1881, 1226, 1881, 1225,
3122 1878, 1881, 1894, 1894, 1894, 1895, 1895, 1895, 1879, 1895,
3123 1216, 1201, 1895, 1898, 1898, 1898, 1900, 1900, 1900, 1200,
3124 1894, 1902, 1902, 1902, 1195, 1902, 1194, 1192, 1902, 1905,
3125 1905, 1905, 1906, 1906, 1906, 1907, 1907, 1907, 1915, 1915,
3126 1915, 1185, 1918, 1918, 1918, 1184, 1918, 1905, 1878, 1918,
3127 1906, 1174, 1169, 1907, 1921, 1921, 1921, 1166, 1924, 1924,
3128 1924, 1165, 1894, 1929, 1929, 1929, 1931, 1931, 1931, 1162,
3129 1157, 1921, 1943, 1943, 1943, 1905, 1924, 1148, 1932, 1932,
3131 1932, 1929, 1932, 1931, 1147, 1932, 1907, 1945, 1945, 1945,
3132 1946, 1946, 1946, 1947, 1947, 1947, 1948, 1948, 1948, 1949,
3133 1949, 1949, 1950, 1950, 1950, 1945, 1950, 1946, 1146, 1950,
3134 1142, 1947, 1931, 1134, 1948, 1129, 1949, 1951, 1951, 1951,
3135 1952, 1952, 1952, 1953, 1953, 1953, 1954, 1954, 1954, 1955,
3136 1955, 1955, 1128, 1122, 1951, 1121, 1120, 1952, 1961, 1961,
3137 1961, 1953, 1956, 1956, 1956, 1119, 1114, 1955, 1958, 1958,
3138 1958, 1113, 1947, 1963, 1963, 1963, 1948, 1962, 1962, 1962,
3139 1956, 1965, 1965, 1965, 1112, 1111, 1958, 1966, 1966, 1966,
3140 1110, 1952, 1967, 1967, 1967, 1962, 1109, 1971, 1971, 1971,
3142 1974, 1974, 1974, 1975, 1975, 1975, 1108, 1975, 1098, 1097,
3143 1975, 1976, 1976, 1976, 1955, 1971, 1096, 1974, 1987, 1987,
3144 1987, 1990, 1990, 1990, 1991, 1991, 1991, 1095, 1976, 1958,
3145 1993, 1993, 1993, 2000, 2000, 2000, 1987, 1094, 1093, 1990,
3146 1088, 1087, 1991, 2001, 2001, 2001, 1082, 1081, 1993, 1062,
3147 2000, 2004, 2004, 2004, 2005, 2005, 2005, 1054, 2005, 1050,
3148 1049, 2005, 2007, 2007, 2007, 1048, 1976, 1047, 2004, 2008,
3149 2008, 2008, 2012, 2012, 2012, 1046, 1045, 1987, 1044, 2007,
3150 2014, 2014, 2014, 2023, 2023, 2023, 1990, 2008, 1043, 2012,
3151 1042, 2015, 2015, 2015, 1037, 2015, 1029, 2014, 2015, 1027,
3153 2023, 2025, 2025, 2025, 2027, 2027, 2027, 2029, 2029, 2029,
3154 2030, 2030, 2030, 1021, 2030, 1019, 1010, 2030, 2031, 2031,
3155 2031, 1005, 2027, 994, 2029, 2032, 2032, 2032, 2033, 2033,
3156 2033, 992, 2033, 991, 990, 2033, 2031, 2036, 2036, 2036,
3157 2037, 2037, 2037, 2032, 2037, 988, 987, 2037, 2038, 2038,
3158 2038, 2039, 2039, 2039, 2036, 2041, 2041, 2041, 2042, 2042,
3159 2042, 2046, 2046, 2046, 986, 2038, 2052, 2052, 2052, 2039,
3160 2053, 2053, 2053, 985, 2053, 984, 2042, 2053, 983, 2046,
3161 2056, 2056, 2056, 2052, 2067, 2067, 2067, 2070, 2070, 2070,
3162 981, 2032, 2071, 2071, 2071, 980, 979, 2056, 2074, 2074,
3164 2074, 978, 2067, 977, 976, 2070, 2077, 2077, 2077, 975,
3165 2071, 974, 2078, 2078, 2078, 2074, 2078, 973, 972, 2078,
3166 2081, 2081, 2081, 2077, 2081, 971, 970, 2081, 2085, 2085,
3167 2085, 2086, 2086, 2086, 964, 2086, 963, 962, 2086, 959,
3168 2056, 958, 957, 2067, 955, 2085, 2088, 2088, 2088, 2089,
3169 2089, 2089, 2090, 2090, 2090, 951, 2090, 2070, 948, 2090,
3170 2091, 2091, 2091, 2088, 939, 938, 2089, 2092, 2092, 2092,
3171 935, 2092, 934, 933, 2092, 932, 922, 2091, 2100, 2100,
3172 2100, 2101, 2101, 2101, 915, 2101, 907, 906, 2101, 2102,
3173 2102, 2102, 2103, 2103, 2103, 2100, 2104, 2104, 2104, 905,
3175 2104, 902, 897, 2104, 894, 893, 2102, 889, 887, 2103,
3176 2107, 2107, 2107, 2109, 2109, 2109, 2110, 2110, 2110, 884,
3177 2110, 883, 882, 2110, 2113, 2113, 2113, 881, 2107, 880,
3178 879, 2109, 2114, 2114, 2114, 878, 2114, 874, 870, 2114,
3179 869, 2113, 2115, 2115, 2115, 2120, 2120, 2120, 2124, 2124,
3180 2124, 2125, 2125, 2125, 868, 2125, 865, 864, 2125, 861,
3181 2115, 860, 2132, 2132, 2132, 2124, 2143, 2143, 2143, 2144,
3182 2144, 2144, 2146, 2146, 2146, 2148, 2148, 2148, 2109, 2132,
3183 2147, 2147, 2147, 859, 2143, 856, 855, 2149, 2149, 2149,
3184 2146, 2149, 2148, 852, 2149, 847, 842, 2147, 2150, 2150,
3186 2150, 839, 2150, 838, 837, 2150, 2156, 2156, 2156, 835,
3187 2156, 834, 833, 2156, 2160, 2160, 2160, 2143, 2161, 2161,
3188 2161, 2132, 2161, 832, 831, 2161, 2147, 827, 2162, 2162,
3189 2162, 2160, 2162, 2146, 822, 2162, 2165, 2165, 2165, 2166,
3190 2166, 2166, 821, 2166, 820, 819, 2166, 2168, 2168, 2168,
3191 2170, 2170, 2170, 2165, 2170, 816, 815, 2170, 2173, 2173,
3192 2173, 2174, 2174, 2174, 2168, 2174, 814, 812, 2174, 2175,
3193 2175, 2175, 2176, 2176, 2176, 2173, 2176, 808, 804, 2176,
3194 2183, 2183, 2183, 2184, 2184, 2184, 2175, 2184, 803, 800,
3195 2184, 2189, 2189, 2189, 2190, 2190, 2190, 797, 2183, 2191,
3197 2191, 2191, 796, 2194, 2194, 2194, 795, 2194, 2189, 2189,
3198 2194, 2205, 2205, 2205, 2214, 2214, 2214, 2215, 2215, 2215,
3199 2216, 2216, 2216, 2217, 2217, 2217, 794, 793, 2205, 792,
3200 790, 2183, 2214, 2218, 2218, 2218, 2219, 2219, 2219, 789,
3201 2219, 2217, 788, 2219, 2221, 2221, 2221, 787, 2221, 786,
3202 2218, 2221, 2228, 2228, 2228, 785, 2228, 784, 783, 2228,
3203 2231, 2231, 2231, 2214, 2231, 782, 781, 2231, 2235, 2235,
3204 2235, 2236, 2236, 2236, 2217, 2236, 780, 779, 2236, 2238,
3205 2238, 2238, 778, 2238, 777, 2235, 2238, 2241, 2241, 2241,
3206 776, 2241, 775, 774, 2241, 2250, 2250, 2250, 2252, 2252,
3208 2252, 2253, 2253, 2253, 2254, 2254, 2254, 773, 2254, 769,
3209 768, 2254, 766, 2250, 765, 2252, 2252, 764, 2253, 2253,
3210 763, 762, 2254, 2255, 2255, 2255, 2256, 2256, 2256, 2257,
3211 2257, 2257, 2266, 2266, 2266, 2267, 2267, 2267, 758, 2267,
3212 756, 755, 2267, 2276, 2276, 2276, 2277, 2277, 2277, 2266,
3213 2278, 2278, 2278, 2279, 2279, 2279, 754, 2279, 753, 749,
3214 2279, 2276, 2285, 2285, 2285, 2287, 2287, 2287, 2278, 2288,
3215 2288, 2288, 745, 2288, 744, 741, 2288, 740, 739, 2285,
3216 738, 737, 2287, 2291, 2291, 2291, 2306, 2306, 2306, 2309,
3217 2309, 2309, 2310, 2310, 2310, 736, 2310, 733, 732, 2310,
3219 2291, 2314, 2314, 2314, 2306, 731, 2309, 2309, 2276, 730,
3220 2310, 2311, 2311, 2311, 727, 2311, 725, 722, 2311, 2315,
3221 2315, 2315, 2333, 2333, 2333, 2334, 2334, 2334, 721, 2311,
3222 2312, 2312, 2312, 2312, 2312, 2312, 2312, 2312, 2312, 720,
3223 2333, 2312, 719, 2334, 718, 715, 2312, 2312, 2312, 2312,
3224 2312, 2324, 2324, 2324, 714, 2324, 713, 712, 2324, 2340,
3225 2340, 2340, 711, 2340, 708, 707, 2340, 706, 705, 2339,
3226 2339, 2339, 2342, 2342, 2342, 2312, 2312, 2313, 2313, 2313,
3227 2313, 2313, 2313, 2313, 2313, 2313, 2339, 703, 2313, 2342,
3228 2344, 2344, 2344, 2313, 2313, 2313, 2313, 2313, 2343, 2343,
3230 2343, 700, 2343, 698, 695, 2343, 694, 2344, 2345, 2345,
3231 2345, 693, 2345, 692, 690, 2345, 689, 2359, 2359, 2359,
3232 688, 2359, 2313, 2313, 2359, 685, 684, 2378, 2378, 2378,
3233 2411, 2411, 2411, 683, 682, 2359, 2362, 2362, 2362, 2362,
3234 2362, 2362, 2362, 2362, 2362, 2378, 681, 2362, 2411, 2411,
3235 680, 679, 2362, 2362, 2362, 2362, 2362, 2383, 2383, 2383,
3236 678, 2383, 677, 675, 2383, 2387, 2387, 2387, 673, 2387,
3237 672, 668, 2387, 2390, 2390, 2390, 667, 2390, 666, 663,
3238 2390, 2362, 2362, 2363, 2363, 2363, 2363, 2363, 2363, 2363,
3239 2363, 2363, 660, 659, 2363, 2420, 2420, 2420, 658, 2363,
3241 2363, 2363, 2363, 2363, 2421, 2421, 2421, 2422, 2422, 2422,
3242 655, 654, 2420, 2427, 2427, 2427, 2436, 2436, 2436, 650,
3243 649, 2421, 645, 644, 2422, 2440, 2440, 2440, 2363, 2363,
3244 2427, 2445, 2445, 2445, 2436, 2446, 2446, 2446, 642, 2446,
3245 637, 636, 2446, 2440, 2447, 2447, 2447, 634, 2445, 2448,
3246 2448, 2448, 633, 2448, 632, 631, 2448, 2449, 2449, 2449,
3247 630, 2447, 2450, 2450, 2450, 629, 2450, 625, 624, 2450,
3248 2457, 2457, 2457, 623, 2449, 622, 2440, 2458, 2458, 2458,
3249 618, 2458, 617, 616, 2458, 615, 614, 2457, 2465, 2465,
3250 2465, 2471, 2471, 2471, 613, 2471, 612, 610, 2471, 607,
3252 2474, 2474, 2474, 606, 2474, 604, 2465, 2474, 2477, 2477,
3253 2477, 602, 2477, 599, 598, 2477, 2486, 2486, 2486, 592,
3254 2486, 590, 588, 2486, 585, 2465, 2581, 2581, 2581, 2590,
3255 2590, 2590, 584, 2590, 580, 579, 2590, 2691, 2691, 2691,
3256 2692, 2692, 2692, 578, 2581, 576, 575, 2590, 574, 573,
3257 572, 569, 568, 567, 566, 2691, 565, 559, 2692, 2695,
3258 2695, 2695, 2695, 2695, 2695, 2695, 2695, 2695, 2696, 2696,
3259 2696, 2696, 2696, 2696, 2696, 2696, 2696, 2697, 2697, 2697,
3260 2697, 2697, 2697, 2697, 2697, 2697, 2698, 2698, 2698, 2698,
3261 2698, 2698, 2698, 2698, 2698, 2699, 2699, 2699, 2699, 2699,
3263 2699, 2699, 2699, 2699, 2700, 2700, 2700, 2700, 2700, 2700,
3264 2700, 2700, 2700, 2701, 2701, 2701, 2701, 2701, 2701, 2701,
3265 2701, 2701, 2702, 2702, 2702, 2702, 2702, 2702, 2702, 2702,
3266 2702, 2703, 2703, 2703, 2703, 2703, 2703, 2703, 2703, 2703,
3267 2704, 2704, 2704, 2704, 2704, 2704, 2704, 2704, 2704, 2705,
3268 2705, 2705, 2705, 2705, 2705, 2705, 2705, 2705, 2706, 2706,
3269 2706, 2706, 2706, 2706, 2706, 2706, 2706, 2707, 2707, 2707,
3270 2707, 2707, 2707, 2707, 2707, 2707, 2708, 2708, 2708, 2708,
3271 2708, 2708, 2708, 2708, 2708, 2709, 2709, 2709, 2709, 2709,
3272 2709, 2709, 2709, 2709, 2710, 2710, 2710, 2710, 2710, 2710,
3274 2710, 2710, 2710, 2711, 2711, 2711, 2711, 2711, 2711, 2711,
3275 2711, 2711, 2712, 2712, 2712, 2712, 2712, 2712, 2712, 2712,
3276 2712, 2713, 2713, 2713, 2713, 2713, 2713, 2713, 2713, 2713,
3277 2714, 2714, 2714, 2714, 2714, 2714, 2714, 2714, 2714, 2715,
3278 2715, 2715, 2715, 2715, 2715, 2715, 2715, 2715, 2716, 2716,
3279 2716, 2716, 2716, 2716, 2716, 2716, 2716, 2717, 2717, 2717,
3280 2717, 2717, 2717, 2717, 2717, 2717, 2718, 2718, 2718, 2718,
3281 2718, 2718, 2718, 2718, 2718, 2719, 2719, 2719, 2719, 2719,
3282 2719, 2719, 2719, 2719, 2720, 2720, 2720, 2720, 2720, 2720,
3283 2720, 2720, 2720, 2721, 2721, 2721, 2721, 2721, 2721, 2721,
3285 2721, 2721, 2722, 2722, 2722, 2722, 2722, 2722, 2722, 2722,
3286 2722, 2723, 2723, 2723, 2723, 2723, 2723, 2723, 2723, 2723,
3287 2724, 2724, 2724, 2724, 2724, 2724, 2724, 2724, 2724, 2725,
3288 2725, 2725, 2725, 2725, 2725, 2725, 2725, 2725, 2726, 2726,
3289 2726, 2726, 2726, 2726, 2726, 2726, 2726, 2727, 2727, 2727,
3290 2727, 2727, 2727, 2727, 2727, 2727, 2728, 2728, 2728, 2728,
3291 2728, 2728, 2728, 2728, 2728, 2729, 2729, 2729, 2729, 2729,
3292 2729, 2729, 2729, 2729, 2730, 2730, 2730, 2730, 2730, 2730,
3293 2730, 2730, 2730, 2731, 2731, 2731, 2731, 2731, 2731, 2731,
3294 2731, 2731, 2732, 2732, 2732, 2732, 2732, 2732, 2732, 2732,
3296 2732, 2733, 2733, 2733, 2733, 2733, 2733, 2733, 2733, 2733,
3297 2734, 2734, 2734, 2734, 2734, 2734, 2734, 2734, 2734, 2735,
3298 2735, 2735, 2735, 2735, 2735, 2735, 2735, 2735, 2736, 2736,
3299 2736, 2736, 2736, 2736, 2736, 2736, 2736, 2737, 2737, 2737,
3300 2737, 2737, 2737, 2737, 2737, 2737, 2738, 2738, 2738, 2738,
3301 2738, 2738, 2738, 2738, 2738, 2739, 2739, 2739, 2739, 2739,
3302 2739, 2739, 2739, 2739, 2740, 2740, 2740, 2740, 2740, 2740,
3303 2740, 2740, 2740, 2741, 2741, 2741, 2741, 2741, 2741, 2741,
3304 2741, 2741, 2742, 2742, 2742, 2742, 2742, 2742, 2742, 2742,
3305 2742, 2743, 2743, 2743, 2743, 2743, 2743, 2743, 2743, 2743,
3307 2744, 2744, 2744, 2744, 2744, 2744, 2744, 2744, 2744, 2745,
3308 2745, 2745, 558, 556, 550, 2745, 2746, 2746, 2746, 549,
3309 545, 541, 2746, 2747, 2747, 2747, 538, 534, 528, 2747,
3310 2748, 2748, 2748, 524, 516, 515, 2748, 2749, 2749, 2749,
3311 514, 513, 509, 2749, 2750, 2750, 2750, 505, 502, 501,
3312 2750, 2751, 2751, 2751, 500, 496, 490, 2751, 2752, 2752,
3313 2752, 489, 485, 481, 2752, 2753, 2753, 2753, 477, 476,
3314 472, 2753, 2754, 2754, 2754, 469, 468, 463, 2754, 2755,
3315 2755, 2755, 459, 455, 451, 2755, 2756, 2756, 2756, 450,
3316 449, 445, 2756, 2757, 2757, 2757, 439, 438, 434, 2757,
3318 2758, 2758, 2758, 428, 427, 426, 2758, 2759, 2759, 2759,
3319 425, 424, 423, 2759, 2760, 2760, 2760, 422, 418, 409,
3320 2760, 2761, 2761, 2761, 408, 407, 405, 2761, 2762, 2762,
3321 2762, 401, 393, 392, 2762, 2763, 2763, 2763, 391, 390,
3322 389, 2763, 2764, 2764, 2764, 385, 379, 378, 2764, 2765,
3323 2765, 2765, 374, 368, 367, 2765, 2766, 2766, 2766, 363,
3324 359, 356, 2766, 2767, 2767, 2767, 355, 351, 347, 2767,
3325 2768, 2768, 2768, 2768, 2768, 2768, 2768, 344, 2768, 2769,
3326 2769, 2769, 343, 342, 338, 2769, 2770, 334, 328, 321,
3327 2770, 2771, 2771, 2771, 320, 316, 310, 2771, 2772, 309,
3329 308, 304, 2772, 2773, 2773, 2773, 301, 300, 295, 2773,
3330 2774, 293, 292, 288, 2774, 2775, 2775, 2775, 285, 283,
3331 282, 2775, 2776, 281, 277, 271, 2776, 2777, 2777, 2777,
3332 267, 263, 255, 2777, 2778, 251, 247, 246, 2778, 2779,
3333 2779, 2779, 245, 239, 238, 2779, 2780, 236, 233, 221,
3334 2780, 2781, 2781, 2781, 0, 0, 0, 2781, 2782, 0,
3335 0, 0, 2782, 2783, 2783, 2783, 0, 0, 0, 2783,
3336 2784, 0, 0, 0, 2784, 2785, 2785, 2785, 0, 0,
3337 0, 2785, 2786, 0, 0, 0, 2786, 2787, 2787, 2787,
3338 0, 0, 0, 2787, 2788, 0, 0, 0, 2788, 2789,
3340 2789, 2789, 0, 0, 0, 2789, 2790, 0, 0, 0,
3341 2790, 2791, 2791, 2791, 0, 0, 0, 2791, 2792, 0,
3342 0, 0, 2792, 2793, 2793, 2793, 0, 0, 0, 2793,
3343 2794, 0, 0, 0, 2794, 2795, 2795, 2795, 0, 0,
3344 0, 2795, 2796, 0, 0, 0, 2796, 2797, 2797, 2797,
3345 0, 0, 0, 2797, 2798, 0, 0, 0, 2798, 2799,
3346 2799, 2799, 0, 0, 0, 2799, 2800, 0, 0, 0,
3347 2800, 2801, 2801, 2801, 0, 0, 0, 2801, 2802, 0,
3348 0, 0, 2802, 2803, 2803, 2803, 0, 0, 0, 2803,
3349 2804, 0, 0, 0, 2804, 2805, 2805, 2805, 0, 0,
3351 0, 2805, 2806, 0, 0, 0, 2806, 2807, 2807, 2807,
3352 0, 0, 0, 2807, 2808, 0, 0, 0, 2808, 2809,
3353 2809, 2809, 0, 0, 0, 2809, 2810, 0, 0, 0,
3354 2810, 2811, 2811, 2811, 0, 0, 0, 2811, 2812, 0,
3355 0, 0, 2812, 2813, 2813, 2813, 0, 0, 0, 2813,
3356 2814, 0, 0, 0, 2814, 2815, 2815, 2815, 2815, 2815,
3357 2815, 2815, 2815, 2815, 2816, 0, 0, 0, 0, 2816,
3358 2817, 2817, 2817, 0, 0, 0, 2817, 2818, 2818, 2818,
3359 2818, 0, 0, 2818, 2818, 2819, 2819, 2819, 0, 0,
3360 0, 2819, 2820, 2820, 2820, 2820, 0, 0, 2820, 2820,
3362 2821, 2821, 2821, 0, 0, 0, 2821, 2822, 2822, 2822,
3363 2822, 0, 0, 2822, 2822, 2823, 2823, 2823, 0, 0,
3364 0, 2823, 2824, 2824, 2824, 2824, 0, 0, 2824, 2824,
3365 2825, 2825, 2825, 0, 0, 0, 2825, 2826, 2826, 2826,
3366 2826, 0, 0, 2826, 2826, 2827, 2827, 2827, 0, 0,
3367 0, 2827, 2828, 2828, 2828, 2828, 0, 0, 2828, 2828,
3368 2829, 2829, 2829, 0, 0, 0, 2829, 2830, 2830, 2830,
3369 2830, 0, 0, 2830, 2830, 2831, 2831, 2831, 0, 0,
3370 0, 2831, 2832, 2832, 2832, 2832, 0, 0, 2832, 2832,
3371 2833, 2833, 2833, 0, 0, 0, 2833, 2834, 2834, 2834,
3373 2834, 0, 0, 2834, 2834, 2835, 2835, 2835, 0, 0,
3374 0, 2835, 2836, 2836, 2836, 2836, 0, 0, 2836, 2836,
3375 2837, 2837, 2837, 0, 0, 0, 2837, 2838, 2838, 2838,
3376 2838, 0, 0, 2838, 2838, 2839, 2839, 2839, 0, 0,
3377 0, 2839, 2840, 2840, 2840, 2840, 0, 0, 2840, 2840,
3378 2841, 2841, 2841, 0, 0, 0, 2841, 2842, 2842, 2842,
3379 2842, 0, 0, 2842, 2842, 2843, 2843, 2843, 0, 0,
3380 0, 2843, 2844, 2844, 2844, 2844, 0, 0, 2844, 2844,
3381 2845, 2845, 2845, 0, 0, 0, 2845, 2846, 2846, 2846,
3382 2846, 0, 0, 2846, 2846, 2847, 2847, 2847, 2847, 0,
3384 2847, 0, 2847, 2848, 2848, 2848, 2848, 0, 0, 2848,
3385 2848, 2849, 2849, 2849, 2849, 0, 2849, 0, 2849, 2850,
3386 2850, 2850, 2850, 0, 0, 2850, 2850, 2851, 2851, 2851,
3387 0, 0, 0, 2851, 2852, 2852, 2852, 2852, 0, 0,
3388 2852, 2852, 2853, 2853, 2853, 2853, 0, 2853, 0, 2853,
3389 2854, 2854, 2854, 2854, 0, 0, 2854, 2854, 2855, 2855,
3390 2855, 0, 0, 0, 2855, 2856, 2856, 2856, 2856, 0,
3391 0, 2856, 2856, 2857, 2857, 2857, 0, 0, 0, 2857,
3392 2858, 2858, 2858, 2858, 0, 0, 2858, 2858, 2859, 2859,
3393 2859, 2859, 0, 0, 2859, 2859, 2860, 2860, 2860, 0,
3395 0, 0, 2860, 2861, 2861, 2861, 2861, 0, 0, 2861,
3396 2861, 2862, 2862, 2862, 2862, 2862, 2862, 2862, 2862, 2862,
3397 2863, 0, 2863, 0, 0, 2863, 2864, 2864, 2864, 0,
3398 0, 0, 2864, 2865, 2865, 2865, 2865, 0, 0, 2865,
3399 2865, 2866, 2866, 2866, 2866, 0, 2866, 0, 2866, 2867,
3400 2867, 2867, 2867, 0, 0, 2867, 2867, 2868, 2868, 2868,
3401 2868, 0, 2868, 0, 2868, 2869, 2869, 2869, 2869, 0,
3402 0, 2869, 2869, 2870, 2870, 2870, 0, 0, 0, 2870,
3403 2871, 2871, 2871, 2871, 0, 0, 2871, 2871, 2872, 2872,
3404 2872, 0, 0, 0, 2872, 2873, 2873, 2873, 2873, 0,
3406 0, 2873, 2873, 2874, 2874, 2874, 0, 0, 0, 2874,
3407 2875, 2875, 2875, 2875, 0, 0, 2875, 2875, 2876, 2876,
3408 2876, 0, 0, 0, 2876, 2877, 2877, 2877, 2877, 0,
3409 0, 2877, 2877, 2878, 2878, 2878, 0, 0, 0, 2878,
3410 2879, 2879, 2879, 2879, 0, 0, 2879, 2879, 2880, 2880,
3411 2880, 2880, 0, 2880, 0, 2880, 2881, 2881, 2881, 2881,
3412 0, 0, 2881, 2881, 2882, 2882, 2882, 2882, 0, 2882,
3413 0, 2882, 2883, 2883, 2883, 2883, 0, 0, 2883, 2883,
3414 2884, 2884, 2884, 0, 0, 0, 2884, 2885, 2885, 2885,
3415 2885, 0, 0, 2885, 2885, 2886, 2886, 2886, 0, 0,
3417 0, 2886, 2887, 2887, 2887, 2887, 0, 0, 2887, 2887,
3418 2888, 2888, 2888, 0, 0, 0, 2888, 2889, 2889, 2889,
3419 2889, 0, 0, 2889, 2889, 2890, 2890, 2890, 0, 0,
3420 0, 2890, 2891, 2891, 2891, 2891, 0, 0, 2891, 2891,
3421 2892, 2892, 2892, 0, 0, 0, 2892, 2893, 2893, 2893,
3422 2893, 0, 0, 2893, 2893, 2894, 2894, 2894, 0, 0,
3423 0, 2894, 2895, 2895, 2895, 2895, 0, 0, 2895, 2895,
3424 2896, 2896, 2896, 0, 0, 0, 2896, 2897, 2897, 2897,
3425 2897, 0, 0, 2897, 2897, 2898, 2898, 2898, 0, 0,
3426 0, 2898, 2899, 2899, 2899, 2899, 0, 0, 2899, 2899,
3428 2900, 2900, 2900, 0, 0, 0, 2900, 2901, 2901, 2901,
3429 2901, 0, 0, 2901, 2901, 2902, 2902, 2902, 0, 0,
3430 0, 2902, 2903, 2903, 2903, 2903, 0, 0, 2903, 2903,
3431 2904, 2904, 2904, 0, 0, 0, 2904, 2905, 2905, 2905,
3432 2905, 0, 0, 2905, 2905, 2906, 2906, 2906, 2906, 0,
3433 0, 2906, 2906, 2907, 2907, 2907, 0, 0, 0, 2907,
3434 2908, 2908, 2908, 2908, 0, 0, 2908, 2908, 2909, 2909,
3435 2909, 2909, 2909, 2909, 2909, 2909, 2909, 2910, 2910, 2910,
3436 2910, 2910, 2910, 2910, 2910, 2910, 2911, 2911, 2911, 0,
3437 0, 0, 2911, 2912, 2912, 2912, 2912, 0, 0, 2912,
3439 2912, 2913, 2913, 2913, 2913, 0, 0, 2913, 2913, 2914,
3440 2914, 2914, 0, 0, 0, 2914, 2915, 2915, 2915, 2915,
3441 0, 0, 2915, 2915, 2916, 2916, 2916, 0, 0, 0,
3442 2916, 2917, 2917, 2917, 2917, 0, 0, 2917, 2917, 2918,
3443 2918, 2918, 0, 0, 0, 2918, 2919, 2919, 2919, 2919,
3444 0, 0, 2919, 2919, 2920, 2920, 2920, 0, 0, 0,
3445 2920, 2921, 2921, 2921, 0, 0, 0, 2921, 2922, 2922,
3446 2922, 2922, 0, 0, 2922, 2922, 2923, 2923, 2923, 0,
3447 0, 0, 2923, 2924, 2924, 2924, 2924, 0, 0, 2924,
3448 2924, 2925, 2925, 2925, 2925, 0, 0, 2925, 2925, 2926,
3450 2926, 2926, 0, 0, 0, 2926, 2927, 2927, 2927, 2927,
3451 0, 0, 2927, 2927, 2928, 2928, 2928, 0, 0, 0,
3452 2928, 2929, 2929, 2929, 2929, 0, 0, 2929, 2929, 2930,
3453 2930, 2930, 0, 0, 0, 2930, 2931, 2931, 2931, 2931,
3454 0, 0, 2931, 2931, 2932, 2932, 2932, 0, 0, 0,
3455 2932, 2933, 2933, 2933, 2933, 0, 0, 2933, 2933, 2934,
3456 2934, 2934, 0, 0, 0, 2934, 2935, 2935, 2935, 2935,
3457 0, 0, 2935, 2935, 2936, 2936, 2936, 0, 0, 0,
3458 2936, 2937, 2937, 2937, 2937, 0, 0, 2937, 2937, 2938,
3459 2938, 2938, 0, 0, 0, 2938, 2939, 2939, 2939, 2939,
3461 0, 0, 2939, 2939, 2940, 2940, 2940, 0, 0, 0,
3462 2940, 2941, 2941, 2941, 2941, 0, 0, 2941, 2941, 2942,
3463 2942, 2942, 0, 0, 0, 2942, 2943, 2943, 2943, 2943,
3464 0, 0, 2943, 2943, 2944, 2944, 2944, 0, 0, 0,
3465 2944, 2945, 2945, 2945, 2945, 0, 0, 2945, 2945, 2946,
3466 2946, 2946, 0, 0, 0, 2946, 2947, 2947, 2947, 2947,
3467 0, 0, 2947, 2947, 2948, 2948, 2948, 2948, 0, 2948,
3468 0, 2948, 2949, 2949, 2949, 2949, 0, 0, 2949, 2949,
3469 2950, 2950, 2950, 2950, 0, 0, 2950, 2950, 2951, 2951,
3470 2951, 2951, 0, 2951, 0, 2951, 2952, 2952, 2952, 2952,
3472 0, 0, 2952, 2952, 2953, 2953, 2953, 2953, 2953, 2953,
3473 2953, 2953, 2953, 2954, 2954, 2954, 2954, 2954, 2954, 2954,
3474 2954, 2954, 2955, 2955, 2955, 0, 0, 0, 2955, 2956,
3475 2956, 2956, 2956, 0, 0, 2956, 2956, 2957, 2957, 2957,
3476 2957, 0, 0, 2957, 2957, 2958, 2958, 2958, 0, 0,
3477 0, 2958, 2959, 2959, 2959, 2959, 0, 0, 2959, 2959,
3478 2960, 2960, 2960, 0, 0, 0, 2960, 2961, 2961, 2961,
3479 2961, 0, 0, 2961, 2961, 2962, 2962, 2962, 0, 0,
3480 0, 2962, 2963, 2963, 2963, 2963, 0, 0, 2963, 2963,
3481 2964, 2964, 2964, 0, 0, 0, 2964, 2965, 2965, 2965,
3483 0, 0, 0, 2965, 2966, 2966, 2966, 2966, 0, 0,
3484 2966, 2966, 2967, 2967, 2967, 2967, 0, 2967, 0, 2967,
3485 2968, 2968, 2968, 2968, 0, 0, 2968, 2968, 2969, 2969,
3486 2969, 2969, 0, 0, 2969, 2969, 2970, 2970, 2970, 2970,
3487 0, 2970, 0, 2970, 2971, 2971, 2971, 2971, 0, 0,
3488 2971, 2971, 2972, 2972, 2972, 0, 0, 0, 2972, 2973,
3489 2973, 2973, 2973, 0, 0, 2973, 2973, 2974, 2974, 2974,
3490 0, 0, 0, 2974, 2975, 2975, 2975, 2975, 0, 0,
3491 2975, 2975, 2976, 2976, 2976, 0, 0, 0, 2976, 2977,
3492 2977, 2977, 2977, 0, 0, 2977, 2977, 2978, 2978, 2978,
3494 0, 0, 0, 2978, 2979, 2979, 2979, 2979, 0, 0,
3495 2979, 2979, 2980, 2980, 2980, 0, 0, 0, 2980, 2981,
3496 2981, 2981, 2981, 0, 0, 2981, 2981, 2982, 2982, 2982,
3497 0, 0, 0, 2982, 2983, 2983, 2983, 2983, 0, 0,
3498 2983, 2983, 2984, 2984, 2984, 2984, 0, 2984, 0, 2984,
3499 2985, 2985, 2985, 2985, 0, 0, 2985, 2985, 2986, 2986,
3500 2986, 0, 0, 0, 2986, 2987, 2987, 2987, 2987, 0,
3501 0, 2987, 2987, 2988, 2988, 2988, 2988, 0, 2988, 0,
3502 2988, 2989, 2989, 2989, 2989, 0, 0, 2989, 2989, 2990,
3503 2990, 2990, 0, 0, 0, 2990, 2991, 2991, 2991, 2991,
3505 0, 0, 2991, 2991, 2992, 2992, 2992, 2992, 0, 0,
3506 2992, 2992, 2993, 2993, 2993, 2993, 0, 0, 2993, 2993,
3507 2994, 2994, 2994, 2994, 0, 0, 2994, 2994, 2995, 2995,
3508 2995, 2995, 2995, 2995, 2995, 2995, 2995, 2996, 2996, 2996,
3509 2996, 2996, 2996, 2996, 2996, 2996, 2997, 2997, 2997, 2997,
3510 0, 2997, 0, 2997, 2998, 2998, 2998, 2998, 0, 0,
3511 2998, 2998, 2999, 2999, 2999, 2999, 0, 0, 2999, 2999,
3512 3000, 3000, 3000, 0, 0, 0, 3000, 3001, 3001, 3001,
3513 3001, 0, 0, 3001, 3001, 3002, 3002, 3002, 0, 0,
3514 0, 3002, 3003, 3003, 3003, 3003, 0, 0, 3003, 3003,
3516 3004, 3004, 3004, 3004, 0, 3004, 0, 3004, 3005, 3005,
3517 3005, 3005, 0, 0, 3005, 3005, 3006, 3006, 3006, 3006,
3518 0, 3006, 0, 3006, 3007, 3007, 3007, 3007, 0, 3007,
3519 0, 3007, 3008, 3008, 3008, 3008, 0, 0, 3008, 3008,
3520 3009, 3009, 3009, 3009, 0, 0, 3009, 3009, 3010, 3010,
3521 3010, 3010, 0, 0, 3010, 3010, 3011, 3011, 3011, 3011,
3522 0, 0, 3011, 3011, 3012, 3012, 3012, 0, 0, 0,
3523 3012, 3013, 3013, 3013, 0, 0, 0, 3013, 3014, 3014,
3524 3014, 3014, 0, 0, 3014, 3014, 3015, 3015, 3015, 0,
3525 0, 0, 3015, 3016, 3016, 3016, 0, 0, 0, 3016,
3527 3017, 3017, 3017, 3017, 0, 0, 3017, 3017, 3018, 3018,
3528 3018, 0, 0, 0, 3018, 3019, 3019, 3019, 0, 0,
3529 0, 3019, 3020, 3020, 3020, 3020, 0, 0, 3020, 3020,
3530 3021, 3021, 3021, 0, 0, 0, 3021, 3022, 3022, 3022,
3531 3022, 0, 0, 3022, 3022, 3023, 3023, 3023, 0, 0,
3532 0, 3023, 3024, 3024, 3024, 3024, 0, 0, 3024, 3024,
3533 3025, 3025, 3025, 3025, 0, 0, 3025, 3025, 3026, 3026,
3534 3026, 0, 0, 0, 3026, 3027, 3027, 3027, 3027, 0,
3535 0, 3027, 3027, 3028, 3028, 3028, 3028, 0, 0, 3028,
3536 3028, 3029, 3029, 3029, 3029, 0, 0, 3029, 3029, 3030,
3538 3030, 3030, 3030, 3030, 3030, 3030, 3030, 3030, 3031, 3031,
3539 3031, 3031, 3031, 3031, 3031, 3031, 3031, 3032, 3032, 3032,
3540 3032, 0, 0, 3032, 3032, 3033, 3033, 3033, 3033, 0,
3541 0, 3033, 3033, 3034, 3034, 3034, 0, 0, 0, 3034,
3542 3035, 3035, 3035, 0, 0, 0, 3035, 3036, 3036, 3036,
3543 3036, 0, 0, 3036, 3036, 3037, 3037, 3037, 3037, 0,
3544 0, 3037, 3037, 3038, 3038, 3038, 3038, 0, 0, 3038,
3545 3038, 3039, 3039, 3039, 3039, 0, 0, 3039, 3039, 3040,
3546 3040, 3040, 3040, 0, 0, 3040, 3040, 3041, 3041, 3041,
3547 0, 0, 0, 3041, 3042, 3042, 3042, 0, 0, 0,
3549 3042, 3043, 3043, 3043, 3043, 0, 0, 3043, 3043, 3044,
3550 3044, 3044, 0, 0, 0, 3044, 3045, 3045, 3045, 0,
3551 0, 0, 3045, 3046, 3046, 3046, 3046, 0, 0, 3046,
3552 3046, 3047, 3047, 3047, 0, 0, 0, 3047, 3048, 3048,
3553 3048, 0, 0, 0, 3048, 3049, 3049, 3049, 0, 0,
3554 0, 3049, 3050, 3050, 3050, 3050, 0, 0, 3050, 3050,
3555 3051, 3051, 3051, 0, 0, 0, 3051, 3052, 3052, 3052,
3556 3052, 0, 0, 3052, 3052, 3053, 3053, 3053, 3053, 0,
3557 0, 3053, 3053, 3054, 3054, 3054, 3054, 0, 3054, 0,
3558 3054, 3055, 3055, 3055, 3055, 0, 0, 3055, 3055, 3056,
3560 3056, 3056, 3056, 0, 0, 3056, 3056, 3057, 3057, 3057,
3561 3057, 0, 0, 3057, 3057, 3058, 3058, 3058, 3058, 3058,
3562 3058, 3058, 3058, 3058, 3059, 3059, 3059, 3059, 3059, 3059,
3563 3059, 3059, 3059, 3060, 3060, 3060, 3060, 0, 0, 3060,
3564 3060, 3061, 3061, 3061, 3061, 0, 0, 3061, 3061, 3062,
3565 3062, 3062, 0, 0, 0, 3062, 3063, 3063, 3063, 3063,
3566 0, 3063, 0, 3063, 3064, 3064, 3064, 3064, 3064, 3064,
3567 3064, 3064, 3064, 3065, 3065, 3065, 3065, 3065, 3065, 3065,
3568 3065, 3065, 3066, 3066, 3066, 3066, 3066, 3066, 3066, 3066,
3569 3066, 3067, 3067, 3067, 3067, 3067, 3067, 3067, 3067, 3067,
3571 3068, 3068, 3068, 3068, 3068, 3068, 3068, 3068, 3068, 3069,
3572 3069, 3069, 3069, 3069, 3069, 3069, 3069, 3069, 2694, 2694,
3573 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
3574 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
3575 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
3576 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
3577 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
3578 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
3579 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694, 2694,
3584 /* Table of booleans, true if rule could match eol. */
3585 static yyconst flex_int32_t yy_rule_can_match_eol[460] =
3587 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1,
3588 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1,
3589 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
3590 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0,
3591 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
3592 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1,
3593 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1,
3594 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0,
3595 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1,
3596 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0,
3597 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
3598 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
3599 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
3600 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0,
3601 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
3602 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1,
3603 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1,
3604 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1,
3605 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
3606 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0,
3607 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0,
3608 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0,
3609 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0,
3612 static yy_state_type yy_last_accepting_state;
3613 static char *yy_last_accepting_cpos;
3615 extern int surf_parse__flex_debug;
3616 int surf_parse__flex_debug = 0;
3618 /* The intent behind this definition is that it'll catch
3619 * any uses of REJECT which flex missed.
3621 #define REJECT reject_used_but_not_detected
3622 #define yymore() yymore_used_but_not_detected
3623 #define YY_MORE_ADJ 0
3624 #define YY_RESTORE_YY_MORE_OFFSET
3625 char *surf_parse_text;
3626 /* Validating XML processor for src/surf/simgrid.dtd.
3628 * This program was generated with the FleXML XML processor generator.
3629 * FleXML is Copyright (C) 1999-2005 Kristoffer Rose. All rights reserved.
3630 * FleXML is Copyright (C) 2003-2011 Martin Quinson. All rights reserved.
3631 * (Id: flexml.pl,v 1.67 2011/11/01 20:49:21 mquinson Exp).
3633 * There are two, intertwined parts to this program, part A and part B.
3638 * Some parts, here collectively called "Part A", are found in the
3639 * FleXML package. They are Copyright (C) 1999-2005 Kristoffer Rose
3640 * and Copyright (C) 2003-2011 Martin Quinson. All rights reserved.
3642 * You can redistribute, use, perform, display and/or modify "Part A"
3643 * provided the following two conditions hold:
3645 * 1. The program is distributed WITHOUT ANY WARRANTY from the author of
3646 * FleXML; without even the implied warranty of MERCHANTABILITY or
3647 * FITNESS FOR A PARTICULAR PURPOSE.
3649 * 2. The program distribution conditions do not in any way affect the
3650 * distribution conditions of the FleXML system used to generate this
3651 * file or any version of FleXML derived from that system.
3653 * Notice that these are explicit rights granted to you for files
3654 * generated by the FleXML system. For your rights in connection with
3655 * the FleXML system itself please consult the GNU General Public License.
3660 * The other parts, here collectively called "Part B", and which came
3661 * from the DTD used by FleXML to generate this program, can be
3662 * distributed (or not, as the case may be) under the terms of whoever
3663 * wrote them, provided these terms respect and obey the two conditions
3664 * above under the heading "Part A".
3666 * The author of and contributors to FleXML specifically disclaim
3667 * any copyright interest in "Part B", unless "Part B" was written
3668 * by the author of or contributors to FleXML.
3672 /* Version strings. */
3673 const char rcs_surfxml_flexml_skeleton[] =
3674 "$" "Id: skel,v 1.40 2007/10/11 09:57:24 mquinson Exp $";
3675 const char rcs_surfxml_flexml[] =
3676 "$" "Id: flexml.pl,v 1.67 2011/11/01 20:49:21 mquinson Exp $";
3679 #include <stdlib.h> /* for realloc() -- needed here when using flex 2.5.4 */
3686 #if defined(_XBT_WIN32) || defined(__WIN32__) || defined(WIN32) || defined(__TOS_WIN__)
3687 # ifndef __STRICT_ANSI__
3689 # include <process.h>
3692 # include <unistd.h>
3695 #ifndef FLEXML_INDEXSTACKSIZE
3696 #define FLEXML_INDEXSTACKSIZE 1000
3699 /* Generated definitions. */
3700 #define FLEXML_yylineno
3701 #ifndef FLEXML_BUFFERSTACKSIZE
3702 #define FLEXML_BUFFERSTACKSIZE 1000000
3704 #define FLEXML_NEED_BUFFERLIT
3706 /* XML processor api. */
3707 /* FleXML-provided data. */
3708 int surfxml_pcdata_ix;
3709 extern char *surfxml_bufferstack;
3710 #define surfxml_pcdata (surfxml_bufferstack + surfxml_pcdata_ix)
3711 AT_surfxml_mount_name AX_surfxml_mount_name;
3712 #define A_surfxml_mount_name (surfxml_bufferstack + AX_surfxml_mount_name)
3713 short int surfxml_mount_name_isset;
3714 AT_surfxml_random_generator AX_surfxml_random_generator;
3715 #define A_surfxml_random_generator AX_surfxml_random_generator
3716 short int surfxml_random_generator_isset;
3717 AT_surfxml_ASroute_gw_dst AX_surfxml_ASroute_gw_dst;
3718 #define A_surfxml_ASroute_gw_dst (surfxml_bufferstack + AX_surfxml_ASroute_gw_dst)
3719 short int surfxml_ASroute_gw_dst_isset;
3720 AT_surfxml_trace_connect_element AX_surfxml_trace_connect_element;
3721 #define A_surfxml_trace_connect_element (surfxml_bufferstack + AX_surfxml_trace_connect_element)
3722 short int surfxml_trace_connect_element_isset;
3723 AT_surfxml_prop_id AX_surfxml_prop_id;
3724 #define A_surfxml_prop_id (surfxml_bufferstack + AX_surfxml_prop_id)
3725 short int surfxml_prop_id_isset;
3726 AT_surfxml_host_id AX_surfxml_host_id;
3727 #define A_surfxml_host_id (surfxml_bufferstack + AX_surfxml_host_id)
3728 short int surfxml_host_id_isset;
3729 AT_surfxml_ASroute_symmetrical AX_surfxml_ASroute_symmetrical;
3730 #define A_surfxml_ASroute_symmetrical AX_surfxml_ASroute_symmetrical
3731 short int surfxml_ASroute_symmetrical_isset;
3732 AT_surfxml_peer_lat AX_surfxml_peer_lat;
3733 #define A_surfxml_peer_lat (surfxml_bufferstack + AX_surfxml_peer_lat)
3734 short int surfxml_peer_lat_isset;
3735 AT_surfxml_link_latency_file AX_surfxml_link_latency_file;
3736 #define A_surfxml_link_latency_file (surfxml_bufferstack + AX_surfxml_link_latency_file)
3737 short int surfxml_link_latency_file_isset;
3738 AT_surfxml_peer_availability_file AX_surfxml_peer_availability_file;
3739 #define A_surfxml_peer_availability_file (surfxml_bufferstack + AX_surfxml_peer_availability_file)
3740 short int surfxml_peer_availability_file_isset;
3741 AT_surfxml_link_ctn_direction AX_surfxml_link_ctn_direction;
3742 #define A_surfxml_link_ctn_direction AX_surfxml_link_ctn_direction
3743 short int surfxml_link_ctn_direction_isset;
3744 AT_surfxml_host_state AX_surfxml_host_state;
3745 #define A_surfxml_host_state AX_surfxml_host_state
3746 short int surfxml_host_state_isset;
3747 AT_surfxml_AS_id AX_surfxml_AS_id;
3748 #define A_surfxml_AS_id (surfxml_bufferstack + AX_surfxml_AS_id)
3749 short int surfxml_AS_id_isset;
3750 AT_surfxml_host_power AX_surfxml_host_power;
3751 #define A_surfxml_host_power (surfxml_bufferstack + AX_surfxml_host_power)
3752 short int surfxml_host_power_isset;
3753 AT_surfxml_router_id AX_surfxml_router_id;
3754 #define A_surfxml_router_id (surfxml_bufferstack + AX_surfxml_router_id)
3755 short int surfxml_router_id_isset;
3756 AT_surfxml_storage_type_id AX_surfxml_storage_type_id;
3757 #define A_surfxml_storage_type_id (surfxml_bufferstack + AX_surfxml_storage_type_id)
3758 short int surfxml_storage_type_id_isset;
3759 AT_surfxml_process_start_time AX_surfxml_process_start_time;
3760 #define A_surfxml_process_start_time (surfxml_bufferstack + AX_surfxml_process_start_time)
3761 short int surfxml_process_start_time_isset;
3762 AT_surfxml_cluster_suffix AX_surfxml_cluster_suffix;
3763 #define A_surfxml_cluster_suffix (surfxml_bufferstack + AX_surfxml_cluster_suffix)
3764 short int surfxml_cluster_suffix_isset;
3765 AT_surfxml_ASroute_src AX_surfxml_ASroute_src;
3766 #define A_surfxml_ASroute_src (surfxml_bufferstack + AX_surfxml_ASroute_src)
3767 short int surfxml_ASroute_src_isset;
3768 AT_surfxml_cluster_prefix AX_surfxml_cluster_prefix;
3769 #define A_surfxml_cluster_prefix (surfxml_bufferstack + AX_surfxml_cluster_prefix)
3770 short int surfxml_cluster_prefix_isset;
3771 AT_surfxml_trace_file AX_surfxml_trace_file;
3772 #define A_surfxml_trace_file (surfxml_bufferstack + AX_surfxml_trace_file)
3773 short int surfxml_trace_file_isset;
3774 AT_surfxml_link_sharing_policy AX_surfxml_link_sharing_policy;
3775 #define A_surfxml_link_sharing_policy AX_surfxml_link_sharing_policy
3776 short int surfxml_link_sharing_policy_isset;
3777 AT_surfxml_storage_typeId AX_surfxml_storage_typeId;
3778 #define A_surfxml_storage_typeId (surfxml_bufferstack + AX_surfxml_storage_typeId)
3779 short int surfxml_storage_typeId_isset;
3780 AT_surfxml_random_min AX_surfxml_random_min;
3781 #define A_surfxml_random_min (surfxml_bufferstack + AX_surfxml_random_min)
3782 short int surfxml_random_min_isset;
3783 AT_surfxml_link_ctn_id AX_surfxml_link_ctn_id;
3784 #define A_surfxml_link_ctn_id (surfxml_bufferstack + AX_surfxml_link_ctn_id)
3785 short int surfxml_link_ctn_id_isset;
3786 AT_surfxml_peer_bw_out AX_surfxml_peer_bw_out;
3787 #define A_surfxml_peer_bw_out (surfxml_bufferstack + AX_surfxml_peer_bw_out)
3788 short int surfxml_peer_bw_out_isset;
3789 AT_surfxml_cluster_availability_file AX_surfxml_cluster_availability_file;
3790 #define A_surfxml_cluster_availability_file (surfxml_bufferstack + AX_surfxml_cluster_availability_file)
3791 short int surfxml_cluster_availability_file_isset;
3792 AT_surfxml_process_kill_time AX_surfxml_process_kill_time;
3793 #define A_surfxml_process_kill_time (surfxml_bufferstack + AX_surfxml_process_kill_time)
3794 short int surfxml_process_kill_time_isset;
3795 AT_surfxml_cluster_bb_bw AX_surfxml_cluster_bb_bw;
3796 #define A_surfxml_cluster_bb_bw (surfxml_bufferstack + AX_surfxml_cluster_bb_bw)
3797 short int surfxml_cluster_bb_bw_isset;
3798 AT_surfxml_argument_value AX_surfxml_argument_value;
3799 #define A_surfxml_argument_value (surfxml_bufferstack + AX_surfxml_argument_value)
3800 short int surfxml_argument_value_isset;
3801 AT_surfxml_link_state AX_surfxml_link_state;
3802 #define A_surfxml_link_state AX_surfxml_link_state
3803 short int surfxml_link_state_isset;
3804 AT_surfxml_ASroute_gw_src AX_surfxml_ASroute_gw_src;
3805 #define A_surfxml_ASroute_gw_src (surfxml_bufferstack + AX_surfxml_ASroute_gw_src)
3806 short int surfxml_ASroute_gw_src_isset;
3807 AT_surfxml_AS_routing AX_surfxml_AS_routing;
3808 #define A_surfxml_AS_routing (surfxml_bufferstack + AX_surfxml_AS_routing)
3809 short int surfxml_AS_routing_isset;
3810 AT_surfxml_link_bandwidth AX_surfxml_link_bandwidth;
3811 #define A_surfxml_link_bandwidth (surfxml_bufferstack + AX_surfxml_link_bandwidth)
3812 short int surfxml_link_bandwidth_isset;
3813 AT_surfxml_cluster_id AX_surfxml_cluster_id;
3814 #define A_surfxml_cluster_id (surfxml_bufferstack + AX_surfxml_cluster_id)
3815 short int surfxml_cluster_id_isset;
3816 AT_surfxml_peer_bw_in AX_surfxml_peer_bw_in;
3817 #define A_surfxml_peer_bw_in (surfxml_bufferstack + AX_surfxml_peer_bw_in)
3818 short int surfxml_peer_bw_in_isset;
3819 AT_surfxml_random_mean AX_surfxml_random_mean;
3820 #define A_surfxml_random_mean (surfxml_bufferstack + AX_surfxml_random_mean)
3821 short int surfxml_random_mean_isset;
3822 AT_surfxml_cluster_bb_lat AX_surfxml_cluster_bb_lat;
3823 #define A_surfxml_cluster_bb_lat (surfxml_bufferstack + AX_surfxml_cluster_bb_lat)
3824 short int surfxml_cluster_bb_lat_isset;
3825 AT_surfxml_link_latency AX_surfxml_link_latency;
3826 #define A_surfxml_link_latency (surfxml_bufferstack + AX_surfxml_link_latency)
3827 short int surfxml_link_latency_isset;
3828 AT_surfxml_trace_connect_kind AX_surfxml_trace_connect_kind;
3829 #define A_surfxml_trace_connect_kind AX_surfxml_trace_connect_kind
3830 short int surfxml_trace_connect_kind_isset;
3831 AT_surfxml_random_seed AX_surfxml_random_seed;
3832 #define A_surfxml_random_seed (surfxml_bufferstack + AX_surfxml_random_seed)
3833 short int surfxml_random_seed_isset;
3834 AT_surfxml_cluster_state_file AX_surfxml_cluster_state_file;
3835 #define A_surfxml_cluster_state_file (surfxml_bufferstack + AX_surfxml_cluster_state_file)
3836 short int surfxml_cluster_state_file_isset;
3837 AT_surfxml_link_bandwidth_file AX_surfxml_link_bandwidth_file;
3838 #define A_surfxml_link_bandwidth_file (surfxml_bufferstack + AX_surfxml_link_bandwidth_file)
3839 short int surfxml_link_bandwidth_file_isset;
3840 AT_surfxml_storage_type_content AX_surfxml_storage_type_content;
3841 #define A_surfxml_storage_type_content (surfxml_bufferstack + AX_surfxml_storage_type_content)
3842 short int surfxml_storage_type_content_isset;
3843 AT_surfxml_route_symmetrical AX_surfxml_route_symmetrical;
3844 #define A_surfxml_route_symmetrical AX_surfxml_route_symmetrical
3845 short int surfxml_route_symmetrical_isset;
3846 AT_surfxml_random_id AX_surfxml_random_id;
3847 #define A_surfxml_random_id (surfxml_bufferstack + AX_surfxml_random_id)
3848 short int surfxml_random_id_isset;
3849 AT_surfxml_mstorage_name AX_surfxml_mstorage_name;
3850 #define A_surfxml_mstorage_name (surfxml_bufferstack + AX_surfxml_mstorage_name)
3851 short int surfxml_mstorage_name_isset;
3852 AT_surfxml_random_max AX_surfxml_random_max;
3853 #define A_surfxml_random_max (surfxml_bufferstack + AX_surfxml_random_max)
3854 short int surfxml_random_max_isset;
3855 AT_surfxml_link_id AX_surfxml_link_id;
3856 #define A_surfxml_link_id (surfxml_bufferstack + AX_surfxml_link_id)
3857 short int surfxml_link_id_isset;
3858 AT_surfxml_process_host AX_surfxml_process_host;
3859 #define A_surfxml_process_host (surfxml_bufferstack + AX_surfxml_process_host)
3860 short int surfxml_process_host_isset;
3861 AT_surfxml_host_availability_file AX_surfxml_host_availability_file;
3862 #define A_surfxml_host_availability_file (surfxml_bufferstack + AX_surfxml_host_availability_file)
3863 short int surfxml_host_availability_file_isset;
3864 AT_surfxml_cluster_lat AX_surfxml_cluster_lat;
3865 #define A_surfxml_cluster_lat (surfxml_bufferstack + AX_surfxml_cluster_lat)
3866 short int surfxml_cluster_lat_isset;
3867 AT_surfxml_trace_periodicity AX_surfxml_trace_periodicity;
3868 #define A_surfxml_trace_periodicity (surfxml_bufferstack + AX_surfxml_trace_periodicity)
3869 short int surfxml_trace_periodicity_isset;
3870 AT_surfxml_cluster_bb_sharing_policy AX_surfxml_cluster_bb_sharing_policy;
3871 #define A_surfxml_cluster_bb_sharing_policy AX_surfxml_cluster_bb_sharing_policy
3872 short int surfxml_cluster_bb_sharing_policy_isset;
3873 AT_surfxml_router_coordinates AX_surfxml_router_coordinates;
3874 #define A_surfxml_router_coordinates (surfxml_bufferstack + AX_surfxml_router_coordinates)
3875 short int surfxml_router_coordinates_isset;
3876 AT_surfxml_peer_coordinates AX_surfxml_peer_coordinates;
3877 #define A_surfxml_peer_coordinates (surfxml_bufferstack + AX_surfxml_peer_coordinates)
3878 short int surfxml_peer_coordinates_isset;
3879 AT_surfxml_peer_state_file AX_surfxml_peer_state_file;
3880 #define A_surfxml_peer_state_file (surfxml_bufferstack + AX_surfxml_peer_state_file)
3881 short int surfxml_peer_state_file_isset;
3882 AT_surfxml_prop_value AX_surfxml_prop_value;
3883 #define A_surfxml_prop_value (surfxml_bufferstack + AX_surfxml_prop_value)
3884 short int surfxml_prop_value_isset;
3885 AT_surfxml_mstorage_typeId AX_surfxml_mstorage_typeId;
3886 #define A_surfxml_mstorage_typeId (surfxml_bufferstack + AX_surfxml_mstorage_typeId)
3887 short int surfxml_mstorage_typeId_isset;
3888 AT_surfxml_ASroute_dst AX_surfxml_ASroute_dst;
3889 #define A_surfxml_ASroute_dst (surfxml_bufferstack + AX_surfxml_ASroute_dst)
3890 short int surfxml_ASroute_dst_isset;
3891 AT_surfxml_link_state_file AX_surfxml_link_state_file;
3892 #define A_surfxml_link_state_file (surfxml_bufferstack + AX_surfxml_link_state_file)
3893 short int surfxml_link_state_file_isset;
3894 AT_surfxml_random_radical AX_surfxml_random_radical;
3895 #define A_surfxml_random_radical (surfxml_bufferstack + AX_surfxml_random_radical)
3896 short int surfxml_random_radical_isset;
3897 AT_surfxml_trace_connect_trace AX_surfxml_trace_connect_trace;
3898 #define A_surfxml_trace_connect_trace (surfxml_bufferstack + AX_surfxml_trace_connect_trace)
3899 short int surfxml_trace_connect_trace_isset;
3900 AT_surfxml_mount_id AX_surfxml_mount_id;
3901 #define A_surfxml_mount_id (surfxml_bufferstack + AX_surfxml_mount_id)
3902 short int surfxml_mount_id_isset;
3903 AT_surfxml_cluster_power AX_surfxml_cluster_power;
3904 #define A_surfxml_cluster_power (surfxml_bufferstack + AX_surfxml_cluster_power)
3905 short int surfxml_cluster_power_isset;
3906 AT_surfxml_process_function AX_surfxml_process_function;
3907 #define A_surfxml_process_function (surfxml_bufferstack + AX_surfxml_process_function)
3908 short int surfxml_process_function_isset;
3909 AT_surfxml_peer_id AX_surfxml_peer_id;
3910 #define A_surfxml_peer_id (surfxml_bufferstack + AX_surfxml_peer_id)
3911 short int surfxml_peer_id_isset;
3912 AT_surfxml_cluster_router_id AX_surfxml_cluster_router_id;
3913 #define A_surfxml_cluster_router_id (surfxml_bufferstack + AX_surfxml_cluster_router_id)
3914 short int surfxml_cluster_router_id_isset;
3915 AT_surfxml_cluster_sharing_policy AX_surfxml_cluster_sharing_policy;
3916 #define A_surfxml_cluster_sharing_policy AX_surfxml_cluster_sharing_policy
3917 short int surfxml_cluster_sharing_policy_isset;
3918 AT_surfxml_bypassRoute_dst AX_surfxml_bypassRoute_dst;
3919 #define A_surfxml_bypassRoute_dst (surfxml_bufferstack + AX_surfxml_bypassRoute_dst)
3920 short int surfxml_bypassRoute_dst_isset;
3921 AT_surfxml_host_core AX_surfxml_host_core;
3922 #define A_surfxml_host_core (surfxml_bufferstack + AX_surfxml_host_core)
3923 short int surfxml_host_core_isset;
3924 AT_surfxml_host_availability AX_surfxml_host_availability;
3925 #define A_surfxml_host_availability (surfxml_bufferstack + AX_surfxml_host_availability)
3926 short int surfxml_host_availability_isset;
3927 AT_surfxml_storage_type_model AX_surfxml_storage_type_model;
3928 #define A_surfxml_storage_type_model (surfxml_bufferstack + AX_surfxml_storage_type_model)
3929 short int surfxml_storage_type_model_isset;
3930 AT_surfxml_bypassRoute_src AX_surfxml_bypassRoute_src;
3931 #define A_surfxml_bypassRoute_src (surfxml_bufferstack + AX_surfxml_bypassRoute_src)
3932 short int surfxml_bypassRoute_src_isset;
3933 AT_surfxml_route_src AX_surfxml_route_src;
3934 #define A_surfxml_route_src (surfxml_bufferstack + AX_surfxml_route_src)
3935 short int surfxml_route_src_isset;
3936 AT_surfxml_bypassRoute_gw_dst AX_surfxml_bypassRoute_gw_dst;
3937 #define A_surfxml_bypassRoute_gw_dst (surfxml_bufferstack + AX_surfxml_bypassRoute_gw_dst)
3938 short int surfxml_bypassRoute_gw_dst_isset;
3939 AT_surfxml_storage_id AX_surfxml_storage_id;
3940 #define A_surfxml_storage_id (surfxml_bufferstack + AX_surfxml_storage_id)
3941 short int surfxml_storage_id_isset;
3942 AT_surfxml_host_coordinates AX_surfxml_host_coordinates;
3943 #define A_surfxml_host_coordinates (surfxml_bufferstack + AX_surfxml_host_coordinates)
3944 short int surfxml_host_coordinates_isset;
3945 AT_surfxml_trace_id AX_surfxml_trace_id;
3946 #define A_surfxml_trace_id (surfxml_bufferstack + AX_surfxml_trace_id)
3947 short int surfxml_trace_id_isset;
3948 AT_surfxml_peer_power AX_surfxml_peer_power;
3949 #define A_surfxml_peer_power (surfxml_bufferstack + AX_surfxml_peer_power)
3950 short int surfxml_peer_power_isset;
3951 AT_surfxml_cluster_radical AX_surfxml_cluster_radical;
3952 #define A_surfxml_cluster_radical (surfxml_bufferstack + AX_surfxml_cluster_radical)
3953 short int surfxml_cluster_radical_isset;
3954 AT_surfxml_config_id AX_surfxml_config_id;
3955 #define A_surfxml_config_id (surfxml_bufferstack + AX_surfxml_config_id)
3956 short int surfxml_config_id_isset;
3957 AT_surfxml_bypassRoute_gw_src AX_surfxml_bypassRoute_gw_src;
3958 #define A_surfxml_bypassRoute_gw_src (surfxml_bufferstack + AX_surfxml_bypassRoute_gw_src)
3959 short int surfxml_bypassRoute_gw_src_isset;
3960 AT_surfxml_include_file AX_surfxml_include_file;
3961 #define A_surfxml_include_file (surfxml_bufferstack + AX_surfxml_include_file)
3962 short int surfxml_include_file_isset;
3963 AT_surfxml_random_std_deviation AX_surfxml_random_std_deviation;
3964 #define A_surfxml_random_std_deviation (surfxml_bufferstack + AX_surfxml_random_std_deviation)
3965 short int surfxml_random_std_deviation_isset;
3966 AT_surfxml_cluster_core AX_surfxml_cluster_core;
3967 #define A_surfxml_cluster_core (surfxml_bufferstack + AX_surfxml_cluster_core)
3968 short int surfxml_cluster_core_isset;
3969 AT_surfxml_host_state_file AX_surfxml_host_state_file;
3970 #define A_surfxml_host_state_file (surfxml_bufferstack + AX_surfxml_host_state_file)
3971 short int surfxml_host_state_file_isset;
3972 AT_surfxml_route_dst AX_surfxml_route_dst;
3973 #define A_surfxml_route_dst (surfxml_bufferstack + AX_surfxml_route_dst)
3974 short int surfxml_route_dst_isset;
3975 AT_surfxml_cluster_bw AX_surfxml_cluster_bw;
3976 #define A_surfxml_cluster_bw (surfxml_bufferstack + AX_surfxml_cluster_bw)
3977 short int surfxml_cluster_bw_isset;
3978 AT_surfxml_platform_version AX_surfxml_platform_version;
3979 #define A_surfxml_platform_version (surfxml_bufferstack + AX_surfxml_platform_version)
3980 short int surfxml_platform_version_isset;
3984 # define ENTER(state) debug_enter(state,#state)
3985 # define LEAVE debug_leave()
3986 # define SET(state) debug_set(state,#state)
3987 static void debug_enter(int, const char*);
3988 static void debug_leave(void);
3989 static void debug_set(int, const char*);
3991 # define ENTER(state) (yy_push_state(state))
3992 # define LEAVE (yy_pop_state())
3993 # define SET(state) BEGIN(state)
3996 /* Generic actions. */
3997 #define SKIP /*skip*/
3998 #define SUCCEED CLEANUP; return 0
4000 #define FAIL return fail
4001 static int fail(const char*, ...);
4003 enum {flexml_max_err_msg_size = 512};
4004 static char flexml_err_msg[flexml_max_err_msg_size];
4005 const char * surfxml_parse_err_msg()
4007 return flexml_err_msg;
4009 static void reset_surfxml_parse_err_msg()
4011 flexml_err_msg[0] = '\0';
4015 static void cleanup(void);
4016 #define CLEANUP cleanup()
4018 /* Text buffer stack handling. */
4019 char *surfxml_bufferstack = NULL;
4020 static int blimit = FLEXML_BUFFERSTACKSIZE;
4021 static int bnext = 1;
4023 static int *indexstack = NULL;
4024 static int ilimit = FLEXML_INDEXSTACKSIZE;
4025 static int inext = 1;
4027 #define BUFFERSET(P) (P = bnext)
4028 #define BUFFERPUTC(C) (ck_blimit(), surfxml_bufferstack[bnext++] = (C))
4029 #define BUFFERDONE (BUFFERPUTC('\0'))
4031 #define BUFFERLITERAL(C, P) surfxml_bufferliteral(C, &(P), surf_parse_text)
4033 /* after this is called, there are at least 2 slots left in the stack */
4034 static int ck_blimit()
4036 if (bnext >= blimit) {
4037 blimit += FLEXML_BUFFERSTACKSIZE + 2;
4039 char *temp = (char *) realloc(surfxml_bufferstack, blimit);
4041 surfxml_bufferstack = temp;
4047 /* after this is called, there are at least 2 slots left in the stack */
4048 static int ck_ilimit()
4050 if (inext >= ilimit) {
4051 ilimit += FLEXML_INDEXSTACKSIZE + 2;
4053 int *temp = (int *) realloc(indexstack, ilimit);
4061 #ifdef FLEXML_NEED_BUFFERLIT
4062 static void surfxml_bufferliteral(char c, int* pp, const char* text)
4064 const char *s = (c ? strchr(text,c) : text-1), *e = strrchr(text,c);
4065 assert(s <= e); BUFFERSET(*pp);
4067 if (isspace(*s) && c) { BUFFERPUTC(' '); while (isspace(*s)) ++s; }
4068 else BUFFERPUTC(*s);
4074 static void pushbuffer(int p)
4077 indexstack[inext++] = p;
4078 indexstack[inext++] = bnext;
4081 static int popbuffer(void)
4084 bnext = indexstack[--inext];
4085 return indexstack[--inext];
4088 /* General internal entities are `unput' back onto the input stream... */
4089 #define ENTITYTEXT(T) \
4090 { char *s = (T), *e = s+strlen(s);\
4091 while (--e >= s) { unput(*e); }}
4093 /* Flex standard options. */
4094 #define YY_NO_INPUT 1
4095 /* Flex user-requested options. */
4096 /* XML character classes (currently restricted to ASCII). */
4097 /* "Common syntactic structures." */
4098 /* "Names and Tokens." */
4099 /* Miscellaneous. */
4100 /* Parser states (flex `exclusive start conditions'):
4102 * PROLOG the XML prolog of the document before <?xml...>
4103 * DOCTYPE the XML prolog of the document after <?xml...>
4104 * EPILOG after the root element
4105 * INCOMMENT inside an XML comment <!--....-->
4106 * INPI inside an XML PI <?...?>
4107 * VALUE1 inside a '...'-delimited literal
4108 * VALUE2 inside a "..."-delimited literal
4109 * CDATA inside a <![CDATA[...] ]> section.
4110 * ROOT_<tag> expect root element <tag>
4111 * AL_<tag> inside the attribute list for <tag>
4112 * IN_<tag> inside a <tag> with element contents (ready for end tag)
4113 * IMPOSSIBLE dummy to permit disabling rules; must be last
4117 const char* *surfxml_statenames=NULL;
4128 #define ROOT_surfxml_platform 9
4129 #define AL_surfxml_platform 10
4130 #define S_surfxml_platform 11
4131 #define S_surfxml_platform_1 12
4132 #define S_surfxml_platform_2 13
4133 #define S_surfxml_platform_3 14
4134 #define S_surfxml_platform_4 15
4135 #define S_surfxml_platform_5 16
4136 #define S_surfxml_platform_6 17
4137 #define S_surfxml_platform_7 18
4138 #define S_surfxml_platform_8 19
4139 #define E_surfxml_platform 20
4140 #define AL_surfxml_include 21
4141 #define E_surfxml_include 22
4142 #define AL_surfxml_trace 23
4144 #define AL_surfxml_random 25
4145 #define S_surfxml_random 26
4146 #define S_surfxml_random_1 27
4147 #define S_surfxml_random_2 28
4148 #define E_surfxml_random 29
4149 #define AL_surfxml_trace_connect 30
4150 #define E_surfxml_trace_connect 31
4151 #define AL_surfxml_AS 32
4152 #define S_surfxml_AS 33
4153 #define S_surfxml_AS_1 34
4154 #define S_surfxml_AS_2 35
4155 #define S_surfxml_AS_3 36
4156 #define S_surfxml_AS_4 37
4157 #define S_surfxml_AS_5 38
4158 #define S_surfxml_AS_6 39
4159 #define S_surfxml_AS_7 40
4160 #define S_surfxml_AS_8 41
4161 #define S_surfxml_AS_9 42
4162 #define S_surfxml_AS_10 43
4163 #define S_surfxml_AS_11 44
4164 #define S_surfxml_AS_12 45
4165 #define S_surfxml_AS_13 46
4166 #define E_surfxml_AS 47
4167 #define AL_surfxml_storage_type 48
4168 #define S_surfxml_storage_type 49
4169 #define S_surfxml_storage_type_1 50
4170 #define S_surfxml_storage_type_2 51
4171 #define E_surfxml_storage_type 52
4172 #define AL_surfxml_storage 53
4173 #define S_surfxml_storage 54
4174 #define S_surfxml_storage_1 55
4175 #define S_surfxml_storage_2 56
4176 #define E_surfxml_storage 57
4177 #define AL_surfxml_mount 58
4178 #define E_surfxml_mount 59
4179 #define AL_surfxml_mstorage 60
4180 #define E_surfxml_mstorage 61
4181 #define AL_surfxml_host 62
4182 #define S_surfxml_host 63
4183 #define S_surfxml_host_1 64
4184 #define S_surfxml_host_2 65
4185 #define E_surfxml_host 66
4186 #define AL_surfxml_cluster 67
4187 #define E_surfxml_cluster 68
4188 #define AL_surfxml_peer 69
4189 #define E_surfxml_peer 70
4190 #define AL_surfxml_router 71
4191 #define E_surfxml_router 72
4192 #define AL_surfxml_link 73
4193 #define S_surfxml_link 74
4194 #define S_surfxml_link_1 75
4195 #define S_surfxml_link_2 76
4196 #define E_surfxml_link 77
4197 #define AL_surfxml_route 78
4198 #define S_surfxml_route 79
4199 #define S_surfxml_route_1 80
4200 #define S_surfxml_route_2 81
4201 #define E_surfxml_route 82
4202 #define AL_surfxml_ASroute 83
4203 #define S_surfxml_ASroute 84
4204 #define S_surfxml_ASroute_1 85
4205 #define S_surfxml_ASroute_2 86
4206 #define E_surfxml_ASroute 87
4207 #define AL_surfxml_link_ctn 88
4208 #define E_surfxml_link_ctn 89
4209 #define AL_surfxml_bypassRoute 90
4210 #define S_surfxml_bypassRoute 91
4211 #define S_surfxml_bypassRoute_1 92
4212 #define S_surfxml_bypassRoute_2 93
4213 #define E_surfxml_bypassRoute 94
4214 #define AL_surfxml_process 95
4215 #define S_surfxml_process 96
4216 #define S_surfxml_process_1 97
4217 #define S_surfxml_process_2 98
4218 #define E_surfxml_process 99
4219 #define AL_surfxml_argument 100
4220 #define E_surfxml_argument 101
4221 #define AL_surfxml_config 102
4222 #define S_surfxml_config 103
4223 #define S_surfxml_config_1 104
4224 #define S_surfxml_config_2 105
4225 #define E_surfxml_config 106
4226 #define AL_surfxml_prop 107
4227 #define E_surfxml_prop 108
4228 #define IMPOSSIBLE 109
4230 #ifndef YY_NO_UNISTD_H
4231 /* Special case for "unistd.h", since it is non-ANSI. We include it way
4232 * down here because we want the user's section 1 to have been scanned first.
4233 * The user has a chance to override it with an option.
4235 #if defined(_XBT_WIN32) || defined(__WIN32__) || defined(WIN32) || defined(__TOS_WIN__)
4236 # ifndef __STRICT_ANSI__
4238 # include <process.h>
4241 # include <unistd.h>
4245 #ifndef YY_EXTRA_TYPE
4246 #define YY_EXTRA_TYPE void *
4249 static int yy_init_globals (void );
4251 /* Accessor methods to globals.
4252 These are made visible to non-reentrant scanners for convenience. */
4254 int surf_parse_lex_destroy (void );
4256 int surf_parse_get_debug (void );
4258 void surf_parse_set_debug (int debug_flag );
4260 YY_EXTRA_TYPE surf_parse_get_extra (void );
4262 void surf_parse_set_extra (YY_EXTRA_TYPE user_defined );
4264 FILE *surf_parse_get_in (void );
4266 void surf_parse_set_in (FILE * in_str );
4268 FILE *surf_parse_get_out (void );
4270 void surf_parse_set_out (FILE * out_str );
4272 int surf_parse_get_leng (void );
4274 char *surf_parse_get_text (void );
4276 int surf_parse_get_lineno (void );
4278 void surf_parse_set_lineno (int line_number );
4280 /* Macros after this point can all be overridden by user definitions in
4284 #ifndef YY_SKIP_YYWRAP
4286 extern "C" int surf_parse_wrap (void );
4288 extern int surf_parse_wrap (void );
4293 static void yy_flex_strncpy (char *,yyconst char *,int );
4296 #ifdef YY_NEED_STRLEN
4297 static int yy_flex_strlen (yyconst char * );
4303 static int yyinput (void );
4305 static int input (void );
4310 static int yy_start_stack_ptr = 0;
4311 static int yy_start_stack_depth = 0;
4312 static int *yy_start_stack = NULL;
4314 static void yy_push_state (int new_state );
4316 static void yy_pop_state (void );
4318 /* Amount of stuff to slurp up with each read. */
4319 #ifndef YY_READ_BUF_SIZE
4321 /* On IA-64, the buffer size is 16k, not 8k */
4322 #define YY_READ_BUF_SIZE 16384
4324 #define YY_READ_BUF_SIZE 8192
4325 #endif /* __ia64__ */
4328 /* Copy whatever the last rule matched to the standard output. */
4330 /* This used to be an fputs(), but since the string might contain NUL's,
4331 * we now use fwrite().
4333 #define ECHO do { if (fwrite( surf_parse_text, surf_parse_leng, 1, surf_parse_out )) {} } while (0)
4336 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
4337 * is returned in "result".
4340 #define YY_INPUT(buf,result,max_size) \
4341 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
4345 for ( n = 0; n < max_size && \
4346 (c = getc( surf_parse_in )) != EOF && c != '\n'; ++n ) \
4347 buf[n] = (char) c; \
4349 buf[n++] = (char) c; \
4350 if ( c == EOF && ferror( surf_parse_in ) ) \
4351 YY_FATAL_ERROR( "input in flex scanner failed" ); \
4357 while ( (result = fread(buf, 1, max_size, surf_parse_in))==0 && ferror(surf_parse_in)) \
4359 if( errno != EINTR) \
4361 YY_FATAL_ERROR( "input in flex scanner failed" ); \
4365 clearerr(surf_parse_in); \
4372 /* No semi-colon after return; correct usage is to write "yyterminate();" -
4373 * we don't want an extra ';' after the "return" because that will cause
4374 * some compilers to complain about unreachable statements.
4377 #define yyterminate() return YY_NULL
4380 /* Number of entries by which start-condition stack grows. */
4381 #ifndef YY_START_STACK_INCR
4382 #define YY_START_STACK_INCR 25
4385 /* Report a fatal error. */
4386 #ifndef YY_FATAL_ERROR
4387 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
4390 /* end tables serialization structures and prototypes */
4392 /* Default declaration of generated scanner - a define so the user can
4393 * easily add parameters.
4396 #define YY_DECL_IS_OURS 1
4398 extern int surf_parse_lex (void);
4400 #define YY_DECL int surf_parse_lex (void)
4401 #endif /* !YY_DECL */
4403 /* Code executed at the beginning of each rule, after surf_parse_text and surf_parse_leng
4406 #ifndef YY_USER_ACTION
4407 #define YY_USER_ACTION
4410 /* Code executed at the end of each rule. */
4412 #define YY_BREAK break;
4415 #define YY_RULE_SETUP \
4418 /** The main scanner function which does all the work.
4422 register yy_state_type yy_current_state;
4423 register char *yy_cp, *yy_bp;
4424 register int yy_act;
4426 /* Bypass Flex's default INITIAL state and begin by parsing the XML prolog. */
4428 reset_surfxml_parse_err_msg();
4429 surfxml_bufferstack = (char *) malloc(FLEXML_BUFFERSTACKSIZE);
4430 assert(surfxml_bufferstack);
4434 for (i = 0; i < blimit; i++) {
4435 surfxml_bufferstack[i] = '\377';
4439 surfxml_bufferstack[0] = '\0';
4440 indexstack = (int *) malloc(FLEXML_INDEXSTACKSIZE * sizeof(int));
4446 surfxml_bufferliteral('\0', &bnext, "0.0");
4447 surfxml_bufferliteral('\0', &bnext, "2147483647");
4448 surfxml_bufferliteral('\0', &bnext, "1");
4449 surfxml_bufferliteral('\0', &bnext, "1.0");
4450 surfxml_bufferliteral('\0', &bnext, "1");
4451 surfxml_bufferliteral('\0', &bnext, "0.0");
4452 surfxml_bufferliteral('\0', &bnext, "-1.0");
4453 surfxml_bufferliteral('\0', &bnext, "-1.0");
4454 if(!surfxml_statenames) {surfxml_statenames= (const char **)calloc(IMPOSSIBLE,sizeof(char*));
4455 surfxml_statenames[PROLOG] = NULL;
4456 surfxml_statenames[DOCTYPE] = NULL;
4457 surfxml_statenames[EPILOG] = NULL;
4458 surfxml_statenames[INCOMMENT] = NULL;
4459 surfxml_statenames[INPI] = NULL;
4460 surfxml_statenames[VALUE1] = NULL;
4461 surfxml_statenames[VALUE2] = NULL;
4462 surfxml_statenames[CDATA] = NULL;
4463 surfxml_statenames[ROOT_surfxml_platform] = NULL;
4464 surfxml_statenames[AL_surfxml_platform] = NULL;
4465 surfxml_statenames[S_surfxml_platform] = "platform";
4466 surfxml_statenames[S_surfxml_platform_1] = "platform";
4467 surfxml_statenames[S_surfxml_platform_2] = "platform";
4468 surfxml_statenames[S_surfxml_platform_3] = "platform";
4469 surfxml_statenames[S_surfxml_platform_4] = "platform";
4470 surfxml_statenames[S_surfxml_platform_5] = "platform";
4471 surfxml_statenames[S_surfxml_platform_6] = "platform";
4472 surfxml_statenames[S_surfxml_platform_7] = "platform";
4473 surfxml_statenames[S_surfxml_platform_8] = "platform";
4474 surfxml_statenames[E_surfxml_platform] = "platform";
4475 surfxml_statenames[AL_surfxml_include] = NULL;
4476 surfxml_statenames[E_surfxml_include] = "include";
4477 surfxml_statenames[AL_surfxml_trace] = NULL;
4478 surfxml_statenames[IN_trace] = "trace";
4479 surfxml_statenames[AL_surfxml_random] = NULL;
4480 surfxml_statenames[S_surfxml_random] = "random";
4481 surfxml_statenames[S_surfxml_random_1] = "random";
4482 surfxml_statenames[S_surfxml_random_2] = "random";
4483 surfxml_statenames[E_surfxml_random] = "random";
4484 surfxml_statenames[AL_surfxml_trace_connect] = NULL;
4485 surfxml_statenames[E_surfxml_trace_connect] = "trace_connect";
4486 surfxml_statenames[AL_surfxml_AS] = NULL;
4487 surfxml_statenames[S_surfxml_AS] = "AS";
4488 surfxml_statenames[S_surfxml_AS_1] = "AS";
4489 surfxml_statenames[S_surfxml_AS_2] = "AS";
4490 surfxml_statenames[S_surfxml_AS_3] = "AS";
4491 surfxml_statenames[S_surfxml_AS_4] = "AS";
4492 surfxml_statenames[S_surfxml_AS_5] = "AS";
4493 surfxml_statenames[S_surfxml_AS_6] = "AS";
4494 surfxml_statenames[S_surfxml_AS_7] = "AS";
4495 surfxml_statenames[S_surfxml_AS_8] = "AS";
4496 surfxml_statenames[S_surfxml_AS_9] = "AS";
4497 surfxml_statenames[S_surfxml_AS_10] = "AS";
4498 surfxml_statenames[S_surfxml_AS_11] = "AS";
4499 surfxml_statenames[S_surfxml_AS_12] = "AS";
4500 surfxml_statenames[S_surfxml_AS_13] = "AS";
4501 surfxml_statenames[E_surfxml_AS] = "AS";
4502 surfxml_statenames[AL_surfxml_storage_type] = NULL;
4503 surfxml_statenames[S_surfxml_storage_type] = "storage_type";
4504 surfxml_statenames[S_surfxml_storage_type_1] = "storage_type";
4505 surfxml_statenames[S_surfxml_storage_type_2] = "storage_type";
4506 surfxml_statenames[E_surfxml_storage_type] = "storage_type";
4507 surfxml_statenames[AL_surfxml_storage] = NULL;
4508 surfxml_statenames[S_surfxml_storage] = "storage";
4509 surfxml_statenames[S_surfxml_storage_1] = "storage";
4510 surfxml_statenames[S_surfxml_storage_2] = "storage";
4511 surfxml_statenames[E_surfxml_storage] = "storage";
4512 surfxml_statenames[AL_surfxml_mount] = NULL;
4513 surfxml_statenames[E_surfxml_mount] = "mount";
4514 surfxml_statenames[AL_surfxml_mstorage] = NULL;
4515 surfxml_statenames[E_surfxml_mstorage] = "mstorage";
4516 surfxml_statenames[AL_surfxml_host] = NULL;
4517 surfxml_statenames[S_surfxml_host] = "host";
4518 surfxml_statenames[S_surfxml_host_1] = "host";
4519 surfxml_statenames[S_surfxml_host_2] = "host";
4520 surfxml_statenames[E_surfxml_host] = "host";
4521 surfxml_statenames[AL_surfxml_cluster] = NULL;
4522 surfxml_statenames[E_surfxml_cluster] = "cluster";
4523 surfxml_statenames[AL_surfxml_peer] = NULL;
4524 surfxml_statenames[E_surfxml_peer] = "peer";
4525 surfxml_statenames[AL_surfxml_router] = NULL;
4526 surfxml_statenames[E_surfxml_router] = "router";
4527 surfxml_statenames[AL_surfxml_link] = NULL;
4528 surfxml_statenames[S_surfxml_link] = "link";
4529 surfxml_statenames[S_surfxml_link_1] = "link";
4530 surfxml_statenames[S_surfxml_link_2] = "link";
4531 surfxml_statenames[E_surfxml_link] = "link";
4532 surfxml_statenames[AL_surfxml_route] = NULL;
4533 surfxml_statenames[S_surfxml_route] = "route";
4534 surfxml_statenames[S_surfxml_route_1] = "route";
4535 surfxml_statenames[S_surfxml_route_2] = "route";
4536 surfxml_statenames[E_surfxml_route] = "route";
4537 surfxml_statenames[AL_surfxml_ASroute] = NULL;
4538 surfxml_statenames[S_surfxml_ASroute] = "ASroute";
4539 surfxml_statenames[S_surfxml_ASroute_1] = "ASroute";
4540 surfxml_statenames[S_surfxml_ASroute_2] = "ASroute";
4541 surfxml_statenames[E_surfxml_ASroute] = "ASroute";
4542 surfxml_statenames[AL_surfxml_link_ctn] = NULL;
4543 surfxml_statenames[E_surfxml_link_ctn] = "link_ctn";
4544 surfxml_statenames[AL_surfxml_bypassRoute] = NULL;
4545 surfxml_statenames[S_surfxml_bypassRoute] = "bypassRoute";
4546 surfxml_statenames[S_surfxml_bypassRoute_1] = "bypassRoute";
4547 surfxml_statenames[S_surfxml_bypassRoute_2] = "bypassRoute";
4548 surfxml_statenames[E_surfxml_bypassRoute] = "bypassRoute";
4549 surfxml_statenames[AL_surfxml_process] = NULL;
4550 surfxml_statenames[S_surfxml_process] = "process";
4551 surfxml_statenames[S_surfxml_process_1] = "process";
4552 surfxml_statenames[S_surfxml_process_2] = "process";
4553 surfxml_statenames[E_surfxml_process] = "process";
4554 surfxml_statenames[AL_surfxml_argument] = NULL;
4555 surfxml_statenames[E_surfxml_argument] = "argument";
4556 surfxml_statenames[AL_surfxml_config] = NULL;
4557 surfxml_statenames[S_surfxml_config] = "config";
4558 surfxml_statenames[S_surfxml_config_1] = "config";
4559 surfxml_statenames[S_surfxml_config_2] = "config";
4560 surfxml_statenames[E_surfxml_config] = "config";
4561 surfxml_statenames[AL_surfxml_prop] = NULL;
4562 surfxml_statenames[E_surfxml_prop] = "prop";
4565 /* COMMENTS and PIs: handled uniformly for efficiency. */
4576 (yy_start) = 1; /* first start state */
4578 if ( ! surf_parse_in )
4579 surf_parse_in = stdin;
4581 if ( ! surf_parse_out )
4582 surf_parse_out = stdout;
4584 if ( ! YY_CURRENT_BUFFER ) {
4585 surf_parse_ensure_buffer_stack ();
4586 YY_CURRENT_BUFFER_LVALUE =
4587 surf_parse__create_buffer(surf_parse_in,YY_BUF_SIZE );
4590 surf_parse__load_buffer_state( );
4593 while ( 1 ) /* loops until end-of-file is reached */
4595 yy_cp = (yy_c_buf_p);
4597 /* Support of surf_parse_text. */
4598 *yy_cp = (yy_hold_char);
4600 /* yy_bp points to the position in yy_ch_buf of the start of
4605 yy_current_state = (yy_start);
4609 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
4610 if ( yy_accept[yy_current_state] )
4612 (yy_last_accepting_state) = yy_current_state;
4613 (yy_last_accepting_cpos) = yy_cp;
4615 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
4617 yy_current_state = (int) yy_def[yy_current_state];
4618 if ( yy_current_state >= 2695 )
4619 yy_c = yy_meta[(unsigned int) yy_c];
4621 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
4624 while ( yy_base[yy_current_state] != 9619 );
4627 yy_act = yy_accept[yy_current_state];
4629 { /* have to back up */
4630 yy_cp = (yy_last_accepting_cpos);
4631 yy_current_state = (yy_last_accepting_state);
4632 yy_act = yy_accept[yy_current_state];
4635 YY_DO_BEFORE_ACTION;
4637 if ( yy_act != YY_END_OF_BUFFER && yy_rule_can_match_eol[yy_act] )
4640 for ( yyl = 0; yyl < surf_parse_leng; ++yyl )
4641 if ( surf_parse_text[yyl] == '\n' )
4643 surf_parse_lineno++;
4647 do_action: /* This label is used only to access EOF actions. */
4650 { /* beginning of action switch */
4651 case 0: /* must back up */
4652 /* undo the effects of YY_DO_BEFORE_ACTION */
4653 *yy_cp = (yy_hold_char);
4654 yy_cp = (yy_last_accepting_cpos);
4655 yy_current_state = (yy_last_accepting_state);
4656 goto yy_find_action;
4674 /* rule 6 can match eol */
4678 case YY_STATE_EOF(INCOMMENT):
4679 FAIL("EOF in comment.");
4688 /* rule 9 can match eol */
4692 case YY_STATE_EOF(INPI):
4693 FAIL("EOF in PI (processing instruction).");
4696 /* SPACES: skipped uniformly */
4698 /* rule 10 can match eol */
4702 /* PROLOG: determine root element and process it. */
4705 /* rule 11 can match eol */
4710 /* rule 12 can match eol */
4712 FAIL("Bad declaration %s.",surf_parse_text);
4716 /* rule 13 can match eol */
4718 SET(ROOT_surfxml_platform);
4721 /* rule 14 can match eol */
4723 FAIL("Bad declaration %s.",surf_parse_text);
4727 FAIL("Unexpected character `%c' in prolog.", surf_parse_text[0]);
4729 case YY_STATE_EOF(PROLOG):
4730 case YY_STATE_EOF(DOCTYPE):
4731 FAIL("EOF in prolog.");
4734 /* RULES DERIVED FROM DTD. */
4735 /* <!-- Small DTD for SURF based tools. --> */
4737 /* rule 16 can match eol */
4739 FAIL("Starting tag <platform> is not allowed here.");
4742 /* rule 17 can match eol */
4745 AX_surfxml_platform_version = 1;
4746 surfxml_platform_version_isset = 0;
4747 ENTER(AL_surfxml_platform); pushbuffer(0);
4752 /* rule 18 can match eol */
4754 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);
4757 /* rule 19 can match eol */
4759 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);
4764 LEAVE; STag_surfxml_platform();surfxml_pcdata_ix = 0; ENTER(S_surfxml_platform);
4770 LEAVE; STag_surfxml_platform(); surfxml_pcdata_ix = 0; ETag_surfxml_platform(); popbuffer(); /* attribute */
4772 case ROOT_surfxml_platform: SET(EPILOG); break;
4778 FAIL("Unexpected character `%c' in attribute list of platform element.", surf_parse_text[0]);
4782 FAIL("Bad attribute `%s' in `platform' element start tag.",surf_parse_text);
4784 case YY_STATE_EOF(AL_surfxml_platform):
4785 FAIL("EOF in attribute list of `platform' element.");
4789 /* rule 24 can match eol */
4793 ETag_surfxml_platform();
4794 popbuffer(); /* attribute */
4796 case ROOT_surfxml_platform: SET(EPILOG); break;
4801 /* rule 25 can match eol */
4803 FAIL("Unexpected end-tag `%s': `</platform>' expected.",surf_parse_text);
4807 FAIL("Unexpected character `%c': `</platform>' expected.",surf_parse_text[0]);
4809 case YY_STATE_EOF(S_surfxml_platform_8):
4810 case YY_STATE_EOF(S_surfxml_platform_1):
4811 case YY_STATE_EOF(S_surfxml_platform_3):
4812 case YY_STATE_EOF(S_surfxml_platform):
4813 case YY_STATE_EOF(S_surfxml_platform_4):
4814 case YY_STATE_EOF(S_surfxml_platform_6):
4815 case YY_STATE_EOF(E_surfxml_platform):
4816 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</platform>' expected.");
4820 /* rule 27 can match eol */
4822 FAIL("Starting tag <include> is not allowed here.");
4825 /* rule 28 can match eol */
4828 AX_surfxml_include_file = 0;
4829 surfxml_include_file_isset = 0;
4830 ENTER(AL_surfxml_include); pushbuffer(0);
4835 /* rule 29 can match eol */
4837 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);
4840 /* rule 30 can match eol */
4842 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);
4847 if (!AX_surfxml_include_file) FAIL("Required attribute `file' not set for `include' element.");
4848 LEAVE; STag_surfxml_include();surfxml_pcdata_ix = 0; ENTER(E_surfxml_include);
4854 if (!AX_surfxml_include_file) FAIL("Required attribute `file' not set for `include' element.");
4855 LEAVE; STag_surfxml_include(); surfxml_pcdata_ix = 0; ETag_surfxml_include(); popbuffer(); /* attribute */
4857 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
4858 case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
4859 case S_surfxml_platform_5: SET(S_surfxml_platform_6); break;
4860 case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_6: case S_surfxml_platform_8: case S_surfxml_platform_7: case S_surfxml_platform_3: case S_surfxml_platform_4: SET(S_surfxml_platform_8); break;
4866 FAIL("Unexpected character `%c' in attribute list of include element.", surf_parse_text[0]);
4870 FAIL("Bad attribute `%s' in `include' element start tag.",surf_parse_text);
4872 case YY_STATE_EOF(AL_surfxml_include):
4873 FAIL("EOF in attribute list of `include' element.");
4877 /* rule 35 can match eol */
4881 ETag_surfxml_include();
4882 popbuffer(); /* attribute */
4884 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
4885 case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
4886 case S_surfxml_platform_5: SET(S_surfxml_platform_6); break;
4887 case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_6: case S_surfxml_platform_8: case S_surfxml_platform_7: case S_surfxml_platform_3: case S_surfxml_platform_4: SET(S_surfxml_platform_8); break;
4892 /* rule 36 can match eol */
4894 FAIL("Unexpected end-tag `%s': `</include>' expected.",surf_parse_text);
4898 FAIL("Unexpected character `%c': `</include>' expected.",surf_parse_text[0]);
4900 case YY_STATE_EOF(E_surfxml_include):
4901 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</include>' expected.");
4905 /* rule 38 can match eol */
4907 FAIL("Starting tag <trace> is not allowed here.");
4910 /* rule 39 can match eol */
4913 AX_surfxml_trace_id = 0;
4914 surfxml_trace_id_isset = 0;
4915 AX_surfxml_trace_file = 0;
4916 surfxml_trace_file_isset = 0;
4917 AX_surfxml_trace_periodicity = 0;
4918 surfxml_trace_periodicity_isset = 0;
4919 ENTER(AL_surfxml_trace); pushbuffer(0);
4924 /* rule 40 can match eol */
4926 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);
4929 /* rule 41 can match eol */
4931 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);
4934 /* rule 42 can match eol */
4936 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);
4939 /* rule 43 can match eol */
4941 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);
4944 /* rule 44 can match eol */
4946 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);
4949 /* rule 45 can match eol */
4951 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);
4956 if (!AX_surfxml_trace_id) FAIL("Required attribute `id' not set for `trace' element.");
4957 if (!AX_surfxml_trace_periodicity) FAIL("Required attribute `periodicity' not set for `trace' element.");
4958 LEAVE; STag_surfxml_trace();pushbuffer(surfxml_pcdata_ix); BUFFERSET(surfxml_pcdata_ix);; ENTER(IN_trace);
4964 if (!AX_surfxml_trace_id) FAIL("Required attribute `id' not set for `trace' element.");
4965 if (!AX_surfxml_trace_periodicity) FAIL("Required attribute `periodicity' not set for `trace' element.");
4966 LEAVE; STag_surfxml_trace(); surfxml_pcdata_ix = 0; ETag_surfxml_trace(); popbuffer(); /* attribute */
4968 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;
4969 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
4970 case S_surfxml_AS_2: SET(S_surfxml_AS_3); break;
4971 case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break;
4972 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;
4973 case S_surfxml_AS_12: case S_surfxml_AS_9: case S_surfxml_AS_13: SET(S_surfxml_AS_13); break;
4979 FAIL("Unexpected character `%c' in attribute list of trace element.", surf_parse_text[0]);
4983 FAIL("Bad attribute `%s' in `trace' element start tag.",surf_parse_text);
4985 case YY_STATE_EOF(AL_surfxml_trace):
4986 FAIL("EOF in attribute list of `trace' element.");
4990 /* rule 50 can match eol */
4995 ETag_surfxml_trace();
4996 surfxml_pcdata_ix = popbuffer();
4997 popbuffer(); /* attribute */
4999 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;
5000 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5001 case S_surfxml_AS_2: SET(S_surfxml_AS_3); break;
5002 case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break;
5003 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;
5004 case S_surfxml_AS_12: case S_surfxml_AS_9: case S_surfxml_AS_13: SET(S_surfxml_AS_13); break;
5009 /* rule 51 can match eol */
5011 FAIL("Unexpected end-tag `%s': `</trace>' expected.",surf_parse_text);
5013 case YY_STATE_EOF(IN_trace):
5014 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</trace>' expected.");
5018 /* rule 52 can match eol */
5020 FAIL("Starting tag <random> is not allowed here.");
5023 /* rule 53 can match eol */
5026 AX_surfxml_random_id = 0;
5027 surfxml_random_id_isset = 0;
5028 AX_surfxml_random_min = 0;
5029 surfxml_random_min_isset = 0;
5030 AX_surfxml_random_max = 0;
5031 surfxml_random_max_isset = 0;
5032 AX_surfxml_random_mean = 0;
5033 surfxml_random_mean_isset = 0;
5034 AX_surfxml_random_std_deviation = 0;
5035 surfxml_random_std_deviation_isset = 0;
5036 AX_surfxml_random_seed = 5;
5037 surfxml_random_seed_isset = 0;
5038 AX_surfxml_random_radical = 0;
5039 surfxml_random_radical_isset = 0;
5040 AX_surfxml_random_generator = A_surfxml_random_generator_DRAND48;
5041 surfxml_random_generator_isset = 0;
5042 ENTER(AL_surfxml_random); pushbuffer(0);
5047 /* rule 54 can match eol */
5049 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);
5052 /* rule 55 can match eol */
5054 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);
5057 /* rule 56 can match eol */
5059 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);
5062 /* rule 57 can match eol */
5064 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);
5067 /* rule 58 can match eol */
5069 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);
5072 /* rule 59 can match eol */
5074 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);
5077 /* rule 60 can match eol */
5079 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);
5082 /* rule 61 can match eol */
5084 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);
5087 /* rule 62 can match eol */
5089 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);
5092 /* rule 63 can match eol */
5094 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);
5097 /* rule 64 can match eol */
5099 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);
5102 /* rule 65 can match eol */
5104 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);
5107 /* rule 66 can match eol */
5109 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);
5112 /* rule 67 can match eol */
5114 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);
5117 /* rule 68 can match eol */
5119 /* rule 69 can match eol */
5121 A_surfxml_random_generator = A_surfxml_random_generator_DRAND48;
5124 /* rule 70 can match eol */
5126 /* rule 71 can match eol */
5128 A_surfxml_random_generator = A_surfxml_random_generator_RAND;
5131 /* rule 72 can match eol */
5133 /* rule 73 can match eol */
5135 A_surfxml_random_generator = A_surfxml_random_generator_RNGSTREAM;
5138 /* rule 74 can match eol */
5140 /* rule 75 can match eol */
5142 A_surfxml_random_generator = A_surfxml_random_generator_NONE;
5147 if (!AX_surfxml_random_id) FAIL("Required attribute `id' not set for `random' element.");
5148 if (!AX_surfxml_random_min) FAIL("Required attribute `min' not set for `random' element.");
5149 if (!AX_surfxml_random_max) FAIL("Required attribute `max' not set for `random' element.");
5150 if (!AX_surfxml_random_mean) FAIL("Required attribute `mean' not set for `random' element.");
5151 if (!AX_surfxml_random_std_deviation) FAIL("Required attribute `std_deviation' not set for `random' element.");
5152 LEAVE; STag_surfxml_random();surfxml_pcdata_ix = 0; ENTER(S_surfxml_random);
5158 if (!AX_surfxml_random_id) FAIL("Required attribute `id' not set for `random' element.");
5159 if (!AX_surfxml_random_min) FAIL("Required attribute `min' not set for `random' element.");
5160 if (!AX_surfxml_random_max) FAIL("Required attribute `max' not set for `random' element.");
5161 if (!AX_surfxml_random_mean) FAIL("Required attribute `mean' not set for `random' element.");
5162 if (!AX_surfxml_random_std_deviation) FAIL("Required attribute `std_deviation' not set for `random' element.");
5163 LEAVE; STag_surfxml_random(); surfxml_pcdata_ix = 0; ETag_surfxml_random(); popbuffer(); /* attribute */
5165 case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break;
5171 FAIL("Unexpected character `%c' in attribute list of random element.", surf_parse_text[0]);
5175 FAIL("Bad attribute `%s' in `random' element start tag.",surf_parse_text);
5177 case YY_STATE_EOF(AL_surfxml_random):
5178 FAIL("EOF in attribute list of `random' element.");
5182 /* rule 80 can match eol */
5186 ETag_surfxml_random();
5187 popbuffer(); /* attribute */
5189 case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break;
5194 /* rule 81 can match eol */
5196 FAIL("Unexpected end-tag `%s': `</random>' expected.",surf_parse_text);
5200 FAIL("Unexpected character `%c': `</random>' expected.",surf_parse_text[0]);
5202 case YY_STATE_EOF(S_surfxml_random):
5203 case YY_STATE_EOF(S_surfxml_random_2):
5204 case YY_STATE_EOF(E_surfxml_random):
5205 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</random>' expected.");
5209 /* rule 83 can match eol */
5211 FAIL("Starting tag <trace_connect> is not allowed here.");
5214 /* rule 84 can match eol */
5217 AX_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_HOST_AVAIL;
5218 surfxml_trace_connect_kind_isset = 0;
5219 AX_surfxml_trace_connect_trace = 0;
5220 surfxml_trace_connect_trace_isset = 0;
5221 AX_surfxml_trace_connect_element = 0;
5222 surfxml_trace_connect_element_isset = 0;
5223 ENTER(AL_surfxml_trace_connect); pushbuffer(0);
5228 /* rule 85 can match eol */
5230 /* rule 86 can match eol */
5232 A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_HOST_AVAIL;
5235 /* rule 87 can match eol */
5237 /* rule 88 can match eol */
5239 A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_POWER;
5242 /* rule 89 can match eol */
5244 /* rule 90 can match eol */
5246 A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_LINK_AVAIL;
5249 /* rule 91 can match eol */
5251 /* rule 92 can match eol */
5253 A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_BANDWIDTH;
5256 /* rule 93 can match eol */
5258 /* rule 94 can match eol */
5260 A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_LATENCY;
5263 /* rule 95 can match eol */
5265 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);
5268 /* rule 96 can match eol */
5270 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);
5273 /* rule 97 can match eol */
5275 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);
5278 /* rule 98 can match eol */
5280 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);
5285 if (!AX_surfxml_trace_connect_trace) FAIL("Required attribute `trace' not set for `trace_connect' element.");
5286 if (!AX_surfxml_trace_connect_element) FAIL("Required attribute `element' not set for `trace_connect' element.");
5287 LEAVE; STag_surfxml_trace_connect();surfxml_pcdata_ix = 0; ENTER(E_surfxml_trace_connect);
5293 if (!AX_surfxml_trace_connect_trace) FAIL("Required attribute `trace' not set for `trace_connect' element.");
5294 if (!AX_surfxml_trace_connect_element) FAIL("Required attribute `element' not set for `trace_connect' element.");
5295 LEAVE; STag_surfxml_trace_connect(); surfxml_pcdata_ix = 0; ETag_surfxml_trace_connect(); popbuffer(); /* attribute */
5297 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;
5298 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5299 case S_surfxml_AS_2: SET(S_surfxml_AS_3); break;
5300 case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break;
5301 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;
5302 case S_surfxml_AS_12: case S_surfxml_AS_9: case S_surfxml_AS_13: SET(S_surfxml_AS_13); break;
5308 FAIL("Unexpected character `%c' in attribute list of trace_connect element.", surf_parse_text[0]);
5312 FAIL("Bad attribute `%s' in `trace_connect' element start tag.",surf_parse_text);
5314 case YY_STATE_EOF(AL_surfxml_trace_connect):
5315 FAIL("EOF in attribute list of `trace_connect' element.");
5319 /* rule 103 can match eol */
5323 ETag_surfxml_trace_connect();
5324 popbuffer(); /* attribute */
5326 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;
5327 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5328 case S_surfxml_AS_2: SET(S_surfxml_AS_3); break;
5329 case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break;
5330 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;
5331 case S_surfxml_AS_12: case S_surfxml_AS_9: case S_surfxml_AS_13: SET(S_surfxml_AS_13); break;
5336 /* rule 104 can match eol */
5338 FAIL("Unexpected end-tag `%s': `</trace_connect>' expected.",surf_parse_text);
5342 FAIL("Unexpected character `%c': `</trace_connect>' expected.",surf_parse_text[0]);
5344 case YY_STATE_EOF(E_surfxml_trace_connect):
5345 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</trace_connect>' expected.");
5349 /* rule 106 can match eol */
5351 FAIL("Starting tag <AS> is not allowed here.");
5354 /* rule 107 can match eol */
5357 AX_surfxml_AS_id = 0;
5358 surfxml_AS_id_isset = 0;
5359 AX_surfxml_AS_routing = 0;
5360 surfxml_AS_routing_isset = 0;
5361 ENTER(AL_surfxml_AS); pushbuffer(0);
5366 /* rule 108 can match eol */
5368 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);
5371 /* rule 109 can match eol */
5373 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);
5376 /* rule 110 can match eol */
5378 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);
5381 /* rule 111 can match eol */
5383 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);
5388 if (!AX_surfxml_AS_id) FAIL("Required attribute `id' not set for `AS' element.");
5389 if (!AX_surfxml_AS_routing) FAIL("Required attribute `routing' not set for `AS' element.");
5390 LEAVE; STag_surfxml_AS();surfxml_pcdata_ix = 0; ENTER(S_surfxml_AS);
5396 if (!AX_surfxml_AS_id) FAIL("Required attribute `id' not set for `AS' element.");
5397 if (!AX_surfxml_AS_routing) FAIL("Required attribute `routing' not set for `AS' element.");
5398 LEAVE; STag_surfxml_AS(); surfxml_pcdata_ix = 0; ETag_surfxml_AS(); popbuffer(); /* attribute */
5400 case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
5401 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;
5407 FAIL("Unexpected character `%c' in attribute list of AS element.", surf_parse_text[0]);
5411 FAIL("Bad attribute `%s' in `AS' element start tag.",surf_parse_text);
5413 case YY_STATE_EOF(AL_surfxml_AS):
5414 FAIL("EOF in attribute list of `AS' element.");
5418 /* rule 116 can match eol */
5423 popbuffer(); /* attribute */
5425 case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
5426 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;
5431 /* rule 117 can match eol */
5433 FAIL("Unexpected end-tag `%s': `</AS>' expected.",surf_parse_text);
5437 FAIL("Unexpected character `%c': `</AS>' expected.",surf_parse_text[0]);
5439 case YY_STATE_EOF(S_surfxml_AS_9):
5440 case YY_STATE_EOF(S_surfxml_AS_1):
5441 case YY_STATE_EOF(S_surfxml_AS_11):
5442 case YY_STATE_EOF(S_surfxml_AS_6):
5443 case YY_STATE_EOF(E_surfxml_AS):
5444 case YY_STATE_EOF(S_surfxml_AS_3):
5445 case YY_STATE_EOF(S_surfxml_AS_13):
5446 case YY_STATE_EOF(S_surfxml_AS_8):
5447 case YY_STATE_EOF(S_surfxml_AS):
5448 case YY_STATE_EOF(S_surfxml_AS_4):
5449 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</AS>' expected.");
5453 /* rule 119 can match eol */
5455 FAIL("Starting tag <storage_type> is not allowed here.");
5458 /* rule 120 can match eol */
5461 AX_surfxml_storage_type_id = 0;
5462 surfxml_storage_type_id_isset = 0;
5463 AX_surfxml_storage_type_model = 0;
5464 surfxml_storage_type_model_isset = 0;
5465 AX_surfxml_storage_type_content = 0;
5466 surfxml_storage_type_content_isset = 0;
5467 ENTER(AL_surfxml_storage_type); pushbuffer(0);
5472 /* rule 121 can match eol */
5474 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);
5477 /* rule 122 can match eol */
5479 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);
5482 /* rule 123 can match eol */
5484 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);
5487 /* rule 124 can match eol */
5489 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);
5492 /* rule 125 can match eol */
5494 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);
5497 /* rule 126 can match eol */
5499 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);
5504 if (!AX_surfxml_storage_type_id) FAIL("Required attribute `id' not set for `storage_type' element.");
5505 if (!AX_surfxml_storage_type_model) FAIL("Required attribute `model' not set for `storage_type' element.");
5506 LEAVE; STag_surfxml_storage_type();surfxml_pcdata_ix = 0; ENTER(S_surfxml_storage_type);
5512 if (!AX_surfxml_storage_type_id) FAIL("Required attribute `id' not set for `storage_type' element.");
5513 if (!AX_surfxml_storage_type_model) FAIL("Required attribute `model' not set for `storage_type' element.");
5514 LEAVE; STag_surfxml_storage_type(); surfxml_pcdata_ix = 0; ETag_surfxml_storage_type(); popbuffer(); /* attribute */
5516 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5517 case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
5523 FAIL("Unexpected character `%c' in attribute list of storage_type element.", surf_parse_text[0]);
5527 FAIL("Bad attribute `%s' in `storage_type' element start tag.",surf_parse_text);
5529 case YY_STATE_EOF(AL_surfxml_storage_type):
5530 FAIL("EOF in attribute list of `storage_type' element.");
5534 /* rule 131 can match eol */
5538 ETag_surfxml_storage_type();
5539 popbuffer(); /* attribute */
5541 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5542 case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
5547 /* rule 132 can match eol */
5549 FAIL("Unexpected end-tag `%s': `</storage_type>' expected.",surf_parse_text);
5553 FAIL("Unexpected character `%c': `</storage_type>' expected.",surf_parse_text[0]);
5555 case YY_STATE_EOF(E_surfxml_storage_type):
5556 case YY_STATE_EOF(S_surfxml_storage_type_2):
5557 case YY_STATE_EOF(S_surfxml_storage_type):
5558 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</storage_type>' expected.");
5562 /* rule 134 can match eol */
5564 FAIL("Starting tag <storage> is not allowed here.");
5567 /* rule 135 can match eol */
5570 AX_surfxml_storage_id = 0;
5571 surfxml_storage_id_isset = 0;
5572 AX_surfxml_storage_typeId = 0;
5573 surfxml_storage_typeId_isset = 0;
5574 ENTER(AL_surfxml_storage); pushbuffer(0);
5579 /* rule 136 can match eol */
5581 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);
5584 /* rule 137 can match eol */
5586 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);
5589 /* rule 138 can match eol */
5591 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);
5594 /* rule 139 can match eol */
5596 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);
5601 if (!AX_surfxml_storage_id) FAIL("Required attribute `id' not set for `storage' element.");
5602 if (!AX_surfxml_storage_typeId) FAIL("Required attribute `typeId' not set for `storage' element.");
5603 LEAVE; STag_surfxml_storage();surfxml_pcdata_ix = 0; ENTER(S_surfxml_storage);
5609 if (!AX_surfxml_storage_id) FAIL("Required attribute `id' not set for `storage' element.");
5610 if (!AX_surfxml_storage_typeId) FAIL("Required attribute `typeId' not set for `storage' element.");
5611 LEAVE; STag_surfxml_storage(); surfxml_pcdata_ix = 0; ETag_surfxml_storage(); popbuffer(); /* attribute */
5613 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5614 case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
5620 FAIL("Unexpected character `%c' in attribute list of storage element.", surf_parse_text[0]);
5624 FAIL("Bad attribute `%s' in `storage' element start tag.",surf_parse_text);
5626 case YY_STATE_EOF(AL_surfxml_storage):
5627 FAIL("EOF in attribute list of `storage' element.");
5631 /* rule 144 can match eol */
5635 ETag_surfxml_storage();
5636 popbuffer(); /* attribute */
5638 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5639 case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
5644 /* rule 145 can match eol */
5646 FAIL("Unexpected end-tag `%s': `</storage>' expected.",surf_parse_text);
5650 FAIL("Unexpected character `%c': `</storage>' expected.",surf_parse_text[0]);
5652 case YY_STATE_EOF(E_surfxml_storage):
5653 case YY_STATE_EOF(S_surfxml_storage):
5654 case YY_STATE_EOF(S_surfxml_storage_2):
5655 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</storage>' expected.");
5659 /* rule 147 can match eol */
5661 FAIL("Starting tag <mount> is not allowed here.");
5664 /* rule 148 can match eol */
5667 AX_surfxml_mount_id = 0;
5668 surfxml_mount_id_isset = 0;
5669 AX_surfxml_mount_name = 0;
5670 surfxml_mount_name_isset = 0;
5671 ENTER(AL_surfxml_mount); pushbuffer(0);
5676 /* rule 149 can match eol */
5678 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);
5681 /* rule 150 can match eol */
5683 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);
5686 /* rule 151 can match eol */
5688 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);
5691 /* rule 152 can match eol */
5693 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);
5698 if (!AX_surfxml_mount_id) FAIL("Required attribute `id' not set for `mount' element.");
5699 if (!AX_surfxml_mount_name) FAIL("Required attribute `name' not set for `mount' element.");
5700 LEAVE; STag_surfxml_mount();surfxml_pcdata_ix = 0; ENTER(E_surfxml_mount);
5706 if (!AX_surfxml_mount_id) FAIL("Required attribute `id' not set for `mount' element.");
5707 if (!AX_surfxml_mount_name) FAIL("Required attribute `name' not set for `mount' element.");
5708 LEAVE; STag_surfxml_mount(); surfxml_pcdata_ix = 0; ETag_surfxml_mount(); popbuffer(); /* attribute */
5710 case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break;
5716 FAIL("Unexpected character `%c' in attribute list of mount element.", surf_parse_text[0]);
5720 FAIL("Bad attribute `%s' in `mount' element start tag.",surf_parse_text);
5722 case YY_STATE_EOF(AL_surfxml_mount):
5723 FAIL("EOF in attribute list of `mount' element.");
5727 /* rule 157 can match eol */
5731 ETag_surfxml_mount();
5732 popbuffer(); /* attribute */
5734 case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break;
5739 /* rule 158 can match eol */
5741 FAIL("Unexpected end-tag `%s': `</mount>' expected.",surf_parse_text);
5745 FAIL("Unexpected character `%c': `</mount>' expected.",surf_parse_text[0]);
5747 case YY_STATE_EOF(E_surfxml_mount):
5748 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</mount>' expected.");
5752 /* rule 160 can match eol */
5754 FAIL("Starting tag <mstorage> is not allowed here.");
5757 /* rule 161 can match eol */
5760 AX_surfxml_mstorage_typeId = 0;
5761 surfxml_mstorage_typeId_isset = 0;
5762 AX_surfxml_mstorage_name = 0;
5763 surfxml_mstorage_name_isset = 0;
5764 ENTER(AL_surfxml_mstorage); pushbuffer(0);
5769 /* rule 162 can match eol */
5771 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);
5774 /* rule 163 can match eol */
5776 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);
5779 /* rule 164 can match eol */
5781 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);
5784 /* rule 165 can match eol */
5786 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);
5791 if (!AX_surfxml_mstorage_typeId) FAIL("Required attribute `typeId' not set for `mstorage' element.");
5792 if (!AX_surfxml_mstorage_name) FAIL("Required attribute `name' not set for `mstorage' element.");
5793 LEAVE; STag_surfxml_mstorage();surfxml_pcdata_ix = 0; ENTER(E_surfxml_mstorage);
5799 if (!AX_surfxml_mstorage_typeId) FAIL("Required attribute `typeId' not set for `mstorage' element.");
5800 if (!AX_surfxml_mstorage_name) FAIL("Required attribute `name' not set for `mstorage' element.");
5801 LEAVE; STag_surfxml_mstorage(); surfxml_pcdata_ix = 0; ETag_surfxml_mstorage(); popbuffer(); /* attribute */
5803 case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break;
5809 FAIL("Unexpected character `%c' in attribute list of mstorage element.", surf_parse_text[0]);
5813 FAIL("Bad attribute `%s' in `mstorage' element start tag.",surf_parse_text);
5815 case YY_STATE_EOF(AL_surfxml_mstorage):
5816 FAIL("EOF in attribute list of `mstorage' element.");
5820 /* rule 170 can match eol */
5824 ETag_surfxml_mstorage();
5825 popbuffer(); /* attribute */
5827 case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break;
5832 /* rule 171 can match eol */
5834 FAIL("Unexpected end-tag `%s': `</mstorage>' expected.",surf_parse_text);
5838 FAIL("Unexpected character `%c': `</mstorage>' expected.",surf_parse_text[0]);
5840 case YY_STATE_EOF(E_surfxml_mstorage):
5841 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</mstorage>' expected.");
5845 /* rule 173 can match eol */
5847 FAIL("Starting tag <host> is not allowed here.");
5850 /* rule 174 can match eol */
5853 AX_surfxml_host_id = 0;
5854 surfxml_host_id_isset = 0;
5855 AX_surfxml_host_power = 0;
5856 surfxml_host_power_isset = 0;
5857 AX_surfxml_host_core = 16;
5858 surfxml_host_core_isset = 0;
5859 AX_surfxml_host_availability = 18;
5860 surfxml_host_availability_isset = 0;
5861 AX_surfxml_host_availability_file = 0;
5862 surfxml_host_availability_file_isset = 0;
5863 AX_surfxml_host_state = A_surfxml_host_state_ON;
5864 surfxml_host_state_isset = 0;
5865 AX_surfxml_host_state_file = 0;
5866 surfxml_host_state_file_isset = 0;
5867 AX_surfxml_host_coordinates = 0;
5868 surfxml_host_coordinates_isset = 0;
5869 ENTER(AL_surfxml_host); pushbuffer(0);
5874 /* rule 175 can match eol */
5876 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);
5879 /* rule 176 can match eol */
5881 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);
5884 /* rule 177 can match eol */
5886 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);
5889 /* rule 178 can match eol */
5891 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);
5894 /* rule 179 can match eol */
5896 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);
5899 /* rule 180 can match eol */
5901 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);
5904 /* rule 181 can match eol */
5906 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);
5909 /* rule 182 can match eol */
5911 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);
5914 /* rule 183 can match eol */
5916 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);
5919 /* rule 184 can match eol */
5921 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);
5924 /* rule 185 can match eol */
5926 /* rule 186 can match eol */
5928 A_surfxml_host_state = A_surfxml_host_state_ON;
5931 /* rule 187 can match eol */
5933 /* rule 188 can match eol */
5935 A_surfxml_host_state = A_surfxml_host_state_OFF;
5938 /* rule 189 can match eol */
5940 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);
5943 /* rule 190 can match eol */
5945 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);
5948 /* rule 191 can match eol */
5950 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);
5953 /* rule 192 can match eol */
5955 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);
5960 if (!AX_surfxml_host_id) FAIL("Required attribute `id' not set for `host' element.");
5961 if (!AX_surfxml_host_power) FAIL("Required attribute `power' not set for `host' element.");
5962 LEAVE; STag_surfxml_host();surfxml_pcdata_ix = 0; ENTER(S_surfxml_host);
5968 if (!AX_surfxml_host_id) FAIL("Required attribute `id' not set for `host' element.");
5969 if (!AX_surfxml_host_power) FAIL("Required attribute `power' not set for `host' element.");
5970 LEAVE; STag_surfxml_host(); surfxml_pcdata_ix = 0; ETag_surfxml_host(); popbuffer(); /* attribute */
5972 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
5978 FAIL("Unexpected character `%c' in attribute list of host element.", surf_parse_text[0]);
5982 FAIL("Bad attribute `%s' in `host' element start tag.",surf_parse_text);
5984 case YY_STATE_EOF(AL_surfxml_host):
5985 FAIL("EOF in attribute list of `host' element.");
5989 /* rule 197 can match eol */
5993 ETag_surfxml_host();
5994 popbuffer(); /* attribute */
5996 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
6001 /* rule 198 can match eol */
6003 FAIL("Unexpected end-tag `%s': `</host>' expected.",surf_parse_text);
6007 FAIL("Unexpected character `%c': `</host>' expected.",surf_parse_text[0]);
6009 case YY_STATE_EOF(S_surfxml_host):
6010 case YY_STATE_EOF(E_surfxml_host):
6011 case YY_STATE_EOF(S_surfxml_host_2):
6012 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</host>' expected.");
6016 /* rule 200 can match eol */
6018 FAIL("Starting tag <cluster> is not allowed here.");
6021 /* rule 201 can match eol */
6024 AX_surfxml_cluster_id = 0;
6025 surfxml_cluster_id_isset = 0;
6026 AX_surfxml_cluster_prefix = 0;
6027 surfxml_cluster_prefix_isset = 0;
6028 AX_surfxml_cluster_suffix = 0;
6029 surfxml_cluster_suffix_isset = 0;
6030 AX_surfxml_cluster_radical = 0;
6031 surfxml_cluster_radical_isset = 0;
6032 AX_surfxml_cluster_power = 0;
6033 surfxml_cluster_power_isset = 0;
6034 AX_surfxml_cluster_core = 22;
6035 surfxml_cluster_core_isset = 0;
6036 AX_surfxml_cluster_bw = 0;
6037 surfxml_cluster_bw_isset = 0;
6038 AX_surfxml_cluster_lat = 0;
6039 surfxml_cluster_lat_isset = 0;
6040 AX_surfxml_cluster_sharing_policy = A_surfxml_cluster_sharing_policy_FULLDUPLEX;
6041 surfxml_cluster_sharing_policy_isset = 0;
6042 AX_surfxml_cluster_bb_bw = 0;
6043 surfxml_cluster_bb_bw_isset = 0;
6044 AX_surfxml_cluster_bb_lat = 0;
6045 surfxml_cluster_bb_lat_isset = 0;
6046 AX_surfxml_cluster_bb_sharing_policy = A_surfxml_cluster_bb_sharing_policy_SHARED;
6047 surfxml_cluster_bb_sharing_policy_isset = 0;
6048 AX_surfxml_cluster_availability_file = 0;
6049 surfxml_cluster_availability_file_isset = 0;
6050 AX_surfxml_cluster_state_file = 0;
6051 surfxml_cluster_state_file_isset = 0;
6052 AX_surfxml_cluster_router_id = 0;
6053 surfxml_cluster_router_id_isset = 0;
6054 ENTER(AL_surfxml_cluster); pushbuffer(0);
6059 /* rule 202 can match eol */
6061 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);
6064 /* rule 203 can match eol */
6066 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);
6069 /* rule 204 can match eol */
6071 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);
6074 /* rule 205 can match eol */
6076 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);
6079 /* rule 206 can match eol */
6081 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);
6084 /* rule 207 can match eol */
6086 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);
6089 /* rule 208 can match eol */
6091 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);
6094 /* rule 209 can match eol */
6096 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);
6099 /* rule 210 can match eol */
6101 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);
6104 /* rule 211 can match eol */
6106 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);
6109 /* rule 212 can match eol */
6111 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);
6114 /* rule 213 can match eol */
6116 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);
6119 /* rule 214 can match eol */
6121 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);
6124 /* rule 215 can match eol */
6126 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);
6129 /* rule 216 can match eol */
6131 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);
6134 /* rule 217 can match eol */
6136 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);
6139 /* rule 218 can match eol */
6141 /* rule 219 can match eol */
6143 A_surfxml_cluster_sharing_policy = A_surfxml_cluster_sharing_policy_SHARED;
6146 /* rule 220 can match eol */
6148 /* rule 221 can match eol */
6150 A_surfxml_cluster_sharing_policy = A_surfxml_cluster_sharing_policy_FULLDUPLEX;
6153 /* rule 222 can match eol */
6155 /* rule 223 can match eol */
6157 A_surfxml_cluster_sharing_policy = A_surfxml_cluster_sharing_policy_FATPIPE;
6160 /* rule 224 can match eol */
6162 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);
6165 /* rule 225 can match eol */
6167 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);
6170 /* rule 226 can match eol */
6172 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);
6175 /* rule 227 can match eol */
6177 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);
6180 /* rule 228 can match eol */
6182 /* rule 229 can match eol */
6184 A_surfxml_cluster_bb_sharing_policy = A_surfxml_cluster_bb_sharing_policy_SHARED;
6187 /* rule 230 can match eol */
6189 /* rule 231 can match eol */
6191 A_surfxml_cluster_bb_sharing_policy = A_surfxml_cluster_bb_sharing_policy_FATPIPE;
6194 /* rule 232 can match eol */
6196 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);
6199 /* rule 233 can match eol */
6201 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);
6204 /* rule 234 can match eol */
6206 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);
6209 /* rule 235 can match eol */
6211 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);
6214 /* rule 236 can match eol */
6216 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);
6219 /* rule 237 can match eol */
6221 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);
6226 if (!AX_surfxml_cluster_id) FAIL("Required attribute `id' not set for `cluster' element.");
6227 if (!AX_surfxml_cluster_prefix) FAIL("Required attribute `prefix' not set for `cluster' element.");
6228 if (!AX_surfxml_cluster_suffix) FAIL("Required attribute `suffix' not set for `cluster' element.");
6229 if (!AX_surfxml_cluster_radical) FAIL("Required attribute `radical' not set for `cluster' element.");
6230 if (!AX_surfxml_cluster_power) FAIL("Required attribute `power' not set for `cluster' element.");
6231 if (!AX_surfxml_cluster_bw) FAIL("Required attribute `bw' not set for `cluster' element.");
6232 if (!AX_surfxml_cluster_lat) FAIL("Required attribute `lat' not set for `cluster' element.");
6233 LEAVE; STag_surfxml_cluster();surfxml_pcdata_ix = 0; ENTER(E_surfxml_cluster);
6239 if (!AX_surfxml_cluster_id) FAIL("Required attribute `id' not set for `cluster' element.");
6240 if (!AX_surfxml_cluster_prefix) FAIL("Required attribute `prefix' not set for `cluster' element.");
6241 if (!AX_surfxml_cluster_suffix) FAIL("Required attribute `suffix' not set for `cluster' element.");
6242 if (!AX_surfxml_cluster_radical) FAIL("Required attribute `radical' not set for `cluster' element.");
6243 if (!AX_surfxml_cluster_power) FAIL("Required attribute `power' not set for `cluster' element.");
6244 if (!AX_surfxml_cluster_bw) FAIL("Required attribute `bw' not set for `cluster' element.");
6245 if (!AX_surfxml_cluster_lat) FAIL("Required attribute `lat' not set for `cluster' element.");
6246 LEAVE; STag_surfxml_cluster(); surfxml_pcdata_ix = 0; ETag_surfxml_cluster(); popbuffer(); /* attribute */
6248 case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
6249 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;
6255 FAIL("Unexpected character `%c' in attribute list of cluster element.", surf_parse_text[0]);
6259 FAIL("Bad attribute `%s' in `cluster' element start tag.",surf_parse_text);
6261 case YY_STATE_EOF(AL_surfxml_cluster):
6262 FAIL("EOF in attribute list of `cluster' element.");
6266 /* rule 242 can match eol */
6270 ETag_surfxml_cluster();
6271 popbuffer(); /* attribute */
6273 case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
6274 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;
6279 /* rule 243 can match eol */
6281 FAIL("Unexpected end-tag `%s': `</cluster>' expected.",surf_parse_text);
6285 FAIL("Unexpected character `%c': `</cluster>' expected.",surf_parse_text[0]);
6287 case YY_STATE_EOF(E_surfxml_cluster):
6288 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</cluster>' expected.");
6292 /* rule 245 can match eol */
6294 FAIL("Starting tag <peer> is not allowed here.");
6297 /* rule 246 can match eol */
6300 AX_surfxml_peer_id = 0;
6301 surfxml_peer_id_isset = 0;
6302 AX_surfxml_peer_power = 0;
6303 surfxml_peer_power_isset = 0;
6304 AX_surfxml_peer_bw_in = 0;
6305 surfxml_peer_bw_in_isset = 0;
6306 AX_surfxml_peer_bw_out = 0;
6307 surfxml_peer_bw_out_isset = 0;
6308 AX_surfxml_peer_lat = 0;
6309 surfxml_peer_lat_isset = 0;
6310 AX_surfxml_peer_coordinates = 0;
6311 surfxml_peer_coordinates_isset = 0;
6312 AX_surfxml_peer_availability_file = 0;
6313 surfxml_peer_availability_file_isset = 0;
6314 AX_surfxml_peer_state_file = 0;
6315 surfxml_peer_state_file_isset = 0;
6316 ENTER(AL_surfxml_peer); pushbuffer(0);
6321 /* rule 247 can match eol */
6323 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);
6326 /* rule 248 can match eol */
6328 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);
6331 /* rule 249 can match eol */
6333 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);
6336 /* rule 250 can match eol */
6338 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);
6341 /* rule 251 can match eol */
6343 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);
6346 /* rule 252 can match eol */
6348 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);
6351 /* rule 253 can match eol */
6353 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);
6356 /* rule 254 can match eol */
6358 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);
6361 /* rule 255 can match eol */
6363 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);
6366 /* rule 256 can match eol */
6368 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);
6371 /* rule 257 can match eol */
6373 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);
6376 /* rule 258 can match eol */
6378 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);
6381 /* rule 259 can match eol */
6383 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);
6386 /* rule 260 can match eol */
6388 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);
6391 /* rule 261 can match eol */
6393 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);
6396 /* rule 262 can match eol */
6398 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);
6403 if (!AX_surfxml_peer_id) FAIL("Required attribute `id' not set for `peer' element.");
6404 if (!AX_surfxml_peer_power) FAIL("Required attribute `power' not set for `peer' element.");
6405 if (!AX_surfxml_peer_bw_in) FAIL("Required attribute `bw_in' not set for `peer' element.");
6406 if (!AX_surfxml_peer_bw_out) FAIL("Required attribute `bw_out' not set for `peer' element.");
6407 if (!AX_surfxml_peer_lat) FAIL("Required attribute `lat' not set for `peer' element.");
6408 LEAVE; STag_surfxml_peer();surfxml_pcdata_ix = 0; ENTER(E_surfxml_peer);
6414 if (!AX_surfxml_peer_id) FAIL("Required attribute `id' not set for `peer' element.");
6415 if (!AX_surfxml_peer_power) FAIL("Required attribute `power' not set for `peer' element.");
6416 if (!AX_surfxml_peer_bw_in) FAIL("Required attribute `bw_in' not set for `peer' element.");
6417 if (!AX_surfxml_peer_bw_out) FAIL("Required attribute `bw_out' not set for `peer' element.");
6418 if (!AX_surfxml_peer_lat) FAIL("Required attribute `lat' not set for `peer' element.");
6419 LEAVE; STag_surfxml_peer(); surfxml_pcdata_ix = 0; ETag_surfxml_peer(); popbuffer(); /* attribute */
6421 case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
6422 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;
6428 FAIL("Unexpected character `%c' in attribute list of peer element.", surf_parse_text[0]);
6432 FAIL("Bad attribute `%s' in `peer' element start tag.",surf_parse_text);
6434 case YY_STATE_EOF(AL_surfxml_peer):
6435 FAIL("EOF in attribute list of `peer' element.");
6439 /* rule 267 can match eol */
6443 ETag_surfxml_peer();
6444 popbuffer(); /* attribute */
6446 case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
6447 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;
6452 /* rule 268 can match eol */
6454 FAIL("Unexpected end-tag `%s': `</peer>' expected.",surf_parse_text);
6458 FAIL("Unexpected character `%c': `</peer>' expected.",surf_parse_text[0]);
6460 case YY_STATE_EOF(E_surfxml_peer):
6461 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</peer>' expected.");
6465 /* rule 270 can match eol */
6467 FAIL("Starting tag <router> is not allowed here.");
6470 /* rule 271 can match eol */
6473 AX_surfxml_router_id = 0;
6474 surfxml_router_id_isset = 0;
6475 AX_surfxml_router_coordinates = 0;
6476 surfxml_router_coordinates_isset = 0;
6477 ENTER(AL_surfxml_router); pushbuffer(0);
6482 /* rule 272 can match eol */
6484 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);
6487 /* rule 273 can match eol */
6489 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);
6492 /* rule 274 can match eol */
6494 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);
6497 /* rule 275 can match eol */
6499 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);
6504 if (!AX_surfxml_router_id) FAIL("Required attribute `id' not set for `router' element.");
6505 LEAVE; STag_surfxml_router();surfxml_pcdata_ix = 0; ENTER(E_surfxml_router);
6511 if (!AX_surfxml_router_id) FAIL("Required attribute `id' not set for `router' element.");
6512 LEAVE; STag_surfxml_router(); surfxml_pcdata_ix = 0; ETag_surfxml_router(); popbuffer(); /* attribute */
6514 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
6520 FAIL("Unexpected character `%c' in attribute list of router element.", surf_parse_text[0]);
6524 FAIL("Bad attribute `%s' in `router' element start tag.",surf_parse_text);
6526 case YY_STATE_EOF(AL_surfxml_router):
6527 FAIL("EOF in attribute list of `router' element.");
6531 /* rule 280 can match eol */
6535 ETag_surfxml_router();
6536 popbuffer(); /* attribute */
6538 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
6543 /* rule 281 can match eol */
6545 FAIL("Unexpected end-tag `%s': `</router>' expected.",surf_parse_text);
6549 FAIL("Unexpected character `%c': `</router>' expected.",surf_parse_text[0]);
6551 case YY_STATE_EOF(E_surfxml_router):
6552 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</router>' expected.");
6556 /* rule 283 can match eol */
6558 FAIL("Starting tag <link> is not allowed here.");
6561 /* rule 284 can match eol */
6564 AX_surfxml_link_id = 0;
6565 surfxml_link_id_isset = 0;
6566 AX_surfxml_link_bandwidth = 0;
6567 surfxml_link_bandwidth_isset = 0;
6568 AX_surfxml_link_bandwidth_file = 0;
6569 surfxml_link_bandwidth_file_isset = 0;
6570 AX_surfxml_link_latency = 24;
6571 surfxml_link_latency_isset = 0;
6572 AX_surfxml_link_latency_file = 0;
6573 surfxml_link_latency_file_isset = 0;
6574 AX_surfxml_link_state = A_surfxml_link_state_ON;
6575 surfxml_link_state_isset = 0;
6576 AX_surfxml_link_state_file = 0;
6577 surfxml_link_state_file_isset = 0;
6578 AX_surfxml_link_sharing_policy = A_surfxml_link_sharing_policy_SHARED;
6579 surfxml_link_sharing_policy_isset = 0;
6580 ENTER(AL_surfxml_link); pushbuffer(0);
6585 /* rule 285 can match eol */
6587 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);
6590 /* rule 286 can match eol */
6592 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);
6595 /* rule 287 can match eol */
6597 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);
6600 /* rule 288 can match eol */
6602 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);
6605 /* rule 289 can match eol */
6607 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);
6610 /* rule 290 can match eol */
6612 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);
6615 /* rule 291 can match eol */
6617 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);
6620 /* rule 292 can match eol */
6622 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);
6625 /* rule 293 can match eol */
6627 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);
6630 /* rule 294 can match eol */
6632 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);
6635 /* rule 295 can match eol */
6637 /* rule 296 can match eol */
6639 A_surfxml_link_state = A_surfxml_link_state_ON;
6642 /* rule 297 can match eol */
6644 /* rule 298 can match eol */
6646 A_surfxml_link_state = A_surfxml_link_state_OFF;
6649 /* rule 299 can match eol */
6651 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);
6654 /* rule 300 can match eol */
6656 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);
6659 /* rule 301 can match eol */
6661 /* rule 302 can match eol */
6663 A_surfxml_link_sharing_policy = A_surfxml_link_sharing_policy_SHARED;
6666 /* rule 303 can match eol */
6668 /* rule 304 can match eol */
6670 A_surfxml_link_sharing_policy = A_surfxml_link_sharing_policy_FATPIPE;
6673 /* rule 305 can match eol */
6675 /* rule 306 can match eol */
6677 A_surfxml_link_sharing_policy = A_surfxml_link_sharing_policy_FULLDUPLEX;
6682 if (!AX_surfxml_link_id) FAIL("Required attribute `id' not set for `link' element.");
6683 if (!AX_surfxml_link_bandwidth) FAIL("Required attribute `bandwidth' not set for `link' element.");
6684 LEAVE; STag_surfxml_link();surfxml_pcdata_ix = 0; ENTER(S_surfxml_link);
6690 if (!AX_surfxml_link_id) FAIL("Required attribute `id' not set for `link' element.");
6691 if (!AX_surfxml_link_bandwidth) FAIL("Required attribute `bandwidth' not set for `link' element.");
6692 LEAVE; STag_surfxml_link(); surfxml_pcdata_ix = 0; ETag_surfxml_link(); popbuffer(); /* attribute */
6694 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
6695 case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
6701 FAIL("Unexpected character `%c' in attribute list of link element.", surf_parse_text[0]);
6705 FAIL("Bad attribute `%s' in `link' element start tag.",surf_parse_text);
6707 case YY_STATE_EOF(AL_surfxml_link):
6708 FAIL("EOF in attribute list of `link' element.");
6712 /* rule 311 can match eol */
6716 ETag_surfxml_link();
6717 popbuffer(); /* attribute */
6719 case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break;
6720 case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break;
6725 /* rule 312 can match eol */
6727 FAIL("Unexpected end-tag `%s': `</link>' expected.",surf_parse_text);
6731 FAIL("Unexpected character `%c': `</link>' expected.",surf_parse_text[0]);
6733 case YY_STATE_EOF(E_surfxml_link):
6734 case YY_STATE_EOF(S_surfxml_link_2):
6735 case YY_STATE_EOF(S_surfxml_link):
6736 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</link>' expected.");
6740 /* rule 314 can match eol */
6742 FAIL("Starting tag <route> is not allowed here.");
6745 /* rule 315 can match eol */
6748 AX_surfxml_route_src = 0;
6749 surfxml_route_src_isset = 0;
6750 AX_surfxml_route_dst = 0;
6751 surfxml_route_dst_isset = 0;
6752 AX_surfxml_route_symmetrical = A_surfxml_route_symmetrical_YES;
6753 surfxml_route_symmetrical_isset = 0;
6754 ENTER(AL_surfxml_route); pushbuffer(0);
6759 /* rule 316 can match eol */
6761 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);
6764 /* rule 317 can match eol */
6766 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);
6769 /* rule 318 can match eol */
6771 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);
6774 /* rule 319 can match eol */
6776 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);
6779 /* rule 320 can match eol */
6781 /* rule 321 can match eol */
6783 A_surfxml_route_symmetrical = A_surfxml_route_symmetrical_YES;
6786 /* rule 322 can match eol */
6788 /* rule 323 can match eol */
6790 A_surfxml_route_symmetrical = A_surfxml_route_symmetrical_NO;
6795 if (!AX_surfxml_route_src) FAIL("Required attribute `src' not set for `route' element.");
6796 if (!AX_surfxml_route_dst) FAIL("Required attribute `dst' not set for `route' element.");
6797 LEAVE; STag_surfxml_route();surfxml_pcdata_ix = 0; ENTER(S_surfxml_route);
6803 if (!AX_surfxml_route_src) FAIL("Required attribute `src' not set for `route' element.");
6804 if (!AX_surfxml_route_dst) FAIL("Required attribute `dst' not set for `route' element.");
6805 LEAVE; STag_surfxml_route(); surfxml_pcdata_ix = 0; ETag_surfxml_route(); popbuffer(); /* attribute */
6807 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;
6813 FAIL("Unexpected character `%c' in attribute list of route element.", surf_parse_text[0]);
6817 FAIL("Bad attribute `%s' in `route' element start tag.",surf_parse_text);
6819 case YY_STATE_EOF(AL_surfxml_route):
6820 FAIL("EOF in attribute list of `route' element.");
6824 /* rule 328 can match eol */
6828 ETag_surfxml_route();
6829 popbuffer(); /* attribute */
6831 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;
6836 /* rule 329 can match eol */
6838 FAIL("Unexpected end-tag `%s': `</route>' expected.",surf_parse_text);
6842 FAIL("Unexpected character `%c': `</route>' expected.",surf_parse_text[0]);
6844 case YY_STATE_EOF(S_surfxml_route):
6845 case YY_STATE_EOF(S_surfxml_route_2):
6846 case YY_STATE_EOF(E_surfxml_route):
6847 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</route>' expected.");
6851 /* rule 331 can match eol */
6853 FAIL("Starting tag <ASroute> is not allowed here.");
6856 /* rule 332 can match eol */
6859 AX_surfxml_ASroute_src = 0;
6860 surfxml_ASroute_src_isset = 0;
6861 AX_surfxml_ASroute_dst = 0;
6862 surfxml_ASroute_dst_isset = 0;
6863 AX_surfxml_ASroute_gw_src = 0;
6864 surfxml_ASroute_gw_src_isset = 0;
6865 AX_surfxml_ASroute_gw_dst = 0;
6866 surfxml_ASroute_gw_dst_isset = 0;
6867 AX_surfxml_ASroute_symmetrical = A_surfxml_ASroute_symmetrical_YES;
6868 surfxml_ASroute_symmetrical_isset = 0;
6869 ENTER(AL_surfxml_ASroute); pushbuffer(0);
6874 /* rule 333 can match eol */
6876 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);
6879 /* rule 334 can match eol */
6881 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);
6884 /* rule 335 can match eol */
6886 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);
6889 /* rule 336 can match eol */
6891 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);
6894 /* rule 337 can match eol */
6896 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);
6899 /* rule 338 can match eol */
6901 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);
6904 /* rule 339 can match eol */
6906 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);
6909 /* rule 340 can match eol */
6911 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);
6914 /* rule 341 can match eol */
6916 /* rule 342 can match eol */
6918 A_surfxml_ASroute_symmetrical = A_surfxml_ASroute_symmetrical_YES;
6921 /* rule 343 can match eol */
6923 /* rule 344 can match eol */
6925 A_surfxml_ASroute_symmetrical = A_surfxml_ASroute_symmetrical_NO;
6930 if (!AX_surfxml_ASroute_src) FAIL("Required attribute `src' not set for `ASroute' element.");
6931 if (!AX_surfxml_ASroute_dst) FAIL("Required attribute `dst' not set for `ASroute' element.");
6932 if (!AX_surfxml_ASroute_gw_src) FAIL("Required attribute `gw_src' not set for `ASroute' element.");
6933 if (!AX_surfxml_ASroute_gw_dst) FAIL("Required attribute `gw_dst' not set for `ASroute' element.");
6934 LEAVE; STag_surfxml_ASroute();surfxml_pcdata_ix = 0; ENTER(S_surfxml_ASroute);
6940 if (!AX_surfxml_ASroute_src) FAIL("Required attribute `src' not set for `ASroute' element.");
6941 if (!AX_surfxml_ASroute_dst) FAIL("Required attribute `dst' not set for `ASroute' element.");
6942 if (!AX_surfxml_ASroute_gw_src) FAIL("Required attribute `gw_src' not set for `ASroute' element.");
6943 if (!AX_surfxml_ASroute_gw_dst) FAIL("Required attribute `gw_dst' not set for `ASroute' element.");
6944 LEAVE; STag_surfxml_ASroute(); surfxml_pcdata_ix = 0; ETag_surfxml_ASroute(); popbuffer(); /* attribute */
6946 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;
6952 FAIL("Unexpected character `%c' in attribute list of ASroute element.", surf_parse_text[0]);
6956 FAIL("Bad attribute `%s' in `ASroute' element start tag.",surf_parse_text);
6958 case YY_STATE_EOF(AL_surfxml_ASroute):
6959 FAIL("EOF in attribute list of `ASroute' element.");
6963 /* rule 349 can match eol */
6967 ETag_surfxml_ASroute();
6968 popbuffer(); /* attribute */
6970 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;
6975 /* rule 350 can match eol */
6977 FAIL("Unexpected end-tag `%s': `</ASroute>' expected.",surf_parse_text);
6981 FAIL("Unexpected character `%c': `</ASroute>' expected.",surf_parse_text[0]);
6983 case YY_STATE_EOF(E_surfxml_ASroute):
6984 case YY_STATE_EOF(S_surfxml_ASroute):
6985 case YY_STATE_EOF(S_surfxml_ASroute_2):
6986 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</ASroute>' expected.");
6990 /* rule 352 can match eol */
6992 FAIL("Starting tag <link_ctn> is not allowed here.");
6995 /* rule 353 can match eol */
6998 AX_surfxml_link_ctn_id = 0;
6999 surfxml_link_ctn_id_isset = 0;
7000 AX_surfxml_link_ctn_direction = A_surfxml_link_ctn_direction_NONE;
7001 surfxml_link_ctn_direction_isset = 0;
7002 ENTER(AL_surfxml_link_ctn); pushbuffer(0);
7007 /* rule 354 can match eol */
7009 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);
7012 /* rule 355 can match eol */
7014 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);
7017 /* rule 356 can match eol */
7019 /* rule 357 can match eol */
7021 A_surfxml_link_ctn_direction = A_surfxml_link_ctn_direction_UP;
7024 /* rule 358 can match eol */
7026 /* rule 359 can match eol */
7028 A_surfxml_link_ctn_direction = A_surfxml_link_ctn_direction_DOWN;
7031 /* rule 360 can match eol */
7033 /* rule 361 can match eol */
7035 A_surfxml_link_ctn_direction = A_surfxml_link_ctn_direction_NONE;
7040 if (!AX_surfxml_link_ctn_id) FAIL("Required attribute `id' not set for `link_ctn' element.");
7041 LEAVE; STag_surfxml_link_ctn();surfxml_pcdata_ix = 0; ENTER(E_surfxml_link_ctn);
7047 if (!AX_surfxml_link_ctn_id) FAIL("Required attribute `id' not set for `link_ctn' element.");
7048 LEAVE; STag_surfxml_link_ctn(); surfxml_pcdata_ix = 0; ETag_surfxml_link_ctn(); popbuffer(); /* attribute */
7050 case S_surfxml_bypassRoute: case S_surfxml_bypassRoute_2: case S_surfxml_bypassRoute_1: SET(S_surfxml_bypassRoute_2); break;
7051 case S_surfxml_route_1: case S_surfxml_route: case S_surfxml_route_2: SET(S_surfxml_route_2); break;
7052 case S_surfxml_ASroute: case S_surfxml_ASroute_1: case S_surfxml_ASroute_2: SET(S_surfxml_ASroute_2); break;
7058 FAIL("Unexpected character `%c' in attribute list of link_ctn element.", surf_parse_text[0]);
7062 FAIL("Bad attribute `%s' in `link_ctn' element start tag.",surf_parse_text);
7064 case YY_STATE_EOF(AL_surfxml_link_ctn):
7065 FAIL("EOF in attribute list of `link_ctn' element.");
7069 /* rule 366 can match eol */
7073 ETag_surfxml_link_ctn();
7074 popbuffer(); /* attribute */
7076 case S_surfxml_bypassRoute: case S_surfxml_bypassRoute_2: case S_surfxml_bypassRoute_1: SET(S_surfxml_bypassRoute_2); break;
7077 case S_surfxml_route_1: case S_surfxml_route: case S_surfxml_route_2: SET(S_surfxml_route_2); break;
7078 case S_surfxml_ASroute: case S_surfxml_ASroute_1: case S_surfxml_ASroute_2: SET(S_surfxml_ASroute_2); break;
7083 /* rule 367 can match eol */
7085 FAIL("Unexpected end-tag `%s': `</link_ctn>' expected.",surf_parse_text);
7089 FAIL("Unexpected character `%c': `</link_ctn>' expected.",surf_parse_text[0]);
7091 case YY_STATE_EOF(E_surfxml_link_ctn):
7092 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</link_ctn>' expected.");
7096 /* rule 369 can match eol */
7098 FAIL("Starting tag <bypassRoute> is not allowed here.");
7101 /* rule 370 can match eol */
7104 AX_surfxml_bypassRoute_src = 0;
7105 surfxml_bypassRoute_src_isset = 0;
7106 AX_surfxml_bypassRoute_dst = 0;
7107 surfxml_bypassRoute_dst_isset = 0;
7108 AX_surfxml_bypassRoute_gw_src = 0;
7109 surfxml_bypassRoute_gw_src_isset = 0;
7110 AX_surfxml_bypassRoute_gw_dst = 0;
7111 surfxml_bypassRoute_gw_dst_isset = 0;
7112 ENTER(AL_surfxml_bypassRoute); pushbuffer(0);
7117 /* rule 371 can match eol */
7119 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);
7122 /* rule 372 can match eol */
7124 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);
7127 /* rule 373 can match eol */
7129 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);
7132 /* rule 374 can match eol */
7134 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);
7137 /* rule 375 can match eol */
7139 if (surfxml_bypassRoute_gw_src_isset != 0) {FAIL("Multiple definition of attribute gw_src in <surfxml_bypassRoute>");} surfxml_bypassRoute_gw_src_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_bypassRoute_gw_src);
7142 /* rule 376 can match eol */
7144 if (surfxml_bypassRoute_gw_src_isset != 0) {FAIL("Multiple definition of attribute gw_src in <surfxml_bypassRoute>");} surfxml_bypassRoute_gw_src_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_bypassRoute_gw_src);
7147 /* rule 377 can match eol */
7149 if (surfxml_bypassRoute_gw_dst_isset != 0) {FAIL("Multiple definition of attribute gw_dst in <surfxml_bypassRoute>");} surfxml_bypassRoute_gw_dst_isset = 1; ENTER(VALUE1); BUFFERSET(AX_surfxml_bypassRoute_gw_dst);
7152 /* rule 378 can match eol */
7154 if (surfxml_bypassRoute_gw_dst_isset != 0) {FAIL("Multiple definition of attribute gw_dst in <surfxml_bypassRoute>");} surfxml_bypassRoute_gw_dst_isset = 1; ENTER(VALUE2); BUFFERSET(AX_surfxml_bypassRoute_gw_dst);
7159 if (!AX_surfxml_bypassRoute_src) FAIL("Required attribute `src' not set for `bypassRoute' element.");
7160 if (!AX_surfxml_bypassRoute_dst) FAIL("Required attribute `dst' not set for `bypassRoute' element.");
7161 if (!AX_surfxml_bypassRoute_gw_src) FAIL("Required attribute `gw_src' not set for `bypassRoute' element.");
7162 if (!AX_surfxml_bypassRoute_gw_dst) FAIL("Required attribute `gw_dst' not set for `bypassRoute' element.");
7163 LEAVE; STag_surfxml_bypassRoute();surfxml_pcdata_ix = 0; ENTER(S_surfxml_bypassRoute);
7169 if (!AX_surfxml_bypassRoute_src) FAIL("Required attribute `src' not set for `bypassRoute' element.");
7170 if (!AX_surfxml_bypassRoute_dst) FAIL("Required attribute `dst' not set for `bypassRoute' element.");
7171 if (!AX_surfxml_bypassRoute_gw_src) FAIL("Required attribute `gw_src' not set for `bypassRoute' element.");
7172 if (!AX_surfxml_bypassRoute_gw_dst) FAIL("Required attribute `gw_dst' not set for `bypassRoute' element.");
7173 LEAVE; STag_surfxml_bypassRoute(); surfxml_pcdata_ix = 0; ETag_surfxml_bypassRoute(); popbuffer(); /* attribute */
7175 case S_surfxml_AS_1: case S_surfxml_AS: case S_surfxml_AS_8: case S_surfxml_AS_4: case S_surfxml_AS_7: case S_surfxml_AS_6: case S_surfxml_AS_3: SET(S_surfxml_AS_8); break;
7181 FAIL("Unexpected character `%c' in attribute list of bypassRoute element.", surf_parse_text[0]);
7185 FAIL("Bad attribute `%s' in `bypassRoute' element start tag.",surf_parse_text);
7187 case YY_STATE_EOF(AL_surfxml_bypassRoute):
7188 FAIL("EOF in attribute list of `bypassRoute' element.");
7192 /* rule 383 can match eol */
7196 ETag_surfxml_bypassRoute();
7197 popbuffer(); /* attribute */
7199 case S_surfxml_AS_1: case S_surfxml_AS: case S_surfxml_AS_8: case S_surfxml_AS_4: case S_surfxml_AS_7: case S_surfxml_AS_6: case S_surfxml_AS_3: SET(S_surfxml_AS_8); break;
7204 /* rule 384 can match eol */
7206 FAIL("Unexpected end-tag `%s': `</bypassRoute>' expected.",surf_parse_text);
7210 FAIL("Unexpected character `%c': `</bypassRoute>' expected.",surf_parse_text[0]);
7212 case YY_STATE_EOF(S_surfxml_bypassRoute):
7213 case YY_STATE_EOF(S_surfxml_bypassRoute_2):
7214 case YY_STATE_EOF(E_surfxml_bypassRoute):
7215 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</bypassRoute>' expected.");
7219 /* rule 386 can match eol */
7221 FAIL("Starting tag <process> is not allowed here.");
7224 /* rule 387 can match eol */
7227 AX_surfxml_process_host = 0;
7228 surfxml_process_host_isset = 0;
7229 AX_surfxml_process_function = 0;
7230 surfxml_process_function_isset = 0;
7231 AX_surfxml_process_start_time = 28;
7232 surfxml_process_start_time_isset = 0;
7233 AX_surfxml_process_kill_time = 33;
7234 surfxml_process_kill_time_isset = 0;
7235 ENTER(AL_surfxml_process); pushbuffer(0);
7240 /* rule 388 can match eol */
7242 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);
7245 /* rule 389 can match eol */
7247 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);
7250 /* rule 390 can match eol */
7252 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);
7255 /* rule 391 can match eol */
7257 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);
7260 /* rule 392 can match eol */
7262 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);
7265 /* rule 393 can match eol */
7267 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);
7270 /* rule 394 can match eol */
7272 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);
7275 /* rule 395 can match eol */
7277 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);
7282 if (!AX_surfxml_process_host) FAIL("Required attribute `host' not set for `process' element.");
7283 if (!AX_surfxml_process_function) FAIL("Required attribute `function' not set for `process' element.");
7284 LEAVE; STag_surfxml_process();surfxml_pcdata_ix = 0; ENTER(S_surfxml_process);
7290 if (!AX_surfxml_process_host) FAIL("Required attribute `host' not set for `process' element.");
7291 if (!AX_surfxml_process_function) FAIL("Required attribute `function' not set for `process' element.");
7292 LEAVE; STag_surfxml_process(); surfxml_pcdata_ix = 0; ETag_surfxml_process(); popbuffer(); /* attribute */
7294 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;
7300 FAIL("Unexpected character `%c' in attribute list of process element.", surf_parse_text[0]);
7304 FAIL("Bad attribute `%s' in `process' element start tag.",surf_parse_text);
7306 case YY_STATE_EOF(AL_surfxml_process):
7307 FAIL("EOF in attribute list of `process' element.");
7311 /* rule 400 can match eol */
7315 ETag_surfxml_process();
7316 popbuffer(); /* attribute */
7318 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;
7323 /* rule 401 can match eol */
7325 FAIL("Unexpected end-tag `%s': `</process>' expected.",surf_parse_text);
7329 FAIL("Unexpected character `%c': `</process>' expected.",surf_parse_text[0]);
7331 case YY_STATE_EOF(E_surfxml_process):
7332 case YY_STATE_EOF(S_surfxml_process):
7333 case YY_STATE_EOF(S_surfxml_process_2):
7334 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</process>' expected.");
7338 /* rule 403 can match eol */
7340 FAIL("Starting tag <argument> is not allowed here.");
7343 /* rule 404 can match eol */
7346 AX_surfxml_argument_value = 0;
7347 surfxml_argument_value_isset = 0;
7348 ENTER(AL_surfxml_argument); pushbuffer(0);
7353 /* rule 405 can match eol */
7355 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);
7358 /* rule 406 can match eol */
7360 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);
7365 if (!AX_surfxml_argument_value) FAIL("Required attribute `value' not set for `argument' element.");
7366 LEAVE; STag_surfxml_argument();surfxml_pcdata_ix = 0; ENTER(E_surfxml_argument);
7372 if (!AX_surfxml_argument_value) FAIL("Required attribute `value' not set for `argument' element.");
7373 LEAVE; STag_surfxml_argument(); surfxml_pcdata_ix = 0; ETag_surfxml_argument(); popbuffer(); /* attribute */
7375 case S_surfxml_process_1: case S_surfxml_process: case S_surfxml_process_2: SET(S_surfxml_process_2); break;
7381 FAIL("Unexpected character `%c' in attribute list of argument element.", surf_parse_text[0]);
7385 FAIL("Bad attribute `%s' in `argument' element start tag.",surf_parse_text);
7387 case YY_STATE_EOF(AL_surfxml_argument):
7388 FAIL("EOF in attribute list of `argument' element.");
7392 /* rule 411 can match eol */
7396 ETag_surfxml_argument();
7397 popbuffer(); /* attribute */
7399 case S_surfxml_process_1: case S_surfxml_process: case S_surfxml_process_2: SET(S_surfxml_process_2); break;
7404 /* rule 412 can match eol */
7406 FAIL("Unexpected end-tag `%s': `</argument>' expected.",surf_parse_text);
7410 FAIL("Unexpected character `%c': `</argument>' expected.",surf_parse_text[0]);
7412 case YY_STATE_EOF(E_surfxml_argument):
7413 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</argument>' expected.");
7417 /* rule 414 can match eol */
7419 FAIL("Starting tag <config> is not allowed here.");
7422 /* rule 415 can match eol */
7425 AX_surfxml_config_id = 0;
7426 surfxml_config_id_isset = 0;
7427 ENTER(AL_surfxml_config); pushbuffer(0);
7432 /* rule 416 can match eol */
7434 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);
7437 /* rule 417 can match eol */
7439 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);
7444 LEAVE; STag_surfxml_config();surfxml_pcdata_ix = 0; ENTER(S_surfxml_config);
7450 LEAVE; STag_surfxml_config(); surfxml_pcdata_ix = 0; ETag_surfxml_config(); popbuffer(); /* attribute */
7452 case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break;
7458 FAIL("Unexpected character `%c' in attribute list of config element.", surf_parse_text[0]);
7462 FAIL("Bad attribute `%s' in `config' element start tag.",surf_parse_text);
7464 case YY_STATE_EOF(AL_surfxml_config):
7465 FAIL("EOF in attribute list of `config' element.");
7469 /* rule 422 can match eol */
7473 ETag_surfxml_config();
7474 popbuffer(); /* attribute */
7476 case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break;
7481 /* rule 423 can match eol */
7483 FAIL("Unexpected end-tag `%s': `</config>' expected.",surf_parse_text);
7487 FAIL("Unexpected character `%c': `</config>' expected.",surf_parse_text[0]);
7489 case YY_STATE_EOF(S_surfxml_config):
7490 case YY_STATE_EOF(S_surfxml_config_2):
7491 case YY_STATE_EOF(E_surfxml_config):
7492 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</config>' expected.");
7495 /* <!-- <!ATTLIST prop key CDATA #REQUIRED> -->
7496 * <!-- <!ATTLIST prop key CDATA #REQUIRED> --> */
7498 /* rule 425 can match eol */
7500 FAIL("Starting tag <prop> is not allowed here.");
7503 /* rule 426 can match eol */
7506 AX_surfxml_prop_id = 0;
7507 surfxml_prop_id_isset = 0;
7508 AX_surfxml_prop_value = 0;
7509 surfxml_prop_value_isset = 0;
7510 ENTER(AL_surfxml_prop); pushbuffer(0);
7515 /* rule 427 can match eol */
7517 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);
7520 /* rule 428 can match eol */
7522 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);
7525 /* rule 429 can match eol */
7527 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);
7530 /* rule 430 can match eol */
7532 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);
7537 if (!AX_surfxml_prop_id) FAIL("Required attribute `id' not set for `prop' element.");
7538 if (!AX_surfxml_prop_value) FAIL("Required attribute `value' not set for `prop' element.");
7539 LEAVE; STag_surfxml_prop();surfxml_pcdata_ix = 0; ENTER(E_surfxml_prop);
7545 if (!AX_surfxml_prop_id) FAIL("Required attribute `id' not set for `prop' element.");
7546 if (!AX_surfxml_prop_value) FAIL("Required attribute `value' not set for `prop' element.");
7547 LEAVE; STag_surfxml_prop(); surfxml_pcdata_ix = 0; ETag_surfxml_prop(); popbuffer(); /* attribute */
7549 case S_surfxml_random: case S_surfxml_random_2: case S_surfxml_random_1: SET(S_surfxml_random_2); break;
7550 case S_surfxml_storage_1: case S_surfxml_storage_2: case S_surfxml_storage: SET(S_surfxml_storage_2); break;
7551 case S_surfxml_config_1: case S_surfxml_config: case S_surfxml_config_2: SET(S_surfxml_config_2); break;
7552 case S_surfxml_process_1: case S_surfxml_process: case S_surfxml_process_2: SET(S_surfxml_process_2); break;
7553 case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break;
7554 case S_surfxml_storage_type_2: case S_surfxml_storage_type: case S_surfxml_storage_type_1: SET(S_surfxml_storage_type_2); break;
7555 case S_surfxml_link_1: case S_surfxml_link_2: case S_surfxml_link: SET(S_surfxml_link_2); break;
7561 FAIL("Unexpected character `%c' in attribute list of prop element.", surf_parse_text[0]);
7565 FAIL("Bad attribute `%s' in `prop' element start tag.",surf_parse_text);
7567 case YY_STATE_EOF(AL_surfxml_prop):
7568 FAIL("EOF in attribute list of `prop' element.");
7572 /* rule 435 can match eol */
7576 ETag_surfxml_prop();
7577 popbuffer(); /* attribute */
7579 case S_surfxml_random: case S_surfxml_random_2: case S_surfxml_random_1: SET(S_surfxml_random_2); break;
7580 case S_surfxml_storage_1: case S_surfxml_storage_2: case S_surfxml_storage: SET(S_surfxml_storage_2); break;
7581 case S_surfxml_config_1: case S_surfxml_config: case S_surfxml_config_2: SET(S_surfxml_config_2); break;
7582 case S_surfxml_process_1: case S_surfxml_process: case S_surfxml_process_2: SET(S_surfxml_process_2); break;
7583 case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break;
7584 case S_surfxml_storage_type_2: case S_surfxml_storage_type: case S_surfxml_storage_type_1: SET(S_surfxml_storage_type_2); break;
7585 case S_surfxml_link_1: case S_surfxml_link_2: case S_surfxml_link: SET(S_surfxml_link_2); break;
7590 /* rule 436 can match eol */
7592 FAIL("Unexpected end-tag `%s': `</prop>' expected.",surf_parse_text);
7596 FAIL("Unexpected character `%c': `</prop>' expected.",surf_parse_text[0]);
7598 case YY_STATE_EOF(E_surfxml_prop):
7599 if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `</prop>' expected.");
7602 /* EPILOG: after the root element. */
7606 {SET(PROLOG); yyless(0); CLEANUP; return -1;}
7608 case YY_STATE_EOF(EPILOG):
7612 /* CHARACTER DATA. */
7614 /* Non-defined standard entities... */
7635 /* Character entities. */
7638 BUFFERPUTC((unsigned char)atoi(surf_parse_text+2));
7642 BUFFERPUTC((unsigned char)strtol(surf_parse_text+3,NULL,16));
7646 /* rule 446 can match eol */
7648 /* rule 447 can match eol */
7650 /* rule 448 can match eol */
7652 /* rule 449 can match eol */
7663 FAIL("Unexpected `]""]>' in character data.");
7670 case YY_STATE_EOF(VALUE1):
7671 FAIL("EOF in literal (\"'\" expected).");
7678 case YY_STATE_EOF(VALUE2):
7679 FAIL("EOF in literal (`\"' expected).");
7683 /* rule 454 can match eol */
7685 BUFFERPUTC(surf_parse_text[0]);
7689 FAIL("Spurious `%c' in character data.",surf_parse_text[0]);
7696 /* "]""]" BUFFERPUTC(surf_parse_text[0]); BUFFERPUTC(surf_parse_text[1]); */
7699 BUFFERPUTC(surf_parse_text[0]);
7701 case YY_STATE_EOF(CDATA):
7702 FAIL("EOF in CDATA section.");
7705 /* Impossible rules to avoid warnings from flex(1). */
7706 /* Ideally, this should be replaced by code in flexml.pl that
7707 generates just the states not covered by other rules. */
7710 /* rule 458 can match eol */
7712 FAIL("Syntax error on character `%c'.", surf_parse_text[0]);
7719 case YY_STATE_EOF(INITIAL):
7720 case YY_STATE_EOF(ROOT_surfxml_platform):
7721 case YY_STATE_EOF(S_surfxml_platform_2):
7722 case YY_STATE_EOF(S_surfxml_platform_5):
7723 case YY_STATE_EOF(S_surfxml_platform_7):
7724 case YY_STATE_EOF(S_surfxml_random_1):
7725 case YY_STATE_EOF(S_surfxml_AS_2):
7726 case YY_STATE_EOF(S_surfxml_AS_5):
7727 case YY_STATE_EOF(S_surfxml_AS_7):
7728 case YY_STATE_EOF(S_surfxml_AS_10):
7729 case YY_STATE_EOF(S_surfxml_AS_12):
7730 case YY_STATE_EOF(S_surfxml_storage_type_1):
7731 case YY_STATE_EOF(S_surfxml_storage_1):
7732 case YY_STATE_EOF(S_surfxml_host_1):
7733 case YY_STATE_EOF(S_surfxml_link_1):
7734 case YY_STATE_EOF(S_surfxml_route_1):
7735 case YY_STATE_EOF(S_surfxml_ASroute_1):
7736 case YY_STATE_EOF(S_surfxml_bypassRoute_1):
7737 case YY_STATE_EOF(S_surfxml_process_1):
7738 case YY_STATE_EOF(S_surfxml_config_1):
7739 case YY_STATE_EOF(IMPOSSIBLE):
7742 case YY_END_OF_BUFFER:
7744 /* Amount of text matched not including the EOB char. */
7745 int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
7747 /* Undo the effects of YY_DO_BEFORE_ACTION. */
7748 *yy_cp = (yy_hold_char);
7749 YY_RESTORE_YY_MORE_OFFSET
7751 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
7753 /* We're scanning a new file or input source. It's
7754 * possible that this happened because the user
7755 * just pointed surf_parse_in at a new source and called
7756 * surf_parse_lex(). If so, then we have to assure
7757 * consistency between YY_CURRENT_BUFFER and our
7758 * globals. Here is the right place to do so, because
7759 * this is the first action (other than possibly a
7760 * back-up) that will match for the new input source.
7762 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
7763 YY_CURRENT_BUFFER_LVALUE->yy_input_file = surf_parse_in;
7764 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
7767 /* Note that here we test for yy_c_buf_p "<=" to the position
7768 * of the first EOB in the buffer, since yy_c_buf_p will
7769 * already have been incremented past the NUL character
7770 * (since all states make transitions on EOB to the
7771 * end-of-buffer state). Contrast this with the test
7774 if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
7775 { /* This was really a NUL. */
7776 yy_state_type yy_next_state;
7778 (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
7780 yy_current_state = yy_get_previous_state( );
7782 /* Okay, we're now positioned to make the NUL
7783 * transition. We couldn't have
7784 * yy_get_previous_state() go ahead and do it
7785 * for us because it doesn't know how to deal
7786 * with the possibility of jamming (and we don't
7787 * want to build jamming into it because then it
7788 * will run more slowly).
7791 yy_next_state = yy_try_NUL_trans( yy_current_state );
7793 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
7795 if ( yy_next_state )
7797 /* Consume the NUL. */
7798 yy_cp = ++(yy_c_buf_p);
7799 yy_current_state = yy_next_state;
7805 yy_cp = (yy_c_buf_p);
7806 goto yy_find_action;
7810 else switch ( yy_get_next_buffer( ) )
7812 case EOB_ACT_END_OF_FILE:
7814 (yy_did_buffer_switch_on_eof) = 0;
7816 if ( surf_parse_wrap( ) )
7818 /* Note: because we've taken care in
7819 * yy_get_next_buffer() to have set up
7820 * surf_parse_text, we can now set up
7821 * yy_c_buf_p so that if some total
7822 * hoser (like flex itself) wants to
7823 * call the scanner after we return the
7824 * YY_NULL, it'll still work - another
7825 * YY_NULL will get returned.
7827 (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;
7829 yy_act = YY_STATE_EOF(YY_START);
7835 if ( ! (yy_did_buffer_switch_on_eof) )
7841 case EOB_ACT_CONTINUE_SCAN:
7843 (yytext_ptr) + yy_amount_of_matched_text;
7845 yy_current_state = yy_get_previous_state( );
7847 yy_cp = (yy_c_buf_p);
7848 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
7851 case EOB_ACT_LAST_MATCH:
7853 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
7855 yy_current_state = yy_get_previous_state( );
7857 yy_cp = (yy_c_buf_p);
7858 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
7859 goto yy_find_action;
7866 "fatal flex scanner internal error--no action found" );
7867 } /* end of action switch */
7868 } /* end of scanning one token */
7869 } /* end of surf_parse_lex */
7871 /* yy_get_next_buffer - try to read in a new buffer
7873 * Returns a code representing an action:
7874 * EOB_ACT_LAST_MATCH -
7875 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
7876 * EOB_ACT_END_OF_FILE - end of file
7878 static int yy_get_next_buffer (void)
7880 register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
7881 register char *source = (yytext_ptr);
7882 register int number_to_move, i;
7885 if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
7887 "fatal flex scanner internal error--end of buffer missed" );
7889 if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
7890 { /* Don't try to fill the buffer, so this is an EOF. */
7891 if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
7893 /* We matched a single character, the EOB, so
7894 * treat this as a final EOF.
7896 return EOB_ACT_END_OF_FILE;
7901 /* We matched some text prior to the EOB, first
7904 return EOB_ACT_LAST_MATCH;
7908 /* Try to read more data. */
7910 /* First move last chars to start of buffer. */
7911 number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1;
7913 for ( i = 0; i < number_to_move; ++i )
7914 *(dest++) = *(source++);
7916 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
7917 /* don't do the read, it's not guaranteed to return an EOF,
7920 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
7925 YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
7927 while ( num_to_read <= 0 )
7928 { /* Not enough room in the buffer - grow it. */
7930 /* just a shorter name for the current buffer */
7931 YY_BUFFER_STATE b = YY_CURRENT_BUFFER;
7933 int yy_c_buf_p_offset =
7934 (int) ((yy_c_buf_p) - b->yy_ch_buf);
7936 if ( b->yy_is_our_buffer )
7938 int new_size = b->yy_buf_size * 2;
7940 if ( new_size <= 0 )
7941 b->yy_buf_size += b->yy_buf_size / 8;
7943 b->yy_buf_size *= 2;
7945 b->yy_ch_buf = (char *)
7946 /* Include room in for 2 EOB chars. */
7947 surf_parse_realloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 );
7950 /* Can't grow it, we don't own it. */
7953 if ( ! b->yy_ch_buf )
7955 "fatal error - scanner input buffer overflow" );
7957 (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
7959 num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
7964 if ( num_to_read > YY_READ_BUF_SIZE )
7965 num_to_read = YY_READ_BUF_SIZE;
7967 /* Read in more data. */
7968 YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
7969 (yy_n_chars), (size_t) num_to_read );
7971 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
7974 if ( (yy_n_chars) == 0 )
7976 if ( number_to_move == YY_MORE_ADJ )
7978 ret_val = EOB_ACT_END_OF_FILE;
7979 surf_parse_restart(surf_parse_in );
7984 ret_val = EOB_ACT_LAST_MATCH;
7985 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
7986 YY_BUFFER_EOF_PENDING;
7991 ret_val = EOB_ACT_CONTINUE_SCAN;
7993 if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
7994 /* Extend the array by 50%, plus the number we really need. */
7995 yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
7996 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) surf_parse_realloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size );
7997 if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
7998 YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
8001 (yy_n_chars) += number_to_move;
8002 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
8003 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
8005 (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
8010 /* yy_get_previous_state - get the state just before the EOB char was reached */
8012 static yy_state_type yy_get_previous_state (void)
8014 register yy_state_type yy_current_state;
8015 register char *yy_cp;
8017 yy_current_state = (yy_start);
8019 for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
8021 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
8022 if ( yy_accept[yy_current_state] )
8024 (yy_last_accepting_state) = yy_current_state;
8025 (yy_last_accepting_cpos) = yy_cp;
8027 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
8029 yy_current_state = (int) yy_def[yy_current_state];
8030 if ( yy_current_state >= 2695 )
8031 yy_c = yy_meta[(unsigned int) yy_c];
8033 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
8036 return yy_current_state;
8039 /* yy_try_NUL_trans - try to make a transition on the NUL character
8042 * next_state = yy_try_NUL_trans( current_state );
8044 static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state )
8046 register int yy_is_jam;
8047 register char *yy_cp = (yy_c_buf_p);
8049 register YY_CHAR yy_c = 1;
8050 if ( yy_accept[yy_current_state] )
8052 (yy_last_accepting_state) = yy_current_state;
8053 (yy_last_accepting_cpos) = yy_cp;
8055 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
8057 yy_current_state = (int) yy_def[yy_current_state];
8058 if ( yy_current_state >= 2695 )
8059 yy_c = yy_meta[(unsigned int) yy_c];
8061 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
8062 yy_is_jam = (yy_current_state == 2694);
8064 return yy_is_jam ? 0 : yy_current_state;
8069 static int yyinput (void)
8071 static int input (void)
8077 *(yy_c_buf_p) = (yy_hold_char);
8079 if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
8081 /* yy_c_buf_p now points to the character we want to return.
8082 * If this occurs *before* the EOB characters, then it's a
8083 * valid NUL; if not, then we've hit the end of the buffer.
8085 if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
8086 /* This was really a NUL. */
8087 *(yy_c_buf_p) = '\0';
8090 { /* need more input */
8091 int offset = (yy_c_buf_p) - (yytext_ptr);
8094 switch ( yy_get_next_buffer( ) )
8096 case EOB_ACT_LAST_MATCH:
8097 /* This happens because yy_g_n_b()
8098 * sees that we've accumulated a
8099 * token and flags that we need to
8100 * try matching the token before
8101 * proceeding. But for input(),
8102 * there's no matching to consider.
8103 * So convert the EOB_ACT_LAST_MATCH
8104 * to EOB_ACT_END_OF_FILE.
8107 /* Reset buffer status. */
8108 surf_parse_restart(surf_parse_in );
8112 case EOB_ACT_END_OF_FILE:
8114 if ( surf_parse_wrap( ) )
8117 if ( ! (yy_did_buffer_switch_on_eof) )
8126 case EOB_ACT_CONTINUE_SCAN:
8127 (yy_c_buf_p) = (yytext_ptr) + offset;
8133 c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */
8134 *(yy_c_buf_p) = '\0'; /* preserve surf_parse_text */
8135 (yy_hold_char) = *++(yy_c_buf_p);
8139 surf_parse_lineno++;
8144 #endif /* ifndef YY_NO_INPUT */
8146 /** Immediately switch to a different input stream.
8147 * @param input_file A readable stream.
8149 * @note This function does not reset the start condition to @c INITIAL .
8151 void surf_parse_restart (FILE * input_file )
8154 if ( ! YY_CURRENT_BUFFER ){
8155 surf_parse_ensure_buffer_stack ();
8156 YY_CURRENT_BUFFER_LVALUE =
8157 surf_parse__create_buffer(surf_parse_in,YY_BUF_SIZE );
8160 surf_parse__init_buffer(YY_CURRENT_BUFFER,input_file );
8161 surf_parse__load_buffer_state( );
8164 /** Switch to a different input buffer.
8165 * @param new_buffer The new input buffer.
8168 void surf_parse__switch_to_buffer (YY_BUFFER_STATE new_buffer )
8171 /* TODO. We should be able to replace this entire function body
8173 * surf_parse_pop_buffer_state();
8174 * surf_parse_push_buffer_state(new_buffer);
8176 surf_parse_ensure_buffer_stack ();
8177 if ( YY_CURRENT_BUFFER == new_buffer )
8180 if ( YY_CURRENT_BUFFER )
8182 /* Flush out information for old buffer. */
8183 *(yy_c_buf_p) = (yy_hold_char);
8184 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
8185 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
8188 YY_CURRENT_BUFFER_LVALUE = new_buffer;
8189 surf_parse__load_buffer_state( );
8191 /* We don't actually know whether we did this switch during
8192 * EOF (surf_parse_wrap()) processing, but the only time this flag
8193 * is looked at is after surf_parse_wrap() is called, so it's safe
8194 * to go ahead and always set it.
8196 (yy_did_buffer_switch_on_eof) = 1;
8199 static void surf_parse__load_buffer_state (void)
8201 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
8202 (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
8203 surf_parse_in = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
8204 (yy_hold_char) = *(yy_c_buf_p);
8207 /** Allocate and initialize an input buffer state.
8208 * @param file A readable stream.
8209 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
8211 * @return the allocated buffer state.
8213 YY_BUFFER_STATE surf_parse__create_buffer (FILE * file, int size )
8217 b = (YY_BUFFER_STATE) surf_parse_alloc(sizeof( struct yy_buffer_state ) );
8219 YY_FATAL_ERROR( "out of dynamic memory in surf_parse__create_buffer()" );
8221 b->yy_buf_size = size;
8223 /* yy_ch_buf has to be 2 characters longer than the size given because
8224 * we need to put in 2 end-of-buffer characters.
8226 b->yy_ch_buf = (char *) surf_parse_alloc(b->yy_buf_size + 2 );
8227 if ( ! b->yy_ch_buf )
8228 YY_FATAL_ERROR( "out of dynamic memory in surf_parse__create_buffer()" );
8230 b->yy_is_our_buffer = 1;
8232 surf_parse__init_buffer(b,file );
8237 /** Destroy the buffer.
8238 * @param b a buffer created with surf_parse__create_buffer()
8241 void surf_parse__delete_buffer (YY_BUFFER_STATE b )
8247 if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
8248 YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
8250 if ( b->yy_is_our_buffer )
8251 surf_parse_free((void *) b->yy_ch_buf );
8253 surf_parse_free((void *) b );
8257 extern int isatty (int );
8258 #endif /* __cplusplus */
8260 /* Initializes or reinitializes a buffer.
8261 * This function is sometimes called more than once on the same buffer,
8262 * such as during a surf_parse_restart() or at EOF.
8264 static void surf_parse__init_buffer (YY_BUFFER_STATE b, FILE * file )
8269 surf_parse__flush_buffer(b );
8271 b->yy_input_file = file;
8272 b->yy_fill_buffer = 1;
8274 /* If b is the current buffer, then surf_parse__init_buffer was _probably_
8275 * called from surf_parse_restart() or through yy_get_next_buffer.
8276 * In that case, we don't want to reset the lineno or column.
8278 if (b != YY_CURRENT_BUFFER){
8279 b->yy_bs_lineno = 1;
8280 b->yy_bs_column = 0;
8283 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
8288 /** Discard all buffered characters. On the next scan, YY_INPUT will be called.
8289 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
8292 void surf_parse__flush_buffer (YY_BUFFER_STATE b )
8299 /* We always need two end-of-buffer characters. The first causes
8300 * a transition to the end-of-buffer state. The second causes
8301 * a jam in that state.
8303 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
8304 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
8306 b->yy_buf_pos = &b->yy_ch_buf[0];
8309 b->yy_buffer_status = YY_BUFFER_NEW;
8311 if ( b == YY_CURRENT_BUFFER )
8312 surf_parse__load_buffer_state( );
8315 /** Pushes the new state onto the stack. The new state becomes
8316 * the current state. This function will allocate the stack
8318 * @param new_buffer The new state.
8321 void surf_parse_push_buffer_state (YY_BUFFER_STATE new_buffer )
8323 if (new_buffer == NULL)
8326 surf_parse_ensure_buffer_stack();
8328 /* This block is copied from surf_parse__switch_to_buffer. */
8329 if ( YY_CURRENT_BUFFER )
8331 /* Flush out information for old buffer. */
8332 *(yy_c_buf_p) = (yy_hold_char);
8333 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
8334 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
8337 /* Only push if top exists. Otherwise, replace top. */
8338 if (YY_CURRENT_BUFFER)
8339 (yy_buffer_stack_top)++;
8340 YY_CURRENT_BUFFER_LVALUE = new_buffer;
8342 /* copied from surf_parse__switch_to_buffer. */
8343 surf_parse__load_buffer_state( );
8344 (yy_did_buffer_switch_on_eof) = 1;
8347 /** Removes and deletes the top of the stack, if present.
8348 * The next element becomes the new top.
8351 void surf_parse_pop_buffer_state (void)
8353 if (!YY_CURRENT_BUFFER)
8356 surf_parse__delete_buffer(YY_CURRENT_BUFFER );
8357 YY_CURRENT_BUFFER_LVALUE = NULL;
8358 if ((yy_buffer_stack_top) > 0)
8359 --(yy_buffer_stack_top);
8361 if (YY_CURRENT_BUFFER) {
8362 surf_parse__load_buffer_state( );
8363 (yy_did_buffer_switch_on_eof) = 1;
8367 /* Allocates the stack if it does not exist.
8368 * Guarantees space for at least one push.
8370 static void surf_parse_ensure_buffer_stack (void)
8374 if (!(yy_buffer_stack)) {
8376 /* First allocation is just for 2 elements, since we don't know if this
8377 * scanner will even need a stack. We use 2 instead of 1 to avoid an
8378 * immediate realloc on the next call.
8381 (yy_buffer_stack) = (struct yy_buffer_state**)surf_parse_alloc
8382 (num_to_alloc * sizeof(struct yy_buffer_state*)
8384 if ( ! (yy_buffer_stack) )
8385 YY_FATAL_ERROR( "out of dynamic memory in surf_parse_ensure_buffer_stack()" );
8387 memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
8389 (yy_buffer_stack_max) = num_to_alloc;
8390 (yy_buffer_stack_top) = 0;
8394 if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
8396 /* Increase the buffer to prepare for a possible push. */
8397 int grow_size = 8 /* arbitrary grow size */;
8399 num_to_alloc = (yy_buffer_stack_max) + grow_size;
8400 (yy_buffer_stack) = (struct yy_buffer_state**)surf_parse_realloc
8402 num_to_alloc * sizeof(struct yy_buffer_state*)
8404 if ( ! (yy_buffer_stack) )
8405 YY_FATAL_ERROR( "out of dynamic memory in surf_parse_ensure_buffer_stack()" );
8407 /* zero only the new slots.*/
8408 memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
8409 (yy_buffer_stack_max) = num_to_alloc;
8413 /** Setup the input buffer state to scan directly from a user-specified character buffer.
8414 * @param base the character buffer
8415 * @param size the size in bytes of the character buffer
8417 * @return the newly allocated buffer state object.
8419 YY_BUFFER_STATE surf_parse__scan_buffer (char * base, yy_size_t size )
8424 base[size-2] != YY_END_OF_BUFFER_CHAR ||
8425 base[size-1] != YY_END_OF_BUFFER_CHAR )
8426 /* They forgot to leave room for the EOB's. */
8429 b = (YY_BUFFER_STATE) surf_parse_alloc(sizeof( struct yy_buffer_state ) );
8431 YY_FATAL_ERROR( "out of dynamic memory in surf_parse__scan_buffer()" );
8433 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
8434 b->yy_buf_pos = b->yy_ch_buf = base;
8435 b->yy_is_our_buffer = 0;
8436 b->yy_input_file = 0;
8437 b->yy_n_chars = b->yy_buf_size;
8438 b->yy_is_interactive = 0;
8440 b->yy_fill_buffer = 0;
8441 b->yy_buffer_status = YY_BUFFER_NEW;
8443 surf_parse__switch_to_buffer(b );
8448 /** Setup the input buffer state to scan a string. The next call to surf_parse_lex() will
8449 * scan from a @e copy of @a str.
8450 * @param yystr a NUL-terminated string to scan
8452 * @return the newly allocated buffer state object.
8453 * @note If you want to scan bytes that may contain NUL values, then use
8454 * surf_parse__scan_bytes() instead.
8456 YY_BUFFER_STATE surf_parse__scan_string (yyconst char * yystr )
8459 return surf_parse__scan_bytes(yystr,strlen(yystr) );
8462 /** Setup the input buffer state to scan the given bytes. The next call to surf_parse_lex() will
8463 * scan from a @e copy of @a bytes.
8464 * @param yybytes the byte buffer to scan
8465 * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
8467 * @return the newly allocated buffer state object.
8469 YY_BUFFER_STATE surf_parse__scan_bytes (yyconst char * yybytes, int _yybytes_len )
8476 /* Get memory for full buffer, including space for trailing EOB's. */
8477 n = _yybytes_len + 2;
8478 buf = (char *) surf_parse_alloc(n );
8480 YY_FATAL_ERROR( "out of dynamic memory in surf_parse__scan_bytes()" );
8482 for ( i = 0; i < _yybytes_len; ++i )
8483 buf[i] = yybytes[i];
8485 buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
8487 b = surf_parse__scan_buffer(buf,n );
8489 YY_FATAL_ERROR( "bad buffer in surf_parse__scan_bytes()" );
8491 /* It's okay to grow etc. this buffer, and we should throw it
8492 * away when we're done.
8494 b->yy_is_our_buffer = 1;
8499 static void yy_push_state (int new_state )
8501 if ( (yy_start_stack_ptr) >= (yy_start_stack_depth) )
8505 (yy_start_stack_depth) += YY_START_STACK_INCR;
8506 new_size = (yy_start_stack_depth) * sizeof( int );
8508 if ( ! (yy_start_stack) )
8509 (yy_start_stack) = (int *) surf_parse_alloc(new_size );
8512 (yy_start_stack) = (int *) surf_parse_realloc((void *) (yy_start_stack),new_size );
8514 if ( ! (yy_start_stack) )
8515 YY_FATAL_ERROR( "out of memory expanding start-condition stack" );
8518 (yy_start_stack)[(yy_start_stack_ptr)++] = YY_START;
8523 static void yy_pop_state (void)
8525 if ( --(yy_start_stack_ptr) < 0 )
8526 YY_FATAL_ERROR( "start-condition stack underflow" );
8528 BEGIN((yy_start_stack)[(yy_start_stack_ptr)]);
8531 #ifndef YY_EXIT_FAILURE
8532 #define YY_EXIT_FAILURE 2
8535 static void yy_fatal_error (yyconst char* msg )
8537 (void) fprintf( stderr, "%s\n", msg );
8538 exit( YY_EXIT_FAILURE );
8541 /* Redefine yyless() so it works in section 3 code. */
8547 /* Undo effects of setting up surf_parse_text. */ \
8548 int yyless_macro_arg = (n); \
8549 YY_LESS_LINENO(yyless_macro_arg);\
8550 surf_parse_text[surf_parse_leng] = (yy_hold_char); \
8551 (yy_c_buf_p) = surf_parse_text + yyless_macro_arg; \
8552 (yy_hold_char) = *(yy_c_buf_p); \
8553 *(yy_c_buf_p) = '\0'; \
8554 surf_parse_leng = yyless_macro_arg; \
8558 /* Accessor methods (get/set functions) to struct members. */
8560 /** Get the current line number.
8563 int surf_parse_get_lineno (void)
8566 return surf_parse_lineno;
8569 /** Get the input stream.
8572 FILE *surf_parse_get_in (void)
8574 return surf_parse_in;
8577 /** Get the output stream.
8580 FILE *surf_parse_get_out (void)
8582 return surf_parse_out;
8585 /** Get the length of the current token.
8588 int surf_parse_get_leng (void)
8590 return surf_parse_leng;
8593 /** Get the current token.
8597 char *surf_parse_get_text (void)
8599 return surf_parse_text;
8602 /** Set the current line number.
8603 * @param line_number
8606 void surf_parse_set_lineno (int line_number )
8609 surf_parse_lineno = line_number;
8612 /** Set the input stream. This does not discard the current
8614 * @param in_str A readable stream.
8616 * @see surf_parse__switch_to_buffer
8618 void surf_parse_set_in (FILE * in_str )
8620 surf_parse_in = in_str ;
8623 void surf_parse_set_out (FILE * out_str )
8625 surf_parse_out = out_str ;
8628 int surf_parse_get_debug (void)
8630 return surf_parse__flex_debug;
8633 void surf_parse_set_debug (int bdebug )
8635 surf_parse__flex_debug = bdebug ;
8638 static int yy_init_globals (void)
8640 /* Initialization is the same as for the non-reentrant scanner.
8641 * This function is called from surf_parse_lex_destroy(), so don't allocate here.
8644 /* We do not touch surf_parse_lineno unless the option is enabled. */
8645 surf_parse_lineno = 1;
8647 (yy_buffer_stack) = 0;
8648 (yy_buffer_stack_top) = 0;
8649 (yy_buffer_stack_max) = 0;
8650 (yy_c_buf_p) = (char *) 0;
8654 (yy_start_stack_ptr) = 0;
8655 (yy_start_stack_depth) = 0;
8656 (yy_start_stack) = NULL;
8658 /* Defined in main.c */
8660 surf_parse_in = stdin;
8661 surf_parse_out = stdout;
8663 surf_parse_in = (FILE *) 0;
8664 surf_parse_out = (FILE *) 0;
8667 /* For future reference: Set errno on error, since we are called by
8668 * surf_parse_lex_init()
8673 /* surf_parse_lex_destroy is for both reentrant and non-reentrant scanners. */
8674 int surf_parse_lex_destroy (void)
8677 /* Pop the buffer stack, destroying each element. */
8678 while(YY_CURRENT_BUFFER){
8679 surf_parse__delete_buffer(YY_CURRENT_BUFFER );
8680 YY_CURRENT_BUFFER_LVALUE = NULL;
8681 surf_parse_pop_buffer_state();
8684 /* Destroy the stack itself. */
8685 surf_parse_free((yy_buffer_stack) );
8686 (yy_buffer_stack) = NULL;
8688 /* Destroy the start condition stack. */
8689 surf_parse_free((yy_start_stack) );
8690 (yy_start_stack) = NULL;
8692 /* Reset the globals. This is important in a non-reentrant scanner so the next time
8693 * surf_parse_lex() is called, initialization will occur. */
8700 * Internal utility routines.
8704 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
8707 for ( i = 0; i < n; ++i )
8712 #ifdef YY_NEED_STRLEN
8713 static int yy_flex_strlen (yyconst char * s )
8716 for ( n = 0; s[n]; ++n )
8723 void *surf_parse_alloc (yy_size_t size )
8725 return (void *) malloc( size );
8728 void *surf_parse_realloc (void * ptr, yy_size_t size )
8730 /* The cast to (char *) in the following accommodates both
8731 * implementations that use char* generic pointers, and those
8732 * that use void* generic pointers. It works with the latter
8733 * because both ANSI C and C++ allow castless assignment from
8734 * any pointer type to void*, and deal with argument conversions
8735 * as though doing an assignment.
8737 return (void *) realloc( (char *) ptr, size );
8740 void surf_parse_free (void * ptr )
8742 free( (char *) ptr ); /* see surf_parse_realloc() for (char *) cast */
8745 #define YYTABLES_NAME "yytables"
8747 /* Element context stack lookup. */
8748 int surfxml_element_context(int i)
8750 return (0<i && i<yy_start_stack_depth
8751 ? yy_start_stack[yy_start_stack_ptr - i]
8756 void print_yy_stack(char* fmt, ...)
8758 int i = 0; va_list ap; va_start(ap, fmt);
8759 vfprintf(stderr, fmt, ap);
8760 if (surfxml_statenames) {
8761 for (i=1; i<yy_start_stack_ptr; i++) {
8762 fprintf(stderr, "%s/", surfxml_statenames[yy_start_stack[i] ]);
8764 fprintf(stderr,"%s\n", surfxml_statenames[YY_START]);
8769 void print_surfxml_bufferstack()
8772 fputs("Buffer: ", stderr);
8773 for (i = 0; i < blimit; i++) {
8774 if ( surfxml_bufferstack[i] == '\377' ) break;
8775 putc(surfxml_bufferstack[i], stderr);
8780 static void debug_enter(int state, const char* statename) {
8781 yy_push_state(state);
8782 if (surf_parse__flex_debug) {
8783 print_yy_stack("--ENTER(%s) : ",statename);
8784 print_surfxml_bufferstack();
8788 static void debug_leave(void) {
8789 if (surf_parse__flex_debug) {
8790 print_yy_stack("--LEAVE : ");
8791 print_surfxml_bufferstack();
8796 static void debug_set(int state, const char* statename) {
8798 if (surf_parse__flex_debug) print_yy_stack("--SET(%s) : ",statename);
8802 static void cleanup(void)
8804 if (surfxml_statenames) {
8805 free(surfxml_statenames);
8806 surfxml_statenames = NULL;
8808 free(surfxml_bufferstack);
8809 surfxml_bufferstack = NULL;
8815 static int fail(const char* fmt, ...)
8817 int chars_left, used;
8818 va_list ap; va_start(ap, fmt);
8819 #ifdef FLEXML_yylineno
8820 used = sprintf(flexml_err_msg,
8821 "Invalid XML (XML input line %d, state %d): ",
8822 surf_parse_lineno, YY_START);
8824 used = sprintf(flexml_err_msg,
8825 "Invalid XML (state %d): ",
8828 chars_left = flexml_max_err_msg_size - used - 1;
8829 vsnprintf(flexml_err_msg + used, chars_left, fmt, ap);
8832 #ifndef FLEXML_quiet_parser
8833 /* print directly to sdterr */
8834 fprintf(stderr, "%s\n", flexml_err_msg);
8835 flexml_err_msg[0] = '\0';