/home/coin/SVN-release/OS-2.3.5/OS/src/OSParsers/OSParseosrl.cpp

Go to the documentation of this file.
00001 #line 2 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.cpp"
00002 
00003 #line 4 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.cpp"
00004 
00005 #define  YY_INT_ALIGNED short int
00006 
00007 /* A lexical scanner generated by flex */
00008 
00009 #define FLEX_SCANNER
00010 #define YY_FLEX_MAJOR_VERSION 2
00011 #define YY_FLEX_MINOR_VERSION 5
00012 #define YY_FLEX_SUBMINOR_VERSION 35
00013 #if YY_FLEX_SUBMINOR_VERSION > 0
00014 #define FLEX_BETA
00015 #endif
00016 
00017 /* First, we deal with  platform-specific or compiler-specific issues. */
00018 
00019 /* begin standard C headers. */
00020 #include <stdio.h>
00021 #include <string.h>
00022 #include <errno.h>
00023 #include <stdlib.h>
00024 
00025 /* end standard C headers. */
00026 
00027 /* flex integer type definitions */
00028 
00029 #ifndef FLEXINT_H
00030 #define FLEXINT_H
00031 
00032 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
00033 
00034 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
00035 
00036 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
00037  * if you want the limit (max/min) macros for int types. 
00038  */
00039 #ifndef __STDC_LIMIT_MACROS
00040 #define __STDC_LIMIT_MACROS 1
00041 #endif
00042 
00043 #include <inttypes.h>
00044 typedef int8_t flex_int8_t;
00045 typedef uint8_t flex_uint8_t;
00046 typedef int16_t flex_int16_t;
00047 typedef uint16_t flex_uint16_t;
00048 typedef int32_t flex_int32_t;
00049 typedef uint32_t flex_uint32_t;
00050 #else
00051 typedef signed char flex_int8_t;
00052 typedef short int flex_int16_t;
00053 typedef int flex_int32_t;
00054 typedef unsigned char flex_uint8_t; 
00055 typedef unsigned short int flex_uint16_t;
00056 typedef unsigned int flex_uint32_t;
00057 
00058 /* Limits of integral types. */
00059 #ifndef INT8_MIN
00060 #define INT8_MIN               (-128)
00061 #endif
00062 #ifndef INT16_MIN
00063 #define INT16_MIN              (-32767-1)
00064 #endif
00065 #ifndef INT32_MIN
00066 #define INT32_MIN              (-2147483647-1)
00067 #endif
00068 #ifndef INT8_MAX
00069 #define INT8_MAX               (127)
00070 #endif
00071 #ifndef INT16_MAX
00072 #define INT16_MAX              (32767)
00073 #endif
00074 #ifndef INT32_MAX
00075 #define INT32_MAX              (2147483647)
00076 #endif
00077 #ifndef UINT8_MAX
00078 #define UINT8_MAX              (255U)
00079 #endif
00080 #ifndef UINT16_MAX
00081 #define UINT16_MAX             (65535U)
00082 #endif
00083 #ifndef UINT32_MAX
00084 #define UINT32_MAX             (4294967295U)
00085 #endif
00086 
00087 #endif /* ! C99 */
00088 
00089 #endif /* ! FLEXINT_H */
00090 
00091 #ifdef __cplusplus
00092 
00093 /* The "const" storage-class-modifier is valid. */
00094 #define YY_USE_CONST
00095 
00096 #else   /* ! __cplusplus */
00097 
00098 /* C99 requires __STDC__ to be defined as 1. */
00099 #if defined (__STDC__)
00100 
00101 #define YY_USE_CONST
00102 
00103 #endif  /* defined (__STDC__) */
00104 #endif  /* ! __cplusplus */
00105 
00106 #ifdef YY_USE_CONST
00107 #define yyconst const
00108 #else
00109 #define yyconst
00110 #endif
00111 
00112 /* Returned upon end-of-file. */
00113 #define YY_NULL 0
00114 
00115 /* Promotes a possibly negative, possibly signed char to an unsigned
00116  * integer for use as an array index.  If the signed char is negative,
00117  * we want to instead treat it as an 8-bit unsigned char, hence the
00118  * double cast.
00119  */
00120 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
00121 
00122 /* An opaque pointer. */
00123 #ifndef YY_TYPEDEF_YY_SCANNER_T
00124 #define YY_TYPEDEF_YY_SCANNER_T
00125 typedef void* yyscan_t;
00126 #endif
00127 
00128 /* For convenience, these vars (plus the bison vars far below)
00129    are macros in the reentrant scanner. */
00130 #define yyin yyg->yyin_r
00131 #define yyout yyg->yyout_r
00132 #define yyextra yyg->yyextra_r
00133 #define yyleng yyg->yyleng_r
00134 #define yytext yyg->yytext_r
00135 #define yylineno (YY_CURRENT_BUFFER_LVALUE->yy_bs_lineno)
00136 #define yycolumn (YY_CURRENT_BUFFER_LVALUE->yy_bs_column)
00137 #define yy_flex_debug yyg->yy_flex_debug_r
00138 
00139 /* Enter a start condition.  This macro really ought to take a parameter,
00140  * but we do it the disgusting crufty way forced on us by the ()-less
00141  * definition of BEGIN.
00142  */
00143 #define BEGIN yyg->yy_start = 1 + 2 *
00144 
00145 /* Translate the current start state into a value that can be later handed
00146  * to BEGIN to return to the state.  The YYSTATE alias is for lex
00147  * compatibility.
00148  */
00149 #define YY_START ((yyg->yy_start - 1) / 2)
00150 #define YYSTATE YY_START
00151 
00152 /* Action number for EOF rule of a given start state. */
00153 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
00154 
00155 /* Special action meaning "start processing a new file". */
00156 #define YY_NEW_FILE osrlrestart(yyin ,yyscanner )
00157 
00158 #define YY_END_OF_BUFFER_CHAR 0
00159 
00160 /* Size of default input buffer. */
00161 #ifndef YY_BUF_SIZE
00162 #ifdef __ia64__
00163 /* On IA-64, the buffer size is 16k, not 8k.
00164  * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
00165  * Ditto for the __ia64__ case accordingly.
00166  */
00167 #define YY_BUF_SIZE 32768
00168 #else
00169 #define YY_BUF_SIZE 16384
00170 #endif /* __ia64__ */
00171 #endif
00172 
00173 /* The state buf must be large enough to hold one state per character in the main buffer.
00174  */
00175 #define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
00176 
00177 #ifndef YY_TYPEDEF_YY_BUFFER_STATE
00178 #define YY_TYPEDEF_YY_BUFFER_STATE
00179 typedef struct yy_buffer_state *YY_BUFFER_STATE;
00180 #endif
00181 
00182 #define EOB_ACT_CONTINUE_SCAN 0
00183 #define EOB_ACT_END_OF_FILE 1
00184 #define EOB_ACT_LAST_MATCH 2
00185 
00186     /* Note: We specifically omit the test for yy_rule_can_match_eol because it requires
00187      *       access to the local variable yy_act. Since yyless() is a macro, it would break
00188      *       existing scanners that call yyless() from OUTSIDE osrllex. 
00189      *       One obvious solution it to make yy_act a global. I tried that, and saw
00190      *       a 5% performance hit in a non-yylineno scanner, because yy_act is
00191      *       normally declared as a register variable-- so it is not worth it.
00192      */
00193     #define  YY_LESS_LINENO(n) \
00194             do { \
00195                 int yyl;\
00196                 for ( yyl = n; yyl < yyleng; ++yyl )\
00197                     if ( yytext[yyl] == '\n' )\
00198                         --yylineno;\
00199             }while(0)
00200     
00201 /* Return all but the first "n" matched characters back to the input stream. */
00202 #define yyless(n) \
00203         do \
00204                 { \
00205                 /* Undo effects of setting up yytext. */ \
00206         int yyless_macro_arg = (n); \
00207         YY_LESS_LINENO(yyless_macro_arg);\
00208                 *yy_cp = yyg->yy_hold_char; \
00209                 YY_RESTORE_YY_MORE_OFFSET \
00210                 yyg->yy_c_buf_p = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
00211                 YY_DO_BEFORE_ACTION; /* set up yytext again */ \
00212                 } \
00213         while ( 0 )
00214 
00215 #define unput(c) yyunput( c, yyg->yytext_ptr , yyscanner )
00216 
00217 #ifndef YY_TYPEDEF_YY_SIZE_T
00218 #define YY_TYPEDEF_YY_SIZE_T
00219 typedef size_t yy_size_t;
00220 #endif
00221 
00222 #ifndef YY_STRUCT_YY_BUFFER_STATE
00223 #define YY_STRUCT_YY_BUFFER_STATE
00224 struct yy_buffer_state
00225         {
00226         FILE *yy_input_file;
00227 
00228         char *yy_ch_buf;                /* input buffer */
00229         char *yy_buf_pos;               /* current position in input buffer */
00230 
00231         /* Size of input buffer in bytes, not including room for EOB
00232          * characters.
00233          */
00234         yy_size_t yy_buf_size;
00235 
00236         /* Number of characters read into yy_ch_buf, not including EOB
00237          * characters.
00238          */
00239         int yy_n_chars;
00240 
00241         /* Whether we "own" the buffer - i.e., we know we created it,
00242          * and can realloc() it to grow it, and should free() it to
00243          * delete it.
00244          */
00245         int yy_is_our_buffer;
00246 
00247         /* Whether this is an "interactive" input source; if so, and
00248          * if we're using stdio for input, then we want to use getc()
00249          * instead of fread(), to make sure we stop fetching input after
00250          * each newline.
00251          */
00252         int yy_is_interactive;
00253 
00254         /* Whether we're considered to be at the beginning of a line.
00255          * If so, '^' rules will be active on the next match, otherwise
00256          * not.
00257          */
00258         int yy_at_bol;
00259 
00260     int yy_bs_lineno; 
00261     int yy_bs_column; 
00263         /* Whether to try to fill the input buffer when we reach the
00264          * end of it.
00265          */
00266         int yy_fill_buffer;
00267 
00268         int yy_buffer_status;
00269 
00270 #define YY_BUFFER_NEW 0
00271 #define YY_BUFFER_NORMAL 1
00272         /* When an EOF's been seen but there's still some text to process
00273          * then we mark the buffer as YY_EOF_PENDING, to indicate that we
00274          * shouldn't try reading from the input source any more.  We might
00275          * still have a bunch of tokens to match, though, because of
00276          * possible backing-up.
00277          *
00278          * When we actually see the EOF, we change the status to "new"
00279          * (via osrlrestart()), so that the user can continue scanning by
00280          * just pointing yyin at a new input file.
00281          */
00282 #define YY_BUFFER_EOF_PENDING 2
00283 
00284         };
00285 #endif /* !YY_STRUCT_YY_BUFFER_STATE */
00286 
00287 /* We provide macros for accessing buffer states in case in the
00288  * future we want to put the buffer states in a more general
00289  * "scanner state".
00290  *
00291  * Returns the top of the stack, or NULL.
00292  */
00293 #define YY_CURRENT_BUFFER ( yyg->yy_buffer_stack \
00294                           ? yyg->yy_buffer_stack[yyg->yy_buffer_stack_top] \
00295                           : NULL)
00296 
00297 /* Same as previous macro, but useful when we know that the buffer stack is not
00298  * NULL or when we need an lvalue. For internal use only.
00299  */
00300 #define YY_CURRENT_BUFFER_LVALUE yyg->yy_buffer_stack[yyg->yy_buffer_stack_top]
00301 
00302 void osrlrestart (FILE *input_file ,yyscan_t yyscanner );
00303 void osrl_switch_to_buffer (YY_BUFFER_STATE new_buffer ,yyscan_t yyscanner );
00304 YY_BUFFER_STATE osrl_create_buffer (FILE *file,int size ,yyscan_t yyscanner );
00305 void osrl_delete_buffer (YY_BUFFER_STATE b ,yyscan_t yyscanner );
00306 void osrl_flush_buffer (YY_BUFFER_STATE b ,yyscan_t yyscanner );
00307 void osrlpush_buffer_state (YY_BUFFER_STATE new_buffer ,yyscan_t yyscanner );
00308 void osrlpop_buffer_state (yyscan_t yyscanner );
00309 
00310 static void osrlensure_buffer_stack (yyscan_t yyscanner );
00311 static void osrl_load_buffer_state (yyscan_t yyscanner );
00312 static void osrl_init_buffer (YY_BUFFER_STATE b,FILE *file ,yyscan_t yyscanner );
00313 
00314 #define YY_FLUSH_BUFFER osrl_flush_buffer(YY_CURRENT_BUFFER ,yyscanner)
00315 
00316 YY_BUFFER_STATE osrl_scan_buffer (char *base,yy_size_t size ,yyscan_t yyscanner );
00317 YY_BUFFER_STATE osrl_scan_string (yyconst char *yy_str ,yyscan_t yyscanner );
00318 YY_BUFFER_STATE osrl_scan_bytes (yyconst char *bytes,int len ,yyscan_t yyscanner );
00319 
00320 void *osrlalloc (yy_size_t ,yyscan_t yyscanner );
00321 void *osrlrealloc (void *,yy_size_t ,yyscan_t yyscanner );
00322 void osrlfree (void * ,yyscan_t yyscanner );
00323 
00324 #define yy_new_buffer osrl_create_buffer
00325 
00326 #define yy_set_interactive(is_interactive) \
00327         { \
00328         if ( ! YY_CURRENT_BUFFER ){ \
00329         osrlensure_buffer_stack (yyscanner); \
00330                 YY_CURRENT_BUFFER_LVALUE =    \
00331             osrl_create_buffer(yyin,YY_BUF_SIZE ,yyscanner); \
00332         } \
00333         YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
00334         }
00335 
00336 #define yy_set_bol(at_bol) \
00337         { \
00338         if ( ! YY_CURRENT_BUFFER ){\
00339         osrlensure_buffer_stack (yyscanner); \
00340                 YY_CURRENT_BUFFER_LVALUE =    \
00341             osrl_create_buffer(yyin,YY_BUF_SIZE ,yyscanner); \
00342         } \
00343         YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
00344         }
00345 
00346 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
00347 
00348 /* Begin user sect3 */
00349 
00350 #define osrlwrap(n) 1
00351 #define YY_SKIP_YYWRAP
00352 
00353 typedef unsigned char YY_CHAR;
00354 
00355 typedef int yy_state_type;
00356 
00357 #define yytext_ptr yytext_r
00358 
00359 static yy_state_type yy_get_previous_state (yyscan_t yyscanner );
00360 static yy_state_type yy_try_NUL_trans (yy_state_type current_state  ,yyscan_t yyscanner);
00361 static int yy_get_next_buffer (yyscan_t yyscanner );
00362 static void yy_fatal_error (yyconst char msg[] ,yyscan_t yyscanner );
00363 
00364 /* Done after the current pattern has been matched and before the
00365  * corresponding action - sets up yytext.
00366  */
00367 #define YY_DO_BEFORE_ACTION \
00368         yyg->yytext_ptr = yy_bp; \
00369         yyleng = (size_t) (yy_cp - yy_bp); \
00370         yyg->yy_hold_char = *yy_cp; \
00371         *yy_cp = '\0'; \
00372         yyg->yy_c_buf_p = yy_cp;
00373 
00374 #define YY_NUM_RULES 234
00375 #define YY_END_OF_BUFFER 235
00376 /* This struct is not used in this scanner,
00377    but its presence is necessary. */
00378 struct yy_trans_info
00379         {
00380         flex_int32_t yy_verify;
00381         flex_int32_t yy_nxt;
00382         };
00383 static yyconst flex_int16_t yy_accept[1866] =
00384     {   0,
00385         1,    1,  232,  232,  230,  230,  231,  231,    0,    0,
00386         0,    0,    0,    0,    0,    0,    0,    0,  235,  233,
00387         1,    2,  220,    2,  220,    6,  220,    5,  233,    4,
00388       220,  220,  232,  234,  230,  231,  221,  223,  224,  223,
00389       227,  228,  227,    1,  220,  220,    6,  220,    5,    0,
00390         4,  220,  220,  220,  220,  220,  220,  220,  220,  220,
00391       220,  220,  220,    3,    6,    6,  220,    7,    5,    0,
00392         0,  226,    0,    0,    0,    0,    0,    0,    0,    0,
00393         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00394         4,  220,  220,  232,  230,  231,  221,    0,  229,  220,
00395 
00396       220,  220,  220,  220,  220,  220,  220,  220,  220,  220,
00397       220,  220,  220,    6,    0,    0,    0,    0,    0,    0,
00398         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00399         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00400         0,  108,    0,    0,    0,    0,    0,    0,    0,    0,
00401         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00402         0,    0,    0,    0,    0,    0,    0,    0,    0,    6,
00403       225,  220,  220,  220,  220,  220,  220,  220,  220,  220,
00404       220,  220,  220,  220,  222,    0,    0,    0,    0,    0,
00405         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00406 
00407         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00408         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00409         0,    0,    0,    0,    0,    0,   98,    0,    0,    0,
00410         0,    0,    0,    0,  118,    0,    0,    0,   72,    0,
00411         0,    0,  126,    0,    0,    0,    0,    0,    0,    0,
00412         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00413       190,  220,  220,  220,   28,  220,  220,  220,  220,  220,
00414       220,  220,  220,  220,  220,    0,    0,    0,    0,    0,
00415         0,    0,    0,    0,    0,  109,    0,    0,    0,    0,
00416         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00417 
00418         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00419         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00420         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00421         0,    0,    0,    0,    0,   72,    0,    0,    0,    0,
00422         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00423         0,    0,    0,    0,    0,  166,    0,    0,    0,    0,
00424         0,    0,    0,  220,  220,   28,  220,   29,  220,   30,
00425       220,  220,  220,  220,  220,  220,  220,  220,  220,  220,
00426       220,    0,    0,    0,    0,    0,    0,    0,    0,   99,
00427         0,    0,    0,    0,  109,    0,    0,    0,    0,    0,
00428 
00429       119,    0,    0,    0,    0,   73,    0,    0,    0,    0,
00430         0,  127,    0,    0,    0,    0,    0,    0,    0,    0,
00431         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00432         0,    0,    0,    0,  191,    0,    0,    0,    0,    0,
00433         0,    0,    0,   92,    0,    0,    0,    0,    0,    0,
00434         0,    0,    0,    0,    0,    0,    0,  197,  122,    0,
00435         0,    0,    0,  201,    0,    0,   62,   61,  132,    0,
00436         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00437         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00438       220,  220,   29,   30,  220,   43,   44,  220,  220,  220,
00439 
00440       220,   47,   48,  220,   51,   52,  220,  220,  220,    0,
00441         0,    0,    0,    0,    0,    0,    0,   99,    0,    0,
00442         0,    0,    0,    0,    0,    0,  119,    0,    0,    0,
00443       198,   73,    0,    0,    0,    0,  202,  127,    0,    0,
00444         0,   63,    0,    0,    0,    0,    0,    0,    0,    0,
00445         0,    0,    0,    0,    0,  167,    0,    0,    0,    0,
00446         0,    0,    0,    0,  191,    0,    0,    0,    0,    0,
00447         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00448         0,    0,    0,  120,  199,  197,    0,    0,    0,  203,
00449       201,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00450 
00451         0,    0,  156,    0,    0,    0,   68,    0,    0,    0,
00452         0,    0,    0,    0,    0,  186,  194,    0,  220,  220,
00453        41,   42,  220,  220,   31,  220,   45,   46,   49,   50,
00454       220,   55,   56,  220,    0,    0,    0,    0,    0,    0,
00455         0,   93,    0,    0,    0,    0,    0,    0,    0,    0,
00456         0,    0,    0,  198,    0,  123,    0,    0,  202,    0,
00457         0,   63,    0,  133,    0,    0,    0,    0,    0,    0,
00458         0,    0,    0,    0,    0,    0,    0,  167,    0,    0,
00459         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00460        78,   80,    0,    0,    0,    0,    0,    0,    0,    0,
00461 
00462       110,    0,    0,   66,    0,  199,    0,    0,  124,  203,
00463         0,    0,    0,    0,    0,    0,    0,   70,    0,    0,
00464         0,    0,    0,  205,    0,    0,    0,   68,    0,    0,
00465         0,    0,    0,  176,    0,    0,    0,    0,    0,  220,
00466       220,  220,   31,  220,   53,   54,  220,    0,    0,    0,
00467         0,    0,    0,   93,    0,    0,    0,    0,    0,    0,
00468         0,    0,    0,    0,    0,  121,  123,    0,    0,    0,
00469         0,  133,    0,    0,    0,    0,    0,    0,    0,    0,
00470         0,  206,    0,  157,    0,    0,    0,    0,   69,    0,
00471         0,    0,    0,    0,    0,    0,    0,    0,    0,  187,
00472 
00473         0,    0,  195,    0,    0,    0,    0,    0,    0,    0,
00474         0,    0,    0,    0,    0,    0,   66,    0,    0,    0,
00475         0,    0,  217,    0,    0,    0,    0,    0,    0,    0,
00476        70,    0,    0,  150,    0,    0,  207,  205,    0,    0,
00477         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00478         0,    0,    0,  220,  220,  220,  220,  220,  220,  220,
00479       220,  220,  220,  220,  220,    0,    0,   79,    0,   81,
00480         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00481       111,    0,    0,    0,   67,    0,    0,  121,    0,  218,
00482         0,  125,    0,    0,    0,    0,    0,    0,    0,   71,
00483 
00484         0,    0,    0,    0,    0,  206,  157,    0,    0,    0,
00485        69,    0,    0,    0,    0,    0,    0,  177,    0,    0,
00486         0,    0,  187,    0,  195,    0,    0,    0,   96,    0,
00487         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00488         0,  219,  217,    0,    0,    0,    0,    0,    0,    0,
00489         0,    0,    0,    0,    0,    0,    0,  207,    0,    0,
00490       160,    0,    0,    0,  170,    0,    0,    0,    0,    0,
00491         0,    0,  192,  220,   35,   36,  220,  220,  220,  220,
00492       220,  220,  220,  220,  220,  220,  220,  220,  220,  220,
00493         0,   79,   81,    0,    0,    0,    0,    0,    0,    0,
00494 
00495         0,    0,  111,    0,    0,   67,    0,    0,  218,  125,
00496         0,    0,    0,    0,    0,    0,    0,   71,    0,    0,
00497         0,    0,  151,    0,    0,    0,    0,    0,    0,    0,
00498         0,    0,    0,  177,    0,    0,    0,    0,    0,    0,
00499         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00500       106,    0,    0,    0,    0,    0,  219,    0,    0,  128,
00501         0,    0,    0,    0,    0,    0,    0,  146,    0,    0,
00502         0,    0,  158,  162,    0,    0,    0,    0,    0,    0,
00503         0,  184,    0,   33,   34,  220,  220,  220,   10,  220,
00504       220,  220,  220,  220,  220,  220,  220,  220,  220,  220,
00505 
00506         0,    0,    0,    0,    0,   97,    0,    0,    0,    0,
00507         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00508         0,    0,    0,    0,    0,    0,    0,  151,    0,    0,
00509         0,    0,  161,    0,    0,    0,    0,  171,    0,    0,
00510         0,    0,    0,    0,    0,    0,  193,    0,    0,    0,
00511         0,    0,   94,  100,    0,    0,    0,  112,    0,    0,
00512         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00513       144,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00514         0,    0,    0,  220,  220,  220,    8,  220,   10,  220,
00515       220,   12,  220,  220,   14,  220,  220,  220,  220,  220,
00516 
00517       220,  220,   25,  220,  220,  220,  220,    0,    0,    0,
00518         0,   97,    0,    0,    0,    0,    0,    0,    0,  107,
00519         0,    0,    0,    0,    0,  129,    0,    0,    0,    0,
00520         0,    0,    0,    0,  147,    0,    0,    0,    0,  159,
00521       161,    0,  163,    0,    0,  171,    0,    0,    0,    0,
00522         0,    0,  185,    0,  193,    0,    0,    0,    0,    0,
00523         0,  104,    0,    0,  209,    0,    0,  213,    0,  116,
00524         0,  196,    0,    0,  200,   74,  134,    0,    0,   64,
00525         0,    0,    0,  154,    0,    0,    0,    0,    0,    0,
00526       180,    0,  188,  220,   39,   40,    8,  220,  220,   12,
00527 
00528       220,   14,  220,  220,  220,  220,  220,  220,   25,  220,
00529       220,  220,  220,    0,    0,    0,    0,    0,    0,   95,
00530         0,  101,    0,    0,    0,  210,  107,    0,  113,    0,
00531       214,    0,    0,  129,    0,    0,    0,    0,    0,    0,
00532         0,  145,  147,    0,    0,    0,  159,  163,    0,    0,
00533         0,    0,    0,    0,    0,  185,    0,    0,    0,    0,
00534         0,    0,    0,    0,  211,  209,    0,  215,  213,    0,
00535       114,  196,    0,  200,    0,    0,    0,    0,    0,  152,
00536         0,    0,    0,    0,    0,  178,  182,   37,   38,  220,
00537       220,  220,   13,  220,  220,  220,  220,  220,  220,  220,
00538 
00539       220,  220,  220,   24,  220,  220,  220,  220,    0,    0,
00540         0,    0,    0,    0,   95,  101,    0,    0,  105,  210,
00541       113,  214,    0,    0,  117,    0,   75,    0,    0,  135,
00542         0,    0,    0,   65,    0,  145,    0,    0,    0,  155,
00543         0,    0,    0,    0,    0,    0,  181,    0,    0,  189,
00544         0,    0,    0,    0,    0,    0,    0,  211,    0,  215,
00545         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00546         0,  174,  220,  220,   13,  220,  220,  220,  220,  220,
00547       220,  220,  220,  220,   24,  220,   27,  220,  220,  220,
00548         0,    0,    0,    0,    0,    0,    0,  105,    0,  115,
00549 
00550       117,   75,    0,  135,    0,    0,   65,    0,    0,    0,
00551       153,  155,    0,    0,    0,    0,    0,  179,  181,    0,
00552       183,  189,   76,    0,    0,    0,   88,    0,  102,    0,
00553         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00554         0,  220,  220,  220,  220,  220,  220,  220,  220,  220,
00555       220,  220,   27,  220,  220,  220,    0,    0,    0,    0,
00556         0,    0,    0,  115,    0,    0,    0,    0,    0,  153,
00557         0,    0,    0,    0,  175,  179,  183,    0,    0,    0,
00558        90,    0,    0,    0,    0,    0,    0,    0,    0,    0,
00559       204,    0,    0,    0,  220,  220,  220,  220,  220,  220,
00560 
00561       220,  220,  220,  220,  220,  220,  220,  220,    0,   77,
00562         0,    0,    0,    0,   89,    0,    0,  103,    0,    0,
00563         0,    0,    0,    0,    0,    0,  175,    0,   84,    0,
00564         0,    0,    0,    0,    0,  140,    0,    0,  204,  164,
00565         0,  172,  220,  220,  220,  220,  220,  220,  220,  220,
00566       220,   21,  220,  220,  220,   26,  220,  220,   77,    0,
00567         0,    0,   89,    0,   91,  103,    0,    0,    0,    0,
00568         0,    0,    0,    0,   82,   86,    0,    0,    0,  216,
00569         0,    0,  142,  148,  168,  220,  220,  220,   15,  220,
00570       220,  220,  220,  220,   21,  220,  220,   26,  220,   32,
00571 
00572       220,  220,    0,    0,   85,    0,   91,    0,    0,    0,
00573       141,    0,    0,    0,  165,    0,    0,  173,    0,    0,
00574       216,    0,  136,  220,    9,  220,   15,  220,  220,  220,
00575       220,  220,  220,  220,   23,   32,  220,   59,   60,    0,
00576        83,   85,    0,   87,    0,    0,  141,    0,  143,    0,
00577       149,  165,    0,  169,  173,    0,    0,    0,  138,    9,
00578       220,   11,  220,  220,  220,   18,  220,  220,  220,   23,
00579        57,   58,   83,   87,    0,    0,  137,    0,  143,  149,
00580       169,    0,    0,    0,   11,  220,  220,   18,  220,  220,
00581       220,   22,    0,  137,    0,  139,    0,    0,    0,  220,
00582 
00583       220,  220,  220,   22,    0,  139,    0,    0,    0,  220,
00584       220,  220,  220,    0,    0,    0,    0,  220,  220,  220,
00585       220,    0,    0,    0,    0,  220,  220,  220,  220,    0,
00586         0,  208,    0,  212,  130,  220,  220,  220,  220,    0,
00587       208,  212,  220,  220,  220,  220,    0,  131,  220,  220,
00588       220,   19,  220,   20,  131,  220,  220,   17,   19,   20,
00589       220,   16,   17,   16,    0
00590     } ;
00591 
00592 static yyconst flex_int32_t yy_ec[256] =
00593     {   0,
00594         1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
00595         1,    1,    2,    1,    1,    1,    1,    1,    1,    1,
00596         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
00597         1,    2,    4,    5,    6,    6,    1,    1,    7,    1,
00598         1,    6,    8,    6,    9,   10,   11,   12,   12,   12,
00599        12,   13,   12,   14,   12,   12,   12,    6,    1,   15,
00600        16,   17,   18,    6,    6,   19,   20,   21,   22,   23,
00601         6,   24,   25,   26,    6,   27,   28,   29,   30,   31,
00602         6,   32,   33,   34,   35,   36,    6,    6,    6,    6,
00603         1,    1,    1,    1,    6,    1,   37,   38,   39,   40,
00604 
00605        41,   42,   43,   44,   45,   46,   47,   48,   49,   50,
00606        51,   52,    6,   53,   54,   55,   56,   57,   58,   59,
00607        60,   61,    1,    1,    1,    1,    1,    1,    1,    1,
00608         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
00609         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
00610         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
00611         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
00612         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
00613         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
00614         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
00615 
00616         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
00617         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
00618         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
00619         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
00620         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
00621         1,    1,    1,    1,    1
00622     } ;
00623 
00624 static yyconst flex_int32_t yy_meta[62] =
00625     {   0,
00626         1,    2,    2,    1,    3,    2,    4,    2,    2,    2,
00627         2,    2,    2,    2,    5,    2,    6,    1,    2,    2,
00628         2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
00629         2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
00630         2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
00631         2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
00632         2
00633     } ;
00634 
00635 static yyconst flex_int16_t yy_base[1879] =
00636     {   0,
00637         0,   29, 3646, 3645, 3656, 3655, 3652, 3651,    0,    0,
00638         0,    0, 3642, 3641,   13,   17,    3,    5, 3655, 3664,
00639        57, 3649,   20, 3646,   38,   76,   47,  116,  154,   25,
00640        58,   66,    0, 3664,    0,    0,    0, 3664, 3664, 3643,
00641      3664, 3664, 3634,  210,   77,  110,  134,   84,  267,   91,
00642        54,  124,  117,  125,  128,  166,  159,  215,  135,  214,
00643       151,  211,  144, 3664,  239,  273,  284, 3664,  300, 3641,
00644       281, 3664,  116, 3612,   29,   20,   60, 3603, 3606,  203,
00645      3595, 3600, 3603, 3606,  132, 3601,  300,  137,   50, 3604,
00646       161,  221,  296,    0,    0,    0,    0, 3623, 3664,  162,
00647 
00648       246,  289,  325,  230,  295,  328,  292,  332,  335,  344,
00649       348,  352,  358,  378, 3630,  319, 3601,   65,  177,  318,
00650      3592, 3595,  344, 3584, 3589, 3592, 3595,  348, 3590,  365,
00651       189,  328, 3593, 3574,  163, 3591, 3573, 3576, 3572, 3570,
00652      3586, 3664,    9, 3574, 3571, 3561, 3565, 3595, 3576, 3578,
00653      3576, 3560, 3564, 3566, 3556, 3557, 3565, 3554, 3563, 3553,
00654       235, 3568,  363, 3550, 3554, 3547, 3554, 3559,  280,  407,
00655      3664,  390,  396,  424,  397,  402,  413,  417,  421,  427,
00656       428,  431,  432,  436, 3664, 3544,  319, 3561, 3543, 3546,
00657      3542, 3540, 3556,  456,  104, 3544, 3541, 3531, 3535, 3565,
00658 
00659      3546, 3548, 3546, 3530, 3534, 3536, 3526, 3527, 3535, 3524,
00660      3533, 3523,  381, 3538,  414, 3520, 3524, 3517, 3524, 3529,
00661       309, 3513, 3517, 3515, 3521,  423, 3511, 3511, 3524, 3514,
00662      3527, 3511, 3518, 3517, 3664, 3502, 3503, 3506,  458, 3513,
00663      3499, 3511, 3510, 3505, 3501, 3507, 3491, 3505, 3488,  216,
00664      3491, 3488,  334, 3501, 3486,  422, 3503, 3489, 3498, 3481,
00665       440,  457,  460,  478,  487,  494,  503,  512,  467,  461,
00666       484,  519,  528,  509,  522, 3480, 3484, 3482, 3488,  507,
00667       530, 3479, 3492, 3482,  539,  514, 3495, 3479, 3486, 3485,
00668       551, 3470, 3471, 3474,  555, 3481, 3467, 3479,  557, 3474,
00669 
00670      3470, 3476, 3460, 3474, 3457,  505, 3460, 3457,  369, 3470,
00671      3455,  462, 3472, 3458, 3467, 3450,  561, 3468, 3446, 3451,
00672      3454, 3446, 3486,  484, 3444, 3457, 3444, 3460, 3450, 3453,
00673      3473, 3439, 3454, 3449,  568,  573, 3468, 3438, 3450,  579,
00674      3447, 3436,  585, 3431, 3435, 3442, 3436, 3425, 3438, 3439,
00675      3421, 3431, 3420, 3421, 3432, 3439, 3421, 3422, 3418,  571,
00676      3427, 3427, 3429,  550,  578,  601,  605,  609,  612,  628,
00677       631,  634,  602,  623,  534,  651,  654,  660,  676,  670,
00678       627, 3428, 3406, 3411, 3414, 3406, 3446,  555,  686,  692,
00679      3404, 3417, 3404, 3420,  694, 3410, 3413, 3433, 3399,  696,
00680 
00681       698, 3414, 3409,  702,  704,  706, 3428, 3398, 3410,  708,
00682       712,  714, 3407, 3396,  720, 3391, 3395, 3402, 3396, 3385,
00683      3398, 3399, 3381, 3391, 3380, 3381, 3392,  724, 3382, 3383,
00684      3379,  710, 3388,  730,  732, 3388, 3390, 3378, 3384, 3383,
00685      3386, 3385, 3408, 3664, 3387, 3366, 3368, 3372, 3379, 3366,
00686      3361, 3360, 3375, 3361, 3369,  737, 3392,  740, 3664, 3369,
00687      3364,  742, 3389,  747, 3350, 3359,  749, 3664,  728, 3348,
00688      3346, 3362, 3355, 3346, 3357, 3343, 3341, 3358, 3356, 3344,
00689       457, 3349, 3365, 3332, 3358, 3343, 3346, 3332, 3326, 3346,
00690       675,  741,  761,  765,  768, 3378, 3375,  757,  786,  762,
00691 
00692       792, 3376, 3373,  803, 3374, 3371,  809,  812,  643, 3329,
00693      3335, 3334, 3337, 3336, 3359,  819, 3338,  788, 3317, 3319,
00694      3323, 3330, 3317, 3312, 3311, 3326,  828, 3312, 3320,  830,
00695       832,  835,  837, 3321, 3316,  839,  841,  843, 3303, 3312,
00696       846,  848,  850, 3301, 3299, 3315, 3308, 3299, 3310, 3296,
00697      3294, 3311, 3309, 3297,  855,  857,  514, 3302, 3318, 3285,
00698      3311, 3296, 3299, 3285,  859, 3279, 3299, 3303, 3282, 3281,
00699      3295, 3277, 3312, 3275, 3292, 3273, 3275, 3278, 3284, 3287,
00700      3282, 3274, 3282, 3664,  862,  866, 3309, 3278, 3277,  868,
00701       871, 3306, 3271, 3254, 3273, 3262, 3288, 3263, 3269, 3258,
00702 
00703       462,  873, 3664, 3274, 3252, 3269,  875, 3252, 3267, 3278,
00704      3251, 3251, 3265, 3245, 3249, 3264, 3664, 3248,  870,  874,
00705      3664, 3664,  781,  877,  893,  882, 3664, 3664, 3664, 3664,
00706       899, 3290, 3287,  888, 3260, 3239, 3238, 3252, 3234, 3269,
00707       909,  915, 3232, 3249, 3230, 3232, 3235, 3241, 3244, 3239,
00708      3231, 3239,  919,  921,  929,  931, 3236, 3235,  935, 3230,
00709      3213,  937,  939,  941, 3232, 3221, 3247, 3222, 3228, 3217,
00710       575,  945,  947, 3233, 3211, 3228,  949,  951, 3211, 3226,
00711      3237, 3210, 3210, 3224, 3204, 3208,  955,  958, 3208, 3200,
00712      3664, 3664, 3206, 3197, 3207, 3214, 3205,   51, 3194, 3192,
00713 
00714      3664, 3192, 3209,  965, 3204,  967, 3199,  974, 3664,  976,
00715      3193, 3185, 3204, 3186, 3191, 3197, 3196,  978, 3186, 3185,
00716      3178,  984, 3216,  981, 3187, 3175, 3176,  987, 3179, 3171,
00717      3178, 3176, 3187, 3664,  544, 3177, 3172, 3167, 3180, 1000,
00718       635,  989, 1018,  948, 3664, 3664,  982, 3165, 1024, 1026,
00719      3171, 3162, 3172,  990, 3179, 3170,  599, 3159, 3157, 1028,
00720      3157, 3174, 1034, 3169, 1036, 1044, 1046, 1052, 1054, 3152,
00721      3170, 1056, 3146, 3145, 3142, 3141, 1058, 3081, 3079, 3072,
00722      1060, 1062, 1071, 1076, 3081, 3067, 3061, 1078, 1080, 3061,
00723      3051, 3055, 3049, 3046, 1082,  641, 3034, 3021, 1087, 1089,
00724 
00725      3006, 1094, 1098, 3016, 3017, 3005, 2985, 2974, 2966, 2960,
00726      2954, 2947, 2949, 2945, 2937, 2921, 1100, 2916, 2938, 2907,
00727      1103, 2934, 1106, 2884, 2874, 2846, 2836, 1056, 2852, 2820,
00728      1113, 2821,  182, 3664, 2786,   50, 1115, 1120,  156,  129,
00729       135,  201,  220,  249,  253,  274,  325,  352,  381,  438,
00730       493,  530,  543, 1122, 1125,  993, 1017, 1114, 1119, 1128,
00731      1129,  910,  898, 1025, 1132,  573, 1148, 1150, 1152, 1154,
00732       572,  581,  614,  647,  662,  667,  665,  679,  695, 1158,
00733      1165,  701,  710, 1169, 1174,  714,  752, 1176, 1179, 1185,
00734      1187, 1189,  743,  731,  744, 1137,  767,  773, 1195, 1197,
00735 
00736       779,  927, 1199,  771,  800, 1203, 1205,  817,  834,  853,
00737      1207,  865,  864,  867,  903,  917, 1211, 1215,  917,  948,
00738       972,  965, 1217,  971, 1219,  996,  999, 1203, 3664, 1033,
00739      1016, 1021, 1048, 1057, 1047, 1053, 1059, 1068, 1089, 1096,
00740      1100, 1223, 1227, 1137, 1109, 1109, 1128, 1136, 1140, 1162,
00741      1171, 1182, 1178, 1207, 1188, 1183, 1183, 1234, 1184, 1198,
00742      3664, 1201, 1190, 1204, 3664, 1193, 1212, 1197, 1206, 1196,
00743      1189, 1205, 3664, 1249, 1248, 1248, 1242, 1243, 1259, 1248,
00744      1252, 1253, 1256, 1262, 1265, 1269, 1266, 1270, 1273, 1274,
00745      1219, 1293, 1295, 1280, 1307, 1241, 1243, 1248, 1267, 1277,
00746 
00747      1265, 1263, 1316, 1270, 1271, 1323, 1290, 1291, 1327, 1329,
00748      1279, 1289, 1287, 1281, 1296, 1298, 1306, 1338, 1293, 1318,
00749      1299, 1343, 1345, 1298, 1298, 1310, 1350, 1315, 1304, 1317,
00750      1355, 1308, 1328, 1360, 1315, 1324, 1314, 1308, 1324, 1368,
00751      1318, 1343, 1330, 1335, 1324, 1324, 1325, 1360, 1326, 1332,
00752      3664, 1333, 1331, 1331, 1338, 1339, 1387, 1343, 1351, 3664,
00753      1342, 1339, 1350, 1343, 1356, 1343, 1358, 3664, 1352, 1354,
00754      1346, 1352, 3664, 3664, 1351, 1364, 1353, 1356, 1370, 1368,
00755      1373, 3664, 1361, 3664, 3664, 1410, 1413, 1416, 1419, 1420,
00756      1436, 1425, 1441, 1430, 1431, 1444, 1445, 1474, 1448, 1451,
00757 
00758      1359, 1386, 1375, 1382, 1447, 1452, 1371, 1387, 1416, 1452,
00759      1418, 1425, 1476, 1430, 1428, 1428, 1435, 1492, 1434, 1441,
00760      1452, 1447, 1460, 1447, 1463, 1503, 1459, 1508, 1461, 1456,
00761      1511, 1513, 1515, 1519, 1470, 1483, 1523, 1529, 1474, 1478,
00762      1495, 1493, 1498, 1535, 1489, 1539, 1541, 1511, 1511, 1493,
00763      1499, 1489, 3664, 3664, 1499, 1510, 1551, 3664, 1555, 1499,
00764      1518, 1558, 1518, 1562, 1517, 1515, 1519, 1541, 1520, 1537,
00765      3664, 1531, 1536, 1523, 1524, 1532, 1549, 1534, 1561, 1544,
00766      1546, 1548, 1545, 1587, 1590, 1596, 1606, 1579, 1612, 1601,
00767      1622, 1628, 1602, 1633, 1638, 1605, 1611, 1637, 1642, 1643,
00768 
00769      1646, 1663, 1667, 1656, 1657, 1660, 1670, 1557, 1565, 1547,
00770      1557, 1630, 1550, 1686, 1699, 1595, 1606, 1704, 1708, 1665,
00771      1710, 1712, 1595, 1621, 1715, 1688, 1626, 1627, 1635, 1663,
00772      1642, 1660, 1717, 1720, 1728, 1654, 1663, 1653, 1733, 1736,
00773      1738, 1740, 1742, 1675, 1693, 1744, 1679, 1710, 1707, 1709,
00774      1712, 1750, 1752, 1713, 1756, 1715, 1732, 1715, 1712, 1743,
00775      1710, 3664, 1766, 1753, 1769, 1771, 1758, 1776, 1722, 3664,
00776      1778, 1783, 1748, 1787, 1790, 1761, 3664, 1746, 1741, 3664,
00777      1745, 1738, 1760, 3664, 1748, 1765, 1748, 1768, 1769, 1754,
00778      3664, 1767, 3664, 1807, 1806, 1806, 1813, 1802, 1803, 1823,
00779 
00780      1829, 1832, 1806, 1833, 1812, 1822, 1837, 1856, 1865, 1826,
00781      1845, 1861, 1862, 1788, 1855, 1789, 1791, 1830, 1884, 1887,
00782      1889, 1891, 1808, 1893, 1895, 1897, 1900, 1902, 1905, 1911,
00783      1913, 1816, 1918, 1920, 1922, 1924, 1831, 1853, 1927, 1858,
00784      1929, 1931, 1934, 1877, 1900, 1940, 1945, 1947, 1908, 1896,
00785      1915, 1916, 1901, 1956, 1915, 1958, 1960, 1915, 1909, 1914,
00786      1934, 1915, 1932, 1920, 1969, 1972, 1965, 1976, 1978, 1971,
00787      3664, 1981, 1944, 1986, 1935, 1958, 1936, 1937, 1957, 3664,
00788      1956, 1941, 1960, 1943, 1946, 3664, 3664, 3664, 3664, 1985,
00789      1986, 2002, 2009, 1991, 1992, 1999, 1998, 2010, 2013, 2014,
00790 
00791      2017, 2018, 2038, 2042, 2060, 2031, 2041, 2049, 1961, 1964,
00792      1969, 2005, 1989, 2012, 2049, 2065, 2010, 2067, 2069, 2078,
00793      2083, 2085, 2087, 2089, 2093, 2095, 2097, 2023, 2099, 2105,
00794      2046, 2028, 2107, 2111, 2038, 2115, 2066, 2117, 2119, 2123,
00795      2050, 2074, 2060, 2070, 2125, 2127, 2129, 2135, 2137, 2143,
00796      2092, 2086, 2100, 2091, 2087, 2093, 2094, 2148, 2113, 2153,
00797      2115, 2108, 2111, 2119, 2109, 2128, 2108, 2123, 2120, 2113,
00798      2122, 3664, 2153, 2154, 2170, 2159, 2160, 2165, 2164, 2169,
00799      2173, 2174, 2177, 2178, 2197, 2204, 2220, 2186, 2213, 2187,
00800      2137, 2134, 2155, 2145, 2145, 2153, 2158, 2229, 2237, 2239,
00801 
00802      2243, 2245, 2167, 2247, 2184, 2177, 2249, 2202, 2188, 2253,
00803      2255, 2257, 2208, 2208, 2217, 2261, 2263, 2265, 2269, 2271,
00804      2273, 2279, 3664, 2231, 2236, 2242, 3664, 2246, 3664, 2243,
00805      2240, 2247, 2231, 2235, 2234, 2246, 2247, 2291, 2244, 2241,
00806      2246, 2283, 2284, 2287, 2288, 2294, 2295, 2298, 2299, 2302,
00807      2303, 2306, 2322, 2315, 2319, 2323, 2324, 2268, 2266, 2285,
00808      2344, 2294, 2346, 2350, 2287, 2291, 2294, 2310, 2312, 2363,
00809      2311, 2312, 2317, 2368, 2370, 2372, 2374, 2337, 2339, 2341,
00810      3664, 2327, 2334, 2342, 2329, 2330, 2332, 2339, 2338, 2388,
00811      2390, 2344, 2354, 2346, 2382, 2383, 2386, 2387, 2391, 2395,
00812 
00813      2392, 2396, 2412, 2401, 2404, 2433, 2405, 2408, 2429, 2436,
00814      2376, 2384, 2387, 2449, 2452, 2454, 2456, 2458, 2386, 2388,
00815      2408, 2416, 2416, 2418, 2428, 2420, 2472, 2419, 3664, 2435,
00816      2438, 2437, 2477, 2436, 2434, 3664, 2442, 2434, 2483, 3664,
00817      2447, 3664, 2473, 2474, 2490, 2480, 2481, 2484, 2485, 2493,
00818      2501, 2511, 2494, 2504, 2532, 2538, 2549, 2554, 2520, 2459,
00819      2542, 2474, 2535, 2558, 2540, 2560, 2475, 2477, 2565, 2488,
00820      2482, 2570, 2506, 2574, 3664, 3664, 2501, 2554, 2576, 2578,
00821      2532, 2529, 3664, 3664, 3664, 2583, 2573, 2592, 2599, 2588,
00822      2589, 2595, 2596, 2600, 2616, 2605, 2621, 2626, 2637, 2642,
00823 
00824      2648, 2664, 2653, 2659, 2594, 2670, 2672, 2538, 2537, 2675,
00825      2680, 2682, 2686, 2688, 2691, 2693, 2695, 2698, 2576, 2573,
00826      2704, 2580, 2578, 2706, 2711, 2714, 2717, 2710, 2687, 2733,
00827      2722, 2723, 2726, 2743, 2750, 2754, 2771, 2630, 2635, 2760,
00828      2779, 2781, 2787, 2789, 2596, 2791, 2793, 2795, 2797, 2799,
00829      2803, 2807, 2811, 2815, 2817, 2606, 2627, 2647, 3664, 2819,
00830      2822, 2827, 2753, 2770, 2838, 2844, 2816, 2834, 2854, 2860,
00831      3664, 3664, 2824, 2862, 2653, 2865, 2870, 2876, 2878, 2881,
00832      2883, 2656, 2678, 2663, 2885, 2835, 2859, 2892, 2881, 2882,
00833      2901, 2909, 2669, 2903, 2911, 2917, 2688, 2687, 2710, 2893,
00834 
00835      2912, 2915, 2916, 2932, 2714, 2934, 2703, 2710, 2711, 2923,
00836      2924, 2927, 2928, 2720, 2729, 2754, 2759, 2931, 2935, 2939,
00837      2940, 2767, 2956, 2958, 2778, 2948, 2951, 2957, 2962, 2781,
00838      2978, 2987, 2990, 2994, 3664, 2983, 2986, 2991, 2994, 3011,
00839      3013, 3016, 3005, 3008, 3027, 3034, 3030, 3024, 3023, 3050,
00840      3053, 3056, 3072, 3061, 3032, 3077, 3080, 3083, 3088, 3099,
00841      3104, 3107, 3110, 3115, 3664, 3132, 3138, 3144, 3150, 3156,
00842      3162, 3168, 3174, 3179, 3185, 3190, 3196, 3202
00843     } ;
00844 
00845 static yyconst flex_int16_t yy_def[1879] =
00846     {   0,
00847      1866, 1866, 1867, 1867, 1868, 1868, 1869, 1869, 1870, 1870,
00848      1870, 1870, 1871, 1871, 1872, 1872, 1873, 1873, 1865, 1865,
00849      1874, 1865, 1874, 1865, 1874, 1874, 1874, 1874, 1865, 1865,
00850      1874, 1874, 1875, 1865, 1876, 1877, 1878, 1865, 1865, 1865,
00851      1865, 1865, 1865, 1874, 1874, 1874, 1874, 1874, 1874,   29,
00852      1865, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
00853      1874, 1874, 1874, 1865, 1874, 1874, 1874, 1865, 1874, 1865,
00854      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00855      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00856      1865, 1874, 1874, 1875, 1876, 1877, 1878, 1865, 1865, 1874,
00857 
00858      1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
00859      1874, 1874, 1874, 1874, 1865, 1865, 1865, 1865, 1865, 1865,
00860      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00861      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00862      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00863      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00864      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1874,
00865      1865, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
00866      1874, 1874, 1874, 1874, 1865, 1865, 1865, 1865, 1865, 1865,
00867      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00868 
00869      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00870      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00871      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00872      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00873      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00874      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00875      1865, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
00876      1874, 1874, 1874, 1874, 1874, 1865, 1865, 1865, 1865, 1865,
00877      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00878      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00879 
00880      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00881      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00882      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00883      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00884      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00885      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00886      1865, 1865, 1865, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
00887      1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
00888      1874, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00889      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00890 
00891      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00892      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00893      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00894      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00895      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00896      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00897      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00898      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00899      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00900      1874, 1874, 1874, 1874, 1874, 1865, 1865, 1874, 1874, 1874,
00901 
00902      1874, 1865, 1865, 1874, 1865, 1865, 1874, 1874, 1874, 1865,
00903      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00904      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00905      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00906      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00907      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00908      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00909      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00910      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00911      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00912 
00913      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00914      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1874, 1874,
00915      1865, 1865, 1874, 1874, 1874, 1874, 1865, 1865, 1865, 1865,
00916      1874, 1865, 1865, 1874, 1865, 1865, 1865, 1865, 1865, 1865,
00917      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00918      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00919      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00920      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00921      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00922      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00923 
00924      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00925      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00926      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00927      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1874,
00928      1874, 1874, 1874, 1874, 1865, 1865, 1874, 1865, 1865, 1865,
00929      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00930      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00931      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00932      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00933      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00934 
00935      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00936      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00937      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00938      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00939      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00940      1865, 1865, 1865, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
00941      1874, 1874, 1874, 1874, 1874, 1865, 1865, 1865, 1865, 1865,
00942      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00943      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00944      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00945 
00946      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00947      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00948      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00949      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00950      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00951      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00952      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00953      1865, 1865, 1865, 1874, 1865, 1865, 1874, 1874, 1874, 1874,
00954      1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
00955      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00956 
00957      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00958      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00959      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00960      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00961      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00962      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00963      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00964      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00965      1865, 1865, 1865, 1865, 1865, 1874, 1874, 1874, 1874, 1874,
00966      1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
00967 
00968      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00969      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00970      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00971      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00972      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00973      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00974      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00975      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00976      1865, 1865, 1865, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
00977      1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
00978 
00979      1874, 1874, 1874, 1874, 1874, 1874, 1874, 1865, 1865, 1865,
00980      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00981      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00982      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00983      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00984      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00985      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00986      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00987      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00988      1865, 1865, 1865, 1874, 1865, 1865, 1874, 1874, 1874, 1874,
00989 
00990      1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
00991      1874, 1874, 1874, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00992      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00993      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00994      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00995      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00996      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00997      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
00998      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1874,
00999      1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
01000 
01001      1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1865, 1865,
01002      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01003      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01004      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01005      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01006      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01007      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01008      1865, 1865, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
01009      1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
01010      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01011 
01012      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01013      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01014      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01015      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01016      1865, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
01017      1874, 1874, 1874, 1874, 1874, 1874, 1865, 1865, 1865, 1865,
01018      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01019      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01020      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01021      1865, 1865, 1865, 1865, 1874, 1874, 1874, 1874, 1874, 1874,
01022 
01023      1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1865, 1865,
01024      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01025      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01026      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01027      1865, 1865, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
01028      1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1865, 1865,
01029      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01030      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01031      1865, 1865, 1865, 1865, 1865, 1874, 1874, 1874, 1874, 1874,
01032      1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
01033 
01034      1874, 1874, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01035      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01036      1865, 1865, 1865, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
01037      1874, 1874, 1874, 1874, 1874, 1874, 1874, 1865, 1865, 1865,
01038      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01039      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1874,
01040      1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874, 1874,
01041      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01042      1865, 1865, 1865, 1865, 1874, 1874, 1874, 1874, 1874, 1874,
01043      1874, 1874, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1874,
01044 
01045      1874, 1874, 1874, 1874, 1865, 1865, 1865, 1865, 1865, 1874,
01046      1874, 1874, 1874, 1865, 1865, 1865, 1865, 1874, 1874, 1874,
01047      1874, 1865, 1865, 1865, 1865, 1874, 1874, 1874, 1874, 1865,
01048      1865, 1865, 1865, 1865, 1865, 1874, 1874, 1874, 1874, 1865,
01049      1865, 1865, 1874, 1874, 1874, 1874, 1865, 1865, 1874, 1874,
01050      1874, 1874, 1874, 1874, 1865, 1874, 1874, 1874, 1874, 1874,
01051      1874, 1874, 1874, 1874,    0, 1865, 1865, 1865, 1865, 1865,
01052      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865
01053     } ;
01054 
01055 static yyconst flex_int16_t yy_nxt[3726] =
01056     {   0,
01057        20,   21,   21,   20,   22,   42,   24,   42,   25,   26,
01058        27,   28,   28,   28,   29,   39,   30,   20, 1865,   39,
01059        43,   40,   43, 1865,   31,   40,   91,   91,   32,   20,
01060        21,   21,   20,   22, 1865,   24, 1865,   25,   26,   27,
01061        28,   28,   28,   29, 1865,   30,   20,   47,  231,   49,
01062        49,   49, 1865,   31, 1865,   91,   91,   32,   44,   44,
01063       140, 1865,   52,   68,  232,   46,   47,   48,   49,   49,
01064        49,   50, 1865,   51, 1865,  141,  811,   65,   65,  138,
01065      1865,   52, 1865,  812,  139,   53,   92,   66,   66,   66,
01066      1865, 1865, 1865, 1865, 1865,   54,   55,   67, 1865,  167,
01067 
01068        68,   56,   93,  168,  957,   57,   58,  142, 1865,  143,
01069        59,   60,   61,   62,   63,  190,   67,   69,   69,   47,
01070       191,   49,   49,   49, 1865,   47, 1865,   49,   49,   49,
01071      1865, 1865, 1865, 1865,   52,   65,   65,   67, 1865, 1865,
01072      1865, 1865, 1865,  287, 1865,   66,   66,   66, 1865, 1865,
01073      1865, 1865,   92,   93,  134,   67,   67,   70, 1865,  288,
01074      1865,  100,   91,   91,   71, 1865,  959, 1865,  101,  154,
01075       135,   72,  136, 1865,   67, 1865, 1865,  960, 1865,  107,
01076      1865,  165, 1865,  155,  112,  156,  157,  166,  961,  223,
01077        73,   74,   75,   76,   77,   78,   79,  224,   80,   81,
01078 
01079       110,   82,   83,   84,   85,  102,   86,   87,   88,   89,
01080        90,   44,   44,  954,  104,  103,  172,  192,   46,   47,
01081        48,   49,   49,   49,   50, 1865,   51, 1865, 1865, 1865,
01082      1865, 1865,  193,  217,   52, 1865,  955, 1865,   53,  218,
01083        65,   65,  146,  170, 1865,  962, 1865,  111,   54,   55,
01084       108,  105,  147, 1865,   56, 1865,  148,  149,   57,   58,
01085      1865,  963, 1865,   59,   60,   61,   62,   63,   69,   69,
01086       106,  348,  349,  109,   65,   65,   47,  176,   49,   49,
01087        49, 1865,  250, 1865,   66,   66,   66, 1865,   67, 1865,
01088       251,  113,  113,  964,   67,  114,  114,  114, 1865,  173,
01089 
01090      1865,   69,   69, 1865,  965, 1865, 1865,   67, 1865, 1865,
01091      1865, 1865, 1865,   67, 1865,  966, 1865,  116,  117,  118,
01092       119,  120,  121,  122,  170,  123,  124,  260,  125,  126,
01093       127,  128,  261,  129,  130,  131,  132,  133,  159, 1865,
01094       160, 1865, 1865,  177, 1865,  277, 1865,  174, 1865, 1865,
01095       161, 1865,  179,  278,  162,  163,  316,  186, 1865,  164,
01096      1865,  317, 1865,  175, 1865,  194, 1865,  195, 1865,  114,
01097       114,  114, 1865,  187, 1865,  188,  178,  219,  967,   65,
01098        65,  220,  352,  198,  180,  206,  181,  353,  182,  114,
01099       114,  114, 1865,  199, 1865,  183,  184,  200,  201,  207,
01100 
01101       253,  208,  209,  211, 1865,  212, 1865,  968,   65,   65,
01102      1865, 1865, 1865, 1865,  254,  213, 1865,  424, 1865,  214,
01103       215, 1865,  425, 1865,  216,  264,  264, 1865,  306, 1865,
01104       262, 1865,  969, 1865,  263, 1865,  307, 1865, 1865,  265,
01105      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,  266,
01106      1865,  309, 1865,  268,  269,  322,  267,  285,  285,  336,
01107       336,  270,  356,  323,  362,  310,  357,  324,  272,  271,
01108       970, 1865,  286, 1865, 1865, 1865, 1865, 1865,  275,  264,
01109       264, 1865,  337, 1865,  363,  273,  720,  274,  366,  366,
01110       374,  721, 1865,  265, 1865,  367,  367,  608, 1865,  364,
01111 
01112      1865, 1865,  428, 1865,  369,  369,  429,  373, 1865,  368,
01113      1865,  609,  365,  371,  371,  395,  395, 1865,  370, 1865,
01114       376,  376,  444, 1865,  375, 1865, 1865,  372, 1865,  378,
01115       378,  389,  389, 1865,  377, 1865, 1865,  445, 1865,  386,
01116       285,  285, 1865,  379, 1865,  971,  390,  387, 1865,  380,
01117      1865,  388,  400,  400,  679,  286,  405,  405,  411,  411,
01118       420,  421,  434,  434, 1865,  381, 1865,  401,  680,  456,
01119       456,  406,  848,  412,  336,  336,  849,  435,  457,  407,
01120       462,  462,  972,  391,  458,  436,  467,  467,  500,  463,
01121       485,  486, 1865,  516, 1865,  464,  973,  413,  487,  779,
01122 
01123       491,  468,  366,  366,  780,  437,  367,  367,  517,  991,
01124       493,  493,  994,  369,  369, 1865, 1865, 1865, 1865, 1865,
01125       368, 1865,  492, 1865,  876, 1865, 1865,  370, 1865,  494,
01126       494,  877,  371,  371,  995,  495,  495, 1865,  496, 1865,
01127       497, 1865, 1865, 1865, 1865, 1865,  372, 1865, 1865, 1865,
01128      1865, 1865,  376,  376,  498,  501,  501, 1865,  502, 1865,
01129       503,  378,  378,  996,  499, 1865,  377, 1865, 1865,  919,
01130      1865,  507,  507,  920, 1865,  379, 1865,  504,  504,  856,
01131       505,  509,  506,  634, 1865,  508, 1865,  389,  389, 1865,
01132      1865, 1865, 1865,  518,  518,  395,  395,  400,  400,  527,
01133 
01134       527,  997,  390,  530,  530,  405,  405,  532,  532,  536,
01135       536,  998,  401,  411,  411,  538,  538,  999,  531, 1000,
01136       406,  541,  541, 1001,  537,  555,  555,  619,  412,  561,
01137       562,  434,  434,  565,  565, 1002,  542,  563,  456,  456,
01138       556,  586,  586,  462,  462, 1004,  435,  457,  591,  591,
01139       467,  467,  463,  458,  587, 1865,  557, 1865,  464,  595,
01140       596,  592,  493,  493, 1005,  468,  494,  494, 1007,  495,
01141       495, 1865,  496, 1865,  497, 1865, 1865, 1865, 1865, 1865,
01142      1008, 1865, 1865, 1011, 1865, 1012,  623,  624,  624,  518,
01143       518,  626,  620,  501,  501, 1865,  502, 1865,  503, 1013,
01144 
01145      1865,  625, 1865, 1016,  504,  504, 1865,  505, 1865,  506,
01146       507,  507, 1017,  631,  631, 1019,  632, 1865,  633, 1865,
01147       641,  641,  742, 1865,  508, 1865, 1865, 1024, 1865,  527,
01148       527,  530,  530,  654,  654,  642,  532,  532,  655,  655,
01149       536,  536,  659,  659,  538,  538,  531,  541,  541,  662,
01150       662,  663,  663,  656, 1025,  537,  555,  555,  678,  678,
01151       565,  565,  542,  706,  706, 1026,  664,  586,  586,  710,
01152       710,  556,  591,  591,  722,  722,  728,  728,  624,  624,
01153       587,  665,  666,  723, 1865,  592, 1865, 1027, 1865,  724,
01154      1865, 1865,  625, 1865,  743,  743, 1865, 1028, 1865,  729,
01155 
01156       631,  631, 1865,  632, 1865,  633, 1029, 1865, 1030, 1865,
01157       641,  641, 1865, 1865, 1865, 1865,  754,  754, 1031,  744,
01158       765,  765,  654,  654, 1865,  642, 1865,  747,  741,  740,
01159       655,  655,  767,  767,  988,  766,  659,  659,  662,  662,
01160       663,  663,  772,  772, 1032,  656,  781,  781,  783,  783,
01161       788,  788,  678,  678,  987,  664,  799,  799, 1020,  802,
01162       802,  782, 1865,  784, 1865,  789,  817,  817,  706,  706,
01163      1033,  800, 1035,  790,  803,  821,  821,  710,  710,  831,
01164       831, 1021,  838,  838,  822,  722,  722,  801,  728,  728,
01165       823,  754,  754,  864,  723,  839, 1865,  818, 1865, 1036,
01166 
01167       724,  854,  854, 1865, 1037, 1865,  832, 1865,  857, 1865,
01168       858,  865,  833,  859, 1865,  855, 1865, 1038,  860,  743,
01169       743,  861,  862, 1039,  863,  867,  867,  869,  869,  880,
01170       880, 1865, 1865, 1865, 1865,  884,  884,  765,  765, 1865,
01171       868, 1865,  870,  977,  881,  888,  888,  767,  767, 1040,
01172       885, 1041,  766,  889,  889,  891,  891,  772,  772,  899,
01173       899,  781,  781,  906,  906,  989,  886,  978,  890, 1045,
01174       892, 1046,  783,  783,  900, 1047,  782,  907,  907,  788,
01175       788,  911,  911,  917,  917, 1048,  901,  784,  799,  799,
01176       923,  923,  902, 1049,  789,  802,  802, 1050,  918,  925,
01177 
01178       925,  817,  817,  800,  821,  821, 1051,  943,  943, 1052,
01179       803,  949,  950,  822,  831,  831,  958,  958, 1053,  823,
01180       944,  838,  838,  854,  854, 1054,  974,  974, 1865,  975,
01181      1865,  976, 1055, 1865,  839, 1865, 1865,  855, 1865, 1865,
01182      1056, 1865, 1865, 1865, 1865, 1865, 1865, 1058, 1865,  867,
01183       867,  992,  992,  869,  869,  993,  993, 1059,  981,  880,
01184       880,  979, 1060,  980,  868,  983, 1003, 1003,  870,  990,
01185       884,  884, 1061,  982,  881, 1006, 1006,  888,  888,  985,
01186       889,  889,  984, 1062,  986,  885, 1009, 1009,  891,  891,
01187      1010, 1010, 1014, 1015, 1063,  890,  899,  899, 1018, 1018,
01188 
01189      1022, 1022, 1064,  892,  906,  906,  907,  907,  911,  911,
01190      1065,  900,  917,  917, 1066, 1023, 1034, 1034,  923,  923,
01191       925,  925, 1042, 1043, 1057, 1057, 1067,  918,  943,  943,
01192      1044, 1068, 1069, 1070, 1071,  958,  958, 1072, 1073, 1074,
01193      1075,  944, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083,
01194       974,  974, 1084,  975, 1085,  976, 1865, 1865, 1865, 1865,
01195      1088, 1088, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01196      1865, 1101, 1865, 1865, 1089, 1865, 1865, 1107, 1865, 1865,
01197      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01198      1865, 1086, 1087, 1092,  992,  992,  993,  993, 1108, 1102,
01199 
01200      1103, 1093, 1109, 1090, 1110, 1094, 1096, 1104, 1105, 1105,
01201      1091, 1099, 1095, 1111, 1097, 1112, 1113, 1003, 1003, 1100,
01202      1114, 1115, 1098, 1106, 1006, 1006, 1116, 1117, 1009, 1009,
01203      1010, 1010, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1018,
01204      1018, 1125, 1126, 1127, 1022, 1022, 1128, 1128, 1129, 1130,
01205      1131, 1132, 1132, 1134, 1135, 1136, 1137, 1137, 1139, 1023,
01206      1140, 1034, 1034, 1141, 1142, 1143, 1133, 1144, 1145, 1146,
01207      1146, 1138, 1148, 1149, 1150, 1151, 1152, 1153, 1154, 1155,
01208      1156, 1157, 1158, 1159, 1147, 1160, 1161, 1162, 1057, 1057,
01209      1163, 1164, 1165, 1166, 1167, 1168, 1169, 1170, 1171, 1172,
01210 
01211      1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1182,
01212      1183, 1184, 1184, 1208, 1186, 1186, 1209, 1088, 1088, 1210,
01213      1189, 1189, 1211, 1213, 1865, 1185, 1865, 1865, 1187, 1865,
01214      1865, 1089, 1865, 1865, 1865, 1865, 1865, 1191, 1191, 1865,
01215      1214, 1865, 1194, 1194, 1865, 1865, 1865, 1865, 1105, 1105,
01216      1865, 1192, 1865, 1212, 1212, 1865, 1195, 1865, 1865, 1865,
01217      1865, 1865, 1865, 1106, 1865, 1865, 1188, 1865, 1190, 1215,
01218      1197, 1216, 1217, 1193, 1218, 1202, 1202, 1219, 1219, 1221,
01219      1222, 1196, 1223, 1224, 1227, 1201, 1198, 1199, 1865, 1203,
01220      1865, 1207, 1220, 1225, 1225, 1228, 1229, 1200, 1204, 1230,
01221 
01222      1231, 1232, 1206, 1233, 1234, 1234, 1236, 1237, 1226, 1128,
01223      1128, 1238, 1239, 1239, 1132, 1132, 1241, 1241, 1205, 1235,
01224      1242, 1242, 1244, 1245, 1137, 1137, 1247, 1240, 1248, 1133,
01225      1246, 1246, 1249, 1250, 1251, 1243, 1252, 1252, 1254, 1138,
01226      1146, 1146, 1255, 1255, 1256, 1257, 1258, 1259, 1260, 1261,
01227      1262, 1253, 1263, 1263, 1269, 1147, 1266, 1266, 1270, 1271,
01228      1271, 1264, 1273, 1274, 1274, 1267, 1276, 1265, 1277, 1278,
01229      1279, 1268, 1280, 1281, 1272, 1282, 1283, 1284, 1275, 1285,
01230      1286, 1287, 1288, 1289, 1290, 1291, 1292, 1293, 1184, 1184,
01231      1314, 1294, 1294, 1865, 1295, 1865, 1296, 1186, 1186, 1315,
01232 
01233      1316, 1865, 1185, 1865, 1865, 1317, 1865, 1297, 1297, 1318,
01234      1865, 1187, 1865, 1189, 1189, 1865, 1865, 1865, 1865, 1865,
01235      1865, 1865, 1865, 1191, 1191, 1865, 1865, 1865, 1865, 1300,
01236      1300, 1212, 1212, 1298, 1194, 1194, 1865, 1192, 1865, 1302,
01237      1302, 1299, 1865, 1303, 1865, 1323, 1324, 1865, 1195, 1865,
01238      1332, 1865, 1865, 1865, 1865, 1301, 1865, 1865, 1865, 1865,
01239      1865, 1333, 1865, 1304, 1202, 1202, 1327, 1327, 1309, 1309,
01240      1865, 1865, 1865, 1865, 1865, 1335, 1865, 1865, 1203, 1865,
01241      1336, 1865, 1306, 1865, 1865, 1337, 1865, 1319, 1319, 1334,
01242      1334, 1305, 1338, 1311, 1339, 1310, 1340, 1307, 1344, 1308,
01243 
01244      1321, 1321, 1320, 1345, 1312, 1325, 1325, 1346, 1313, 1219,
01245      1219, 1328, 1328, 1330, 1330, 1322, 1225, 1225, 1341, 1341,
01246      1326, 1234, 1234, 1349, 1220, 1350, 1329, 1351, 1331, 1343,
01247      1343, 1226, 1352, 1342, 1239, 1239, 1235, 1347, 1347, 1241,
01248      1241, 1242, 1242, 1348, 1348, 1246, 1246, 1353, 1354, 1240,
01249      1355, 1252, 1252, 1356, 1356, 1357, 1243, 1255, 1255, 1358,
01250      1359, 1361, 1362, 1363, 1360, 1364, 1253, 1263, 1263, 1365,
01251      1366, 1366, 1266, 1266, 1368, 1371, 1264, 1369, 1369, 1271,
01252      1271, 1267, 1265, 1367, 1372, 1372, 1373, 1268, 1274, 1274,
01253      1370, 1374, 1374, 1375, 1272, 1376, 1377, 1378, 1379, 1380,
01254 
01255      1381, 1382, 1383, 1275, 1384, 1385, 1386, 1387, 1294, 1294,
01256      1388, 1295, 1389, 1296, 1297, 1297, 1865, 1865, 1865, 1865,
01257      1865, 1865, 1865, 1865, 1300, 1300, 1865, 1865, 1865, 1865,
01258      1392, 1392, 1409, 1302, 1302, 1412, 1865, 1865, 1865, 1865,
01259      1865, 1413, 1865, 1865, 1393, 1865, 1865, 1865, 1865, 1865,
01260      1414, 1865, 1395, 1865, 1390, 1391, 1400, 1403, 1403, 1865,
01261      1394, 1865, 1396, 1417, 1397, 1398, 1309, 1309, 1399, 1423,
01262      1865, 1404, 1865, 1402, 1401, 1865, 1865, 1865, 1865, 1865,
01263      1431, 1865, 1406, 1410, 1405, 1319, 1319, 1411, 1415, 1415,
01264      1321, 1321, 1416, 1416, 1418, 1418, 1325, 1325, 1420, 1420,
01265 
01266      1320, 1327, 1327, 1328, 1328, 1322, 1421, 1421, 1432, 1419,
01267      1435, 1326, 1330, 1330, 1422, 1422, 1408, 1407, 1329, 1424,
01268      1424, 1334, 1334, 1426, 1426, 1429, 1429, 1331, 1433, 1433,
01269      1341, 1341, 1436, 1436, 1425, 1343, 1343, 1437, 1427, 1438,
01270      1430, 1439, 1439, 1434, 1441, 1342, 1347, 1347, 1348, 1348,
01271      1442, 1443, 1444, 1445, 1428, 1448, 1440, 1446, 1446, 1356,
01272      1356, 1449, 1449, 1451, 1452, 1453, 1454, 1455, 1456, 1457,
01273      1458, 1458, 1447, 1366, 1366, 1459, 1450, 1460, 1460, 1369,
01274      1369, 1461, 1372, 1372, 1462, 1463, 1367, 1374, 1374, 1464,
01275      1465, 1466, 1370, 1467, 1468, 1469, 1470, 1471, 1472, 1865,
01276 
01277      1865, 1865, 1865, 1392, 1392, 1865, 1865, 1865, 1865, 1491,
01278      1475, 1475, 1865, 1865, 1865, 1865, 1865, 1393, 1865, 1492,
01279      1493, 1473, 1474, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01280      1865, 1865, 1865, 1865, 1865, 1476, 1478, 1494, 1479, 1403,
01281      1403, 1495, 1477, 1485, 1485, 1865, 1483, 1865, 1496, 1481,
01282      1415, 1415, 1865, 1404, 1865, 1865, 1865, 1865, 1865, 1497,
01283      1480, 1486, 1486, 1865, 1482, 1865, 1416, 1416, 1418, 1418,
01284      1498, 1498, 1484, 1503, 1865, 1487, 1865, 1505, 1488, 1420,
01285      1420, 1489, 1506, 1419, 1421, 1421, 1422, 1422, 1499, 1499,
01286      1424, 1424, 1508, 1490, 1501, 1501, 1426, 1426, 1502, 1502,
01287 
01288      1429, 1429, 1509, 1500, 1513, 1425, 1504, 1504, 1433, 1433,
01289      1514, 1427, 1507, 1507, 1515, 1430, 1436, 1436, 1510, 1510,
01290      1439, 1439, 1516, 1434, 1512, 1512, 1517, 1517, 1446, 1446,
01291      1519, 1519, 1523, 1511, 1524, 1440, 1520, 1520, 1449, 1449,
01292      1525, 1518, 1526, 1447, 1522, 1522, 1527, 1528, 1529, 1458,
01293      1458, 1521, 1530, 1450, 1460, 1460, 1531, 1532, 1533, 1534,
01294      1535, 1536, 1537, 1538, 1539, 1540, 1541, 1865, 1865, 1865,
01295      1865, 1475, 1475, 1865, 1865, 1865, 1865, 1557, 1865, 1865,
01296      1865, 1865, 1558, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01297      1865, 1865, 1865, 1865, 1865, 1559, 1560, 1542, 1485, 1485,
01298 
01299      1865, 1865, 1865, 1865, 1561, 1486, 1486, 1562, 1543, 1545,
01300      1546, 1865, 1563, 1865, 1565, 1544, 1548, 1547, 1865, 1487,
01301      1865, 1553, 1553, 1550, 1566, 1549, 1554, 1865, 1567, 1865,
01302      1498, 1498, 1551, 1552, 1865, 1568, 1865, 1555, 1499, 1499,
01303      1564, 1564, 1569, 1556, 1501, 1501, 1502, 1502, 1504, 1504,
01304      1507, 1507, 1571, 1500, 1510, 1510, 1570, 1570, 1512, 1512,
01305      1572, 1573, 1574, 1574, 1517, 1517, 1576, 1576, 1578, 1511,
01306      1519, 1519, 1520, 1520, 1577, 1577, 1579, 1575, 1580, 1518,
01307      1522, 1522, 1581, 1582, 1583, 1584, 1585, 1521, 1586, 1587,
01308      1588, 1589, 1590, 1590, 1592, 1593, 1594, 1865, 1865, 1865,
01309 
01310      1865, 1865, 1865, 1865, 1865, 1611, 1612, 1591, 1865, 1865,
01311      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01312      1865, 1613, 1865, 1553, 1553, 1609, 1609, 1597, 1596, 1865,
01313      1616, 1865, 1595, 1865, 1599, 1865, 1865, 1865, 1865, 1865,
01314      1610, 1598, 1619, 1602, 1620, 1614, 1614, 1617, 1617, 1621,
01315      1600, 1564, 1564, 1601, 1622, 1603, 1623, 1604, 1607, 1605,
01316      1615, 1624, 1618, 1608, 1570, 1570, 1625, 1626, 1606, 1574,
01317      1574, 1627, 1627, 1576, 1576, 1577, 1577, 1628, 1629, 1630,
01318      1631, 1632, 1633, 1634, 1575, 1635, 1636, 1637, 1638, 1590,
01319      1590, 1639, 1639, 1640, 1641, 1642, 1865, 1865, 1865, 1865,
01320 
01321      1865, 1865, 1865, 1865, 1591, 1865, 1865, 1865, 1865, 1865,
01322      1865, 1865, 1865, 1651, 1651, 1865, 1660, 1865, 1865, 1865,
01323      1865, 1865, 1865, 1661, 1865, 1662, 1865, 1652, 1865, 1647,
01324      1609, 1609, 1650, 1644, 1655, 1655, 1643, 1659, 1659, 1645,
01325      1667, 1646, 1648, 1668, 1654, 1610, 1649, 1865, 1656, 1865,
01326      1614, 1614, 1653, 1663, 1663, 1664, 1664, 1617, 1617, 1666,
01327      1666, 1658, 1669, 1657, 1670, 1615, 1671, 1672, 1673, 1674,
01328      1665, 1675, 1618, 1627, 1627, 1676, 1677, 1678, 1679, 1679,
01329      1681, 1682, 1683, 1684, 1639, 1639, 1685, 1865, 1865, 1865,
01330      1865, 1688, 1688, 1680, 1865, 1865, 1865, 1865, 1865, 1865,
01331 
01332      1865, 1865, 1651, 1651, 1865, 1689, 1865, 1865, 1865, 1865,
01333      1865, 1703, 1695, 1695, 1706, 1865, 1652, 1865, 1865, 1708,
01334      1865, 1659, 1659, 1687, 1709, 1865, 1686, 1865, 1712, 1693,
01335      1694, 1713, 1690, 1655, 1655, 1691, 1663, 1663, 1692, 1698,
01336      1698, 1707, 1707, 1704, 1704, 1716, 1865, 1656, 1865, 1696,
01337      1699, 1699, 1865, 1719, 1865, 1701, 1701, 1697, 1705, 1664,
01338      1664, 1666, 1666, 1865, 1700, 1865, 1710, 1710, 1865, 1702,
01339      1865, 1714, 1714, 1720, 1665, 1717, 1717, 1679, 1679, 1721,
01340      1721, 1711, 1722, 1723, 1724, 1724, 1715, 1865, 1745, 1865,
01341      1718, 1746, 1680, 1688, 1688, 1742, 1742, 1865, 1725, 1865,
01342 
01343      1727, 1727, 1865, 1865, 1865, 1865, 1865, 1689, 1865, 1865,
01344      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1695, 1695, 1865,
01345      1756, 1865, 1734, 1734, 1728, 1757, 1726, 1698, 1698, 1758,
01346      1865, 1759, 1865, 1729, 1771, 1865, 1735, 1865, 1699, 1699,
01347      1865, 1772, 1865, 1736, 1736, 1775, 1731, 1732, 1730, 1701,
01348      1701, 1865, 1700, 1865, 1740, 1740, 1865, 1782, 1865, 1733,
01349      1704, 1704, 1865, 1702, 1865, 1737, 1737, 1783, 1738, 1741,
01350      1739, 1743, 1743, 1707, 1707, 1705, 1710, 1710, 1865, 1784,
01351      1865, 1747, 1747, 1748, 1748, 1793, 1744, 1750, 1750, 1714,
01352      1714, 1711, 1752, 1752, 1753, 1753, 1717, 1717, 1749, 1755,
01353 
01354      1755, 1865, 1751, 1865, 1715, 1721, 1721, 1724, 1724, 1754,
01355      1797, 1718, 1760, 1760, 1798, 1761, 1761, 1799, 1727, 1727,
01356      1865, 1725, 1865, 1805, 1865, 1865, 1865, 1865, 1865, 1762,
01357      1865, 1865, 1807, 1865, 1765, 1765, 1865, 1865, 1865, 1865,
01358      1865, 1808, 1865, 1764, 1734, 1734, 1809, 1865, 1766, 1865,
01359      1814, 1770, 1770, 1815, 1763, 1736, 1736, 1865, 1735, 1865,
01360      1816, 1740, 1740, 1768, 1865, 1817, 1865, 1865, 1865, 1865,
01361      1865, 1767, 1737, 1737, 1822, 1738, 1741, 1739, 1823, 1769,
01362      1773, 1773, 1742, 1742, 1865, 1865, 1865, 1865, 1743, 1743,
01363      1774, 1774, 1776, 1776, 1747, 1747, 1748, 1748, 1779, 1779,
01364 
01365      1750, 1750, 1786, 1744, 1780, 1780, 1824, 1777, 1752, 1752,
01366      1787, 1749, 1753, 1753, 1825, 1751, 1781, 1781, 1755, 1755,
01367      1760, 1760, 1830, 1761, 1761, 1773, 1773, 1754, 1785, 1785,
01368      1865, 1835, 1865, 1865, 1840, 1865, 1865, 1762, 1865, 1765,
01369      1765, 1865,  956, 1865, 1778, 1788, 1788, 1789, 1865, 1865,
01370      1865, 1865, 1865, 1766, 1865, 1791, 1791,  953, 1865,  952,
01371      1865, 1770, 1770, 1774, 1774, 1790, 1776, 1776, 1865, 1792,
01372      1865, 1794, 1794, 1865, 1865, 1865, 1865, 1795, 1795, 1779,
01373      1779, 1777, 1780, 1780, 1781, 1781, 1785, 1785,  951, 1800,
01374      1801,  948, 1796, 1788, 1788, 1865, 1865, 1865, 1865, 1865,
01375 
01376       947, 1865, 1791, 1791, 1794, 1794, 1865, 1865, 1865, 1865,
01377      1804, 1804, 1795, 1795,  946, 1865, 1792, 1865, 1806, 1806,
01378       945, 1802, 1803, 1865, 1810, 1865, 1865, 1796, 1865, 1865,
01379      1865, 1865, 1865, 1804, 1804, 1806, 1806, 1865, 1865, 1865,
01380      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01381       942, 1865, 1811, 1865, 1865, 1865, 1865, 1831, 1831, 1833,
01382      1833,  941, 1865, 1818, 1865, 1865,  940, 1865, 1812, 1813,
01383       939, 1865, 1832, 1865, 1834,  938, 1865, 1819, 1865, 1831,
01384      1831,  937, 1820, 1821, 1826,  936, 1828, 1829, 1841, 1841,
01385      1827, 1833, 1833,  935, 1832, 1842, 1842, 1865, 1837, 1865,
01386 
01387      1865,  934, 1865, 1836,  933, 1865, 1834, 1865, 1865,  932,
01388      1865, 1838, 1847, 1847, 1841, 1841, 1839, 1842, 1842, 1865,
01389       931, 1865, 1865,  930, 1865, 1855, 1855, 1848, 1851, 1851,
01390      1843, 1847, 1847, 1855, 1855, 1853, 1853, 1865,  929, 1865,
01391      1844, 1865, 1852, 1865, 1845,  928, 1848, 1846, 1865, 1854,
01392      1865, 1857, 1857,  927, 1851, 1851,  926, 1859, 1859, 1849,
01393       924, 1850, 1860, 1860, 1865, 1858, 1865, 1865, 1852, 1865,
01394      1865,  922, 1865, 1853, 1853, 1865, 1856, 1865, 1861, 1861,
01395       921, 1857, 1857,  916, 1863, 1863, 1865, 1854, 1865, 1859,
01396      1859, 1865, 1862, 1865, 1865, 1858, 1865, 1865,  915, 1865,
01397 
01398      1860, 1860, 1865,  914, 1865, 1861, 1861,  913, 1864, 1864,
01399       912, 1863, 1863, 1865,  910, 1865, 1864, 1864, 1865, 1862,
01400      1865, 1865,  909, 1865, 1865,  908, 1865,  905,  904, 1865,
01401       903, 1865,   23,   23,   23,   23,   23,   23,   33,   33,
01402        33,   33,   33,   33,   35,   35,   35,   35,   35,   35,
01403        36,   36,   36,   36,   36,   36,   34,   34,   34,   34,
01404        34,   34,   37,   37,   37,   37,   37,   37,   38,   38,
01405        38,   38,   38,   38,   41,   41,   41,   41,   41,   41,
01406        45,  898,  897,   45,   45,   94,   94,   94,   94,   94,
01407        95,   95,  896,   95,   95,   95,   96,   96,   96,  895,
01408 
01409        96,   96,   97,   97,   97,   97,  894,   97,  893,  887,
01410       883,  882,  879,  878,  875,  874,  873,  872,  871,  866,
01411       853,  852,  851,  850,  847,  846,  845,  844,  843,  842,
01412       841,  840,  837,  836,  835,  834,  830,  829,  828,  827,
01413       826,  825,  824,  820,  819,  816,  815,  814,  813,  810,
01414       809,  808,  807,  806,  805,  804,  798,  797,  796,  795,
01415       794,  793,  792,  791,  787,  786,  785,  778,  777,  776,
01416       775,  774,  773,  771,  770,  769,  768,  764,  763,  762,
01417       761,  760,  759,  758,  757,  756,  755,  753,  752,  751,
01418       750,  749,  748,  746,  745,  739,  738,  737,  736,  735,
01419 
01420       734,  733,  732,  731,  730,  727,  726,  725,  719,  718,
01421       717,  716,  715,  714,  713,  712,  711,  709,  708,  707,
01422       705,  704,  703,  702,  701,  700,  699,  698,  697,  696,
01423       695,  694,  693,  692,  691,  690,  689,  688,  687,  686,
01424       685,  684,  683,  682,  681,  677,  676,  675,  674,  673,
01425       672,  671,  670,  669,  668,  667,  661,  660,  658,  657,
01426       653,  652,  651,  650,  649,  648,  647,  646,  645,  644,
01427       643,  640,  639,  638,  637,  636,  635,  630,  629,  628,
01428       627,  622,  621,  618,  617,  616,  615,  614,  613,  612,
01429       611,  610,  607,  606,  605,  604,  603,  602,  601,  600,
01430 
01431       599,  598,  597,  594,  593,  590,  589,  588,  585,  584,
01432       583,  582,  581,  580,  579,  578,  577,  576,  575,  574,
01433       573,  572,  571,  570,  569,  568,  567,  566,  564,  560,
01434       559,  558,  554,  553,  552,  551,  550,  549,  548,  547,
01435       546,  545,  544,  543,  540,  539,  535,  534,  533,  529,
01436       528,  526,  525,  524,  523,  522,  521,  520,  519,  515,
01437       514,  513,  512,  511,  510,  490,  489,  488,  484,  483,
01438       482,  481,  480,  479,  478,  477,  476,  475,  474,  473,
01439       472,  471,  470,  469,  466,  465,  461,  460,  459,  455,
01440       454,  453,  452,  451,  450,  449,  448,  447,  446,  443,
01441 
01442       442,  441,  440,  439,  438,  433,  432,  431,  430,  427,
01443       426,  423,  422,  419,  418,  417,  416,  415,  414,  410,
01444       409,  408,  404,  403,  402,  399,  398,  397,  396,  394,
01445       393,  392,  385,  384,  383,  382,  361,  360,  359,  358,
01446       355,  354,  351,  350,  347,  346,  345,  344,  343,  342,
01447       341,  340,  339,  338,  335,  334,  333,  332,  331,  330,
01448       329,  328,  327,  326,  325,  321,  320,  319,  318,  315,
01449       314,  313,  312,  311,  308,  305,  304,  303,  302,  301,
01450       300,  299,  298,  297,  296,  295,  294,  293,  292,  291,
01451       290,  289,  284,  283,  282,  281,  280,  279,  276,  259,
01452 
01453       258,  257,  256,  255,  252,  249,  248,  247,  246,  245,
01454       244,  243,  242,  241,  240,  239,  238,  237,  236,  235,
01455       234,  233,  230,  229,  228,  227,  226,  225,  222,  221,
01456       210,  205,  204,  203,  202,  197,  196,  189,  185,  171,
01457       169,  158,  153,  152,  151,  150,  145,  144,  137,  115,
01458        99,   98,   64,   64, 1865,   34,   34,   34,   34,   34,
01459        34,   34,   34,   19, 1865, 1865, 1865, 1865, 1865, 1865,
01460      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01461      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01462      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01463 
01464      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01465      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01466      1865, 1865, 1865, 1865, 1865
01467     } ;
01468 
01469 static yyconst flex_int16_t yy_chk[3726] =
01470     {   0,
01471         1,    1,    1,    1,    1,   17,    1,   18,    1,    1,
01472         1,    1,    1,    1,    1,   15,    1,    1,    0,   16,
01473        17,   15,   18,    0,    1,   16,   30,   30,    1,    2,
01474         2,    2,    2,    2,   23,    2,   23,    2,    2,    2,
01475         2,    2,    2,    2,    0,    2,    2,   25,  143,   25,
01476        25,   25,   25,    2,   25,   51,   51,    2,   21,   21,
01477        76,   27,   25,   27,  143,   21,   21,   21,   21,   21,
01478        21,   21,   31,   21,   31,   76,  698,   26,   26,   75,
01479        32,   21,   32,  698,   75,   21,   31,   26,   26,   26,
01480        26,   45,   26,   45,   50,   21,   21,   26,   48,   89,
01481 
01482        48,   21,   32,   89,  836,   21,   21,   77,   50,   77,
01483        21,   21,   21,   21,   21,  118,   26,   28,   28,   46,
01484       118,   46,   46,   46,   46,   28,   46,   28,   28,   28,
01485        28,   53,   28,   53,   46,   47,   47,   28,   52,   54,
01486        52,   54,   55,  195,   55,   47,   47,   47,   47,   59,
01487        47,   59,   52,   53,   73,   47,   28,   29,   63,  195,
01488        63,   54,   91,   91,   29,   61,  839,   61,   55,   85,
01489        73,   29,   73,   57,   47,   57,  100,  840,  100,   59,
01490        56,   88,   56,   85,   63,   85,   85,   88,  841,  135,
01491        29,   29,   29,   29,   29,   29,   29,  135,   29,   29,
01492 
01493        61,   29,   29,   29,   29,   56,   29,   29,   29,   29,
01494        29,   44,   44,  833,   57,   56,  100,  119,   44,   44,
01495        44,   44,   44,   44,   44,   62,   44,   62,   60,   58,
01496        60,   58,  119,  131,   44,   92,  833,   92,   44,  131,
01497        65,   65,   80,   92,  104,  842,  104,   62,   44,   44,
01498        60,   58,   80,   65,   44,   65,   80,   80,   44,   44,
01499       101,  843,  101,   44,   44,   44,   44,   44,   49,   49,
01500        58,  250,  250,   60,   66,   66,   49,  104,   49,   49,
01501        49,   49,  161,   49,   66,   66,   66,   66,   49,   66,
01502       161,   67,   67,  844,   66,   67,   67,   67,   67,  101,
01503 
01504        67,   69,   69,  102,  845,  102,  107,   49,  107,  105,
01505        93,  105,   93,   66,   69,  846,   69,   71,   71,   71,
01506        71,   71,   71,   71,   93,   71,   71,  169,   71,   71,
01507        71,   71,  169,   71,   71,   71,   71,   71,   87,  103,
01508        87,  103,  106,  105,  106,  187,  108,  102,  108,  109,
01509        87,  109,  107,  187,   87,   87,  221,  116,  110,   87,
01510       110,  221,  111,  103,  111,  120,  112,  120,  112,  113,
01511       113,  113,  113,  116,  113,  116,  106,  132,  847,  114,
01512       114,  132,  253,  123,  108,  128,  109,  253,  110,  114,
01513       114,  114,  114,  123,  114,  111,  112,  123,  123,  128,
01514 
01515       163,  128,  128,  130,  172,  130,  172,  848,  170,  170,
01516       173,  175,  173,  175,  163,  130,  176,  309,  176,  130,
01517       130,  170,  309,  170,  130,  174,  174,  177,  213,  177,
01518       172,  178,  849,  178,  173,  179,  213,  179,  174,  174,
01519       174,  180,  181,  180,  181,  182,  183,  182,  183,  175,
01520       184,  215,  184,  177,  178,  226,  176,  194,  194,  239,
01521       239,  179,  256,  226,  261,  215,  256,  226,  181,  180,
01522       850,  262,  194,  262,  263,  270,  263,  270,  184,  264,
01523       264,  269,  239,  269,  261,  182,  601,  183,  265,  265,
01524       270,  601,  264,  264,  264,  266,  266,  481,  271,  262,
01525 
01526       271,  265,  312,  265,  267,  267,  312,  269,  266,  266,
01527       266,  481,  263,  268,  268,  286,  286,  267,  267,  267,
01528       272,  272,  324,  274,  271,  274,  268,  268,  268,  273,
01529       273,  281,  281,  272,  272,  272,  275,  324,  275,  280,
01530       285,  285,  273,  273,  273,  851,  281,  280,  375,  274,
01531       375,  280,  291,  291,  557,  285,  295,  295,  299,  299,
01532       306,  306,  317,  317,  364,  275,  364,  291,  557,  335,
01533       335,  295,  735,  299,  336,  336,  735,  317,  335,  295,
01534       340,  340,  852,  281,  335,  317,  343,  343,  375,  340,
01535       360,  360,  365,  388,  365,  340,  853,  299,  360,  671,
01536 
01537       364,  343,  366,  366,  671,  317,  367,  367,  388,  866,
01538       368,  368,  871,  369,  369,  366,  373,  366,  373,  367,
01539       367,  367,  365,  368,  757,  368,  369,  369,  369,  370,
01540       370,  757,  371,  371,  872,  372,  372,  374,  372,  374,
01541       372,  381,  370,  381,  370,  371,  371,  371,  372,  741,
01542       372,  741,  376,  376,  373,  377,  377,  509,  377,  509,
01543       377,  378,  378,  873,  374,  376,  376,  376,  377,  796,
01544       377,  380,  380,  796,  378,  378,  378,  379,  379,  741,
01545       379,  381,  379,  509,  380,  380,  380,  389,  389,  491,
01546       379,  491,  379,  390,  390,  395,  395,  400,  400,  401,
01547 
01548       401,  874,  389,  404,  404,  405,  405,  406,  406,  410,
01549       410,  875,  400,  411,  411,  412,  412,  876,  404,  877,
01550       405,  415,  415,  878,  410,  428,  428,  491,  411,  432,
01551       432,  434,  434,  435,  435,  879,  415,  432,  456,  456,
01552       428,  458,  458,  462,  462,  882,  434,  456,  464,  464,
01553       467,  467,  462,  456,  458,  492,  428,  492,  462,  469,
01554       469,  464,  493,  493,  883,  467,  494,  494,  886,  495,
01555       495,  498,  495,  498,  495,  493,  500,  493,  500,  494,
01556       887,  494,  495,  893,  495,  894,  498,  499,  499,  518,
01557       518,  500,  492,  501,  501,  623,  501,  623,  501,  895,
01558 
01559       499,  499,  499,  897,  504,  504,  501,  504,  501,  504,
01560       507,  507,  898,  508,  508,  901,  508,  504,  508,  504,
01561       516,  516,  623,  507,  507,  507,  508,  904,  508,  527,
01562       527,  530,  530,  531,  531,  516,  532,  532,  533,  533,
01563       536,  536,  537,  537,  538,  538,  530,  541,  541,  542,
01564       542,  543,  543,  533,  905,  536,  555,  555,  556,  556,
01565       565,  565,  541,  585,  585,  908,  543,  586,  586,  590,
01566       590,  555,  591,  591,  602,  602,  607,  607,  624,  624,
01567       586,  543,  543,  602,  619,  591,  619,  909,  620,  602,
01568       620,  624,  624,  624,  625,  625,  626,  910,  626,  607,
01569 
01570       631,  631,  634,  631,  634,  631,  912,  625,  913,  625,
01571       641,  641,  863,  631,  863,  631,  642,  642,  914,  626,
01572       653,  653,  654,  654,  862,  641,  862,  634,  620,  619,
01573       655,  655,  656,  656,  863,  653,  659,  659,  662,  662,
01574       663,  663,  664,  664,  915,  655,  672,  672,  673,  673,
01575       677,  677,  678,  678,  862,  663,  687,  687,  902,  688,
01576       688,  672,  744,  673,  744,  677,  704,  704,  706,  706,
01577       916,  687,  919,  677,  688,  708,  708,  710,  710,  718,
01578       718,  902,  724,  724,  708,  722,  722,  687,  728,  728,
01579       708,  754,  754,  744,  722,  724,  747,  704,  747,  920,
01580 
01581       722,  740,  740,  742,  921,  742,  718,  856,  742,  856,
01582       742,  747,  718,  742,  740,  740,  740,  922,  742,  743,
01583       743,  742,  742,  924,  742,  749,  749,  750,  750,  760,
01584       760,  857,  743,  857,  743,  763,  763,  765,  765,  864,
01585       749,  864,  750,  856,  760,  766,  766,  767,  767,  926,
01586       763,  927,  765,  768,  768,  769,  769,  772,  772,  777,
01587       777,  781,  781,  782,  782,  864,  763,  857,  768,  930,
01588       769,  931,  783,  783,  777,  932,  781,  784,  784,  788,
01589       788,  789,  789,  795,  795,  933,  777,  783,  799,  799,
01590       800,  800,  777,  934,  788,  802,  802,  935,  795,  803,
01591 
01592       803,  817,  817,  799,  821,  821,  936,  823,  823,  937,
01593       802,  828,  828,  821,  831,  831,  837,  837,  938,  821,
01594       823,  838,  838,  854,  854,  939,  855,  855,  858,  855,
01595       858,  855,  940,  859,  838,  859,  854,  854,  854,  855,
01596       941,  855,  860,  861,  860,  861,  865,  944,  865,  867,
01597       867,  868,  868,  869,  869,  870,  870,  945,  859,  880,
01598       880,  858,  946,  858,  867,  860,  881,  881,  869,  865,
01599       884,  884,  947,  859,  880,  885,  885,  888,  888,  861,
01600       889,  889,  860,  948,  861,  884,  890,  890,  891,  891,
01601       892,  892,  896,  896,  949,  889,  899,  899,  900,  900,
01602 
01603       903,  903,  950,  891,  906,  906,  907,  907,  911,  911,
01604       951,  899,  917,  917,  952,  903,  918,  918,  923,  923,
01605       925,  925,  928,  928,  942,  942,  953,  917,  943,  943,
01606       928,  954,  955,  956,  957,  958,  958,  959,  960,  962,
01607       963,  943,  964,  966,  967,  968,  969,  970,  971,  972,
01608       974,  974,  975,  974,  976,  974,  977,  978,  977,  978,
01609       979,  979,  980,  974,  980,  974,  981,  982,  981,  982,
01610       983,  991,  983,  979,  979,  979,  984,  996,  984,  985,
01611       987,  985,  987,  986,  988,  986,  988,  989,  990,  989,
01612       990,  977,  978,  982,  992,  992,  993,  993,  997,  994,
01613 
01614       994,  983,  998,  980,  999,  984,  986,  994,  995,  995,
01615       981,  989,  985, 1000,  987, 1001, 1002, 1003, 1003,  990,
01616      1004, 1005,  988,  995, 1006, 1006, 1007, 1008, 1009, 1009,
01617      1010, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
01618      1018, 1019, 1020, 1021, 1022, 1022, 1023, 1023, 1024, 1025,
01619      1026, 1027, 1027, 1028, 1029, 1030, 1031, 1031, 1032, 1022,
01620      1033, 1034, 1034, 1035, 1036, 1037, 1027, 1038, 1039, 1040,
01621      1040, 1031, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048,
01622      1049, 1050, 1052, 1053, 1040, 1054, 1055, 1056, 1057, 1057,
01623      1058, 1059, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1069,
01624 
01625      1070, 1071, 1072, 1075, 1076, 1077, 1078, 1079, 1080, 1081,
01626      1083, 1086, 1086, 1101, 1087, 1087, 1102, 1088, 1088, 1103,
01627      1089, 1089, 1104, 1107, 1086, 1086, 1086, 1087, 1087, 1087,
01628      1088, 1088, 1088, 1089, 1090, 1089, 1090, 1091, 1091, 1092,
01629      1108, 1092, 1093, 1093, 1094, 1095, 1094, 1095, 1105, 1105,
01630      1091, 1091, 1091, 1106, 1106, 1093, 1093, 1093, 1096, 1097,
01631      1096, 1097, 1099, 1105, 1099, 1100, 1087, 1100, 1090, 1109,
01632      1094, 1110, 1111, 1092, 1112, 1098, 1098, 1113, 1113, 1114,
01633      1115, 1093, 1116, 1117, 1119, 1097, 1095, 1095, 1098, 1098,
01634      1098, 1100, 1113, 1118, 1118, 1120, 1121, 1096, 1098, 1122,
01635 
01636      1123, 1124, 1099, 1125, 1126, 1126, 1127, 1129, 1118, 1128,
01637      1128, 1130, 1131, 1131, 1132, 1132, 1133, 1133, 1098, 1126,
01638      1134, 1134, 1135, 1136, 1137, 1137, 1139, 1131, 1140, 1132,
01639      1138, 1138, 1141, 1142, 1143, 1134, 1144, 1144, 1145, 1137,
01640      1146, 1146, 1147, 1147, 1148, 1149, 1150, 1151, 1152, 1155,
01641      1156, 1144, 1157, 1157, 1160, 1146, 1159, 1159, 1161, 1162,
01642      1162, 1157, 1163, 1164, 1164, 1159, 1165, 1157, 1166, 1167,
01643      1168, 1159, 1169, 1170, 1162, 1172, 1173, 1174, 1164, 1175,
01644      1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1184,
01645      1208, 1185, 1185, 1188, 1185, 1188, 1185, 1186, 1186, 1209,
01646 
01647      1210, 1184, 1184, 1184, 1185, 1211, 1185, 1187, 1187, 1213,
01648      1186, 1186, 1186, 1189, 1189, 1190, 1193, 1190, 1193, 1196,
01649      1187, 1196, 1187, 1191, 1191, 1197, 1189, 1197, 1189, 1192,
01650      1192, 1212, 1212, 1188, 1194, 1194, 1191, 1191, 1191, 1195,
01651      1195, 1190, 1192, 1196, 1192, 1216, 1217, 1194, 1194, 1194,
01652      1223, 1198, 1195, 1198, 1195, 1193, 1199, 1200, 1199, 1200,
01653      1201, 1224, 1201, 1197, 1202, 1202, 1220, 1220, 1203, 1203,
01654      1204, 1205, 1204, 1205, 1206, 1227, 1206, 1202, 1202, 1202,
01655      1228, 1203, 1199, 1203, 1207, 1229, 1207, 1214, 1214, 1226,
01656      1226, 1198, 1230, 1205, 1231, 1204, 1232, 1200, 1236, 1201,
01657 
01658      1215, 1215, 1214, 1237, 1206, 1218, 1218, 1238, 1207, 1219,
01659      1219, 1221, 1221, 1222, 1222, 1215, 1225, 1225, 1233, 1233,
01660      1218, 1234, 1234, 1244, 1219, 1245, 1221, 1247, 1222, 1235,
01661      1235, 1225, 1248, 1233, 1239, 1239, 1234, 1240, 1240, 1241,
01662      1241, 1242, 1242, 1243, 1243, 1246, 1246, 1249, 1250, 1239,
01663      1251, 1252, 1252, 1253, 1253, 1254, 1242, 1255, 1255, 1256,
01664      1257, 1258, 1259, 1260, 1257, 1261, 1252, 1263, 1263, 1264,
01665      1265, 1265, 1266, 1266, 1267, 1269, 1263, 1268, 1268, 1271,
01666      1271, 1266, 1263, 1265, 1272, 1272, 1273, 1266, 1274, 1274,
01667      1268, 1275, 1275, 1276, 1271, 1278, 1279, 1281, 1282, 1283,
01668 
01669      1285, 1286, 1287, 1274, 1288, 1289, 1290, 1292, 1294, 1294,
01670      1295, 1294, 1296, 1294, 1297, 1297, 1298, 1299, 1298, 1299,
01671      1303, 1294, 1303, 1294, 1300, 1300, 1305, 1297, 1305, 1297,
01672      1301, 1301, 1314, 1302, 1302, 1316, 1306, 1300, 1306, 1300,
01673      1310, 1317, 1310, 1301, 1301, 1301, 1302, 1304, 1302, 1304,
01674      1318, 1307, 1304, 1307, 1298, 1299, 1305, 1308, 1308, 1311,
01675      1303, 1311, 1304, 1323, 1304, 1304, 1309, 1309, 1304, 1332,
01676      1308, 1308, 1308, 1307, 1306, 1312, 1313, 1312, 1313, 1309,
01677      1337, 1309, 1311, 1315, 1310, 1319, 1319, 1315, 1320, 1320,
01678      1321, 1321, 1322, 1322, 1324, 1324, 1325, 1325, 1326, 1326,
01679 
01680      1319, 1327, 1327, 1328, 1328, 1321, 1329, 1329, 1338, 1324,
01681      1340, 1325, 1330, 1330, 1331, 1331, 1313, 1312, 1328, 1333,
01682      1333, 1334, 1334, 1335, 1335, 1336, 1336, 1330, 1339, 1339,
01683      1341, 1341, 1342, 1342, 1333, 1343, 1343, 1344, 1335, 1345,
01684      1336, 1346, 1346, 1339, 1349, 1341, 1347, 1347, 1348, 1348,
01685      1350, 1351, 1352, 1353, 1335, 1355, 1346, 1354, 1354, 1356,
01686      1356, 1357, 1357, 1358, 1359, 1360, 1361, 1362, 1363, 1364,
01687      1365, 1365, 1354, 1366, 1366, 1367, 1357, 1368, 1368, 1369,
01688      1369, 1370, 1372, 1372, 1373, 1375, 1366, 1374, 1374, 1376,
01689      1377, 1378, 1369, 1379, 1381, 1382, 1383, 1384, 1385, 1390,
01690 
01691      1391, 1390, 1391, 1392, 1392, 1394, 1395, 1394, 1395, 1409,
01692      1393, 1393, 1397, 1396, 1397, 1396, 1392, 1392, 1392, 1410,
01693      1411, 1390, 1391, 1393, 1398, 1393, 1398, 1399, 1400, 1399,
01694      1400, 1401, 1402, 1401, 1402, 1394, 1396, 1412, 1397, 1403,
01695      1403, 1413, 1395, 1404, 1404, 1406, 1401, 1406, 1414, 1399,
01696      1415, 1415, 1403, 1403, 1403, 1407, 1404, 1407, 1404, 1417,
01697      1398, 1405, 1405, 1408, 1400, 1408, 1416, 1416, 1418, 1418,
01698      1419, 1419, 1402, 1428, 1405, 1405, 1405, 1431, 1406, 1420,
01699      1420, 1407, 1432, 1418, 1421, 1421, 1422, 1422, 1423, 1423,
01700      1424, 1424, 1435, 1408, 1425, 1425, 1426, 1426, 1427, 1427,
01701 
01702      1429, 1429, 1437, 1423, 1441, 1424, 1430, 1430, 1433, 1433,
01703      1442, 1426, 1434, 1434, 1443, 1429, 1436, 1436, 1438, 1438,
01704      1439, 1439, 1444, 1433, 1440, 1440, 1445, 1445, 1446, 1446,
01705      1447, 1447, 1451, 1438, 1452, 1439, 1448, 1448, 1449, 1449,
01706      1453, 1445, 1454, 1446, 1450, 1450, 1455, 1456, 1457, 1458,
01707      1458, 1448, 1459, 1449, 1460, 1460, 1461, 1462, 1463, 1464,
01708      1465, 1466, 1467, 1468, 1469, 1470, 1471, 1473, 1474, 1473,
01709      1474, 1475, 1475, 1476, 1477, 1476, 1477, 1491, 1479, 1478,
01710      1479, 1478, 1492, 1480, 1475, 1480, 1475, 1481, 1482, 1481,
01711      1482, 1483, 1484, 1483, 1484, 1493, 1494, 1473, 1485, 1485,
01712 
01713      1488, 1490, 1488, 1490, 1495, 1486, 1486, 1496, 1474, 1477,
01714      1478, 1485, 1497, 1485, 1503, 1476, 1480, 1479, 1486, 1486,
01715      1486, 1487, 1487, 1482, 1505, 1481, 1488, 1489, 1506, 1489,
01716      1498, 1498, 1483, 1484, 1487, 1508, 1487, 1489, 1499, 1499,
01717      1500, 1500, 1509, 1490, 1501, 1501, 1502, 1502, 1504, 1504,
01718      1507, 1507, 1513, 1499, 1510, 1510, 1511, 1511, 1512, 1512,
01719      1514, 1515, 1516, 1516, 1517, 1517, 1518, 1518, 1524, 1510,
01720      1519, 1519, 1520, 1520, 1521, 1521, 1525, 1516, 1526, 1517,
01721      1522, 1522, 1528, 1530, 1531, 1532, 1533, 1520, 1534, 1535,
01722      1536, 1537, 1538, 1538, 1539, 1540, 1541, 1542, 1543, 1542,
01723 
01724      1543, 1544, 1545, 1544, 1545, 1558, 1559, 1538, 1546, 1547,
01725      1546, 1547, 1548, 1549, 1548, 1549, 1550, 1551, 1550, 1551,
01726      1552, 1560, 1552, 1553, 1553, 1557, 1557, 1544, 1543, 1554,
01727      1562, 1554, 1542, 1555, 1546, 1555, 1553, 1556, 1553, 1556,
01728      1557, 1545, 1565, 1549, 1566, 1561, 1561, 1563, 1563, 1567,
01729      1547, 1564, 1564, 1548, 1568, 1550, 1569, 1551, 1555, 1552,
01730      1561, 1571, 1563, 1556, 1570, 1570, 1572, 1573, 1554, 1574,
01731      1574, 1575, 1575, 1576, 1576, 1577, 1577, 1578, 1579, 1580,
01732      1582, 1583, 1584, 1585, 1574, 1586, 1587, 1588, 1589, 1590,
01733      1590, 1591, 1591, 1592, 1593, 1594, 1595, 1596, 1595, 1596,
01734 
01735      1597, 1598, 1597, 1598, 1590, 1599, 1601, 1599, 1601, 1600,
01736      1602, 1600, 1602, 1603, 1603, 1604, 1611, 1604, 1605, 1607,
01737      1605, 1607, 1608, 1612, 1608, 1613, 1603, 1603, 1603, 1599,
01738      1609, 1609, 1602, 1596, 1606, 1606, 1595, 1610, 1610, 1597,
01739      1619, 1598, 1600, 1620, 1605, 1609, 1601, 1606, 1606, 1606,
01740      1614, 1614, 1604, 1615, 1615, 1616, 1616, 1617, 1617, 1618,
01741      1618, 1608, 1621, 1607, 1622, 1614, 1623, 1624, 1625, 1626,
01742      1616, 1628, 1617, 1627, 1627, 1630, 1631, 1632, 1633, 1633,
01743      1634, 1635, 1637, 1638, 1639, 1639, 1641, 1643, 1644, 1643,
01744      1644, 1645, 1645, 1633, 1646, 1647, 1646, 1647, 1648, 1649,
01745 
01746      1648, 1649, 1651, 1651, 1645, 1645, 1645, 1650, 1653, 1650,
01747      1653, 1660, 1652, 1652, 1662, 1651, 1651, 1651, 1654, 1667,
01748      1654, 1659, 1659, 1644, 1668, 1652, 1643, 1652, 1670, 1649,
01749      1650, 1671, 1646, 1655, 1655, 1647, 1663, 1663, 1648, 1656,
01750      1656, 1665, 1665, 1661, 1661, 1673, 1655, 1655, 1655, 1653,
01751      1657, 1657, 1656, 1677, 1656, 1658, 1658, 1654, 1661, 1664,
01752      1664, 1666, 1666, 1657, 1657, 1657, 1669, 1669, 1658, 1658,
01753      1658, 1672, 1672, 1678, 1664, 1674, 1674, 1679, 1679, 1680,
01754      1680, 1669, 1681, 1682, 1686, 1686, 1672, 1687, 1708, 1687,
01755      1674, 1709, 1679, 1688, 1688, 1705, 1705, 1686, 1686, 1686,
01756 
01757      1689, 1689, 1690, 1691, 1690, 1691, 1688, 1688, 1688, 1692,
01758      1693, 1692, 1693, 1689, 1694, 1689, 1694, 1695, 1695, 1696,
01759      1719, 1696, 1697, 1697, 1690, 1720, 1687, 1698, 1698, 1722,
01760      1695, 1723, 1695, 1691, 1738, 1697, 1697, 1697, 1699, 1699,
01761      1698, 1739, 1698, 1700, 1700, 1745, 1693, 1694, 1692, 1701,
01762      1701, 1699, 1699, 1699, 1703, 1703, 1700, 1756, 1700, 1696,
01763      1704, 1704, 1701, 1701, 1701, 1702, 1702, 1757, 1702, 1703,
01764      1702, 1706, 1706, 1707, 1707, 1704, 1710, 1710, 1702, 1758,
01765      1702, 1711, 1711, 1712, 1712, 1775, 1706, 1713, 1713, 1714,
01766      1714, 1710, 1715, 1715, 1716, 1716, 1717, 1717, 1712, 1718,
01767 
01768      1718, 1729, 1713, 1729, 1714, 1721, 1721, 1724, 1724, 1716,
01769      1782, 1717, 1725, 1725, 1783, 1726, 1726, 1784, 1727, 1727,
01770      1724, 1724, 1724, 1793, 1728, 1725, 1728, 1725, 1726, 1726,
01771      1726, 1727, 1797, 1727, 1730, 1730, 1731, 1732, 1731, 1732,
01772      1733, 1798, 1733, 1729, 1734, 1734, 1799, 1730, 1730, 1730,
01773      1805, 1735, 1735, 1807, 1728, 1736, 1736, 1734, 1734, 1734,
01774      1808, 1740, 1740, 1732, 1735, 1809, 1735, 1763, 1736, 1763,
01775      1736, 1731, 1737, 1737, 1814, 1737, 1740, 1737, 1815, 1733,
01776      1741, 1741, 1742, 1742, 1764, 1737, 1764, 1737, 1743, 1743,
01777      1744, 1744, 1746, 1746, 1747, 1747, 1748, 1748, 1749, 1749,
01778 
01779      1750, 1750, 1763, 1743, 1751, 1751, 1816, 1746, 1752, 1752,
01780      1764, 1748, 1753, 1753, 1817, 1750, 1754, 1754, 1755, 1755,
01781      1760, 1760, 1822, 1761, 1761, 1773, 1773, 1753, 1762, 1762,
01782      1767, 1825, 1767, 1760, 1830, 1760, 1761, 1761, 1761, 1765,
01783      1765, 1762,  835, 1762, 1746, 1766, 1766, 1767, 1768, 1786,
01784      1768, 1786, 1765, 1765, 1765, 1769, 1769,  832, 1766,  830,
01785      1766, 1770, 1770, 1774, 1774, 1768, 1776, 1776, 1769, 1769,
01786      1769, 1777, 1777, 1787, 1770, 1787, 1770, 1778, 1778, 1779,
01787      1779, 1776, 1780, 1780, 1781, 1781, 1785, 1785,  829, 1786,
01788      1787,  827, 1778, 1788, 1788, 1789, 1790, 1789, 1790, 1785,
01789 
01790       826, 1785, 1791, 1791, 1794, 1794, 1788, 1800, 1788, 1800,
01791      1792, 1792, 1795, 1795,  825, 1791, 1791, 1791, 1796, 1796,
01792       824, 1789, 1790, 1792, 1800, 1792, 1801, 1795, 1801, 1802,
01793      1803, 1802, 1803, 1804, 1804, 1806, 1806, 1810, 1811, 1810,
01794      1811, 1812, 1813, 1812, 1813, 1818, 1804, 1818, 1804, 1819,
01795       822, 1819, 1801, 1820, 1821, 1820, 1821, 1823, 1823, 1824,
01796      1824,  820, 1826, 1810, 1826, 1827,  819, 1827, 1802, 1803,
01797       818, 1828, 1823, 1828, 1824,  816, 1829, 1811, 1829, 1831,
01798      1831,  815, 1812, 1813, 1818,  814, 1820, 1821, 1832, 1832,
01799      1819, 1833, 1833,  813, 1831, 1834, 1834, 1836, 1827, 1836,
01800 
01801      1837,  812, 1837, 1826,  811, 1838, 1833, 1838, 1839,  810,
01802      1839, 1828, 1840, 1840, 1841, 1841, 1829, 1842, 1842, 1843,
01803       809, 1843, 1844,  808, 1844, 1848, 1848, 1840, 1845, 1845,
01804      1836, 1847, 1847, 1855, 1855, 1846, 1846, 1849,  807, 1849,
01805      1837, 1845, 1845, 1845, 1838,  806, 1847, 1839, 1846, 1846,
01806      1846, 1850, 1850,  805, 1851, 1851,  804, 1852, 1852, 1843,
01807       801, 1844, 1854, 1854, 1850, 1850, 1850, 1851, 1851, 1851,
01808      1852,  798, 1852, 1853, 1853, 1854, 1849, 1854, 1856, 1856,
01809       797, 1857, 1857,  794, 1858, 1858, 1853, 1853, 1853, 1859,
01810      1859, 1856, 1856, 1856, 1857, 1857, 1857, 1858,  793, 1858,
01811 
01812      1860, 1860, 1859,  792, 1859, 1861, 1861,  791, 1862, 1862,
01813       790, 1863, 1863, 1860,  787, 1860, 1864, 1864, 1861, 1861,
01814      1861, 1862,  786, 1862, 1863,  785, 1863,  780,  779, 1864,
01815       778, 1864, 1866, 1866, 1866, 1866, 1866, 1866, 1867, 1867,
01816      1867, 1867, 1867, 1867, 1868, 1868, 1868, 1868, 1868, 1868,
01817      1869, 1869, 1869, 1869, 1869, 1869, 1870, 1870, 1870, 1870,
01818      1870, 1870, 1871, 1871, 1871, 1871, 1871, 1871, 1872, 1872,
01819      1872, 1872, 1872, 1872, 1873, 1873, 1873, 1873, 1873, 1873,
01820      1874,  776,  775, 1874, 1874, 1875, 1875, 1875, 1875, 1875,
01821      1876, 1876,  774, 1876, 1876, 1876, 1877, 1877, 1877,  773,
01822 
01823      1877, 1877, 1878, 1878, 1878, 1878,  771, 1878,  770,  764,
01824       762,  761,  759,  758,  756,  755,  753,  752,  751,  748,
01825       739,  738,  737,  736,  733,  732,  731,  730,  729,  727,
01826       726,  725,  723,  721,  720,  719,  717,  716,  715,  714,
01827       713,  712,  711,  707,  705,  703,  702,  700,  699,  697,
01828       696,  695,  694,  693,  690,  689,  686,  685,  684,  683,
01829       682,  681,  680,  679,  676,  675,  674,  670,  669,  668,
01830       667,  666,  665,  661,  660,  658,  657,  652,  651,  650,
01831       649,  648,  647,  646,  645,  644,  643,  640,  639,  638,
01832       637,  636,  635,  633,  632,  618,  616,  615,  614,  613,
01833 
01834       612,  611,  610,  609,  608,  606,  605,  604,  600,  599,
01835       598,  597,  596,  595,  594,  593,  592,  589,  588,  587,
01836       583,  582,  581,  580,  579,  578,  577,  576,  575,  574,
01837       573,  572,  571,  570,  569,  568,  567,  566,  564,  563,
01838       562,  561,  560,  559,  558,  554,  553,  552,  551,  550,
01839       549,  548,  547,  546,  545,  544,  540,  539,  535,  534,
01840       529,  528,  526,  525,  524,  523,  522,  521,  520,  519,
01841       517,  515,  514,  513,  512,  511,  510,  506,  505,  503,
01842       502,  497,  496,  490,  489,  488,  487,  486,  485,  484,
01843       483,  482,  480,  479,  478,  477,  476,  475,  474,  473,
01844 
01845       472,  471,  470,  466,  465,  463,  461,  460,  457,  455,
01846       454,  453,  452,  451,  450,  449,  448,  447,  446,  445,
01847       443,  442,  441,  440,  439,  438,  437,  436,  433,  431,
01848       430,  429,  427,  426,  425,  424,  423,  422,  421,  420,
01849       419,  418,  417,  416,  414,  413,  409,  408,  407,  403,
01850       402,  399,  398,  397,  396,  394,  393,  392,  391,  387,
01851       386,  385,  384,  383,  382,  363,  362,  361,  359,  358,
01852       357,  356,  355,  354,  353,  352,  351,  350,  349,  348,
01853       347,  346,  345,  344,  342,  341,  339,  338,  337,  334,
01854       333,  332,  331,  330,  329,  328,  327,  326,  325,  323,
01855 
01856       322,  321,  320,  319,  318,  316,  315,  314,  313,  311,
01857       310,  308,  307,  305,  304,  303,  302,  301,  300,  298,
01858       297,  296,  294,  293,  292,  290,  289,  288,  287,  284,
01859       283,  282,  279,  278,  277,  276,  260,  259,  258,  257,
01860       255,  254,  252,  251,  249,  248,  247,  246,  245,  244,
01861       243,  242,  241,  240,  238,  237,  236,  234,  233,  232,
01862       231,  230,  229,  228,  227,  225,  224,  223,  222,  220,
01863       219,  218,  217,  216,  214,  212,  211,  210,  209,  208,
01864       207,  206,  205,  204,  203,  202,  201,  200,  199,  198,
01865       197,  196,  193,  192,  191,  190,  189,  188,  186,  168,
01866 
01867       167,  166,  165,  164,  162,  160,  159,  158,  157,  156,
01868       155,  154,  153,  152,  151,  150,  149,  148,  147,  146,
01869       145,  144,  141,  140,  139,  138,  137,  136,  134,  133,
01870       129,  127,  126,  125,  124,  122,  121,  117,  115,   98,
01871        90,   86,   84,   83,   82,   81,   79,   78,   74,   70,
01872        43,   40,   24,   22,   19,   14,   13,    8,    7,    6,
01873         5,    4,    3, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01874      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01875      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01876      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01877 
01878      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01879      1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865, 1865,
01880      1865, 1865, 1865, 1865, 1865
01881     } ;
01882 
01883 /* Table of booleans, true if rule could match eol. */
01884 static yyconst flex_int32_t yy_rule_can_match_eol[235] =
01885     {   0,
01886 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
01887     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
01888     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
01889     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
01890     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
01891     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
01892     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
01893     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
01894     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
01895     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
01896     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
01897     1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0,     };
01898 
01899 /* The intent behind this definition is that it'll catch
01900  * any uses of REJECT which flex missed.
01901  */
01902 #define REJECT reject_used_but_not_detected
01903 #define yymore() yymore_used_but_not_detected
01904 #define YY_MORE_ADJ 0
01905 #define YY_RESTORE_YY_MORE_OFFSET
01906 #line 1 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
01907 /* $Id: OSParseosrl.cpp 4120 2011-03-30 06:28:16Z kmartin $ */
01920 #line 15 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
01921 
01922 #include "OSConfig.h"
01923 
01924 #include <iostream>
01925 #include <sstream> 
01926  
01927 #ifdef HAVE_CSTDIO
01928 # include <cstdio>
01929 #else
01930 # ifdef HAVE_STDIO_H
01931 #  include <stdio.h>
01932 # else
01933 #  error "don't have header file for stdio"
01934 # endif
01935 #endif
01936 
01937 #ifdef HAVE_CSTRING
01938 # include <cstring>
01939 #else
01940 # ifdef HAVE_STRING_H
01941 #  include <string.h>
01942 # else
01943 #  error "don't have header file for string"
01944 # endif
01945 #endif
01946 
01947 #ifdef HAVE_CMATH
01948 # include <cmath>
01949 #else
01950 # ifdef HAVE_MATH_H
01951 #  include <math.h>
01952 # else
01953 #  error "don't have header file for math"
01954 # endif
01955 #endif
01956  
01957 
01958 //#define PARSERDEBUG
01959 
01960 #ifdef PARSERDEBUG
01961         #define YY_PRINT  printf("%s", yytext);
01962 #else     
01963         #define YY_PRINT ;
01964 #endif
01965 
01966 
01967 #ifdef WIN_
01968   #define YY_NO_UNISTD_H
01969   #include <io.h>
01970   #include <process.h>
01971   #ifdef USE_OLD_UNISTD
01972      #include<sys/unistd.h>  
01973   #endif
01974 #endif
01975 
01976 #include "OSErrorClass.h"
01977 #include "OSMathUtil.h"
01978 #include "OSGeneral.h"
01979 #include "OSParseosrl.tab.hpp"
01980 #include "OSResult.h"
01981 #include "OSrLParserData.h"
01982 
01983 using std::cout;
01984 using std::endl;
01985 using std::ostringstream;
01986      
01987 
01988 
01989 
01990 
01991 
01992 
01993 
01994 
01995 #line 103 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
01996 #define YY_EXTRA_TYPE OSrLParserData*
01997 #line 1998 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.cpp"
01998 
01999 #define INITIAL 0
02000 #define osrlattributetext 1
02001 #define doublequoteattributetext 2
02002 #define singlequoteattributetext 3
02003 #define startelement 4
02004 #define elementtext 5
02005 #define itemtext 6
02006 #define comment 7
02007 #define xmldeclaration 8
02008 
02009 #ifndef YY_NO_UNISTD_H
02010 /* Special case for "unistd.h", since it is non-ANSI. We include it way
02011  * down here because we want the user's section 1 to have been scanned first.
02012  * The user has a chance to override it with an option.
02013  */
02014 #include <unistd.h>
02015 #endif
02016 
02017 #ifndef YY_EXTRA_TYPE
02018 #define YY_EXTRA_TYPE void *
02019 #endif
02020 
02021 /* Holds the entire state of the reentrant scanner. */
02022 struct yyguts_t
02023     {
02024 
02025     /* User-defined. Not touched by flex. */
02026     YY_EXTRA_TYPE yyextra_r;
02027 
02028     /* The rest are the same as the globals declared in the non-reentrant scanner. */
02029     FILE *yyin_r, *yyout_r;
02030     size_t yy_buffer_stack_top; 
02031     size_t yy_buffer_stack_max; 
02032     YY_BUFFER_STATE * yy_buffer_stack; 
02033     char yy_hold_char;
02034     int yy_n_chars;
02035     int yyleng_r;
02036     char *yy_c_buf_p;
02037     int yy_init;
02038     int yy_start;
02039     int yy_did_buffer_switch_on_eof;
02040     int yy_start_stack_ptr;
02041     int yy_start_stack_depth;
02042     int *yy_start_stack;
02043     yy_state_type yy_last_accepting_state;
02044     char* yy_last_accepting_cpos;
02045 
02046     int yylineno_r;
02047     int yy_flex_debug_r;
02048 
02049     char *yytext_r;
02050     int yy_more_flag;
02051     int yy_more_len;
02052 
02053     YYSTYPE * yylval_r;
02054 
02055     YYLTYPE * yylloc_r;
02056 
02057     }; /* end struct yyguts_t */
02058 
02059 static int yy_init_globals (yyscan_t yyscanner );
02060 
02061     /* This must go here because YYSTYPE and YYLTYPE are included
02062      * from bison output in section 1.*/
02063     #    define yylval yyg->yylval_r
02064     
02065     #    define yylloc yyg->yylloc_r
02066     
02067 int osrllex_init (yyscan_t* scanner);
02068 
02069 int osrllex_init_extra (YY_EXTRA_TYPE user_defined,yyscan_t* scanner);
02070 
02071 /* Accessor methods to globals.
02072    These are made visible to non-reentrant scanners for convenience. */
02073 
02074 int osrllex_destroy (yyscan_t yyscanner );
02075 
02076 int osrlget_debug (yyscan_t yyscanner );
02077 
02078 void osrlset_debug (int debug_flag ,yyscan_t yyscanner );
02079 
02080 YY_EXTRA_TYPE osrlget_extra (yyscan_t yyscanner );
02081 
02082 void osrlset_extra (YY_EXTRA_TYPE user_defined ,yyscan_t yyscanner );
02083 
02084 FILE *osrlget_in (yyscan_t yyscanner );
02085 
02086 void osrlset_in  (FILE * in_str ,yyscan_t yyscanner );
02087 
02088 FILE *osrlget_out (yyscan_t yyscanner );
02089 
02090 void osrlset_out  (FILE * out_str ,yyscan_t yyscanner );
02091 
02092 int osrlget_leng (yyscan_t yyscanner );
02093 
02094 char *osrlget_text (yyscan_t yyscanner );
02095 
02096 int osrlget_lineno (yyscan_t yyscanner );
02097 
02098 void osrlset_lineno (int line_number ,yyscan_t yyscanner );
02099 
02100 YYSTYPE * osrlget_lval (yyscan_t yyscanner );
02101 
02102 void osrlset_lval (YYSTYPE * yylval_param ,yyscan_t yyscanner );
02103 
02104        YYLTYPE *osrlget_lloc (yyscan_t yyscanner );
02105     
02106         void osrlset_lloc (YYLTYPE * yylloc_param ,yyscan_t yyscanner );
02107     
02108 /* Macros after this point can all be overridden by user definitions in
02109  * section 1.
02110  */
02111 
02112 #ifndef YY_SKIP_YYWRAP
02113 #ifdef __cplusplus
02114 extern "C" int osrlwrap (yyscan_t yyscanner );
02115 #else
02116 extern int osrlwrap (yyscan_t yyscanner );
02117 #endif
02118 #endif
02119 
02120 #ifndef yytext_ptr
02121 static void yy_flex_strncpy (char *,yyconst char *,int ,yyscan_t yyscanner);
02122 #endif
02123 
02124 #ifdef YY_NEED_STRLEN
02125 static int yy_flex_strlen (yyconst char * ,yyscan_t yyscanner);
02126 #endif
02127 
02128 #ifndef YY_NO_INPUT
02129 
02130 #ifdef __cplusplus
02131 static int yyinput (yyscan_t yyscanner );
02132 #else
02133 static int input (yyscan_t yyscanner );
02134 #endif
02135 
02136 #endif
02137 
02138 /* Amount of stuff to slurp up with each read. */
02139 #ifndef YY_READ_BUF_SIZE
02140 #ifdef __ia64__
02141 /* On IA-64, the buffer size is 16k, not 8k */
02142 #define YY_READ_BUF_SIZE 16384
02143 #else
02144 #define YY_READ_BUF_SIZE 8192
02145 #endif /* __ia64__ */
02146 #endif
02147 
02148 /* Copy whatever the last rule matched to the standard output. */
02149 #ifndef ECHO
02150 /* This used to be an fputs(), but since the string might contain NUL's,
02151  * we now use fwrite().
02152  */
02153 #define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)
02154 #endif
02155 
02156 /* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
02157  * is returned in "result".
02158  */
02159 #ifndef YY_INPUT
02160 #define YY_INPUT(buf,result,max_size) \
02161         if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
02162                 { \
02163                 int c = '*'; \
02164                 size_t n; \
02165                 for ( n = 0; n < max_size && \
02166                              (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
02167                         buf[n] = (char) c; \
02168                 if ( c == '\n' ) \
02169                         buf[n++] = (char) c; \
02170                 if ( c == EOF && ferror( yyin ) ) \
02171                         YY_FATAL_ERROR( "input in flex scanner failed" ); \
02172                 result = n; \
02173                 } \
02174         else \
02175                 { \
02176                 errno=0; \
02177                 while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \
02178                         { \
02179                         if( errno != EINTR) \
02180                                 { \
02181                                 YY_FATAL_ERROR( "input in flex scanner failed" ); \
02182                                 break; \
02183                                 } \
02184                         errno=0; \
02185                         clearerr(yyin); \
02186                         } \
02187                 }\
02188 \
02189 
02190 #endif
02191 
02192 /* No semi-colon after return; correct usage is to write "yyterminate();" -
02193  * we don't want an extra ';' after the "return" because that will cause
02194  * some compilers to complain about unreachable statements.
02195  */
02196 #ifndef yyterminate
02197 #define yyterminate() return YY_NULL
02198 #endif
02199 
02200 /* Number of entries by which start-condition stack grows. */
02201 #ifndef YY_START_STACK_INCR
02202 #define YY_START_STACK_INCR 25
02203 #endif
02204 
02205 /* Report a fatal error. */
02206 #ifndef YY_FATAL_ERROR
02207 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg , yyscanner)
02208 #endif
02209 
02210 /* end tables serialization structures and prototypes */
02211 
02212 /* Default declaration of generated scanner - a define so the user can
02213  * easily add parameters.
02214  */
02215 #ifndef YY_DECL
02216 #define YY_DECL_IS_OURS 1
02217 
02218 extern int osrllex \
02219                (YYSTYPE * yylval_param,YYLTYPE * yylloc_param ,yyscan_t yyscanner);
02220 
02221 #define YY_DECL int osrllex \
02222                (YYSTYPE * yylval_param, YYLTYPE * yylloc_param , yyscan_t yyscanner)
02223 #endif /* !YY_DECL */
02224 
02225 /* Code executed at the beginning of each rule, after yytext and yyleng
02226  * have been set up.
02227  */
02228 #ifndef YY_USER_ACTION
02229 #define YY_USER_ACTION
02230 #endif
02231 
02232 /* Code executed at the end of each rule. */
02233 #ifndef YY_BREAK
02234 #define YY_BREAK break;
02235 #endif
02236 
02237 #define YY_RULE_SETUP \
02238         YY_USER_ACTION
02239 
02242 YY_DECL
02243 {
02244         register yy_state_type yy_current_state;
02245         register char *yy_cp, *yy_bp;
02246         register int yy_act;
02247     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
02248 
02249 #line 113 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02250 
02251 
02252 
02253 #line 2254 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.cpp"
02254 
02255     yylval = yylval_param;
02256 
02257     yylloc = yylloc_param;
02258 
02259         if ( !yyg->yy_init )
02260                 {
02261                 yyg->yy_init = 1;
02262 
02263 #ifdef YY_USER_INIT
02264                 YY_USER_INIT;
02265 #endif
02266 
02267                 if ( ! yyg->yy_start )
02268                         yyg->yy_start = 1;      /* first start state */
02269 
02270                 if ( ! yyin )
02271                         yyin = stdin;
02272 
02273                 if ( ! yyout )
02274                         yyout = stdout;
02275 
02276                 if ( ! YY_CURRENT_BUFFER ) {
02277                         osrlensure_buffer_stack (yyscanner);
02278                         YY_CURRENT_BUFFER_LVALUE =
02279                                 osrl_create_buffer(yyin,YY_BUF_SIZE ,yyscanner);
02280                 }
02281 
02282                 osrl_load_buffer_state(yyscanner );
02283                 }
02284 
02285         while ( 1 )             /* loops until end-of-file is reached */
02286                 {
02287                 yy_cp = yyg->yy_c_buf_p;
02288 
02289                 /* Support of yytext. */
02290                 *yy_cp = yyg->yy_hold_char;
02291 
02292                 /* yy_bp points to the position in yy_ch_buf of the start of
02293                  * the current run.
02294                  */
02295                 yy_bp = yy_cp;
02296 
02297                 yy_current_state = yyg->yy_start;
02298 yy_match:
02299                 do
02300                         {
02301                         register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
02302                         if ( yy_accept[yy_current_state] )
02303                                 {
02304                                 yyg->yy_last_accepting_state = yy_current_state;
02305                                 yyg->yy_last_accepting_cpos = yy_cp;
02306                                 }
02307                         while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
02308                                 {
02309                                 yy_current_state = (int) yy_def[yy_current_state];
02310                                 if ( yy_current_state >= 1866 )
02311                                         yy_c = yy_meta[(unsigned int) yy_c];
02312                                 }
02313                         yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
02314                         ++yy_cp;
02315                         }
02316                 while ( yy_base[yy_current_state] != 3664 );
02317 
02318 yy_find_action:
02319                 yy_act = yy_accept[yy_current_state];
02320                 if ( yy_act == 0 )
02321                         { /* have to back up */
02322                         yy_cp = yyg->yy_last_accepting_cpos;
02323                         yy_current_state = yyg->yy_last_accepting_state;
02324                         yy_act = yy_accept[yy_current_state];
02325                         }
02326 
02327                 YY_DO_BEFORE_ACTION;
02328 
02329                 if ( yy_act != YY_END_OF_BUFFER && yy_rule_can_match_eol[yy_act] )
02330                         {
02331                         int yyl;
02332                         for ( yyl = 0; yyl < yyleng; ++yyl )
02333                                 if ( yytext[yyl] == '\n' )
02334                                            
02335     do{ yylineno++;
02336         yycolumn=0;
02337     }while(0)
02338 ;
02339                         }
02340 
02341 do_action:      /* This label is used only to access EOF actions. */
02342 
02343                 switch ( yy_act )
02344         { /* beginning of action switch */
02345                         case 0: /* must back up */
02346                         /* undo the effects of YY_DO_BEFORE_ACTION */
02347                         *yy_cp = yyg->yy_hold_char;
02348                         yy_cp = yyg->yy_last_accepting_cpos;
02349                         yy_current_state = yyg->yy_last_accepting_state;
02350                         goto yy_find_action;
02351 
02352 case 1:
02353 /* rule 1 can match eol */
02354 YY_RULE_SETUP
02355 #line 116 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02356 
02357         YY_BREAK
02358 /* General patterns matched in more than one element */
02359 case 2:
02360 YY_RULE_SETUP
02361 #line 120 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02362 {YY_PRINT;  yylval->sval = yytext; return(QUOTE);}
02363         YY_BREAK
02364 case 3:
02365 YY_RULE_SETUP
02366 #line 121 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02367 {YY_PRINT;  yylval->sval = yytext; return(TWOQUOTES);}
02368         YY_BREAK
02369 case 4:
02370 /* rule 4 can match eol */
02371 YY_RULE_SETUP
02372 #line 122 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02373 { YY_PRINT;     return(GREATERTHAN);}
02374         YY_BREAK
02375 case 5:
02376 /* rule 5 can match eol */
02377 YY_RULE_SETUP
02378 #line 123 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02379 {YY_PRINT; yylval->ival = atoi(yytext); return(INTEGER);}
02380         YY_BREAK
02381 case 6:
02382 /* rule 6 can match eol */
02383 YY_RULE_SETUP
02384 #line 125 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02385 {YY_PRINT; 
02386 char *yytextEnd;
02387 yylval->dval = os_strtod_wrap( yytext, &yytextEnd);
02388         /*
02389         if( (unsigned)(yytextEnd - yytext) != strlen( yytext)){
02390                 std::ostringstream outStr;
02391                 outStr << "encountered a spurious character in the lexer" << endl;
02392                 outStr << "The first character is: ";
02393                 outStr <<  yytext;
02394                 outStr << endl;
02395                 outStr << "See line number: " << yylineno << endl;  
02396                 throw ErrorClass( outStr.str());
02397         }
02398         */
02399 return(DOUBLE);}
02400         YY_BREAK
02401 case 7:
02402 /* rule 7 can match eol */
02403 YY_RULE_SETUP
02404 #line 141 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02405 {YY_PRINT;  return(ENDOFELEMENT);}
02406         YY_BREAK
02407 /* attributes returning numeric values*/
02408 case 8:
02409 /* rule 8 can match eol */
02410 YY_RULE_SETUP
02411 #line 145 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02412 {YY_PRINT; return(NUMBEROFCONATT);}
02413         YY_BREAK
02414 case 9:
02415 /* rule 9 can match eol */
02416 YY_RULE_SETUP
02417 #line 146 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02418 {YY_PRINT; return(NUMBEROFCONSTRAINTSATT);}
02419         YY_BREAK
02420 case 10:
02421 /* rule 10 can match eol */
02422 YY_RULE_SETUP
02423 #line 147 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02424 {YY_PRINT;  return(NUMBEROFELATT);}
02425         YY_BREAK
02426 case 11:
02427 /* rule 11 can match eol */
02428 YY_RULE_SETUP
02429 #line 148 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02430 {YY_PRINT;  return(NUMBEROFENUMERATIONSATT);}
02431         YY_BREAK
02432 case 12:
02433 /* rule 12 can match eol */
02434 YY_RULE_SETUP
02435 #line 149 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02436 {YY_PRINT;  return(NUMBEROFIDXATT);}
02437         YY_BREAK
02438 case 13:
02439 /* rule 13 can match eol */
02440 YY_RULE_SETUP
02441 #line 150 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02442 {YY_PRINT;  return(NUMBEROFITEMSATT);}
02443         YY_BREAK
02444 case 14:
02445 /* rule 14 can match eol */
02446 YY_RULE_SETUP
02447 #line 151 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02448 {YY_PRINT; return(NUMBEROFOBJATT);}
02449         YY_BREAK
02450 case 15:
02451 /* rule 15 can match eol */
02452 YY_RULE_SETUP
02453 #line 152 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02454 {YY_PRINT; return(NUMBEROFOBJECTIVESATT);}
02455         YY_BREAK
02456 case 16:
02457 /* rule 16 can match eol */
02458 YY_RULE_SETUP
02459 #line 153 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02460 {YY_PRINT; return(NUMBEROFOTHERCONSTRAINTRESULTSATT);}
02461         YY_BREAK
02462 case 17:
02463 /* rule 17 can match eol */
02464 YY_RULE_SETUP
02465 #line 154 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02466 {YY_PRINT; return(NUMBEROFOTHEROBJECTIVERESULTSATT);}
02467         YY_BREAK
02468 case 18:
02469 /* rule 18 can match eol */
02470 YY_RULE_SETUP
02471 #line 155 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02472 {YY_PRINT; return(NUMBEROFOTHERRESULTSATT);}
02473         YY_BREAK
02474 case 19:
02475 /* rule 19 can match eol */
02476 YY_RULE_SETUP
02477 #line 156 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02478 {YY_PRINT; return(NUMBEROFOTHERSOLUTIONRESULTSATT);}
02479         YY_BREAK
02480 case 20:
02481 /* rule 20 can match eol */
02482 YY_RULE_SETUP
02483 #line 157 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02484 {YY_PRINT; return(NUMBEROFOTHERVARIABLERESULTSATT);}
02485         YY_BREAK
02486 case 21:
02487 /* rule 21 can match eol */
02488 YY_RULE_SETUP
02489 #line 158 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02490 {YY_PRINT; return(NUMBEROFSOLUTIONSATT);}
02491         YY_BREAK
02492 case 22:
02493 /* rule 22 can match eol */
02494 YY_RULE_SETUP
02495 #line 159 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02496 {YY_PRINT; return(NUMBEROFSOLVEROUTPUTSATT);}
02497         YY_BREAK
02498 case 23:
02499 /* rule 23 can match eol */
02500 YY_RULE_SETUP
02501 #line 160 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02502 {YY_PRINT; return(NUMBEROFSUBSTATUSESATT);}
02503         YY_BREAK
02504 case 24:
02505 /* rule 24 can match eol */
02506 YY_RULE_SETUP
02507 #line 161 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02508 {YY_PRINT; return(NUMBEROFTIMESATT);}
02509         YY_BREAK
02510 case 25:
02511 /* rule 25 can match eol */
02512 YY_RULE_SETUP
02513 #line 162 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02514 {YY_PRINT; return(NUMBEROFVARATT);}
02515         YY_BREAK
02516 case 26:
02517 /* rule 26 can match eol */
02518 YY_RULE_SETUP
02519 #line 163 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02520 {YY_PRINT; return(NUMBEROFVARIABLESATT);}
02521         YY_BREAK
02522 case 27:
02523 /* rule 27 can match eol */
02524 YY_RULE_SETUP
02525 #line 164 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02526 {YY_PRINT; return(NUMBEROFVARIDXATT);}
02527         YY_BREAK
02528 case 28:
02529 /* rule 28 can match eol */
02530 YY_RULE_SETUP
02531 #line 166 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02532 {YY_PRINT; return(IDXATT);}
02533         YY_BREAK
02534 case 29:
02535 /* rule 29 can match eol */
02536 YY_RULE_SETUP
02537 #line 167 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02538 {YY_PRINT; return(INCRATT);}
02539         YY_BREAK
02540 case 30:
02541 /* rule 30 can match eol */
02542 YY_RULE_SETUP
02543 #line 168 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02544 {YY_PRINT; return(MULTATT);}
02545         YY_BREAK
02546 case 31:
02547 /* rule 31 can match eol */
02548 YY_RULE_SETUP
02549 #line 169 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02550 {YY_PRINT; return(SIZEOFATT);}
02551         YY_BREAK
02552 case 32:
02553 /* rule 32 can match eol */
02554 YY_RULE_SETUP
02555 #line 170 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02556 {YY_PRINT; return(TARGETOBJECTIVEIDXATT);}
02557         YY_BREAK
02558 /* attributes returning strings (that are potentially empty)*/
02559 case 33:
02560 /* rule 33 can match eol */
02561 YY_RULE_SETUP
02562 #line 174 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02563 {YY_PRINT; return(EMPTYCATEGORYATT);}
02564         YY_BREAK
02565 case 34:
02566 /* rule 34 can match eol */
02567 YY_RULE_SETUP
02568 #line 175 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02569 {YY_PRINT; return(EMPTYCATEGORYATT);}
02570         YY_BREAK
02571 case 35:
02572 /* rule 35 can match eol */
02573 YY_RULE_SETUP
02574 #line 176 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02575 {YY_PRINT; BEGIN doublequoteattributetext; return(CATEGORYATT);}
02576         YY_BREAK
02577 case 36:
02578 /* rule 36 can match eol */
02579 YY_RULE_SETUP
02580 #line 177 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02581 {YY_PRINT; BEGIN singlequoteattributetext; return(CATEGORYATT);}
02582         YY_BREAK
02583 case 37:
02584 /* rule 37 can match eol */
02585 YY_RULE_SETUP
02586 #line 178 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02587 {YY_PRINT; return(EMPTYDESCRIPTIONATT);}
02588         YY_BREAK
02589 case 38:
02590 /* rule 38 can match eol */
02591 YY_RULE_SETUP
02592 #line 179 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02593 {YY_PRINT; return(EMPTYDESCRIPTIONATT);}
02594         YY_BREAK
02595 case 39:
02596 /* rule 39 can match eol */
02597 YY_RULE_SETUP
02598 #line 180 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02599 {YY_PRINT; BEGIN doublequoteattributetext; return(DESCRIPTIONATT);}
02600         YY_BREAK
02601 case 40:
02602 /* rule 40 can match eol */
02603 YY_RULE_SETUP
02604 #line 181 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02605 {YY_PRINT; BEGIN singlequoteattributetext; return(DESCRIPTIONATT);}
02606         YY_BREAK
02607 case 41:
02608 /* rule 41 can match eol */
02609 YY_RULE_SETUP
02610 #line 182 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02611 {YY_PRINT; return(EMPTYNAMEATT);}
02612         YY_BREAK
02613 case 42:
02614 /* rule 42 can match eol */
02615 YY_RULE_SETUP
02616 #line 183 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02617 {YY_PRINT; return(EMPTYNAMEATT);}
02618         YY_BREAK
02619 case 43:
02620 /* rule 43 can match eol */
02621 YY_RULE_SETUP
02622 #line 184 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02623 {YY_PRINT; BEGIN doublequoteattributetext; return(NAMEATT);}
02624         YY_BREAK
02625 case 44:
02626 /* rule 44 can match eol */
02627 YY_RULE_SETUP
02628 #line 185 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02629 {YY_PRINT; BEGIN singlequoteattributetext; return(NAMEATT);}
02630         YY_BREAK
02631 case 45:
02632 /* rule 45 can match eol */
02633 YY_RULE_SETUP
02634 #line 186 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02635 {YY_PRINT; return(EMPTYTYPEATT);}
02636         YY_BREAK
02637 case 46:
02638 /* rule 46 can match eol */
02639 YY_RULE_SETUP
02640 #line 187 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02641 {YY_PRINT; return(EMPTYTYPEATT);}
02642         YY_BREAK
02643 case 47:
02644 /* rule 47 can match eol */
02645 YY_RULE_SETUP
02646 #line 188 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02647 {YY_PRINT; BEGIN doublequoteattributetext; return(TYPEATT);}
02648         YY_BREAK
02649 case 48:
02650 /* rule 48 can match eol */
02651 YY_RULE_SETUP
02652 #line 189 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02653 {YY_PRINT; BEGIN singlequoteattributetext; return(TYPEATT);}
02654         YY_BREAK
02655 case 49:
02656 /* rule 49 can match eol */
02657 YY_RULE_SETUP
02658 #line 190 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02659 {YY_PRINT; return(EMPTYUNITATT);}
02660         YY_BREAK
02661 case 50:
02662 /* rule 50 can match eol */
02663 YY_RULE_SETUP
02664 #line 191 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02665 {YY_PRINT; return(EMPTYUNITATT);}
02666         YY_BREAK
02667 case 51:
02668 /* rule 51 can match eol */
02669 YY_RULE_SETUP
02670 #line 192 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02671 {YY_PRINT; BEGIN doublequoteattributetext; return(UNITATT);}
02672         YY_BREAK
02673 case 52:
02674 /* rule 52 can match eol */
02675 YY_RULE_SETUP
02676 #line 193 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02677 {YY_PRINT; BEGIN singlequoteattributetext; return(UNITATT);}
02678         YY_BREAK
02679 case 53:
02680 /* rule 53 can match eol */
02681 YY_RULE_SETUP
02682 #line 194 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02683 {YY_PRINT; return(EMPTYVALUEATT);}
02684         YY_BREAK
02685 case 54:
02686 /* rule 54 can match eol */
02687 YY_RULE_SETUP
02688 #line 195 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02689 {YY_PRINT; return(EMPTYVALUEATT);}
02690         YY_BREAK
02691 case 55:
02692 /* rule 55 can match eol */
02693 YY_RULE_SETUP
02694 #line 196 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02695 {YY_PRINT; BEGIN doublequoteattributetext; return(VALUEATT);}
02696         YY_BREAK
02697 case 56:
02698 /* rule 56 can match eol */
02699 YY_RULE_SETUP
02700 #line 197 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02701 {YY_PRINT; BEGIN singlequoteattributetext; return(VALUEATT);}
02702         YY_BREAK
02703 case 57:
02704 /* rule 57 can match eol */
02705 YY_RULE_SETUP
02706 #line 198 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02707 {YY_PRINT; return(EMPTYWEIGHTEDOBJECTIVESATT);}
02708         YY_BREAK
02709 case 58:
02710 /* rule 58 can match eol */
02711 YY_RULE_SETUP
02712 #line 199 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02713 {YY_PRINT; return(EMPTYWEIGHTEDOBJECTIVESATT);}
02714         YY_BREAK
02715 case 59:
02716 /* rule 59 can match eol */
02717 YY_RULE_SETUP
02718 #line 200 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02719 {YY_PRINT; BEGIN doublequoteattributetext; return(WEIGHTEDOBJECTIVESATT);}
02720         YY_BREAK
02721 case 60:
02722 /* rule 60 can match eol */
02723 YY_RULE_SETUP
02724 #line 201 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02725 {YY_PRINT; BEGIN singlequoteattributetext; return(WEIGHTEDOBJECTIVESATT);}
02726         YY_BREAK
02727 /* top level elements */
02728 case 61:
02729 /* rule 61 can match eol */
02730 YY_RULE_SETUP
02731 #line 205 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02732 {return(OSRLSTARTEMPTY);}
02733         YY_BREAK
02734 case 62:
02735 /* rule 62 can match eol */
02736 YY_RULE_SETUP
02737 #line 206 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02738 {YY_PRINT; BEGIN osrlattributetext;  return(OSRLSTART);}
02739         YY_BREAK
02740 case 63:
02741 /* rule 63 can match eol */
02742 YY_RULE_SETUP
02743 #line 207 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02744 {YY_PRINT; return(OSRLEND);}
02745         YY_BREAK
02746 case 64:
02747 /* rule 64 can match eol */
02748 YY_RULE_SETUP
02749 #line 209 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02750 {YY_PRINT; return(HEADERSTART);}
02751         YY_BREAK
02752 case 65:
02753 /* rule 65 can match eol */
02754 YY_RULE_SETUP
02755 #line 210 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02756 {YY_PRINT; return(HEADEREND);}
02757         YY_BREAK
02758 case 66:
02759 /* rule 66 can match eol */
02760 YY_RULE_SETUP
02761 #line 212 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02762 {YY_PRINT; return(GENERALSTART);}
02763         YY_BREAK
02764 case 67:
02765 /* rule 67 can match eol */
02766 YY_RULE_SETUP
02767 #line 213 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02768 {YY_PRINT; return(GENERALEND);}
02769         YY_BREAK
02770 case 68:
02771 /* rule 68 can match eol */
02772 YY_RULE_SETUP
02773 #line 215 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02774 {YY_PRINT; return(SYSTEMSTART);}
02775         YY_BREAK
02776 case 69:
02777 /* rule 69 can match eol */
02778 YY_RULE_SETUP
02779 #line 216 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02780 {YY_PRINT; return(SYSTEMEND);}
02781         YY_BREAK
02782 case 70:
02783 /* rule 70 can match eol */
02784 YY_RULE_SETUP
02785 #line 218 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02786 {YY_PRINT; return(SERVICESTART);}
02787         YY_BREAK
02788 case 71:
02789 /* rule 71 can match eol */
02790 YY_RULE_SETUP
02791 #line 219 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02792 {YY_PRINT; return(SERVICEEND);}
02793         YY_BREAK
02794 case 72:
02795 /* rule 72 can match eol */
02796 YY_RULE_SETUP
02797 #line 221 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02798 {YY_PRINT; return(JOBSTART);}
02799         YY_BREAK
02800 case 73:
02801 /* rule 73 can match eol */
02802 YY_RULE_SETUP
02803 #line 222 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02804 {YY_PRINT; return(JOBEND);}
02805         YY_BREAK
02806 case 74:
02807 /* rule 74 can match eol */
02808 YY_RULE_SETUP
02809 #line 224 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02810 {YY_PRINT; return(OPTIMIZATIONSTART);}
02811         YY_BREAK
02812 case 75:
02813 /* rule 75 can match eol */
02814 YY_RULE_SETUP
02815 #line 225 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02816 {YY_PRINT; return(OPTIMIZATIONEND);}
02817         YY_BREAK
02818 /* Remaining elements, sorted alpabetically. */
02819 case 76:
02820 /* rule 76 can match eol */
02821 YY_RULE_SETUP
02822 #line 230 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02823 {YY_PRINT;  return(ACTUALSTARTTIMESTART);}
02824         YY_BREAK
02825 case 77:
02826 /* rule 77 can match eol */
02827 YY_RULE_SETUP
02828 #line 231 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02829 {YY_PRINT;  return(ACTUALSTARTTIMEEND);}
02830         YY_BREAK
02831 case 78:
02832 /* rule 78 can match eol */
02833 YY_RULE_SETUP
02834 #line 232 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02835 {YY_PRINT; return(ATLOWERSTART);}
02836         YY_BREAK
02837 case 79:
02838 /* rule 79 can match eol */
02839 YY_RULE_SETUP
02840 #line 233 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02841 {YY_PRINT; return(ATLOWEREND);}
02842         YY_BREAK
02843 case 80:
02844 /* rule 80 can match eol */
02845 YY_RULE_SETUP
02846 #line 234 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02847 {YY_PRINT; return(ATUPPERSTART);}
02848         YY_BREAK
02849 case 81:
02850 /* rule 81 can match eol */
02851 YY_RULE_SETUP
02852 #line 235 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02853 {YY_PRINT; return(ATUPPEREND);}
02854         YY_BREAK
02855 case 82:
02856 /* rule 82 can match eol */
02857 YY_RULE_SETUP
02858 #line 236 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02859 {YY_PRINT;  return(AVAILABLECPUNUMBERSTART);}
02860         YY_BREAK
02861 case 83:
02862 /* rule 83 can match eol */
02863 YY_RULE_SETUP
02864 #line 237 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02865 {YY_PRINT; return(AVAILABLECPUNUMBEREND);}
02866         YY_BREAK
02867 case 84:
02868 /* rule 84 can match eol */
02869 YY_RULE_SETUP
02870 #line 238 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02871 {YY_PRINT;  return(AVAILABLECPUSPEEDSTART);}
02872         YY_BREAK
02873 case 85:
02874 /* rule 85 can match eol */
02875 YY_RULE_SETUP
02876 #line 239 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02877 {YY_PRINT; return(AVAILABLECPUSPEEDEND);}
02878         YY_BREAK
02879 case 86:
02880 /* rule 86 can match eol */
02881 YY_RULE_SETUP
02882 #line 240 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02883 {YY_PRINT;  return(AVAILABLEDISKSPACESTART);}
02884         YY_BREAK
02885 case 87:
02886 /* rule 87 can match eol */
02887 YY_RULE_SETUP
02888 #line 241 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02889 {YY_PRINT; return(AVAILABLEDISKSPACEEND);}
02890         YY_BREAK
02891 case 88:
02892 /* rule 88 can match eol */
02893 YY_RULE_SETUP
02894 #line 242 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02895 {YY_PRINT;  return(AVAILABLEMEMORYSTART);}
02896         YY_BREAK
02897 case 89:
02898 /* rule 89 can match eol */
02899 YY_RULE_SETUP
02900 #line 243 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02901 {YY_PRINT; return(AVAILABLEMEMORYEND);}
02902         YY_BREAK
02903 case 90:
02904 /* rule 90 can match eol */
02905 YY_RULE_SETUP
02906 #line 244 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02907 {YY_PRINT; return(BASE64START);}
02908         YY_BREAK
02909 case 91:
02910 /* rule 91 can match eol */
02911 YY_RULE_SETUP
02912 #line 245 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02913 {YY_PRINT; return(BASE64END);}
02914         YY_BREAK
02915 case 92:
02916 /* rule 92 can match eol */
02917 YY_RULE_SETUP
02918 #line 246 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02919 {YY_PRINT; return(BASICSTART);}
02920         YY_BREAK
02921 case 93:
02922 /* rule 93 can match eol */
02923 YY_RULE_SETUP
02924 #line 247 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02925 {YY_PRINT; return(BASICEND);}
02926         YY_BREAK
02927 case 94:
02928 /* rule 94 can match eol */
02929 YY_RULE_SETUP
02930 #line 248 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02931 {YY_PRINT;  return(BASISSTATUSSTART);}
02932         YY_BREAK
02933 case 95:
02934 /* rule 95 can match eol */
02935 YY_RULE_SETUP
02936 #line 249 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02937 {YY_PRINT; return(BASISSTATUSEND);}
02938         YY_BREAK
02939 case 96:
02940 /* rule 96 can match eol */
02941 YY_RULE_SETUP
02942 #line 250 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02943 {YY_PRINT;  return(BASSTATUSSTART);}
02944         YY_BREAK
02945 case 97:
02946 /* rule 97 can match eol */
02947 YY_RULE_SETUP
02948 #line 251 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02949 {YY_PRINT; return(BASSTATUSEND);}
02950         YY_BREAK
02951 case 98:
02952 /* rule 98 can match eol */
02953 YY_RULE_SETUP
02954 #line 252 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02955 {YY_PRINT; return(CONSTART);}
02956         YY_BREAK
02957 case 99:
02958 /* rule 99 can match eol */
02959 YY_RULE_SETUP
02960 #line 253 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02961 {YY_PRINT; return(CONEND);}
02962         YY_BREAK
02963 case 100:
02964 /* rule 100 can match eol */
02965 YY_RULE_SETUP
02966 #line 254 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02967 {YY_PRINT; return(CONSTRAINTSSTART);}
02968         YY_BREAK
02969 case 101:
02970 /* rule 101 can match eol */
02971 YY_RULE_SETUP
02972 #line 255 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02973 {YY_PRINT; return(CONSTRAINTSEND);}
02974         YY_BREAK
02975 case 102:
02976 /* rule 102 can match eol */
02977 YY_RULE_SETUP
02978 #line 256 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02979 {YY_PRINT;  return(CURRENTJOBCOUNTSTART);}
02980         YY_BREAK
02981 case 103:
02982 /* rule 103 can match eol */
02983 YY_RULE_SETUP
02984 #line 257 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02985 {YY_PRINT;  return(CURRENTJOBCOUNTEND);}
02986         YY_BREAK
02987 case 104:
02988 /* rule 104 can match eol */
02989 YY_RULE_SETUP
02990 #line 258 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02991 {YY_PRINT;  return(CURRENTSTATESTART);}
02992         YY_BREAK
02993 case 105:
02994 /* rule 105 can match eol */
02995 YY_RULE_SETUP
02996 #line 259 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
02997 {YY_PRINT;  return(CURRENTSTATEEND);}
02998         YY_BREAK
02999 case 106:
03000 /* rule 106 can match eol */
03001 YY_RULE_SETUP
03002 #line 260 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03003 {YY_PRINT; return(DUALVALUESSTART);}
03004         YY_BREAK
03005 case 107:
03006 /* rule 107 can match eol */
03007 YY_RULE_SETUP
03008 #line 261 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03009 {YY_PRINT; return(DUALVALUESEND);}
03010         YY_BREAK
03011 case 108:
03012 /* rule 108 can match eol */
03013 YY_RULE_SETUP
03014 #line 262 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03015 {YY_PRINT;  return(ELSTART);}
03016         YY_BREAK
03017 case 109:
03018 /* rule 109 can match eol */
03019 YY_RULE_SETUP
03020 #line 263 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03021 {YY_PRINT;  return(ELEND);}
03022         YY_BREAK
03023 case 110:
03024 /* rule 110 can match eol */
03025 YY_RULE_SETUP
03026 #line 264 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03027 {YY_PRINT;  return(ENDTIMESTART);}
03028         YY_BREAK
03029 case 111:
03030 /* rule 111 can match eol */
03031 YY_RULE_SETUP
03032 #line 265 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03033 {YY_PRINT;  return(ENDTIMEEND);}
03034         YY_BREAK
03035 case 112:
03036 /* rule 112 can match eol */
03037 YY_RULE_SETUP
03038 #line 266 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03039 {YY_PRINT;  return(ENUMERATIONSTART);}
03040         YY_BREAK
03041 case 113:
03042 /* rule 113 can match eol */
03043 YY_RULE_SETUP
03044 #line 267 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03045 {YY_PRINT;  return(ENUMERATIONEND);}
03046         YY_BREAK
03047 case 114:
03048 /* rule 114 can match eol */
03049 YY_RULE_SETUP
03050 #line 268 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03051 {YY_PRINT; return(GENERALSTATUSSTART);}
03052         YY_BREAK
03053 case 115:
03054 /* rule 115 can match eol */
03055 YY_RULE_SETUP
03056 #line 269 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03057 {YY_PRINT; return(GENERALSTATUSEND);}
03058         YY_BREAK
03059 case 116:
03060 /* rule 116 can match eol */
03061 YY_RULE_SETUP
03062 #line 270 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03063 {YY_PRINT;  return(INSTANCENAMESTART);}
03064         YY_BREAK
03065 case 117:
03066 /* rule 117 can match eol */
03067 YY_RULE_SETUP
03068 #line 271 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03069 {YY_PRINT;  return(INSTANCENAMEEND);}
03070         YY_BREAK
03071 case 118:
03072 /* rule 118 can match eol */
03073 YY_RULE_SETUP
03074 #line 272 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03075 {YY_PRINT; return(IDXSTART);}
03076         YY_BREAK
03077 case 119:
03078 /* rule 119 can match eol */
03079 YY_RULE_SETUP
03080 #line 273 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03081 {YY_PRINT; return(IDXEND);}
03082         YY_BREAK
03083 case 120:
03084 /* rule 120 can match eol */
03085 YY_RULE_SETUP
03086 #line 274 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03087 {YY_PRINT; return(ISFREESTART);}
03088         YY_BREAK
03089 case 121:
03090 /* rule 121 can match eol */
03091 YY_RULE_SETUP
03092 #line 275 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03093 {YY_PRINT; return(ISFREEEND);}
03094         YY_BREAK
03095 case 122:
03096 /* rule 122 can match eol */
03097 YY_RULE_SETUP
03098 #line 276 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03099 {YY_PRINT;  return(JOBIDSTART);}
03100         YY_BREAK
03101 case 123:
03102 /* rule 123 can match eol */
03103 YY_RULE_SETUP
03104 #line 277 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03105 {YY_PRINT;  return(JOBIDEND);}
03106         YY_BREAK
03107 case 124:
03108 /* rule 124 can match eol */
03109 YY_RULE_SETUP
03110 #line 278 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03111 {YY_PRINT;  return(MESSAGESTART);}
03112         YY_BREAK
03113 case 125:
03114 /* rule 125 can match eol */
03115 YY_RULE_SETUP
03116 #line 279 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03117 {YY_PRINT;  return(MESSAGEEND);}
03118         YY_BREAK
03119 case 126:
03120 /* rule 126 can match eol */
03121 YY_RULE_SETUP
03122 #line 280 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03123 {YY_PRINT; return(OBJSTART);}
03124         YY_BREAK
03125 case 127:
03126 /* rule 127 can match eol */
03127 YY_RULE_SETUP
03128 #line 281 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03129 {YY_PRINT; return(OBJEND);}
03130         YY_BREAK
03131 case 128:
03132 /* rule 128 can match eol */
03133 YY_RULE_SETUP
03134 #line 282 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03135 {YY_PRINT; return(OBJECTIVESSTART);}
03136         YY_BREAK
03137 case 129:
03138 /* rule 129 can match eol */
03139 YY_RULE_SETUP
03140 #line 283 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03141 {YY_PRINT; return(OBJECTIVESEND);}
03142         YY_BREAK
03143 case 130:
03144 /* rule 130 can match eol */
03145 YY_RULE_SETUP
03146 #line 284 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03147 {YY_PRINT;  return(OPTIMIZATIONSOLUTIONSTATUSSTART);}
03148         YY_BREAK
03149 case 131:
03150 /* rule 131 can match eol */
03151 YY_RULE_SETUP
03152 #line 285 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03153 {YY_PRINT; return(OPTIMIZATIONSOLUTIONSTATUSEND);}
03154         YY_BREAK
03155 case 132:
03156 /* rule 132 can match eol */
03157 YY_RULE_SETUP
03158 #line 286 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03159 {YY_PRINT; return(OTHERSTART);}
03160         YY_BREAK
03161 case 133:
03162 /* rule 133 can match eol */
03163 YY_RULE_SETUP
03164 #line 287 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03165 {YY_PRINT; return(OTHEREND);}
03166         YY_BREAK
03167 case 134:
03168 /* rule 134 can match eol */
03169 YY_RULE_SETUP
03170 #line 288 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03171 {YY_PRINT;  return(OTHERRESULTSSTART);}
03172         YY_BREAK
03173 case 135:
03174 /* rule 135 can match eol */
03175 YY_RULE_SETUP
03176 #line 289 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03177 {YY_PRINT;  return(OTHERRESULTSEND);}
03178         YY_BREAK
03179 case 136:
03180 /* rule 136 can match eol */
03181 YY_RULE_SETUP
03182 #line 290 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03183 {YY_PRINT; return(OTHERSOLUTIONRESULTSTART);}
03184         YY_BREAK
03185 case 137:
03186 /* rule 137 can match eol */
03187 YY_RULE_SETUP
03188 #line 291 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03189 {YY_PRINT;  return(OTHERSOLUTIONRESULTEND);}
03190         YY_BREAK
03191 case 138:
03192 /* rule 138 can match eol */
03193 YY_RULE_SETUP
03194 #line 292 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03195 {YY_PRINT; return(OTHERSOLUTIONRESULTSSTART);}
03196         YY_BREAK
03197 case 139:
03198 /* rule 139 can match eol */
03199 YY_RULE_SETUP
03200 #line 293 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03201 {YY_PRINT; return(OTHERSOLUTIONRESULTSEND);}
03202         YY_BREAK
03203 case 140:
03204 /* rule 140 can match eol */
03205 YY_RULE_SETUP
03206 #line 294 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03207 {YY_PRINT;  return(OTHERSOLVEROUTPUTSTART);}
03208         YY_BREAK
03209 case 141:
03210 /* rule 141 can match eol */
03211 YY_RULE_SETUP
03212 #line 295 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03213 {YY_PRINT;  return(OTHERSOLVEROUTPUTEND);}
03214         YY_BREAK
03215 case 142:
03216 /* rule 142 can match eol */
03217 YY_RULE_SETUP
03218 #line 296 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03219 {YY_PRINT;  return(SCHEDULEDSTARTTIMESTART);}
03220         YY_BREAK
03221 case 143:
03222 /* rule 143 can match eol */
03223 YY_RULE_SETUP
03224 #line 297 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03225 {YY_PRINT;  return(SCHEDULEDSTARTTIMEEND);}
03226         YY_BREAK
03227 case 144:
03228 /* rule 144 can match eol */
03229 YY_RULE_SETUP
03230 #line 298 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03231 {YY_PRINT;  return(SERVICENAMESTART);}
03232         YY_BREAK
03233 case 145:
03234 /* rule 145 can match eol */
03235 YY_RULE_SETUP
03236 #line 299 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03237 {YY_PRINT;  return(SERVICENAMEEND);}
03238         YY_BREAK
03239 case 146:
03240 /* rule 146 can match eol */
03241 YY_RULE_SETUP
03242 #line 300 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03243 {YY_PRINT;  return(SERVICEURISTART);}
03244         YY_BREAK
03245 case 147:
03246 /* rule 147 can match eol */
03247 YY_RULE_SETUP
03248 #line 301 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03249 {YY_PRINT;  return(SERVICEURIEND);}
03250         YY_BREAK
03251 case 148:
03252 /* rule 148 can match eol */
03253 YY_RULE_SETUP
03254 #line 302 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03255 {YY_PRINT;  return(SERVICEUTILIZATIONSTART);}
03256         YY_BREAK
03257 case 149:
03258 /* rule 149 can match eol */
03259 YY_RULE_SETUP
03260 #line 303 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03261 {YY_PRINT;  return(SERVICEUTILIZATIONEND);}
03262         YY_BREAK
03263 case 150:
03264 /* rule 150 can match eol */
03265 YY_RULE_SETUP
03266 #line 304 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03267 {YY_PRINT; return(SOLUTIONSTART);}
03268         YY_BREAK
03269 case 151:
03270 /* rule 151 can match eol */
03271 YY_RULE_SETUP
03272 #line 305 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03273 {YY_PRINT; return(SOLUTIONEND);}
03274         YY_BREAK
03275 case 152:
03276 /* rule 152 can match eol */
03277 YY_RULE_SETUP
03278 #line 306 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03279 {YY_PRINT;  return(SOLVERINVOKEDSTART);}
03280         YY_BREAK
03281 case 153:
03282 /* rule 153 can match eol */
03283 YY_RULE_SETUP
03284 #line 307 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03285 {YY_PRINT;  return(SOLVERINVOKEDEND);}
03286         YY_BREAK
03287 case 154:
03288 /* rule 154 can match eol */
03289 YY_RULE_SETUP
03290 #line 308 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03291 {YY_PRINT;  return(SOLVEROUTPUTSTART);}
03292         YY_BREAK
03293 case 155:
03294 /* rule 155 can match eol */
03295 YY_RULE_SETUP
03296 #line 309 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03297 {YY_PRINT;  return(SOLVEROUTPUTEND);}
03298         YY_BREAK
03299 case 156:
03300 /* rule 156 can match eol */
03301 YY_RULE_SETUP
03302 #line 310 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03303 {YY_PRINT; return(STATUSSTART);}
03304         YY_BREAK
03305 case 157:
03306 /* rule 157 can match eol */
03307 YY_RULE_SETUP
03308 #line 311 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03309 {YY_PRINT; return(STATUSEND);}
03310         YY_BREAK
03311 case 158:
03312 /* rule 158 can match eol */
03313 YY_RULE_SETUP
03314 #line 312 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03315 {YY_PRINT;  return(SUBMITTIMESTART);}
03316         YY_BREAK
03317 case 159:
03318 /* rule 159 can match eol */
03319 YY_RULE_SETUP
03320 #line 313 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03321 {YY_PRINT;  return(SUBMITTIMEEND);}
03322         YY_BREAK
03323 case 160:
03324 /* rule 160 can match eol */
03325 YY_RULE_SETUP
03326 #line 314 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03327 {YY_PRINT;  return(SUBSTATUSSTART);}
03328         YY_BREAK
03329 case 161:
03330 /* rule 161 can match eol */
03331 YY_RULE_SETUP
03332 #line 315 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03333 {YY_PRINT;  return(SUBSTATUSEND);}
03334         YY_BREAK
03335 case 162:
03336 /* rule 162 can match eol */
03337 YY_RULE_SETUP
03338 #line 316 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03339 {YY_PRINT; return(SUPERBASICSTART);}
03340         YY_BREAK
03341 case 163:
03342 /* rule 163 can match eol */
03343 YY_RULE_SETUP
03344 #line 317 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03345 {YY_PRINT; return(SUPERBASICEND);}
03346         YY_BREAK
03347 case 164:
03348 /* rule 164 can match eol */
03349 YY_RULE_SETUP
03350 #line 318 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03351 {YY_PRINT;  return(SYSTEMINFORMATIONSTART);}
03352         YY_BREAK
03353 case 165:
03354 /* rule 165 can match eol */
03355 YY_RULE_SETUP
03356 #line 319 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03357 {YY_PRINT;  return(SYSTEMINFORMATIONEND);}
03358         YY_BREAK
03359 case 166:
03360 /* rule 166 can match eol */
03361 YY_RULE_SETUP
03362 #line 320 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03363 {YY_PRINT;  return(TIMESTART);}
03364         YY_BREAK
03365 case 167:
03366 /* rule 167 can match eol */
03367 YY_RULE_SETUP
03368 #line 321 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03369 {YY_PRINT;  return(TIMEEND);}
03370         YY_BREAK
03371 case 168:
03372 /* rule 168 can match eol */
03373 YY_RULE_SETUP
03374 #line 322 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03375 {YY_PRINT;  return(TIMESERVICESTARTEDSTART);}
03376         YY_BREAK
03377 case 169:
03378 /* rule 169 can match eol */
03379 YY_RULE_SETUP
03380 #line 323 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03381 {YY_PRINT;  return(TIMESERVICESTARTEDEND);}
03382         YY_BREAK
03383 case 170:
03384 /* rule 170 can match eol */
03385 YY_RULE_SETUP
03386 #line 324 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03387 {YY_PRINT;  return(TIMESTAMPSTART);}
03388         YY_BREAK
03389 case 171:
03390 /* rule 171 can match eol */
03391 YY_RULE_SETUP
03392 #line 325 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03393 {YY_PRINT;  return(TIMESTAMPEND);}
03394         YY_BREAK
03395 case 172:
03396 /* rule 172 can match eol */
03397 YY_RULE_SETUP
03398 #line 326 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03399 {YY_PRINT; return(TIMINGINFORMATIONSTART);}
03400         YY_BREAK
03401 case 173:
03402 /* rule 173 can match eol */
03403 YY_RULE_SETUP
03404 #line 327 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03405 {YY_PRINT;  return(TIMINGINFORMATIONEND);}
03406         YY_BREAK
03407 case 174:
03408 /* rule 174 can match eol */
03409 YY_RULE_SETUP
03410 #line 328 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03411 {YY_PRINT;  return(TOTALJOBSSOFARSTART);}
03412         YY_BREAK
03413 case 175:
03414 /* rule 175 can match eol */
03415 YY_RULE_SETUP
03416 #line 329 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03417 {YY_PRINT;  return(TOTALJOBSSOFAREND);}
03418         YY_BREAK
03419 case 176:
03420 /* rule 176 can match eol */
03421 YY_RULE_SETUP
03422 #line 330 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03423 {YY_PRINT; return(UNKNOWNSTART);}
03424         YY_BREAK
03425 case 177:
03426 /* rule 177 can match eol */
03427 YY_RULE_SETUP
03428 #line 331 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03429 {YY_PRINT; return(UNKNOWNEND);}
03430         YY_BREAK
03431 case 178:
03432 /* rule 178 can match eol */
03433 YY_RULE_SETUP
03434 #line 332 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03435 {YY_PRINT;  return(USEDCPUNUMBERSTART);}
03436         YY_BREAK
03437 case 179:
03438 /* rule 179 can match eol */
03439 YY_RULE_SETUP
03440 #line 333 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03441 {YY_PRINT;  return(USEDCPUNUMBEREND);}
03442         YY_BREAK
03443 case 180:
03444 /* rule 180 can match eol */
03445 YY_RULE_SETUP
03446 #line 334 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03447 {YY_PRINT;  return(USEDCPUSPEEDSTART);}
03448         YY_BREAK
03449 case 181:
03450 /* rule 181 can match eol */
03451 YY_RULE_SETUP
03452 #line 335 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03453 {YY_PRINT;  return(USEDCPUSPEEDEND);} 
03454         YY_BREAK
03455 case 182:
03456 /* rule 182 can match eol */
03457 YY_RULE_SETUP
03458 #line 336 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03459 {YY_PRINT;  return(USEDDISKSPACESTART);}
03460         YY_BREAK
03461 case 183:
03462 /* rule 183 can match eol */
03463 YY_RULE_SETUP
03464 #line 337 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03465 {YY_PRINT;  return(USEDDISKSPACEEND);}
03466         YY_BREAK
03467 case 184:
03468 /* rule 184 can match eol */
03469 YY_RULE_SETUP
03470 #line 338 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03471 {YY_PRINT;  return(USEDMEMORYSTART);}
03472         YY_BREAK
03473 case 185:
03474 /* rule 185 can match eol */
03475 YY_RULE_SETUP
03476 #line 339 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03477 {YY_PRINT;  return(USEDMEMORYEND);}
03478         YY_BREAK
03479 case 186:
03480 /* rule 186 can match eol */
03481 YY_RULE_SETUP
03482 #line 340 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03483 {YY_PRINT; return(VALUESSTART);}
03484         YY_BREAK
03485 case 187:
03486 /* rule 187 can match eol */
03487 YY_RULE_SETUP
03488 #line 341 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03489 {YY_PRINT; return(VALUESEND);}
03490         YY_BREAK
03491 case 188:
03492 /* rule 188 can match eol */
03493 YY_RULE_SETUP
03494 #line 342 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03495 {YY_PRINT;  return(VALUESSTRINGSTART);}
03496         YY_BREAK
03497 case 189:
03498 /* rule 189 can match eol */
03499 YY_RULE_SETUP
03500 #line 343 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03501 {YY_PRINT;  return(VALUESSTRINGEND);}
03502         YY_BREAK
03503 case 190:
03504 /* rule 190 can match eol */
03505 YY_RULE_SETUP
03506 #line 344 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03507 {YY_PRINT; return(VARSTART);}
03508         YY_BREAK
03509 case 191:
03510 /* rule 191 can match eol */
03511 YY_RULE_SETUP
03512 #line 345 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03513 {YY_PRINT; return(VAREND);}
03514         YY_BREAK
03515 case 192:
03516 /* rule 192 can match eol */
03517 YY_RULE_SETUP
03518 #line 346 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03519 {YY_PRINT; return(VARIABLESSTART);}
03520         YY_BREAK
03521 case 193:
03522 /* rule 193 can match eol */
03523 YY_RULE_SETUP
03524 #line 347 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03525 {YY_PRINT; return(VARIABLESEND);}
03526         YY_BREAK
03527 case 194:
03528 /* rule 194 can match eol */
03529 YY_RULE_SETUP
03530 #line 348 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03531 {YY_PRINT; return(VARIDXSTART);}
03532         YY_BREAK
03533 case 195:
03534 /* rule 195 can match eol */
03535 YY_RULE_SETUP
03536 #line 349 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03537 {YY_PRINT; return(VARIDXEND);}
03538         YY_BREAK
03539 /* The <item> element and the children of the option header are treated specially because they may legitimately contain special characters */
03540 case 196:
03541 /* rule 196 can match eol */
03542 YY_RULE_SETUP
03543 #line 354 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03544 {  YY_PRINT;  return(ITEMEMPTY);}
03545         YY_BREAK
03546 case 197:
03547 /* rule 197 can match eol */
03548 YY_RULE_SETUP
03549 #line 355 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03550 { YY_PRINT; BEGIN itemtext; return(ITEMSTART);}
03551         YY_BREAK
03552 case 198:
03553 /* rule 198 can match eol */
03554 YY_RULE_SETUP
03555 #line 356 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03556 { YY_PRINT; return(ITEMEND);}
03557         YY_BREAK
03558 case 199:
03559 /* rule 199 can match eol */
03560 YY_RULE_SETUP
03561 #line 357 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03562 { YY_PRINT; return(ITEMSTARTANDEND);}
03563         YY_BREAK
03564 case 200:
03565 /* rule 200 can match eol */
03566 YY_RULE_SETUP
03567 #line 359 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03568 {  YY_PRINT;  return(FILENAMEEMPTY);}
03569         YY_BREAK
03570 case 201:
03571 /* rule 201 can match eol */
03572 YY_RULE_SETUP
03573 #line 360 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03574 { YY_PRINT; BEGIN itemtext; return(FILENAMESTART);}
03575         YY_BREAK
03576 case 202:
03577 /* rule 202 can match eol */
03578 YY_RULE_SETUP
03579 #line 361 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03580 { YY_PRINT; return(FILENAMEEND);}
03581         YY_BREAK
03582 case 203:
03583 /* rule 203 can match eol */
03584 YY_RULE_SETUP
03585 #line 362 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03586 { YY_PRINT; return(FILENAMESTARTANDEND);}
03587         YY_BREAK
03588 case 204:
03589 /* rule 204 can match eol */
03590 YY_RULE_SETUP
03591 #line 364 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03592 {  YY_PRINT;  return(FILESOURCEEMPTY);}
03593         YY_BREAK
03594 case 205:
03595 /* rule 205 can match eol */
03596 YY_RULE_SETUP
03597 #line 365 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03598 { YY_PRINT; BEGIN itemtext; return(FILESOURCESTART);}
03599         YY_BREAK
03600 case 206:
03601 /* rule 206 can match eol */
03602 YY_RULE_SETUP
03603 #line 366 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03604 { YY_PRINT; return(FILESOURCEEND);}
03605         YY_BREAK
03606 case 207:
03607 /* rule 207 can match eol */
03608 YY_RULE_SETUP
03609 #line 367 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03610 { YY_PRINT; return(FILESOURCESTARTANDEND);}
03611         YY_BREAK
03612 case 208:
03613 /* rule 208 can match eol */
03614 YY_RULE_SETUP
03615 #line 369 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03616 {  YY_PRINT;  return(FILEDESCRIPTIONEMPTY);}
03617         YY_BREAK
03618 case 209:
03619 /* rule 209 can match eol */
03620 YY_RULE_SETUP
03621 #line 370 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03622 { YY_PRINT; BEGIN itemtext; return(FILEDESCRIPTIONSTART);}
03623         YY_BREAK
03624 case 210:
03625 /* rule 210 can match eol */
03626 YY_RULE_SETUP
03627 #line 371 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03628 { YY_PRINT; return(FILEDESCRIPTIONEND);}
03629         YY_BREAK
03630 case 211:
03631 /* rule 211 can match eol */
03632 YY_RULE_SETUP
03633 #line 372 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03634 { YY_PRINT; return(FILEDESCRIPTIONSTARTANDEND);}
03635         YY_BREAK
03636 case 212:
03637 /* rule 212 can match eol */
03638 YY_RULE_SETUP
03639 #line 374 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03640 {  YY_PRINT;  return(FILECREATOREMPTY);}
03641         YY_BREAK
03642 case 213:
03643 /* rule 213 can match eol */
03644 YY_RULE_SETUP
03645 #line 375 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03646 { YY_PRINT; BEGIN itemtext; return(FILECREATORSTART);}
03647         YY_BREAK
03648 case 214:
03649 /* rule 214 can match eol */
03650 YY_RULE_SETUP
03651 #line 376 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03652 { YY_PRINT; return(FILECREATOREND);}
03653         YY_BREAK
03654 case 215:
03655 /* rule 215 can match eol */
03656 YY_RULE_SETUP
03657 #line 377 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03658 { YY_PRINT; return(FILECREATORSTARTANDEND);}
03659         YY_BREAK
03660 case 216:
03661 /* rule 216 can match eol */
03662 YY_RULE_SETUP
03663 #line 379 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03664 {  YY_PRINT;  return(FILELICENCEEMPTY);}
03665         YY_BREAK
03666 case 217:
03667 /* rule 217 can match eol */
03668 YY_RULE_SETUP
03669 #line 380 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03670 { YY_PRINT; BEGIN itemtext; return(FILELICENCESTART);}
03671         YY_BREAK
03672 case 218:
03673 /* rule 218 can match eol */
03674 YY_RULE_SETUP
03675 #line 381 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03676 { YY_PRINT; return(FILELICENCEEND);}
03677         YY_BREAK
03678 case 219:
03679 /* rule 219 can match eol */
03680 YY_RULE_SETUP
03681 #line 382 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03682 { YY_PRINT; return(FILELICENCESTARTANDEND);}
03683         YY_BREAK
03684 /* environments and comments */
03685 case 220:
03686 /* rule 220 can match eol */
03687 YY_RULE_SETUP
03688 #line 386 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03689 { YY_PRINT;  yylval->sval = strdup( yytext);   yyextra->errorText = yylval->sval;    /*yylval->sval = yytext;*/  return (ELEMENTTEXT); }
03690         YY_BREAK
03691 case 221:
03692 /* rule 221 can match eol */
03693 YY_RULE_SETUP
03694 #line 387 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03695 { YY_PRINT;  yylval->sval = strdup( yytext); BEGIN 0;  yyextra->errorText = yylval->sval;    /*yylval->sval = yytext;*/  return (ITEMTEXT); }
03696         YY_BREAK
03697 case 222:
03698 YY_RULE_SETUP
03699 #line 389 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03700 BEGIN comment;
03701         YY_BREAK
03702 case 223:
03703 #line 391 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03704 case 224:
03705 /* rule 224 can match eol */
03706 YY_RULE_SETUP
03707 #line 391 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03708 ;
03709         YY_BREAK
03710 case 225:
03711 YY_RULE_SETUP
03712 #line 392 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03713 BEGIN 0;
03714         YY_BREAK
03715 case 226:
03716 YY_RULE_SETUP
03717 #line 394 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03718 BEGIN xmldeclaration;
03719         YY_BREAK
03720 case 227:
03721 #line 396 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03722 case 228:
03723 /* rule 228 can match eol */
03724 YY_RULE_SETUP
03725 #line 396 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03726 ;
03727         YY_BREAK
03728 case 229:
03729 YY_RULE_SETUP
03730 #line 397 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03731 BEGIN 0;
03732         YY_BREAK
03733 case 230:
03734 /* rule 230 can match eol */
03735 YY_RULE_SETUP
03736 #line 400 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03737 {YY_PRINT;  BEGIN 0; yylval->sval = strdup(yytext);  /*yylval->sval = yytext;*/ return(ATTRIBUTETEXT);}
03738         YY_BREAK
03739 case 231:
03740 /* rule 231 can match eol */
03741 YY_RULE_SETUP
03742 #line 401 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03743 {YY_PRINT;  BEGIN 0; yylval->sval = strdup(yytext);  /*yylval->sval = yytext;*/ return(ATTRIBUTETEXT);}
03744         YY_BREAK
03745 case 232:
03746 /* rule 232 can match eol */
03747 YY_RULE_SETUP
03748 #line 402 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03749 {YY_PRINT;  BEGIN 0; /*yylval->sval = strdup(yytext);*/  yylval->sval = yytext; return(OSRLATTRIBUTETEXT);}
03750         YY_BREAK
03751 /* error trap */
03752 case 233:
03753 /* rule 233 can match eol */
03754 YY_RULE_SETUP
03755 #line 406 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03756 { 
03757         std::string error;
03758         std::ostringstream outStr;
03759         outStr << "encountered a spurious character in the lexer" << std::endl;
03760         outStr << "The first character is: ";
03761         outStr <<  yytext;
03762         outStr << std::endl;
03763         outStr << "See line number: " << yylineno << std::endl;  
03764         error = outStr.str();
03765         throw ErrorClass( error);
03766 }
03767         YY_BREAK
03768 case 234:
03769 YY_RULE_SETUP
03770 #line 418 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
03771 ECHO;
03772         YY_BREAK
03773 #line 3774 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.cpp"
03774 case YY_STATE_EOF(INITIAL):
03775 case YY_STATE_EOF(osrlattributetext):
03776 case YY_STATE_EOF(doublequoteattributetext):
03777 case YY_STATE_EOF(singlequoteattributetext):
03778 case YY_STATE_EOF(startelement):
03779 case YY_STATE_EOF(elementtext):
03780 case YY_STATE_EOF(itemtext):
03781 case YY_STATE_EOF(comment):
03782 case YY_STATE_EOF(xmldeclaration):
03783         yyterminate();
03784 
03785         case YY_END_OF_BUFFER:
03786                 {
03787                 /* Amount of text matched not including the EOB char. */
03788                 int yy_amount_of_matched_text = (int) (yy_cp - yyg->yytext_ptr) - 1;
03789 
03790                 /* Undo the effects of YY_DO_BEFORE_ACTION. */
03791                 *yy_cp = yyg->yy_hold_char;
03792                 YY_RESTORE_YY_MORE_OFFSET
03793 
03794                 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
03795                         {
03796                         /* We're scanning a new file or input source.  It's
03797                          * possible that this happened because the user
03798                          * just pointed yyin at a new source and called
03799                          * osrllex().  If so, then we have to assure
03800                          * consistency between YY_CURRENT_BUFFER and our
03801                          * globals.  Here is the right place to do so, because
03802                          * this is the first action (other than possibly a
03803                          * back-up) that will match for the new input source.
03804                          */
03805                         yyg->yy_n_chars = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
03806                         YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
03807                         YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
03808                         }
03809 
03810                 /* Note that here we test for yy_c_buf_p "<=" to the position
03811                  * of the first EOB in the buffer, since yy_c_buf_p will
03812                  * already have been incremented past the NUL character
03813                  * (since all states make transitions on EOB to the
03814                  * end-of-buffer state).  Contrast this with the test
03815                  * in input().
03816                  */
03817                 if ( yyg->yy_c_buf_p <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars] )
03818                         { /* This was really a NUL. */
03819                         yy_state_type yy_next_state;
03820 
03821                         yyg->yy_c_buf_p = yyg->yytext_ptr + yy_amount_of_matched_text;
03822 
03823                         yy_current_state = yy_get_previous_state( yyscanner );
03824 
03825                         /* Okay, we're now positioned to make the NUL
03826                          * transition.  We couldn't have
03827                          * yy_get_previous_state() go ahead and do it
03828                          * for us because it doesn't know how to deal
03829                          * with the possibility of jamming (and we don't
03830                          * want to build jamming into it because then it
03831                          * will run more slowly).
03832                          */
03833 
03834                         yy_next_state = yy_try_NUL_trans( yy_current_state , yyscanner);
03835 
03836                         yy_bp = yyg->yytext_ptr + YY_MORE_ADJ;
03837 
03838                         if ( yy_next_state )
03839                                 {
03840                                 /* Consume the NUL. */
03841                                 yy_cp = ++yyg->yy_c_buf_p;
03842                                 yy_current_state = yy_next_state;
03843                                 goto yy_match;
03844                                 }
03845 
03846                         else
03847                                 {
03848                                 yy_cp = yyg->yy_c_buf_p;
03849                                 goto yy_find_action;
03850                                 }
03851                         }
03852 
03853                 else switch ( yy_get_next_buffer( yyscanner ) )
03854                         {
03855                         case EOB_ACT_END_OF_FILE:
03856                                 {
03857                                 yyg->yy_did_buffer_switch_on_eof = 0;
03858 
03859                                 if ( osrlwrap(yyscanner ) )
03860                                         {
03861                                         /* Note: because we've taken care in
03862                                          * yy_get_next_buffer() to have set up
03863                                          * yytext, we can now set up
03864                                          * yy_c_buf_p so that if some total
03865                                          * hoser (like flex itself) wants to
03866                                          * call the scanner after we return the
03867                                          * YY_NULL, it'll still work - another
03868                                          * YY_NULL will get returned.
03869                                          */
03870                                         yyg->yy_c_buf_p = yyg->yytext_ptr + YY_MORE_ADJ;
03871 
03872                                         yy_act = YY_STATE_EOF(YY_START);
03873                                         goto do_action;
03874                                         }
03875 
03876                                 else
03877                                         {
03878                                         if ( ! yyg->yy_did_buffer_switch_on_eof )
03879                                                 YY_NEW_FILE;
03880                                         }
03881                                 break;
03882                                 }
03883 
03884                         case EOB_ACT_CONTINUE_SCAN:
03885                                 yyg->yy_c_buf_p =
03886                                         yyg->yytext_ptr + yy_amount_of_matched_text;
03887 
03888                                 yy_current_state = yy_get_previous_state( yyscanner );
03889 
03890                                 yy_cp = yyg->yy_c_buf_p;
03891                                 yy_bp = yyg->yytext_ptr + YY_MORE_ADJ;
03892                                 goto yy_match;
03893 
03894                         case EOB_ACT_LAST_MATCH:
03895                                 yyg->yy_c_buf_p =
03896                                 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars];
03897 
03898                                 yy_current_state = yy_get_previous_state( yyscanner );
03899 
03900                                 yy_cp = yyg->yy_c_buf_p;
03901                                 yy_bp = yyg->yytext_ptr + YY_MORE_ADJ;
03902                                 goto yy_find_action;
03903                         }
03904                 break;
03905                 }
03906 
03907         default:
03908                 YY_FATAL_ERROR(
03909                         "fatal flex scanner internal error--no action found" );
03910         } /* end of action switch */
03911                 } /* end of scanning one token */
03912 } /* end of osrllex */
03913 
03914 /* yy_get_next_buffer - try to read in a new buffer
03915  *
03916  * Returns a code representing an action:
03917  *      EOB_ACT_LAST_MATCH -
03918  *      EOB_ACT_CONTINUE_SCAN - continue scanning from current position
03919  *      EOB_ACT_END_OF_FILE - end of file
03920  */
03921 static int yy_get_next_buffer (yyscan_t yyscanner)
03922 {
03923     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
03924         register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
03925         register char *source = yyg->yytext_ptr;
03926         register int number_to_move, i;
03927         int ret_val;
03928 
03929         if ( yyg->yy_c_buf_p > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars + 1] )
03930                 YY_FATAL_ERROR(
03931                 "fatal flex scanner internal error--end of buffer missed" );
03932 
03933         if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
03934                 { /* Don't try to fill the buffer, so this is an EOF. */
03935                 if ( yyg->yy_c_buf_p - yyg->yytext_ptr - YY_MORE_ADJ == 1 )
03936                         {
03937                         /* We matched a single character, the EOB, so
03938                          * treat this as a final EOF.
03939                          */
03940                         return EOB_ACT_END_OF_FILE;
03941                         }
03942 
03943                 else
03944                         {
03945                         /* We matched some text prior to the EOB, first
03946                          * process it.
03947                          */
03948                         return EOB_ACT_LAST_MATCH;
03949                         }
03950                 }
03951 
03952         /* Try to read more data. */
03953 
03954         /* First move last chars to start of buffer. */
03955         number_to_move = (int) (yyg->yy_c_buf_p - yyg->yytext_ptr) - 1;
03956 
03957         for ( i = 0; i < number_to_move; ++i )
03958                 *(dest++) = *(source++);
03959 
03960         if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
03961                 /* don't do the read, it's not guaranteed to return an EOF,
03962                  * just force an EOF
03963                  */
03964                 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars = 0;
03965 
03966         else
03967                 {
03968                         int num_to_read =
03969                         YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
03970 
03971                 while ( num_to_read <= 0 )
03972                         { /* Not enough room in the buffer - grow it. */
03973 
03974                         /* just a shorter name for the current buffer */
03975                         YY_BUFFER_STATE b = YY_CURRENT_BUFFER;
03976 
03977                         int yy_c_buf_p_offset =
03978                                 (int) (yyg->yy_c_buf_p - b->yy_ch_buf);
03979 
03980                         if ( b->yy_is_our_buffer )
03981                                 {
03982                                 int new_size = b->yy_buf_size * 2;
03983 
03984                                 if ( new_size <= 0 )
03985                                         b->yy_buf_size += b->yy_buf_size / 8;
03986                                 else
03987                                         b->yy_buf_size *= 2;
03988 
03989                                 b->yy_ch_buf = (char *)
03990                                         /* Include room in for 2 EOB chars. */
03991                                         osrlrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 ,yyscanner );
03992                                 }
03993                         else
03994                                 /* Can't grow it, we don't own it. */
03995                                 b->yy_ch_buf = 0;
03996 
03997                         if ( ! b->yy_ch_buf )
03998                                 YY_FATAL_ERROR(
03999                                 "fatal error - scanner input buffer overflow" );
04000 
04001                         yyg->yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
04002 
04003                         num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
04004                                                 number_to_move - 1;
04005 
04006                         }
04007 
04008                 if ( num_to_read > YY_READ_BUF_SIZE )
04009                         num_to_read = YY_READ_BUF_SIZE;
04010 
04011                 /* Read in more data. */
04012                 YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
04013                         yyg->yy_n_chars, (size_t) num_to_read );
04014 
04015                 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars;
04016                 }
04017 
04018         if ( yyg->yy_n_chars == 0 )
04019                 {
04020                 if ( number_to_move == YY_MORE_ADJ )
04021                         {
04022                         ret_val = EOB_ACT_END_OF_FILE;
04023                         osrlrestart(yyin  ,yyscanner);
04024                         }
04025 
04026                 else
04027                         {
04028                         ret_val = EOB_ACT_LAST_MATCH;
04029                         YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
04030                                 YY_BUFFER_EOF_PENDING;
04031                         }
04032                 }
04033 
04034         else
04035                 ret_val = EOB_ACT_CONTINUE_SCAN;
04036 
04037         if ((yy_size_t) (yyg->yy_n_chars + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
04038                 /* Extend the array by 50%, plus the number we really need. */
04039                 yy_size_t new_size = yyg->yy_n_chars + number_to_move + (yyg->yy_n_chars >> 1);
04040                 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) osrlrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ,yyscanner );
04041                 if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
04042                         YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
04043         }
04044 
04045         yyg->yy_n_chars += number_to_move;
04046         YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars] = YY_END_OF_BUFFER_CHAR;
04047         YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
04048 
04049         yyg->yytext_ptr = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
04050 
04051         return ret_val;
04052 }
04053 
04054 /* yy_get_previous_state - get the state just before the EOB char was reached */
04055 
04056     static yy_state_type yy_get_previous_state (yyscan_t yyscanner)
04057 {
04058         register yy_state_type yy_current_state;
04059         register char *yy_cp;
04060     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04061 
04062         yy_current_state = yyg->yy_start;
04063 
04064         for ( yy_cp = yyg->yytext_ptr + YY_MORE_ADJ; yy_cp < yyg->yy_c_buf_p; ++yy_cp )
04065                 {
04066                 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
04067                 if ( yy_accept[yy_current_state] )
04068                         {
04069                         yyg->yy_last_accepting_state = yy_current_state;
04070                         yyg->yy_last_accepting_cpos = yy_cp;
04071                         }
04072                 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
04073                         {
04074                         yy_current_state = (int) yy_def[yy_current_state];
04075                         if ( yy_current_state >= 1866 )
04076                                 yy_c = yy_meta[(unsigned int) yy_c];
04077                         }
04078                 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
04079                 }
04080 
04081         return yy_current_state;
04082 }
04083 
04084 /* yy_try_NUL_trans - try to make a transition on the NUL character
04085  *
04086  * synopsis
04087  *      next_state = yy_try_NUL_trans( current_state );
04088  */
04089     static yy_state_type yy_try_NUL_trans  (yy_state_type yy_current_state , yyscan_t yyscanner)
04090 {
04091         register int yy_is_jam;
04092     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; /* This var may be unused depending upon options. */
04093         register char *yy_cp = yyg->yy_c_buf_p;
04094 
04095         register YY_CHAR yy_c = 1;
04096         if ( yy_accept[yy_current_state] )
04097                 {
04098                 yyg->yy_last_accepting_state = yy_current_state;
04099                 yyg->yy_last_accepting_cpos = yy_cp;
04100                 }
04101         while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
04102                 {
04103                 yy_current_state = (int) yy_def[yy_current_state];
04104                 if ( yy_current_state >= 1866 )
04105                         yy_c = yy_meta[(unsigned int) yy_c];
04106                 }
04107         yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
04108         yy_is_jam = (yy_current_state == 1865);
04109 
04110         return yy_is_jam ? 0 : yy_current_state;
04111 }
04112 
04113 #ifndef YY_NO_INPUT
04114 #ifdef __cplusplus
04115     static int yyinput (yyscan_t yyscanner)
04116 #else
04117     static int input  (yyscan_t yyscanner)
04118 #endif
04119 
04120 {
04121         int c;
04122     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04123 
04124         *yyg->yy_c_buf_p = yyg->yy_hold_char;
04125 
04126         if ( *yyg->yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
04127                 {
04128                 /* yy_c_buf_p now points to the character we want to return.
04129                  * If this occurs *before* the EOB characters, then it's a
04130                  * valid NUL; if not, then we've hit the end of the buffer.
04131                  */
04132                 if ( yyg->yy_c_buf_p < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars] )
04133                         /* This was really a NUL. */
04134                         *yyg->yy_c_buf_p = '\0';
04135 
04136                 else
04137                         { /* need more input */
04138                         int offset = yyg->yy_c_buf_p - yyg->yytext_ptr;
04139                         ++yyg->yy_c_buf_p;
04140 
04141                         switch ( yy_get_next_buffer( yyscanner ) )
04142                                 {
04143                                 case EOB_ACT_LAST_MATCH:
04144                                         /* This happens because yy_g_n_b()
04145                                          * sees that we've accumulated a
04146                                          * token and flags that we need to
04147                                          * try matching the token before
04148                                          * proceeding.  But for input(),
04149                                          * there's no matching to consider.
04150                                          * So convert the EOB_ACT_LAST_MATCH
04151                                          * to EOB_ACT_END_OF_FILE.
04152                                          */
04153 
04154                                         /* Reset buffer status. */
04155                                         osrlrestart(yyin ,yyscanner);
04156 
04157                                         /*FALLTHROUGH*/
04158 
04159                                 case EOB_ACT_END_OF_FILE:
04160                                         {
04161                                         if ( osrlwrap(yyscanner ) )
04162                                                 return EOF;
04163 
04164                                         if ( ! yyg->yy_did_buffer_switch_on_eof )
04165                                                 YY_NEW_FILE;
04166 #ifdef __cplusplus
04167                                         return yyinput(yyscanner);
04168 #else
04169                                         return input(yyscanner);
04170 #endif
04171                                         }
04172 
04173                                 case EOB_ACT_CONTINUE_SCAN:
04174                                         yyg->yy_c_buf_p = yyg->yytext_ptr + offset;
04175                                         break;
04176                                 }
04177                         }
04178                 }
04179 
04180         c = *(unsigned char *) yyg->yy_c_buf_p; /* cast for 8-bit char's */
04181         *yyg->yy_c_buf_p = '\0';        /* preserve yytext */
04182         yyg->yy_hold_char = *++yyg->yy_c_buf_p;
04183 
04184         if ( c == '\n' )
04185                    
04186     do{ yylineno++;
04187         yycolumn=0;
04188     }while(0)
04189 ;
04190 
04191         return c;
04192 }
04193 #endif  /* ifndef YY_NO_INPUT */
04194 
04200     void osrlrestart  (FILE * input_file , yyscan_t yyscanner)
04201 {
04202     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04203 
04204         if ( ! YY_CURRENT_BUFFER ){
04205         osrlensure_buffer_stack (yyscanner);
04206                 YY_CURRENT_BUFFER_LVALUE =
04207             osrl_create_buffer(yyin,YY_BUF_SIZE ,yyscanner);
04208         }
04209 
04210         osrl_init_buffer(YY_CURRENT_BUFFER,input_file ,yyscanner);
04211         osrl_load_buffer_state(yyscanner );
04212 }
04213 
04218     void osrl_switch_to_buffer  (YY_BUFFER_STATE  new_buffer , yyscan_t yyscanner)
04219 {
04220     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04221 
04222         /* TODO. We should be able to replace this entire function body
04223          * with
04224          *              osrlpop_buffer_state();
04225          *              osrlpush_buffer_state(new_buffer);
04226      */
04227         osrlensure_buffer_stack (yyscanner);
04228         if ( YY_CURRENT_BUFFER == new_buffer )
04229                 return;
04230 
04231         if ( YY_CURRENT_BUFFER )
04232                 {
04233                 /* Flush out information for old buffer. */
04234                 *yyg->yy_c_buf_p = yyg->yy_hold_char;
04235                 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = yyg->yy_c_buf_p;
04236                 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars;
04237                 }
04238 
04239         YY_CURRENT_BUFFER_LVALUE = new_buffer;
04240         osrl_load_buffer_state(yyscanner );
04241 
04242         /* We don't actually know whether we did this switch during
04243          * EOF (osrlwrap()) processing, but the only time this flag
04244          * is looked at is after osrlwrap() is called, so it's safe
04245          * to go ahead and always set it.
04246          */
04247         yyg->yy_did_buffer_switch_on_eof = 1;
04248 }
04249 
04250 static void osrl_load_buffer_state  (yyscan_t yyscanner)
04251 {
04252     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04253         yyg->yy_n_chars = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
04254         yyg->yytext_ptr = yyg->yy_c_buf_p = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
04255         yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
04256         yyg->yy_hold_char = *yyg->yy_c_buf_p;
04257 }
04258 
04265     YY_BUFFER_STATE osrl_create_buffer  (FILE * file, int  size , yyscan_t yyscanner)
04266 {
04267         YY_BUFFER_STATE b;
04268     
04269         b = (YY_BUFFER_STATE) osrlalloc(sizeof( struct yy_buffer_state ) ,yyscanner );
04270         if ( ! b )
04271                 YY_FATAL_ERROR( "out of dynamic memory in osrl_create_buffer()" );
04272 
04273         b->yy_buf_size = size;
04274 
04275         /* yy_ch_buf has to be 2 characters longer than the size given because
04276          * we need to put in 2 end-of-buffer characters.
04277          */
04278         b->yy_ch_buf = (char *) osrlalloc(b->yy_buf_size + 2 ,yyscanner );
04279         if ( ! b->yy_ch_buf )
04280                 YY_FATAL_ERROR( "out of dynamic memory in osrl_create_buffer()" );
04281 
04282         b->yy_is_our_buffer = 1;
04283 
04284         osrl_init_buffer(b,file ,yyscanner);
04285 
04286         return b;
04287 }
04288 
04293     void osrl_delete_buffer (YY_BUFFER_STATE  b , yyscan_t yyscanner)
04294 {
04295     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04296 
04297         if ( ! b )
04298                 return;
04299 
04300         if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
04301                 YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
04302 
04303         if ( b->yy_is_our_buffer )
04304                 osrlfree((void *) b->yy_ch_buf ,yyscanner );
04305 
04306         osrlfree((void *) b ,yyscanner );
04307 }
04308 
04309 #ifndef __cplusplus
04310 extern int isatty (int );
04311 #endif /* __cplusplus */
04312     
04313 /* Initializes or reinitializes a buffer.
04314  * This function is sometimes called more than once on the same buffer,
04315  * such as during a osrlrestart() or at EOF.
04316  */
04317     static void osrl_init_buffer  (YY_BUFFER_STATE  b, FILE * file , yyscan_t yyscanner)
04318 
04319 {
04320         int oerrno = errno;
04321     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04322 
04323         osrl_flush_buffer(b ,yyscanner);
04324 
04325         b->yy_input_file = file;
04326         b->yy_fill_buffer = 1;
04327 
04328     /* If b is the current buffer, then osrl_init_buffer was _probably_
04329      * called from osrlrestart() or through yy_get_next_buffer.
04330      * In that case, we don't want to reset the lineno or column.
04331      */
04332     if (b != YY_CURRENT_BUFFER){
04333         b->yy_bs_lineno = 1;
04334         b->yy_bs_column = 0;
04335     }
04336 
04337         b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
04338     
04339         errno = oerrno;
04340 }
04341 
04346     void osrl_flush_buffer (YY_BUFFER_STATE  b , yyscan_t yyscanner)
04347 {
04348     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04349         if ( ! b )
04350                 return;
04351 
04352         b->yy_n_chars = 0;
04353 
04354         /* We always need two end-of-buffer characters.  The first causes
04355          * a transition to the end-of-buffer state.  The second causes
04356          * a jam in that state.
04357          */
04358         b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
04359         b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
04360 
04361         b->yy_buf_pos = &b->yy_ch_buf[0];
04362 
04363         b->yy_at_bol = 1;
04364         b->yy_buffer_status = YY_BUFFER_NEW;
04365 
04366         if ( b == YY_CURRENT_BUFFER )
04367                 osrl_load_buffer_state(yyscanner );
04368 }
04369 
04376 void osrlpush_buffer_state (YY_BUFFER_STATE new_buffer , yyscan_t yyscanner)
04377 {
04378     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04379         if (new_buffer == NULL)
04380                 return;
04381 
04382         osrlensure_buffer_stack(yyscanner);
04383 
04384         /* This block is copied from osrl_switch_to_buffer. */
04385         if ( YY_CURRENT_BUFFER )
04386                 {
04387                 /* Flush out information for old buffer. */
04388                 *yyg->yy_c_buf_p = yyg->yy_hold_char;
04389                 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = yyg->yy_c_buf_p;
04390                 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars;
04391                 }
04392 
04393         /* Only push if top exists. Otherwise, replace top. */
04394         if (YY_CURRENT_BUFFER)
04395                 yyg->yy_buffer_stack_top++;
04396         YY_CURRENT_BUFFER_LVALUE = new_buffer;
04397 
04398         /* copied from osrl_switch_to_buffer. */
04399         osrl_load_buffer_state(yyscanner );
04400         yyg->yy_did_buffer_switch_on_eof = 1;
04401 }
04402 
04407 void osrlpop_buffer_state (yyscan_t yyscanner)
04408 {
04409     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04410         if (!YY_CURRENT_BUFFER)
04411                 return;
04412 
04413         osrl_delete_buffer(YY_CURRENT_BUFFER ,yyscanner);
04414         YY_CURRENT_BUFFER_LVALUE = NULL;
04415         if (yyg->yy_buffer_stack_top > 0)
04416                 --yyg->yy_buffer_stack_top;
04417 
04418         if (YY_CURRENT_BUFFER) {
04419                 osrl_load_buffer_state(yyscanner );
04420                 yyg->yy_did_buffer_switch_on_eof = 1;
04421         }
04422 }
04423 
04424 /* Allocates the stack if it does not exist.
04425  *  Guarantees space for at least one push.
04426  */
04427 static void osrlensure_buffer_stack (yyscan_t yyscanner)
04428 {
04429         int num_to_alloc;
04430     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04431 
04432         if (!yyg->yy_buffer_stack) {
04433 
04434                 /* First allocation is just for 2 elements, since we don't know if this
04435                  * scanner will even need a stack. We use 2 instead of 1 to avoid an
04436                  * immediate realloc on the next call.
04437          */
04438                 num_to_alloc = 1;
04439                 yyg->yy_buffer_stack = (struct yy_buffer_state**)osrlalloc
04440                                                                 (num_to_alloc * sizeof(struct yy_buffer_state*)
04441                                                                 , yyscanner);
04442                 if ( ! yyg->yy_buffer_stack )
04443                         YY_FATAL_ERROR( "out of dynamic memory in osrlensure_buffer_stack()" );
04444                                                                   
04445                 memset(yyg->yy_buffer_stack, 0, num_to_alloc * sizeof(struct yy_buffer_state*));
04446                                 
04447                 yyg->yy_buffer_stack_max = num_to_alloc;
04448                 yyg->yy_buffer_stack_top = 0;
04449                 return;
04450         }
04451 
04452         if (yyg->yy_buffer_stack_top >= (yyg->yy_buffer_stack_max) - 1){
04453 
04454                 /* Increase the buffer to prepare for a possible push. */
04455                 int grow_size = 8 /* arbitrary grow size */;
04456 
04457                 num_to_alloc = yyg->yy_buffer_stack_max + grow_size;
04458                 yyg->yy_buffer_stack = (struct yy_buffer_state**)osrlrealloc
04459                                                                 (yyg->yy_buffer_stack,
04460                                                                 num_to_alloc * sizeof(struct yy_buffer_state*)
04461                                                                 , yyscanner);
04462                 if ( ! yyg->yy_buffer_stack )
04463                         YY_FATAL_ERROR( "out of dynamic memory in osrlensure_buffer_stack()" );
04464 
04465                 /* zero only the new slots.*/
04466                 memset(yyg->yy_buffer_stack + yyg->yy_buffer_stack_max, 0, grow_size * sizeof(struct yy_buffer_state*));
04467                 yyg->yy_buffer_stack_max = num_to_alloc;
04468         }
04469 }
04470 
04477 YY_BUFFER_STATE osrl_scan_buffer  (char * base, yy_size_t  size , yyscan_t yyscanner)
04478 {
04479         YY_BUFFER_STATE b;
04480     
04481         if ( size < 2 ||
04482              base[size-2] != YY_END_OF_BUFFER_CHAR ||
04483              base[size-1] != YY_END_OF_BUFFER_CHAR )
04484                 /* They forgot to leave room for the EOB's. */
04485                 return 0;
04486 
04487         b = (YY_BUFFER_STATE) osrlalloc(sizeof( struct yy_buffer_state ) ,yyscanner );
04488         if ( ! b )
04489                 YY_FATAL_ERROR( "out of dynamic memory in osrl_scan_buffer()" );
04490 
04491         b->yy_buf_size = size - 2;      /* "- 2" to take care of EOB's */
04492         b->yy_buf_pos = b->yy_ch_buf = base;
04493         b->yy_is_our_buffer = 0;
04494         b->yy_input_file = 0;
04495         b->yy_n_chars = b->yy_buf_size;
04496         b->yy_is_interactive = 0;
04497         b->yy_at_bol = 1;
04498         b->yy_fill_buffer = 0;
04499         b->yy_buffer_status = YY_BUFFER_NEW;
04500 
04501         osrl_switch_to_buffer(b ,yyscanner );
04502 
04503         return b;
04504 }
04505 
04514 YY_BUFFER_STATE osrl_scan_string (yyconst char * yystr , yyscan_t yyscanner)
04515 {
04516     
04517         return osrl_scan_bytes(yystr,strlen(yystr) ,yyscanner);
04518 }
04519 
04527 YY_BUFFER_STATE osrl_scan_bytes  (yyconst char * yybytes, int  _yybytes_len , yyscan_t yyscanner)
04528 {
04529         YY_BUFFER_STATE b;
04530         char *buf;
04531         yy_size_t n;
04532         int i;
04533     
04534         /* Get memory for full buffer, including space for trailing EOB's. */
04535         n = _yybytes_len + 2;
04536         buf = (char *) osrlalloc(n ,yyscanner );
04537         if ( ! buf )
04538                 YY_FATAL_ERROR( "out of dynamic memory in osrl_scan_bytes()" );
04539 
04540         for ( i = 0; i < _yybytes_len; ++i )
04541                 buf[i] = yybytes[i];
04542 
04543         buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
04544 
04545         b = osrl_scan_buffer(buf,n ,yyscanner);
04546         if ( ! b )
04547                 YY_FATAL_ERROR( "bad buffer in osrl_scan_bytes()" );
04548 
04549         /* It's okay to grow etc. this buffer, and we should throw it
04550          * away when we're done.
04551          */
04552         b->yy_is_our_buffer = 1;
04553 
04554         return b;
04555 }
04556 
04557 #ifndef YY_EXIT_FAILURE
04558 #define YY_EXIT_FAILURE 2
04559 #endif
04560 
04561 static void yy_fatal_error (yyconst char* msg , yyscan_t yyscanner)
04562 {
04563         (void) fprintf( stderr, "%s\n", msg );
04564         exit( YY_EXIT_FAILURE );
04565 }
04566 
04567 /* Redefine yyless() so it works in section 3 code. */
04568 
04569 #undef yyless
04570 #define yyless(n) \
04571         do \
04572                 { \
04573                 /* Undo effects of setting up yytext. */ \
04574         int yyless_macro_arg = (n); \
04575         YY_LESS_LINENO(yyless_macro_arg);\
04576                 yytext[yyleng] = yyg->yy_hold_char; \
04577                 yyg->yy_c_buf_p = yytext + yyless_macro_arg; \
04578                 yyg->yy_hold_char = *yyg->yy_c_buf_p; \
04579                 *yyg->yy_c_buf_p = '\0'; \
04580                 yyleng = yyless_macro_arg; \
04581                 } \
04582         while ( 0 )
04583 
04584 /* Accessor  methods (get/set functions) to struct members. */
04585 
04589 YY_EXTRA_TYPE osrlget_extra  (yyscan_t yyscanner)
04590 {
04591     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04592     return yyextra;
04593 }
04594 
04598 int osrlget_lineno  (yyscan_t yyscanner)
04599 {
04600     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04601     
04602         if (! YY_CURRENT_BUFFER)
04603             return 0;
04604     
04605     return yylineno;
04606 }
04607 
04611 int osrlget_column  (yyscan_t yyscanner)
04612 {
04613     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04614     
04615         if (! YY_CURRENT_BUFFER)
04616             return 0;
04617     
04618     return yycolumn;
04619 }
04620 
04624 FILE *osrlget_in  (yyscan_t yyscanner)
04625 {
04626     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04627     return yyin;
04628 }
04629 
04633 FILE *osrlget_out  (yyscan_t yyscanner)
04634 {
04635     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04636     return yyout;
04637 }
04638 
04642 int osrlget_leng  (yyscan_t yyscanner)
04643 {
04644     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04645     return yyleng;
04646 }
04647 
04652 char *osrlget_text  (yyscan_t yyscanner)
04653 {
04654     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04655     return yytext;
04656 }
04657 
04662 void osrlset_extra (YY_EXTRA_TYPE  user_defined , yyscan_t yyscanner)
04663 {
04664     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04665     yyextra = user_defined ;
04666 }
04667 
04672 void osrlset_lineno (int  line_number , yyscan_t yyscanner)
04673 {
04674     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04675 
04676         /* lineno is only valid if an input buffer exists. */
04677         if (! YY_CURRENT_BUFFER )
04678            yy_fatal_error( "osrlset_lineno called with no buffer" , yyscanner); 
04679     
04680     yylineno = line_number;
04681 }
04682 
04687 void osrlset_column (int  column_no , yyscan_t yyscanner)
04688 {
04689     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04690 
04691         /* column is only valid if an input buffer exists. */
04692         if (! YY_CURRENT_BUFFER )
04693            yy_fatal_error( "osrlset_column called with no buffer" , yyscanner); 
04694     
04695     yycolumn = column_no;
04696 }
04697 
04704 void osrlset_in (FILE *  in_str , yyscan_t yyscanner)
04705 {
04706     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04707     yyin = in_str ;
04708 }
04709 
04710 void osrlset_out (FILE *  out_str , yyscan_t yyscanner)
04711 {
04712     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04713     yyout = out_str ;
04714 }
04715 
04716 int osrlget_debug  (yyscan_t yyscanner)
04717 {
04718     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04719     return yy_flex_debug;
04720 }
04721 
04722 void osrlset_debug (int  bdebug , yyscan_t yyscanner)
04723 {
04724     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04725     yy_flex_debug = bdebug ;
04726 }
04727 
04728 /* Accessor methods for yylval and yylloc */
04729 
04730 YYSTYPE * osrlget_lval  (yyscan_t yyscanner)
04731 {
04732     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04733     return yylval;
04734 }
04735 
04736 void osrlset_lval (YYSTYPE *  yylval_param , yyscan_t yyscanner)
04737 {
04738     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04739     yylval = yylval_param;
04740 }
04741 
04742 YYLTYPE *osrlget_lloc  (yyscan_t yyscanner)
04743 {
04744     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04745     return yylloc;
04746 }
04747     
04748 void osrlset_lloc (YYLTYPE *  yylloc_param , yyscan_t yyscanner)
04749 {
04750     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04751     yylloc = yylloc_param;
04752 }
04753     
04754 /* User-visible API */
04755 
04756 /* osrllex_init is special because it creates the scanner itself, so it is
04757  * the ONLY reentrant function that doesn't take the scanner as the last argument.
04758  * That's why we explicitly handle the declaration, instead of using our macros.
04759  */
04760 
04761 int osrllex_init(yyscan_t* ptr_yy_globals)
04762 
04763 {
04764     if (ptr_yy_globals == NULL){
04765         errno = EINVAL;
04766         return 1;
04767     }
04768 
04769     *ptr_yy_globals = (yyscan_t) osrlalloc ( sizeof( struct yyguts_t ), NULL );
04770 
04771     if (*ptr_yy_globals == NULL){
04772         errno = ENOMEM;
04773         return 1;
04774     }
04775 
04776     /* By setting to 0xAA, we expose bugs in yy_init_globals. Leave at 0x00 for releases. */
04777     memset(*ptr_yy_globals,0x00,sizeof(struct yyguts_t));
04778 
04779     return yy_init_globals ( *ptr_yy_globals );
04780 }
04781 
04782 /* osrllex_init_extra has the same functionality as osrllex_init, but follows the
04783  * convention of taking the scanner as the last argument. Note however, that
04784  * this is a *pointer* to a scanner, as it will be allocated by this call (and
04785  * is the reason, too, why this function also must handle its own declaration).
04786  * The user defined value in the first argument will be available to osrlalloc in
04787  * the yyextra field.
04788  */
04789 
04790 int osrllex_init_extra(YY_EXTRA_TYPE yy_user_defined,yyscan_t* ptr_yy_globals )
04791 
04792 {
04793     struct yyguts_t dummy_yyguts;
04794 
04795     osrlset_extra (yy_user_defined, &dummy_yyguts);
04796 
04797     if (ptr_yy_globals == NULL){
04798         errno = EINVAL;
04799         return 1;
04800     }
04801         
04802     *ptr_yy_globals = (yyscan_t) osrlalloc ( sizeof( struct yyguts_t ), &dummy_yyguts );
04803         
04804     if (*ptr_yy_globals == NULL){
04805         errno = ENOMEM;
04806         return 1;
04807     }
04808     
04809     /* By setting to 0xAA, we expose bugs in
04810     yy_init_globals. Leave at 0x00 for releases. */
04811     memset(*ptr_yy_globals,0x00,sizeof(struct yyguts_t));
04812     
04813     osrlset_extra (yy_user_defined, *ptr_yy_globals);
04814     
04815     return yy_init_globals ( *ptr_yy_globals );
04816 }
04817 
04818 static int yy_init_globals (yyscan_t yyscanner)
04819 {
04820     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04821     /* Initialization is the same as for the non-reentrant scanner.
04822      * This function is called from osrllex_destroy(), so don't allocate here.
04823      */
04824 
04825     yyg->yy_buffer_stack = 0;
04826     yyg->yy_buffer_stack_top = 0;
04827     yyg->yy_buffer_stack_max = 0;
04828     yyg->yy_c_buf_p = (char *) 0;
04829     yyg->yy_init = 0;
04830     yyg->yy_start = 0;
04831 
04832     yyg->yy_start_stack_ptr = 0;
04833     yyg->yy_start_stack_depth = 0;
04834     yyg->yy_start_stack =  NULL;
04835 
04836 /* Defined in main.c */
04837 #ifdef YY_STDINIT
04838     yyin = stdin;
04839     yyout = stdout;
04840 #else
04841     yyin = (FILE *) 0;
04842     yyout = (FILE *) 0;
04843 #endif
04844 
04845     /* For future reference: Set errno on error, since we are called by
04846      * osrllex_init()
04847      */
04848     return 0;
04849 }
04850 
04851 /* osrllex_destroy is for both reentrant and non-reentrant scanners. */
04852 int osrllex_destroy  (yyscan_t yyscanner)
04853 {
04854     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
04855 
04856     /* Pop the buffer stack, destroying each element. */
04857         while(YY_CURRENT_BUFFER){
04858                 osrl_delete_buffer(YY_CURRENT_BUFFER ,yyscanner );
04859                 YY_CURRENT_BUFFER_LVALUE = NULL;
04860                 osrlpop_buffer_state(yyscanner);
04861         }
04862 
04863         /* Destroy the stack itself. */
04864         osrlfree(yyg->yy_buffer_stack ,yyscanner);
04865         yyg->yy_buffer_stack = NULL;
04866 
04867     /* Destroy the start condition stack. */
04868         osrlfree(yyg->yy_start_stack ,yyscanner );
04869         yyg->yy_start_stack = NULL;
04870 
04871     /* Reset the globals. This is important in a non-reentrant scanner so the next time
04872      * osrllex() is called, initialization will occur. */
04873     yy_init_globals( yyscanner);
04874 
04875     /* Destroy the main struct (reentrant only). */
04876     osrlfree ( yyscanner , yyscanner );
04877     yyscanner = NULL;
04878     return 0;
04879 }
04880 
04881 /*
04882  * Internal utility routines.
04883  */
04884 
04885 #ifndef yytext_ptr
04886 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n , yyscan_t yyscanner)
04887 {
04888         register int i;
04889         for ( i = 0; i < n; ++i )
04890                 s1[i] = s2[i];
04891 }
04892 #endif
04893 
04894 #ifdef YY_NEED_STRLEN
04895 static int yy_flex_strlen (yyconst char * s , yyscan_t yyscanner)
04896 {
04897         register int n;
04898         for ( n = 0; s[n]; ++n )
04899                 ;
04900 
04901         return n;
04902 }
04903 #endif
04904 
04905 void *osrlalloc (yy_size_t  size , yyscan_t yyscanner)
04906 {
04907         return (void *) malloc( size );
04908 }
04909 
04910 void *osrlrealloc  (void * ptr, yy_size_t  size , yyscan_t yyscanner)
04911 {
04912         /* The cast to (char *) in the following accommodates both
04913          * implementations that use char* generic pointers, and those
04914          * that use void* generic pointers.  It works with the latter
04915          * because both ANSI C and C++ allow castless assignment from
04916          * any pointer type to void*, and deal with argument conversions
04917          * as though doing an assignment.
04918          */
04919         return (void *) realloc( (char *) ptr, size );
04920 }
04921 
04922 void osrlfree (void * ptr , yyscan_t yyscanner)
04923 {
04924         free( (char *) ptr );   /* see osrlrealloc() for (char *) cast */
04925 }
04926 
04927 #define YYTABLES_NAME "yytables"
04928 
04929 #line 418 "/home/kmartin/Documents/coin/os-trunk/OS/src/OSParsers/OSParseosrl.l"
04930 
04931 
04932 
04933 
04934 

Generated on Thu Mar 31 03:13:14 2011 by  doxygen 1.4.7