Logo AND Algorithmique Numérique Distribuée

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