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

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

Generated on Wed Nov 30 03:04:22 2011 by  doxygen 1.4.7