i3
|
00001 #line 2 "src/cfgparse.yy.c" 00002 00003 #line 4 "src/cfgparse.yy.c" 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 #endif /* ! C99 */ 00058 00059 /* Limits of integral types. */ 00060 #ifndef INT8_MIN 00061 #define INT8_MIN (-128) 00062 #endif 00063 #ifndef INT16_MIN 00064 #define INT16_MIN (-32767-1) 00065 #endif 00066 #ifndef INT32_MIN 00067 #define INT32_MIN (-2147483647-1) 00068 #endif 00069 #ifndef INT8_MAX 00070 #define INT8_MAX (127) 00071 #endif 00072 #ifndef INT16_MAX 00073 #define INT16_MAX (32767) 00074 #endif 00075 #ifndef INT32_MAX 00076 #define INT32_MAX (2147483647) 00077 #endif 00078 #ifndef UINT8_MAX 00079 #define UINT8_MAX (255U) 00080 #endif 00081 #ifndef UINT16_MAX 00082 #define UINT16_MAX (65535U) 00083 #endif 00084 #ifndef UINT32_MAX 00085 #define UINT32_MAX (4294967295U) 00086 #endif 00087 00088 #endif /* ! FLEXINT_H */ 00089 00090 #ifdef __cplusplus 00091 00092 /* The "const" storage-class-modifier is valid. */ 00093 #define YY_USE_CONST 00094 00095 #else /* ! __cplusplus */ 00096 00097 /* C99 requires __STDC__ to be defined as 1. */ 00098 #if defined (__STDC__) 00099 00100 #define YY_USE_CONST 00101 00102 #endif /* defined (__STDC__) */ 00103 #endif /* ! __cplusplus */ 00104 00105 #ifdef YY_USE_CONST 00106 #define yyconst const 00107 #else 00108 #define yyconst 00109 #endif 00110 00111 /* Returned upon end-of-file. */ 00112 #define YY_NULL 0 00113 00114 /* Promotes a possibly negative, possibly signed char to an unsigned 00115 * integer for use as an array index. If the signed char is negative, 00116 * we want to instead treat it as an 8-bit unsigned char, hence the 00117 * double cast. 00118 */ 00119 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c) 00120 00121 /* Enter a start condition. This macro really ought to take a parameter, 00122 * but we do it the disgusting crufty way forced on us by the ()-less 00123 * definition of BEGIN. 00124 */ 00125 #define BEGIN (yy_start) = 1 + 2 * 00126 00127 /* Translate the current start state into a value that can be later handed 00128 * to BEGIN to return to the state. The YYSTATE alias is for lex 00129 * compatibility. 00130 */ 00131 #define YY_START (((yy_start) - 1) / 2) 00132 #define YYSTATE YY_START 00133 00134 /* Action number for EOF rule of a given start state. */ 00135 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) 00136 00137 /* Special action meaning "start processing a new file". */ 00138 #define YY_NEW_FILE yyrestart(yyin ) 00139 00140 #define YY_END_OF_BUFFER_CHAR 0 00141 00142 /* Size of default input buffer. */ 00143 #ifndef YY_BUF_SIZE 00144 #define YY_BUF_SIZE 16384 00145 #endif 00146 00147 /* The state buf must be large enough to hold one state per character in the main buffer. 00148 */ 00149 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) 00150 00151 #ifndef YY_TYPEDEF_YY_BUFFER_STATE 00152 #define YY_TYPEDEF_YY_BUFFER_STATE 00153 typedef struct yy_buffer_state *YY_BUFFER_STATE; 00154 #endif 00155 00156 extern int yyleng; 00157 00158 extern FILE *yyin, *yyout; 00159 00160 #define EOB_ACT_CONTINUE_SCAN 0 00161 #define EOB_ACT_END_OF_FILE 1 00162 #define EOB_ACT_LAST_MATCH 2 00163 00164 #define YY_LESS_LINENO(n) 00165 00166 /* Return all but the first "n" matched characters back to the input stream. */ 00167 #define yyless(n) \ 00168 do \ 00169 { \ 00170 /* Undo effects of setting up yytext. */ \ 00171 int yyless_macro_arg = (n); \ 00172 YY_LESS_LINENO(yyless_macro_arg);\ 00173 *yy_cp = (yy_hold_char); \ 00174 YY_RESTORE_YY_MORE_OFFSET \ 00175 (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ 00176 YY_DO_BEFORE_ACTION; /* set up yytext again */ \ 00177 } \ 00178 while ( 0 ) 00179 00180 #define unput(c) yyunput( c, (yytext_ptr) ) 00181 00182 #ifndef YY_TYPEDEF_YY_SIZE_T 00183 #define YY_TYPEDEF_YY_SIZE_T 00184 typedef size_t yy_size_t; 00185 #endif 00186 00187 #ifndef YY_STRUCT_YY_BUFFER_STATE 00188 #define YY_STRUCT_YY_BUFFER_STATE 00189 struct yy_buffer_state 00190 { 00191 FILE *yy_input_file; 00192 00193 char *yy_ch_buf; /* input buffer */ 00194 char *yy_buf_pos; /* current position in input buffer */ 00195 00196 /* Size of input buffer in bytes, not including room for EOB 00197 * characters. 00198 */ 00199 yy_size_t yy_buf_size; 00200 00201 /* Number of characters read into yy_ch_buf, not including EOB 00202 * characters. 00203 */ 00204 int yy_n_chars; 00205 00206 /* Whether we "own" the buffer - i.e., we know we created it, 00207 * and can realloc() it to grow it, and should free() it to 00208 * delete it. 00209 */ 00210 int yy_is_our_buffer; 00211 00212 /* Whether this is an "interactive" input source; if so, and 00213 * if we're using stdio for input, then we want to use getc() 00214 * instead of fread(), to make sure we stop fetching input after 00215 * each newline. 00216 */ 00217 int yy_is_interactive; 00218 00219 /* Whether we're considered to be at the beginning of a line. 00220 * If so, '^' rules will be active on the next match, otherwise 00221 * not. 00222 */ 00223 int yy_at_bol; 00224 00225 int yy_bs_lineno; 00226 int yy_bs_column; 00228 /* Whether to try to fill the input buffer when we reach the 00229 * end of it. 00230 */ 00231 int yy_fill_buffer; 00232 00233 int yy_buffer_status; 00234 00235 #define YY_BUFFER_NEW 0 00236 #define YY_BUFFER_NORMAL 1 00237 /* When an EOF's been seen but there's still some text to process 00238 * then we mark the buffer as YY_EOF_PENDING, to indicate that we 00239 * shouldn't try reading from the input source any more. We might 00240 * still have a bunch of tokens to match, though, because of 00241 * possible backing-up. 00242 * 00243 * When we actually see the EOF, we change the status to "new" 00244 * (via yyrestart()), so that the user can continue scanning by 00245 * just pointing yyin at a new input file. 00246 */ 00247 #define YY_BUFFER_EOF_PENDING 2 00248 00249 }; 00250 #endif /* !YY_STRUCT_YY_BUFFER_STATE */ 00251 00252 /* Stack of input buffers. */ 00253 static size_t yy_buffer_stack_top = 0; 00254 static size_t yy_buffer_stack_max = 0; 00255 static YY_BUFFER_STATE * yy_buffer_stack = 0; 00257 /* We provide macros for accessing buffer states in case in the 00258 * future we want to put the buffer states in a more general 00259 * "scanner state". 00260 * 00261 * Returns the top of the stack, or NULL. 00262 */ 00263 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ 00264 ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ 00265 : NULL) 00266 00267 /* Same as previous macro, but useful when we know that the buffer stack is not 00268 * NULL or when we need an lvalue. For internal use only. 00269 */ 00270 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] 00271 00272 /* yy_hold_char holds the character lost when yytext is formed. */ 00273 static char yy_hold_char; 00274 static int yy_n_chars; /* number of characters read into yy_ch_buf */ 00275 int yyleng; 00276 00277 /* Points to current character in buffer. */ 00278 static char *yy_c_buf_p = (char *) 0; 00279 static int yy_init = 0; /* whether we need to initialize */ 00280 static int yy_start = 0; /* start state number */ 00281 00282 /* Flag which is used to allow yywrap()'s to do buffer switches 00283 * instead of setting up a fresh yyin. A bit of a hack ... 00284 */ 00285 static int yy_did_buffer_switch_on_eof; 00286 00287 void yyrestart (FILE *input_file ); 00288 void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ); 00289 YY_BUFFER_STATE yy_create_buffer (FILE *file,int size ); 00290 void yy_delete_buffer (YY_BUFFER_STATE b ); 00291 void yy_flush_buffer (YY_BUFFER_STATE b ); 00292 void yypush_buffer_state (YY_BUFFER_STATE new_buffer ); 00293 void yypop_buffer_state (void ); 00294 00295 static void yyensure_buffer_stack (void ); 00296 static void yy_load_buffer_state (void ); 00297 static void yy_init_buffer (YY_BUFFER_STATE b,FILE *file ); 00298 00299 #define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER ) 00300 00301 YY_BUFFER_STATE yy_scan_buffer (char *base,yy_size_t size ); 00302 YY_BUFFER_STATE yy_scan_string (yyconst char *yy_str ); 00303 YY_BUFFER_STATE yy_scan_bytes (yyconst char *bytes,int len ); 00304 00305 void *yyalloc (yy_size_t ); 00306 void *yyrealloc (void *,yy_size_t ); 00307 void yyfree (void * ); 00308 00309 #define yy_new_buffer yy_create_buffer 00310 00311 #define yy_set_interactive(is_interactive) \ 00312 { \ 00313 if ( ! YY_CURRENT_BUFFER ){ \ 00314 yyensure_buffer_stack (); \ 00315 YY_CURRENT_BUFFER_LVALUE = \ 00316 yy_create_buffer(yyin,YY_BUF_SIZE ); \ 00317 } \ 00318 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ 00319 } 00320 00321 #define yy_set_bol(at_bol) \ 00322 { \ 00323 if ( ! YY_CURRENT_BUFFER ){\ 00324 yyensure_buffer_stack (); \ 00325 YY_CURRENT_BUFFER_LVALUE = \ 00326 yy_create_buffer(yyin,YY_BUF_SIZE ); \ 00327 } \ 00328 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ 00329 } 00330 00331 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) 00332 00333 /* Begin user sect3 */ 00334 00335 typedef unsigned char YY_CHAR; 00336 00337 FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0; 00338 00339 typedef int yy_state_type; 00340 00341 extern int yylineno; 00342 00343 int yylineno = 1; 00344 00345 extern char *yytext; 00346 #define yytext_ptr yytext 00347 00348 static yy_state_type yy_get_previous_state (void ); 00349 static yy_state_type yy_try_NUL_trans (yy_state_type current_state ); 00350 static int yy_get_next_buffer (void ); 00351 static void yy_fatal_error (yyconst char msg[] ); 00352 00353 /* Done after the current pattern has been matched and before the 00354 * corresponding action - sets up yytext. 00355 */ 00356 #define YY_DO_BEFORE_ACTION \ 00357 (yytext_ptr) = yy_bp; \ 00358 yyleng = (size_t) (yy_cp - yy_bp); \ 00359 (yy_hold_char) = *yy_cp; \ 00360 *yy_cp = '\0'; \ 00361 (yy_c_buf_p) = yy_cp; 00362 00363 #define YY_NUM_RULES 62 00364 #define YY_END_OF_BUFFER 63 00365 /* This struct is not used in this scanner, 00366 but its presence is necessary. */ 00367 struct yy_trans_info 00368 { 00369 flex_int32_t yy_verify; 00370 flex_int32_t yy_nxt; 00371 }; 00372 static yyconst flex_int16_t yy_acclist[2774] = 00373 { 0, 00374 8193,16385, 63, 61, 62, 56, 61, 62, 49, 62, 00375 61, 62, 61, 62, 6, 61, 62, 60, 61, 62, 00376 60, 61, 62, 60, 61, 62, 60, 61, 62, 60, 00377 61, 62, 60, 61, 62, 60, 61, 62, 60, 61, 00378 62, 60, 61, 62, 60, 61, 62, 60, 61, 62, 00379 60, 61, 62, 60, 61, 62, 60, 61, 62, 60, 00380 61, 62, 61, 62, 56, 61, 62, 4, 61, 62, 00381 50, 56, 61, 62, 50, 56, 61, 62, 51, 56, 00382 61, 62, 51, 56, 61, 62, 52, 56, 61, 62, 00383 52, 56, 61, 62, 53, 56, 61, 62, 6, 59, 00384 00385 61, 62, 59, 60, 61, 62, 59, 60, 61, 62, 00386 59, 60, 61, 62, 59, 60, 61, 62, 59, 60, 00387 61, 62, 59, 60, 61, 62, 59, 60, 61, 62, 00388 59, 60, 61, 62, 59, 60, 61, 62, 59, 60, 00389 61, 62, 59, 60, 61, 62, 59, 60, 61, 62, 00390 59, 60, 61, 62, 59, 60, 61, 62, 59, 60, 00391 61, 62, 59, 61, 62, 53, 56, 61, 62, 2, 00392 61, 62, 2, 56, 61, 62, 2, 61, 62, 2, 00393 61, 62, 2, 6, 61, 62, 2, 60, 61, 62, 00394 2, 60, 61, 62, 2, 60, 61, 62, 2, 60, 00395 00396 61, 62, 2, 60, 61, 62, 2, 60, 61, 62, 00397 2, 60, 61, 62, 2, 60, 61, 62, 2, 60, 00398 61, 62, 2, 60, 61, 62, 2, 60, 61, 62, 00399 2, 60, 61, 62, 2, 60, 61, 62, 2, 60, 00400 61, 62, 2, 60, 61, 62, 2, 61, 62, 2, 00401 56, 61, 62, 2, 4, 61, 62, 58, 61, 62, 00402 49, 58, 62, 58, 61, 62, 58, 61, 62, 6, 00403 58, 61, 62, 58, 60, 61, 62, 58, 60, 61, 00404 62, 58, 60, 61, 62, 58, 60, 61, 62, 58, 00405 60, 61, 62, 58, 60, 61, 62, 58, 60, 61, 00406 00407 62, 58, 60, 61, 62, 58, 60, 61, 62, 58, 00408 60, 61, 62, 58, 60, 61, 62, 58, 60, 61, 00409 62, 58, 60, 61, 62, 58, 60, 61, 62, 58, 00410 60, 61, 62, 58, 61, 62, 4, 58, 61, 62, 00411 5, 6, 61, 62, 5, 60, 61, 62, 5, 60, 00412 61, 62, 5, 60, 61, 62, 5, 60, 61, 62, 00413 5, 60, 61, 62, 5, 60, 61, 62, 54, 56, 00414 61, 62, 54, 56, 61, 62, 55, 56, 61, 62, 00415 3, 61, 62, 3, 6, 61, 62, 3, 60, 61, 00416 62, 3, 60, 61, 62, 3, 60, 61, 62, 3, 00417 00418 60, 61, 62, 3, 60, 61, 62, 3, 60, 61, 00419 62, 3, 60, 61, 62, 3, 60, 61, 62, 3, 00420 60, 61, 62, 3, 60, 61, 62, 3, 60, 61, 00421 62, 3, 60, 61, 62, 3, 60, 61, 62, 3, 00422 60, 61, 62, 3, 60, 61, 62, 55, 56, 61, 00423 62, 62, 8193, 62,16385, 8193, 62, 62, 56, 49, 00424 6, 60, 60, 60, 60, 60, 60, 60, 60, 60, 00425 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 00426 60, 60, 60, 60, 56, 4, 4, 50, 56, 50, 00427 56, 51, 56, 51, 56, 52, 56, 52, 56, 53, 00428 00429 56, 6, 59, 59, 59, 60, 59, 60, 59, 60, 00430 59, 60, 59, 60, 59, 60, 59, 60, 59, 60, 00431 59, 60, 59, 60, 59, 60, 59, 60, 59, 60, 00432 59, 60, 59, 60, 59, 60, 59, 60, 59, 60, 00433 59, 60, 59, 60, 59, 60, 59, 60, 59, 60, 00434 53, 56, 2, 2, 56, 2, 2, 6, 2, 60, 00435 2, 60, 2, 60, 2, 60, 2, 60, 2, 60, 00436 2, 60, 2, 60, 2, 60, 2, 60, 2, 60, 00437 2, 60, 2, 60, 2, 60, 2, 60, 2, 60, 00438 2, 60, 2, 60, 2, 60, 2, 60, 2, 60, 00439 00440 2, 60, 2, 60, 2, 2, 56, 2, 4, 2, 00441 4, 58, 49, 58, 58, 6, 58, 58, 60, 58, 00442 60, 58, 60, 58, 60, 58, 60, 58, 60, 58, 00443 60, 58, 60, 58, 60, 58, 60, 58, 60, 58, 00444 60, 58, 60, 58, 60, 58, 60, 58, 60, 58, 00445 60, 58, 60, 58, 60, 58, 60, 58, 60, 58, 00446 60, 58, 60, 58, 4, 58, 5, 6, 5, 5, 00447 60, 5, 60, 5, 60, 54, 56, 54, 56, 55, 00448 56, 3, 3, 6, 3, 60, 3, 60, 3, 60, 00449 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 00450 00451 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 00452 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 00453 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 00454 55, 56, 8193,16385, 8193, 57, 60, 60, 60, 60, 00455 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 00456 60, 60, 60, 60, 17, 60, 60, 60, 60, 60, 00457 60, 48, 59, 60, 59, 60, 59, 60, 59, 60, 00458 59, 60, 59, 60, 59, 60, 59, 60, 59, 60, 00459 59, 60, 59, 60, 59, 60, 59, 60, 59, 60, 00460 59, 60, 59, 60, 59, 60, 59, 60, 17, 59, 00461 00462 60, 59, 60, 59, 60, 59, 60, 59, 60, 59, 00463 60, 2, 57, 2, 60, 2, 60, 2, 60, 2, 00464 60, 2, 60, 2, 60, 2, 60, 2, 60, 2, 00465 60, 2, 60, 2, 60, 2, 60, 2, 60, 2, 00466 60, 2, 60, 2, 60, 2, 60, 2, 60, 2, 00467 17, 60, 2, 60, 2, 60, 2, 60, 2, 60, 00468 2, 60, 2, 48, 57, 58, 58, 60, 58, 60, 00469 58, 60, 58, 60, 58, 60, 58, 60, 58, 60, 00470 58, 60, 58, 60, 58, 60, 58, 60, 58, 60, 00471 58, 60, 58, 60, 58, 60, 58, 60, 58, 60, 00472 00473 58, 60, 17, 58, 60, 58, 60, 58, 60, 58, 00474 60, 58, 60, 58, 60, 48, 58, 5, 60, 3, 00475 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 00476 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 00477 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 00478 60, 3, 60, 3, 60, 3, 17, 60, 3, 60, 00479 3, 60, 3, 60, 3, 60, 3, 60, 60, 60, 00480 8, 60, 60, 28, 60, 60, 46, 60, 60, 30, 00481 60, 60, 60, 15, 60, 39, 40, 41, 42, 43, 00482 7, 60, 60, 29, 60, 60, 17, 17, 60, 60, 00483 00484 60, 60, 60, 60, 59, 60, 59, 59, 60, 8, 00485 59, 60, 59, 60, 28, 59, 60, 59, 60, 46, 00486 59, 60, 59, 60, 30, 59, 60, 59, 60, 59, 00487 60, 15, 59, 60, 59, 39, 59, 40, 59, 41, 00488 59, 42, 59, 43, 59, 7, 59, 60, 59, 59, 00489 60, 29, 59, 60, 59, 60, 17, 59, 17, 59, 00490 60, 59, 60, 59, 60, 59, 60, 59, 60, 59, 00491 60, 2, 60, 2, 2, 60, 2, 8, 60, 2, 00492 60, 2, 28, 60, 2, 60, 2, 46, 60, 2, 00493 60, 2, 30, 60, 2, 60, 2, 60, 2, 15, 00494 00495 60, 2, 2, 2, 39, 2, 40, 2, 41, 2, 00496 42, 2, 43, 2, 7, 60, 2, 2, 60, 2, 00497 29, 60, 2, 60, 2, 17, 2, 17, 60, 2, 00498 60, 2, 60, 2, 60, 2, 60, 2, 60, 58, 00499 60, 58, 58, 60, 8, 58, 60, 58, 60, 28, 00500 58, 60, 58, 60, 46, 58, 60, 58, 60, 30, 00501 58, 60, 58, 60, 58, 60, 15, 58, 60, 58, 00502 58, 39, 58, 40, 58, 41, 58, 42, 58, 43, 00503 58, 7, 58, 60, 58, 58, 60, 29, 58, 60, 00504 58, 60, 17, 58, 17, 58, 60, 58, 60, 58, 00505 00506 60, 58, 60, 58, 60, 58, 60, 5, 60, 3, 00507 60, 3, 3, 60, 3, 8, 60, 3, 60, 3, 00508 28, 60, 3, 60, 3, 46, 60, 3, 60, 3, 00509 30, 60, 3, 60, 3, 60, 3, 15, 60, 3, 00510 3, 3, 39, 3, 40, 3, 41, 3, 42, 3, 00511 43, 3, 7, 60, 3, 3, 60, 3, 29, 60, 00512 3, 60, 3, 17, 3, 17, 60, 3, 60, 3, 00513 60, 3, 60, 3, 60, 3, 60, 60, 60, 60, 00514 60, 60, 60, 60, 60, 60, 60, 60, 47, 60, 00515 60, 60, 60, 60, 59, 60, 59, 59, 59, 60, 00516 00517 59, 60, 59, 60, 59, 60, 59, 60, 59, 60, 00518 59, 60, 59, 60, 59, 59, 59, 59, 59, 60, 00519 59, 60, 47, 59, 60, 59, 60, 59, 60, 59, 00520 60, 59, 60, 2, 60, 2, 2, 2, 60, 2, 00521 60, 2, 60, 2, 60, 2, 60, 2, 60, 2, 00522 60, 2, 60, 2, 2, 2, 2, 2, 2, 60, 00523 2, 60, 2, 47, 60, 2, 60, 2, 60, 2, 00524 60, 2, 60, 58, 60, 58, 58, 58, 60, 58, 00525 60, 58, 60, 58, 60, 58, 60, 58, 60, 58, 00526 60, 58, 60, 58, 58, 58, 58, 58, 58, 60, 00527 00528 58, 60, 47, 58, 60, 58, 60, 58, 60, 58, 00529 60, 58, 60, 3, 60, 3, 3, 3, 60, 3, 00530 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 00531 60, 3, 60, 3, 3, 3, 3, 3, 3, 60, 00532 3, 60, 3, 47, 60, 3, 60, 3, 60, 3, 00533 60, 3, 60, 16, 60, 60, 60, 60, 60, 60, 00534 60, 60, 60, 12, 60, 13, 60, 60, 26, 60, 00535 60, 60, 16, 59, 60, 59, 59, 59, 59, 60, 00536 59, 60, 59, 60, 59, 60, 59, 60, 59, 60, 00537 59, 60, 59, 60, 59, 59, 59, 59, 59, 12, 00538 00539 59, 60, 13, 59, 60, 59, 60, 26, 59, 60, 00540 59, 60, 59, 60, 2, 16, 60, 2, 2, 2, 00541 2, 60, 2, 60, 2, 60, 2, 60, 2, 60, 00542 2, 60, 2, 60, 2, 60, 2, 2, 2, 2, 00543 2, 2, 2, 12, 60, 2, 13, 60, 2, 2, 00544 60, 2, 26, 60, 2, 60, 2, 60, 16, 58, 00545 60, 58, 58, 58, 58, 60, 58, 60, 58, 60, 00546 58, 60, 58, 60, 58, 60, 58, 60, 58, 60, 00547 58, 58, 58, 58, 58, 58, 12, 58, 60, 13, 00548 58, 60, 58, 58, 60, 26, 58, 60, 58, 60, 00549 00550 58, 60, 3, 16, 60, 3, 3, 3, 3, 60, 00551 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 00552 3, 60, 3, 60, 3, 3, 3, 3, 3, 3, 00553 3, 12, 60, 3, 13, 60, 3, 3, 60, 3, 00554 26, 60, 3, 60, 3, 60, 60, 60, 60, 9, 00555 60, 60, 45, 60, 24, 60, 60, 60, 60, 60, 00556 59, 59, 59, 59, 60, 59, 60, 59, 60, 9, 00557 59, 60, 59, 59, 60, 45, 59, 60, 24, 59, 00558 60, 59, 60, 59, 59, 59, 59, 59, 59, 60, 00559 59, 60, 59, 60, 2, 2, 2, 2, 60, 2, 00560 00561 60, 2, 60, 2, 9, 60, 2, 2, 60, 2, 00562 45, 60, 2, 24, 60, 2, 60, 2, 2, 2, 00563 2, 2, 2, 2, 2, 60, 2, 60, 2, 60, 00564 58, 58, 58, 58, 60, 58, 60, 58, 60, 9, 00565 58, 60, 58, 58, 60, 45, 58, 60, 24, 58, 00566 60, 58, 60, 58, 58, 58, 58, 58, 58, 58, 00567 58, 60, 58, 60, 58, 60, 3, 3, 3, 3, 00568 60, 3, 60, 3, 60, 3, 9, 60, 3, 3, 00569 60, 3, 45, 60, 3, 24, 60, 3, 60, 3, 00570 3, 3, 3, 3, 3, 3, 3, 60, 3, 60, 00571 00572 3, 60, 60, 60, 60, 60, 60, 60, 60, 25, 00573 60, 14, 60, 60, 59, 59, 59, 59, 60, 59, 00574 60, 59, 60, 59, 59, 59, 59, 60, 59, 60, 00575 59, 60, 59, 60, 59, 59, 59, 59, 59, 25, 00576 59, 60, 14, 59, 60, 59, 60, 2, 2, 2, 00577 2, 60, 2, 60, 2, 60, 2, 2, 2, 2, 00578 60, 2, 60, 2, 60, 2, 60, 2, 2, 2, 00579 2, 2, 2, 2, 2, 25, 60, 2, 14, 60, 00580 2, 60, 58, 58, 58, 58, 60, 58, 60, 58, 00581 60, 58, 58, 58, 58, 60, 58, 60, 58, 60, 00582 00583 58, 60, 58, 58, 58, 58, 58, 58, 58, 25, 00584 58, 60, 14, 58, 60, 58, 60, 3, 3, 3, 00585 3, 60, 3, 60, 3, 60, 3, 3, 3, 3, 00586 60, 3, 60, 3, 60, 3, 60, 3, 3, 3, 00587 3, 3, 3, 3, 3, 25, 60, 3, 14, 60, 00588 3, 60, 60, 60, 60, 60, 60, 60, 60, 11, 00589 60, 59, 59, 59, 59, 60, 59, 60, 59, 60, 00590 59, 59, 59, 59, 59, 60, 59, 60, 59, 60, 00591 59, 60, 59, 59, 59, 59, 59, 59, 11, 59, 00592 60, 2, 2, 2, 2, 60, 2, 60, 2, 60, 00593 00594 2, 2, 2, 2, 2, 60, 2, 60, 2, 60, 00595 2, 60, 2, 2, 2, 2, 2, 2, 2, 2, 00596 2, 11, 60, 58, 58, 58, 58, 60, 58, 60, 00597 58, 60, 58, 58, 58, 58, 58, 60, 58, 60, 00598 58, 60, 58, 60, 58, 58, 58, 58, 58, 58, 00599 58, 58, 11, 58, 60, 3, 3, 3, 3, 60, 00600 3, 60, 3, 60, 3, 3, 3, 3, 3, 60, 00601 3, 60, 3, 60, 3, 60, 3, 3, 3, 3, 00602 3, 3, 3, 3, 3, 11, 60, 38, 60, 60, 00603 38, 60, 60, 60, 60, 60, 18, 19, 21, 59, 00604 00605 59, 38, 59, 59, 60, 59, 60, 38, 59, 60, 00606 59, 59, 59, 59, 59, 60, 59, 60, 59, 60, 00607 59, 60, 59, 59, 19, 59, 59, 59, 21, 59, 00608 59, 2, 2, 2, 38, 2, 60, 2, 60, 2, 00609 38, 60, 2, 2, 2, 2, 2, 60, 2, 60, 00610 2, 60, 2, 60, 2, 2, 2, 18, 2, 19, 00611 2, 2, 2, 21, 2, 2, 58, 58, 38, 58, 00612 58, 60, 58, 60, 38, 58, 60, 58, 58, 58, 00613 58, 58, 60, 58, 60, 58, 60, 58, 60, 58, 00614 58, 18, 58, 19, 58, 58, 58, 21, 58, 58, 00615 00616 58, 3, 3, 3, 38, 3, 60, 3, 60, 3, 00617 38, 60, 3, 3, 3, 3, 3, 60, 3, 60, 00618 3, 60, 3, 60, 3, 3, 3, 18, 3, 19, 00619 3, 3, 3, 21, 3, 3, 36, 36, 60, 60, 00620 60, 60, 60, 60, 44, 27, 36, 59, 59, 36, 00621 59, 60, 59, 60, 59, 59, 59, 59, 59, 60, 00622 59, 60, 59, 60, 59, 60, 59, 59, 44, 59, 00623 59, 59, 2, 36, 2, 2, 36, 60, 2, 60, 00624 2, 2, 2, 2, 2, 60, 2, 60, 2, 60, 00625 2, 60, 2, 2, 2, 44, 2, 2, 27, 2, 00626 00627 36, 58, 58, 36, 58, 60, 58, 60, 58, 58, 00628 58, 58, 58, 60, 58, 60, 58, 60, 58, 60, 00629 58, 58, 44, 58, 58, 27, 58, 58, 3, 36, 00630 3, 3, 36, 60, 3, 60, 3, 3, 3, 3, 00631 3, 60, 3, 60, 3, 60, 3, 60, 3, 3, 00632 3, 44, 3, 3, 27, 3, 60, 60, 60, 60, 00633 60, 59, 59, 60, 59, 59, 59, 59, 59, 60, 00634 59, 60, 59, 60, 59, 60, 59, 59, 59, 59, 00635 2, 2, 60, 2, 2, 2, 2, 2, 60, 2, 00636 60, 2, 60, 2, 60, 2, 2, 2, 2, 58, 00637 00638 58, 60, 58, 58, 58, 58, 58, 60, 58, 60, 00639 58, 60, 58, 60, 58, 58, 58, 58, 3, 3, 00640 60, 3, 3, 3, 3, 3, 60, 3, 60, 3, 00641 60, 3, 60, 3, 3, 3, 3, 37, 37, 60, 00642 35, 60, 60, 60, 35, 60, 20, 23, 37, 59, 00643 37, 59, 60, 59, 59, 59, 35, 59, 59, 60, 00644 59, 60, 59, 60, 35, 59, 60, 59, 59, 20, 00645 59, 23, 59, 2, 37, 2, 37, 60, 2, 2, 00646 2, 2, 35, 2, 60, 2, 60, 2, 60, 2, 00647 35, 60, 2, 2, 2, 20, 2, 23, 37, 58, 00648 00649 37, 58, 60, 58, 58, 58, 35, 58, 58, 60, 00650 58, 60, 58, 60, 35, 58, 60, 58, 58, 20, 00651 58, 23, 58, 3, 37, 3, 37, 60, 3, 3, 00652 3, 3, 35, 3, 60, 3, 60, 3, 60, 3, 00653 35, 60, 3, 3, 3, 20, 3, 23, 32, 60, 00654 32, 60, 60, 59, 32, 59, 59, 59, 60, 32, 00655 59, 60, 59, 60, 59, 59, 2, 2, 32, 2, 00656 2, 60, 2, 32, 60, 2, 60, 2, 2, 58, 00657 32, 58, 58, 58, 60, 32, 58, 60, 58, 60, 00658 58, 58, 3, 3, 32, 3, 3, 60, 3, 32, 00659 00660 60, 3, 60, 3, 3, 60, 60, 59, 59, 59, 00661 59, 60, 59, 60, 59, 59, 2, 2, 2, 2, 00662 60, 2, 60, 2, 2, 58, 58, 58, 58, 60, 00663 58, 60, 58, 58, 3, 3, 3, 3, 60, 3, 00664 60, 3, 3, 34, 60, 34, 60, 59, 59, 34, 00665 59, 59, 60, 34, 59, 60, 59, 59, 2, 2, 00666 2, 34, 2, 60, 2, 34, 60, 2, 2, 58, 00667 58, 34, 58, 58, 60, 34, 58, 60, 58, 58, 00668 3, 3, 3, 34, 3, 60, 3, 34, 60, 3, 00669 3, 31, 31, 60, 10, 31, 59, 59, 31, 59, 00670 00671 60, 10, 59, 59, 2, 31, 2, 2, 31, 60, 00672 2, 10, 2, 31, 58, 58, 31, 58, 60, 10, 00673 58, 58, 3, 31, 3, 3, 31, 60, 3, 10, 00674 3, 59, 59, 2, 2, 58, 58, 3, 3, 22, 00675 59, 22, 59, 2, 2, 22, 58, 22, 58, 3, 00676 3, 22, 59, 2, 58, 3, 59, 2, 58, 3, 00677 59, 2, 58, 3, 33, 33, 59, 2, 33, 33, 00678 58, 3, 33 00679 } ; 00680 00681 static yyconst flex_int16_t yy_accept[1688] = 00682 { 0, 00683 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 00684 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 00685 1, 1, 3, 4, 6, 9, 11, 13, 15, 18, 00686 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 00687 51, 54, 57, 60, 63, 65, 68, 71, 75, 79, 00688 83, 87, 91, 95, 99, 103, 107, 111, 115, 119, 00689 123, 127, 131, 135, 139, 143, 147, 151, 155, 159, 00690 163, 166, 170, 173, 177, 180, 183, 187, 191, 195, 00691 199, 203, 207, 211, 215, 219, 223, 227, 231, 235, 00692 239, 243, 247, 250, 254, 258, 261, 264, 267, 270, 00693 00694 274, 278, 282, 286, 290, 294, 298, 302, 306, 310, 00695 314, 318, 322, 326, 330, 334, 337, 341, 345, 349, 00696 353, 357, 361, 365, 369, 373, 377, 381, 384, 388, 00697 392, 396, 400, 404, 408, 412, 416, 420, 424, 428, 00698 432, 436, 440, 444, 448, 452, 453, 456, 458, 459, 00699 460, 461, 461, 462, 463, 464, 465, 466, 467, 468, 00700 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 00701 479, 480, 481, 482, 483, 484, 485, 485, 486, 487, 00702 488, 490, 492, 494, 496, 498, 500, 502, 504, 505, 00703 507, 509, 511, 513, 515, 517, 519, 521, 523, 525, 00704 00705 527, 529, 531, 533, 535, 537, 539, 541, 543, 545, 00706 547, 549, 551, 553, 554, 556, 557, 559, 561, 563, 00707 565, 567, 569, 571, 573, 575, 577, 579, 581, 583, 00708 585, 587, 589, 591, 593, 595, 597, 599, 601, 603, 00709 605, 606, 608, 610, 612, 613, 615, 616, 618, 620, 00710 622, 624, 626, 628, 630, 632, 634, 636, 638, 640, 00711 642, 644, 646, 648, 650, 652, 654, 656, 658, 660, 00712 662, 664, 665, 667, 669, 670, 672, 674, 676, 678, 00713 680, 682, 683, 685, 687, 689, 691, 693, 695, 697, 00714 699, 701, 703, 705, 707, 709, 711, 713, 715, 717, 00715 00716 719, 721, 723, 725, 727, 729, 731, 733, 735, 736, 00717 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 00718 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 00719 757, 758, 759, 760, 761, 762, 763, 765, 767, 769, 00720 771, 773, 775, 777, 779, 781, 783, 785, 787, 789, 00721 791, 793, 795, 797, 799, 802, 804, 806, 808, 810, 00722 812, 814, 816, 818, 820, 822, 824, 826, 828, 830, 00723 832, 834, 836, 838, 840, 842, 844, 846, 848, 850, 00724 853, 855, 857, 859, 861, 863, 865, 867, 869, 871, 00725 873, 875, 877, 879, 881, 883, 885, 887, 889, 891, 00726 00727 893, 895, 897, 899, 901, 903, 906, 908, 910, 912, 00728 914, 916, 918, 920, 922, 924, 926, 928, 930, 932, 00729 934, 936, 938, 940, 942, 944, 946, 948, 950, 952, 00730 954, 956, 959, 961, 963, 965, 967, 969, 970, 970, 00731 971, 973, 974, 976, 977, 979, 980, 982, 983, 984, 00732 986, 986, 986, 987, 988, 989, 990, 991, 993, 993, 00733 994, 996, 997, 998, 1000, 1001, 1002, 1003, 1004, 1005, 00734 1007, 1008, 1010, 1013, 1015, 1018, 1020, 1023, 1025, 1028, 00735 1030, 1032, 1035, 1036, 1038, 1040, 1042, 1044, 1046, 1049, 00736 1050, 1052, 1055, 1057, 1059, 1062, 1064, 1066, 1068, 1070, 00737 00738 1072, 1074, 1075, 1077, 1080, 1082, 1085, 1087, 1090, 1092, 00739 1095, 1097, 1099, 1102, 1103, 1104, 1106, 1108, 1110, 1112, 00740 1114, 1117, 1118, 1120, 1123, 1125, 1127, 1130, 1132, 1134, 00741 1136, 1138, 1140, 1142, 1143, 1145, 1148, 1150, 1153, 1155, 00742 1158, 1160, 1163, 1165, 1167, 1170, 1171, 1172, 1174, 1176, 00743 1178, 1180, 1182, 1185, 1186, 1188, 1191, 1193, 1195, 1198, 00744 1200, 1202, 1204, 1206, 1208, 1210, 1212, 1213, 1215, 1218, 00745 1220, 1223, 1225, 1228, 1230, 1233, 1235, 1237, 1240, 1241, 00746 1242, 1244, 1246, 1248, 1250, 1252, 1255, 1256, 1258, 1261, 00747 1263, 1265, 1268, 1270, 1272, 1274, 1276, 1278, 1279, 1279, 00748 00749 1279, 1280, 1281, 1282, 1283, 1284, 1285, 1286, 1287, 1287, 00750 1287, 1287, 1287, 1287, 1288, 1289, 1291, 1292, 1293, 1294, 00751 1295, 1297, 1298, 1299, 1301, 1303, 1305, 1307, 1309, 1311, 00752 1313, 1315, 1316, 1317, 1318, 1319, 1321, 1323, 1326, 1328, 00753 1330, 1332, 1334, 1336, 1337, 1338, 1340, 1342, 1344, 1346, 00754 1348, 1350, 1352, 1354, 1355, 1356, 1357, 1358, 1359, 1361, 00755 1363, 1366, 1368, 1370, 1372, 1374, 1376, 1377, 1378, 1380, 00756 1382, 1384, 1386, 1388, 1390, 1392, 1394, 1395, 1396, 1397, 00757 1398, 1399, 1401, 1403, 1406, 1408, 1410, 1412, 1414, 1416, 00758 1417, 1418, 1420, 1422, 1424, 1426, 1428, 1430, 1432, 1434, 00759 00760 1435, 1436, 1437, 1438, 1439, 1441, 1443, 1446, 1448, 1450, 00761 1452, 1454, 1456, 1456, 1456, 1456, 1457, 1458, 1459, 1460, 00762 1461, 1462, 1463, 1464, 1464, 1464, 1464, 1464, 1464, 1464, 00763 1466, 1468, 1468, 1469, 1471, 1472, 1473, 1476, 1477, 1478, 00764 1479, 1481, 1483, 1485, 1487, 1489, 1491, 1493, 1495, 1496, 00765 1497, 1498, 1499, 1500, 1503, 1506, 1508, 1511, 1513, 1515, 00766 1518, 1519, 1520, 1521, 1523, 1525, 1527, 1529, 1531, 1533, 00767 1535, 1537, 1538, 1539, 1540, 1541, 1542, 1543, 1546, 1549, 00768 1550, 1552, 1555, 1557, 1559, 1562, 1563, 1564, 1565, 1567, 00769 1569, 1571, 1573, 1575, 1577, 1579, 1581, 1582, 1583, 1584, 00770 00771 1585, 1586, 1587, 1590, 1593, 1594, 1596, 1599, 1601, 1603, 00772 1606, 1607, 1608, 1609, 1611, 1613, 1615, 1617, 1619, 1621, 00773 1623, 1625, 1626, 1627, 1628, 1629, 1630, 1631, 1634, 1637, 00774 1638, 1640, 1643, 1645, 1647, 1647, 1647, 1647, 1648, 1649, 00775 1650, 1652, 1652, 1653, 1655, 1657, 1658, 1658, 1658, 1658, 00776 1658, 1658, 1658, 1658, 1659, 1660, 1661, 1662, 1663, 1664, 00777 1666, 1668, 1670, 1673, 1674, 1676, 1679, 1682, 1684, 1685, 00778 1686, 1687, 1688, 1689, 1691, 1693, 1695, 1696, 1697, 1698, 00779 1700, 1702, 1704, 1707, 1708, 1710, 1713, 1716, 1718, 1719, 00780 1720, 1721, 1722, 1723, 1724, 1725, 1727, 1729, 1731, 1732, 00781 00782 1733, 1734, 1736, 1738, 1740, 1743, 1744, 1746, 1749, 1752, 00783 1754, 1755, 1756, 1757, 1758, 1759, 1760, 1761, 1763, 1765, 00784 1767, 1768, 1769, 1770, 1772, 1774, 1776, 1779, 1780, 1782, 00785 1785, 1788, 1790, 1791, 1792, 1793, 1794, 1795, 1796, 1797, 00786 1799, 1801, 1803, 1803, 1803, 1803, 1804, 1805, 1806, 1806, 00787 1806, 1806, 1807, 1808, 1809, 1810, 1810, 1810, 1810, 1810, 00788 1810, 1810, 1810, 1812, 1814, 1815, 1816, 1817, 1818, 1820, 00789 1822, 1824, 1825, 1826, 1827, 1829, 1831, 1833, 1835, 1836, 00790 1837, 1838, 1839, 1840, 1843, 1846, 1848, 1849, 1850, 1851, 00791 1853, 1855, 1857, 1858, 1859, 1860, 1862, 1864, 1866, 1868, 00792 00793 1869, 1870, 1871, 1872, 1873, 1874, 1875, 1878, 1881, 1883, 00794 1884, 1885, 1886, 1888, 1890, 1892, 1893, 1894, 1895, 1897, 00795 1899, 1901, 1903, 1904, 1905, 1906, 1907, 1908, 1909, 1910, 00796 1913, 1916, 1918, 1919, 1920, 1921, 1923, 1925, 1927, 1928, 00797 1929, 1930, 1932, 1934, 1936, 1938, 1939, 1940, 1941, 1942, 00798 1943, 1944, 1945, 1948, 1951, 1953, 1953, 1953, 1953, 1954, 00799 1955, 1956, 1956, 1956, 1956, 1956, 1957, 1958, 1959, 1960, 00800 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1962, 1963, 00801 1964, 1965, 1967, 1969, 1971, 1972, 1973, 1974, 1975, 1977, 00802 1979, 1981, 1983, 1984, 1985, 1986, 1987, 1988, 1989, 1992, 00803 00804 1993, 1994, 1995, 1997, 1999, 2001, 2002, 2003, 2004, 2005, 00805 2007, 2009, 2011, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 00806 2020, 2021, 2024, 2025, 2026, 2027, 2029, 2031, 2033, 2034, 00807 2035, 2036, 2037, 2039, 2041, 2043, 2045, 2046, 2047, 2048, 00808 2049, 2050, 2051, 2052, 2053, 2056, 2057, 2058, 2059, 2061, 00809 2063, 2065, 2066, 2067, 2068, 2069, 2071, 2073, 2075, 2077, 00810 2078, 2079, 2080, 2081, 2082, 2083, 2084, 2085, 2088, 2088, 00811 2088, 2089, 2090, 2091, 2093, 2093, 2093, 2093, 2093, 2094, 00812 2095, 2096, 2097, 2097, 2097, 2098, 2099, 2099, 2099, 2100, 00813 2100, 2100, 2101, 2102, 2104, 2106, 2108, 2111, 2112, 2113, 00814 00815 2114, 2115, 2117, 2119, 2121, 2123, 2124, 2125, 2127, 2128, 00816 2129, 2131, 2132, 2133, 2134, 2136, 2138, 2140, 2143, 2144, 00817 2145, 2146, 2147, 2149, 2151, 2153, 2155, 2156, 2157, 2159, 00818 2161, 2162, 2163, 2165, 2166, 2167, 2168, 2169, 2171, 2173, 00819 2175, 2178, 2179, 2180, 2181, 2182, 2184, 2186, 2188, 2190, 00820 2191, 2192, 2194, 2196, 2197, 2198, 2200, 2201, 2202, 2203, 00821 2204, 2206, 2208, 2210, 2213, 2214, 2215, 2216, 2217, 2219, 00822 2221, 2223, 2225, 2226, 2227, 2229, 2231, 2232, 2233, 2235, 00823 2236, 2237, 2238, 2238, 2240, 2241, 2241, 2241, 2241, 2241, 00824 2242, 2243, 2244, 2245, 2245, 2245, 2246, 2246, 2247, 2247, 00825 00826 2249, 2250, 2253, 2255, 2256, 2257, 2258, 2259, 2261, 2263, 00827 2265, 2267, 2268, 2269, 2271, 2272, 2273, 2275, 2276, 2279, 00828 2281, 2282, 2283, 2284, 2285, 2287, 2289, 2291, 2293, 2294, 00829 2295, 2297, 2298, 2300, 2301, 2303, 2304, 2307, 2309, 2310, 00830 2311, 2312, 2313, 2315, 2317, 2319, 2321, 2322, 2323, 2325, 00831 2326, 2328, 2329, 2331, 2332, 2335, 2337, 2338, 2339, 2340, 00832 2341, 2343, 2345, 2347, 2349, 2350, 2351, 2353, 2354, 2356, 00833 2357, 2357, 2358, 2358, 2358, 2358, 2358, 2359, 2360, 2361, 00834 2362, 2362, 2362, 2362, 2362, 2363, 2365, 2366, 2367, 2368, 00835 2369, 2371, 2373, 2375, 2377, 2378, 2379, 2380, 2381, 2382, 00836 00837 2384, 2385, 2386, 2387, 2388, 2390, 2392, 2394, 2396, 2397, 00838 2398, 2399, 2400, 2401, 2403, 2404, 2405, 2406, 2407, 2409, 00839 2411, 2413, 2415, 2416, 2417, 2418, 2419, 2420, 2422, 2423, 00840 2424, 2425, 2426, 2428, 2430, 2432, 2434, 2435, 2436, 2437, 00841 2438, 2439, 2441, 2441, 2441, 2441, 2442, 2443, 2444, 2445, 00842 2447, 2447, 2447, 2448, 2449, 2451, 2454, 2455, 2456, 2457, 00843 2459, 2461, 2463, 2465, 2468, 2469, 2470, 2472, 2474, 2476, 00844 2479, 2480, 2481, 2482, 2484, 2486, 2488, 2490, 2493, 2494, 00845 2495, 2497, 2499, 2501, 2504, 2505, 2506, 2507, 2509, 2511, 00846 2513, 2515, 2518, 2519, 2520, 2522, 2524, 2526, 2529, 2530, 00847 00848 2531, 2532, 2534, 2536, 2538, 2540, 2543, 2544, 2545, 2547, 00849 2549, 2549, 2550, 2550, 2551, 2553, 2554, 2554, 2554, 2555, 00850 2557, 2558, 2560, 2563, 2565, 2566, 2567, 2568, 2570, 2571, 00851 2573, 2576, 2578, 2579, 2580, 2581, 2583, 2584, 2586, 2589, 00852 2591, 2592, 2593, 2594, 2596, 2597, 2599, 2602, 2604, 2605, 00853 2606, 2606, 2606, 2606, 2607, 2608, 2608, 2608, 2609, 2610, 00854 2611, 2613, 2615, 2616, 2617, 2618, 2619, 2620, 2622, 2624, 00855 2625, 2626, 2627, 2628, 2629, 2631, 2633, 2634, 2635, 2636, 00856 2637, 2638, 2640, 2642, 2643, 2644, 2644, 2644, 2645, 2646, 00857 2648, 2648, 2648, 2649, 2650, 2652, 2654, 2657, 2658, 2659, 00858 00859 2660, 2661, 2663, 2665, 2668, 2669, 2670, 2671, 2672, 2674, 00860 2676, 2679, 2680, 2681, 2682, 2683, 2685, 2687, 2690, 2691, 00861 2692, 2693, 2693, 2695, 2696, 2696, 2698, 2699, 2702, 2704, 00862 2705, 2707, 2708, 2711, 2713, 2714, 2716, 2717, 2720, 2722, 00863 2723, 2725, 2726, 2729, 2731, 2732, 2732, 2732, 2733, 2734, 00864 2735, 2736, 2737, 2738, 2739, 2740, 2740, 2741, 2742, 2744, 00865 2745, 2747, 2748, 2750, 2751, 2753, 2753, 2754, 2755, 2756, 00866 2757, 2757, 2758, 2759, 2760, 2761, 2761, 2762, 2763, 2764, 00867 2765, 2766, 2768, 2770, 2772, 2774, 2774 00868 } ; 00869 00870 static yyconst flex_int32_t yy_ec[256] = 00871 { 0, 00872 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 00873 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, 00874 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 00875 1, 2, 1, 5, 6, 1, 1, 1, 1, 1, 00876 1, 1, 1, 1, 7, 1, 1, 8, 9, 10, 00877 11, 12, 13, 8, 8, 8, 8, 1, 1, 1, 00878 1, 1, 1, 1, 14, 15, 16, 17, 18, 19, 00879 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 00880 23, 30, 31, 32, 33, 34, 35, 36, 37, 23, 00881 1, 1, 1, 1, 38, 1, 39, 40, 41, 42, 00882 00883 43, 44, 45, 46, 47, 23, 48, 49, 50, 51, 00884 52, 53, 23, 54, 55, 56, 57, 58, 59, 60, 00885 61, 23, 1, 1, 1, 1, 1, 1, 1, 1, 00886 1, 1, 1, 62, 1, 1, 1, 1, 1, 1, 00887 1, 1, 1, 1, 1, 63, 1, 1, 1, 1, 00888 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 00889 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 00890 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 00891 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 00892 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 00893 00894 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 00895 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 00896 1, 1, 1, 1, 1, 64, 1, 1, 1, 1, 00897 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 00898 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 00899 1, 1, 1, 1, 1 00900 } ; 00901 00902 static yyconst flex_int32_t yy_meta[65] = 00903 { 0, 00904 1, 2, 3, 1, 4, 1, 5, 6, 6, 6, 00905 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 00906 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 00907 8, 8, 8, 8, 8, 8, 8, 9, 7, 7, 00908 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 00909 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 00910 8, 1, 1, 1 00911 } ; 00912 00913 static yyconst flex_int16_t yy_base[1726] = 00914 { 0, 00915 0, 63, 1054, 64, 1050, 65, 1049, 66, 72, 135, 00916 141, 204, 210, 273, 272, 290, 1042, 291, 316, 292, 00917 0, 135, 1041, 7276, 1023, 7276, 1018, 0, 291, 350, 00918 368, 360, 365, 350, 368, 0, 358, 361, 376, 364, 00919 370, 407, 388, 372, 956, 303, 0, 982, 304, 981, 00920 389, 977, 397, 951, 424, 433, 481, 515, 433, 438, 00921 483, 440, 492, 522, 495, 519, 551, 590, 541, 563, 00922 0, 412, 0, 947, 941, 204, 457, 646, 710, 761, 00923 578, 602, 646, 579, 647, 650, 711, 712, 713, 804, 00924 724, 762, 844, 424, 0, 0, 0, 891, 399, 769, 00925 00926 860, 924, 975, 748, 780, 807, 666, 860, 862, 861, 00927 863, 864, 1018, 925, 926, 825, 274, 947, 1067, 784, 00928 949, 539, 447, 968, 851, 455, 850, 0, 1000, 1116, 00929 1165, 1199, 1015, 1098, 1021, 714, 1016, 1091, 1117, 928, 00930 1118, 1242, 1141, 1167, 480, 7276, 304, 7276, 846, 842, 00931 7276, 806, 1079, 0, 418, 445, 473, 434, 500, 518, 00932 440, 483, 547, 593, 537, 539, 548, 557, 560, 609, 00933 610, 583, 626, 630, 613, 645, 744, 510, 0, 0, 00934 802, 621, 797, 626, 790, 677, 786, 1091, 0, 717, 00935 1168, 1171, 1169, 1122, 1218, 1214, 1215, 1257, 1183, 1264, 00936 00937 1279, 1270, 1288, 1292, 1294, 1316, 1318, 1320, 1322, 1357, 00938 1338, 1359, 685, 0, 783, 435, 1140, 1344, 1362, 1364, 00939 1368, 1386, 1402, 1398, 1416, 1418, 1420, 1442, 1457, 1460, 00940 1456, 1462, 1478, 1492, 1494, 1400, 1497, 1513, 1510, 1529, 00941 684, 690, 0, 0, 0, 0, 513, 1561, 1516, 1553, 00942 1563, 1564, 1540, 1574, 1575, 1605, 1598, 1604, 1620, 1641, 00943 1636, 1646, 1640, 1651, 1662, 1675, 1652, 1655, 1689, 1703, 00944 1704, 674, 584, 1736, 0, 651, 803, 793, 688, 701, 00945 679, 0, 1751, 1751, 1752, 1754, 1753, 1755, 1789, 1783, 00946 1804, 1803, 1805, 1831, 1840, 1846, 1845, 1851, 1875, 1847, 00947 00948 1877, 1773, 1827, 1881, 1897, 1901, 738, 793, 7276, 632, 00949 7276, 708, 1955, 726, 785, 807, 849, 863, 791, 839, 00950 879, 862, 865, 666, 1960, 576, 888, 914, 908, 2019, 00951 947, 954, 975, 926, 958, 7276, 1891, 2083, 1960, 1936, 00952 1967, 2019, 1962, 1966, 2020, 2021, 2023, 2083, 2064, 2115, 00953 2025, 2026, 2118, 2095, 2173, 2030, 2090, 2121, 2150, 2174, 00954 0, 2148, 2237, 2177, 2187, 2237, 2238, 2239, 2193, 2240, 00955 2243, 2258, 2281, 2295, 2334, 2284, 2282, 2310, 2336, 2383, 00956 2383, 2339, 2384, 2386, 2387, 0, 0, 2393, 2447, 2447, 00957 2448, 2449, 2451, 2453, 2454, 2483, 2492, 2494, 2503, 2506, 00958 00959 2551, 2532, 2552, 2501, 2554, 2605, 2581, 2605, 2608, 2610, 00960 2615, 0, 1178, 2612, 2669, 2644, 2670, 2671, 2673, 2675, 00961 2676, 2705, 2689, 2716, 2721, 2740, 2781, 2720, 2781, 2782, 00962 2758, 2837, 2813, 2784, 2839, 2837, 2842, 974, 1009, 1233, 00963 961, 975, 0, 1017, 0, 1015, 0, 1061, 1063, 0, 00964 1066, 1111, 7276, 7276, 7276, 7276, 7276, 559, 1278, 1129, 00965 0, 1098, 0, 2901, 1170, 1225, 1229, 1260, 1266, 2901, 00966 1501, 2903, 2902, 2904, 2905, 2915, 2939, 2944, 2945, 2957, 00967 2959, 2958, 1294, 0, 0, 0, 0, 0, 2971, 1364, 00968 2986, 2960, 2998, 2810, 3045, 3045, 3046, 3022, 3049, 3050, 00969 00970 3084, 1752, 3081, 3088, 3110, 3052, 3112, 3108, 3130, 3126, 00971 3132, 3131, 3136, 1320, 1333, 0, 0, 0, 0, 0, 00972 3146, 1427, 3158, 3160, 3178, 0, 3225, 3225, 3226, 3202, 00973 3167, 3229, 3232, 2307, 3247, 3261, 3268, 3271, 3283, 3284, 00974 3287, 3289, 3303, 3307, 3310, 1371, 1435, 0, 0, 0, 00975 0, 0, 3325, 1507, 3319, 3326, 3353, 839, 3400, 3400, 00976 3331, 3376, 3346, 3402, 1549, 3406, 2384, 3421, 3403, 3445, 00977 3422, 3452, 3461, 3465, 3463, 3479, 3466, 3481, 1457, 1466, 00978 0, 0, 0, 0, 0, 3493, 1697, 3503, 3502, 3505, 00979 3552, 3616, 3523, 3537, 3525, 3524, 3551, 1478, 1579, 2139, 00980 00981 1581, 2309, 1603, 1614, 1667, 1675, 1340, 530, 1678, 1687, 00982 1723, 1727, 1399, 1750, 1759, 0, 1705, 1433, 1788, 1802, 00983 3553, 1848, 2710, 3555, 3616, 3552, 3617, 3619, 3637, 3564, 00984 3622, 1874, 1877, 1889, 1463, 3618, 3661, 3663, 3675, 3676, 00985 3677, 3691, 3707, 1890, 2840, 3703, 3713, 3731, 3727, 3734, 00986 3755, 3743, 3749, 1897, 1901, 1955, 1963, 1534, 3771, 3762, 00987 3777, 3793, 3797, 3798, 3809, 3807, 1964, 2841, 3829, 3833, 00988 3828, 3839, 3855, 3871, 3783, 3852, 2048, 2092, 2172, 2176, 00989 1543, 3883, 3884, 3878, 3894, 3907, 3905, 3914, 3923, 2203, 00990 3085, 3912, 3933, 3944, 3943, 3957, 3964, 3954, 3978, 2241, 00991 00992 2255, 2283, 2385, 1890, 3980, 3993, 3984, 4007, 4016, 4020, 00993 4021, 0, 2100, 2148, 2188, 2388, 2395, 2398, 2394, 4074, 00994 2454, 2480, 2492, 2533, 2539, 2541, 2499, 2551, 2613, 0, 00995 0, 2616, 2645, 0, 2553, 2617, 4023, 2700, 2706, 2725, 00996 4050, 4074, 4078, 4080, 4138, 4085, 4138, 4139, 2737, 2741, 00997 2716, 2756, 2757, 4081, 4094, 4140, 4141, 4142, 4160, 4170, 00998 2814, 2814, 2820, 4181, 4191, 4184, 4210, 4260, 4194, 4260, 00999 4212, 2951, 2986, 2987, 2750, 2775, 2842, 4236, 4262, 2855, 01000 4263, 4264, 4265, 4266, 4286, 3001, 3004, 3042, 4304, 4313, 01001 4314, 4315, 4365, 4365, 4366, 4369, 3067, 3100, 3160, 2861, 01002 01003 2905, 2960, 4316, 4317, 2990, 4370, 4371, 4372, 4385, 4401, 01004 3178, 3179, 3183, 4417, 4416, 4422, 4423, 4473, 4473, 4474, 01005 4477, 3223, 3237, 3286, 3321, 3370, 3404, 4412, 4454, 3421, 01006 4478, 4480, 4493, 4504, 3419, 3462, 3343, 3476, 3553, 3356, 01007 0, 4519, 4527, 0, 0, 3428, 3560, 3571, 3586, 3659, 01008 3616, 3677, 3679, 3687, 3643, 3695, 3676, 3709, 3729, 4517, 01009 4533, 4540, 4531, 4558, 4602, 4543, 4567, 4581, 3723, 3793, 01010 3786, 3796, 3862, 4591, 4609, 4623, 3802, 3836, 3895, 4586, 01011 4633, 4649, 4618, 4654, 4698, 4652, 4654, 4661, 3945, 4000, 01012 4004, 4004, 4009, 4073, 4079, 4683, 4701, 4688, 4016, 4025, 01013 01014 4086, 4710, 4719, 4738, 4722, 4749, 4793, 4737, 4740, 4758, 01015 4083, 4135, 4145, 4149, 4186, 4195, 4193, 4772, 4774, 4788, 01016 4188, 4263, 4209, 4806, 4802, 4829, 4751, 4827, 4871, 4822, 01017 4834, 4844, 4265, 4271, 4273, 4234, 4326, 4364, 4378, 4860, 01018 4873, 4878, 4410, 4430, 4439, 4478, 4431, 4517, 4475, 4541, 01019 4876, 4509, 4547, 4886, 522, 4561, 4523, 4579, 4556, 4590, 01020 4566, 4601, 0, 0, 4634, 4623, 4666, 4633, 4907, 4910, 01021 4909, 4675, 4667, 4912, 4930, 4931, 4954, 4933, 4714, 4691, 01022 4714, 4761, 4773, 4951, 4953, 4973, 4783, 4793, 4804, 4972, 01023 4993, 4975, 4838, 4850, 4931, 4974, 4996, 5003, 5014, 4884, 01024 01025 4956, 4961, 4991, 4992, 5010, 5013, 5027, 5037, 5042, 5013, 01026 5029, 5028, 5051, 5053, 5064, 5032, 5044, 5050, 5073, 5085, 01027 5095, 5088, 5072, 5040, 5075, 5073, 5094, 5086, 5090, 5109, 01028 5114, 5125, 5099, 5103, 5114, 5136, 5141, 5157, 5131, 5124, 01029 5139, 5159, 5164, 5175, 5185, 5152, 5142, 5144, 5162, 5181, 01030 5181, 5184, 5199, 5203, 5213, 5194, 5182, 5187, 5210, 5197, 01031 5208, 5220, 5225, 5225, 5225, 5231, 5232, 5230, 5231, 5229, 01032 5232, 5226, 5227, 5246, 5241, 5230, 5245, 508, 5250, 5238, 01033 5243, 5272, 5263, 5284, 5262, 5264, 5265, 5277, 5310, 5311, 01034 5299, 5314, 5291, 5305, 5307, 5288, 5290, 5307, 5333, 5317, 01035 01036 5311, 5313, 5356, 5334, 5361, 5346, 5348, 5346, 5356, 5363, 01037 5372, 5393, 5400, 5356, 5367, 5365, 5373, 5368, 5376, 5383, 01038 5402, 5412, 5409, 5397, 5399, 5439, 5434, 5448, 5417, 5419, 01039 5419, 5421, 5455, 5476, 5486, 5454, 5438, 5440, 5447, 5451, 01040 5456, 5462, 5475, 5484, 5497, 5494, 5481, 5484, 5504, 5506, 01041 5510, 5505, 5511, 5510, 5528, 5542, 5545, 5546, 5555, 5524, 01042 5530, 5539, 5540, 5546, 5554, 5545, 5556, 5577, 5565, 5557, 01043 7276, 5580, 5574, 0, 5582, 5575, 5581, 5580, 5586, 5578, 01044 5585, 5596, 5589, 5590, 7276, 7276, 5598, 5594, 7276, 5593, 01045 5611, 5610, 5600, 0, 5626, 5632, 5614, 5614, 5617, 5628, 01046 01047 5629, 5645, 5644, 5667, 5664, 5636, 5642, 0, 5639, 5648, 01048 0, 5675, 5679, 5645, 0, 5688, 5694, 5690, 5674, 5685, 01049 5692, 5691, 5714, 5717, 5718, 5729, 5696, 5717, 0, 0, 01050 5731, 5727, 0, 5723, 5743, 5742, 5732, 0, 5768, 5766, 01051 5753, 5747, 5760, 5766, 5748, 5784, 5787, 5800, 5811, 5775, 01052 5783, 0, 0, 5778, 5785, 0, 5784, 5815, 5820, 5788, 01053 0, 5824, 5834, 5831, 5827, 5826, 5832, 5824, 5855, 5835, 01054 5858, 5873, 5833, 5836, 0, 0, 5855, 5863, 0, 5861, 01055 5881, 7276, 5880, 0, 5881, 5880, 5873, 5890, 5881, 5889, 01056 5880, 5897, 5888, 5901, 5887, 7276, 5901, 7276, 5912, 0, 01057 01058 5909, 5915, 5927, 5910, 5902, 5920, 5913, 5928, 5946, 5949, 01059 5964, 5930, 5921, 0, 5940, 5945, 0, 5951, 5965, 5984, 01060 5962, 5945, 5973, 5954, 5996, 5995, 6006, 6010, 5991, 5960, 01061 0, 5995, 0, 6007, 0, 6011, 6026, 6037, 6019, 6005, 01062 6028, 6031, 6048, 6052, 6063, 6067, 6046, 6037, 0, 6049, 01063 0, 6061, 0, 6060, 6076, 6083, 6066, 6077, 6093, 6085, 01064 6099, 6102, 6113, 6123, 6100, 6096, 0, 6110, 0, 6125, 01065 6123, 6126, 6117, 6130, 6118, 6124, 6128, 6141, 6128, 6131, 01066 6144, 6138, 6142, 6146, 6150, 6164, 6147, 6161, 6150, 6156, 01067 6175, 6176, 6188, 6194, 6173, 6182, 6188, 6194, 6192, 6214, 01068 01069 6195, 6212, 6205, 6207, 6229, 6251, 6238, 6250, 6210, 6215, 01070 6224, 6237, 6257, 6270, 6249, 6257, 6247, 6249, 6288, 6293, 01071 6300, 6299, 6279, 6265, 6289, 6294, 6299, 6336, 6295, 6311, 01072 6295, 6305, 6337, 6342, 6349, 6348, 6322, 6335, 6338, 6343, 01073 7276, 0, 6346, 6360, 6348, 7276, 6358, 6376, 6368, 0, 01074 6375, 485, 7276, 7276, 0, 6386, 6377, 6384, 6376, 0, 01075 6399, 6395, 6408, 6402, 6392, 472, 0, 0, 0, 6406, 01076 6404, 6398, 6404, 0, 6430, 6448, 6450, 6446, 6429, 466, 01077 0, 0, 0, 6452, 6415, 6433, 6423, 0, 6470, 6486, 01078 6457, 6472, 6457, 458, 0, 0, 0, 6488, 6455, 6489, 01079 01080 6482, 0, 6501, 6504, 6510, 6516, 6495, 420, 0, 0, 01081 6487, 391, 6516, 6503, 346, 6524, 6523, 6521, 6517, 257, 01082 6534, 6540, 6542, 6564, 6536, 6535, 6533, 240, 6550, 6562, 01083 6574, 6584, 6547, 6549, 6558, 170, 6574, 6596, 6586, 6608, 01084 6592, 6578, 6583, 102, 6602, 6624, 6620, 6630, 6614, 6606, 01085 6614, 6615, 6632, 6627, 6633, 6642, 6636, 6639, 6646, 6653, 01086 6662, 6665, 6654, 6658, 6664, 6658, 6666, 6684, 6700, 6676, 01087 6664, 6669, 6677, 6683, 6707, 6723, 6684, 6698, 6701, 6696, 01088 6713, 6722, 6742, 6714, 6720, 6721, 6724, 7276, 6724, 0, 01089 6723, 6734, 6743, 6741, 0, 6757, 6764, 6746, 6749, 6763, 01090 01091 6756, 0, 6773, 6779, 6767, 6765, 6771, 6781, 0, 6802, 01092 6788, 6779, 6781, 6800, 6796, 0, 6814, 6815, 6804, 6806, 01093 7276, 6811, 0, 7276, 6809, 0, 6816, 6829, 0, 6814, 01094 0, 6832, 6838, 0, 6817, 0, 6843, 6845, 0, 6834, 01095 0, 6852, 6856, 0, 6842, 6858, 6857, 6863, 6862, 6865, 01096 6865, 6870, 6869, 6872, 6872, 6861, 7276, 6862, 0, 6864, 01097 0, 6866, 0, 6869, 0, 6880, 6885, 6887, 6888, 6892, 01098 6882, 6885, 6887, 6889, 6890, 6908, 6910, 6911, 6912, 6913, 01099 7276, 0, 0, 0, 0, 7276, 6956, 6965, 6974, 6977, 01100 6985, 6989, 6993, 7002, 7011, 7020, 7029, 7038, 7047, 7056, 01101 01102 7065, 7069, 7072, 7077, 7086, 7095, 7104, 7113, 7122, 7131, 01103 7140, 7149, 7158, 7167, 7176, 7185, 7194, 7203, 7212, 7221, 01104 7230, 7239, 7248, 7257, 7266 01105 } ; 01106 01107 static yyconst flex_int16_t yy_def[1726] = 01108 { 0, 01109 1686, 1, 1, 1, 1, 1, 1, 1, 1686, 9, 01110 1686, 11, 1686, 13, 1, 15, 1, 1, 1686, 19, 01111 1687, 1688, 1686, 1686, 1686, 1686, 1686, 1689, 1686, 1690, 01112 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 01113 1690, 1690, 1690, 1690, 1686, 1686, 1691, 1686, 1686, 1686, 01114 1686, 1686, 1686, 1686, 1692, 1693, 1693, 57, 57, 57, 01115 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 01116 1692, 1686, 1694, 1694, 1694, 1695, 1694, 1696, 1696, 79, 01117 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 01118 79, 79, 1694, 1694, 1697, 1698, 1698, 1698, 1699, 1698, 01119 01120 1700, 1700, 102, 102, 102, 102, 102, 102, 102, 102, 01121 102, 102, 102, 102, 102, 1698, 1701, 1702, 1690, 119, 01122 119, 119, 119, 119, 1686, 1686, 1686, 1703, 1703, 1704, 01123 1704, 131, 131, 131, 131, 131, 131, 131, 131, 131, 01124 131, 131, 131, 131, 1686, 1686, 1705, 1686, 1686, 1686, 01125 1686, 1689, 1686, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 01126 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 01127 1690, 1690, 1690, 1690, 1690, 1690, 1686, 1686, 1691, 1691, 01128 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1692, 1692, 57, 01129 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 01130 01131 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 01132 57, 57, 1686, 1694, 1694, 1695, 1694, 79, 79, 79, 01133 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 01134 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 01135 1694, 1694, 1697, 1697, 1698, 1698, 1699, 1698, 102, 102, 01136 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 01137 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 01138 102, 1698, 1701, 1702, 1702, 119, 119, 119, 1686, 1686, 01139 1686, 1703, 1703, 131, 131, 131, 131, 131, 131, 131, 01140 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 01141 01142 131, 131, 131, 131, 131, 131, 1686, 1705, 1686, 1686, 01143 1686, 1690, 1706, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 01144 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1707, 01145 1690, 1690, 1690, 1690, 1690, 1686, 57, 1708, 57, 57, 01146 57, 57, 57, 57, 57, 57, 57, 57, 57, 1693, 01147 57, 57, 57, 57, 1709, 57, 57, 57, 57, 57, 01148 1694, 79, 1710, 79, 79, 79, 79, 79, 79, 79, 01149 79, 79, 79, 79, 79, 79, 79, 79, 79, 1711, 01150 79, 79, 79, 79, 79, 1694, 1698, 102, 1712, 102, 01151 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 01152 01153 102, 102, 102, 102, 102, 1713, 102, 102, 102, 102, 01154 102, 1698, 119, 131, 1714, 131, 131, 131, 131, 131, 01155 131, 131, 131, 131, 131, 131, 1704, 131, 131, 131, 01156 131, 1715, 131, 131, 131, 131, 131, 1690, 1686, 1690, 01157 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 01158 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1690, 1686, 1690, 01159 1690, 1690, 1716, 1707, 1690, 1690, 1690, 1690, 1690, 57, 01160 1692, 57, 57, 57, 57, 57, 57, 57, 57, 57, 01161 57, 57, 1692, 1692, 1692, 1692, 1692, 1692, 57, 1692, 01162 57, 57, 57, 1717, 1709, 57, 57, 57, 57, 57, 01163 01164 79, 1694, 79, 79, 79, 79, 79, 79, 79, 79, 01165 79, 79, 79, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 01166 79, 1694, 79, 79, 79, 1718, 1711, 79, 79, 79, 01167 79, 79, 102, 1698, 102, 102, 102, 102, 102, 102, 01168 102, 102, 102, 102, 102, 1698, 1698, 1698, 1698, 1698, 01169 1698, 1698, 102, 1698, 102, 102, 102, 1719, 1713, 102, 01170 102, 102, 102, 102, 119, 131, 1703, 131, 131, 131, 01171 131, 131, 131, 131, 131, 131, 131, 131, 1703, 1703, 01172 1703, 1703, 1703, 1703, 1703, 131, 1703, 131, 131, 131, 01173 1720, 1715, 131, 131, 131, 131, 131, 1690, 1686, 1686, 01174 01175 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 1686, 1686, 01176 1686, 1686, 1686, 1690, 1690, 1690, 1690, 1690, 1690, 1690, 01177 57, 1692, 1692, 57, 57, 57, 57, 57, 57, 57, 01178 57, 1692, 1692, 1692, 1692, 57, 57, 57, 57, 57, 01179 57, 57, 79, 1694, 1694, 79, 79, 79, 79, 79, 01180 79, 79, 79, 1694, 1694, 1694, 1694, 1694, 79, 79, 01181 79, 79, 79, 79, 79, 102, 1698, 1698, 102, 102, 01182 102, 102, 102, 102, 102, 102, 1698, 1698, 1698, 1698, 01183 1698, 102, 102, 102, 102, 102, 102, 102, 131, 1703, 01184 1703, 131, 131, 131, 131, 131, 131, 131, 131, 1703, 01185 01186 1703, 1703, 1703, 1703, 131, 131, 131, 131, 131, 131, 01187 131, 1690, 1686, 1686, 1686, 1690, 1690, 1690, 1690, 1721, 01188 1690, 1690, 1690, 1686, 1686, 1686, 1686, 1686, 1686, 1690, 01189 1690, 1686, 1690, 1690, 1690, 1690, 57, 1692, 1692, 1692, 01190 57, 57, 57, 57, 1722, 57, 57, 57, 1692, 1692, 01191 1692, 1692, 1692, 57, 57, 57, 57, 57, 57, 79, 01192 1694, 1694, 1694, 79, 79, 79, 79, 1723, 79, 79, 01193 79, 1694, 1694, 1694, 1694, 1694, 1694, 79, 79, 1694, 01194 79, 79, 79, 79, 102, 1698, 1698, 1698, 102, 102, 01195 102, 102, 1724, 102, 102, 102, 1698, 1698, 1698, 1698, 01196 01197 1698, 1698, 102, 102, 1698, 102, 102, 102, 102, 131, 01198 1703, 1703, 1703, 131, 131, 131, 131, 1725, 131, 131, 01199 131, 1703, 1703, 1703, 1703, 1703, 1703, 131, 131, 1703, 01200 131, 131, 131, 131, 1686, 1686, 1686, 1690, 1690, 1690, 01201 1690, 1686, 1690, 1690, 1690, 1690, 1686, 1686, 1686, 1686, 01202 1686, 1686, 1686, 1690, 1690, 1690, 1692, 1692, 1692, 57, 01203 57, 57, 57, 1692, 57, 57, 57, 57, 1692, 1692, 01204 1692, 1692, 1692, 57, 57, 57, 1694, 1694, 1694, 79, 01205 79, 79, 79, 1694, 79, 79, 79, 79, 1694, 1694, 01206 1694, 1694, 1694, 1694, 1694, 79, 79, 79, 1698, 1698, 01207 01208 1698, 102, 102, 102, 102, 1698, 102, 102, 102, 102, 01209 1698, 1698, 1698, 1698, 1698, 1698, 1698, 102, 102, 102, 01210 1703, 1703, 1703, 131, 131, 131, 131, 1703, 131, 131, 01211 131, 131, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 131, 01212 131, 131, 1686, 1686, 1686, 1690, 1690, 1690, 1686, 1686, 01213 1686, 1690, 1690, 1690, 1690, 1686, 1686, 1686, 1686, 1686, 01214 1686, 1686, 1690, 1690, 1690, 1692, 1692, 1692, 57, 57, 01215 57, 1692, 1692, 1692, 57, 57, 57, 57, 1692, 1692, 01216 1692, 1692, 1692, 57, 57, 57, 1694, 1694, 1694, 79, 01217 79, 79, 1694, 1694, 1694, 79, 79, 79, 79, 1694, 01218 01219 1694, 1694, 1694, 1694, 1694, 1694, 79, 79, 79, 1698, 01220 1698, 1698, 102, 102, 102, 1698, 1698, 1698, 102, 102, 01221 102, 102, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 102, 01222 102, 102, 1703, 1703, 1703, 131, 131, 131, 1703, 1703, 01223 1703, 131, 131, 131, 131, 1703, 1703, 1703, 1703, 1703, 01224 1703, 1703, 131, 131, 131, 1686, 1686, 1686, 1690, 1690, 01225 1690, 1686, 1686, 1686, 1686, 1690, 1690, 1690, 1690, 1686, 01226 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1690, 1692, 1692, 01227 1692, 57, 57, 57, 1692, 1692, 1692, 1692, 57, 57, 01228 57, 57, 1692, 1692, 1692, 1692, 1692, 1692, 57, 1694, 01229 01230 1694, 1694, 79, 79, 79, 1694, 1694, 1694, 1694, 79, 01231 79, 79, 79, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 01232 1694, 79, 1698, 1698, 1698, 102, 102, 102, 1698, 1698, 01233 1698, 1698, 102, 102, 102, 102, 1698, 1698, 1698, 1698, 01234 1698, 1698, 1698, 1698, 102, 1703, 1703, 1703, 131, 131, 01235 131, 1703, 1703, 1703, 1703, 131, 131, 131, 131, 1703, 01236 1703, 1703, 1703, 1703, 1703, 1703, 1703, 131, 1686, 1686, 01237 1686, 1690, 1690, 1690, 1686, 1686, 1686, 1686, 1690, 1690, 01238 1690, 1690, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 01239 1686, 1692, 1692, 1692, 57, 57, 57, 1692, 1692, 1692, 01240 01241 1692, 57, 57, 57, 57, 1692, 1692, 1692, 1692, 1692, 01242 1692, 1692, 1694, 1694, 1694, 79, 79, 79, 1694, 1694, 01243 1694, 1694, 79, 79, 79, 79, 1694, 1694, 1694, 1694, 01244 1694, 1694, 1694, 1694, 1694, 1698, 1698, 1698, 102, 102, 01245 102, 1698, 1698, 1698, 1698, 102, 102, 102, 102, 1698, 01246 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1703, 1703, 01247 1703, 131, 131, 131, 1703, 1703, 1703, 1703, 131, 131, 01248 131, 131, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 01249 1703, 1686, 1686, 1690, 1690, 1686, 1686, 1686, 1686, 1690, 01250 1690, 1690, 1690, 1686, 1686, 1686, 1686, 1686, 1686, 1692, 01251 01252 1692, 57, 57, 1692, 1692, 1692, 1692, 57, 57, 57, 01253 57, 1692, 1692, 1692, 1692, 1692, 1694, 1694, 79, 79, 01254 1694, 1694, 1694, 1694, 79, 79, 79, 79, 1694, 1694, 01255 1694, 1694, 1694, 1694, 1698, 1698, 102, 102, 1698, 1698, 01256 1698, 1698, 102, 102, 102, 102, 1698, 1698, 1698, 1698, 01257 1698, 1698, 1703, 1703, 131, 131, 1703, 1703, 1703, 1703, 01258 131, 131, 131, 131, 1703, 1703, 1703, 1703, 1703, 1703, 01259 1686, 1690, 1686, 1686, 1686, 1686, 1690, 1690, 1690, 1690, 01260 1686, 1686, 1686, 1686, 1692, 57, 1692, 1692, 1692, 1692, 01261 57, 57, 57, 57, 1692, 1692, 1692, 1692, 1694, 79, 01262 01263 1694, 1694, 1694, 1694, 79, 79, 79, 79, 1694, 1694, 01264 1694, 1694, 1698, 102, 1698, 1698, 1698, 1698, 102, 102, 01265 102, 102, 1698, 1698, 1698, 1698, 1703, 131, 1703, 1703, 01266 1703, 1703, 131, 131, 131, 131, 1703, 1703, 1703, 1703, 01267 1686, 1690, 1686, 1686, 1686, 1686, 1690, 1690, 1690, 1690, 01268 1686, 1686, 1686, 1686, 1692, 57, 1692, 1692, 1692, 1692, 01269 57, 57, 57, 57, 1692, 1692, 1692, 1692, 1694, 79, 01270 1694, 1694, 1694, 1694, 79, 79, 79, 79, 1694, 1694, 01271 1694, 1694, 1698, 102, 1698, 1698, 1698, 1698, 102, 102, 01272 102, 102, 1698, 1698, 1698, 1698, 1703, 131, 1703, 1703, 01273 01274 1703, 1703, 131, 131, 131, 131, 1703, 1703, 1703, 1703, 01275 1686, 1686, 1686, 1690, 1690, 1690, 1686, 1686, 1692, 1692, 01276 1692, 57, 57, 57, 1692, 1692, 1694, 1694, 1694, 79, 01277 79, 79, 1694, 1694, 1698, 1698, 1698, 102, 102, 102, 01278 1698, 1698, 1703, 1703, 1703, 131, 131, 131, 1703, 1703, 01279 1686, 1686, 1686, 1690, 1690, 1686, 1686, 1692, 1692, 1692, 01280 57, 57, 1692, 1692, 1694, 1694, 1694, 79, 79, 1694, 01281 1694, 1698, 1698, 1698, 102, 102, 1698, 1698, 1703, 1703, 01282 1703, 131, 131, 1703, 1703, 1686, 1686, 1686, 1690, 1690, 01283 1686, 1686, 1692, 1692, 1692, 57, 57, 1692, 1692, 1694, 01284 01285 1694, 1694, 79, 79, 1694, 1694, 1698, 1698, 1698, 102, 01286 102, 1698, 1698, 1703, 1703, 1703, 131, 131, 1703, 1703, 01287 1686, 1686, 1690, 1686, 1686, 1692, 1692, 57, 1692, 1692, 01288 1694, 1694, 79, 1694, 1694, 1698, 1698, 102, 1698, 1698, 01289 1703, 1703, 131, 1703, 1703, 1686, 1686, 1692, 1692, 1694, 01290 1694, 1698, 1698, 1703, 1703, 1686, 1686, 1692, 1692, 1694, 01291 1694, 1698, 1698, 1703, 1703, 1686, 1692, 1694, 1698, 1703, 01292 1686, 1692, 1694, 1698, 1703, 1686, 1692, 1694, 1698, 1703, 01293 1686, 1692, 1694, 1698, 1703, 0, 1686, 1686, 1686, 1686, 01294 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 01295 01296 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 01297 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 01298 1686, 1686, 1686, 1686, 1686 01299 } ; 01300 01301 static yyconst flex_int16_t yy_nxt[7341] = 01302 { 0, 01303 24, 25, 26, 27, 28, 24, 24, 29, 29, 29, 01304 29, 29, 29, 30, 31, 32, 33, 34, 35, 36, 01305 36, 37, 36, 36, 36, 38, 39, 40, 36, 41, 01306 42, 43, 36, 36, 44, 36, 36, 24, 30, 31, 01307 32, 33, 34, 35, 36, 36, 37, 36, 36, 38, 01308 39, 40, 36, 41, 42, 43, 36, 36, 44, 36, 01309 36, 24, 24, 45, 46, 49, 51, 53, 47, 47, 01310 47, 47, 24, 54, 26, 27, 28, 24, 24, 55, 01311 55, 55, 55, 55, 55, 56, 57, 58, 59, 60, 01312 61, 62, 62, 63, 62, 62, 62, 64, 65, 66, 01313 01314 62, 67, 68, 69, 62, 62, 70, 62, 62, 71, 01315 56, 57, 58, 59, 60, 61, 62, 62, 63, 62, 01316 62, 64, 65, 66, 62, 67, 68, 69, 62, 62, 01317 70, 62, 62, 24, 24, 45, 72, 148, 149, 1580, 01318 47, 73, 74, 26, 75, 76, 73, 73, 77, 77, 01319 77, 77, 77, 77, 78, 79, 80, 81, 82, 83, 01320 84, 84, 85, 84, 84, 84, 86, 87, 88, 84, 01321 89, 90, 91, 84, 84, 92, 84, 84, 73, 78, 01322 79, 80, 81, 82, 83, 84, 84, 85, 84, 84, 01323 86, 87, 88, 84, 89, 90, 91, 84, 84, 92, 01324 01325 84, 84, 73, 73, 93, 94, 152, 1573, 214, 95, 01326 96, 25, 97, 98, 99, 96, 96, 100, 100, 100, 01327 100, 100, 100, 101, 102, 103, 104, 105, 106, 107, 01328 107, 108, 107, 107, 107, 109, 110, 111, 107, 112, 01329 113, 114, 107, 107, 115, 107, 107, 96, 101, 102, 01330 103, 104, 105, 106, 107, 107, 108, 107, 107, 109, 01331 110, 111, 107, 112, 113, 114, 107, 107, 115, 107, 01332 107, 96, 96, 116, 46, 180, 245, 1566, 117, 118, 01333 118, 118, 118, 118, 118, 119, 120, 121, 122, 123, 01334 124, 46, 126, 145, 1559, 47, 47, 47, 153, 153, 01335 01336 153, 153, 153, 153, 178, 182, 309, 310, 179, 179, 01337 119, 120, 121, 122, 123, 124, 24, 127, 26, 27, 01338 28, 24, 128, 129, 129, 129, 129, 129, 129, 130, 01339 131, 132, 133, 134, 135, 136, 136, 137, 136, 136, 01340 136, 138, 139, 140, 136, 141, 142, 143, 136, 136, 01341 144, 136, 136, 128, 130, 131, 132, 133, 134, 135, 01342 136, 136, 137, 136, 136, 138, 139, 140, 136, 141, 01343 142, 143, 136, 136, 144, 136, 136, 24, 24, 45, 01344 155, 156, 161, 1552, 158, 162, 165, 159, 166, 157, 01345 184, 160, 163, 167, 179, 164, 168, 169, 186, 176, 01346 01347 152, 174, 179, 245, 155, 175, 156, 161, 158, 162, 01348 165, 159, 166, 213, 157, 160, 163, 179, 167, 164, 01349 168, 169, 170, 176, 171, 242, 174, 172, 1552, 243, 01350 175, 188, 188, 188, 188, 188, 188, 152, 173, 361, 01351 189, 189, 189, 189, 189, 189, 190, 170, 312, 171, 01352 197, 190, 172, 190, 190, 315, 280, 1550, 319, 190, 01353 179, 190, 173, 191, 217, 217, 217, 217, 217, 217, 01354 189, 190, 312, 198, 313, 197, 190, 154, 190, 190, 01355 315, 307, 162, 319, 190, 179, 190, 191, 189, 189, 01356 189, 189, 189, 189, 192, 1542, 190, 198, 313, 314, 01357 01358 320, 154, 193, 1534, 190, 190, 162, 199, 190, 1526, 01359 200, 178, 203, 190, 152, 179, 190, 387, 189, 192, 01360 201, 190, 1518, 314, 316, 320, 317, 193, 190, 190, 01361 190, 199, 190, 190, 200, 190, 190, 203, 190, 194, 01362 190, 190, 195, 190, 201, 1191, 196, 318, 316, 202, 01363 317, 204, 324, 190, 210, 325, 278, 190, 211, 1070, 01364 190, 190, 190, 194, 190, 190, 195, 724, 190, 154, 01365 196, 318, 190, 202, 321, 204, 190, 324, 205, 210, 01366 325, 278, 326, 211, 190, 180, 245, 190, 327, 190, 01367 212, 218, 218, 154, 328, 225, 611, 190, 321, 218, 01368 01369 218, 190, 205, 190, 331, 206, 326, 207, 322, 190, 01370 208, 190, 327, 459, 212, 218, 218, 218, 328, 323, 01371 225, 209, 182, 218, 218, 218, 179, 184, 190, 331, 01372 206, 179, 207, 322, 309, 208, 190, 226, 329, 332, 01373 218, 330, 334, 323, 333, 209, 214, 214, 218, 214, 01374 214, 214, 214, 214, 214, 214, 214, 214, 214, 218, 01375 218, 226, 329, 218, 332, 330, 334, 218, 218, 333, 01376 227, 218, 451, 228, 335, 229, 219, 230, 186, 249, 01377 281, 154, 179, 214, 218, 218, 213, 249, 218, 279, 01378 179, 242, 218, 218, 227, 243, 218, 228, 335, 229, 01379 01380 219, 230, 280, 452, 249, 154, 179, 214, 214, 214, 01381 214, 214, 249, 214, 214, 214, 214, 214, 214, 214, 01382 214, 214, 214, 220, 218, 218, 218, 284, 231, 438, 01383 190, 221, 218, 218, 218, 284, 412, 238, 190, 307, 01384 233, 239, 441, 179, 232, 218, 386, 214, 220, 218, 01385 218, 218, 284, 231, 438, 190, 221, 218, 218, 218, 01386 284, 249, 238, 190, 233, 256, 239, 441, 232, 249, 01387 218, 214, 214, 214, 218, 218, 248, 248, 248, 248, 01388 248, 248, 218, 218, 215, 222, 249, 187, 223, 240, 01389 256, 185, 224, 249, 249, 309, 310, 277, 183, 218, 01390 01391 218, 249, 442, 181, 446, 157, 336, 218, 218, 222, 01392 311, 413, 223, 240, 154, 257, 224, 218, 249, 234, 01393 249, 235, 277, 154, 236, 218, 249, 442, 249, 446, 01394 157, 258, 313, 154, 259, 237, 413, 443, 154, 257, 01395 463, 245, 218, 150, 234, 249, 235, 154, 309, 236, 01396 218, 281, 279, 249, 447, 258, 313, 154, 259, 237, 01397 245, 443, 245, 245, 245, 245, 245, 245, 245, 245, 01398 245, 245, 245, 249, 249, 249, 249, 249, 262, 447, 01399 444, 249, 249, 249, 249, 249, 272, 445, 260, 261, 01400 250, 264, 448, 246, 449, 263, 450, 245, 249, 249, 01401 01402 249, 249, 249, 262, 444, 241, 249, 249, 249, 249, 01403 249, 445, 260, 261, 250, 264, 460, 448, 449, 263, 01404 450, 245, 245, 245, 245, 462, 245, 245, 245, 245, 01405 245, 245, 245, 245, 245, 245, 245, 251, 269, 249, 01406 460, 284, 270, 151, 461, 252, 249, 249, 215, 284, 01407 462, 468, 187, 271, 274, 274, 274, 274, 274, 274, 01408 298, 245, 251, 269, 249, 465, 284, 270, 461, 466, 01409 252, 249, 249, 158, 284, 468, 159, 271, 185, 154, 01410 160, 469, 183, 181, 298, 245, 245, 245, 249, 467, 01411 465, 603, 163, 598, 466, 164, 249, 158, 154, 253, 01412 01413 159, 604, 254, 154, 160, 469, 255, 283, 283, 283, 01414 283, 283, 283, 249, 467, 603, 163, 177, 598, 164, 01415 151, 249, 154, 253, 150, 604, 254, 599, 284, 284, 01416 255, 249, 291, 265, 284, 266, 284, 284, 267, 249, 01417 1686, 600, 284, 125, 295, 293, 605, 606, 294, 268, 01418 52, 50, 599, 284, 284, 48, 249, 291, 265, 284, 01419 266, 284, 284, 267, 249, 600, 1686, 284, 295, 293, 01420 605, 606, 294, 268, 275, 275, 275, 275, 275, 275, 01421 276, 276, 276, 276, 276, 276, 153, 153, 153, 153, 01422 153, 153, 607, 608, 1686, 1686, 609, 155, 188, 188, 01423 01424 188, 188, 188, 188, 284, 276, 276, 276, 276, 276, 01425 276, 284, 284, 1686, 1686, 615, 607, 608, 296, 284, 01426 609, 155, 282, 282, 282, 282, 282, 282, 282, 284, 01427 284, 284, 1686, 292, 297, 190, 284, 284, 284, 284, 01428 615, 610, 296, 340, 284, 299, 285, 217, 217, 217, 01429 217, 217, 217, 282, 304, 284, 284, 292, 305, 297, 01430 190, 614, 284, 284, 284, 610, 1686, 1686, 340, 299, 01431 285, 282, 282, 282, 282, 282, 282, 282, 286, 304, 01432 284, 190, 190, 305, 190, 614, 287, 284, 284, 190, 01433 190, 565, 190, 1686, 306, 339, 190, 1686, 337, 1686, 01434 01435 338, 616, 282, 286, 190, 284, 190, 190, 154, 190, 01436 346, 287, 284, 284, 190, 190, 565, 190, 306, 339, 01437 284, 190, 337, 288, 338, 616, 289, 190, 190, 190, 01438 290, 190, 154, 344, 346, 190, 190, 284, 1686, 190, 01439 1686, 1686, 341, 343, 342, 284, 618, 288, 617, 1686, 01440 289, 601, 190, 190, 290, 284, 190, 300, 344, 301, 01441 190, 190, 302, 284, 190, 602, 341, 343, 342, 1686, 01442 190, 618, 617, 303, 345, 1686, 601, 190, 190, 347, 01443 284, 619, 300, 190, 301, 190, 350, 302, 284, 602, 01444 348, 190, 190, 612, 349, 190, 620, 303, 1686, 345, 01445 01446 190, 190, 190, 190, 347, 190, 619, 190, 190, 190, 01447 190, 350, 613, 190, 348, 190, 190, 190, 612, 349, 01448 620, 1686, 351, 352, 632, 190, 190, 1686, 353, 190, 01449 190, 190, 190, 190, 190, 357, 613, 190, 190, 190, 01450 190, 356, 1686, 190, 1686, 354, 351, 352, 632, 355, 01451 654, 190, 353, 1686, 190, 1686, 190, 218, 190, 190, 01452 357, 723, 190, 655, 190, 218, 356, 359, 190, 354, 01453 190, 358, 190, 355, 654, 218, 190, 218, 190, 634, 01454 190, 218, 218, 218, 190, 218, 723, 655, 360, 218, 01455 218, 359, 362, 363, 364, 190, 358, 190, 635, 218, 01456 01457 218, 677, 218, 190, 634, 190, 218, 365, 218, 1686, 01458 218, 218, 360, 218, 218, 218, 362, 363, 364, 218, 01459 729, 381, 635, 218, 218, 677, 366, 368, 367, 218, 01460 1686, 218, 365, 218, 369, 370, 218, 218, 218, 218, 01461 218, 218, 657, 1686, 218, 729, 381, 371, 218, 734, 01462 366, 368, 367, 1686, 218, 218, 218, 372, 218, 369, 01463 370, 658, 218, 218, 218, 678, 218, 657, 373, 218, 01464 218, 371, 374, 218, 734, 218, 375, 218, 218, 1686, 01465 218, 218, 372, 218, 753, 658, 1686, 700, 218, 678, 01466 376, 218, 373, 377, 218, 218, 701, 374, 218, 218, 01467 01468 218, 375, 218, 218, 712, 218, 218, 218, 218, 753, 01469 382, 700, 378, 218, 376, 218, 218, 377, 218, 622, 01470 701, 379, 680, 218, 218, 380, 218, 383, 712, 249, 01471 218, 218, 218, 623, 218, 382, 378, 249, 218, 384, 01472 218, 681, 218, 218, 622, 379, 1686, 680, 218, 380, 01473 218, 218, 383, 249, 249, 777, 218, 623, 385, 218, 01474 1686, 391, 249, 384, 802, 681, 249, 218, 248, 248, 01475 248, 248, 248, 248, 249, 218, 249, 249, 249, 154, 01476 777, 606, 385, 388, 249, 249, 391, 249, 249, 802, 01477 390, 249, 389, 1686, 1686, 249, 249, 1686, 392, 249, 01478 01479 393, 249, 249, 154, 394, 606, 713, 388, 716, 249, 01480 249, 249, 249, 249, 390, 396, 389, 249, 249, 249, 01481 249, 249, 392, 395, 393, 249, 249, 1686, 394, 1686, 01482 713, 397, 716, 249, 1686, 398, 249, 1686, 1686, 719, 01483 396, 249, 249, 249, 249, 720, 399, 1686, 395, 249, 01484 249, 249, 401, 249, 249, 397, 400, 249, 249, 249, 01485 398, 249, 249, 719, 249, 249, 249, 249, 408, 720, 01486 399, 403, 249, 407, 249, 249, 249, 401, 249, 249, 01487 402, 400, 249, 249, 249, 404, 249, 249, 249, 249, 01488 249, 405, 249, 408, 721, 403, 249, 249, 407, 722, 01489 01490 249, 249, 249, 409, 402, 725, 406, 1686, 249, 404, 01491 249, 732, 703, 249, 726, 405, 249, 249, 721, 1686, 01492 1686, 249, 1686, 722, 249, 249, 733, 249, 409, 725, 01493 406, 704, 410, 411, 1686, 249, 1686, 703, 726, 1686, 01494 1686, 249, 249, 274, 274, 274, 274, 274, 274, 249, 01495 249, 733, 1686, 727, 728, 704, 410, 411, 283, 283, 01496 283, 283, 283, 283, 284, 284, 284, 284, 284, 1686, 01497 644, 1686, 284, 284, 284, 284, 417, 727, 728, 416, 01498 1686, 730, 414, 415, 645, 731, 284, 1686, 1686, 284, 01499 284, 284, 284, 284, 433, 644, 284, 284, 284, 284, 01500 01501 284, 417, 284, 416, 284, 730, 414, 415, 645, 731, 01502 284, 284, 420, 418, 735, 419, 284, 284, 284, 433, 01503 422, 284, 421, 1686, 284, 284, 284, 284, 1686, 284, 01504 736, 1686, 423, 1686, 1686, 284, 420, 418, 735, 419, 01505 434, 284, 284, 284, 284, 422, 424, 421, 284, 284, 01506 284, 284, 284, 284, 736, 426, 423, 425, 284, 284, 01507 284, 284, 427, 1686, 284, 434, 284, 284, 284, 284, 01508 1686, 424, 284, 284, 1686, 738, 431, 284, 284, 428, 01509 426, 425, 429, 284, 284, 284, 284, 427, 284, 284, 01510 284, 284, 284, 284, 284, 435, 284, 284, 284, 738, 01511 01512 431, 750, 284, 428, 190, 1686, 429, 751, 432, 430, 01513 284, 827, 470, 284, 284, 284, 752, 761, 284, 284, 01514 435, 284, 284, 284, 773, 750, 436, 284, 774, 190, 01515 437, 751, 432, 430, 1686, 284, 827, 470, 1686, 284, 01516 752, 761, 1686, 284, 1686, 1686, 1686, 284, 773, 190, 01517 436, 1686, 774, 474, 437, 439, 439, 190, 439, 439, 01518 439, 439, 439, 439, 439, 439, 439, 439, 453, 454, 01519 455, 456, 457, 190, 190, 190, 473, 458, 474, 478, 01520 190, 190, 190, 190, 1686, 775, 477, 190, 190, 1686, 01521 776, 786, 439, 1686, 1686, 1686, 1686, 475, 190, 1686, 01522 01523 190, 473, 458, 1686, 478, 190, 190, 1686, 190, 775, 01524 477, 1686, 190, 190, 776, 786, 439, 439, 439, 463, 01525 463, 475, 463, 463, 463, 463, 463, 463, 463, 463, 01526 463, 463, 190, 190, 480, 479, 190, 1686, 190, 190, 01527 190, 190, 190, 190, 190, 1686, 190, 190, 496, 1686, 01528 476, 190, 1686, 1686, 491, 481, 463, 190, 190, 480, 01529 479, 190, 490, 190, 190, 190, 190, 190, 190, 190, 01530 451, 190, 190, 496, 476, 798, 190, 190, 491, 481, 01531 463, 463, 463, 439, 439, 190, 439, 439, 439, 439, 01532 471, 471, 471, 471, 471, 471, 190, 1686, 1686, 798, 01533 01534 1686, 483, 190, 190, 190, 497, 1686, 1686, 190, 1686, 01535 190, 190, 493, 1686, 482, 835, 190, 1686, 1686, 799, 01536 471, 190, 189, 484, 485, 486, 487, 488, 190, 190, 01537 497, 190, 489, 190, 190, 498, 190, 493, 482, 190, 01538 835, 190, 190, 799, 439, 439, 439, 1686, 492, 1686, 01539 1686, 1686, 189, 1686, 1686, 1686, 190, 489, 1686, 190, 01540 498, 218, 1686, 190, 190, 714, 836, 190, 715, 501, 01541 1686, 190, 492, 463, 463, 499, 463, 463, 463, 463, 01542 494, 494, 494, 494, 494, 494, 218, 190, 190, 714, 01543 218, 836, 715, 504, 501, 190, 190, 500, 218, 499, 01544 01545 218, 1686, 800, 801, 505, 1686, 509, 837, 218, 1686, 01546 494, 1686, 190, 1686, 218, 218, 1686, 1686, 504, 1686, 01547 190, 500, 1686, 218, 1686, 218, 800, 801, 1686, 505, 01548 811, 509, 837, 218, 463, 463, 463, 502, 502, 218, 01549 502, 502, 502, 502, 502, 502, 502, 502, 502, 502, 01550 218, 218, 218, 218, 811, 510, 511, 1686, 218, 218, 01551 218, 218, 1686, 508, 218, 1686, 1686, 506, 823, 507, 01552 1686, 218, 1686, 1686, 502, 218, 218, 218, 218, 218, 01553 510, 511, 824, 218, 218, 218, 218, 508, 1686, 218, 01554 512, 506, 823, 507, 218, 218, 218, 218, 502, 502, 01555 01556 502, 514, 218, 218, 218, 218, 824, 1686, 218, 1686, 01557 523, 1686, 513, 825, 512, 1686, 218, 1686, 1686, 218, 01558 218, 522, 218, 218, 1686, 667, 1686, 218, 218, 1686, 01559 218, 218, 515, 218, 523, 717, 513, 825, 718, 668, 01560 524, 218, 516, 517, 518, 519, 520, 218, 218, 218, 01561 667, 521, 218, 525, 529, 218, 218, 218, 1686, 717, 01562 218, 1686, 718, 668, 524, 1686, 1686, 1686, 1686, 1686, 01563 1686, 1686, 218, 1686, 218, 1686, 521, 218, 525, 529, 01564 218, 1686, 218, 526, 526, 218, 526, 526, 526, 526, 01565 526, 526, 526, 526, 526, 526, 218, 218, 530, 218, 01566 01567 218, 528, 690, 838, 218, 218, 249, 218, 218, 1686, 01568 532, 531, 826, 839, 533, 1686, 691, 840, 1686, 841, 01569 526, 218, 218, 530, 218, 218, 528, 690, 838, 218, 01570 218, 249, 218, 218, 532, 531, 826, 1686, 839, 533, 01571 691, 1686, 840, 841, 526, 526, 526, 534, 439, 245, 01572 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 01573 249, 249, 249, 536, 249, 537, 249, 541, 249, 249, 01574 249, 1686, 249, 1686, 249, 249, 1686, 540, 844, 538, 01575 1686, 1686, 539, 1686, 534, 249, 249, 249, 536, 249, 01576 537, 249, 541, 249, 249, 249, 249, 249, 542, 249, 01577 01578 249, 540, 844, 538, 249, 543, 539, 249, 534, 534, 01579 534, 845, 546, 249, 249, 249, 249, 1686, 846, 249, 01580 1686, 249, 249, 542, 249, 1686, 544, 249, 1686, 249, 01581 543, 556, 249, 850, 545, 845, 1686, 1686, 249, 249, 01582 249, 249, 846, 547, 249, 249, 1686, 249, 1686, 249, 01583 544, 847, 249, 249, 848, 556, 849, 850, 545, 548, 01584 549, 550, 551, 552, 249, 249, 855, 249, 553, 554, 01585 249, 557, 249, 249, 1686, 249, 847, 851, 249, 848, 01586 555, 849, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 249, 01587 249, 855, 249, 553, 249, 1686, 557, 249, 249, 560, 01588 01589 249, 851, 249, 1686, 555, 558, 463, 245, 558, 558, 01590 558, 558, 558, 558, 558, 558, 558, 558, 249, 249, 01591 561, 249, 562, 249, 560, 284, 249, 249, 249, 249, 01592 856, 249, 1686, 566, 1686, 563, 249, 1686, 564, 852, 01593 853, 1686, 558, 249, 1686, 561, 249, 562, 249, 1686, 01594 284, 249, 1686, 249, 249, 856, 249, 284, 566, 563, 01595 569, 249, 564, 852, 853, 284, 558, 558, 558, 439, 01596 439, 854, 439, 439, 439, 567, 567, 567, 567, 567, 01597 567, 567, 284, 284, 284, 569, 284, 570, 284, 574, 01598 284, 284, 284, 1686, 284, 854, 284, 284, 1686, 573, 01599 01600 1686, 571, 576, 1686, 572, 1686, 567, 1686, 284, 284, 01601 284, 284, 570, 284, 574, 857, 284, 284, 284, 284, 01602 575, 284, 284, 573, 858, 571, 284, 576, 572, 284, 01603 439, 439, 439, 284, 284, 284, 739, 284, 1686, 740, 01604 857, 284, 284, 284, 859, 575, 579, 1686, 577, 858, 01605 871, 284, 578, 284, 284, 869, 870, 587, 284, 284, 01606 739, 284, 284, 740, 1686, 1686, 284, 284, 1686, 859, 01607 1686, 284, 577, 1686, 871, 590, 578, 580, 284, 284, 01608 869, 870, 872, 873, 892, 1686, 284, 282, 282, 581, 01609 582, 583, 584, 585, 284, 284, 284, 284, 586, 594, 01610 01611 590, 893, 284, 284, 284, 284, 872, 873, 892, 588, 01612 463, 463, 589, 463, 463, 463, 463, 1686, 282, 284, 01613 284, 1686, 284, 586, 594, 893, 284, 284, 284, 877, 01614 284, 593, 878, 588, 284, 1686, 589, 463, 463, 879, 01615 463, 463, 463, 591, 591, 591, 591, 591, 591, 591, 01616 284, 284, 284, 595, 877, 284, 593, 878, 284, 284, 01617 284, 1686, 596, 284, 879, 597, 762, 787, 894, 763, 01618 788, 463, 463, 463, 591, 284, 1686, 284, 595, 895, 01619 284, 1686, 1686, 284, 1686, 284, 596, 1686, 284, 597, 01620 762, 787, 894, 763, 788, 914, 1686, 1686, 463, 463, 01621 01622 463, 463, 463, 895, 463, 463, 463, 463, 463, 463, 01623 463, 463, 463, 463, 190, 190, 190, 190, 190, 914, 01624 621, 624, 190, 190, 190, 190, 190, 1686, 190, 1686, 01625 627, 915, 626, 1686, 1686, 625, 190, 1686, 463, 190, 01626 190, 190, 190, 190, 628, 621, 624, 190, 190, 190, 01627 190, 190, 190, 190, 627, 915, 626, 190, 190, 625, 01628 190, 190, 463, 463, 463, 190, 190, 1686, 628, 889, 01629 190, 190, 190, 190, 1686, 1686, 629, 190, 190, 190, 01630 190, 190, 190, 190, 190, 190, 916, 1686, 630, 631, 01631 190, 190, 190, 1686, 889, 190, 190, 190, 190, 190, 01632 01633 629, 890, 891, 190, 190, 190, 190, 190, 633, 190, 01634 916, 190, 630, 631, 917, 637, 899, 190, 636, 190, 01635 1686, 1686, 900, 1686, 190, 1686, 890, 891, 1686, 1686, 01636 1686, 1686, 190, 1686, 1686, 190, 190, 1686, 917, 640, 01637 637, 899, 636, 190, 190, 463, 463, 900, 463, 463, 01638 463, 463, 494, 494, 494, 494, 494, 494, 190, 190, 01639 190, 901, 190, 190, 640, 218, 190, 190, 190, 639, 01640 641, 190, 1686, 218, 1686, 1686, 638, 1686, 1686, 1686, 01641 642, 1686, 494, 190, 190, 911, 901, 190, 190, 1686, 01642 218, 190, 190, 639, 218, 641, 190, 218, 218, 646, 01643 01644 638, 218, 218, 643, 642, 218, 463, 463, 463, 218, 01645 911, 812, 1686, 647, 813, 912, 1686, 1686, 648, 218, 01646 1686, 218, 218, 218, 646, 218, 218, 218, 643, 218, 01647 218, 218, 1686, 218, 218, 812, 649, 647, 813, 218, 01648 912, 650, 648, 218, 218, 218, 218, 218, 218, 218, 01649 218, 218, 218, 218, 218, 1686, 218, 218, 218, 218, 01650 649, 653, 651, 652, 218, 650, 1686, 218, 218, 218, 01651 218, 218, 218, 218, 218, 913, 218, 218, 218, 218, 01652 218, 218, 218, 656, 218, 653, 651, 652, 664, 1686, 01653 659, 218, 218, 921, 1686, 660, 218, 922, 218, 218, 01654 01655 913, 1686, 923, 1686, 218, 218, 218, 1686, 1686, 1686, 01656 1686, 1686, 1686, 664, 659, 218, 218, 1686, 921, 663, 01657 660, 1686, 922, 218, 218, 526, 526, 923, 526, 526, 01658 526, 526, 526, 526, 526, 526, 526, 526, 218, 218, 01659 218, 933, 218, 1686, 663, 249, 218, 218, 218, 662, 01660 218, 666, 934, 249, 1686, 1686, 661, 1686, 1686, 665, 01661 249, 1686, 526, 218, 218, 669, 933, 218, 249, 1686, 01662 249, 218, 218, 662, 249, 218, 666, 934, 249, 670, 01663 661, 249, 249, 665, 249, 249, 526, 526, 526, 249, 01664 669, 671, 249, 249, 672, 1686, 249, 249, 1686, 249, 01665 01666 249, 935, 249, 670, 249, 249, 249, 249, 249, 249, 01667 249, 1686, 673, 1686, 249, 671, 249, 249, 672, 674, 01668 249, 249, 249, 249, 249, 249, 935, 249, 249, 249, 01669 249, 249, 249, 249, 675, 249, 673, 676, 249, 249, 01670 249, 249, 1686, 674, 249, 249, 249, 249, 249, 249, 01671 1686, 682, 249, 249, 685, 936, 249, 249, 675, 249, 01672 945, 676, 679, 249, 249, 249, 249, 687, 1686, 249, 01673 683, 249, 249, 948, 249, 682, 1686, 249, 685, 936, 01674 1686, 1686, 1686, 1686, 249, 945, 1686, 1686, 1686, 249, 01675 1686, 249, 687, 686, 1686, 683, 937, 249, 948, 249, 01676 01677 558, 463, 245, 558, 558, 558, 558, 558, 558, 558, 01678 558, 558, 558, 249, 249, 249, 284, 1686, 686, 284, 01679 937, 249, 249, 249, 284, 689, 1686, 284, 1686, 1686, 01680 938, 684, 688, 694, 284, 284, 1686, 558, 249, 692, 01681 249, 284, 284, 284, 284, 939, 249, 955, 249, 284, 01682 689, 943, 284, 693, 938, 684, 688, 694, 284, 284, 01683 284, 558, 558, 558, 692, 284, 284, 284, 284, 939, 01684 1686, 695, 955, 284, 284, 943, 284, 693, 284, 284, 01685 1686, 696, 284, 284, 284, 1686, 284, 284, 1686, 944, 01686 284, 284, 284, 1686, 284, 695, 699, 697, 284, 284, 01687 01688 284, 284, 284, 284, 284, 696, 284, 284, 946, 284, 01689 698, 284, 284, 944, 284, 284, 284, 284, 284, 284, 01690 699, 697, 706, 284, 284, 284, 284, 284, 1686, 1686, 01691 702, 284, 946, 1686, 698, 705, 284, 284, 284, 284, 01692 284, 284, 709, 284, 284, 710, 284, 706, 284, 284, 01693 284, 284, 463, 463, 707, 463, 463, 463, 284, 705, 01694 708, 284, 284, 284, 284, 190, 190, 709, 190, 284, 01695 710, 284, 284, 190, 190, 284, 190, 190, 707, 737, 01696 947, 711, 741, 284, 708, 748, 1686, 956, 744, 284, 01697 190, 190, 1686, 190, 957, 1686, 1686, 284, 190, 190, 01698 01699 1686, 190, 190, 737, 947, 711, 741, 1686, 1686, 958, 01700 748, 956, 744, 463, 463, 463, 463, 463, 957, 463, 01701 463, 463, 591, 591, 591, 591, 591, 591, 591, 190, 01702 190, 190, 190, 958, 1686, 190, 1686, 190, 190, 190, 01703 190, 1686, 742, 190, 1686, 743, 746, 960, 745, 754, 01704 190, 1686, 1686, 591, 190, 190, 190, 190, 190, 749, 01705 190, 747, 190, 190, 190, 190, 742, 964, 190, 743, 01706 746, 960, 745, 754, 190, 190, 190, 463, 463, 463, 01707 959, 732, 190, 190, 190, 747, 1686, 755, 190, 190, 01708 190, 964, 757, 961, 1686, 1686, 756, 190, 190, 190, 01709 01710 962, 190, 1686, 758, 190, 959, 963, 190, 966, 190, 01711 965, 755, 190, 190, 190, 190, 218, 757, 961, 759, 01712 218, 756, 190, 190, 218, 962, 218, 758, 218, 190, 01713 764, 963, 966, 760, 218, 965, 967, 190, 1686, 765, 01714 218, 218, 766, 759, 218, 218, 968, 218, 218, 218, 01715 979, 218, 218, 218, 764, 218, 218, 760, 768, 218, 01716 967, 769, 218, 765, 771, 218, 766, 767, 218, 218, 01717 218, 968, 218, 218, 979, 218, 218, 218, 1686, 770, 01718 218, 218, 768, 218, 218, 769, 772, 218, 779, 771, 01719 218, 767, 218, 218, 1686, 218, 249, 1686, 218, 780, 01720 01721 218, 218, 778, 770, 796, 1686, 218, 981, 218, 218, 01722 218, 218, 779, 782, 781, 218, 980, 218, 218, 218, 01723 249, 249, 218, 218, 783, 1686, 778, 982, 249, 796, 01724 218, 218, 981, 785, 987, 218, 218, 784, 782, 781, 01725 980, 249, 249, 218, 218, 249, 249, 218, 783, 249, 01726 249, 982, 249, 249, 249, 218, 789, 785, 987, 790, 01727 249, 784, 791, 988, 792, 249, 249, 249, 249, 1686, 01728 793, 249, 1686, 249, 249, 249, 249, 249, 983, 249, 01729 789, 1686, 794, 790, 249, 249, 791, 988, 792, 797, 01730 249, 249, 249, 249, 793, 795, 249, 249, 249, 249, 01731 01732 805, 249, 1686, 983, 249, 249, 794, 249, 1686, 249, 01733 804, 1686, 989, 1686, 803, 806, 249, 249, 249, 795, 01734 249, 249, 249, 807, 249, 284, 249, 249, 249, 249, 01735 249, 808, 249, 284, 804, 249, 284, 989, 803, 814, 01736 806, 1686, 809, 249, 284, 249, 284, 1686, 807, 810, 01737 284, 249, 249, 249, 284, 808, 284, 284, 284, 815, 01738 249, 284, 816, 814, 284, 284, 809, 284, 1686, 284, 01739 284, 284, 1000, 810, 818, 821, 1686, 284, 284, 284, 01740 817, 284, 284, 815, 819, 284, 816, 1686, 820, 284, 01741 284, 284, 284, 284, 1686, 284, 1000, 284, 818, 284, 01742 01743 821, 284, 284, 284, 817, 284, 284, 1686, 819, 1686, 01744 284, 828, 820, 830, 284, 822, 284, 1686, 284, 829, 01745 284, 1686, 284, 1001, 284, 1003, 284, 1002, 831, 284, 01746 284, 284, 832, 284, 284, 828, 190, 284, 1686, 284, 01747 1004, 284, 284, 829, 190, 284, 833, 1001, 1010, 834, 01748 1003, 1002, 1011, 831, 284, 1686, 1686, 832, 284, 284, 01749 1686, 190, 284, 190, 1004, 860, 284, 284, 1686, 190, 01750 833, 190, 1010, 834, 842, 842, 1011, 842, 842, 842, 01751 842, 842, 842, 842, 842, 842, 842, 190, 190, 1005, 01752 860, 190, 861, 190, 190, 190, 190, 862, 190, 190, 01753 01754 1006, 190, 190, 1012, 1686, 863, 190, 190, 1686, 866, 01755 1023, 842, 190, 1686, 1005, 190, 190, 861, 190, 190, 01756 190, 1686, 862, 190, 190, 1006, 190, 190, 1012, 863, 01757 1686, 190, 190, 866, 1023, 842, 842, 842, 842, 842, 01758 190, 842, 842, 842, 842, 864, 864, 864, 864, 864, 01759 864, 190, 190, 190, 190, 875, 1686, 1686, 1024, 190, 01760 190, 190, 190, 190, 1686, 868, 874, 1686, 1025, 867, 01761 1026, 1686, 1686, 876, 1686, 864, 190, 190, 190, 190, 01762 875, 190, 1024, 218, 190, 190, 190, 190, 190, 868, 01763 874, 218, 1025, 867, 218, 1026, 880, 218, 876, 842, 01764 01765 842, 842, 218, 882, 218, 218, 190, 218, 218, 881, 01766 1686, 1028, 218, 1686, 1029, 218, 218, 1027, 886, 218, 01767 1033, 880, 218, 218, 1686, 218, 1035, 218, 882, 218, 01768 218, 218, 218, 218, 881, 883, 1028, 218, 888, 1029, 01769 218, 1027, 886, 1686, 1033, 1686, 1686, 1686, 218, 218, 01770 218, 1035, 1686, 1686, 1686, 1049, 218, 218, 218, 883, 01771 884, 884, 888, 884, 884, 884, 884, 884, 884, 884, 01772 884, 884, 884, 218, 218, 218, 218, 218, 897, 898, 01773 1049, 218, 218, 218, 218, 218, 218, 218, 1686, 896, 01774 1034, 887, 1046, 1686, 1047, 1686, 1048, 884, 218, 249, 01775 01776 218, 218, 218, 897, 898, 1686, 218, 249, 218, 218, 01777 218, 218, 218, 896, 1034, 887, 1046, 249, 1047, 902, 01778 1048, 884, 884, 884, 249, 249, 249, 249, 249, 249, 01779 249, 903, 249, 904, 249, 249, 249, 249, 249, 1686, 01780 905, 1686, 249, 1686, 902, 1686, 1686, 1686, 1686, 1686, 01781 249, 249, 249, 249, 249, 249, 903, 1050, 904, 249, 01782 249, 249, 249, 249, 905, 906, 842, 245, 906, 906, 01783 906, 906, 906, 906, 906, 906, 906, 906, 249, 249, 01784 1051, 1050, 249, 249, 249, 919, 249, 249, 1686, 908, 01785 249, 249, 249, 249, 1686, 910, 918, 909, 920, 1052, 01786 01787 1686, 1686, 906, 249, 249, 1051, 249, 249, 249, 249, 01788 919, 249, 249, 908, 284, 249, 249, 249, 249, 910, 01789 918, 909, 284, 920, 1052, 284, 906, 906, 906, 284, 01790 284, 249, 924, 284, 925, 284, 284, 284, 284, 284, 01791 1056, 926, 1686, 284, 284, 1057, 1060, 284, 927, 1686, 01792 284, 1686, 1686, 1686, 284, 284, 1686, 924, 284, 925, 01793 284, 284, 284, 284, 1056, 1058, 926, 284, 284, 284, 01794 1057, 1060, 927, 842, 842, 284, 842, 842, 842, 928, 01795 928, 928, 928, 928, 928, 928, 284, 284, 1062, 1058, 01796 284, 284, 284, 284, 284, 284, 1686, 930, 284, 284, 01797 01798 284, 284, 1686, 932, 940, 931, 941, 1686, 1059, 1686, 01799 928, 284, 284, 1062, 284, 284, 284, 942, 284, 284, 01800 284, 930, 1066, 284, 284, 284, 284, 932, 940, 931, 01801 190, 941, 1059, 949, 842, 842, 842, 950, 190, 284, 01802 1072, 952, 942, 1061, 190, 953, 190, 1066, 1686, 969, 01803 284, 951, 190, 190, 190, 190, 190, 971, 949, 954, 01804 970, 190, 950, 190, 190, 1072, 952, 1061, 1063, 190, 01805 953, 190, 972, 969, 1067, 951, 973, 190, 190, 190, 01806 190, 190, 971, 954, 970, 1071, 190, 1074, 190, 190, 01807 974, 1686, 1063, 1076, 190, 1686, 1073, 972, 1067, 218, 01808 01809 978, 973, 190, 1075, 190, 190, 1686, 218, 1686, 1071, 01810 984, 1074, 190, 190, 974, 190, 975, 1076, 990, 190, 01811 976, 1073, 190, 190, 218, 978, 1077, 190, 1075, 190, 01812 190, 218, 218, 985, 977, 984, 190, 190, 986, 218, 01813 190, 975, 990, 1686, 190, 976, 218, 190, 190, 1686, 01814 1077, 1078, 1686, 1079, 218, 190, 218, 985, 977, 1081, 01815 991, 190, 218, 986, 218, 218, 992, 218, 993, 190, 01816 218, 218, 994, 218, 218, 218, 1078, 1079, 1686, 218, 01817 999, 1080, 218, 1081, 991, 1686, 995, 218, 1085, 1686, 01818 218, 992, 218, 993, 1086, 218, 218, 994, 218, 218, 01819 01820 218, 218, 1007, 1009, 218, 999, 1080, 218, 1095, 218, 01821 995, 218, 996, 1085, 218, 1686, 997, 1686, 1086, 218, 01822 1686, 218, 218, 249, 1686, 1008, 218, 1007, 1009, 218, 01823 998, 249, 249, 1095, 218, 249, 218, 996, 1094, 218, 01824 249, 997, 1013, 249, 218, 1096, 1014, 218, 249, 1008, 01825 249, 249, 1686, 249, 998, 1015, 249, 249, 249, 249, 01826 249, 249, 1094, 1016, 284, 249, 1013, 1017, 249, 1096, 01827 1014, 249, 284, 1686, 1097, 249, 249, 1022, 249, 249, 01828 1015, 1018, 1686, 249, 249, 249, 249, 249, 1016, 284, 01829 1686, 1030, 1017, 249, 1686, 249, 249, 284, 1031, 1097, 01830 01831 1098, 249, 1022, 1032, 249, 1018, 249, 1019, 1101, 249, 01832 249, 1020, 249, 1100, 249, 284, 1030, 1686, 249, 284, 01833 249, 1686, 1031, 284, 1098, 1021, 249, 284, 1032, 1037, 01834 1102, 249, 1019, 1101, 249, 284, 1020, 1100, 1036, 249, 01835 284, 1039, 284, 284, 284, 1040, 1038, 284, 284, 1021, 01836 284, 1106, 284, 1037, 1102, 284, 1686, 284, 1686, 1041, 01837 284, 1686, 1036, 1045, 1686, 284, 1039, 284, 284, 1686, 01838 1040, 1038, 284, 284, 1686, 284, 1106, 1107, 1686, 1053, 01839 284, 284, 284, 1041, 284, 1042, 284, 1686, 1045, 1043, 01840 284, 284, 284, 1055, 284, 1686, 1686, 1054, 284, 284, 01841 01842 1686, 1107, 1064, 1044, 1053, 1065, 284, 1686, 1115, 284, 01843 1042, 284, 1068, 1686, 1043, 1069, 284, 284, 1055, 284, 01844 190, 1054, 190, 190, 284, 1083, 1064, 1044, 190, 1065, 01845 190, 190, 1115, 1686, 1686, 1084, 1068, 1082, 1087, 1069, 01846 1686, 1088, 1686, 1089, 190, 190, 190, 190, 190, 1686, 01847 1083, 190, 190, 190, 190, 190, 190, 1108, 1090, 1084, 01848 1109, 1082, 1087, 1686, 190, 1088, 190, 190, 1089, 190, 01849 1093, 190, 190, 1116, 190, 190, 190, 190, 1117, 190, 01850 1091, 1108, 1090, 1092, 1109, 218, 190, 1110, 218, 190, 01851 1099, 190, 190, 218, 190, 218, 218, 190, 1116, 190, 01852 01853 190, 1105, 1103, 1117, 1091, 1119, 218, 1092, 1104, 218, 01854 218, 190, 1110, 218, 218, 1099, 218, 218, 218, 190, 01855 218, 218, 1118, 1111, 218, 1105, 1103, 218, 1686, 1112, 01856 1119, 218, 1113, 1104, 218, 218, 1686, 1120, 1121, 218, 01857 218, 218, 218, 1123, 1124, 1129, 1118, 1111, 218, 218, 01858 218, 1114, 218, 1112, 1125, 218, 1113, 1139, 218, 1122, 01859 218, 1120, 1121, 218, 249, 218, 249, 1123, 1127, 1124, 01860 1129, 1130, 249, 218, 249, 218, 1131, 249, 1125, 1132, 01861 218, 1126, 1139, 218, 1122, 249, 1133, 1686, 218, 249, 01862 1128, 249, 1140, 1127, 249, 1130, 1138, 249, 249, 249, 01863 01864 1131, 249, 249, 1132, 1141, 1126, 249, 1142, 249, 249, 01865 249, 1133, 1134, 1143, 1128, 1144, 249, 1140, 1147, 249, 01866 1138, 1135, 249, 249, 1136, 1137, 249, 249, 1141, 1146, 01867 249, 249, 1142, 249, 249, 249, 1134, 1143, 249, 1144, 01868 1148, 249, 1145, 1147, 1152, 1135, 249, 249, 1136, 284, 01869 1686, 1153, 249, 1146, 284, 249, 1150, 284, 1686, 1162, 01870 249, 1163, 284, 249, 1148, 1154, 1149, 1145, 1155, 1152, 01871 284, 249, 1156, 1686, 284, 1153, 1161, 284, 284, 284, 01872 284, 1150, 284, 1151, 1162, 284, 1163, 284, 284, 1154, 01873 1149, 1157, 1155, 1164, 1165, 284, 284, 1156, 284, 1686, 01874 01875 1161, 1158, 284, 284, 1159, 284, 284, 1151, 1166, 1167, 01876 284, 1169, 284, 284, 1170, 1157, 284, 1164, 1171, 1165, 01877 284, 284, 1160, 284, 284, 1158, 284, 1172, 1159, 1173, 01878 1168, 284, 1166, 1167, 284, 1175, 1169, 284, 1170, 1174, 01879 1176, 284, 1171, 1177, 1178, 284, 1179, 1180, 1181, 284, 01880 1182, 284, 1172, 1173, 1183, 1168, 1184, 1185, 1186, 284, 01881 1175, 1187, 1188, 1174, 1189, 1176, 1190, 1192, 1177, 1178, 01882 1193, 1179, 1180, 1181, 1194, 1182, 190, 1198, 1183, 1199, 01883 1184, 1185, 1186, 1200, 190, 190, 1187, 1188, 1189, 1195, 01884 1686, 1190, 1192, 190, 1193, 1196, 1201, 190, 1194, 1686, 01885 01886 1686, 190, 1198, 1209, 1199, 190, 1686, 1686, 1200, 190, 01887 190, 1210, 190, 1686, 1195, 1197, 1206, 1204, 190, 1196, 01888 190, 1201, 190, 190, 190, 1202, 1203, 190, 1209, 1207, 01889 190, 190, 190, 1205, 1213, 190, 1210, 190, 1208, 1197, 01890 1206, 1211, 1204, 1214, 1215, 190, 190, 218, 190, 190, 01891 1202, 1203, 190, 1207, 190, 218, 190, 190, 1205, 1213, 01892 190, 1219, 1208, 1220, 1221, 1211, 1217, 1214, 1215, 218, 01893 1212, 190, 218, 1216, 218, 1222, 218, 218, 1223, 190, 01894 218, 1227, 218, 1231, 218, 218, 1219, 1224, 1220, 1221, 01895 1217, 1228, 1218, 218, 218, 1686, 1229, 1232, 1216, 218, 01896 01897 1222, 218, 218, 1223, 1230, 1227, 218, 218, 1231, 218, 01898 218, 1225, 1224, 218, 218, 1228, 1218, 1233, 218, 1226, 01899 1229, 218, 1232, 1234, 1686, 218, 1236, 1686, 1230, 1237, 01900 1238, 218, 1242, 218, 1243, 1686, 1225, 1244, 218, 218, 01901 1245, 1233, 1686, 1686, 1226, 1686, 218, 249, 1234, 1235, 01902 218, 1236, 249, 1237, 1238, 249, 1239, 1242, 218, 1243, 01903 249, 249, 1244, 1250, 1251, 1245, 1240, 249, 249, 249, 01904 1246, 1254, 249, 1249, 1686, 249, 249, 249, 1252, 1241, 01905 249, 1239, 1253, 1255, 1686, 249, 249, 1250, 1251, 249, 01906 1240, 1247, 249, 249, 249, 1246, 1254, 249, 1249, 249, 01907 01908 249, 249, 1252, 1241, 1248, 1257, 1253, 249, 1255, 1256, 01909 249, 1259, 1686, 1260, 249, 1261, 1247, 284, 249, 284, 01910 1265, 1262, 249, 284, 249, 284, 1266, 284, 1267, 1248, 01911 1257, 284, 249, 1256, 1258, 249, 1259, 1260, 1263, 1261, 01912 1686, 1264, 284, 249, 284, 1265, 1262, 1268, 284, 1273, 01913 284, 1266, 284, 1267, 1274, 284, 284, 1269, 284, 284, 01914 1270, 1277, 1263, 284, 1271, 1264, 284, 284, 284, 1686, 01915 1275, 1276, 1268, 1273, 1272, 1278, 284, 1280, 1274, 1279, 01916 284, 1282, 1269, 284, 284, 1270, 1277, 1283, 284, 1271, 01917 284, 284, 284, 284, 1275, 1276, 1284, 1289, 284, 1272, 01918 01919 1278, 284, 1280, 1279, 1285, 1286, 1282, 1287, 1288, 1290, 01920 1291, 1283, 1292, 1293, 1281, 284, 1294, 1295, 1296, 1686, 01921 1297, 1284, 1289, 284, 1298, 1299, 1300, 190, 1285, 1286, 01922 1301, 1287, 1288, 1290, 1291, 190, 1292, 1304, 1293, 190, 01923 1294, 1295, 1302, 1296, 1297, 190, 1307, 190, 1298, 1305, 01924 1299, 1300, 190, 190, 1301, 1306, 1686, 190, 190, 1314, 01925 190, 1304, 1303, 1312, 190, 190, 190, 1302, 1308, 1313, 01926 190, 1307, 190, 1305, 1315, 1318, 1309, 190, 190, 1306, 01927 190, 1311, 190, 190, 1314, 190, 1303, 1312, 190, 1316, 01928 190, 190, 1308, 1313, 1310, 1317, 1686, 1321, 1315, 1318, 01929 01930 1309, 218, 190, 218, 1319, 190, 1311, 218, 1324, 218, 01931 190, 218, 1686, 190, 1316, 218, 1686, 1322, 1310, 1323, 01932 1317, 1321, 1686, 1329, 1320, 1686, 218, 218, 218, 1319, 01933 218, 218, 218, 1324, 218, 218, 218, 1325, 218, 218, 01934 218, 1322, 218, 1323, 1330, 1327, 1328, 1329, 1320, 1326, 01935 218, 1331, 218, 1332, 1333, 218, 218, 1334, 1335, 1686, 01936 218, 1325, 1336, 218, 218, 1342, 249, 218, 1330, 1327, 01937 1339, 1328, 1686, 1326, 249, 218, 1331, 1332, 1333, 249, 01938 1686, 249, 1334, 1335, 1337, 1686, 1336, 249, 1686, 249, 01939 1342, 249, 1340, 1341, 1339, 1686, 1338, 249, 1349, 249, 01940 01941 249, 1686, 1347, 1686, 249, 249, 249, 1343, 249, 1337, 01942 1348, 1350, 249, 249, 249, 1351, 1340, 1341, 1354, 1344, 01943 1338, 249, 249, 1349, 249, 249, 1347, 1345, 1346, 1352, 01944 249, 1343, 249, 249, 1348, 1350, 1353, 284, 249, 1351, 01945 1355, 1360, 1354, 1344, 284, 284, 249, 284, 284, 249, 01946 1357, 1345, 284, 1346, 1352, 284, 284, 249, 1358, 1359, 01947 1365, 1353, 284, 1366, 1356, 1355, 1360, 1362, 284, 284, 01948 284, 284, 284, 284, 1357, 1367, 284, 284, 1361, 284, 01949 284, 284, 1358, 1359, 1365, 1363, 284, 1366, 1356, 1368, 01950 1364, 1362, 1369, 284, 284, 1370, 284, 1371, 1372, 1373, 01951 01952 1367, 284, 1361, 1374, 284, 1375, 1686, 1376, 1377, 1363, 01953 1378, 284, 1379, 1368, 1380, 1364, 1369, 1381, 1383, 284, 01954 1370, 1382, 1371, 1372, 1373, 1384, 1385, 1374, 190, 1387, 01955 1375, 1376, 1388, 1377, 1378, 1389, 190, 1379, 1380, 1390, 01956 190, 190, 1381, 1383, 1386, 1382, 1395, 1391, 190, 190, 01957 1384, 1385, 1686, 190, 1387, 1396, 1388, 1397, 1398, 190, 01958 1389, 190, 190, 1390, 1393, 190, 190, 190, 1399, 1386, 01959 190, 1395, 1391, 190, 190, 1402, 1392, 190, 218, 1396, 01960 1404, 1401, 1397, 1398, 190, 190, 218, 190, 1403, 1393, 01961 1394, 1686, 190, 1399, 1410, 190, 1686, 218, 1686, 1402, 01962 01963 1392, 1400, 190, 218, 1404, 218, 1401, 1409, 218, 218, 01964 190, 218, 1411, 1403, 1394, 1405, 218, 218, 1410, 218, 01965 1412, 1407, 218, 218, 1686, 1406, 1400, 218, 1413, 1686, 01966 218, 218, 1409, 218, 218, 1416, 1408, 1411, 1415, 249, 01967 1405, 218, 218, 1417, 218, 1412, 1407, 249, 218, 1406, 01968 249, 1686, 218, 1413, 1414, 1686, 218, 1418, 249, 1416, 01969 1408, 249, 1423, 1415, 249, 249, 1425, 1419, 1417, 249, 01970 1686, 1424, 249, 249, 1426, 249, 249, 1427, 1421, 1414, 01971 249, 1418, 1420, 249, 249, 1429, 249, 1423, 249, 284, 01972 249, 1425, 1419, 1422, 249, 1424, 284, 284, 249, 1426, 01973 01974 1428, 249, 1427, 1421, 284, 249, 1420, 1430, 1431, 249, 01975 1429, 1432, 284, 249, 284, 284, 1437, 1422, 1433, 1686, 01976 284, 284, 284, 284, 1686, 1428, 284, 1439, 1435, 284, 01977 1438, 1430, 1434, 1431, 284, 1432, 284, 284, 1440, 1441, 01978 284, 1437, 1442, 1433, 284, 284, 1443, 1444, 284, 1436, 01979 1445, 284, 1439, 1435, 1438, 1446, 1434, 1447, 1448, 284, 01980 1449, 284, 1450, 1440, 1441, 1451, 1455, 1442, 1452, 284, 01981 1443, 1453, 1444, 1436, 1445, 1454, 1457, 190, 1458, 1446, 01982 1456, 1447, 1459, 1448, 1449, 190, 1450, 1460, 190, 190, 01983 1451, 1455, 1452, 1462, 1465, 1453, 190, 190, 1686, 1454, 01984 01985 1457, 190, 190, 1458, 1461, 1456, 1459, 190, 1469, 190, 01986 190, 1460, 1466, 190, 190, 190, 1686, 1467, 1462, 1465, 01987 1463, 190, 190, 1468, 1471, 1464, 190, 218, 1461, 1472, 01988 1470, 1479, 190, 1469, 190, 218, 1466, 1473, 1474, 1686, 01989 190, 1467, 218, 1686, 1463, 1480, 1686, 1468, 1471, 1464, 01990 218, 218, 218, 1481, 1472, 1470, 1479, 1686, 1475, 218, 01991 218, 1473, 1474, 218, 218, 1686, 1482, 218, 1476, 1480, 01992 1477, 218, 218, 1483, 1486, 218, 218, 1481, 1485, 1487, 01993 1488, 1478, 1475, 249, 218, 1686, 1484, 1686, 218, 218, 01994 1482, 249, 1686, 1476, 1477, 1494, 218, 218, 1483, 1486, 01995 01996 1493, 249, 1485, 1487, 1488, 1478, 249, 1686, 249, 249, 01997 1490, 1484, 249, 249, 249, 1497, 249, 1489, 1495, 1494, 01998 249, 249, 1686, 1496, 1499, 1493, 249, 1501, 1500, 1686, 01999 1492, 249, 1491, 1686, 249, 1490, 1502, 249, 249, 249, 02000 1497, 1489, 1495, 1507, 1686, 249, 249, 1496, 1499, 284, 02001 284, 1501, 1498, 1500, 1492, 284, 1491, 284, 284, 1504, 02002 1502, 284, 284, 284, 1686, 1508, 1503, 1509, 1507, 284, 02003 284, 1686, 1510, 1511, 284, 284, 1512, 1498, 1513, 1506, 02004 284, 1505, 284, 284, 1504, 1514, 284, 284, 284, 1508, 02005 1503, 1509, 1515, 1517, 284, 284, 1510, 1511, 1516, 190, 02006 02007 1520, 1512, 1513, 1506, 1519, 1505, 1521, 190, 190, 1514, 02008 1525, 1523, 190, 1686, 1528, 190, 190, 1515, 1517, 218, 02009 190, 190, 1516, 190, 190, 1520, 1522, 218, 1519, 190, 02010 1521, 1527, 190, 190, 1529, 1525, 1523, 190, 1524, 1528, 02011 190, 190, 1535, 218, 218, 190, 190, 1533, 190, 1536, 02012 1522, 218, 218, 1537, 190, 1527, 1686, 1530, 1529, 218, 02013 1686, 218, 1524, 218, 1531, 249, 1535, 218, 218, 218, 02014 249, 218, 1533, 249, 1536, 1541, 218, 1537, 249, 1686, 02015 1532, 1530, 1543, 249, 218, 249, 218, 1540, 218, 1531, 02016 249, 249, 218, 249, 218, 249, 218, 1538, 249, 249, 02017 02018 1541, 284, 1539, 249, 1532, 1544, 1543, 249, 249, 284, 02019 249, 1540, 1545, 1549, 284, 1686, 249, 284, 249, 1551, 02020 1547, 1538, 284, 284, 249, 284, 284, 1539, 1546, 284, 02021 1544, 284, 249, 1553, 284, 1554, 1545, 284, 1549, 284, 02022 1548, 1555, 284, 1551, 1556, 1547, 1557, 284, 284, 1558, 02023 284, 1560, 1546, 190, 284, 190, 284, 1563, 1553, 1554, 02024 1564, 190, 284, 190, 1548, 1565, 1555, 1567, 1570, 1556, 02025 1557, 1686, 1561, 1558, 1571, 218, 1560, 190, 190, 1559, 02026 190, 1562, 1563, 218, 1564, 190, 190, 218, 190, 1565, 02027 1572, 1574, 1567, 1570, 1568, 218, 1561, 218, 1571, 249, 02028 02029 218, 1569, 190, 1578, 1686, 218, 1562, 249, 218, 249, 02030 190, 1566, 218, 1577, 1572, 1579, 1574, 249, 1568, 1581, 02031 218, 249, 218, 1573, 249, 1576, 1569, 1578, 1575, 249, 02032 218, 1585, 249, 284, 249, 1584, 1587, 284, 1577, 1579, 02033 1586, 284, 249, 284, 1581, 284, 249, 1583, 1588, 1590, 02034 1576, 284, 1575, 1589, 249, 1585, 1582, 1580, 284, 1591, 02035 1584, 1587, 284, 1592, 1586, 1593, 284, 1594, 284, 1595, 02036 284, 1598, 1583, 1588, 1590, 190, 284, 1589, 190, 1601, 02037 1582, 1597, 1602, 190, 1591, 1599, 190, 1592, 1596, 1593, 02038 1600, 1606, 1594, 1605, 1595, 1607, 1598, 218, 1608, 1609, 02039 02040 190, 1612, 1686, 190, 1601, 218, 1597, 1602, 190, 1599, 02041 1603, 190, 1596, 218, 1600, 1606, 1604, 1615, 1605, 1607, 02042 249, 218, 218, 1608, 1609, 1613, 1612, 1614, 249, 1616, 02043 218, 1619, 1686, 1610, 1603, 284, 249, 1621, 218, 1611, 02044 1623, 1604, 1615, 284, 249, 249, 218, 1620, 1617, 1613, 02045 1622, 1614, 1624, 249, 1616, 284, 1619, 1610, 1618, 1626, 02046 284, 249, 1621, 284, 1611, 1623, 1625, 1627, 284, 249, 02047 190, 1620, 1617, 1628, 1622, 1629, 1624, 190, 190, 1631, 02048 284, 1630, 1632, 1618, 1626, 190, 218, 1636, 284, 1633, 02049 1625, 1627, 218, 1686, 218, 190, 1634, 1635, 1628, 1629, 02050 02051 218, 249, 190, 190, 1631, 1630, 1632, 1637, 1639, 249, 02052 190, 218, 1636, 1640, 1633, 249, 1641, 218, 1638, 218, 02053 1634, 1635, 1642, 249, 1646, 218, 249, 284, 284, 1648, 02054 1643, 1637, 1639, 1644, 249, 284, 284, 1640, 1645, 1647, 02055 249, 1641, 190, 1638, 1649, 1650, 1642, 1651, 249, 1646, 02056 190, 218, 284, 284, 1648, 1643, 1652, 1644, 249, 218, 02057 284, 284, 1645, 1647, 1653, 1654, 249, 190, 1649, 284, 02058 1650, 1651, 1655, 1656, 1657, 190, 218, 284, 1658, 1659, 02059 1660, 1652, 1661, 249, 218, 1662, 1663, 1664, 1653, 1665, 02060 1654, 249, 1666, 1667, 284, 1668, 1655, 1669, 1656, 1657, 02061 02062 1670, 1671, 284, 1658, 1659, 1660, 1672, 1661, 1673, 1674, 02063 1662, 1663, 1664, 1675, 1665, 1676, 1666, 1667, 1677, 1668, 02064 1678, 1669, 1679, 1680, 1670, 1681, 1671, 1682, 1683, 1684, 02065 1685, 1672, 1686, 1673, 1674, 1686, 1686, 1686, 1675, 1676, 02066 1686, 1686, 1677, 1686, 1678, 1686, 1679, 1680, 1686, 1686, 02067 1681, 1686, 1682, 1683, 1684, 1685, 146, 146, 146, 146, 02068 146, 146, 146, 146, 146, 147, 147, 147, 147, 147, 02069 147, 147, 147, 147, 152, 152, 152, 1686, 152, 152, 02070 152, 152, 152, 154, 154, 180, 180, 1686, 180, 180, 02071 180, 180, 180, 180, 189, 189, 189, 189, 190, 190, 02072 02073 190, 190, 214, 214, 1686, 214, 214, 214, 214, 214, 02074 214, 216, 216, 216, 216, 216, 216, 216, 216, 216, 02075 218, 218, 1686, 218, 218, 218, 218, 218, 218, 244, 02076 244, 1686, 244, 244, 244, 244, 244, 244, 245, 1686, 02077 245, 245, 245, 245, 245, 245, 245, 247, 247, 247, 02078 247, 247, 247, 247, 247, 247, 249, 1686, 249, 249, 02079 249, 249, 249, 249, 249, 273, 273, 273, 273, 273, 02080 273, 273, 273, 273, 275, 275, 282, 282, 282, 282, 02081 282, 284, 284, 284, 284, 284, 308, 308, 308, 308, 02082 308, 308, 308, 308, 308, 440, 440, 1686, 440, 440, 02083 02084 440, 440, 440, 440, 464, 464, 1686, 464, 464, 464, 02085 464, 464, 464, 472, 472, 1686, 472, 472, 472, 472, 02086 472, 472, 495, 495, 1686, 495, 495, 495, 495, 495, 02087 495, 503, 503, 1686, 503, 503, 503, 503, 503, 503, 02088 527, 527, 1686, 527, 527, 527, 527, 527, 527, 535, 02089 535, 535, 535, 535, 535, 535, 535, 535, 559, 559, 02090 559, 559, 559, 559, 559, 559, 559, 568, 568, 1686, 02091 568, 568, 568, 568, 568, 568, 592, 592, 1686, 592, 02092 592, 592, 592, 592, 592, 463, 463, 1686, 463, 463, 02093 463, 463, 463, 463, 494, 494, 1686, 494, 494, 494, 02094 02095 494, 494, 494, 526, 526, 1686, 526, 526, 526, 526, 02096 526, 526, 558, 558, 558, 558, 558, 558, 558, 558, 02097 558, 591, 591, 1686, 591, 591, 591, 591, 591, 591, 02098 843, 843, 1686, 843, 843, 843, 843, 843, 843, 865, 02099 865, 1686, 865, 865, 865, 865, 865, 865, 885, 885, 02100 1686, 885, 885, 885, 885, 885, 885, 907, 907, 907, 02101 907, 907, 907, 907, 907, 907, 929, 929, 1686, 929, 02102 929, 929, 929, 929, 929, 23, 1686, 1686, 1686, 1686, 02103 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 02104 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 02105 02106 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 02107 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 02108 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 02109 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686 02110 } ; 02111 02112 static yyconst flex_int16_t yy_chk[7341] = 02113 { 0, 02114 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 02115 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 02116 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 02117 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 02118 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 02119 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 02120 1, 1, 1, 1, 2, 4, 6, 8, 2, 4, 02121 6, 8, 9, 9, 9, 9, 9, 9, 9, 9, 02122 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 02123 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 02124 02125 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 02126 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 02127 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 02128 9, 9, 9, 9, 9, 9, 10, 22, 22, 1544, 02129 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 02130 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 02131 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 02132 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 02133 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 02134 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 02135 02136 11, 11, 11, 11, 11, 12, 76, 1536, 76, 12, 02137 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 02138 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 02139 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 02140 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 02141 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 02142 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 02143 13, 13, 13, 13, 14, 117, 117, 1528, 14, 15, 02144 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 02145 15, 16, 18, 20, 1520, 16, 18, 20, 29, 29, 02146 02147 29, 29, 29, 29, 46, 49, 147, 147, 46, 49, 02148 15, 15, 15, 15, 15, 15, 19, 19, 19, 19, 02149 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 02150 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 02151 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 02152 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 02153 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 02154 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 02155 30, 31, 33, 1515, 32, 34, 37, 32, 38, 31, 02156 51, 32, 35, 39, 51, 35, 40, 41, 53, 44, 02157 02158 99, 43, 53, 99, 30, 43, 31, 33, 32, 34, 02159 37, 32, 38, 72, 31, 32, 35, 72, 39, 35, 02160 40, 41, 42, 44, 42, 94, 43, 42, 1512, 94, 02161 43, 55, 55, 55, 55, 55, 55, 216, 42, 216, 02162 56, 56, 56, 56, 56, 56, 59, 42, 155, 42, 02163 59, 60, 42, 62, 59, 158, 126, 1508, 161, 60, 02164 126, 62, 42, 56, 77, 77, 77, 77, 77, 77, 02165 56, 59, 155, 60, 156, 59, 60, 123, 62, 59, 02166 158, 145, 123, 161, 60, 145, 62, 56, 57, 57, 02167 57, 57, 57, 57, 57, 1494, 61, 60, 156, 157, 02168 02169 162, 123, 57, 1480, 61, 63, 123, 61, 65, 1466, 02170 61, 178, 65, 63, 247, 178, 65, 247, 57, 57, 02171 63, 61, 1452, 157, 159, 162, 159, 57, 58, 61, 02172 63, 61, 66, 65, 61, 64, 58, 65, 63, 58, 02173 66, 65, 58, 64, 63, 1078, 58, 160, 159, 64, 02174 159, 66, 165, 58, 69, 166, 122, 66, 69, 955, 02175 64, 58, 69, 58, 67, 66, 58, 608, 64, 122, 02176 58, 160, 67, 64, 163, 66, 70, 165, 67, 69, 02177 166, 122, 167, 69, 70, 273, 273, 69, 168, 67, 02178 70, 81, 84, 122, 169, 81, 458, 67, 163, 81, 02179 02180 84, 70, 67, 68, 172, 68, 167, 68, 164, 70, 02181 68, 68, 168, 326, 70, 82, 81, 84, 169, 164, 02182 81, 68, 182, 82, 81, 84, 182, 184, 68, 172, 02183 68, 184, 68, 164, 310, 68, 68, 82, 170, 173, 02184 82, 171, 175, 164, 174, 68, 78, 78, 82, 78, 02185 78, 78, 78, 78, 78, 78, 78, 78, 78, 83, 02186 85, 82, 170, 86, 173, 171, 175, 83, 85, 174, 02187 83, 86, 324, 83, 176, 85, 78, 86, 186, 107, 02188 281, 276, 186, 78, 83, 85, 213, 107, 86, 279, 02189 213, 242, 83, 85, 83, 242, 86, 83, 176, 85, 02190 02191 78, 86, 280, 324, 107, 276, 280, 78, 78, 78, 02192 79, 79, 107, 79, 79, 79, 79, 79, 79, 79, 02193 79, 79, 79, 79, 87, 88, 89, 136, 87, 312, 02194 190, 79, 87, 88, 89, 136, 272, 91, 190, 307, 02195 89, 91, 314, 307, 88, 91, 241, 79, 79, 87, 02196 88, 89, 136, 87, 312, 190, 79, 87, 88, 89, 02197 136, 104, 91, 190, 89, 104, 91, 314, 88, 104, 02198 91, 79, 79, 79, 80, 92, 100, 100, 100, 100, 02199 100, 100, 80, 92, 215, 80, 104, 187, 80, 92, 02200 104, 185, 80, 105, 104, 308, 308, 120, 183, 80, 02201 02202 92, 105, 315, 181, 319, 120, 177, 80, 92, 80, 02203 152, 278, 80, 92, 120, 105, 80, 90, 105, 90, 02204 106, 90, 120, 278, 90, 90, 105, 315, 106, 319, 02205 120, 106, 277, 277, 106, 90, 278, 316, 120, 105, 02206 558, 558, 90, 150, 90, 106, 90, 278, 149, 90, 02207 90, 127, 125, 106, 320, 106, 277, 277, 106, 90, 02208 101, 316, 101, 101, 101, 101, 101, 101, 101, 101, 02209 101, 101, 101, 108, 110, 109, 111, 112, 110, 320, 02210 317, 108, 110, 109, 111, 112, 116, 318, 108, 109, 02211 101, 112, 321, 98, 322, 111, 323, 101, 108, 110, 02212 02213 109, 111, 112, 110, 317, 93, 108, 110, 109, 111, 02214 112, 318, 108, 109, 101, 112, 327, 321, 322, 111, 02215 323, 101, 101, 101, 102, 329, 102, 102, 102, 102, 02216 102, 102, 102, 102, 102, 102, 102, 102, 114, 115, 02217 327, 140, 114, 75, 328, 102, 114, 115, 74, 140, 02218 329, 334, 54, 115, 118, 118, 118, 118, 118, 118, 02219 140, 102, 102, 114, 115, 331, 140, 114, 328, 332, 02220 102, 114, 115, 121, 140, 334, 121, 115, 52, 121, 02221 121, 335, 50, 48, 140, 102, 102, 102, 103, 333, 02222 331, 441, 124, 438, 332, 124, 103, 121, 124, 103, 02223 02224 121, 442, 103, 121, 121, 335, 103, 129, 129, 129, 02225 129, 129, 129, 103, 333, 441, 124, 45, 438, 124, 02226 27, 103, 124, 103, 25, 442, 103, 439, 133, 137, 02227 103, 113, 133, 113, 135, 113, 133, 137, 113, 113, 02228 23, 439, 135, 17, 137, 135, 444, 446, 135, 113, 02229 7, 5, 439, 133, 137, 3, 113, 133, 113, 135, 02230 113, 133, 137, 113, 113, 439, 0, 135, 137, 135, 02231 444, 446, 135, 113, 119, 119, 119, 119, 119, 119, 02232 119, 119, 119, 119, 119, 119, 153, 153, 153, 153, 02233 153, 153, 448, 449, 0, 0, 451, 119, 188, 188, 02234 02235 188, 188, 188, 188, 138, 119, 119, 119, 119, 119, 02236 119, 134, 138, 0, 0, 462, 448, 449, 138, 134, 02237 451, 119, 130, 130, 130, 130, 130, 130, 130, 138, 02238 139, 141, 0, 134, 139, 194, 134, 138, 139, 141, 02239 462, 452, 138, 194, 134, 141, 130, 217, 217, 217, 02240 217, 217, 217, 130, 143, 139, 141, 134, 143, 139, 02241 194, 460, 143, 139, 141, 452, 0, 0, 194, 141, 02242 130, 131, 131, 131, 131, 131, 131, 131, 131, 143, 02243 144, 191, 193, 143, 192, 460, 131, 143, 144, 191, 02244 193, 413, 192, 0, 144, 193, 199, 0, 191, 0, 02245 02246 192, 465, 131, 131, 199, 144, 191, 193, 413, 192, 02247 199, 131, 132, 144, 191, 193, 413, 192, 144, 193, 02248 132, 199, 191, 132, 192, 465, 132, 196, 197, 199, 02249 132, 195, 413, 197, 199, 196, 197, 132, 0, 195, 02250 0, 0, 195, 196, 195, 132, 467, 132, 466, 0, 02251 132, 440, 196, 197, 132, 142, 195, 142, 197, 142, 02252 196, 197, 142, 142, 195, 440, 195, 196, 195, 0, 02253 198, 467, 466, 142, 198, 0, 440, 200, 198, 200, 02254 142, 468, 142, 202, 142, 200, 202, 142, 142, 440, 02255 200, 202, 201, 459, 201, 198, 469, 142, 0, 198, 02256 02257 201, 203, 200, 198, 200, 204, 468, 205, 202, 203, 02258 200, 202, 459, 204, 200, 205, 202, 201, 459, 201, 02259 469, 0, 203, 204, 483, 201, 203, 0, 205, 206, 02260 204, 207, 205, 208, 203, 209, 459, 206, 204, 207, 02261 205, 208, 0, 209, 0, 206, 203, 204, 483, 207, 02262 514, 211, 205, 0, 206, 0, 207, 218, 208, 211, 02263 209, 607, 206, 515, 207, 218, 208, 211, 209, 206, 02264 210, 210, 212, 207, 514, 219, 211, 220, 210, 490, 02265 212, 221, 218, 219, 211, 220, 607, 515, 212, 221, 02266 218, 211, 219, 220, 221, 210, 210, 212, 490, 222, 02267 02268 219, 546, 220, 210, 490, 212, 221, 222, 219, 0, 02269 220, 224, 212, 236, 221, 223, 219, 220, 221, 224, 02270 613, 236, 490, 223, 222, 546, 223, 224, 223, 225, 02271 0, 226, 222, 227, 225, 226, 224, 225, 236, 226, 02272 223, 227, 522, 0, 224, 613, 236, 227, 223, 618, 02273 223, 224, 223, 0, 225, 228, 226, 228, 227, 225, 02274 226, 522, 225, 228, 226, 547, 227, 522, 228, 231, 02275 229, 227, 229, 230, 618, 232, 230, 231, 229, 0, 02276 228, 230, 228, 232, 635, 522, 0, 579, 228, 547, 02277 231, 233, 228, 232, 231, 229, 580, 229, 230, 233, 02278 02279 232, 230, 231, 229, 598, 234, 230, 235, 232, 635, 02280 237, 579, 233, 234, 231, 235, 233, 232, 237, 471, 02281 580, 234, 554, 239, 233, 235, 238, 238, 598, 249, 02282 234, 239, 235, 471, 238, 237, 233, 249, 234, 239, 02283 235, 554, 240, 237, 471, 234, 0, 554, 239, 235, 02284 240, 238, 238, 253, 249, 658, 239, 471, 240, 238, 02285 0, 253, 249, 239, 681, 554, 250, 240, 248, 248, 02286 248, 248, 248, 248, 250, 240, 251, 252, 253, 565, 02287 658, 565, 240, 250, 251, 252, 253, 254, 255, 681, 02288 252, 250, 251, 0, 0, 254, 255, 0, 254, 250, 02289 02290 254, 251, 252, 565, 255, 565, 599, 250, 601, 251, 02291 252, 257, 254, 255, 252, 257, 251, 258, 256, 257, 02292 254, 255, 254, 256, 254, 258, 256, 0, 255, 0, 02293 599, 258, 601, 259, 0, 259, 257, 0, 0, 603, 02294 257, 259, 258, 256, 257, 604, 259, 0, 256, 261, 02295 258, 256, 261, 263, 260, 258, 260, 261, 259, 262, 02296 259, 263, 260, 603, 264, 267, 259, 262, 268, 604, 02297 259, 263, 264, 267, 261, 265, 268, 261, 263, 260, 02298 262, 260, 261, 265, 262, 264, 263, 260, 266, 264, 02299 267, 265, 262, 268, 605, 263, 266, 264, 267, 606, 02300 02301 265, 268, 269, 269, 262, 609, 266, 0, 265, 264, 02302 269, 617, 587, 266, 610, 265, 270, 271, 605, 0, 02303 0, 266, 0, 606, 270, 271, 617, 269, 269, 609, 02304 266, 587, 270, 271, 0, 269, 0, 587, 610, 0, 02305 0, 270, 271, 274, 274, 274, 274, 274, 274, 270, 02306 271, 617, 0, 611, 612, 587, 270, 271, 283, 283, 02307 283, 283, 283, 283, 284, 285, 287, 286, 288, 0, 02308 502, 0, 284, 285, 287, 286, 288, 611, 612, 287, 02309 0, 614, 285, 286, 502, 615, 302, 0, 0, 284, 02310 285, 287, 286, 288, 302, 502, 290, 284, 285, 287, 02311 02312 286, 288, 289, 287, 290, 614, 285, 286, 502, 615, 02313 289, 302, 290, 289, 619, 289, 292, 291, 293, 302, 02314 292, 290, 291, 0, 292, 291, 293, 289, 0, 290, 02315 620, 0, 293, 0, 0, 289, 290, 289, 619, 289, 02316 303, 292, 291, 293, 294, 292, 294, 291, 303, 292, 02317 291, 293, 294, 295, 620, 295, 293, 294, 297, 296, 02318 300, 295, 296, 0, 298, 303, 297, 296, 300, 294, 02319 0, 294, 298, 303, 0, 622, 300, 294, 295, 297, 02320 295, 294, 298, 297, 296, 300, 295, 296, 299, 298, 02321 301, 297, 296, 300, 304, 304, 299, 298, 301, 622, 02322 02323 300, 632, 304, 297, 337, 0, 298, 633, 301, 299, 02324 305, 704, 337, 299, 306, 301, 634, 644, 305, 304, 02325 304, 299, 306, 301, 654, 632, 305, 304, 655, 337, 02326 306, 633, 301, 299, 0, 305, 704, 337, 0, 306, 02327 634, 644, 0, 305, 0, 0, 0, 306, 654, 340, 02328 305, 0, 655, 340, 306, 313, 313, 340, 313, 313, 02329 313, 313, 313, 313, 313, 313, 313, 313, 325, 325, 02330 325, 325, 325, 339, 340, 343, 339, 325, 340, 344, 02331 341, 339, 340, 343, 0, 656, 343, 344, 341, 0, 02332 657, 667, 313, 0, 0, 0, 0, 341, 339, 0, 02333 02334 343, 339, 325, 0, 344, 341, 339, 0, 343, 656, 02335 343, 0, 344, 341, 657, 667, 313, 313, 313, 330, 02336 330, 341, 330, 330, 330, 330, 330, 330, 330, 330, 02337 330, 330, 342, 345, 346, 345, 347, 0, 351, 352, 02338 342, 345, 346, 356, 347, 0, 351, 352, 356, 0, 02339 342, 356, 0, 0, 352, 347, 330, 342, 345, 346, 02340 345, 347, 351, 351, 352, 342, 345, 346, 356, 347, 02341 349, 351, 352, 356, 342, 677, 356, 349, 352, 347, 02342 330, 330, 330, 338, 338, 349, 338, 338, 338, 338, 02343 338, 338, 338, 338, 338, 338, 348, 0, 0, 677, 02344 02345 0, 349, 349, 357, 348, 357, 0, 0, 354, 0, 02346 349, 357, 354, 0, 348, 713, 354, 0, 0, 678, 02347 338, 348, 350, 350, 350, 350, 350, 350, 357, 348, 02348 357, 353, 350, 354, 358, 358, 357, 354, 348, 353, 02349 713, 354, 358, 678, 338, 338, 338, 0, 353, 0, 02350 0, 0, 350, 0, 0, 0, 353, 350, 0, 358, 02351 358, 362, 0, 359, 353, 600, 714, 358, 600, 362, 02352 0, 359, 353, 355, 355, 359, 355, 355, 355, 355, 02353 355, 355, 355, 355, 355, 355, 362, 360, 359, 600, 02354 364, 714, 600, 364, 362, 360, 359, 360, 364, 359, 02355 02356 365, 0, 679, 680, 365, 0, 369, 715, 365, 0, 02357 355, 0, 360, 0, 369, 364, 0, 0, 364, 0, 02358 360, 360, 0, 364, 0, 365, 679, 680, 0, 365, 02359 690, 369, 715, 365, 355, 355, 355, 363, 363, 369, 02360 363, 363, 363, 363, 363, 363, 363, 363, 363, 363, 02361 366, 367, 368, 370, 690, 370, 371, 0, 366, 367, 02362 368, 370, 0, 368, 371, 0, 0, 366, 700, 367, 02363 0, 372, 0, 0, 363, 366, 367, 368, 370, 372, 02364 370, 371, 701, 366, 367, 368, 370, 368, 0, 371, 02365 372, 366, 700, 367, 373, 377, 372, 376, 363, 363, 02366 02367 363, 374, 373, 377, 372, 376, 701, 0, 374, 0, 02368 377, 0, 373, 702, 372, 0, 374, 0, 0, 373, 02369 377, 376, 376, 378, 0, 534, 0, 373, 377, 0, 02370 376, 378, 374, 374, 377, 602, 373, 702, 602, 534, 02371 378, 374, 375, 375, 375, 375, 375, 375, 378, 379, 02372 534, 375, 382, 379, 382, 375, 378, 379, 0, 602, 02373 382, 0, 602, 534, 378, 0, 0, 0, 0, 0, 02374 0, 0, 375, 0, 379, 0, 375, 382, 379, 382, 02375 375, 0, 379, 380, 380, 382, 380, 380, 380, 380, 02376 380, 380, 380, 380, 380, 380, 381, 383, 383, 384, 02377 02378 385, 381, 567, 716, 381, 383, 388, 384, 385, 0, 02379 385, 384, 703, 717, 388, 0, 567, 718, 0, 719, 02380 380, 381, 383, 383, 384, 385, 381, 567, 716, 381, 02381 383, 388, 384, 385, 385, 384, 703, 0, 717, 388, 02382 567, 0, 718, 719, 380, 380, 380, 389, 389, 389, 02383 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 02384 390, 391, 392, 390, 393, 391, 394, 395, 390, 391, 02385 392, 0, 393, 0, 394, 395, 0, 394, 721, 392, 02386 0, 0, 393, 0, 389, 390, 391, 392, 390, 393, 02387 391, 394, 395, 390, 391, 392, 396, 393, 396, 394, 02388 02389 395, 394, 721, 392, 396, 397, 393, 398, 389, 389, 02390 389, 722, 400, 397, 404, 398, 399, 0, 723, 400, 02391 0, 396, 404, 396, 399, 0, 398, 400, 0, 396, 02392 397, 404, 398, 727, 399, 722, 0, 0, 397, 404, 02393 398, 399, 723, 400, 400, 402, 0, 404, 0, 399, 02394 398, 724, 400, 402, 725, 404, 726, 727, 399, 401, 02395 401, 401, 401, 401, 401, 403, 735, 405, 401, 402, 02396 402, 405, 401, 403, 0, 405, 724, 728, 402, 725, 02397 403, 726, 0, 0, 0, 0, 0, 0, 0, 401, 02398 403, 735, 405, 401, 407, 0, 405, 401, 403, 407, 02399 02400 405, 728, 407, 0, 403, 406, 406, 406, 406, 406, 02401 406, 406, 406, 406, 406, 406, 406, 406, 408, 407, 02402 408, 409, 409, 410, 407, 414, 408, 407, 411, 409, 02403 736, 410, 0, 414, 0, 410, 411, 0, 411, 729, 02404 732, 0, 406, 408, 0, 408, 409, 409, 410, 0, 02405 414, 408, 0, 411, 409, 736, 410, 416, 414, 410, 02406 416, 411, 411, 729, 732, 416, 406, 406, 406, 415, 02407 415, 733, 415, 415, 415, 415, 415, 415, 415, 415, 02408 415, 415, 416, 417, 418, 416, 419, 417, 420, 421, 02409 416, 417, 418, 0, 419, 733, 420, 421, 0, 420, 02410 02411 0, 418, 423, 0, 419, 0, 415, 0, 417, 418, 02412 423, 419, 417, 420, 421, 738, 417, 418, 422, 419, 02413 422, 420, 421, 420, 739, 418, 422, 423, 419, 424, 02414 415, 415, 415, 428, 425, 423, 623, 424, 0, 623, 02415 738, 428, 425, 422, 740, 422, 426, 0, 424, 739, 02416 751, 422, 425, 426, 424, 749, 750, 428, 428, 425, 02417 623, 426, 424, 623, 0, 0, 428, 425, 0, 740, 02418 0, 431, 424, 0, 751, 431, 425, 426, 426, 431, 02419 749, 750, 752, 753, 775, 0, 426, 427, 427, 427, 02420 427, 427, 427, 427, 429, 430, 431, 434, 427, 434, 02421 02422 431, 776, 429, 430, 431, 434, 752, 753, 775, 429, 02423 494, 494, 430, 494, 494, 494, 494, 0, 427, 429, 02424 430, 0, 434, 427, 434, 776, 433, 429, 430, 761, 02425 434, 433, 762, 429, 433, 0, 430, 432, 432, 763, 02426 432, 432, 432, 432, 432, 432, 432, 432, 432, 432, 02427 436, 433, 435, 435, 761, 437, 433, 762, 436, 433, 02428 435, 0, 436, 437, 763, 437, 645, 668, 777, 645, 02429 668, 494, 494, 494, 432, 436, 0, 435, 435, 780, 02430 437, 0, 0, 436, 0, 435, 436, 0, 437, 437, 02431 645, 668, 777, 645, 668, 800, 0, 0, 432, 432, 02432 02433 432, 464, 464, 780, 464, 464, 464, 464, 464, 464, 02434 464, 464, 464, 464, 470, 473, 472, 474, 475, 800, 02435 470, 472, 470, 473, 472, 474, 475, 0, 476, 0, 02436 474, 801, 473, 0, 0, 472, 476, 0, 464, 470, 02437 473, 472, 474, 475, 476, 470, 472, 470, 473, 472, 02438 474, 475, 477, 476, 474, 801, 473, 478, 479, 472, 02439 477, 476, 464, 464, 464, 478, 479, 0, 476, 772, 02440 480, 482, 481, 492, 0, 0, 478, 477, 480, 482, 02441 481, 492, 478, 479, 489, 477, 802, 0, 480, 481, 02442 478, 479, 489, 0, 772, 480, 482, 481, 492, 491, 02443 02444 478, 773, 774, 480, 482, 481, 492, 491, 489, 489, 02445 802, 493, 480, 481, 805, 493, 786, 489, 491, 493, 02446 0, 0, 787, 0, 491, 0, 773, 774, 0, 0, 02447 0, 0, 491, 0, 0, 498, 493, 0, 805, 498, 02448 493, 786, 491, 498, 493, 495, 495, 787, 495, 495, 02449 495, 495, 495, 495, 495, 495, 495, 495, 496, 497, 02450 498, 788, 499, 500, 498, 506, 496, 497, 498, 497, 02451 499, 500, 0, 506, 0, 0, 496, 0, 0, 0, 02452 500, 0, 495, 496, 497, 797, 788, 499, 500, 0, 02453 506, 496, 497, 497, 503, 499, 500, 501, 506, 503, 02454 02455 496, 504, 503, 501, 500, 501, 495, 495, 495, 504, 02456 797, 691, 0, 503, 691, 798, 0, 0, 504, 503, 02457 0, 508, 501, 505, 503, 507, 504, 503, 501, 508, 02458 501, 505, 0, 507, 504, 691, 505, 503, 691, 510, 02459 798, 507, 504, 509, 512, 511, 508, 510, 505, 513, 02460 507, 509, 512, 511, 508, 0, 505, 513, 507, 521, 02461 505, 512, 509, 511, 510, 507, 0, 521, 509, 512, 02462 511, 523, 510, 524, 513, 799, 509, 512, 511, 523, 02463 531, 524, 513, 521, 521, 512, 509, 511, 531, 0, 02464 523, 525, 521, 811, 0, 525, 523, 812, 524, 525, 02465 02466 799, 0, 813, 0, 523, 531, 524, 0, 0, 0, 02467 0, 0, 0, 531, 523, 530, 525, 0, 811, 530, 02468 525, 0, 812, 530, 525, 527, 527, 813, 527, 527, 02469 527, 527, 527, 527, 527, 527, 527, 527, 528, 529, 02470 530, 822, 532, 0, 530, 533, 528, 529, 530, 529, 02471 532, 533, 823, 533, 0, 0, 528, 0, 0, 532, 02472 535, 0, 527, 528, 529, 535, 822, 532, 535, 0, 02473 533, 528, 529, 529, 536, 532, 533, 823, 533, 535, 02474 528, 537, 536, 532, 538, 535, 527, 527, 527, 537, 02475 535, 536, 538, 535, 537, 0, 539, 540, 0, 536, 02476 02477 541, 824, 542, 535, 539, 540, 537, 536, 541, 538, 02478 542, 0, 539, 0, 537, 536, 543, 538, 537, 541, 02479 544, 539, 540, 545, 543, 541, 824, 542, 544, 539, 02480 540, 545, 555, 541, 543, 542, 539, 544, 553, 556, 02481 555, 543, 0, 541, 561, 544, 553, 556, 545, 543, 02482 0, 555, 561, 544, 561, 825, 545, 555, 543, 563, 02483 837, 544, 553, 553, 556, 555, 557, 563, 0, 561, 02484 557, 553, 556, 840, 557, 555, 0, 561, 561, 825, 02485 0, 0, 0, 0, 563, 837, 0, 0, 0, 562, 02486 0, 557, 563, 562, 0, 557, 826, 562, 840, 557, 02487 02488 559, 559, 559, 559, 559, 559, 559, 559, 559, 559, 02489 559, 559, 559, 560, 562, 564, 569, 0, 562, 566, 02490 826, 560, 562, 564, 569, 566, 0, 566, 0, 0, 02491 827, 560, 564, 569, 568, 571, 0, 559, 560, 568, 02492 564, 569, 568, 571, 566, 830, 560, 846, 564, 569, 02493 566, 835, 566, 568, 827, 560, 564, 569, 570, 568, 02494 571, 559, 559, 559, 568, 572, 570, 568, 571, 830, 02495 0, 570, 846, 572, 573, 835, 575, 568, 574, 577, 02496 0, 572, 573, 570, 575, 0, 574, 577, 0, 836, 02497 572, 570, 576, 0, 578, 570, 577, 574, 572, 573, 02498 02499 576, 575, 578, 574, 577, 572, 586, 573, 838, 575, 02500 576, 574, 577, 836, 586, 589, 588, 576, 590, 578, 02501 577, 574, 590, 589, 588, 576, 590, 578, 0, 0, 02502 586, 586, 838, 0, 576, 588, 593, 596, 595, 586, 02503 589, 588, 595, 590, 593, 596, 595, 590, 589, 588, 02504 594, 590, 591, 591, 593, 591, 591, 591, 594, 588, 02505 594, 593, 596, 595, 597, 626, 621, 595, 624, 593, 02506 596, 595, 597, 626, 621, 594, 624, 630, 593, 621, 02507 839, 597, 624, 594, 594, 630, 0, 847, 626, 597, 02508 626, 621, 0, 624, 848, 0, 0, 597, 626, 621, 02509 02510 0, 624, 630, 621, 839, 597, 624, 0, 0, 849, 02511 630, 847, 626, 591, 591, 591, 592, 592, 848, 592, 02512 592, 592, 592, 592, 592, 592, 592, 592, 592, 625, 02513 627, 636, 628, 849, 0, 631, 0, 625, 627, 636, 02514 628, 0, 625, 631, 0, 625, 628, 851, 627, 636, 02515 629, 0, 0, 592, 625, 627, 636, 628, 629, 631, 02516 631, 629, 625, 627, 636, 628, 625, 855, 631, 625, 02517 628, 851, 627, 636, 637, 629, 638, 592, 592, 592, 02518 850, 639, 637, 629, 638, 629, 0, 637, 639, 640, 02519 641, 855, 640, 852, 0, 0, 639, 640, 641, 637, 02520 02521 853, 638, 0, 641, 642, 850, 854, 637, 857, 638, 02522 856, 637, 642, 639, 640, 641, 646, 640, 852, 642, 02523 643, 639, 640, 641, 646, 853, 647, 641, 643, 642, 02524 646, 854, 857, 643, 647, 856, 858, 642, 0, 647, 02525 649, 646, 647, 642, 648, 643, 859, 650, 649, 646, 02526 869, 647, 648, 643, 646, 650, 652, 643, 649, 647, 02527 858, 650, 653, 647, 652, 649, 647, 648, 651, 648, 02528 653, 859, 650, 649, 869, 660, 651, 648, 0, 651, 02529 650, 652, 649, 660, 659, 650, 653, 653, 660, 652, 02530 661, 648, 659, 651, 0, 653, 675, 0, 661, 662, 02531 02532 660, 651, 659, 651, 675, 0, 662, 871, 660, 659, 02533 663, 664, 660, 663, 662, 661, 870, 659, 663, 664, 02534 666, 675, 665, 661, 664, 0, 659, 872, 666, 675, 02535 665, 662, 871, 666, 877, 663, 664, 665, 663, 662, 02536 870, 671, 669, 663, 664, 666, 670, 665, 664, 671, 02537 669, 872, 672, 666, 670, 665, 669, 666, 877, 670, 02538 672, 665, 670, 878, 671, 676, 671, 669, 673, 0, 02539 672, 670, 0, 676, 671, 669, 673, 672, 873, 670, 02540 669, 0, 673, 670, 674, 672, 670, 878, 671, 676, 02541 676, 684, 674, 673, 672, 674, 682, 683, 676, 684, 02542 02543 685, 673, 0, 873, 682, 683, 673, 685, 0, 674, 02544 683, 0, 879, 0, 682, 685, 684, 674, 687, 674, 02545 686, 682, 683, 686, 684, 692, 687, 688, 686, 682, 02546 683, 687, 685, 692, 683, 688, 689, 879, 682, 692, 02547 685, 0, 688, 687, 689, 686, 693, 0, 686, 689, 02548 692, 687, 688, 686, 693, 687, 695, 694, 692, 693, 02549 688, 689, 693, 692, 695, 694, 688, 698, 0, 689, 02550 696, 693, 889, 689, 695, 698, 0, 697, 696, 693, 02551 694, 695, 694, 693, 696, 697, 693, 0, 697, 695, 02552 694, 699, 698, 705, 0, 696, 889, 707, 695, 699, 02553 02554 698, 705, 697, 696, 694, 707, 706, 0, 696, 0, 02555 697, 705, 697, 708, 706, 699, 699, 0, 705, 706, 02556 708, 0, 707, 890, 699, 892, 705, 891, 708, 709, 02557 707, 706, 709, 710, 711, 705, 737, 709, 0, 706, 02558 893, 710, 711, 706, 737, 708, 710, 890, 899, 711, 02559 892, 891, 900, 708, 709, 0, 0, 709, 710, 711, 02560 0, 737, 709, 741, 893, 741, 710, 711, 0, 737, 02561 710, 741, 899, 711, 720, 720, 900, 720, 720, 720, 02562 720, 720, 720, 720, 720, 720, 720, 742, 741, 894, 02563 741, 743, 742, 744, 754, 742, 741, 743, 746, 743, 02564 02565 895, 744, 754, 901, 0, 744, 746, 755, 0, 746, 02566 911, 720, 742, 0, 894, 755, 743, 742, 744, 754, 02567 742, 0, 743, 746, 743, 895, 744, 754, 901, 744, 02568 0, 746, 755, 746, 911, 720, 720, 720, 745, 745, 02569 755, 745, 745, 745, 745, 745, 745, 745, 745, 745, 02570 745, 747, 748, 756, 757, 758, 0, 0, 912, 747, 02571 748, 756, 757, 758, 0, 748, 756, 0, 913, 747, 02572 914, 0, 0, 759, 0, 745, 747, 748, 756, 757, 02573 758, 759, 912, 760, 747, 748, 756, 757, 758, 748, 02574 756, 760, 913, 747, 764, 914, 764, 766, 759, 745, 02575 02576 745, 745, 764, 766, 765, 766, 759, 769, 760, 765, 02577 0, 916, 765, 0, 917, 769, 760, 915, 769, 764, 02578 921, 764, 766, 767, 0, 771, 923, 764, 766, 765, 02579 766, 767, 769, 771, 765, 767, 916, 765, 771, 917, 02580 769, 915, 769, 0, 921, 0, 0, 0, 767, 778, 02581 771, 923, 0, 0, 0, 936, 767, 778, 771, 767, 02582 768, 768, 771, 768, 768, 768, 768, 768, 768, 768, 02583 768, 768, 768, 770, 778, 779, 781, 782, 783, 784, 02584 936, 770, 778, 779, 781, 782, 783, 784, 0, 781, 02585 922, 770, 933, 0, 934, 0, 935, 768, 770, 785, 02586 02587 779, 781, 782, 783, 784, 0, 770, 785, 779, 781, 02588 782, 783, 784, 781, 922, 770, 933, 789, 934, 789, 02589 935, 768, 768, 768, 785, 789, 790, 791, 792, 803, 02590 804, 790, 785, 791, 790, 791, 792, 803, 804, 0, 02591 792, 0, 789, 0, 789, 0, 0, 0, 0, 0, 02592 789, 790, 791, 792, 803, 804, 790, 937, 791, 790, 02593 791, 792, 803, 804, 792, 793, 793, 793, 793, 793, 02594 793, 793, 793, 793, 793, 793, 793, 793, 794, 795, 02595 938, 937, 796, 806, 807, 808, 794, 795, 0, 794, 02596 796, 806, 807, 808, 0, 796, 806, 795, 809, 939, 02597 02598 0, 0, 793, 794, 795, 938, 809, 796, 806, 807, 02599 808, 794, 795, 794, 810, 796, 806, 807, 808, 796, 02600 806, 795, 810, 809, 939, 828, 793, 793, 793, 815, 02601 814, 809, 814, 828, 815, 816, 817, 815, 814, 810, 02602 943, 816, 0, 816, 817, 944, 947, 810, 817, 0, 02603 828, 0, 0, 0, 815, 814, 0, 814, 828, 815, 02604 816, 817, 815, 814, 943, 945, 816, 829, 816, 817, 02605 944, 947, 817, 818, 818, 829, 818, 818, 818, 818, 02606 818, 818, 818, 818, 818, 818, 819, 820, 949, 945, 02607 821, 831, 829, 832, 819, 820, 0, 819, 821, 831, 02608 02609 829, 832, 0, 821, 831, 820, 833, 0, 946, 0, 02610 818, 819, 820, 949, 833, 821, 831, 834, 832, 819, 02611 820, 819, 952, 821, 831, 834, 832, 821, 831, 820, 02612 860, 833, 946, 842, 818, 818, 818, 842, 860, 833, 02613 957, 843, 834, 948, 863, 843, 861, 952, 0, 860, 02614 834, 842, 863, 862, 861, 860, 866, 862, 842, 843, 02615 861, 862, 842, 860, 866, 957, 843, 948, 950, 863, 02616 843, 861, 864, 860, 953, 842, 864, 863, 862, 861, 02617 867, 866, 862, 843, 861, 956, 862, 959, 867, 866, 02618 864, 0, 950, 961, 868, 0, 958, 864, 953, 880, 02619 02620 868, 864, 868, 960, 874, 867, 0, 880, 0, 956, 02621 874, 959, 874, 867, 864, 865, 865, 961, 880, 868, 02622 865, 958, 875, 865, 880, 868, 962, 868, 960, 874, 02623 875, 883, 880, 875, 865, 874, 876, 874, 876, 883, 02624 865, 865, 880, 0, 876, 865, 881, 875, 865, 0, 02625 962, 965, 0, 966, 881, 875, 883, 875, 865, 968, 02626 881, 876, 882, 876, 883, 886, 882, 887, 884, 876, 02627 882, 881, 884, 886, 888, 887, 965, 966, 0, 881, 02628 888, 967, 888, 968, 881, 0, 884, 882, 972, 0, 02629 886, 882, 887, 884, 973, 882, 896, 884, 886, 888, 02630 02631 887, 898, 896, 898, 896, 888, 967, 888, 980, 898, 02632 884, 885, 885, 972, 897, 0, 885, 0, 973, 885, 02633 0, 896, 897, 902, 0, 897, 898, 896, 898, 896, 02634 885, 902, 903, 980, 898, 905, 885, 885, 979, 897, 02635 903, 885, 902, 905, 885, 981, 903, 897, 902, 897, 02636 908, 904, 0, 909, 885, 904, 902, 903, 908, 904, 02637 905, 909, 979, 906, 927, 903, 902, 906, 905, 981, 02638 903, 910, 927, 0, 982, 908, 904, 910, 909, 910, 02639 904, 906, 0, 908, 904, 918, 909, 919, 906, 927, 02640 0, 918, 906, 918, 0, 919, 910, 927, 919, 982, 02641 02642 983, 920, 910, 920, 910, 906, 907, 907, 988, 920, 02643 918, 907, 919, 987, 907, 925, 918, 0, 918, 924, 02644 919, 0, 919, 925, 983, 907, 920, 924, 920, 925, 02645 989, 907, 907, 988, 920, 930, 907, 987, 924, 907, 02646 925, 928, 926, 930, 924, 928, 926, 931, 925, 907, 02647 926, 993, 924, 925, 989, 931, 0, 932, 0, 928, 02648 930, 0, 924, 932, 0, 932, 928, 926, 930, 0, 02649 928, 926, 931, 940, 0, 926, 993, 994, 0, 940, 02650 931, 940, 932, 928, 929, 929, 941, 0, 932, 929, 02651 932, 942, 929, 942, 941, 0, 0, 941, 940, 942, 02652 02653 0, 994, 951, 929, 940, 951, 940, 0, 1000, 929, 02654 929, 941, 954, 0, 929, 954, 942, 929, 942, 941, 02655 969, 941, 971, 970, 942, 970, 951, 929, 969, 951, 02656 971, 970, 1000, 0, 0, 971, 954, 969, 974, 954, 02657 0, 974, 0, 975, 976, 969, 978, 971, 970, 0, 02658 970, 975, 976, 969, 978, 971, 970, 995, 976, 971, 02659 995, 969, 974, 0, 984, 974, 985, 977, 975, 976, 02660 978, 978, 984, 1001, 985, 977, 975, 976, 1002, 978, 02661 977, 995, 976, 977, 995, 990, 986, 996, 992, 984, 02662 986, 985, 977, 990, 986, 996, 992, 984, 1001, 985, 02663 02664 977, 992, 990, 1002, 977, 1004, 991, 977, 991, 997, 02665 990, 986, 996, 992, 991, 986, 998, 997, 990, 986, 02666 996, 992, 1003, 997, 998, 992, 990, 999, 0, 998, 02667 1004, 991, 998, 991, 997, 999, 0, 1005, 1006, 991, 02668 1007, 998, 997, 1010, 1011, 1016, 1003, 997, 1007, 998, 02669 1008, 999, 999, 998, 1012, 1009, 998, 1024, 1008, 1009, 02670 999, 1005, 1006, 1009, 1013, 1007, 1014, 1010, 1014, 1011, 02671 1016, 1017, 1013, 1007, 1014, 1008, 1018, 1015, 1012, 1018, 02672 1009, 1013, 1024, 1008, 1009, 1015, 1019, 0, 1009, 1013, 02673 1015, 1014, 1025, 1014, 1019, 1017, 1023, 1013, 1020, 1014, 02674 02675 1018, 1022, 1015, 1018, 1026, 1013, 1020, 1027, 1021, 1022, 02676 1015, 1019, 1020, 1028, 1015, 1029, 1021, 1025, 1034, 1019, 02677 1023, 1021, 1030, 1020, 1021, 1022, 1022, 1031, 1026, 1033, 02678 1030, 1020, 1027, 1021, 1022, 1031, 1020, 1028, 1032, 1029, 02679 1035, 1021, 1032, 1034, 1039, 1021, 1032, 1030, 1021, 1036, 02680 0, 1040, 1031, 1033, 1037, 1030, 1037, 1036, 0, 1047, 02681 1031, 1048, 1037, 1032, 1035, 1041, 1036, 1032, 1041, 1039, 02682 1038, 1032, 1042, 0, 1036, 1040, 1046, 1043, 1038, 1037, 02683 1042, 1037, 1036, 1038, 1047, 1043, 1048, 1037, 1044, 1041, 02684 1036, 1043, 1041, 1049, 1050, 1038, 1044, 1042, 1045, 0, 02685 02686 1046, 1044, 1043, 1038, 1044, 1042, 1045, 1038, 1051, 1052, 02687 1043, 1056, 1053, 1044, 1057, 1043, 1054, 1049, 1058, 1050, 02688 1053, 1044, 1045, 1045, 1054, 1044, 1055, 1059, 1044, 1060, 02689 1055, 1045, 1051, 1052, 1055, 1062, 1056, 1053, 1057, 1061, 02690 1063, 1054, 1058, 1064, 1065, 1053, 1066, 1067, 1068, 1054, 02691 1069, 1055, 1059, 1060, 1070, 1055, 1071, 1072, 1073, 1055, 02692 1062, 1074, 1075, 1061, 1076, 1063, 1077, 1079, 1064, 1065, 02693 1080, 1066, 1067, 1068, 1081, 1069, 1083, 1085, 1070, 1086, 02694 1071, 1072, 1073, 1087, 1083, 1082, 1074, 1075, 1076, 1082, 02695 0, 1077, 1079, 1082, 1080, 1083, 1088, 1084, 1081, 0, 02696 02697 0, 1083, 1085, 1096, 1086, 1084, 0, 0, 1087, 1083, 02698 1082, 1097, 1091, 0, 1082, 1084, 1093, 1091, 1082, 1083, 02699 1091, 1088, 1084, 1089, 1090, 1089, 1090, 1092, 1096, 1094, 02700 1084, 1089, 1090, 1092, 1100, 1092, 1097, 1091, 1095, 1084, 02701 1093, 1098, 1091, 1101, 1102, 1091, 1099, 1104, 1089, 1090, 02702 1089, 1090, 1092, 1094, 1099, 1104, 1089, 1090, 1092, 1100, 02703 1092, 1106, 1095, 1107, 1108, 1098, 1104, 1101, 1102, 1103, 02704 1099, 1099, 1104, 1103, 1105, 1109, 1110, 1103, 1110, 1099, 02705 1104, 1114, 1105, 1118, 1110, 1111, 1106, 1111, 1107, 1108, 02706 1104, 1115, 1105, 1111, 1103, 0, 1116, 1119, 1103, 1105, 02707 02708 1109, 1110, 1103, 1110, 1117, 1114, 1112, 1105, 1118, 1110, 02709 1111, 1112, 1111, 1113, 1112, 1115, 1105, 1120, 1111, 1113, 02710 1116, 1113, 1119, 1121, 0, 1122, 1123, 0, 1117, 1124, 02711 1125, 1112, 1129, 1122, 1130, 0, 1112, 1131, 1113, 1112, 02712 1132, 1120, 0, 0, 1113, 0, 1113, 1127, 1121, 1122, 02713 1122, 1123, 1126, 1124, 1125, 1127, 1126, 1129, 1122, 1130, 02714 1126, 1128, 1131, 1137, 1138, 1132, 1127, 1136, 1133, 1128, 02715 1133, 1141, 1127, 1136, 0, 1136, 1133, 1126, 1139, 1128, 02716 1127, 1126, 1140, 1142, 0, 1126, 1128, 1137, 1138, 1134, 02717 1127, 1134, 1136, 1133, 1128, 1133, 1141, 1134, 1136, 1135, 02718 02719 1136, 1133, 1139, 1128, 1135, 1144, 1140, 1135, 1142, 1143, 02720 1145, 1146, 0, 1147, 1134, 1148, 1134, 1149, 1145, 1150, 02721 1152, 1149, 1134, 1151, 1135, 1149, 1153, 1150, 1154, 1135, 02722 1144, 1151, 1135, 1143, 1145, 1145, 1146, 1147, 1150, 1148, 02723 0, 1151, 1149, 1145, 1150, 1152, 1149, 1155, 1151, 1160, 02724 1149, 1153, 1150, 1154, 1161, 1156, 1151, 1156, 1157, 1158, 02725 1157, 1164, 1150, 1156, 1158, 1151, 1157, 1158, 1159, 0, 02726 1162, 1163, 1155, 1160, 1159, 1165, 1159, 1167, 1161, 1166, 02727 1156, 1169, 1156, 1157, 1158, 1157, 1164, 1170, 1156, 1158, 02728 1168, 1157, 1158, 1159, 1162, 1163, 1172, 1178, 1168, 1159, 02729 02730 1165, 1159, 1167, 1166, 1173, 1175, 1169, 1176, 1177, 1179, 02731 1180, 1170, 1181, 1182, 1168, 1168, 1183, 1184, 1187, 0, 02732 1188, 1172, 1178, 1168, 1190, 1191, 1192, 1197, 1173, 1175, 02733 1193, 1176, 1177, 1179, 1180, 1197, 1181, 1198, 1182, 1195, 02734 1183, 1184, 1195, 1187, 1188, 1196, 1201, 1195, 1190, 1199, 02735 1191, 1192, 1197, 1196, 1193, 1200, 0, 1203, 1202, 1209, 02736 1197, 1198, 1196, 1206, 1195, 1203, 1202, 1195, 1202, 1207, 02737 1196, 1201, 1195, 1199, 1210, 1214, 1203, 1205, 1196, 1200, 02738 1204, 1205, 1203, 1202, 1209, 1205, 1196, 1206, 1204, 1212, 02739 1203, 1202, 1202, 1207, 1204, 1213, 0, 1219, 1210, 1214, 02740 02741 1203, 1216, 1205, 1218, 1216, 1204, 1205, 1217, 1222, 1216, 02742 1205, 1218, 0, 1204, 1212, 1217, 0, 1220, 1204, 1221, 02743 1213, 1219, 0, 1227, 1217, 0, 1216, 1223, 1218, 1216, 02744 1224, 1225, 1217, 1222, 1216, 1223, 1218, 1223, 1224, 1225, 02745 1217, 1220, 1226, 1221, 1228, 1225, 1226, 1227, 1217, 1224, 02746 1226, 1231, 1223, 1232, 1234, 1224, 1225, 1235, 1236, 0, 02747 1223, 1223, 1237, 1224, 1225, 1245, 1241, 1226, 1228, 1225, 02748 1242, 1226, 0, 1224, 1241, 1226, 1231, 1232, 1234, 1240, 02749 0, 1239, 1235, 1236, 1239, 0, 1237, 1240, 0, 1239, 02750 1245, 1241, 1243, 1244, 1242, 0, 1240, 1246, 1254, 1241, 02751 02752 1247, 0, 1250, 0, 1240, 1246, 1239, 1246, 1247, 1239, 02753 1251, 1255, 1240, 1248, 1239, 1257, 1243, 1244, 1260, 1247, 02754 1240, 1248, 1246, 1254, 1249, 1247, 1250, 1248, 1249, 1258, 02755 1246, 1246, 1249, 1247, 1251, 1255, 1259, 1262, 1248, 1257, 02756 1262, 1268, 1260, 1247, 1264, 1262, 1248, 1263, 1270, 1249, 02757 1265, 1248, 1264, 1249, 1258, 1263, 1270, 1249, 1266, 1267, 02758 1273, 1259, 1262, 1274, 1263, 1262, 1268, 1270, 1269, 1264, 02759 1262, 1271, 1263, 1270, 1265, 1277, 1269, 1264, 1269, 1271, 02760 1263, 1270, 1266, 1267, 1273, 1271, 1272, 1274, 1263, 1278, 02761 1272, 1270, 1280, 1269, 1272, 1281, 1271, 1283, 1285, 1286, 02762 02763 1277, 1269, 1269, 1287, 1271, 1288, 0, 1289, 1290, 1271, 02764 1291, 1272, 1292, 1278, 1293, 1272, 1280, 1294, 1297, 1272, 02765 1281, 1295, 1283, 1285, 1286, 1299, 1301, 1287, 1302, 1304, 02766 1288, 1289, 1305, 1290, 1291, 1306, 1302, 1292, 1293, 1307, 02767 1303, 1308, 1294, 1297, 1303, 1295, 1312, 1308, 1303, 1308, 02768 1299, 1301, 0, 1302, 1304, 1313, 1305, 1315, 1316, 1309, 02769 1306, 1302, 1310, 1307, 1310, 1303, 1308, 1309, 1318, 1303, 02770 1310, 1312, 1308, 1303, 1308, 1322, 1309, 1311, 1319, 1313, 02771 1324, 1321, 1315, 1316, 1309, 1311, 1319, 1310, 1323, 1310, 02772 1311, 0, 1309, 1318, 1330, 1310, 0, 1320, 0, 1322, 02773 02774 1309, 1320, 1311, 1319, 1324, 1320, 1321, 1329, 1326, 1325, 02775 1311, 1319, 1332, 1323, 1311, 1325, 1326, 1325, 1330, 1327, 02776 1334, 1327, 1320, 1328, 0, 1326, 1320, 1327, 1336, 0, 02777 1320, 1328, 1329, 1326, 1325, 1340, 1328, 1332, 1339, 1337, 02778 1325, 1326, 1325, 1341, 1327, 1334, 1327, 1337, 1328, 1326, 02779 1338, 0, 1327, 1336, 1338, 0, 1328, 1342, 1338, 1340, 02780 1328, 1343, 1347, 1339, 1337, 1344, 1350, 1343, 1341, 1343, 02781 0, 1348, 1337, 1344, 1352, 1338, 1345, 1354, 1345, 1338, 02782 1346, 1342, 1344, 1338, 1345, 1357, 1343, 1347, 1346, 1355, 02783 1344, 1350, 1343, 1346, 1343, 1348, 1356, 1355, 1344, 1352, 02784 02785 1356, 1345, 1354, 1345, 1356, 1346, 1344, 1358, 1359, 1345, 02786 1357, 1360, 1361, 1346, 1355, 1362, 1365, 1346, 1361, 0, 02787 1361, 1356, 1355, 1362, 0, 1356, 1363, 1368, 1363, 1356, 02788 1366, 1358, 1362, 1359, 1363, 1360, 1364, 1361, 1370, 1371, 02789 1362, 1365, 1372, 1361, 1364, 1361, 1373, 1374, 1362, 1364, 02790 1375, 1363, 1368, 1363, 1366, 1376, 1362, 1377, 1378, 1363, 02791 1379, 1364, 1380, 1370, 1371, 1381, 1385, 1372, 1382, 1364, 02792 1373, 1383, 1374, 1364, 1375, 1384, 1387, 1386, 1388, 1376, 02793 1386, 1377, 1389, 1378, 1379, 1386, 1380, 1390, 1391, 1392, 02794 1381, 1385, 1382, 1392, 1395, 1383, 1391, 1392, 0, 1384, 02795 02796 1387, 1393, 1386, 1388, 1391, 1386, 1389, 1394, 1399, 1393, 02797 1386, 1390, 1396, 1391, 1392, 1394, 0, 1397, 1392, 1395, 02798 1393, 1391, 1392, 1398, 1401, 1394, 1393, 1400, 1391, 1402, 02799 1400, 1409, 1394, 1399, 1393, 1400, 1396, 1403, 1404, 0, 02800 1394, 1397, 1405, 0, 1393, 1410, 0, 1398, 1401, 1394, 02801 1405, 1407, 1400, 1411, 1402, 1400, 1409, 0, 1405, 1407, 02802 1400, 1403, 1404, 1408, 1406, 0, 1412, 1405, 1406, 1410, 02803 1407, 1408, 1406, 1413, 1416, 1405, 1407, 1411, 1415, 1417, 02804 1418, 1408, 1405, 1414, 1407, 0, 1414, 0, 1408, 1406, 02805 1412, 1414, 0, 1406, 1407, 1424, 1408, 1406, 1413, 1416, 02806 02807 1423, 1419, 1415, 1417, 1418, 1408, 1420, 0, 1414, 1419, 02808 1420, 1414, 1422, 1421, 1420, 1427, 1414, 1419, 1425, 1424, 02809 1422, 1421, 0, 1426, 1429, 1423, 1419, 1431, 1430, 0, 02810 1422, 1420, 1421, 0, 1419, 1420, 1432, 1422, 1421, 1420, 02811 1427, 1419, 1425, 1437, 0, 1422, 1421, 1426, 1429, 1428, 02812 1433, 1431, 1428, 1430, 1422, 1434, 1421, 1428, 1433, 1434, 02813 1432, 1436, 1435, 1434, 0, 1438, 1433, 1439, 1437, 1436, 02814 1435, 0, 1440, 1443, 1428, 1433, 1444, 1428, 1445, 1436, 02815 1434, 1435, 1428, 1433, 1434, 1447, 1436, 1435, 1434, 1438, 02816 1433, 1439, 1448, 1451, 1436, 1435, 1440, 1443, 1449, 1456, 02817 02818 1458, 1444, 1445, 1436, 1457, 1435, 1459, 1456, 1462, 1447, 02819 1465, 1462, 1461, 0, 1472, 1464, 1462, 1448, 1451, 1470, 02820 1461, 1463, 1449, 1464, 1456, 1458, 1461, 1470, 1457, 1463, 02821 1459, 1471, 1456, 1462, 1473, 1465, 1462, 1461, 1463, 1472, 02822 1464, 1462, 1485, 1475, 1470, 1461, 1463, 1479, 1464, 1486, 02823 1461, 1475, 1470, 1487, 1463, 1471, 0, 1475, 1473, 1478, 02824 0, 1476, 1463, 1477, 1476, 1484, 1485, 1478, 1475, 1476, 02825 1491, 1477, 1479, 1484, 1486, 1493, 1475, 1487, 1491, 0, 02826 1477, 1475, 1499, 1489, 1478, 1492, 1476, 1491, 1477, 1476, 02827 1484, 1489, 1478, 1492, 1476, 1491, 1477, 1489, 1484, 1490, 02828 02829 1493, 1498, 1490, 1491, 1477, 1500, 1499, 1490, 1489, 1498, 02830 1492, 1491, 1501, 1507, 1503, 0, 1489, 1504, 1492, 1511, 02831 1504, 1489, 1503, 1505, 1490, 1504, 1498, 1490, 1503, 1506, 02832 1500, 1505, 1490, 1513, 1498, 1514, 1501, 1506, 1507, 1503, 02833 1505, 1516, 1504, 1511, 1517, 1504, 1518, 1503, 1505, 1519, 02834 1504, 1521, 1503, 1522, 1506, 1523, 1505, 1525, 1513, 1514, 02835 1526, 1522, 1506, 1523, 1505, 1527, 1516, 1529, 1533, 1517, 02836 1518, 0, 1522, 1519, 1534, 1530, 1521, 1524, 1522, 1523, 02837 1523, 1524, 1525, 1530, 1526, 1524, 1522, 1531, 1523, 1527, 02838 1535, 1537, 1529, 1533, 1530, 1531, 1522, 1532, 1534, 1539, 02839 02840 1530, 1532, 1524, 1542, 0, 1532, 1524, 1539, 1530, 1538, 02841 1524, 1531, 1531, 1541, 1535, 1543, 1537, 1538, 1530, 1545, 02842 1531, 1540, 1532, 1539, 1539, 1540, 1532, 1542, 1538, 1540, 02843 1532, 1550, 1539, 1547, 1538, 1549, 1552, 1546, 1541, 1543, 02844 1551, 1547, 1538, 1548, 1545, 1546, 1540, 1548, 1553, 1555, 02845 1540, 1548, 1538, 1554, 1540, 1550, 1546, 1547, 1547, 1556, 02846 1549, 1552, 1546, 1557, 1551, 1558, 1547, 1559, 1548, 1560, 02847 1546, 1563, 1548, 1553, 1555, 1561, 1548, 1554, 1562, 1566, 02848 1546, 1562, 1567, 1561, 1556, 1564, 1562, 1557, 1561, 1558, 02849 1565, 1571, 1559, 1570, 1560, 1572, 1563, 1568, 1573, 1574, 02850 02851 1561, 1577, 0, 1562, 1566, 1568, 1562, 1567, 1561, 1564, 02852 1568, 1562, 1561, 1569, 1565, 1571, 1569, 1580, 1570, 1572, 02853 1575, 1569, 1568, 1573, 1574, 1578, 1577, 1579, 1575, 1581, 02854 1568, 1584, 0, 1575, 1568, 1582, 1576, 1586, 1569, 1576, 02855 1589, 1569, 1580, 1582, 1576, 1575, 1569, 1585, 1582, 1578, 02856 1587, 1579, 1591, 1575, 1581, 1583, 1584, 1575, 1583, 1593, 02857 1582, 1576, 1586, 1583, 1576, 1589, 1592, 1594, 1582, 1576, 02858 1596, 1585, 1582, 1596, 1587, 1598, 1591, 1597, 1596, 1600, 02859 1583, 1599, 1601, 1583, 1593, 1597, 1603, 1607, 1583, 1603, 02860 1592, 1594, 1604, 0, 1603, 1596, 1605, 1606, 1596, 1598, 02861 02862 1604, 1611, 1597, 1596, 1600, 1599, 1601, 1608, 1612, 1611, 02863 1597, 1603, 1607, 1613, 1603, 1610, 1614, 1604, 1610, 1603, 02864 1605, 1606, 1615, 1610, 1622, 1604, 1611, 1617, 1618, 1627, 02865 1617, 1608, 1612, 1619, 1611, 1617, 1618, 1613, 1620, 1625, 02866 1610, 1614, 1628, 1610, 1630, 1632, 1615, 1635, 1610, 1622, 02867 1628, 1633, 1617, 1618, 1627, 1617, 1637, 1619, 1638, 1633, 02868 1617, 1618, 1620, 1625, 1640, 1642, 1638, 1628, 1630, 1643, 02869 1632, 1635, 1645, 1646, 1647, 1628, 1633, 1643, 1648, 1649, 02870 1650, 1637, 1651, 1638, 1633, 1652, 1653, 1654, 1640, 1655, 02871 1642, 1638, 1656, 1658, 1643, 1660, 1645, 1662, 1646, 1647, 02872 02873 1664, 1666, 1643, 1648, 1649, 1650, 1667, 1651, 1668, 1669, 02874 1652, 1653, 1654, 1670, 1655, 1671, 1656, 1658, 1672, 1660, 02875 1673, 1662, 1674, 1675, 1664, 1676, 1666, 1677, 1678, 1679, 02876 1680, 1667, 0, 1668, 1669, 0, 0, 0, 1670, 1671, 02877 0, 0, 1672, 0, 1673, 0, 1674, 1675, 0, 0, 02878 1676, 0, 1677, 1678, 1679, 1680, 1687, 1687, 1687, 1687, 02879 1687, 1687, 1687, 1687, 1687, 1688, 1688, 1688, 1688, 1688, 02880 1688, 1688, 1688, 1688, 1689, 1689, 1689, 0, 1689, 1689, 02881 1689, 1689, 1689, 1690, 1690, 1691, 1691, 0, 1691, 1691, 02882 1691, 1691, 1691, 1691, 1692, 1692, 1692, 1692, 1693, 1693, 02883 02884 1693, 1693, 1694, 1694, 0, 1694, 1694, 1694, 1694, 1694, 02885 1694, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 1695, 02886 1696, 1696, 0, 1696, 1696, 1696, 1696, 1696, 1696, 1697, 02887 1697, 0, 1697, 1697, 1697, 1697, 1697, 1697, 1698, 0, 02888 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1699, 1699, 1699, 02889 1699, 1699, 1699, 1699, 1699, 1699, 1700, 0, 1700, 1700, 02890 1700, 1700, 1700, 1700, 1700, 1701, 1701, 1701, 1701, 1701, 02891 1701, 1701, 1701, 1701, 1702, 1702, 1703, 1703, 1703, 1703, 02892 1703, 1704, 1704, 1704, 1704, 1704, 1705, 1705, 1705, 1705, 02893 1705, 1705, 1705, 1705, 1705, 1706, 1706, 0, 1706, 1706, 02894 02895 1706, 1706, 1706, 1706, 1707, 1707, 0, 1707, 1707, 1707, 02896 1707, 1707, 1707, 1708, 1708, 0, 1708, 1708, 1708, 1708, 02897 1708, 1708, 1709, 1709, 0, 1709, 1709, 1709, 1709, 1709, 02898 1709, 1710, 1710, 0, 1710, 1710, 1710, 1710, 1710, 1710, 02899 1711, 1711, 0, 1711, 1711, 1711, 1711, 1711, 1711, 1712, 02900 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1712, 1713, 1713, 02901 1713, 1713, 1713, 1713, 1713, 1713, 1713, 1714, 1714, 0, 02902 1714, 1714, 1714, 1714, 1714, 1714, 1715, 1715, 0, 1715, 02903 1715, 1715, 1715, 1715, 1715, 1716, 1716, 0, 1716, 1716, 02904 1716, 1716, 1716, 1716, 1717, 1717, 0, 1717, 1717, 1717, 02905 02906 1717, 1717, 1717, 1718, 1718, 0, 1718, 1718, 1718, 1718, 02907 1718, 1718, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 1719, 02908 1719, 1720, 1720, 0, 1720, 1720, 1720, 1720, 1720, 1720, 02909 1721, 1721, 0, 1721, 1721, 1721, 1721, 1721, 1721, 1722, 02910 1722, 0, 1722, 1722, 1722, 1722, 1722, 1722, 1723, 1723, 02911 0, 1723, 1723, 1723, 1723, 1723, 1723, 1724, 1724, 1724, 02912 1724, 1724, 1724, 1724, 1724, 1724, 1725, 1725, 0, 1725, 02913 1725, 1725, 1725, 1725, 1725, 1686, 1686, 1686, 1686, 1686, 02914 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 02915 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 02916 02917 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 02918 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 02919 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 02920 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686, 1686 02921 } ; 02922 02923 extern int yy_flex_debug; 02924 int yy_flex_debug = 0; 02925 02926 static yy_state_type *yy_state_buf=0, *yy_state_ptr=0; 02927 static char *yy_full_match; 02928 static int yy_lp; 02929 static int yy_looking_for_trail_begin = 0; 02930 static int yy_full_lp; 02931 static int *yy_full_state; 02932 #define YY_TRAILING_MASK 0x2000 02933 #define YY_TRAILING_HEAD_MASK 0x4000 02934 #define REJECT \ 02935 { \ 02936 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ \ 02937 yy_cp = (yy_full_match); /* restore poss. backed-over text */ \ 02938 (yy_lp) = (yy_full_lp); /* restore orig. accepting pos. */ \ 02939 (yy_state_ptr) = (yy_full_state); /* restore orig. state */ \ 02940 yy_current_state = *(yy_state_ptr); /* restore curr. state */ \ 02941 ++(yy_lp); \ 02942 goto find_rule; \ 02943 } 02944 02945 #define yymore() yymore_used_but_not_detected 02946 #define YY_MORE_ADJ 0 02947 #define YY_RESTORE_YY_MORE_OFFSET 02948 char *yytext; 02949 #line 1 "src/cfgparse.l" 02950 #define YY_NO_INPUT 1 02951 #line 7 "src/cfgparse.l" 02952 /* 02953 * vim:ts=8:expandtab 02954 * 02955 */ 02956 #include <stdio.h> 02957 #include <string.h> 02958 #include "cfgparse.tab.h" 02959 #include <xcb/xcb.h> 02960 02961 #include "data.h" 02962 #include "config.h" 02963 #include "log.h" 02964 #include "util.h" 02965 02966 int yycolumn = 1; 02967 02968 #define YY_DECL int yylex (struct context *context) 02969 02970 #define YY_USER_ACTION { \ 02971 context->first_column = yycolumn; \ 02972 context->last_column = yycolumn+yyleng-1; \ 02973 yycolumn += yyleng; \ 02974 } 02975 02976 02977 02978 02979 02980 02981 02982 02983 02984 02985 02986 #line 2987 "src/cfgparse.yy.c" 02987 02988 #define INITIAL 0 02989 #define BIND_COND 1 02990 #define BINDSYM_COND 2 02991 #define BIND_AWS_COND 3 02992 #define BINDSYM_AWS_COND 4 02993 #define BIND_A2WS_COND 5 02994 #define ASSIGN_COND 6 02995 #define COLOR_COND 7 02996 #define OUTPUT_COND 8 02997 #define OUTPUT_AWS_COND 9 02998 #define BUFFER_LINE 10 02999 03000 #ifndef YY_NO_UNISTD_H 03001 /* Special case for "unistd.h", since it is non-ANSI. We include it way 03002 * down here because we want the user's section 1 to have been scanned first. 03003 * The user has a chance to override it with an option. 03004 */ 03005 #include <unistd.h> 03006 #endif 03007 03008 #ifndef YY_EXTRA_TYPE 03009 #define YY_EXTRA_TYPE void * 03010 #endif 03011 03012 static int yy_init_globals (void ); 03013 03014 /* Accessor methods to globals. 03015 These are made visible to non-reentrant scanners for convenience. */ 03016 03017 int yylex_destroy (void ); 03018 03019 int yyget_debug (void ); 03020 03021 void yyset_debug (int debug_flag ); 03022 03023 YY_EXTRA_TYPE yyget_extra (void ); 03024 03025 void yyset_extra (YY_EXTRA_TYPE user_defined ); 03026 03027 FILE *yyget_in (void ); 03028 03029 void yyset_in (FILE * in_str ); 03030 03031 FILE *yyget_out (void ); 03032 03033 void yyset_out (FILE * out_str ); 03034 03035 int yyget_leng (void ); 03036 03037 char *yyget_text (void ); 03038 03039 int yyget_lineno (void ); 03040 03041 void yyset_lineno (int line_number ); 03042 03043 /* Macros after this point can all be overridden by user definitions in 03044 * section 1. 03045 */ 03046 03047 #ifndef YY_SKIP_YYWRAP 03048 #ifdef __cplusplus 03049 extern "C" int yywrap (void ); 03050 #else 03051 extern int yywrap (void ); 03052 #endif 03053 #endif 03054 03055 #ifndef yytext_ptr 03056 static void yy_flex_strncpy (char *,yyconst char *,int ); 03057 #endif 03058 03059 #ifdef YY_NEED_STRLEN 03060 static int yy_flex_strlen (yyconst char * ); 03061 #endif 03062 03063 #ifndef YY_NO_INPUT 03064 03065 #ifdef __cplusplus 03066 static int yyinput (void ); 03067 #else 03068 static int input (void ); 03069 #endif 03070 03071 #endif 03072 03073 static int yy_start_stack_ptr = 0; 03074 static int yy_start_stack_depth = 0; 03075 static int *yy_start_stack = NULL; 03076 03077 static void yy_push_state (int new_state ); 03078 03079 static void yy_pop_state (void ); 03080 03081 /* Amount of stuff to slurp up with each read. */ 03082 #ifndef YY_READ_BUF_SIZE 03083 #define YY_READ_BUF_SIZE 8192 03084 #endif 03085 03086 /* Copy whatever the last rule matched to the standard output. */ 03087 #ifndef ECHO 03088 /* This used to be an fputs(), but since the string might contain NUL's, 03089 * we now use fwrite(). 03090 */ 03091 #define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0) 03092 #endif 03093 03094 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, 03095 * is returned in "result". 03096 */ 03097 #ifndef YY_INPUT 03098 #define YY_INPUT(buf,result,max_size) \ 03099 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ 03100 { \ 03101 int c = '*'; \ 03102 unsigned n; \ 03103 for ( n = 0; n < max_size && \ 03104 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ 03105 buf[n] = (char) c; \ 03106 if ( c == '\n' ) \ 03107 buf[n++] = (char) c; \ 03108 if ( c == EOF && ferror( yyin ) ) \ 03109 YY_FATAL_ERROR( "input in flex scanner failed" ); \ 03110 result = n; \ 03111 } \ 03112 else \ 03113 { \ 03114 errno=0; \ 03115 while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \ 03116 { \ 03117 if( errno != EINTR) \ 03118 { \ 03119 YY_FATAL_ERROR( "input in flex scanner failed" ); \ 03120 break; \ 03121 } \ 03122 errno=0; \ 03123 clearerr(yyin); \ 03124 } \ 03125 }\ 03126 \ 03127 03128 #endif 03129 03130 /* No semi-colon after return; correct usage is to write "yyterminate();" - 03131 * we don't want an extra ';' after the "return" because that will cause 03132 * some compilers to complain about unreachable statements. 03133 */ 03134 #ifndef yyterminate 03135 #define yyterminate() return YY_NULL 03136 #endif 03137 03138 /* Number of entries by which start-condition stack grows. */ 03139 #ifndef YY_START_STACK_INCR 03140 #define YY_START_STACK_INCR 25 03141 #endif 03142 03143 /* Report a fatal error. */ 03144 #ifndef YY_FATAL_ERROR 03145 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg ) 03146 #endif 03147 03148 /* end tables serialization structures and prototypes */ 03149 03150 /* Default declaration of generated scanner - a define so the user can 03151 * easily add parameters. 03152 */ 03153 #ifndef YY_DECL 03154 #define YY_DECL_IS_OURS 1 03155 03156 extern int yylex (void); 03157 03158 #define YY_DECL int yylex (void) 03159 #endif /* !YY_DECL */ 03160 03161 /* Code executed at the beginning of each rule, after yytext and yyleng 03162 * have been set up. 03163 */ 03164 #ifndef YY_USER_ACTION 03165 #define YY_USER_ACTION 03166 #endif 03167 03168 /* Code executed at the end of each rule. */ 03169 #ifndef YY_BREAK 03170 #define YY_BREAK break; 03171 #endif 03172 03173 #define YY_RULE_SETUP \ 03174 if ( yyleng > 0 ) \ 03175 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \ 03176 (yytext[yyleng - 1] == '\n'); \ 03177 YY_USER_ACTION 03178 03181 YY_DECL 03182 { 03183 register yy_state_type yy_current_state; 03184 register char *yy_cp, *yy_bp; 03185 register int yy_act; 03186 03187 #line 46 "src/cfgparse.l" 03188 03189 03190 { 03191 /* This is called when a new line is lexed. We only want the 03192 * first line to match to go into state BUFFER_LINE */ 03193 if (context->line_number == 0) { 03194 context->line_number = 1; 03195 BEGIN(INITIAL); 03196 yy_push_state(BUFFER_LINE); 03197 } 03198 } 03199 03200 #line 3201 "src/cfgparse.yy.c" 03201 03202 if ( !(yy_init) ) 03203 { 03204 (yy_init) = 1; 03205 03206 #ifdef YY_USER_INIT 03207 YY_USER_INIT; 03208 #endif 03209 03210 /* Create the reject buffer large enough to save one state per allowed character. */ 03211 if ( ! (yy_state_buf) ) 03212 (yy_state_buf) = (yy_state_type *)yyalloc(YY_STATE_BUF_SIZE ); 03213 if ( ! (yy_state_buf) ) 03214 YY_FATAL_ERROR( "out of dynamic memory in yylex()" ); 03215 03216 if ( ! (yy_start) ) 03217 (yy_start) = 1; /* first start state */ 03218 03219 if ( ! yyin ) 03220 yyin = stdin; 03221 03222 if ( ! yyout ) 03223 yyout = stdout; 03224 03225 if ( ! YY_CURRENT_BUFFER ) { 03226 yyensure_buffer_stack (); 03227 YY_CURRENT_BUFFER_LVALUE = 03228 yy_create_buffer(yyin,YY_BUF_SIZE ); 03229 } 03230 03231 yy_load_buffer_state( ); 03232 } 03233 03234 while ( 1 ) /* loops until end-of-file is reached */ 03235 { 03236 yy_cp = (yy_c_buf_p); 03237 03238 /* Support of yytext. */ 03239 *yy_cp = (yy_hold_char); 03240 03241 /* yy_bp points to the position in yy_ch_buf of the start of 03242 * the current run. 03243 */ 03244 yy_bp = yy_cp; 03245 03246 yy_current_state = (yy_start); 03247 yy_current_state += YY_AT_BOL(); 03248 03249 (yy_state_ptr) = (yy_state_buf); 03250 *(yy_state_ptr)++ = yy_current_state; 03251 03252 yy_match: 03253 do 03254 { 03255 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)]; 03256 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 03257 { 03258 yy_current_state = (int) yy_def[yy_current_state]; 03259 if ( yy_current_state >= 1687 ) 03260 yy_c = yy_meta[(unsigned int) yy_c]; 03261 } 03262 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; 03263 *(yy_state_ptr)++ = yy_current_state; 03264 ++yy_cp; 03265 } 03266 while ( yy_base[yy_current_state] != 7276 ); 03267 03268 yy_find_action: 03269 yy_current_state = *--(yy_state_ptr); 03270 (yy_lp) = yy_accept[yy_current_state]; 03271 find_rule: /* we branch to this label when backing up */ 03272 for ( ; ; ) /* until we find what rule we matched */ 03273 { 03274 if ( (yy_lp) && (yy_lp) < yy_accept[yy_current_state + 1] ) 03275 { 03276 yy_act = yy_acclist[(yy_lp)]; 03277 if ( yy_act & YY_TRAILING_HEAD_MASK || 03278 (yy_looking_for_trail_begin) ) 03279 { 03280 if ( yy_act == (yy_looking_for_trail_begin) ) 03281 { 03282 (yy_looking_for_trail_begin) = 0; 03283 yy_act &= ~YY_TRAILING_HEAD_MASK; 03284 break; 03285 } 03286 } 03287 else if ( yy_act & YY_TRAILING_MASK ) 03288 { 03289 (yy_looking_for_trail_begin) = yy_act & ~YY_TRAILING_MASK; 03290 (yy_looking_for_trail_begin) |= YY_TRAILING_HEAD_MASK; 03291 } 03292 else 03293 { 03294 (yy_full_match) = yy_cp; 03295 (yy_full_state) = (yy_state_ptr); 03296 (yy_full_lp) = (yy_lp); 03297 break; 03298 } 03299 ++(yy_lp); 03300 goto find_rule; 03301 } 03302 --yy_cp; 03303 yy_current_state = *--(yy_state_ptr); 03304 (yy_lp) = yy_accept[yy_current_state]; 03305 } 03306 03307 YY_DO_BEFORE_ACTION; 03308 03309 do_action: /* This label is used only to access EOF actions. */ 03310 03311 switch ( yy_act ) 03312 { /* beginning of action switch */ 03313 case 1: 03314 /* rule 1 can match eol */ 03315 YY_RULE_SETUP 03316 #line 58 "src/cfgparse.l" 03317 { 03318 /* save whole line */ 03319 context->line_copy = strdup(yytext); 03320 03321 yyless(0); 03322 yy_pop_state(); 03323 yy_set_bol(true); 03324 yycolumn = 1; 03325 } 03326 YY_BREAK 03327 case 2: 03328 YY_RULE_SETUP 03329 #line 69 "src/cfgparse.l" 03330 { BEGIN(INITIAL); yylval.string = strdup(yytext); return STR; } 03331 YY_BREAK 03332 case 3: 03333 YY_RULE_SETUP 03334 #line 70 "src/cfgparse.l" 03335 { yylval.string = strdup(yytext); return OUTPUT; } 03336 YY_BREAK 03337 case 4: 03338 YY_RULE_SETUP 03339 #line 71 "src/cfgparse.l" 03340 { return TOKCOMMENT; } 03341 YY_BREAK 03342 case 5: 03343 YY_RULE_SETUP 03344 #line 72 "src/cfgparse.l" 03345 { yylval.string = strdup(yytext); return HEX; } 03346 YY_BREAK 03347 case 6: 03348 YY_RULE_SETUP 03349 #line 73 "src/cfgparse.l" 03350 { yylval.number = atoi(yytext); return NUMBER; } 03351 YY_BREAK 03352 case 7: 03353 YY_RULE_SETUP 03354 #line 74 "src/cfgparse.l" 03355 { return TOKMODE; } 03356 YY_BREAK 03357 case 8: 03358 YY_RULE_SETUP 03359 #line 75 "src/cfgparse.l" 03360 { BEGIN(BIND_COND); return TOKBIND; } 03361 YY_BREAK 03362 case 9: 03363 YY_RULE_SETUP 03364 #line 76 "src/cfgparse.l" 03365 { BEGIN(BINDSYM_COND); return TOKBINDSYM; } 03366 YY_BREAK 03367 case 10: 03368 YY_RULE_SETUP 03369 #line 77 "src/cfgparse.l" 03370 { BEGIN(INITIAL); return TOKFLOATING_MODIFIER; } 03371 YY_BREAK 03372 case 11: 03373 YY_RULE_SETUP 03374 #line 78 "src/cfgparse.l" 03375 { BEGIN(INITIAL); return TOKWORKSPACE; } 03376 YY_BREAK 03377 case 12: 03378 YY_RULE_SETUP 03379 #line 79 "src/cfgparse.l" 03380 { BEGIN(OUTPUT_COND); return TOKOUTPUT; } 03381 YY_BREAK 03382 case 13: 03383 YY_RULE_SETUP 03384 #line 80 "src/cfgparse.l" 03385 { 03386 /* for compatibility until v3.φ */ 03387 ELOG("Assignments to screens are DEPRECATED and will not work. " \ 03388 "Please replace them with assignments to outputs.\n"); 03389 BEGIN(OUTPUT_COND); 03390 return TOKOUTPUT; 03391 } 03392 YY_BREAK 03393 case 14: 03394 YY_RULE_SETUP 03395 #line 87 "src/cfgparse.l" 03396 { BEGIN(BIND_AWS_COND); return TOKTERMINAL; } 03397 YY_BREAK 03398 case 15: 03399 YY_RULE_SETUP 03400 #line 88 "src/cfgparse.l" 03401 { BEGIN(BIND_AWS_COND); return TOKFONT; } 03402 YY_BREAK 03403 case 16: 03404 YY_RULE_SETUP 03405 #line 89 "src/cfgparse.l" 03406 { BEGIN(ASSIGN_COND); return TOKASSIGN; } 03407 YY_BREAK 03408 case 17: 03409 YY_RULE_SETUP 03410 #line 90 "src/cfgparse.l" 03411 { return TOKCOMMENT; } 03412 YY_BREAK 03413 case 18: 03414 YY_RULE_SETUP 03415 #line 91 "src/cfgparse.l" 03416 { BEGIN(BIND_AWS_COND); return TOKIPCSOCKET; } 03417 YY_BREAK 03418 case 19: 03419 YY_RULE_SETUP 03420 #line 92 "src/cfgparse.l" 03421 { BEGIN(BIND_AWS_COND); return TOKIPCSOCKET; } 03422 YY_BREAK 03423 case 20: 03424 YY_RULE_SETUP 03425 #line 93 "src/cfgparse.l" 03426 { return TOKNEWCONTAINER; } 03427 YY_BREAK 03428 case 21: 03429 YY_RULE_SETUP 03430 #line 94 "src/cfgparse.l" 03431 { return TOKNEWWINDOW; } 03432 YY_BREAK 03433 case 22: 03434 YY_RULE_SETUP 03435 #line 95 "src/cfgparse.l" 03436 { return TOKFOCUSFOLLOWSMOUSE; } 03437 YY_BREAK 03438 case 23: 03439 YY_RULE_SETUP 03440 #line 96 "src/cfgparse.l" 03441 { return TOKWORKSPACEBAR; } 03442 YY_BREAK 03443 case 24: 03444 YY_RULE_SETUP 03445 #line 97 "src/cfgparse.l" 03446 { yylval.number = MODE_DEFAULT; return TOKCONTAINERMODE; } 03447 YY_BREAK 03448 case 25: 03449 YY_RULE_SETUP 03450 #line 98 "src/cfgparse.l" 03451 { yylval.number = MODE_STACK; return TOKCONTAINERMODE; } 03452 YY_BREAK 03453 case 26: 03454 YY_RULE_SETUP 03455 #line 99 "src/cfgparse.l" 03456 { yylval.number = MODE_TABBED; return TOKCONTAINERMODE; } 03457 YY_BREAK 03458 case 27: 03459 YY_RULE_SETUP 03460 #line 100 "src/cfgparse.l" 03461 { return TOKSTACKLIMIT; } 03462 YY_BREAK 03463 case 28: 03464 YY_RULE_SETUP 03465 #line 101 "src/cfgparse.l" 03466 { yylval.number = STACK_LIMIT_COLS; return TOKSTACKLIMIT; } 03467 YY_BREAK 03468 case 29: 03469 YY_RULE_SETUP 03470 #line 102 "src/cfgparse.l" 03471 { yylval.number = STACK_LIMIT_ROWS; return TOKSTACKLIMIT; } 03472 YY_BREAK 03473 case 30: 03474 YY_RULE_SETUP 03475 #line 103 "src/cfgparse.l" 03476 { BEGIN(BIND_AWS_COND); return TOKEXEC; } 03477 YY_BREAK 03478 case 31: 03479 YY_RULE_SETUP 03480 #line 104 "src/cfgparse.l" 03481 { BEGIN(COLOR_COND); yylval.single_color = &config.client.background; return TOKSINGLECOLOR; } 03482 YY_BREAK 03483 case 32: 03484 YY_RULE_SETUP 03485 #line 105 "src/cfgparse.l" 03486 { BEGIN(COLOR_COND); yylval.color = &config.client.focused; return TOKCOLOR; } 03487 YY_BREAK 03488 case 33: 03489 YY_RULE_SETUP 03490 #line 106 "src/cfgparse.l" 03491 { BEGIN(COLOR_COND); yylval.color = &config.client.focused_inactive; return TOKCOLOR; } 03492 YY_BREAK 03493 case 34: 03494 YY_RULE_SETUP 03495 #line 107 "src/cfgparse.l" 03496 { BEGIN(COLOR_COND); yylval.color = &config.client.unfocused; return TOKCOLOR; } 03497 YY_BREAK 03498 case 35: 03499 YY_RULE_SETUP 03500 #line 108 "src/cfgparse.l" 03501 { BEGIN(COLOR_COND); yylval.color = &config.client.urgent; return TOKCOLOR; } 03502 YY_BREAK 03503 case 36: 03504 YY_RULE_SETUP 03505 #line 109 "src/cfgparse.l" 03506 { BEGIN(COLOR_COND); yylval.color = &config.bar.focused; return TOKCOLOR; } 03507 YY_BREAK 03508 case 37: 03509 YY_RULE_SETUP 03510 #line 110 "src/cfgparse.l" 03511 { BEGIN(COLOR_COND); yylval.color = &config.bar.unfocused; return TOKCOLOR; } 03512 YY_BREAK 03513 case 38: 03514 YY_RULE_SETUP 03515 #line 111 "src/cfgparse.l" 03516 { BEGIN(COLOR_COND); yylval.color = &config.bar.urgent; return TOKCOLOR; } 03517 YY_BREAK 03518 case 39: 03519 YY_RULE_SETUP 03520 #line 112 "src/cfgparse.l" 03521 { yylval.number = BIND_MOD1; return MODIFIER; } 03522 YY_BREAK 03523 case 40: 03524 YY_RULE_SETUP 03525 #line 113 "src/cfgparse.l" 03526 { yylval.number = BIND_MOD2; return MODIFIER; } 03527 YY_BREAK 03528 case 41: 03529 YY_RULE_SETUP 03530 #line 114 "src/cfgparse.l" 03531 { yylval.number = BIND_MOD3; return MODIFIER; } 03532 YY_BREAK 03533 case 42: 03534 YY_RULE_SETUP 03535 #line 115 "src/cfgparse.l" 03536 { yylval.number = BIND_MOD4; return MODIFIER; } 03537 YY_BREAK 03538 case 43: 03539 YY_RULE_SETUP 03540 #line 116 "src/cfgparse.l" 03541 { yylval.number = BIND_MOD5; return MODIFIER; } 03542 YY_BREAK 03543 case 44: 03544 YY_RULE_SETUP 03545 #line 117 "src/cfgparse.l" 03546 { yylval.number = BIND_MODE_SWITCH; return MODIFIER; } 03547 YY_BREAK 03548 case 45: 03549 YY_RULE_SETUP 03550 #line 118 "src/cfgparse.l" 03551 { return TOKCONTROL; } 03552 YY_BREAK 03553 case 46: 03554 YY_RULE_SETUP 03555 #line 119 "src/cfgparse.l" 03556 { return TOKCONTROL; } 03557 YY_BREAK 03558 case 47: 03559 YY_RULE_SETUP 03560 #line 120 "src/cfgparse.l" 03561 { return TOKSHIFT; } 03562 YY_BREAK 03563 case 48: 03564 YY_RULE_SETUP 03565 #line 121 "src/cfgparse.l" 03566 { return TOKARROW; } 03567 YY_BREAK 03568 case 49: 03569 /* rule 49 can match eol */ 03570 YY_RULE_SETUP 03571 #line 122 "src/cfgparse.l" 03572 { 03573 FREE(context->line_copy); 03574 context->line_number++; 03575 BEGIN(INITIAL); 03576 yy_push_state(BUFFER_LINE); 03577 } 03578 YY_BREAK 03579 case 50: 03580 YY_RULE_SETUP 03581 #line 128 "src/cfgparse.l" 03582 { BEGIN(BIND_AWS_COND); return WHITESPACE; } 03583 YY_BREAK 03584 case 51: 03585 YY_RULE_SETUP 03586 #line 129 "src/cfgparse.l" 03587 { BEGIN(BINDSYM_AWS_COND); return WHITESPACE; } 03588 YY_BREAK 03589 case 52: 03590 YY_RULE_SETUP 03591 #line 130 "src/cfgparse.l" 03592 { BEGIN(BIND_A2WS_COND); return WHITESPACE; } 03593 YY_BREAK 03594 case 53: 03595 YY_RULE_SETUP 03596 #line 131 "src/cfgparse.l" 03597 { BEGIN(BIND_A2WS_COND); return WHITESPACE; } 03598 YY_BREAK 03599 case 54: 03600 YY_RULE_SETUP 03601 #line 132 "src/cfgparse.l" 03602 { BEGIN(OUTPUT_AWS_COND); return WHITESPACE; } 03603 YY_BREAK 03604 case 55: 03605 YY_RULE_SETUP 03606 #line 133 "src/cfgparse.l" 03607 { BEGIN(BIND_A2WS_COND); return WHITESPACE; } 03608 YY_BREAK 03609 case 56: 03610 YY_RULE_SETUP 03611 #line 134 "src/cfgparse.l" 03612 { return WHITESPACE; } 03613 YY_BREAK 03614 case 57: 03615 /* rule 57 can match eol */ 03616 YY_RULE_SETUP 03617 #line 135 "src/cfgparse.l" 03618 { 03619 /* if ASSIGN_COND then */ 03620 BEGIN(INITIAL); 03621 /* yylval will be the string, but without quotes */ 03622 char *copy = strdup(yytext+1); 03623 copy[strlen(copy)-1] = '\0'; 03624 yylval.string = copy; 03625 return QUOTEDSTRING; 03626 } 03627 YY_BREAK 03628 case 58: 03629 /* rule 58 can match eol */ 03630 YY_RULE_SETUP 03631 #line 144 "src/cfgparse.l" 03632 { BEGIN(INITIAL); yylval.string = strdup(yytext); return STR_NG; } 03633 YY_BREAK 03634 case 59: 03635 YY_RULE_SETUP 03636 #line 145 "src/cfgparse.l" 03637 { yylval.string = strdup(yytext); return WORD; } 03638 YY_BREAK 03639 case 60: 03640 YY_RULE_SETUP 03641 #line 146 "src/cfgparse.l" 03642 { yylval.string = strdup(yytext); return WORD; } 03643 YY_BREAK 03644 case 61: 03645 YY_RULE_SETUP 03646 #line 147 "src/cfgparse.l" 03647 { return (int)yytext[0]; } 03648 YY_BREAK 03649 case YY_STATE_EOF(INITIAL): 03650 case YY_STATE_EOF(BIND_COND): 03651 case YY_STATE_EOF(BINDSYM_COND): 03652 case YY_STATE_EOF(BIND_AWS_COND): 03653 case YY_STATE_EOF(BINDSYM_AWS_COND): 03654 case YY_STATE_EOF(BIND_A2WS_COND): 03655 case YY_STATE_EOF(ASSIGN_COND): 03656 case YY_STATE_EOF(COLOR_COND): 03657 case YY_STATE_EOF(OUTPUT_COND): 03658 case YY_STATE_EOF(OUTPUT_AWS_COND): 03659 case YY_STATE_EOF(BUFFER_LINE): 03660 #line 149 "src/cfgparse.l" 03661 { 03662 while (yy_start_stack_ptr > 0) 03663 yy_pop_state(); 03664 yyterminate(); 03665 } 03666 YY_BREAK 03667 case 62: 03668 YY_RULE_SETUP 03669 #line 155 "src/cfgparse.l" 03670 ECHO; 03671 YY_BREAK 03672 #line 3673 "src/cfgparse.yy.c" 03673 03674 case YY_END_OF_BUFFER: 03675 { 03676 /* Amount of text matched not including the EOB char. */ 03677 int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; 03678 03679 /* Undo the effects of YY_DO_BEFORE_ACTION. */ 03680 *yy_cp = (yy_hold_char); 03681 YY_RESTORE_YY_MORE_OFFSET 03682 03683 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) 03684 { 03685 /* We're scanning a new file or input source. It's 03686 * possible that this happened because the user 03687 * just pointed yyin at a new source and called 03688 * yylex(). If so, then we have to assure 03689 * consistency between YY_CURRENT_BUFFER and our 03690 * globals. Here is the right place to do so, because 03691 * this is the first action (other than possibly a 03692 * back-up) that will match for the new input source. 03693 */ 03694 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; 03695 YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin; 03696 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; 03697 } 03698 03699 /* Note that here we test for yy_c_buf_p "<=" to the position 03700 * of the first EOB in the buffer, since yy_c_buf_p will 03701 * already have been incremented past the NUL character 03702 * (since all states make transitions on EOB to the 03703 * end-of-buffer state). Contrast this with the test 03704 * in input(). 03705 */ 03706 if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) 03707 { /* This was really a NUL. */ 03708 yy_state_type yy_next_state; 03709 03710 (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; 03711 03712 yy_current_state = yy_get_previous_state( ); 03713 03714 /* Okay, we're now positioned to make the NUL 03715 * transition. We couldn't have 03716 * yy_get_previous_state() go ahead and do it 03717 * for us because it doesn't know how to deal 03718 * with the possibility of jamming (and we don't 03719 * want to build jamming into it because then it 03720 * will run more slowly). 03721 */ 03722 03723 yy_next_state = yy_try_NUL_trans( yy_current_state ); 03724 03725 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 03726 03727 if ( yy_next_state ) 03728 { 03729 /* Consume the NUL. */ 03730 yy_cp = ++(yy_c_buf_p); 03731 yy_current_state = yy_next_state; 03732 goto yy_match; 03733 } 03734 03735 else 03736 { 03737 yy_cp = (yy_c_buf_p); 03738 goto yy_find_action; 03739 } 03740 } 03741 03742 else switch ( yy_get_next_buffer( ) ) 03743 { 03744 case EOB_ACT_END_OF_FILE: 03745 { 03746 (yy_did_buffer_switch_on_eof) = 0; 03747 03748 if ( yywrap( ) ) 03749 { 03750 /* Note: because we've taken care in 03751 * yy_get_next_buffer() to have set up 03752 * yytext, we can now set up 03753 * yy_c_buf_p so that if some total 03754 * hoser (like flex itself) wants to 03755 * call the scanner after we return the 03756 * YY_NULL, it'll still work - another 03757 * YY_NULL will get returned. 03758 */ 03759 (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; 03760 03761 yy_act = YY_STATE_EOF(YY_START); 03762 goto do_action; 03763 } 03764 03765 else 03766 { 03767 if ( ! (yy_did_buffer_switch_on_eof) ) 03768 YY_NEW_FILE; 03769 } 03770 break; 03771 } 03772 03773 case EOB_ACT_CONTINUE_SCAN: 03774 (yy_c_buf_p) = 03775 (yytext_ptr) + yy_amount_of_matched_text; 03776 03777 yy_current_state = yy_get_previous_state( ); 03778 03779 yy_cp = (yy_c_buf_p); 03780 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 03781 goto yy_match; 03782 03783 case EOB_ACT_LAST_MATCH: 03784 (yy_c_buf_p) = 03785 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; 03786 03787 yy_current_state = yy_get_previous_state( ); 03788 03789 yy_cp = (yy_c_buf_p); 03790 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 03791 goto yy_find_action; 03792 } 03793 break; 03794 } 03795 03796 default: 03797 YY_FATAL_ERROR( 03798 "fatal flex scanner internal error--no action found" ); 03799 } /* end of action switch */ 03800 } /* end of scanning one token */ 03801 } /* end of yylex */ 03802 03803 /* yy_get_next_buffer - try to read in a new buffer 03804 * 03805 * Returns a code representing an action: 03806 * EOB_ACT_LAST_MATCH - 03807 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position 03808 * EOB_ACT_END_OF_FILE - end of file 03809 */ 03810 static int yy_get_next_buffer (void) 03811 { 03812 register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; 03813 register char *source = (yytext_ptr); 03814 register int number_to_move, i; 03815 int ret_val; 03816 03817 if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) 03818 YY_FATAL_ERROR( 03819 "fatal flex scanner internal error--end of buffer missed" ); 03820 03821 if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) 03822 { /* Don't try to fill the buffer, so this is an EOF. */ 03823 if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) 03824 { 03825 /* We matched a single character, the EOB, so 03826 * treat this as a final EOF. 03827 */ 03828 return EOB_ACT_END_OF_FILE; 03829 } 03830 03831 else 03832 { 03833 /* We matched some text prior to the EOB, first 03834 * process it. 03835 */ 03836 return EOB_ACT_LAST_MATCH; 03837 } 03838 } 03839 03840 /* Try to read more data. */ 03841 03842 /* First move last chars to start of buffer. */ 03843 number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1; 03844 03845 for ( i = 0; i < number_to_move; ++i ) 03846 *(dest++) = *(source++); 03847 03848 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) 03849 /* don't do the read, it's not guaranteed to return an EOF, 03850 * just force an EOF 03851 */ 03852 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; 03853 03854 else 03855 { 03856 int num_to_read = 03857 YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; 03858 03859 while ( num_to_read <= 0 ) 03860 { /* Not enough room in the buffer - grow it. */ 03861 03862 YY_FATAL_ERROR( 03863 "input buffer overflow, can't enlarge buffer because scanner uses REJECT" ); 03864 03865 } 03866 03867 if ( num_to_read > YY_READ_BUF_SIZE ) 03868 num_to_read = YY_READ_BUF_SIZE; 03869 03870 /* Read in more data. */ 03871 YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), 03872 (yy_n_chars), (size_t) num_to_read ); 03873 03874 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 03875 } 03876 03877 if ( (yy_n_chars) == 0 ) 03878 { 03879 if ( number_to_move == YY_MORE_ADJ ) 03880 { 03881 ret_val = EOB_ACT_END_OF_FILE; 03882 yyrestart(yyin ); 03883 } 03884 03885 else 03886 { 03887 ret_val = EOB_ACT_LAST_MATCH; 03888 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = 03889 YY_BUFFER_EOF_PENDING; 03890 } 03891 } 03892 03893 else 03894 ret_val = EOB_ACT_CONTINUE_SCAN; 03895 03896 if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { 03897 /* Extend the array by 50%, plus the number we really need. */ 03898 yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); 03899 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ); 03900 if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) 03901 YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); 03902 } 03903 03904 (yy_n_chars) += number_to_move; 03905 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; 03906 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; 03907 03908 (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; 03909 03910 return ret_val; 03911 } 03912 03913 /* yy_get_previous_state - get the state just before the EOB char was reached */ 03914 03915 static yy_state_type yy_get_previous_state (void) 03916 { 03917 register yy_state_type yy_current_state; 03918 register char *yy_cp; 03919 03920 yy_current_state = (yy_start); 03921 yy_current_state += YY_AT_BOL(); 03922 03923 (yy_state_ptr) = (yy_state_buf); 03924 *(yy_state_ptr)++ = yy_current_state; 03925 03926 for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) 03927 { 03928 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); 03929 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 03930 { 03931 yy_current_state = (int) yy_def[yy_current_state]; 03932 if ( yy_current_state >= 1687 ) 03933 yy_c = yy_meta[(unsigned int) yy_c]; 03934 } 03935 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; 03936 *(yy_state_ptr)++ = yy_current_state; 03937 } 03938 03939 return yy_current_state; 03940 } 03941 03942 /* yy_try_NUL_trans - try to make a transition on the NUL character 03943 * 03944 * synopsis 03945 * next_state = yy_try_NUL_trans( current_state ); 03946 */ 03947 static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state ) 03948 { 03949 register int yy_is_jam; 03950 03951 register YY_CHAR yy_c = 1; 03952 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 03953 { 03954 yy_current_state = (int) yy_def[yy_current_state]; 03955 if ( yy_current_state >= 1687 ) 03956 yy_c = yy_meta[(unsigned int) yy_c]; 03957 } 03958 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; 03959 yy_is_jam = (yy_current_state == 1686); 03960 if ( ! yy_is_jam ) 03961 *(yy_state_ptr)++ = yy_current_state; 03962 03963 return yy_is_jam ? 0 : yy_current_state; 03964 } 03965 03966 #ifndef YY_NO_INPUT 03967 #ifdef __cplusplus 03968 static int yyinput (void) 03969 #else 03970 static int input (void) 03971 #endif 03972 03973 { 03974 int c; 03975 03976 *(yy_c_buf_p) = (yy_hold_char); 03977 03978 if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) 03979 { 03980 /* yy_c_buf_p now points to the character we want to return. 03981 * If this occurs *before* the EOB characters, then it's a 03982 * valid NUL; if not, then we've hit the end of the buffer. 03983 */ 03984 if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) 03985 /* This was really a NUL. */ 03986 *(yy_c_buf_p) = '\0'; 03987 03988 else 03989 { /* need more input */ 03990 int offset = (yy_c_buf_p) - (yytext_ptr); 03991 ++(yy_c_buf_p); 03992 03993 switch ( yy_get_next_buffer( ) ) 03994 { 03995 case EOB_ACT_LAST_MATCH: 03996 /* This happens because yy_g_n_b() 03997 * sees that we've accumulated a 03998 * token and flags that we need to 03999 * try matching the token before 04000 * proceeding. But for input(), 04001 * there's no matching to consider. 04002 * So convert the EOB_ACT_LAST_MATCH 04003 * to EOB_ACT_END_OF_FILE. 04004 */ 04005 04006 /* Reset buffer status. */ 04007 yyrestart(yyin ); 04008 04009 /*FALLTHROUGH*/ 04010 04011 case EOB_ACT_END_OF_FILE: 04012 { 04013 if ( yywrap( ) ) 04014 return EOF; 04015 04016 if ( ! (yy_did_buffer_switch_on_eof) ) 04017 YY_NEW_FILE; 04018 #ifdef __cplusplus 04019 return yyinput(); 04020 #else 04021 return input(); 04022 #endif 04023 } 04024 04025 case EOB_ACT_CONTINUE_SCAN: 04026 (yy_c_buf_p) = (yytext_ptr) + offset; 04027 break; 04028 } 04029 } 04030 } 04031 04032 c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */ 04033 *(yy_c_buf_p) = '\0'; /* preserve yytext */ 04034 (yy_hold_char) = *++(yy_c_buf_p); 04035 04036 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = (c == '\n'); 04037 04038 return c; 04039 } 04040 #endif /* ifndef YY_NO_INPUT */ 04041 04047 void yyrestart (FILE * input_file ) 04048 { 04049 04050 if ( ! YY_CURRENT_BUFFER ){ 04051 yyensure_buffer_stack (); 04052 YY_CURRENT_BUFFER_LVALUE = 04053 yy_create_buffer(yyin,YY_BUF_SIZE ); 04054 } 04055 04056 yy_init_buffer(YY_CURRENT_BUFFER,input_file ); 04057 yy_load_buffer_state( ); 04058 } 04059 04064 void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ) 04065 { 04066 04067 /* TODO. We should be able to replace this entire function body 04068 * with 04069 * yypop_buffer_state(); 04070 * yypush_buffer_state(new_buffer); 04071 */ 04072 yyensure_buffer_stack (); 04073 if ( YY_CURRENT_BUFFER == new_buffer ) 04074 return; 04075 04076 if ( YY_CURRENT_BUFFER ) 04077 { 04078 /* Flush out information for old buffer. */ 04079 *(yy_c_buf_p) = (yy_hold_char); 04080 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); 04081 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 04082 } 04083 04084 YY_CURRENT_BUFFER_LVALUE = new_buffer; 04085 yy_load_buffer_state( ); 04086 04087 /* We don't actually know whether we did this switch during 04088 * EOF (yywrap()) processing, but the only time this flag 04089 * is looked at is after yywrap() is called, so it's safe 04090 * to go ahead and always set it. 04091 */ 04092 (yy_did_buffer_switch_on_eof) = 1; 04093 } 04094 04095 static void yy_load_buffer_state (void) 04096 { 04097 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; 04098 (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; 04099 yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; 04100 (yy_hold_char) = *(yy_c_buf_p); 04101 } 04102 04109 YY_BUFFER_STATE yy_create_buffer (FILE * file, int size ) 04110 { 04111 YY_BUFFER_STATE b; 04112 04113 b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); 04114 if ( ! b ) 04115 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); 04116 04117 b->yy_buf_size = size; 04118 04119 /* yy_ch_buf has to be 2 characters longer than the size given because 04120 * we need to put in 2 end-of-buffer characters. 04121 */ 04122 b->yy_ch_buf = (char *) yyalloc(b->yy_buf_size + 2 ); 04123 if ( ! b->yy_ch_buf ) 04124 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); 04125 04126 b->yy_is_our_buffer = 1; 04127 04128 yy_init_buffer(b,file ); 04129 04130 return b; 04131 } 04132 04137 void yy_delete_buffer (YY_BUFFER_STATE b ) 04138 { 04139 04140 if ( ! b ) 04141 return; 04142 04143 if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ 04144 YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; 04145 04146 if ( b->yy_is_our_buffer ) 04147 yyfree((void *) b->yy_ch_buf ); 04148 04149 yyfree((void *) b ); 04150 } 04151 04152 #ifndef __cplusplus 04153 extern int isatty (int ); 04154 #endif /* __cplusplus */ 04155 04156 /* Initializes or reinitializes a buffer. 04157 * This function is sometimes called more than once on the same buffer, 04158 * such as during a yyrestart() or at EOF. 04159 */ 04160 static void yy_init_buffer (YY_BUFFER_STATE b, FILE * file ) 04161 04162 { 04163 int oerrno = errno; 04164 04165 yy_flush_buffer(b ); 04166 04167 b->yy_input_file = file; 04168 b->yy_fill_buffer = 1; 04169 04170 /* If b is the current buffer, then yy_init_buffer was _probably_ 04171 * called from yyrestart() or through yy_get_next_buffer. 04172 * In that case, we don't want to reset the lineno or column. 04173 */ 04174 if (b != YY_CURRENT_BUFFER){ 04175 b->yy_bs_lineno = 1; 04176 b->yy_bs_column = 0; 04177 } 04178 04179 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0; 04180 04181 errno = oerrno; 04182 } 04183 04188 void yy_flush_buffer (YY_BUFFER_STATE b ) 04189 { 04190 if ( ! b ) 04191 return; 04192 04193 b->yy_n_chars = 0; 04194 04195 /* We always need two end-of-buffer characters. The first causes 04196 * a transition to the end-of-buffer state. The second causes 04197 * a jam in that state. 04198 */ 04199 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR; 04200 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR; 04201 04202 b->yy_buf_pos = &b->yy_ch_buf[0]; 04203 04204 b->yy_at_bol = 1; 04205 b->yy_buffer_status = YY_BUFFER_NEW; 04206 04207 if ( b == YY_CURRENT_BUFFER ) 04208 yy_load_buffer_state( ); 04209 } 04210 04217 void yypush_buffer_state (YY_BUFFER_STATE new_buffer ) 04218 { 04219 if (new_buffer == NULL) 04220 return; 04221 04222 yyensure_buffer_stack(); 04223 04224 /* This block is copied from yy_switch_to_buffer. */ 04225 if ( YY_CURRENT_BUFFER ) 04226 { 04227 /* Flush out information for old buffer. */ 04228 *(yy_c_buf_p) = (yy_hold_char); 04229 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); 04230 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 04231 } 04232 04233 /* Only push if top exists. Otherwise, replace top. */ 04234 if (YY_CURRENT_BUFFER) 04235 (yy_buffer_stack_top)++; 04236 YY_CURRENT_BUFFER_LVALUE = new_buffer; 04237 04238 /* copied from yy_switch_to_buffer. */ 04239 yy_load_buffer_state( ); 04240 (yy_did_buffer_switch_on_eof) = 1; 04241 } 04242 04247 void yypop_buffer_state (void) 04248 { 04249 if (!YY_CURRENT_BUFFER) 04250 return; 04251 04252 yy_delete_buffer(YY_CURRENT_BUFFER ); 04253 YY_CURRENT_BUFFER_LVALUE = NULL; 04254 if ((yy_buffer_stack_top) > 0) 04255 --(yy_buffer_stack_top); 04256 04257 if (YY_CURRENT_BUFFER) { 04258 yy_load_buffer_state( ); 04259 (yy_did_buffer_switch_on_eof) = 1; 04260 } 04261 } 04262 04263 /* Allocates the stack if it does not exist. 04264 * Guarantees space for at least one push. 04265 */ 04266 static void yyensure_buffer_stack (void) 04267 { 04268 int num_to_alloc; 04269 04270 if (!(yy_buffer_stack)) { 04271 04272 /* First allocation is just for 2 elements, since we don't know if this 04273 * scanner will even need a stack. We use 2 instead of 1 to avoid an 04274 * immediate realloc on the next call. 04275 */ 04276 num_to_alloc = 1; 04277 (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc 04278 (num_to_alloc * sizeof(struct yy_buffer_state*) 04279 ); 04280 if ( ! (yy_buffer_stack) ) 04281 YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); 04282 04283 memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); 04284 04285 (yy_buffer_stack_max) = num_to_alloc; 04286 (yy_buffer_stack_top) = 0; 04287 return; 04288 } 04289 04290 if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ 04291 04292 /* Increase the buffer to prepare for a possible push. */ 04293 int grow_size = 8 /* arbitrary grow size */; 04294 04295 num_to_alloc = (yy_buffer_stack_max) + grow_size; 04296 (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc 04297 ((yy_buffer_stack), 04298 num_to_alloc * sizeof(struct yy_buffer_state*) 04299 ); 04300 if ( ! (yy_buffer_stack) ) 04301 YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); 04302 04303 /* zero only the new slots.*/ 04304 memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); 04305 (yy_buffer_stack_max) = num_to_alloc; 04306 } 04307 } 04308 04315 YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) 04316 { 04317 YY_BUFFER_STATE b; 04318 04319 if ( size < 2 || 04320 base[size-2] != YY_END_OF_BUFFER_CHAR || 04321 base[size-1] != YY_END_OF_BUFFER_CHAR ) 04322 /* They forgot to leave room for the EOB's. */ 04323 return 0; 04324 04325 b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); 04326 if ( ! b ) 04327 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" ); 04328 04329 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */ 04330 b->yy_buf_pos = b->yy_ch_buf = base; 04331 b->yy_is_our_buffer = 0; 04332 b->yy_input_file = 0; 04333 b->yy_n_chars = b->yy_buf_size; 04334 b->yy_is_interactive = 0; 04335 b->yy_at_bol = 1; 04336 b->yy_fill_buffer = 0; 04337 b->yy_buffer_status = YY_BUFFER_NEW; 04338 04339 yy_switch_to_buffer(b ); 04340 04341 return b; 04342 } 04343 04352 YY_BUFFER_STATE yy_scan_string (yyconst char * yystr ) 04353 { 04354 04355 return yy_scan_bytes(yystr,strlen(yystr) ); 04356 } 04357 04365 YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, int _yybytes_len ) 04366 { 04367 YY_BUFFER_STATE b; 04368 char *buf; 04369 yy_size_t n; 04370 int i; 04371 04372 /* Get memory for full buffer, including space for trailing EOB's. */ 04373 n = _yybytes_len + 2; 04374 buf = (char *) yyalloc(n ); 04375 if ( ! buf ) 04376 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" ); 04377 04378 for ( i = 0; i < _yybytes_len; ++i ) 04379 buf[i] = yybytes[i]; 04380 04381 buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; 04382 04383 b = yy_scan_buffer(buf,n ); 04384 if ( ! b ) 04385 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" ); 04386 04387 /* It's okay to grow etc. this buffer, and we should throw it 04388 * away when we're done. 04389 */ 04390 b->yy_is_our_buffer = 1; 04391 04392 return b; 04393 } 04394 04395 static void yy_push_state (int new_state ) 04396 { 04397 if ( (yy_start_stack_ptr) >= (yy_start_stack_depth) ) 04398 { 04399 yy_size_t new_size; 04400 04401 (yy_start_stack_depth) += YY_START_STACK_INCR; 04402 new_size = (yy_start_stack_depth) * sizeof( int ); 04403 04404 if ( ! (yy_start_stack) ) 04405 (yy_start_stack) = (int *) yyalloc(new_size ); 04406 04407 else 04408 (yy_start_stack) = (int *) yyrealloc((void *) (yy_start_stack),new_size ); 04409 04410 if ( ! (yy_start_stack) ) 04411 YY_FATAL_ERROR( "out of memory expanding start-condition stack" ); 04412 } 04413 04414 (yy_start_stack)[(yy_start_stack_ptr)++] = YY_START; 04415 04416 BEGIN(new_state); 04417 } 04418 04419 static void yy_pop_state (void) 04420 { 04421 if ( --(yy_start_stack_ptr) < 0 ) 04422 YY_FATAL_ERROR( "start-condition stack underflow" ); 04423 04424 BEGIN((yy_start_stack)[(yy_start_stack_ptr)]); 04425 } 04426 04427 #ifndef YY_EXIT_FAILURE 04428 #define YY_EXIT_FAILURE 2 04429 #endif 04430 04431 static void yy_fatal_error (yyconst char* msg ) 04432 { 04433 (void) fprintf( stderr, "%s\n", msg ); 04434 exit( YY_EXIT_FAILURE ); 04435 } 04436 04437 /* Redefine yyless() so it works in section 3 code. */ 04438 04439 #undef yyless 04440 #define yyless(n) \ 04441 do \ 04442 { \ 04443 /* Undo effects of setting up yytext. */ \ 04444 int yyless_macro_arg = (n); \ 04445 YY_LESS_LINENO(yyless_macro_arg);\ 04446 yytext[yyleng] = (yy_hold_char); \ 04447 (yy_c_buf_p) = yytext + yyless_macro_arg; \ 04448 (yy_hold_char) = *(yy_c_buf_p); \ 04449 *(yy_c_buf_p) = '\0'; \ 04450 yyleng = yyless_macro_arg; \ 04451 } \ 04452 while ( 0 ) 04453 04454 /* Accessor methods (get/set functions) to struct members. */ 04455 04459 int yyget_lineno (void) 04460 { 04461 04462 return yylineno; 04463 } 04464 04468 FILE *yyget_in (void) 04469 { 04470 return yyin; 04471 } 04472 04476 FILE *yyget_out (void) 04477 { 04478 return yyout; 04479 } 04480 04484 int yyget_leng (void) 04485 { 04486 return yyleng; 04487 } 04488 04493 char *yyget_text (void) 04494 { 04495 return yytext; 04496 } 04497 04502 void yyset_lineno (int line_number ) 04503 { 04504 04505 yylineno = line_number; 04506 } 04507 04514 void yyset_in (FILE * in_str ) 04515 { 04516 yyin = in_str ; 04517 } 04518 04519 void yyset_out (FILE * out_str ) 04520 { 04521 yyout = out_str ; 04522 } 04523 04524 int yyget_debug (void) 04525 { 04526 return yy_flex_debug; 04527 } 04528 04529 void yyset_debug (int bdebug ) 04530 { 04531 yy_flex_debug = bdebug ; 04532 } 04533 04534 static int yy_init_globals (void) 04535 { 04536 /* Initialization is the same as for the non-reentrant scanner. 04537 * This function is called from yylex_destroy(), so don't allocate here. 04538 */ 04539 04540 (yy_buffer_stack) = 0; 04541 (yy_buffer_stack_top) = 0; 04542 (yy_buffer_stack_max) = 0; 04543 (yy_c_buf_p) = (char *) 0; 04544 (yy_init) = 0; 04545 (yy_start) = 0; 04546 04547 (yy_start_stack_ptr) = 0; 04548 (yy_start_stack_depth) = 0; 04549 (yy_start_stack) = NULL; 04550 04551 (yy_state_buf) = 0; 04552 (yy_state_ptr) = 0; 04553 (yy_full_match) = 0; 04554 (yy_lp) = 0; 04555 04556 /* Defined in main.c */ 04557 #ifdef YY_STDINIT 04558 yyin = stdin; 04559 yyout = stdout; 04560 #else 04561 yyin = (FILE *) 0; 04562 yyout = (FILE *) 0; 04563 #endif 04564 04565 /* For future reference: Set errno on error, since we are called by 04566 * yylex_init() 04567 */ 04568 return 0; 04569 } 04570 04571 /* yylex_destroy is for both reentrant and non-reentrant scanners. */ 04572 int yylex_destroy (void) 04573 { 04574 04575 /* Pop the buffer stack, destroying each element. */ 04576 while(YY_CURRENT_BUFFER){ 04577 yy_delete_buffer(YY_CURRENT_BUFFER ); 04578 YY_CURRENT_BUFFER_LVALUE = NULL; 04579 yypop_buffer_state(); 04580 } 04581 04582 /* Destroy the stack itself. */ 04583 yyfree((yy_buffer_stack) ); 04584 (yy_buffer_stack) = NULL; 04585 04586 /* Destroy the start condition stack. */ 04587 yyfree((yy_start_stack) ); 04588 (yy_start_stack) = NULL; 04589 04590 yyfree ( (yy_state_buf) ); 04591 (yy_state_buf) = NULL; 04592 04593 /* Reset the globals. This is important in a non-reentrant scanner so the next time 04594 * yylex() is called, initialization will occur. */ 04595 yy_init_globals( ); 04596 04597 return 0; 04598 } 04599 04600 /* 04601 * Internal utility routines. 04602 */ 04603 04604 #ifndef yytext_ptr 04605 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) 04606 { 04607 register int i; 04608 for ( i = 0; i < n; ++i ) 04609 s1[i] = s2[i]; 04610 } 04611 #endif 04612 04613 #ifdef YY_NEED_STRLEN 04614 static int yy_flex_strlen (yyconst char * s ) 04615 { 04616 register int n; 04617 for ( n = 0; s[n]; ++n ) 04618 ; 04619 04620 return n; 04621 } 04622 #endif 04623 04624 void *yyalloc (yy_size_t size ) 04625 { 04626 return (void *) malloc( size ); 04627 } 04628 04629 void *yyrealloc (void * ptr, yy_size_t size ) 04630 { 04631 /* The cast to (char *) in the following accommodates both 04632 * implementations that use char* generic pointers, and those 04633 * that use void* generic pointers. It works with the latter 04634 * because both ANSI C and C++ allow castless assignment from 04635 * any pointer type to void*, and deal with argument conversions 04636 * as though doing an assignment. 04637 */ 04638 return (void *) realloc( (char *) ptr, size ); 04639 } 04640 04641 void yyfree (void * ptr ) 04642 { 04643 free( (char *) ptr ); /* see yyrealloc() for (char *) cast */ 04644 } 04645 04646 #define YYTABLES_NAME "yytables" 04647 04648 #line 155 "src/cfgparse.l" 04649 04650 04651