Changeset 2715 for trunk/NEMOGCM/EXTERNAL/AGRIF/LIB/fortran.yy.c
- Timestamp:
- 2011-03-30T17:58:35+02:00 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMOGCM/EXTERNAL/AGRIF/LIB/fortran.yy.c
r2528 r2715 1 #line 2 "fortran.yy.c" 2 3 #line 4 "fortran.yy.c" 4 5 #define YY_INT_ALIGNED short int 6 7 /* A lexical scanner generated by flex */ 8 1 9 #define yy_create_buffer fortran_create_buffer 2 10 #define yy_delete_buffer fortran_delete_buffer 3 #define yy_scan_buffer fortran_scan_buffer4 #define yy_scan_string fortran_scan_string5 #define yy_scan_bytes fortran_scan_bytes6 11 #define yy_flex_debug fortran_flex_debug 7 12 #define yy_init_buffer fortran_init_buffer … … 12 17 #define yyleng fortranleng 13 18 #define yylex fortranlex 19 #define yylineno fortranlineno 14 20 #define yyout fortranout 15 21 #define yyrestart fortranrestart 16 22 #define yytext fortrantext 17 23 #define yywrap fortranwrap 18 19 #line 20 "fortran.yy.c" 20 /* A lexical scanner generated by flex */ 21 22 /* Scanner skeleton version: 23 * $Header: /home/daffy/u0/vern/flex/RCS/flex.skl,v 2.91 96/09/10 16:58:48 vern Exp $ 24 */ 24 #define yyalloc fortranalloc 25 #define yyrealloc fortranrealloc 26 #define yyfree fortranfree 25 27 26 28 #define FLEX_SCANNER 27 29 #define YY_FLEX_MAJOR_VERSION 2 28 30 #define YY_FLEX_MINOR_VERSION 5 29 31 #define YY_FLEX_SUBMINOR_VERSION 35 32 #if YY_FLEX_SUBMINOR_VERSION > 0 33 #define FLEX_BETA 34 #endif 35 36 /* First, we deal with platform-specific or compiler-specific issues. */ 37 38 /* begin standard C headers. */ 30 39 #include <stdio.h> 31 32 33 /* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */ 34 #ifdef c_plusplus 35 #ifndef __cplusplus 36 #define __cplusplus 40 #include <string.h> 41 #include <errno.h> 42 #include <stdlib.h> 43 44 /* end standard C headers. */ 45 46 /* flex integer type definitions */ 47 48 #ifndef FLEXINT_H 49 #define FLEXINT_H 50 51 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */ 52 53 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L 54 55 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, 56 * if you want the limit (max/min) macros for int types. 57 */ 58 #ifndef __STDC_LIMIT_MACROS 59 #define __STDC_LIMIT_MACROS 1 37 60 #endif 61 62 #include <inttypes.h> 63 typedef int8_t flex_int8_t; 64 typedef uint8_t flex_uint8_t; 65 typedef int16_t flex_int16_t; 66 typedef uint16_t flex_uint16_t; 67 typedef int32_t flex_int32_t; 68 typedef uint32_t flex_uint32_t; 69 #else 70 typedef signed char flex_int8_t; 71 typedef short int flex_int16_t; 72 typedef int flex_int32_t; 73 typedef unsigned char flex_uint8_t; 74 typedef unsigned short int flex_uint16_t; 75 typedef unsigned int flex_uint32_t; 76 #endif /* ! C99 */ 77 78 /* Limits of integral types. */ 79 #ifndef INT8_MIN 80 #define INT8_MIN (-128) 38 81 #endif 39 82 #ifndef INT16_MIN 83 #define INT16_MIN (-32767-1) 84 #endif 85 #ifndef INT32_MIN 86 #define INT32_MIN (-2147483647-1) 87 #endif 88 #ifndef INT8_MAX 89 #define INT8_MAX (127) 90 #endif 91 #ifndef INT16_MAX 92 #define INT16_MAX (32767) 93 #endif 94 #ifndef INT32_MAX 95 #define INT32_MAX (2147483647) 96 #endif 97 #ifndef UINT8_MAX 98 #define UINT8_MAX (255U) 99 #endif 100 #ifndef UINT16_MAX 101 #define UINT16_MAX (65535U) 102 #endif 103 #ifndef UINT32_MAX 104 #define UINT32_MAX (4294967295U) 105 #endif 106 107 #endif /* ! FLEXINT_H */ 40 108 41 109 #ifdef __cplusplus 42 43 #include <stdlib.h>44 #include <unistd.h>45 46 /* Use prototypes in function declarations. */47 #define YY_USE_PROTOS48 110 49 111 /* The "const" storage-class-modifier is valid. */ … … 52 114 #else /* ! __cplusplus */ 53 115 54 #if __STDC__ 55 56 #define YY_USE_PROTOS 116 /* C99 requires __STDC__ to be defined as 1. */ 117 #if defined (__STDC__) 118 57 119 #define YY_USE_CONST 58 120 59 #endif /* __STDC__*/121 #endif /* defined (__STDC__) */ 60 122 #endif /* ! __cplusplus */ 61 62 #ifdef __TURBOC__63 #pragma warn -rch64 #pragma warn -use65 #include <io.h>66 #include <stdlib.h>67 #define YY_USE_CONST68 #define YY_USE_PROTOS69 #endif70 123 71 124 #ifdef YY_USE_CONST … … 73 126 #else 74 127 #define yyconst 75 #endif76 77 78 #ifdef YY_USE_PROTOS79 #define YY_PROTO(proto) proto80 #else81 #define YY_PROTO(proto) ()82 128 #endif 83 129 … … 96 142 * definition of BEGIN. 97 143 */ 98 #define BEGIN yy_start= 1 + 2 *144 #define BEGIN (yy_start) = 1 + 2 * 99 145 100 146 /* Translate the current start state into a value that can be later handed … … 102 148 * compatibility. 103 149 */ 104 #define YY_START (( yy_start- 1) / 2)150 #define YY_START (((yy_start) - 1) / 2) 105 151 #define YYSTATE YY_START 106 152 … … 109 155 110 156 /* Special action meaning "start processing a new file". */ 111 #define YY_NEW_FILE yyrestart( yyin)157 #define YY_NEW_FILE fortranrestart(fortranin ) 112 158 113 159 #define YY_END_OF_BUFFER_CHAR 0 114 160 115 161 /* Size of default input buffer. */ 162 #ifndef YY_BUF_SIZE 116 163 #define YY_BUF_SIZE 16384 117 164 #endif 165 166 /* The state buf must be large enough to hold one state per character in the main buffer. 167 */ 168 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) 169 170 #ifndef YY_TYPEDEF_YY_BUFFER_STATE 171 #define YY_TYPEDEF_YY_BUFFER_STATE 118 172 typedef struct yy_buffer_state *YY_BUFFER_STATE; 119 120 extern int yyleng; 121 extern FILE *yyin, *yyout; 173 #endif 174 175 #ifndef YY_TYPEDEF_YY_SIZE_T 176 #define YY_TYPEDEF_YY_SIZE_T 177 typedef size_t yy_size_t; 178 #endif 179 180 extern yy_size_t fortranleng; 181 182 extern FILE *fortranin, *fortranout; 122 183 123 184 #define EOB_ACT_CONTINUE_SCAN 0 … … 125 186 #define EOB_ACT_LAST_MATCH 2 126 187 127 /* The funky do-while in the following #define is used to turn the definition 128 * int a single C statement (which needs a semi-colon terminator). This 129 * avoids problems with code like: 130 * 131 * if ( condition_holds ) 132 * yyless( 5 ); 133 * else 134 * do_something_else(); 135 * 136 * Prior to using the do-while the compiler would get upset at the 137 * "else" because it interpreted the "if" statement as being all 138 * done when it reached the ';' after the yyless() call. 139 */ 140 141 /* Return all but the first 'n' matched characters back to the input stream. */ 142 188 #define YY_LESS_LINENO(n) 189 190 /* Return all but the first "n" matched characters back to the input stream. */ 143 191 #define yyless(n) \ 144 192 do \ 145 193 { \ 146 /* Undo effects of setting up yytext. */ \ 147 *yy_cp = yy_hold_char; \ 194 /* Undo effects of setting up fortrantext. */ \ 195 int yyless_macro_arg = (n); \ 196 YY_LESS_LINENO(yyless_macro_arg);\ 197 *yy_cp = (yy_hold_char); \ 148 198 YY_RESTORE_YY_MORE_OFFSET \ 149 yy_c_buf_p = yy_cp = yy_bp + n- YY_MORE_ADJ; \150 YY_DO_BEFORE_ACTION; /* set up yytext again */ \199 (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ 200 YY_DO_BEFORE_ACTION; /* set up fortrantext again */ \ 151 201 } \ 152 202 while ( 0 ) 153 203 154 #define unput(c) yyunput( c, yytext_ptr ) 155 156 /* The following is because we cannot portably get our hands on size_t 157 * (without autoconf's help, which isn't available because we want 158 * flex-generated scanners to compile on their own). 159 */ 160 typedef unsigned int yy_size_t; 161 162 204 #define unput(c) yyunput( c, (yytext_ptr) ) 205 206 #ifndef YY_STRUCT_YY_BUFFER_STATE 207 #define YY_STRUCT_YY_BUFFER_STATE 163 208 struct yy_buffer_state 164 209 { … … 176 221 * characters. 177 222 */ 178 int yy_n_chars;223 yy_size_t yy_n_chars; 179 224 180 225 /* Whether we "own" the buffer - i.e., we know we created it, … … 197 242 int yy_at_bol; 198 243 244 int yy_bs_lineno; /**< The line count. */ 245 int yy_bs_column; /**< The column count. */ 246 199 247 /* Whether to try to fill the input buffer when we reach the 200 248 * end of it. … … 203 251 204 252 int yy_buffer_status; 253 205 254 #define YY_BUFFER_NEW 0 206 255 #define YY_BUFFER_NORMAL 1 … … 212 261 * 213 262 * When we actually see the EOF, we change the status to "new" 214 * (via yyrestart()), so that the user can continue scanning by215 * just pointing yyin at a new input file.263 * (via fortranrestart()), so that the user can continue scanning by 264 * just pointing fortranin at a new input file. 216 265 */ 217 266 #define YY_BUFFER_EOF_PENDING 2 267 218 268 }; 219 220 static YY_BUFFER_STATE yy_current_buffer = 0; 269 #endif /* !YY_STRUCT_YY_BUFFER_STATE */ 270 271 /* Stack of input buffers. */ 272 static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */ 273 static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */ 274 static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ 221 275 222 276 /* We provide macros for accessing buffer states in case in the 223 277 * future we want to put the buffer states in a more general 224 278 * "scanner state". 279 * 280 * Returns the top of the stack, or NULL. 225 281 */ 226 #define YY_CURRENT_BUFFER yy_current_buffer 227 228 229 /* yy_hold_char holds the character lost when yytext is formed. */ 282 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ 283 ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ 284 : NULL) 285 286 /* Same as previous macro, but useful when we know that the buffer stack is not 287 * NULL or when we need an lvalue. For internal use only. 288 */ 289 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] 290 291 /* yy_hold_char holds the character lost when fortrantext is formed. */ 230 292 static char yy_hold_char; 231 232 static int yy_n_chars; /* number of characters read into yy_ch_buf */ 233 234 235 int yyleng; 293 static yy_size_t yy_n_chars; /* number of characters read into yy_ch_buf */ 294 yy_size_t fortranleng; 236 295 237 296 /* Points to current character in buffer. */ 238 297 static char *yy_c_buf_p = (char *) 0; 239 static int yy_init = 1; /* whether we need to initialize */298 static int yy_init = 0; /* whether we need to initialize */ 240 299 static int yy_start = 0; /* start state number */ 241 300 242 /* Flag which is used to allow yywrap()'s to do buffer switches243 * instead of setting up a fresh yyin. A bit of a hack ...301 /* Flag which is used to allow fortranwrap()'s to do buffer switches 302 * instead of setting up a fresh fortranin. A bit of a hack ... 244 303 */ 245 304 static int yy_did_buffer_switch_on_eof; 246 305 247 void yyrestart YY_PROTO(( FILE *input_file )); 248 249 void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer )); 250 void yy_load_buffer_state YY_PROTO(( void )); 251 YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size )); 252 void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b )); 253 void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file )); 254 void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b )); 255 #define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer ) 256 257 YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size )); 258 YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str )); 259 YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len )); 260 261 static void *yy_flex_alloc YY_PROTO(( yy_size_t )); 262 static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )); 263 static void yy_flex_free YY_PROTO(( void * )); 264 265 #define yy_new_buffer yy_create_buffer 306 void fortranrestart (FILE *input_file ); 307 void fortran_switch_to_buffer (YY_BUFFER_STATE new_buffer ); 308 YY_BUFFER_STATE fortran_create_buffer (FILE *file,int size ); 309 void fortran_delete_buffer (YY_BUFFER_STATE b ); 310 void fortran_flush_buffer (YY_BUFFER_STATE b ); 311 void fortranpush_buffer_state (YY_BUFFER_STATE new_buffer ); 312 void fortranpop_buffer_state (void ); 313 314 static void fortranensure_buffer_stack (void ); 315 static void fortran_load_buffer_state (void ); 316 static void fortran_init_buffer (YY_BUFFER_STATE b,FILE *file ); 317 318 #define YY_FLUSH_BUFFER fortran_flush_buffer(YY_CURRENT_BUFFER ) 319 320 YY_BUFFER_STATE fortran_scan_buffer (char *base,yy_size_t size ); 321 YY_BUFFER_STATE fortran_scan_string (yyconst char *yy_str ); 322 YY_BUFFER_STATE fortran_scan_bytes (yyconst char *bytes,yy_size_t len ); 323 324 void *fortranalloc (yy_size_t ); 325 void *fortranrealloc (void *,yy_size_t ); 326 void fortranfree (void * ); 327 328 #define yy_new_buffer fortran_create_buffer 266 329 267 330 #define yy_set_interactive(is_interactive) \ 268 331 { \ 269 if ( ! yy_current_buffer ) \ 270 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \ 271 yy_current_buffer->yy_is_interactive = is_interactive; \ 332 if ( ! YY_CURRENT_BUFFER ){ \ 333 fortranensure_buffer_stack (); \ 334 YY_CURRENT_BUFFER_LVALUE = \ 335 fortran_create_buffer(fortranin,YY_BUF_SIZE ); \ 336 } \ 337 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ 272 338 } 273 339 274 340 #define yy_set_bol(at_bol) \ 275 341 { \ 276 if ( ! yy_current_buffer ) \ 277 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \ 278 yy_current_buffer->yy_at_bol = at_bol; \ 342 if ( ! YY_CURRENT_BUFFER ){\ 343 fortranensure_buffer_stack (); \ 344 YY_CURRENT_BUFFER_LVALUE = \ 345 fortran_create_buffer(fortranin,YY_BUF_SIZE ); \ 346 } \ 347 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ 279 348 } 280 349 281 #define YY_AT_BOL() (yy_current_buffer->yy_at_bol) 350 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) 351 352 /* Begin user sect3 */ 282 353 283 354 typedef unsigned char YY_CHAR; 284 FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0; 355 356 FILE *fortranin = (FILE *) 0, *fortranout = (FILE *) 0; 357 285 358 typedef int yy_state_type; 286 extern char *yytext; 287 #define yytext_ptr yytext 288 289 static yy_state_type yy_get_previous_state YY_PROTO(( void )); 290 static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state )); 291 static int yy_get_next_buffer YY_PROTO(( void )); 292 static void yy_fatal_error YY_PROTO(( yyconst char msg[] )); 359 360 extern int fortranlineno; 361 362 int fortranlineno = 1; 363 364 extern char *fortrantext; 365 #define yytext_ptr fortrantext 366 367 static yy_state_type yy_get_previous_state (void ); 368 static yy_state_type yy_try_NUL_trans (yy_state_type current_state ); 369 static int yy_get_next_buffer (void ); 370 static void yy_fatal_error (yyconst char msg[] ); 293 371 294 372 /* Done after the current pattern has been matched and before the 295 * corresponding action - sets up yytext.373 * corresponding action - sets up fortrantext. 296 374 */ 297 375 #define YY_DO_BEFORE_ACTION \ 298 yytext_ptr= yy_bp; \299 yyleng = (int) (yy_cp - yy_bp); \300 yy_hold_char= *yy_cp; \376 (yytext_ptr) = yy_bp; \ 377 fortranleng = (size_t) (yy_cp - yy_bp); \ 378 (yy_hold_char) = *yy_cp; \ 301 379 *yy_cp = '\0'; \ 302 yy_c_buf_p = yy_cp; 303 304 #define YY_NUM_RULES 173 305 #define YY_END_OF_BUFFER 174 306 static yyconst short int yy_accept[1124] = 380 (yy_c_buf_p) = yy_cp; 381 382 #define YY_NUM_RULES 176 383 #define YY_END_OF_BUFFER 177 384 /* This struct is not used in this scanner, 385 but its presence is necessary. */ 386 struct yy_trans_info 387 { 388 flex_int32_t yy_verify; 389 flex_int32_t yy_nxt; 390 }; 391 static yyconst flex_int16_t yy_accept[1162] = 307 392 { 0, 308 393 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309 0, 0, 174, 173, 163, 159, 162, 172, 151, 150, 310 153, 165, 151, 153, 153, 155, 152, 138, 149, 154, 311 157, 156, 158, 144, 144, 144, 144, 144, 144, 144, 312 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 313 144, 163, 159, 162, 172, 149, 144, 144, 144, 144, 314 144, 173, 173, 170, 173, 153, 144, 0, 0, 163, 315 164, 0, 162, 172, 172, 172, 0, 142, 0, 0, 316 165, 165, 165, 165, 0, 0, 0, 141, 0, 0, 317 133, 25, 0, 145, 0, 0, 0, 0, 0, 0, 318 319 0, 134, 0, 149, 24, 0, 144, 144, 144, 144, 320 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 321 144, 144, 144, 42, 144, 144, 144, 144, 144, 144, 322 144, 144, 144, 144, 144, 144, 144, 84, 144, 144, 323 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 324 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 325 144, 144, 144, 144, 163, 161, 0, 161, 0, 0, 326 0, 0, 0, 164, 160, 161, 0, 172, 171, 172, 327 172, 172, 161, 149, 4, 144, 144, 144, 144, 144, 328 144, 0, 170, 0, 0, 0, 167, 25, 0, 0, 329 330 4, 0, 144, 144, 144, 144, 144, 144, 0, 0, 331 0, 172, 172, 0, 0, 165, 165, 0, 0, 0, 332 0, 140, 0, 0, 0, 0, 0, 0, 0, 0, 333 0, 0, 0, 0, 0, 0, 0, 148, 145, 0, 334 0, 0, 143, 0, 144, 144, 144, 144, 144, 144, 335 144, 144, 144, 144, 144, 144, 144, 114, 144, 144, 336 144, 0, 144, 144, 144, 144, 144, 15, 144, 144, 337 144, 113, 144, 144, 144, 144, 144, 0, 144, 0, 338 95, 144, 144, 144, 144, 144, 120, 144, 144, 125, 339 144, 144, 144, 144, 144, 144, 88, 144, 144, 144, 340 341 144, 144, 144, 144, 144, 144, 144, 144, 144, 144, 342 144, 117, 144, 144, 144, 144, 144, 121, 144, 144, 343 144, 144, 144, 163, 161, 0, 164, 0, 0, 0, 344 0, 0, 0, 0, 161, 0, 161, 172, 172, 172, 345 149, 4, 4, 4, 4, 144, 144, 144, 144, 144, 346 144, 0, 0, 0, 167, 0, 0, 4, 4, 4, 347 4, 143, 0, 144, 144, 0, 144, 144, 144, 144, 348 0, 0, 0, 172, 172, 0, 0, 165, 165, 0, 349 0, 0, 0, 146, 0, 145, 0, 147, 0, 27, 350 0, 29, 28, 31, 30, 33, 0, 0, 35, 0, 351 352 145, 0, 146, 0, 145, 0, 147, 0, 143, 0, 353 144, 144, 124, 116, 144, 119, 122, 144, 21, 144, 354 144, 144, 144, 144, 115, 144, 144, 144, 0, 144, 355 144, 144, 93, 0, 107, 144, 144, 144, 144, 144, 356 144, 144, 144, 144, 0, 108, 144, 144, 144, 144, 357 144, 144, 144, 0, 87, 144, 144, 144, 144, 144, 358 144, 144, 0, 97, 144, 144, 0, 110, 144, 144, 359 144, 144, 111, 20, 59, 73, 144, 144, 144, 144, 360 144, 144, 144, 144, 78, 43, 144, 144, 144, 144, 361 68, 144, 126, 118, 144, 71, 53, 144, 0, 96, 362 363 98, 144, 91, 100, 144, 144, 163, 161, 164, 0, 364 0, 0, 0, 0, 0, 161, 0, 161, 172, 172, 365 172, 149, 4, 4, 144, 144, 144, 144, 144, 17, 366 0, 0, 0, 4, 4, 0, 143, 0, 144, 144, 367 144, 144, 0, 0, 0, 172, 172, 0, 0, 165, 368 165, 0, 0, 37, 26, 0, 34, 36, 0, 143, 369 0, 143, 144, 144, 144, 144, 144, 48, 144, 144, 370 144, 123, 144, 144, 0, 144, 144, 144, 0, 144, 371 144, 0, 0, 0, 0, 0, 0, 0, 0, 41, 372 144, 94, 144, 144, 144, 144, 144, 144, 144, 144, 373 374 144, 75, 75, 75, 75, 144, 0, 106, 112, 144, 375 144, 87, 144, 144, 89, 144, 144, 144, 144, 144, 376 144, 144, 144, 144, 144, 144, 144, 144, 144, 51, 377 144, 76, 144, 144, 144, 0, 144, 144, 144, 144, 378 144, 101, 144, 144, 54, 80, 163, 161, 164, 0, 379 0, 0, 0, 0, 161, 0, 161, 172, 172, 172, 380 149, 4, 3, 0, 103, 144, 144, 85, 144, 69, 381 70, 69, 0, 0, 0, 4, 3, 0, 143, 0, 382 143, 144, 48, 144, 123, 0, 22, 0, 172, 22, 383 0, 22, 22, 165, 22, 0, 22, 22, 22, 32, 384 385 144, 22, 22, 22, 144, 144, 144, 62, 144, 144, 386 144, 144, 0, 144, 144, 139, 0, 0, 92, 144, 387 41, 0, 94, 0, 0, 0, 0, 0, 0, 0, 388 144, 144, 144, 144, 144, 144, 144, 144, 144, 0, 389 109, 144, 144, 144, 144, 144, 144, 144, 65, 144, 390 144, 144, 128, 99, 127, 129, 38, 144, 144, 144, 391 144, 144, 144, 82, 0, 144, 10, 74, 18, 144, 392 144, 81, 163, 161, 164, 0, 0, 0, 161, 172, 393 172, 22, 4, 3, 3, 144, 144, 144, 0, 0, 394 22, 4, 3, 3, 144, 22, 22, 22, 23, 166, 395 396 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 397 144, 144, 144, 57, 144, 144, 144, 0, 0, 144, 398 144, 39, 92, 0, 144, 0, 0, 0, 0, 0, 399 0, 0, 0, 144, 144, 144, 144, 144, 144, 72, 400 144, 144, 144, 0, 0, 144, 144, 16, 49, 44, 401 144, 144, 45, 0, 144, 144, 144, 144, 66, 83, 402 7, 0, 0, 144, 0, 144, 144, 0, 0, 0, 403 172, 23, 4, 144, 144, 63, 0, 23, 4, 23, 404 23, 23, 144, 8, 144, 144, 86, 144, 144, 39, 405 0, 0, 144, 144, 0, 144, 0, 0, 0, 0, 406 407 0, 0, 72, 0, 144, 144, 144, 144, 144, 144, 408 55, 144, 64, 0, 0, 0, 135, 11, 19, 144, 409 144, 0, 144, 79, 67, 144, 0, 144, 0, 144, 410 144, 0, 0, 172, 4, 144, 58, 0, 4, 144, 411 131, 46, 144, 50, 0, 0, 144, 144, 0, 56, 412 0, 0, 0, 0, 0, 0, 55, 144, 144, 40, 413 144, 105, 144, 144, 0, 0, 0, 0, 135, 130, 414 90, 0, 144, 60, 0, 61, 0, 144, 144, 0, 415 58, 172, 4, 4, 144, 0, 4, 4, 144, 9, 416 0, 0, 144, 144, 56, 0, 0, 40, 0, 105, 417 418 0, 144, 144, 13, 144, 144, 0, 0, 0, 144, 419 0, 0, 102, 6, 0, 172, 4, 4, 144, 0, 420 4, 4, 47, 0, 0, 144, 144, 0, 0, 13, 421 0, 14, 144, 144, 52, 0, 0, 0, 144, 0, 422 102, 0, 172, 4, 2, 104, 0, 4, 2, 0, 423 0, 144, 144, 14, 0, 0, 132, 144, 0, 0, 424 0, 144, 0, 104, 172, 4, 0, 4, 0, 0, 425 137, 144, 132, 0, 12, 0, 0, 0, 144, 0, 426 172, 1, 0, 1, 137, 0, 144, 12, 0, 0, 427 0, 144, 0, 172, 0, 0, 136, 0, 0, 0, 428 429 77, 5, 172, 0, 136, 77, 172, 0, 172, 0, 430 172, 0, 172, 0, 172, 0, 168, 0, 0, 0, 431 0, 169, 0 394 0, 0, 177, 176, 165, 161, 164, 175, 152, 151, 395 155, 167, 152, 154, 154, 154, 157, 153, 137, 150, 396 156, 159, 158, 160, 145, 145, 145, 145, 145, 145, 397 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, 398 145, 145, 165, 161, 164, 175, 150, 145, 145, 145, 399 145, 145, 145, 176, 176, 173, 176, 176, 176, 161, 400 161, 154, 145, 0, 0, 165, 0, 166, 0, 164, 401 175, 175, 175, 0, 141, 0, 0, 167, 167, 167, 402 167, 0, 0, 0, 140, 0, 0, 132, 26, 0, 403 404 146, 0, 0, 0, 0, 0, 0, 0, 133, 0, 405 150, 25, 0, 145, 145, 145, 145, 145, 145, 145, 406 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, 407 43, 145, 145, 145, 145, 145, 145, 145, 145, 145, 408 145, 145, 145, 145, 85, 145, 145, 145, 145, 145, 409 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, 410 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, 411 145, 145, 165, 163, 0, 163, 0, 0, 0, 0, 412 0, 0, 166, 162, 163, 0, 175, 174, 175, 175, 413 175, 163, 150, 4, 145, 145, 145, 145, 85, 145, 414 415 145, 0, 173, 0, 0, 0, 0, 0, 0, 0, 416 169, 26, 0, 0, 4, 0, 145, 145, 145, 145, 417 145, 145, 0, 0, 0, 175, 175, 0, 0, 167, 418 167, 0, 0, 0, 0, 139, 0, 0, 0, 0, 419 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 420 0, 149, 146, 0, 0, 0, 142, 0, 145, 145, 421 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, 422 145, 115, 145, 145, 145, 0, 145, 145, 145, 145, 423 145, 16, 145, 145, 145, 114, 145, 145, 145, 145, 424 145, 0, 145, 0, 96, 145, 145, 145, 145, 145, 425 426 121, 145, 145, 126, 145, 145, 145, 145, 145, 145, 427 145, 89, 145, 145, 145, 145, 145, 145, 145, 145, 428 145, 145, 145, 145, 145, 145, 118, 145, 145, 145, 429 145, 145, 122, 145, 145, 145, 145, 145, 165, 163, 430 0, 166, 0, 0, 0, 0, 0, 0, 0, 0, 431 163, 0, 163, 175, 175, 175, 150, 4, 4, 4, 432 4, 145, 145, 145, 145, 145, 145, 145, 0, 0, 433 0, 0, 170, 0, 0, 169, 0, 0, 4, 4, 434 4, 4, 142, 0, 145, 145, 0, 145, 145, 145, 435 145, 0, 0, 0, 175, 175, 0, 0, 167, 167, 436 437 0, 0, 0, 0, 147, 0, 146, 0, 148, 0, 438 28, 0, 30, 29, 32, 31, 34, 0, 0, 36, 439 0, 146, 0, 147, 0, 146, 0, 148, 0, 142, 440 0, 125, 117, 145, 145, 120, 123, 145, 145, 22, 441 145, 145, 145, 145, 145, 116, 145, 145, 145, 0, 442 145, 145, 145, 94, 0, 108, 145, 145, 145, 145, 443 145, 145, 145, 145, 145, 0, 109, 145, 145, 145, 444 145, 145, 145, 145, 0, 88, 145, 145, 145, 145, 445 145, 145, 145, 0, 98, 145, 145, 0, 111, 145, 446 145, 145, 145, 112, 21, 145, 60, 74, 145, 145, 447 448 145, 145, 145, 145, 145, 145, 79, 44, 145, 145, 449 145, 145, 69, 145, 127, 119, 145, 72, 54, 145, 450 0, 97, 99, 145, 92, 101, 145, 145, 165, 163, 451 166, 0, 0, 0, 0, 0, 0, 0, 163, 0, 452 163, 175, 175, 175, 150, 4, 4, 145, 145, 145, 453 145, 145, 145, 18, 0, 0, 0, 0, 0, 170, 454 0, 0, 4, 4, 0, 142, 0, 145, 145, 145, 455 145, 0, 0, 0, 175, 175, 0, 0, 167, 167, 456 0, 0, 38, 27, 0, 35, 37, 0, 142, 0, 457 142, 145, 145, 145, 145, 145, 49, 145, 145, 145, 458 459 124, 145, 145, 0, 145, 145, 145, 0, 145, 145, 460 0, 0, 0, 0, 0, 0, 0, 0, 42, 145, 461 95, 145, 145, 145, 145, 145, 145, 145, 145, 76, 462 76, 76, 76, 145, 0, 107, 113, 145, 145, 88, 463 145, 145, 90, 145, 145, 145, 145, 145, 145, 145, 464 145, 145, 145, 145, 145, 145, 145, 52, 145, 77, 465 145, 145, 145, 0, 145, 145, 145, 145, 145, 102, 466 145, 145, 55, 81, 165, 163, 166, 0, 0, 0, 467 0, 0, 0, 163, 0, 163, 175, 175, 175, 150, 468 4, 3, 0, 104, 145, 145, 86, 145, 145, 70, 469 470 71, 70, 0, 0, 0, 0, 4, 3, 0, 142, 471 0, 142, 145, 49, 145, 124, 0, 23, 0, 175, 472 23, 0, 23, 23, 167, 23, 0, 23, 23, 23, 473 33, 145, 145, 23, 23, 23, 145, 145, 63, 145, 474 145, 145, 145, 0, 145, 145, 138, 0, 0, 93, 475 145, 42, 0, 95, 0, 0, 0, 0, 0, 0, 476 145, 145, 145, 145, 145, 145, 145, 145, 0, 110, 477 145, 145, 145, 145, 145, 145, 145, 66, 145, 145, 478 129, 100, 128, 130, 39, 145, 145, 145, 145, 145, 479 145, 145, 83, 0, 145, 11, 75, 19, 145, 145, 480 481 82, 165, 163, 166, 0, 0, 0, 0, 163, 175, 482 175, 23, 4, 3, 3, 145, 145, 145, 145, 0, 483 0, 0, 23, 4, 3, 3, 145, 23, 23, 23, 484 24, 0, 168, 24, 24, 24, 24, 24, 24, 24, 485 24, 24, 24, 145, 145, 145, 58, 145, 145, 145, 486 0, 0, 145, 145, 40, 93, 0, 145, 0, 0, 487 0, 0, 0, 0, 0, 145, 145, 145, 145, 145, 488 73, 145, 145, 145, 0, 0, 145, 145, 17, 50, 489 45, 145, 46, 0, 145, 145, 9, 145, 145, 67, 490 84, 7, 0, 0, 145, 0, 145, 145, 0, 0, 491 492 0, 0, 175, 24, 4, 145, 145, 64, 145, 0, 493 0, 24, 4, 24, 24, 24, 145, 8, 145, 145, 494 87, 145, 145, 40, 0, 0, 145, 145, 0, 145, 495 0, 0, 0, 0, 0, 73, 0, 145, 145, 145, 496 145, 145, 56, 145, 65, 0, 0, 0, 0, 134, 497 12, 20, 145, 0, 145, 80, 68, 145, 0, 145, 498 0, 145, 145, 0, 0, 0, 175, 4, 145, 59, 499 145, 0, 0, 4, 145, 131, 47, 145, 51, 0, 500 0, 145, 145, 0, 57, 0, 0, 0, 0, 0, 501 56, 145, 41, 145, 106, 145, 145, 0, 0, 0, 502 503 0, 0, 134, 91, 0, 145, 61, 0, 62, 0, 504 145, 145, 0, 59, 0, 175, 4, 4, 145, 143, 505 0, 0, 4, 4, 145, 10, 0, 0, 145, 145, 506 57, 0, 41, 0, 106, 0, 145, 14, 145, 145, 507 0, 0, 0, 145, 0, 0, 103, 6, 0, 143, 508 175, 4, 4, 145, 0, 0, 4, 4, 48, 0, 509 0, 145, 145, 0, 14, 0, 15, 145, 53, 0, 510 0, 0, 145, 0, 103, 0, 175, 4, 2, 105, 511 0, 0, 4, 2, 0, 0, 145, 145, 15, 0, 512 145, 0, 0, 0, 145, 0, 105, 175, 4, 0, 513 514 0, 4, 0, 0, 136, 145, 0, 13, 0, 0, 515 0, 145, 0, 175, 1, 0, 0, 144, 1, 136, 516 0, 145, 13, 0, 0, 0, 0, 145, 0, 175, 517 0, 0, 135, 0, 0, 0, 78, 5, 175, 0, 518 135, 78, 175, 0, 175, 0, 175, 0, 175, 0, 519 175, 0, 175, 171, 0, 0, 0, 0, 0, 172, 520 0 432 521 } ; 433 522 434 static yyconst int yy_ec[256] =523 static yyconst flex_int32_t yy_ec[256] = 435 524 { 0, 436 525 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, … … 439 528 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 440 529 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 441 23, 24, 25, 26, 27, 28, 20, 29, 30, 31, 442 32, 33, 1, 1, 37, 38, 39, 40, 41, 42, 443 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 444 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 445 34, 1, 35, 1, 36, 1, 37, 38, 39, 40, 446 530 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 531 33, 34, 1, 1, 35, 36, 37, 38, 39, 40, 447 532 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 448 533 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 449 61, 62, 63, 63, 63, 1, 1, 1, 1, 1, 534 61, 1, 62, 1, 63, 1, 64, 65, 66, 67, 535 536 68, 69, 70, 71, 72, 44, 73, 74, 75, 76, 537 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 538 87, 88, 89, 89, 89, 1, 1, 1, 1, 1, 450 539 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 451 540 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, … … 464 553 } ; 465 554 466 static yyconst int yy_meta[64] =555 static yyconst flex_int32_t yy_meta[90] = 467 556 { 0, 468 1, 2, 3, 4, 1, 5, 1, 1, 1, 6, 469 1, 1, 1, 1, 7, 1, 7, 8, 1, 9, 470 9, 9, 9, 9, 9, 9, 9, 9, 1, 1, 471 1, 1, 1, 1, 1, 10, 11, 10, 10, 12, 472 13, 14, 15, 16, 10, 10, 10, 15, 15, 15, 473 11, 10, 12, 15, 15, 14, 15, 10, 17, 10, 474 10, 10, 5 557 1, 2, 3, 2, 1, 4, 1, 1, 1, 1, 558 1, 1, 1, 1, 1, 1, 1, 5, 1, 6, 559 6, 6, 6, 6, 6, 6, 6, 6, 6, 1, 560 1, 1, 1, 1, 7, 8, 8, 9, 9, 5, 561 10, 11, 8, 8, 8, 10, 10, 10, 7, 8, 562 9, 10, 10, 5, 10, 8, 12, 8, 8, 8, 563 1, 1, 8, 7, 8, 8, 9, 9, 5, 10, 564 11, 8, 8, 10, 10, 10, 7, 8, 9, 10, 565 10, 5, 10, 8, 12, 8, 8, 8, 4 475 566 } ; 476 567 477 static yyconst short int yy_base[1180] =568 static yyconst flex_int16_t yy_base[1215] = 478 569 { 0, 479 0, 62, 0, 0, 0, 0, 4185, 65, 0, 55, 480 0, 0, 4187, 35, 69, 70, 74, 37, 75, 50, 481 53, 72, 93, 78, 66, 56, 148, 87, 81, 65, 482 68, 99, 71, 191, 230, 108, 183, 225, 244, 103, 483 137, 152, 185, 250, 265, 262, 281, 220, 286, 296, 484 308, 368, 134, 424, 321, 350, 149, 4149, 310, 337, 485 270, 4189, 4182, 4189, 158, 380, 481, 4147, 4129, 138, 486 163, 175, 179, 0, 4145, 4127, 4174, 4189, 147, 133, 487 4176, 4175, 192, 156, 232, 393, 376, 4189, 402, 406, 488 4189, 4189, 543, 184, 4127, 4123, 204, 218, 226, 4121, 489 490 4123, 4189, 584, 358, 4189, 448, 532, 507, 514, 572, 491 534, 588, 593, 605, 617, 381, 242, 169, 195, 404, 492 384, 312, 517, 672, 524, 378, 403, 544, 365, 630, 493 597, 545, 424, 565, 651, 679, 425, 650, 626, 648, 494 672, 673, 603, 674, 680, 684, 698, 686, 699, 704, 495 706, 584, 707, 710, 711, 730, 683, 297, 732, 735, 496 734, 737, 742, 750, 788, 795, 4170, 389, 316, 4135, 497 4123, 72, 4115, 807, 4189, 863, 427, 4166, 4189, 225, 498 327, 543, 632, 660, 804, 765, 799, 770, 764, 785, 499 788, 4165, 4189, 343, 4164, 774, 4189, 4163, 820, 564, 500 501 856, 918, 946, 4147, 271, 661, 187, 270, 4116, 4106, 502 812, 4114, 4104, 547, 804, 617, 398, 859, 894, 906, 503 868, 4189, 889, 871, 815, 860, 896, 4120, 372, 4141, 504 4140, 4139, 4138, 275, 4099, 4136, 4099, 4189, 874, 907, 505 908, 914, 4111, 4110, 864, 973, 999, 977, 975, 983, 506 984, 981, 1002, 986, 987, 1006, 1007, 1008, 1011, 1020, 507 1010, 4091, 737, 1029, 1032, 1017, 1036, 1089, 1033, 1078, 508 1042, 1035, 1047, 1058, 1038, 1057, 1063, 1101, 1071, 1013, 509 4189, 1070, 1079, 1082, 1083, 1105, 1110, 1148, 1149, 1112, 510 1117, 1119, 1126, 1128, 1133, 1139, 1076, 1125, 1137, 1140, 511 512 1151, 1161, 1162, 1171, 1163, 1175, 1176, 1177, 1186, 1187, 513 1184, 1198, 1189, 1199, 1202, 1141, 1245, 1207, 1221, 1209, 514 1211, 1213, 1225, 1264, 1283, 4088, 1290, 4145, 4092, 4096, 515 4089, 4093, 4091, 4101, 1346, 715, 922, 557, 1120, 837, 516 1266, 0, 931, 4098, 4091, 1236, 1235, 1243, 1264, 1271, 517 1274, 800, 4020, 1311, 4189, 1268, 873, 4003, 1332, 1295, 518 1132, 1401, 1440, 0, 3971, 1479, 697, 659, 815, 998, 519 3883, 3892, 932, 3876, 3823, 1231, 551, 561, 1302, 1321, 520 1342, 1351, 1355, 1385, 1410, 1424, 1449, 1463, 3829, 4189, 521 3812, 4189, 4189, 4189, 4189, 4189, 3767, 3805, 4189, 3802, 522 523 1347, 1488, 1497, 1506, 1515, 1524, 1533, 1302, 3778, 1327, 524 1304, 1525, 4189, 1273, 1362, 1361, 1402, 1403, 1441, 1442, 525 1526, 1443, 1527, 1528, 1531, 1533, 1535, 1534, 3773, 1549, 526 1553, 1539, 1597, 1655, 4189, 1541, 1554, 1563, 1565, 1567, 527 1569, 1575, 1578, 1577, 1361, 4189, 1583, 1714, 1587, 1623, 528 1591, 1596, 1607, 3762, 1611, 1617, 1612, 1616, 1630, 1631, 529 1645, 1639, 1684, 4189, 1652, 1654, 1690, 4189, 1741, 1672, 530 1742, 1743, 1744, 1745, 1746, 1747, 1751, 1757, 1766, 1756, 531 1767, 1771, 1772, 1777, 1776, 1801, 1779, 1780, 1781, 1782, 532 1787, 1790, 1800, 1802, 1828, 1805, 1806, 1810, 1846, 4189, 533 534 1808, 1812, 1809, 1814, 1830, 1832, 1870, 1885, 1892, 3770, 535 3752, 3770, 3767, 3761, 3797, 1948, 1009, 1380, 1303, 663, 536 1414, 1873, 3746, 3747, 1903, 1863, 1902, 1839, 1943, 3794, 537 1306, 1438, 1451, 1849, 1566, 2003, 2029, 2068, 1591, 424, 538 1063, 1373, 3756, 0, 1392, 3755, 0, 815, 3788, 1875, 539 3790, 1919, 1702, 4189, 4189, 3774, 4189, 4189, 1987, 2013, 540 2038, 2052, 1844, 2096, 1864, 1882, 1884, 1883, 1927, 1924, 541 1929, 1909, 1945, 1930, 3746, 1949, 2123, 2124, 2160, 2045, 542 2126, 3738, 3728, 1588, 3733, 3680, 1623, 3668, 3683, 1963, 543 2129, 1965, 2030, 2132, 2130, 2128, 2136, 2148, 2150, 2138, 544 545 2191, 4189, 2186, 2178, 2162, 2180, 1990, 4189, 2164, 2166, 546 2184, 4189, 2187, 2196, 2188, 2190, 2194, 2200, 2209, 2203, 547 2206, 2210, 2218, 2222, 2221, 2230, 2225, 2228, 2236, 2231, 548 2246, 2237, 2243, 2244, 2249, 3696, 2252, 2255, 2258, 2256, 549 2264, 4189, 2265, 2267, 2276, 2277, 2322, 2331, 2341, 2313, 550 3686, 1416, 3684, 2336, 2397, 1449, 1648, 1854, 2040, 3697, 551 2324, 3654, 1783, 2335, 4189, 2313, 2312, 1910, 2335, 2392, 552 4189, 2389, 2194, 2341, 3693, 2249, 2042, 2452, 2478, 2504, 553 2530, 1870, 3675, 2558, 3672, 0, 4189, 2615, 0, 0, 554 3677, 3676, 4189, 3659, 3654, 2353, 2366, 2400, 4189, 4189, 555 556 2643, 2392, 2355, 2331, 2369, 2384, 2385, 2389, 2390, 2391, 557 2392, 2397, 3580, 2431, 2415, 2393, 3585, 3582, 2395, 2430, 558 4189, 3575, 4189, 3566, 3580, 3539, 3541, 3550, 3535, 3495, 559 2454, 2455, 2457, 2480, 2481, 2428, 2670, 2458, 2671, 2455, 560 4189, 2482, 2708, 2672, 2676, 2677, 2692, 2483, 2484, 2678, 561 2680, 2690, 2685, 2699, 2700, 2703, 2739, 2705, 2710, 2711, 562 2712, 2714, 2721, 2715, 2537, 2726, 2719, 2724, 2735, 2775, 563 2744, 2745, 2781, 2792, 2801, 3478, 3436, 3432, 0, 1637, 564 3476, 3475, 3435, 0, 1991, 2750, 2772, 2806, 1959, 3473, 565 3472, 2313, 3471, 2356, 2860, 2921, 0, 3455, 4189, 4189, 566 567 0, 3466, 4189, 3468, 2537, 2621, 4189, 2905, 2793, 2747, 568 2782, 2779, 2805, 2753, 2897, 2780, 2802, 3429, 2458, 2899, 569 2791, 2898, 4189, 3428, 2900, 3429, 3426, 3409, 3422, 3423, 570 3409, 3421, 3407, 2902, 2903, 2918, 2922, 2923, 2924, 2926, 571 2927, 2928, 2936, 2981, 2976, 2937, 2951, 2955, 2957, 2958, 572 2959, 2963, 2960, 2997, 2965, 2966, 2967, 2969, 2979, 2981, 573 2987, 3024, 3423, 2988, 2811, 2990, 2993, 3417, 3407, 2459, 574 2510, 3453, 3419, 2994, 2997, 2462, 3026, 3448, 3029, 3063, 575 0, 3426, 3002, 3000, 3016, 3006, 3013, 3018, 3021, 4189, 576 3389, 3309, 3024, 3022, 3272, 3027, 3215, 3209, 3187, 3150, 577 578 3134, 3029, 4189, 3004, 3055, 3040, 3056, 3042, 3058, 3061, 579 3062, 3067, 3065, 3098, 2484, 3110, 3119, 3070, 3088, 3089, 580 3094, 2917, 3090, 3091, 3097, 3098, 2953, 3099, 2930, 3100, 581 3109, 2818, 2796, 2785, 2502, 3110, 3102, 2383, 3135, 3112, 582 3120, 3124, 3128, 3125, 2746, 2687, 3131, 3133, 2605, 3134, 583 2590, 2592, 2586, 2479, 2459, 2433, 4189, 3139, 3143, 3144, 584 3147, 3149, 3152, 3155, 2541, 3192, 3208, 3204, 3210, 3162, 585 3178, 2438, 3185, 3182, 2414, 3188, 2340, 3189, 3190, 2333, 586 4189, 2018, 2288, 2260, 3192, 112, 3197, 3188, 3200, 3191, 587 2137, 2149, 3210, 3211, 4189, 2017, 2011, 4189, 1998, 4189, 588 589 1986, 3212, 3213, 3197, 3216, 3218, 2624, 3271, 1977, 3239, 590 1982, 1903, 3223, 3231, 1885, 3254, 1854, 1829, 3232, 3066, 591 1951, 1593, 3241, 1822, 1744, 3242, 3245, 1736, 1662, 4189, 592 1653, 3250, 3257, 3252, 3254, 2850, 3310, 1642, 3270, 1622, 593 4189, 1521, 3100, 1441, 0, 3255, 3294, 1280, 1416, 1354, 594 1309, 3268, 3280, 4189, 1314, 1246, 3264, 3278, 3325, 3333, 595 1178, 3284, 1155, 4189, 3300, 1072, 3313, 2771, 1054, 1064, 596 3294, 3296, 4189, 1044, 3302, 3350, 3377, 992, 3305, 960, 597 3102, 0, 3337, 892, 4189, 829, 3312, 4189, 3342, 3388, 598 696, 3345, 555, 3358, 3364, 406, 3367, 3414, 3415, 348, 599 600 3368, 4189, 3341, 3380, 4189, 4189, 3366, 3381, 3351, 3367, 601 2713, 3390, 3382, 3386, 281, 3404, 4189, 3405, 3416, 3426, 602 177, 4189, 4189, 3482, 3499, 3516, 3533, 3550, 3567, 3577, 603 3584, 3601, 3615, 3629, 3646, 3663, 3672, 3685, 3702, 3716, 604 3722, 3731, 3748, 3765, 3424, 3427, 3428, 3774, 3432, 3436, 605 3440, 362, 2185, 3786, 3800, 3806, 3441, 3445, 3812, 3818, 606 3827, 3844, 3861, 3878, 3895, 3912, 3926, 3935, 3952, 3969, 607 3986, 4003, 4020, 4037, 4054, 4071, 4088, 4105, 4122 570 0, 88, 0, 0, 0, 0, 1215, 93, 1196, 91, 571 0, 0, 1179, 64, 97, 117, 132, 87, 124, 98, 572 99, 142, 173, 154, 108, 135, 134, 254, 172, 179, 573 175, 178, 219, 180, 323, 388, 384, 318, 386, 319, 574 186, 128, 250, 256, 392, 404, 438, 428, 204, 455, 575 432, 465, 544, 120, 537, 548, 627, 624, 622, 544, 576 644, 658, 251, 9159, 1175, 9159, 267, 99, 162, 569, 577 572, 620, 745, 164, 107, 262, 307, 335, 376, 522, 578 0, 167, 157, 1162, 9159, 278, 321, 1160, 1118, 372, 579 304, 532, 593, 567, 9159, 633, 832, 9159, 9159, 911, 580 581 798, 318, 319, 450, 799, 552, 320, 354, 9159, 978, 582 834, 9159, 865, 860, 862, 866, 914, 863, 973, 980, 583 974, 1013, 1024, 1045, 869, 1049, 1075, 1095, 1098, 1101, 584 1182, 1177, 1161, 1181, 1214, 1212, 1237, 1239, 1235, 1270, 585 1290, 1316, 1325, 1293, 1346, 1323, 1366, 1368, 1391, 1399, 586 1403, 1429, 1430, 1455, 1452, 1478, 1498, 1482, 1523, 1521, 587 1554, 1548, 1579, 1586, 1606, 1629, 1649, 1675, 1681, 1698, 588 1707, 1729, 871, 1114, 1109, 140, 1023, 187, 372, 403, 589 553, 401, 1095, 565, 1792, 1818, 1083, 9159, 643, 669, 590 589, 1844, 1870, 1580, 1865, 1867, 1868, 1905, 1926, 1922, 591 592 1925, 1078, 9159, 837, 437, 677, 249, 660, 1072, 712, 593 9159, 1062, 844, 625, 1874, 1993, 2022, 1042, 864, 473, 594 904, 621, 506, 651, 721, 798, 791, 890, 912, 936, 595 907, 725, 1029, 1143, 729, 9159, 1114, 1179, 2097, 2112, 596 2127, 229, 937, 1033, 1012, 1006, 994, 943, 883, 974, 597 891, 9159, 1476, 2142, 2157, 2172, 2182, 2202, 2178, 2180, 598 2200, 2203, 2223, 2243, 2246, 2244, 2276, 2269, 2299, 2307, 599 2301, 2324, 2344, 2351, 2377, 901, 1018, 2374, 2394, 2397, 600 2414, 2495, 2434, 2440, 2465, 2472, 2518, 2521, 2515, 2548, 601 2556, 1138, 2564, 968, 9159, 2581, 2597, 2604, 2627, 2649, 602 603 2650, 2690, 2693, 2686, 2726, 2738, 2746, 2747, 2763, 2783, 604 2799, 2800, 2803, 2820, 2840, 2843, 2870, 2891, 2895, 2903, 605 2926, 2928, 2935, 2961, 2981, 2958, 2984, 2978, 3004, 3011, 606 3027, 3052, 3048, 3059, 3085, 3068, 3105, 3111, 196, 203, 607 976, 383, 974, 988, 1018, 1014, 1025, 1029, 1042, 253, 608 3174, 3200, 3226, 1067, 1182, 1172, 3252, 0, 418, 288, 609 1096, 3228, 3229, 3231, 3251, 3267, 3287, 3290, 1188, 1566, 610 973, 740, 9159, 938, 866, 9159, 1268, 1178, 931, 1170, 611 1241, 1299, 3354, 3381, 0, 903, 3408, 1148, 1116, 1177, 612 1322, 1145, 410, 1415, 1235, 460, 1292, 1218, 1323, 1022, 613 614 963, 1520, 1662, 3418, 3430, 3440, 3450, 3460, 3470, 889, 615 9159, 865, 9159, 9159, 9159, 9159, 9159, 1239, 853, 9159, 616 846, 2472, 3480, 3490, 3500, 3510, 3520, 3530, 3545, 3555, 617 3575, 9159, 3289, 3553, 3573, 3551, 3574, 3590, 3596, 3612, 618 3628, 3634, 3635, 3655, 3671, 3651, 3687, 3688, 3696, 459, 619 3728, 3736, 3740, 3784, 3868, 9159, 3780, 3776, 3807, 3811, 620 3850, 3912, 3872, 3920, 3921, 1351, 9159, 3828, 4005, 4060, 621 4095, 3904, 4063, 4069, 1258, 4096, 4104, 4126, 4134, 4156, 622 4165, 4196, 4205, 1409, 9159, 4208, 4197, 1476, 9159, 4235, 623 4241, 4257, 4261, 4273, 4284, 4293, 4305, 4309, 4332, 4336, 624 625 4353, 4316, 4359, 4362, 4384, 4407, 4385, 4416, 4423, 4448, 626 4455, 4456, 4486, 4494, 4488, 4511, 4527, 4519, 4531, 4554, 627 1498, 9159, 4552, 4575, 4584, 4587, 4607, 4610, 493, 529, 628 551, 476, 1287, 816, 953, 1119, 1293, 841, 4678, 4704, 629 4730, 1607, 1346, 1458, 4756, 1362, 1397, 4733, 4732, 4759, 630 4627, 4768, 4817, 733, 1619, 1594, 1406, 728, 1537, 9159, 631 1571, 1651, 1625, 1613, 4839, 4867, 4894, 1627, 1658, 1686, 632 1714, 1394, 0, 1756, 1574, 0, 1668, 724, 1709, 724, 633 1763, 1775, 9159, 9159, 708, 9159, 9159, 4904, 4916, 4926, 634 4936, 4771, 4931, 5013, 4934, 5068, 5069, 5071, 5075, 5072, 635 636 5120, 5121, 5123, 1725, 5127, 5153, 5176, 1832, 5175, 5179, 637 1458, 1493, 1739, 1516, 1519, 1873, 1592, 1739, 5201, 5224, 638 5202, 5241, 5240, 5257, 5278, 5280, 5301, 5284, 5352, 9159, 639 5351, 5346, 5349, 5353, 1802, 9159, 5355, 5385, 5401, 9159, 640 5405, 5408, 5412, 5428, 5449, 5451, 5458, 5460, 5495, 5501, 641 5531, 5527, 5539, 5571, 5564, 5575, 5591, 5602, 5623, 5614, 642 5634, 5635, 5660, 693, 5666, 5667, 5692, 5703, 5715, 9159, 643 5723, 5719, 5740, 5746, 846, 1103, 1234, 1788, 1768, 1386, 644 1788, 1615, 1847, 1854, 236, 590, 1781, 1913, 715, 5809, 645 1790, 1645, 2264, 9159, 5785, 5805, 1690, 5806, 5807, 2344, 646 647 9159, 1951, 1858, 1924, 2256, 679, 1930, 1879, 5870, 5880, 648 5907, 5917, 1811, 658, 5946, 624, 0, 9159, 6034, 0, 649 0, 613, 609, 9159, 604, 586, 2245, 2364, 2389, 9159, 650 9159, 6063, 6118, 6139, 6138, 6134, 6135, 6141, 6161, 6173, 651 6184, 6209, 6217, 1654, 6260, 6248, 6216, 1844, 1864, 6239, 652 6280, 9159, 1689, 9159, 1930, 1750, 1763, 1934, 1933, 2077, 653 6300, 6292, 6317, 6337, 6338, 6344, 6369, 6376, 2212, 9159, 654 6360, 6413, 6392, 6412, 6424, 6433, 6456, 6435, 6465, 6476, 655 6488, 6497, 6508, 6509, 6552, 6529, 6540, 6549, 6560, 6585, 656 6593, 6605, 6628, 2392, 6636, 6637, 6648, 6659, 6694, 6685, 657 658 6686, 6775, 2286, 518, 2092, 2103, 1938, 2148, 2420, 2303, 659 472, 442, 2196, 0, 1803, 6692, 6717, 6768, 6756, 2424, 660 2334, 426, 422, 2432, 378, 1883, 6858, 6945, 6974, 337, 661 9159, 1922, 9159, 0, 328, 9159, 314, 2481, 2510, 9159, 662 6929, 6757, 7029, 7031, 7037, 7040, 7033, 7077, 7070, 7086, 663 2264, 2842, 7093, 7097, 7118, 9159, 2372, 7129, 2384, 2060, 664 2411, 2418, 2078, 2421, 2139, 7138, 7149, 7170, 7179, 7195, 665 7201, 7227, 7234, 7236, 2483, 3160, 7259, 7257, 7279, 7280, 666 7282, 7302, 7318, 2564, 7325, 7319, 7345, 7356, 7377, 7357, 667 7368, 7388, 2513, 2467, 7400, 2603, 7389, 7425, 2468, 2371, 668 669 2235, 2479, 361, 296, 182, 7409, 7432, 2249, 7455, 622, 670 2529, 227, 1008, 7505, 0, 207, 7482, 7503, 7505, 7514, 671 7535, 7536, 7544, 9159, 2413, 2526, 7567, 7571, 2546, 7593, 672 2547, 2562, 2567, 2526, 2575, 9159, 2526, 7587, 7625, 7594, 673 7631, 7632, 7648, 7657, 7668, 3179, 3203, 2672, 3229, 3335, 674 7684, 7688, 7709, 2597, 7705, 7725, 7732, 7736, 178, 7758, 675 2596, 7775, 7769, 2619, 2617, 2641, 2696, 2668, 7795, 7801, 676 7807, 2677, 2720, 3150, 7827, 7818, 7834, 7867, 7850, 2625, 677 2685, 7870, 7890, 2688, 7859, 2699, 2731, 2741, 2661, 2665, 678 9159, 7911, 7907, 7910, 7927, 7933, 7963, 2822, 3360, 3384, 679 680 3411, 4103, 4220, 7959, 2702, 7970, 7966, 2741, 7986, 2738, 681 8003, 8019, 2758, 9159, 2765, 2781, 2809, 2818, 8030, 8026, 682 2900, 2883, 2903, 2951, 8042, 8051, 2820, 2829, 8063, 8086, 683 9159, 2838, 9159, 2846, 9159, 2846, 8088, 8090, 8113, 8134, 684 3067, 4430, 2880, 8136, 175, 2911, 8125, 8156, 2877, 9159, 685 1190, 2938, 2908, 8157, 3034, 3081, 3049, 3028, 8173, 2959, 686 2985, 8189, 8182, 3029, 9159, 3039, 8205, 8212, 8214, 3241, 687 4684, 3056, 8235, 3049, 9159, 3056, 3212, 3072, 0, 8237, 688 1210, 3169, 3157, 144, 3103, 3103, 8257, 8260, 9159, 3110, 689 8283, 3255, 4708, 3110, 8290, 123, 9159, 3235, 3207, 3329, 690 691 3387, 3558, 3232, 3256, 8306, 8313, 3278, 8315, 8396, 4870, 692 3259, 8391, 3280, 3664, 0, 3349, 3414, 9159, 103, 9159, 693 3346, 8392, 9159, 3745, 4900, 8473, 3347, 8450, 90, 1237, 694 1328, 3570, 8470, 4973, 4977, 3380, 8471, 9159, 3676, 3645, 695 9159, 9159, 3693, 3608, 3764, 3684, 3616, 1433, 3705, 3782, 696 3810, 3774, 3875, 9159, 3852, 3697, 3910, 3892, 3896, 9159, 697 9159, 8553, 8565, 8577, 8589, 8601, 8613, 8621, 8623, 8635, 698 8647, 8659, 8671, 8678, 8687, 8699, 8711, 8723, 8735, 8747, 699 8754, 8762, 8774, 8786, 8798, 8810, 8822, 8834, 8846, 8858, 700 8870, 8882, 8894, 8906, 8918, 8930, 8942, 8954, 8966, 8978, 701 702 8990, 9002, 9014, 9026, 9038, 9050, 9062, 9074, 9086, 9098, 703 9110, 9122, 9134, 9146 608 704 } ; 609 705 610 static yyconst short int yy_def[1180] =706 static yyconst flex_int16_t yy_def[1215] = 611 707 { 0, 612 1123, 1, 1124, 1124, 1, 2, 1125, 1125, 1, 2, 613 1, 2, 1123, 1123, 1123, 1123, 1123, 1126, 1127, 1123, 614 1123, 1128, 1129, 1123, 1123, 1123, 1123, 1123, 1130, 1123, 615 1123, 1123, 1123, 1131, 1131, 35, 35, 35, 35, 38, 616 38, 38, 38, 38, 38, 38, 38, 38, 38, 37, 617 37, 1123, 1123, 1123, 1132, 1133, 37, 38, 38, 37, 618 38, 1123, 1134, 1123, 1134, 1135, 1123, 1123, 1123, 1123, 619 1123, 1123, 1123, 1126, 1126, 1126, 1127, 1123, 1127, 1127, 620 1128, 1123, 1128, 1128, 1129, 1136, 1129, 1123, 1129, 1129, 621 1123, 1123, 1123, 1137, 1123, 1123, 1123, 1123, 1123, 1123, 622 623 1123, 1123, 1138, 1130, 1123, 1123, 38, 38, 38, 38, 624 38, 38, 35, 38, 38, 115, 115, 115, 115, 115, 625 115, 115, 115, 1131, 115, 115, 115, 115, 115, 115, 626 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 627 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 628 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 629 115, 115, 115, 115, 1123, 1123, 1139, 1123, 1123, 1123, 630 1123, 1123, 1123, 1123, 1123, 1123, 1140, 1132, 1123, 1132, 631 1132, 1132, 1140, 1141, 1142, 115, 115, 115, 115, 115, 632 115, 1134, 1123, 1134, 1143, 1143, 1123, 1143, 1143, 1143, 633 634 1144, 1143, 1123, 203, 203, 203, 203, 203, 1123, 1123, 635 1123, 1126, 1126, 1127, 1127, 1128, 1128, 1136, 1136, 1136, 636 1136, 1123, 1129, 1129, 1145, 1146, 1147, 1123, 1123, 1123, 637 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1148, 1149, 638 1150, 1151, 1152, 1153, 115, 115, 115, 115, 115, 115, 639 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 640 115, 1154, 124, 115, 115, 115, 115, 115, 115, 115, 641 115, 115, 115, 115, 115, 115, 115, 1123, 115, 1123, 642 1123, 115, 115, 115, 115, 115, 115, 115, 115, 115, 643 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 644 645 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 646 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 647 115, 115, 115, 1123, 1123, 1123, 1123, 1139, 1123, 1123, 648 1123, 1123, 1123, 1123, 1123, 1155, 1155, 1132, 1132, 1132, 649 1156, 1142, 1142, 1142, 1142, 115, 115, 115, 115, 115, 650 115, 1134, 1143, 1143, 1123, 1143, 1143, 1144, 1144, 1144, 651 1144, 1143, 1143, 203, 203, 1143, 203, 203, 203, 203, 652 1123, 1123, 1123, 1126, 1126, 1127, 1127, 1128, 1128, 1136, 653 1129, 1129, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 654 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 655 656 1148, 1123, 1123, 1123, 1123, 1123, 1123, 1157, 1153, 1158, 657 115, 115, 1123, 115, 115, 115, 115, 115, 115, 115, 658 115, 115, 115, 115, 115, 115, 115, 115, 1123, 115, 659 115, 115, 115, 1123, 1123, 115, 115, 115, 115, 115, 660 115, 115, 115, 115, 1123, 1123, 115, 1123, 115, 115, 661 115, 115, 115, 1123, 115, 115, 115, 115, 115, 115, 662 115, 115, 1123, 1123, 115, 115, 1123, 1123, 115, 115, 663 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 664 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 665 115, 115, 115, 115, 115, 115, 115, 115, 1123, 1123, 666 667 115, 115, 115, 115, 115, 115, 1123, 1123, 1123, 1123, 668 1123, 1123, 1123, 1123, 1123, 1123, 1159, 1159, 1132, 1132, 669 1132, 1160, 1142, 1142, 115, 115, 115, 115, 115, 1123, 670 1134, 1143, 1143, 1144, 1144, 1143, 1143, 1143, 203, 203, 671 203, 203, 1123, 1161, 1123, 1126, 1162, 1127, 1163, 1128, 672 1164, 1129, 1165, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 673 1123, 1123, 115, 1123, 115, 115, 115, 115, 115, 115, 674 115, 115, 115, 115, 1123, 115, 115, 115, 1123, 115, 675 115, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 115, 676 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 677 678 115, 1123, 1123, 115, 115, 115, 1123, 1123, 115, 115, 679 115, 1123, 115, 115, 115, 115, 115, 115, 115, 115, 680 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 681 115, 115, 115, 115, 115, 1123, 115, 115, 115, 115, 682 115, 1123, 115, 115, 115, 115, 1123, 1123, 1123, 1123, 683 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1132, 1132, 1166, 684 1167, 1142, 1168, 1123, 1123, 115, 115, 1123, 115, 1123, 685 1123, 1123, 1134, 1143, 1169, 1144, 1170, 1143, 1143, 1143, 686 1143, 203, 203, 1123, 203, 1171, 1123, 1123, 1172, 1126, 687 1173, 1127, 1123, 1174, 1128, 1175, 1129, 1129, 1123, 1123, 688 689 1123, 1123, 115, 115, 115, 115, 115, 115, 115, 115, 690 115, 115, 1123, 115, 115, 115, 1123, 1123, 115, 115, 691 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 692 115, 115, 115, 115, 115, 115, 115, 115, 115, 1123, 693 1123, 115, 115, 115, 115, 115, 115, 115, 115, 115, 694 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 695 115, 115, 115, 115, 1123, 115, 115, 115, 115, 115, 696 115, 115, 1123, 1123, 1123, 1123, 1123, 1123, 655, 1132, 697 1176, 1132, 1142, 1168, 1168, 115, 115, 115, 1134, 1177, 698 1143, 1144, 1170, 1170, 1123, 1143, 203, 203, 1123, 1123, 699 700 1126, 1127, 1123, 1128, 1129, 1129, 1123, 1123, 115, 115, 701 115, 115, 115, 115, 115, 115, 115, 1123, 1123, 115, 702 115, 115, 1123, 1123, 115, 1123, 1123, 1123, 1123, 1123, 703 1123, 1123, 1123, 115, 115, 115, 115, 115, 115, 115, 704 115, 115, 115, 1123, 1178, 115, 115, 115, 115, 115, 705 115, 115, 115, 1123, 115, 115, 115, 115, 115, 115, 706 115, 1123, 1123, 115, 1123, 115, 115, 1123, 1123, 1123, 707 1132, 1132, 1142, 115, 115, 1123, 1134, 1143, 1144, 1143, 708 203, 203, 115, 115, 115, 115, 115, 115, 115, 1123, 709 1123, 1123, 115, 115, 1123, 115, 1123, 1123, 1123, 1123, 710 711 1123, 1123, 1123, 1123, 115, 115, 115, 115, 115, 115, 712 115, 115, 115, 1178, 1123, 1179, 1178, 115, 115, 115, 713 115, 1123, 115, 115, 115, 115, 1123, 115, 1123, 115, 714 115, 1123, 1123, 1132, 1142, 115, 115, 1134, 1144, 115, 715 115, 115, 115, 115, 1123, 1123, 115, 115, 1123, 115, 716 1123, 1123, 1123, 1123, 1123, 1123, 1123, 115, 115, 115, 717 115, 115, 115, 115, 1123, 1179, 1178, 1179, 1179, 115, 718 115, 1123, 115, 115, 1123, 115, 1123, 115, 115, 1123, 719 1123, 1132, 1142, 1142, 115, 1134, 1144, 1144, 115, 115, 720 1123, 1123, 115, 115, 1123, 1123, 1123, 1123, 1123, 1123, 721 722 1123, 115, 115, 115, 115, 115, 1123, 1178, 1123, 115, 723 1123, 1123, 115, 115, 1123, 1132, 1142, 1142, 115, 1134, 724 1144, 1144, 115, 1123, 1123, 115, 115, 1123, 1123, 1123, 725 1123, 115, 115, 115, 115, 1123, 1178, 1123, 115, 1123, 726 1123, 1123, 1132, 1142, 1142, 115, 1134, 1144, 1144, 1123, 727 1123, 115, 115, 1123, 1123, 1123, 115, 115, 1123, 1178, 728 1123, 115, 1123, 1123, 1132, 1142, 1134, 1144, 1123, 1123, 729 115, 115, 1123, 1123, 115, 1123, 1178, 1123, 115, 1123, 730 1132, 1142, 1134, 1144, 1123, 1123, 115, 1123, 1178, 1178, 731 1123, 115, 1123, 1132, 1134, 1123, 115, 1178, 1179, 1123, 732 733 115, 1123, 1132, 1134, 1123, 1123, 1132, 1134, 1132, 1134, 734 1132, 1134, 1132, 1134, 1132, 1134, 1123, 1134, 1134, 1134, 735 1134, 1123, 0, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 736 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 737 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 738 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 739 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 740 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123 708 1161, 1, 1162, 1162, 1, 2, 1163, 1163, 1, 2, 709 1, 2, 1161, 1161, 1161, 1161, 1161, 1164, 1165, 1161, 710 1161, 1166, 1167, 1161, 1161, 1161, 1161, 1161, 1161, 1168, 711 1161, 1161, 1161, 1161, 1169, 1169, 36, 36, 36, 36, 712 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 713 36, 36, 1161, 1161, 53, 1170, 1161, 36, 36, 36, 714 36, 36, 36, 1161, 1171, 1161, 1171, 1171, 1171, 1161, 715 1161, 1172, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 716 1164, 1164, 1164, 1165, 1161, 1165, 1165, 1166, 1161, 1166, 717 1166, 1167, 1173, 1167, 1161, 1167, 1167, 1161, 1161, 1161, 718 719 1174, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1175, 720 1161, 1161, 1161, 36, 36, 36, 36, 36, 36, 36, 721 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 722 1169, 36, 36, 36, 36, 36, 36, 36, 36, 36, 723 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 724 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 725 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 726 36, 36, 53, 173, 1176, 1161, 1161, 1161, 1161, 1161, 727 1161, 1161, 173, 1161, 173, 1161, 1170, 1161, 1170, 1170, 728 1170, 1161, 1161, 1177, 36, 36, 36, 36, 36, 36, 729 730 36, 1171, 1161, 1171, 1171, 1171, 1171, 1178, 1179, 1179, 731 1161, 1179, 1179, 1179, 1180, 1179, 1161, 217, 217, 217, 732 217, 217, 1161, 1161, 1161, 1164, 1164, 1165, 1165, 1166, 733 1166, 1173, 1173, 1173, 1173, 1161, 1167, 1167, 1161, 1161, 734 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 735 1161, 1161, 1181, 1161, 1161, 1161, 1161, 1161, 36, 36, 736 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 737 36, 36, 36, 36, 36, 1182, 131, 36, 36, 36, 738 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 739 36, 1161, 36, 1161, 1161, 36, 36, 36, 36, 36, 740 741 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 742 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 743 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 744 36, 36, 36, 36, 36, 36, 36, 36, 173, 173, 745 1161, 173, 1176, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 746 185, 1161, 1161, 1170, 1170, 1170, 1161, 1177, 1177, 1177, 747 1177, 36, 36, 36, 36, 36, 36, 36, 1171, 1171, 748 1183, 1183, 1161, 1179, 1179, 1161, 1179, 1179, 1180, 1180, 749 1180, 1180, 1179, 1179, 217, 217, 1179, 217, 217, 217, 750 217, 1161, 1161, 1161, 1164, 1164, 1165, 1165, 1166, 1166, 751 752 1173, 1167, 1167, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 753 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 754 1161, 1181, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 755 1161, 1161, 36, 36, 36, 36, 36, 36, 36, 36, 756 36, 36, 36, 36, 36, 36, 36, 36, 36, 1161, 757 36, 36, 36, 36, 1161, 1161, 36, 36, 36, 36, 758 36, 36, 36, 36, 36, 1161, 1161, 36, 1161, 36, 759 36, 36, 36, 36, 1161, 36, 36, 36, 36, 36, 760 36, 36, 36, 1161, 1161, 36, 36, 1161, 1161, 36, 761 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 762 763 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 764 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 765 1161, 1161, 36, 36, 36, 36, 36, 36, 173, 173, 766 173, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 185, 1161, 767 1161, 1170, 1170, 1170, 1161, 1177, 1177, 36, 36, 36, 768 36, 36, 36, 1161, 1171, 1171, 1171, 1183, 1183, 1161, 769 1179, 1179, 1180, 1180, 1179, 1179, 1179, 217, 217, 217, 770 217, 1161, 1184, 1161, 1164, 1185, 1165, 1186, 1187, 1188, 771 1189, 1190, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 772 1161, 36, 36, 1161, 36, 36, 36, 36, 36, 36, 773 774 36, 36, 36, 1161, 36, 36, 36, 1161, 36, 36, 775 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 36, 36, 776 36, 36, 36, 36, 36, 36, 36, 36, 36, 1161, 777 1161, 36, 36, 36, 1161, 1161, 36, 36, 36, 1161, 778 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 779 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 780 36, 36, 36, 1161, 36, 36, 36, 36, 36, 1161, 781 36, 36, 36, 36, 173, 173, 173, 1161, 1161, 1161, 782 1161, 1161, 1161, 173, 1161, 1161, 1170, 1170, 1191, 1161, 783 1177, 1192, 1161, 1161, 36, 36, 1161, 36, 36, 1161, 784 785 1161, 1161, 1171, 1171, 1179, 1193, 1180, 1194, 1179, 1179, 786 1179, 1179, 217, 217, 1161, 217, 1195, 1161, 1161, 1196, 787 1197, 1198, 1199, 1161, 1200, 1201, 1202, 1203, 1203, 1161, 788 1161, 1161, 36, 1161, 36, 36, 36, 36, 36, 36, 789 36, 36, 36, 1161, 36, 36, 36, 1161, 1161, 36, 790 36, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 791 36, 36, 36, 36, 36, 36, 36, 36, 1161, 1161, 792 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 793 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 794 36, 36, 36, 1161, 36, 36, 36, 36, 36, 36, 795 796 36, 1161, 802, 802, 1161, 1161, 1161, 1161, 802, 1204, 797 1205, 1204, 1206, 1207, 1207, 36, 36, 36, 36, 1208, 798 1208, 1209, 1210, 1211, 1212, 1212, 1161, 1210, 1161, 829, 799 1161, 1161, 1161, 1197, 1199, 1161, 1201, 1203, 1203, 1161, 800 1161, 36, 36, 36, 36, 36, 36, 36, 36, 36, 801 1161, 1161, 36, 36, 36, 1161, 1161, 36, 1161, 1161, 802 1161, 1161, 1161, 1161, 1161, 36, 36, 36, 36, 36, 803 36, 36, 36, 36, 1161, 1213, 36, 36, 36, 36, 804 36, 36, 36, 1161, 36, 36, 36, 36, 36, 36, 805 36, 36, 1161, 1161, 36, 1161, 36, 36, 1161, 1161, 806 807 1161, 1161, 1204, 1204, 1206, 36, 36, 1161, 36, 1208, 808 1208, 1210, 1211, 1210, 829, 829, 36, 36, 36, 36, 809 36, 36, 36, 1161, 1161, 1161, 36, 36, 1161, 36, 810 1161, 1161, 1161, 1161, 1161, 1161, 1161, 36, 36, 36, 811 36, 36, 36, 36, 36, 1213, 1213, 1161, 1214, 1213, 812 36, 36, 36, 1161, 36, 36, 36, 36, 1161, 36, 813 1161, 36, 36, 1161, 1161, 1161, 1204, 1206, 36, 36, 814 36, 1208, 1208, 1211, 36, 36, 36, 36, 36, 1161, 815 1161, 36, 36, 1161, 36, 1161, 1161, 1161, 1161, 1161, 816 1161, 36, 36, 36, 36, 36, 36, 1161, 1214, 1214, 817 818 1213, 1214, 1214, 36, 1161, 36, 36, 1161, 36, 1161, 819 36, 36, 1161, 1161, 1161, 1204, 1206, 1206, 36, 36, 820 1208, 1208, 1211, 1211, 36, 36, 1161, 1161, 36, 36, 821 1161, 1161, 1161, 1161, 1161, 1161, 36, 36, 36, 36, 822 1161, 1213, 1161, 36, 1161, 1161, 36, 36, 1161, 1161, 823 1204, 1206, 1206, 36, 1208, 1208, 1211, 1211, 36, 1161, 824 1161, 36, 36, 1161, 1161, 1161, 36, 36, 36, 1161, 825 1213, 1161, 36, 1161, 1161, 1161, 1204, 1206, 1206, 36, 826 1208, 1208, 1211, 1211, 1161, 1161, 36, 36, 1161, 1161, 827 36, 1161, 1213, 1161, 36, 1161, 1161, 1204, 1206, 1208, 828 829 1208, 1211, 1161, 1161, 36, 36, 1161, 36, 1161, 1213, 830 1161, 36, 1161, 1204, 1206, 1208, 1208, 1161, 1211, 1161, 831 1161, 36, 1161, 1161, 1213, 1213, 1161, 36, 1161, 1204, 832 1208, 1161, 36, 1213, 1214, 1161, 36, 1161, 1204, 1208, 833 1161, 1161, 1204, 1208, 1204, 1208, 1204, 1208, 1204, 1208, 834 1204, 1208, 1204, 1161, 1208, 1208, 1208, 1208, 1208, 1161, 835 0, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 836 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 837 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 838 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 839 840 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 841 1161, 1161, 1161, 1161 741 842 } ; 742 843 743 static yyconst short int yy_nxt[4253] =844 static yyconst flex_int16_t yy_nxt[9249] = 744 845 { 0, 745 846 14, 15, 16, 17, 18, 19, 14, 20, 21, 22, 746 23, 24, 21, 25, 21, 26, 21, 27, 28, 29, 747 29, 29, 29, 29, 29, 29, 29, 29, 21, 30, 748 31, 32, 33, 21, 21, 34, 35, 36, 37, 38, 749 39, 40, 41, 34, 42, 34, 34, 43, 44, 45, 750 46, 47, 34, 48, 49, 50, 34, 34, 51, 34, 751 34, 34, 14, 52, 53, 54, 55, 64, 66, 65, 752 70, 72, 71, 72, 82, 71, 68, 73, 75, 92, 753 78, 56, 56, 56, 56, 56, 56, 56, 56, 56, 754 69, 68, 76, 67, 68, 86, 91, 68, 103, 102, 755 756 57, 58, 87, 88, 59, 69, 68, 68, 69, 68, 757 68, 69, 68, 83, 193, 68, 79, 60, 61, 68, 758 69, 69, 68, 69, 69, 210, 69, 84, 68, 69, 759 80, 105, 333, 69, 89, 72, 69, 72, 78, 70, 760 68, 71, 69, 108, 116, 108, 108, 131, 90, 93, 761 132, 93, 78, 133, 69, 108, 185, 108, 82, 134, 762 193, 1020, 108, 110, 71, 194, 71, 94, 94, 94, 763 94, 94, 94, 94, 94, 94, 211, 108, 211, 1122, 764 71, 108, 73, 214, 95, 186, 215, 135, 96, 68, 765 97, 108, 108, 136, 82, 98, 108, 99, 100, 187, 766 767 137, 138, 108, 69, 366, 254, 108, 101, 106, 217, 768 107, 107, 107, 107, 107, 107, 107, 107, 107, 117, 769 108, 108, 108, 225, 226, 108, 118, 179, 216, 108, 770 119, 108, 109, 120, 86, 139, 227, 108, 110, 108, 771 369, 87, 88, 121, 230, 255, 110, 106, 108, 107, 772 107, 107, 107, 107, 107, 107, 107, 107, 232, 231, 773 153, 338, 108, 108, 108, 122, 234, 111, 112, 123, 774 108, 109, 108, 233, 108, 124, 235, 113, 108, 125, 775 110, 108, 108, 1117, 114, 115, 140, 366, 366, 253, 776 108, 126, 396, 127, 141, 108, 128, 129, 108, 110, 777 778 142, 143, 108, 130, 108, 108, 108, 367, 370, 144, 779 108, 146, 108, 147, 108, 145, 108, 149, 148, 108, 780 108, 108, 154, 179, 191, 108, 155, 397, 180, 179, 781 156, 150, 160, 314, 151, 108, 108, 152, 157, 161, 782 108, 158, 159, 108, 108, 193, 108, 315, 260, 162, 783 108, 163, 329, 183, 108, 108, 108, 189, 108, 168, 784 135, 164, 181, 339, 108, 108, 330, 103, 108, 165, 785 243, 166, 167, 160, 243, 103, 182, 168, 86, 352, 786 161, 196, 197, 196, 108, 87, 88, 108, 1106, 390, 787 162, 68, 168, 198, 219, 220, 219, 190, 168, 1123, 788 789 82, 108, 221, 222, 86, 69, 169, 170, 86, 68, 790 171, 87, 88, 1123, 108, 87, 88, 108, 270, 252, 791 108, 199, 259, 172, 173, 174, 175, 176, 167, 391, 792 337, 108, 267, 168, 108, 200, 168, 108, 223, 108, 793 108, 366, 268, 177, 177, 177, 177, 177, 177, 177, 794 177, 177, 256, 257, 379, 1105, 108, 108, 258, 224, 795 108, 108, 169, 170, 683, 68, 171, 243, 243, 243, 796 243, 243, 243, 243, 243, 243, 282, 276, 108, 172, 797 173, 195, 196, 197, 196, 195, 195, 195, 201, 195, 798 195, 195, 195, 195, 195, 195, 195, 195, 202, 195, 799 800 203, 203, 203, 203, 203, 203, 203, 203, 203, 195, 801 195, 195, 195, 195, 195, 195, 204, 186, 204, 204, 802 204, 204, 205, 204, 118, 204, 204, 204, 206, 204, 803 204, 187, 204, 204, 204, 204, 207, 204, 204, 204, 804 204, 208, 204, 195, 93, 179, 93, 108, 108, 244, 805 245, 108, 78, 108, 108, 108, 78, 108, 108, 179, 806 108, 108, 108, 82, 108, 261, 197, 1102, 108, 108, 807 108, 266, 108, 108, 108, 108, 108, 108, 108, 95, 808 108, 108, 108, 96, 108, 97, 108, 108, 247, 108, 809 98, 549, 99, 100, 376, 275, 340, 108, 108, 519, 810 811 269, 108, 101, 239, 239, 239, 239, 239, 239, 239, 812 239, 239, 108, 108, 277, 550, 108, 357, 108, 82, 813 108, 303, 108, 240, 241, 246, 108, 108, 108, 108, 814 108, 108, 108, 108, 108, 337, 242, 108, 248, 108, 815 249, 168, 108, 108, 274, 108, 108, 108, 108, 250, 816 108, 291, 278, 251, 278, 108, 108, 108, 108, 108, 817 108, 108, 108, 337, 378, 179, 108, 108, 287, 168, 818 246, 108, 108, 262, 271, 262, 366, 103, 366, 108, 819 280, 272, 280, 108, 108, 273, 108, 108, 283, 106, 820 281, 263, 263, 263, 263, 263, 263, 263, 263, 263, 821 822 284, 108, 285, 108, 108, 286, 279, 288, 108, 108, 823 108, 368, 290, 540, 366, 245, 108, 659, 518, 108, 824 108, 289, 108, 292, 168, 108, 108, 108, 264, 293, 825 265, 294, 108, 108, 108, 108, 313, 108, 295, 108, 826 108, 297, 108, 304, 539, 305, 108, 108, 300, 1100, 827 301, 108, 298, 296, 244, 299, 302, 108, 310, 108, 828 108, 306, 307, 108, 108, 308, 108, 309, 108, 316, 829 108, 108, 311, 108, 320, 354, 355, 354, 108, 312, 830 317, 321, 322, 108, 318, 108, 108, 108, 319, 324, 831 108, 325, 167, 108, 323, 108, 327, 168, 325, 167, 832 833 108, 108, 193, 108, 168, 343, 108, 343, 327, 78, 834 325, 167, 253, 373, 349, 373, 168, 108, 108, 346, 835 78, 108, 197, 108, 108, 348, 169, 170, 351, 383, 836 171, 383, 366, 169, 170, 108, 350, 171, 108, 179, 837 344, 108, 531, 326, 173, 169, 170, 256, 347, 171, 838 326, 173, 108, 258, 345, 691, 356, 359, 197, 359, 839 377, 220, 326, 173, 327, 175, 335, 167, 380, 222, 840 220, 541, 168, 86, 385, 197, 385, 380, 222, 1096, 841 87, 88, 336, 336, 336, 336, 336, 336, 336, 336, 842 336, 86, 360, 521, 197, 219, 220, 219, 87, 88, 843 844 108, 169, 170, 221, 222, 171, 361, 219, 220, 219, 845 387, 411, 387, 225, 226, 221, 222, 108, 326, 173, 846 197, 402, 404, 402, 404, 518, 227, 382, 406, 533, 847 406, 168, 343, 545, 343, 545, 381, 362, 362, 362, 848 362, 362, 362, 362, 362, 362, 353, 353, 197, 353, 849 353, 353, 353, 353, 353, 353, 353, 353, 353, 353, 850 353, 353, 353, 363, 353, 364, 364, 364, 364, 364, 851 364, 364, 364, 364, 353, 353, 353, 353, 353, 353, 852 353, 365, 365, 365, 365, 365, 365, 365, 365, 365, 853 365, 365, 365, 365, 365, 365, 365, 365, 365, 365, 854 855 365, 365, 365, 365, 365, 365, 365, 365, 353, 108, 856 413, 108, 657, 108, 280, 366, 280, 108, 168, 108, 857 108, 1093, 108, 108, 281, 415, 108, 418, 108, 412, 858 108, 414, 416, 417, 108, 108, 108, 108, 108, 420, 859 108, 421, 108, 108, 108, 542, 108, 108, 1091, 419, 860 428, 425, 108, 432, 422, 108, 108, 423, 426, 108, 861 108, 108, 424, 108, 108, 108, 430, 427, 108, 108, 862 108, 108, 108, 108, 451, 431, 433, 444, 108, 445, 863 366, 445, 108, 108, 1088, 108, 108, 449, 108, 108, 864 434, 108, 434, 108, 108, 108, 447, 448, 450, 108, 865 866 108, 453, 278, 684, 278, 452, 108, 108, 1086, 446, 867 108, 108, 108, 1085, 108, 108, 108, 456, 108, 108, 868 435, 455, 179, 108, 108, 108, 457, 1082, 436, 108, 869 437, 108, 108, 438, 197, 108, 108, 439, 458, 459, 870 440, 108, 108, 441, 442, 460, 108, 443, 108, 463, 871 467, 463, 467, 108, 462, 108, 454, 472, 461, 464, 872 468, 478, 108, 108, 108, 108, 474, 520, 471, 108, 873 108, 1080, 108, 108, 473, 108, 108, 108, 108, 108, 874 535, 108, 476, 477, 108, 108, 108, 108, 475, 480, 875 108, 479, 108, 108, 498, 465, 469, 108, 108, 108, 876 877 481, 108, 108, 483, 108, 466, 470, 108, 482, 484, 878 485, 108, 108, 108, 108, 108, 108, 1078, 486, 487, 879 108, 490, 108, 108, 108, 108, 491, 492, 108, 108, 880 108, 488, 489, 493, 108, 108, 78, 108, 108, 108, 881 108, 494, 108, 108, 495, 108, 499, 108, 499, 108, 882 501, 108, 108, 497, 496, 108, 500, 108, 503, 504, 883 108, 108, 108, 502, 108, 507, 505, 508, 167, 518, 884 197, 108, 108, 168, 108, 168, 525, 530, 108, 527, 885 506, 108, 197, 103, 509, 548, 508, 167, 108, 108, 886 526, 509, 168, 508, 167, 1074, 108, 197, 108, 168, 887 888 108, 528, 169, 170, 82, 179, 171, 108, 193, 108, 889 108, 529, 354, 355, 354, 532, 559, 108, 559, 326, 890 173, 169, 170, 220, 108, 171, 108, 108, 169, 170, 891 380, 222, 171, 359, 197, 359, 1068, 534, 326, 173, 892 108, 561, 551, 561, 86, 326, 173, 509, 175, 516, 893 167, 87, 88, 86, 1073, 168, 658, 108, 563, 673, 894 87, 88, 445, 1070, 445, 517, 517, 517, 517, 517, 895 517, 517, 517, 517, 384, 384, 384, 384, 384, 384, 896 384, 384, 384, 657, 169, 170, 225, 226, 171, 168, 897 366, 553, 446, 688, 1069, 688, 552, 108, 108, 227, 898 899 565, 326, 173, 197, 384, 384, 384, 384, 384, 384, 900 384, 384, 384, 685, 108, 108, 179, 668, 197, 668, 901 362, 362, 362, 362, 362, 362, 362, 362, 362, 386, 902 386, 386, 386, 386, 386, 386, 386, 386, 108, 108, 903 197, 536, 197, 386, 386, 386, 386, 386, 386, 386, 904 386, 386, 168, 197, 660, 108, 108, 566, 168, 537, 905 537, 537, 537, 537, 537, 537, 537, 537, 388, 388, 906 388, 388, 388, 388, 388, 388, 388, 108, 567, 108, 907 538, 197, 388, 388, 388, 388, 388, 388, 388, 388, 908 388, 675, 674, 569, 108, 108, 108, 1066, 362, 362, 909 910 362, 362, 362, 362, 362, 362, 362, 403, 403, 403, 911 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 912 403, 403, 403, 403, 403, 405, 405, 405, 405, 405, 913 405, 405, 405, 405, 405, 405, 405, 405, 405, 405, 914 405, 405, 405, 407, 407, 407, 407, 407, 407, 407, 847 23, 24, 25, 26, 25, 27, 25, 28, 29, 30, 848 30, 30, 30, 30, 30, 30, 30, 30, 30, 25, 849 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 850 41, 42, 43, 42, 42, 44, 45, 46, 47, 48, 851 42, 49, 50, 51, 42, 42, 52, 42, 42, 42, 852 25, 25, 42, 35, 36, 37, 38, 39, 40, 41, 853 42, 43, 42, 44, 45, 46, 47, 48, 42, 49, 854 50, 51, 42, 42, 52, 42, 42, 42, 14, 53, 855 54, 55, 56, 71, 67, 66, 67, 68, 76, 77, 856 857 78, 203, 1138, 74, 72, 211, 206, 57, 57, 57, 858 57, 57, 57, 57, 57, 57, 57, 75, 79, 77, 859 79, 79, 77, 79, 58, 59, 82, 73, 60, 85, 860 61, 69, 74, 78, 77, 80, 74, 74, 74, 1113, 861 83, 62, 63, 176, 89, 75, 211, 74, 99, 176, 862 75, 75, 75, 58, 59, 82, 73, 60, 224, 61, 863 69, 75, 115, 86, 203, 74, 74, 74, 83, 62, 864 63, 74, 98, 74, 74, 93, 74, 87, 75, 75, 865 75, 90, 94, 95, 109, 75, 224, 75, 75, 75, 866 1074, 115, 86, 74, 1008, 91, 110, 529, 223, 530, 867 868 74, 226, 74, 74, 531, 87, 530, 75, 227, 207, 869 90, 74, 96, 75, 74, 75, 75, 74, 74, 74, 870 115, 346, 74, 91, 387, 75, 97, 223, 75, 211, 871 226, 75, 75, 75, 142, 75, 227, 207, 115, 176, 872 74, 96, 161, 74, 968, 176, 74, 74, 74, 115, 873 346, 203, 112, 75, 97, 100, 75, 100, 74, 75, 874 75, 75, 142, 76, 77, 78, 410, 115, 204, 203, 875 204, 161, 75, 101, 101, 101, 101, 101, 101, 101, 876 101, 101, 101, 85, 115, 115, 370, 74, 102, 143, 877 115, 538, 103, 74, 104, 410, 144, 145, 188, 105, 878 879 75, 106, 107, 201, 146, 205, 89, 75, 79, 77, 880 79, 108, 228, 115, 115, 370, 89, 102, 143, 115, 881 538, 103, 74, 104, 144, 145, 85, 105, 546, 106, 882 107, 201, 146, 85, 205, 75, 78, 77, 78, 108, 883 113, 228, 114, 114, 114, 114, 114, 114, 114, 114, 884 114, 114, 115, 115, 387, 231, 129, 546, 116, 117, 885 130, 138, 118, 188, 139, 242, 131, 140, 119, 243, 886 132, 250, 229, 141, 89, 120, 121, 225, 77, 225, 887 211, 115, 115, 231, 531, 129, 530, 116, 117, 130, 888 138, 118, 139, 242, 131, 140, 119, 243, 132, 250, 889 890 229, 141, 251, 120, 121, 113, 230, 114, 114, 114, 891 114, 114, 114, 114, 114, 114, 114, 347, 124, 359, 892 115, 359, 122, 967, 211, 125, 147, 118, 211, 126, 893 251, 133, 127, 134, 148, 230, 135, 136, 150, 203, 894 149, 123, 128, 137, 188, 347, 151, 124, 573, 115, 895 348, 122, 152, 350, 125, 147, 118, 126, 153, 133, 896 127, 134, 157, 148, 135, 136, 168, 150, 149, 123, 897 128, 137, 115, 169, 188, 151, 158, 573, 348, 159, 898 152, 350, 160, 170, 207, 154, 153, 155, 244, 162, 899 387, 157, 156, 163, 675, 168, 676, 164, 576, 115, 900 901 604, 115, 169, 245, 158, 165, 171, 159, 166, 167, 902 160, 170, 207, 154, 678, 155, 172, 244, 162, 804, 903 156, 389, 163, 78, 77, 80, 164, 576, 115, 604, 904 677, 245, 676, 165, 93, 171, 166, 167, 183, 184, 905 185, 94, 95, 678, 172, 173, 77, 174, 175, 389, 906 188, 392, 677, 176, 676, 189, 186, 186, 186, 186, 907 186, 186, 186, 186, 186, 186, 79, 77, 79, 93, 908 79, 77, 79, 79, 77, 79, 94, 95, 115, 392, 909 177, 178, 208, 74, 179, 208, 180, 190, 89, 198, 910 248, 188, 142, 176, 233, 234, 233, 181, 182, 176, 911 912 249, 191, 235, 236, 224, 208, 89, 115, 208, 177, 913 178, 349, 74, 179, 85, 180, 190, 198, 836, 248, 914 142, 210, 211, 210, 203, 181, 182, 211, 249, 191, 915 192, 194, 224, 212, 208, 93, 176, 208, 387, 349, 916 356, 387, 94, 95, 110, 188, 193, 193, 193, 193, 917 193, 193, 193, 193, 193, 193, 197, 391, 195, 213, 918 129, 372, 373, 372, 130, 125, 74, 237, 356, 126, 919 131, 188, 196, 214, 132, 387, 378, 354, 115, 203, 920 75, 211, 128, 143, 972, 197, 391, 195, 213, 129, 921 144, 199, 168, 130, 125, 74, 237, 126, 131, 169, 922 923 196, 214, 132, 355, 378, 393, 354, 115, 75, 170, 924 128, 369, 143, 375, 376, 375, 200, 188, 144, 199, 925 794, 168, 394, 77, 394, 731, 89, 234, 169, 724, 926 373, 234, 355, 393, 401, 236, 554, 170, 401, 236, 927 369, 559, 560, 559, 200, 209, 210, 211, 210, 209, 928 209, 209, 215, 209, 209, 209, 209, 209, 209, 209, 929 209, 209, 216, 209, 217, 217, 217, 217, 217, 217, 930 217, 217, 217, 217, 209, 209, 209, 209, 209, 195, 931 218, 218, 218, 218, 219, 218, 125, 218, 218, 218, 932 220, 218, 218, 196, 218, 218, 218, 218, 221, 218, 933 934 218, 218, 218, 222, 218, 209, 209, 218, 195, 218, 935 218, 218, 218, 219, 218, 125, 218, 218, 220, 218, 936 218, 196, 218, 218, 218, 218, 221, 218, 218, 218, 937 218, 222, 218, 209, 93, 239, 240, 246, 204, 203, 938 204, 94, 95, 395, 554, 396, 211, 802, 241, 803, 939 680, 110, 247, 111, 111, 111, 111, 111, 111, 111, 940 111, 111, 111, 587, 239, 240, 246, 375, 376, 375, 941 586, 395, 339, 396, 340, 205, 241, 258, 377, 680, 942 247, 387, 584, 238, 257, 257, 257, 257, 257, 257, 943 257, 257, 257, 257, 115, 85, 115, 261, 388, 115, 944 945 115, 115, 115, 268, 205, 115, 583, 377, 115, 89, 946 1161, 238, 100, 115, 100, 115, 115, 85, 259, 115, 947 387, 387, 115, 115, 341, 115, 261, 388, 115, 115, 948 115, 115, 268, 211, 115, 397, 419, 115, 89, 1161, 949 211, 115, 421, 115, 115, 102, 259, 115, 115, 103, 950 115, 104, 341, 115, 411, 390, 105, 450, 106, 107, 951 417, 400, 260, 397, 419, 234, 398, 115, 108, 294, 952 421, 294, 401, 236, 102, 373, 188, 115, 103, 295, 953 104, 399, 115, 390, 105, 450, 106, 107, 681, 400, 954 260, 420, 412, 418, 398, 115, 108, 253, 253, 253, 955 956 253, 253, 253, 253, 253, 253, 253, 115, 264, 399, 957 211, 416, 115, 115, 115, 254, 255, 681, 262, 115, 958 412, 418, 263, 415, 89, 265, 115, 115, 256, 414, 959 233, 234, 233, 115, 349, 258, 115, 264, 235, 236, 960 532, 115, 115, 115, 254, 255, 262, 115, 115, 266, 961 413, 263, 115, 265, 115, 115, 256, 344, 115, 387, 962 580, 115, 349, 115, 211, 533, 115, 534, 532, 188, 963 974, 345, 115, 535, 211, 265, 115, 115, 266, 115, 964 203, 115, 536, 115, 115, 188, 344, 115, 115, 580, 965 267, 537, 115, 533, 115, 534, 342, 269, 115, 345, 966 967 115, 535, 115, 265, 804, 115, 803, 542, 115, 115, 968 536, 188, 115, 115, 115, 342, 93, 115, 267, 537, 969 89, 270, 271, 94, 95, 269, 115, 272, 115, 115, 970 115, 273, 274, 387, 115, 115, 542, 115, 115, 292, 971 115, 292, 547, 115, 233, 234, 233, 275, 115, 270, 972 271, 115, 235, 236, 115, 272, 115, 682, 115, 402, 973 273, 274, 89, 115, 115, 387, 115, 85, 569, 115, 974 547, 380, 211, 380, 188, 275, 115, 203, 1161, 115, 975 211, 93, 115, 276, 188, 276, 682, 402, 94, 95, 976 203, 475, 188, 568, 387, 115, 569, 572, 70, 113, 977 978 115, 277, 277, 277, 277, 277, 277, 277, 277, 277, 979 277, 115, 203, 281, 115, 115, 115, 66, 282, 475, 980 115, 568, 280, 85, 115, 572, 544, 543, 555, 115, 981 115, 570, 562, 403, 115, 804, 278, 803, 279, 188, 982 115, 281, 115, 211, 115, 115, 115, 282, 115, 115, 983 280, 115, 1077, 115, 544, 543, 578, 555, 115, 570, 984 562, 403, 115, 284, 278, 115, 279, 115, 283, 115, 985 211, 115, 1100, 115, 115, 115, 115, 115, 115, 285, 986 115, 563, 115, 289, 288, 578, 286, 575, 115, 1161, 987 287, 284, 115, 115, 585, 115, 283, 85, 115, 1139, 988 989 115, 211, 115, 115, 115, 115, 640, 115, 285, 115, 990 563, 289, 288, 561, 286, 575, 115, 292, 287, 292, 991 115, 290, 585, 115, 115, 89, 294, 115, 294, 115, 992 203, 683, 115, 115, 640, 1161, 295, 291, 115, 387, 993 679, 561, 296, 115, 577, 564, 115, 1161, 188, 290, 994 115, 115, 466, 115, 466, 115, 115, 115, 115, 261, 995 683, 115, 115, 301, 115, 291, 1161, 571, 679, 293, 996 296, 115, 577, 564, 115, 579, 115, 1161, 115, 115, 997 115, 1161, 297, 467, 115, 115, 115, 697, 261, 697, 998 1140, 115, 301, 115, 298, 571, 299, 293, 688, 300, 999 1000 115, 1161, 115, 579, 115, 115, 115, 115, 203, 115, 1001 484, 297, 484, 691, 115, 303, 574, 77, 574, 115, 1002 485, 115, 298, 302, 299, 115, 688, 300, 304, 115, 1003 115, 115, 717, 115, 115, 203, 115, 115, 115, 1161, 1004 1161, 691, 115, 303, 115, 305, 692, 115, 1161, 115, 1005 306, 302, 115, 704, 115, 1161, 115, 304, 1161, 115, 1006 188, 717, 115, 115, 115, 1161, 115, 115, 115, 115, 1007 1161, 115, 115, 305, 692, 308, 307, 488, 306, 488, 1008 115, 704, 115, 115, 115, 1161, 115, 489, 1161, 115, 1009 310, 115, 115, 115, 115, 1150, 689, 115, 115, 521, 1010 1011 309, 521, 1161, 308, 307, 311, 752, 1161, 115, 522, 1012 115, 115, 115, 239, 240, 115, 115, 115, 115, 310, 1013 115, 115, 93, 115, 315, 689, 241, 1161, 309, 94, 1014 95, 312, 115, 311, 752, 115, 115, 115, 559, 560, 1015 559, 115, 239, 240, 1161, 115, 115, 753, 1161, 313, 1016 115, 115, 314, 315, 241, 115, 318, 115, 1161, 312, 1017 115, 115, 115, 115, 755, 316, 115, 556, 203, 556, 1018 756, 317, 581, 211, 115, 753, 115, 313, 1161, 115, 1019 314, 359, 115, 359, 115, 318, 115, 115, 319, 115, 1020 320, 115, 755, 115, 316, 556, 203, 556, 756, 317, 1021 1022 581, 115, 115, 324, 115, 1161, 321, 322, 557, 188, 1023 323, 115, 720, 115, 360, 211, 115, 319, 115, 320, 1024 115, 203, 115, 705, 325, 115, 326, 211, 361, 115, 1025 1161, 324, 115, 327, 321, 322, 557, 557, 323, 115, 1026 115, 720, 115, 360, 387, 115, 815, 115, 815, 115, 1027 759, 705, 325, 211, 115, 326, 361, 328, 687, 115, 1028 115, 327, 708, 329, 93, 557, 808, 115, 115, 115, 1029 703, 94, 95, 85, 115, 387, 707, 330, 759, 713, 1030 265, 1161, 115, 115, 331, 328, 687, 115, 115, 706, 1031 708, 697, 329, 697, 808, 332, 714, 115, 703, 851, 1032 1033 582, 1161, 115, 387, 707, 330, 722, 713, 265, 115, 1034 115, 89, 115, 331, 115, 115, 1161, 115, 706, 335, 1035 115, 1161, 333, 332, 715, 714, 334, 851, 115, 582, 1036 115, 387, 115, 1161, 115, 722, 859, 115, 115, 1161, 1037 336, 115, 1161, 115, 115, 337, 115, 725, 335, 115, 1038 333, 115, 716, 715, 334, 1161, 115, 719, 77, 719, 1039 115, 115, 115, 115, 859, 93, 115, 744, 115, 336, 1040 115, 338, 94, 95, 337, 115, 725, 93, 754, 115, 1041 760, 716, 115, 188, 729, 730, 1161, 1161, 115, 693, 1042 1161, 693, 115, 342, 184, 351, 744, 115, 861, 694, 1043 1044 338, 727, 806, 635, 815, 635, 815, 754, 862, 760, 1045 115, 352, 352, 352, 352, 352, 352, 352, 352, 352, 1046 352, 353, 807, 810, 1161, 805, 861, 176, 387, 1161, 1047 727, 806, 813, 608, 636, 608, 862, 352, 352, 352, 1048 352, 352, 352, 352, 352, 352, 352, 353, 700, 827, 1049 700, 807, 810, 176, 805, 804, 184, 809, 701, 1161, 1050 203, 813, 702, 352, 352, 352, 352, 352, 352, 352, 1051 352, 352, 352, 353, 748, 380, 211, 380, 827, 176, 1052 826, 211, 826, 856, 826, 211, 826, 110, 749, 357, 1053 357, 357, 357, 357, 357, 357, 357, 357, 357, 115, 1054 1055 820, 115, 115, 748, 115, 857, 115, 115, 381, 1161, 1056 267, 757, 856, 270, 363, 188, 749, 362, 115, 272, 1057 115, 364, 382, 832, 77, 832, 203, 758, 115, 820, 1058 115, 115, 211, 115, 857, 115, 115, 381, 267, 115, 1059 757, 270, 363, 1161, 115, 362, 115, 272, 115, 364, 1060 382, 811, 702, 365, 702, 758, 115, 1161, 115, 115, 1061 115, 115, 297, 368, 115, 115, 702, 860, 115, 863, 1062 1161, 367, 824, 115, 298, 115, 299, 821, 115, 366, 1063 811, 365, 864, 901, 1161, 115, 115, 1161, 115, 115, 1064 115, 297, 368, 115, 115, 211, 860, 1161, 863, 367, 1065 1066 1161, 824, 298, 115, 299, 821, 115, 366, 1161, 1161, 1067 864, 901, 383, 383, 383, 383, 383, 383, 383, 383, 1068 383, 383, 374, 374, 211, 374, 374, 374, 374, 374, 1069 374, 374, 374, 374, 374, 374, 374, 374, 374, 384, 1070 374, 385, 385, 385, 385, 385, 385, 385, 385, 385, 1071 385, 374, 374, 374, 374, 374, 386, 386, 386, 386, 1072 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 1073 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 1074 386, 386, 374, 374, 386, 386, 386, 386, 386, 386, 1075 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 1076 1077 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 1078 374, 404, 1161, 404, 932, 865, 405, 405, 405, 405, 1079 405, 405, 405, 405, 405, 405, 406, 1161, 406, 935, 1080 899, 407, 407, 407, 407, 407, 407, 407, 407, 407, 1081 407, 408, 932, 408, 865, 900, 409, 409, 409, 409, 1082 409, 409, 409, 409, 409, 409, 423, 935, 423, 899, 1083 1161, 424, 424, 424, 424, 424, 424, 424, 424, 424, 1084 424, 425, 1161, 425, 900, 1161, 426, 426, 426, 426, 1085 426, 426, 426, 426, 426, 426, 427, 902, 427, 432, 1086 937, 428, 428, 428, 428, 428, 428, 428, 428, 428, 1087 1088 428, 257, 257, 257, 257, 257, 257, 257, 257, 257, 1089 257, 1161, 115, 769, 115, 769, 902, 115, 937, 115, 1090 429, 430, 430, 430, 430, 430, 430, 430, 430, 430, 1091 430, 115, 433, 115, 115, 905, 908, 115, 908, 115, 1092 431, 115, 115, 115, 770, 434, 115, 93, 115, 429, 1093 908, 435, 908, 115, 839, 840, 115, 115, 211, 115, 1094 433, 115, 115, 115, 905, 693, 115, 693, 115, 431, 1095 436, 115, 1161, 434, 1161, 694, 115, 115, 115, 435, 1096 115, 115, 115, 115, 115, 115, 115, 804, 439, 803, 1097 437, 115, 1161, 1161, 822, 176, 115, 115, 436, 115, 1098 1099 438, 805, 924, 115, 115, 188, 115, 115, 115, 115, 1100 115, 115, 115, 1161, 115, 115, 439, 1161, 437, 1161, 1101 441, 440, 115, 822, 115, 115, 1161, 115, 438, 115, 1102 805, 924, 115, 115, 1161, 115, 203, 115, 115, 115, 1103 115, 115, 903, 1161, 115, 700, 115, 700, 441, 440, 1104 115, 442, 115, 443, 445, 701, 444, 115, 115, 702, 1105 115, 1161, 115, 115, 115, 446, 93, 115, 1161, 115, 1106 115, 903, 911, 94, 95, 115, 1161, 115, 115, 442, 1107 115, 443, 445, 115, 444, 115, 1161, 115, 115, 447, 1108 115, 93, 115, 893, 446, 893, 448, 115, 94, 95, 1109 1110 1161, 911, 1161, 894, 115, 115, 1161, 115, 115, 451, 1111 929, 115, 115, 115, 115, 449, 115, 447, 965, 115, 1112 931, 804, 184, 809, 448, 115, 203, 115, 115, 176, 1113 115, 453, 115, 115, 211, 452, 115, 115, 451, 929, 1114 115, 466, 115, 466, 449, 115, 965, 115, 115, 931, 1115 115, 933, 454, 115, 1161, 115, 934, 115, 115, 936, 1116 453, 980, 115, 910, 452, 115, 1161, 115, 115, 1161, 1117 1161, 913, 467, 115, 115, 115, 465, 115, 115, 115, 1118 933, 454, 115, 93, 875, 934, 875, 115, 936, 980, 1119 94, 95, 910, 115, 876, 115, 455, 115, 455, 115, 1120 1121 913, 959, 115, 115, 115, 465, 115, 964, 115, 239, 1122 240, 115, 93, 966, 893, 115, 893, 468, 469, 94, 1123 95, 115, 241, 1161, 894, 115, 1161, 456, 115, 115, 1124 959, 203, 457, 115, 458, 115, 964, 459, 239, 240, 1125 115, 460, 966, 1161, 461, 468, 469, 462, 463, 472, 1126 241, 464, 115, 115, 115, 115, 470, 115, 115, 471, 1127 115, 457, 989, 458, 991, 884, 459, 884, 115, 460, 1128 1161, 115, 461, 1161, 115, 462, 463, 981, 472, 464, 1129 973, 115, 115, 115, 115, 470, 115, 115, 471, 115, 1130 115, 989, 474, 991, 473, 115, 115, 984, 115, 115, 1131 1132 986, 115, 115, 115, 896, 981, 896, 987, 973, 115, 1133 1161, 115, 476, 954, 1161, 115, 115, 115, 988, 115, 1134 115, 474, 473, 990, 115, 984, 477, 115, 986, 115, 1135 1010, 115, 115, 1161, 115, 987, 115, 115, 115, 961, 1136 476, 954, 478, 115, 115, 115, 988, 1161, 1005, 115, 1137 115, 990, 1161, 1013, 477, 1161, 1161, 115, 479, 1010, 1138 115, 115, 115, 1161, 1161, 115, 115, 115, 961, 1014, 1139 478, 1027, 115, 998, 948, 998, 1005, 1015, 115, 203, 1140 115, 480, 1013, 115, 115, 115, 479, 481, 115, 115, 1141 115, 484, 483, 484, 488, 115, 488, 1014, 188, 1027, 1142 1143 482, 485, 115, 115, 489, 1017, 1015, 1018, 115, 480, 1144 1161, 1161, 115, 115, 1035, 1021, 481, 115, 115, 1036, 1145 115, 483, 203, 1028, 115, 115, 1031, 115, 482, 115, 1146 115, 115, 115, 1016, 1017, 486, 1018, 1161, 490, 115, 1147 492, 1032, 1035, 115, 1021, 487, 115, 1036, 491, 115, 1148 1043, 1161, 1028, 115, 115, 1031, 115, 1161, 115, 1022, 1149 115, 115, 1016, 486, 493, 115, 490, 115, 492, 1033, 1150 1032, 115, 115, 487, 115, 1034, 491, 115, 1043, 115, 1151 115, 115, 1045, 188, 495, 115, 115, 1161, 1022, 115, 1152 1046, 494, 496, 493, 115, 1161, 1161, 115, 1033, 115, 1153 1154 115, 115, 115, 1050, 1034, 1161, 115, 115, 1161, 115, 1155 115, 1045, 1049, 495, 115, 115, 115, 115, 1046, 494, 1156 496, 497, 115, 1041, 948, 1041, 115, 115, 115, 1051, 1157 498, 115, 1050, 115, 115, 1161, 115, 500, 115, 115, 1158 1049, 499, 115, 852, 115, 852, 115, 1052, 1161, 497, 1159 1161, 115, 115, 115, 115, 1161, 115, 1051, 498, 115, 1160 1053, 1161, 115, 115, 115, 1061, 500, 115, 115, 1060, 1161 499, 115, 501, 115, 115, 1161, 1052, 115, 925, 115, 1162 115, 115, 115, 115, 115, 203, 1064, 502, 115, 1053, 1163 503, 926, 1065, 115, 1061, 1161, 115, 1060, 504, 1066, 1164 1165 501, 115, 203, 115, 115, 211, 115, 925, 115, 115, 1166 505, 115, 1161, 1161, 1064, 502, 1072, 1056, 503, 926, 1167 1065, 115, 1076, 115, 115, 115, 504, 1066, 1161, 115, 1168 115, 1161, 507, 115, 115, 1161, 506, 115, 115, 505, 1169 508, 1057, 115, 1161, 115, 1072, 1056, 1055, 115, 1075, 1170 1076, 115, 1161, 211, 115, 1079, 115, 509, 115, 115, 1171 115, 507, 115, 115, 506, 115, 115, 115, 508, 115, 1172 1057, 115, 115, 1078, 115, 1055, 115, 512, 1075, 115, 1173 510, 115, 511, 1079, 115, 509, 1161, 1161, 115, 115, 1174 1161, 115, 115, 1058, 115, 115, 115, 115, 115, 513, 1175 1176 115, 1161, 1078, 115, 1085, 515, 512, 115, 510, 115, 1177 511, 115, 115, 1161, 115, 115, 115, 115, 115, 514, 1178 115, 115, 1058, 115, 115, 516, 115, 1086, 513, 115, 1179 211, 517, 1085, 515, 115, 1161, 203, 115, 115, 115, 1180 1161, 115, 115, 115, 115, 115, 115, 115, 514, 115, 1181 115, 211, 115, 521, 516, 521, 1086, 518, 1161, 517, 1182 519, 115, 115, 522, 115, 115, 115, 115, 1070, 948, 1183 1070, 1081, 115, 1161, 115, 1084, 1089, 1161, 520, 115, 1184 115, 1090, 115, 203, 1083, 518, 115, 115, 519, 523, 1185 115, 115, 115, 115, 1094, 115, 1161, 1096, 115, 524, 1186 1187 1081, 115, 115, 1084, 1089, 115, 520, 115, 115, 1097, 1188 1090, 115, 115, 1083, 526, 115, 115, 1082, 523, 115, 1189 115, 115, 115, 1094, 115, 1096, 1099, 115, 524, 115, 1190 1161, 115, 525, 115, 1161, 1161, 115, 1097, 115, 115, 1191 115, 1103, 526, 1161, 115, 115, 1082, 1111, 115, 115, 1192 115, 1161, 211, 115, 1099, 1104, 527, 1107, 115, 211, 1193 525, 947, 948, 947, 528, 1161, 115, 1161, 115, 949, 1194 1103, 203, 950, 115, 115, 531, 1111, 539, 1161, 115, 1195 947, 948, 947, 1104, 527, 1107, 115, 1023, 949, 1024, 1196 1161, 950, 528, 540, 540, 540, 540, 540, 540, 540, 1197 1198 540, 540, 540, 541, 947, 948, 947, 1101, 1161, 176, 1199 1161, 1102, 949, 1161, 188, 950, 1023, 1161, 1024, 540, 1200 540, 540, 540, 540, 540, 540, 540, 540, 540, 541, 1201 1000, 1001, 1000, 1161, 1161, 176, 1101, 188, 1002, 1102, 1202 1161, 1003, 1092, 948, 1092, 540, 540, 540, 540, 540, 1203 540, 540, 540, 540, 540, 541, 1109, 948, 1109, 1098, 1204 1115, 176, 115, 115, 1161, 550, 548, 115, 115, 110, 1205 115, 545, 545, 545, 545, 545, 545, 545, 545, 545, 1206 545, 115, 549, 1114, 115, 115, 551, 1098, 1115, 1120, 1207 115, 115, 115, 554, 550, 548, 115, 115, 1121, 115, 1208 1209 1161, 115, 1161, 1161, 115, 552, 115, 1161, 1161, 115, 1210 549, 1114, 115, 1127, 115, 551, 1123, 1120, 482, 115, 1211 115, 115, 1161, 115, 115, 553, 115, 1121, 115, 115, 1212 115, 203, 115, 1161, 552, 115, 947, 948, 947, 1129, 1213 115, 1127, 115, 115, 949, 1123, 482, 950, 115, 1161, 1214 115, 203, 115, 115, 553, 115, 211, 115, 115, 1161, 1215 1161, 1000, 1001, 1000, 1161, 1161, 1116, 1129, 115, 1002, 1216 115, 115, 1003, 383, 383, 383, 383, 383, 383, 383, 1217 383, 383, 383, 211, 1161, 1000, 1001, 1000, 1117, 1118, 1218 1117, 1161, 565, 1002, 1132, 1116, 1003, 1131, 1136, 1161, 1219 1220 566, 566, 566, 566, 566, 566, 566, 566, 566, 566, 1221 211, 1161, 1042, 1001, 1042, 1117, 1118, 1117, 1142, 567, 1222 949, 565, 1132, 950, 1161, 1131, 1136, 383, 383, 383, 1223 383, 383, 383, 383, 383, 383, 383, 405, 405, 405, 1224 405, 405, 405, 405, 405, 405, 405, 1142, 567, 405, 1225 405, 405, 405, 405, 405, 405, 405, 405, 405, 407, 915 1226 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, 916 407, 108, 108, 108, 108, 564, 568, 108, 197, 108, 917 108, 108, 571, 572, 570, 108, 1064, 108, 108, 108, 918 108, 108, 573, 574, 108, 108, 108, 108, 108, 108, 919 108, 590, 108, 578, 108, 197, 576, 577, 579, 108, 920 921 579, 108, 108, 108, 592, 108, 108, 108, 366, 596, 922 591, 108, 593, 108, 108, 594, 108, 677, 108, 108, 923 595, 599, 108, 108, 607, 597, 607, 108, 108, 723, 924 108, 108, 610, 108, 600, 598, 108, 724, 601, 179, 925 606, 580, 1049, 108, 108, 682, 609, 108, 108, 108, 926 108, 168, 108, 108, 608, 581, 434, 168, 434, 108, 927 108, 613, 611, 727, 108, 108, 108, 108, 614, 108, 928 108, 615, 1063, 617, 616, 108, 108, 621, 871, 728, 929 618, 108, 1061, 108, 619, 463, 435, 463, 108, 620, 930 623, 467, 108, 467, 582, 464, 583, 1056, 108, 584, 931 932 1055, 468, 622, 585, 86, 108, 586, 108, 625, 587, 933 588, 698, 699, 589, 602, 602, 602, 602, 602, 602, 934 602, 602, 602, 602, 602, 108, 602, 602, 602, 602, 935 602, 603, 602, 604, 604, 604, 604, 604, 604, 604, 936 604, 604, 602, 602, 602, 602, 602, 602, 602, 605, 937 605, 605, 605, 605, 605, 605, 605, 605, 605, 605, 938 605, 605, 605, 605, 605, 605, 605, 605, 605, 605, 939 605, 605, 605, 605, 605, 605, 602, 108, 108, 108, 940 108, 108, 108, 108, 785, 1054, 785, 108, 1051, 626, 941 627, 624, 108, 108, 108, 108, 108, 108, 108, 108, 942 943 108, 628, 108, 108, 108, 629, 630, 633, 108, 108, 944 108, 631, 108, 108, 636, 108, 108, 108, 108, 108, 945 108, 635, 632, 108, 108, 634, 108, 638, 641, 108, 946 108, 640, 637, 108, 639, 108, 108, 108, 108, 642, 947 108, 108, 108, 108, 108, 108, 108, 499, 108, 499, 948 108, 197, 644, 108, 108, 108, 179, 500, 108, 108, 949 643, 108, 108, 108, 108, 108, 108, 108, 108, 1050, 950 645, 647, 646, 648, 167, 669, 657, 82, 1045, 168, 951 108, 108, 168, 108, 701, 108, 649, 366, 648, 167, 952 103, 1044, 108, 649, 168, 648, 167, 108, 780, 667, 953 954 705, 168, 676, 668, 664, 668, 664, 571, 169, 170, 955 795, 668, 171, 668, 665, 694, 108, 108, 108, 108, 956 108, 86, 707, 169, 170, 326, 173, 171, 87, 88, 957 169, 170, 1042, 706, 171, 108, 108, 108, 108, 108, 958 326, 173, 666, 1041, 670, 108, 670, 326, 173, 649, 959 175, 655, 167, 197, 671, 108, 108, 168, 672, 696, 960 108, 193, 108, 108, 709, 108, 108, 656, 656, 656, 961 656, 656, 656, 656, 656, 656, 708, 108, 710, 108, 962 108, 108, 108, 108, 712, 108, 169, 170, 1048, 714, 963 171, 607, 785, 607, 785, 711, 108, 1040, 108, 108, 964 965 877, 108, 108, 326, 173, 197, 560, 560, 560, 560, 966 560, 560, 560, 560, 560, 1038, 108, 678, 108, 678, 967 179, 608, 679, 679, 679, 679, 679, 679, 679, 679, 968 679, 197, 560, 560, 560, 560, 560, 560, 560, 560, 969 560, 1031, 179, 794, 197, 794, 1030, 1029, 537, 537, 970 537, 537, 537, 537, 537, 537, 537, 562, 562, 562, 971 562, 562, 562, 562, 562, 562, 108, 1028, 1016, 536, 972 197, 562, 562, 562, 562, 562, 562, 562, 562, 562, 973 781, 108, 680, 108, 680, 732, 719, 681, 681, 681, 974 681, 681, 681, 681, 681, 681, 687, 687, 108, 687, 975 976 687, 687, 687, 687, 687, 687, 687, 687, 687, 687, 977 687, 687, 687, 702, 687, 703, 703, 703, 703, 703, 978 703, 703, 703, 703, 687, 687, 687, 687, 687, 687, 979 687, 704, 704, 704, 704, 704, 704, 704, 704, 704, 980 704, 704, 704, 704, 704, 704, 704, 704, 704, 704, 981 704, 704, 704, 704, 704, 704, 704, 704, 687, 108, 982 108, 579, 108, 579, 108, 108, 108, 716, 108, 720, 983 715, 733, 108, 736, 739, 735, 108, 108, 731, 108, 984 734, 108, 108, 108, 108, 108, 108, 1025, 1024, 108, 985 738, 108, 740, 409, 740, 244, 193, 409, 108, 737, 986 987 108, 108, 108, 108, 717, 243, 243, 243, 243, 243, 988 243, 243, 243, 243, 108, 108, 108, 108, 718, 108, 989 108, 743, 741, 108, 108, 745, 108, 108, 744, 742, 990 108, 108, 108, 108, 748, 746, 108, 108, 789, 108, 991 108, 108, 752, 747, 108, 108, 108, 108, 753, 108, 992 750, 197, 751, 108, 108, 749, 108, 108, 108, 108, 993 755, 108, 108, 108, 108, 754, 108, 108, 756, 758, 994 757, 108, 108, 108, 108, 108, 760, 759, 108, 108, 995 763, 108, 108, 108, 108, 108, 761, 764, 108, 108, 996 108, 108, 108, 792, 108, 769, 108, 108, 762, 108, 997 998 108, 108, 108, 108, 1018, 108, 766, 768, 108, 108, 999 767, 108, 108, 108, 664, 197, 664, 108, 108, 770, 1000 108, 771, 772, 773, 665, 774, 167, 168, 1017, 108, 1001 108, 168, 775, 168, 774, 167, 664, 670, 664, 670, 1002 168, 103, 775, 197, 774, 167, 665, 671, 108, 108, 1003 168, 672, 776, 786, 879, 86, 787, 794, 197, 794, 1004 169, 170, 806, 807, 171, 108, 108, 108, 86, 169, 1005 170, 108, 244, 171, 776, 87, 88, 326, 173, 169, 1006 170, 790, 788, 171, 108, 193, 326, 173, 108, 1015, 1007 672, 108, 672, 670, 1012, 670, 326, 173, 775, 175, 1008 1009 779, 167, 86, 671, 672, 108, 168, 672, 108, 87, 1010 88, 243, 243, 243, 243, 243, 243, 243, 243, 243, 1011 812, 108, 108, 986, 811, 108, 108, 108, 108, 108, 1012 816, 108, 819, 108, 819, 169, 170, 108, 108, 171, 1013 813, 817, 108, 108, 108, 108, 108, 815, 108, 814, 1014 108, 108, 326, 173, 197, 822, 740, 1011, 740, 819, 1015 876, 819, 876, 876, 108, 876, 108, 108, 108, 820, 1016 825, 679, 679, 679, 679, 679, 679, 679, 679, 679, 1017 197, 839, 821, 108, 108, 965, 741, 965, 1009, 1001, 1018 108, 108, 834, 108, 108, 835, 891, 679, 679, 679, 1019 1020 679, 679, 679, 679, 679, 679, 197, 108, 108, 892, 1021 108, 841, 179, 836, 1000, 999, 108, 108, 843, 108, 1022 108, 838, 837, 681, 681, 681, 681, 681, 681, 681, 1023 681, 681, 197, 108, 108, 108, 850, 108, 862, 86, 1024 862, 983, 1007, 984, 1007, 934, 87, 88, 863, 681, 1025 681, 681, 681, 681, 681, 681, 681, 681, 791, 791, 1026 197, 791, 791, 791, 791, 791, 791, 791, 791, 791, 1027 791, 791, 791, 791, 791, 796, 791, 797, 797, 797, 1028 797, 797, 797, 797, 797, 797, 791, 791, 791, 791, 1029 791, 791, 791, 798, 798, 798, 798, 798, 798, 798, 1030 1031 798, 798, 798, 798, 798, 798, 798, 798, 798, 798, 1032 798, 798, 798, 798, 798, 798, 798, 798, 798, 798, 1033 791, 800, 800, 86, 800, 1036, 998, 1036, 800, 800, 1034 87, 88, 800, 997, 996, 800, 800, 800, 800, 800, 1035 800, 800, 800, 799, 799, 995, 799, 799, 799, 799, 1036 799, 799, 799, 799, 799, 799, 799, 799, 799, 799, 1037 808, 799, 809, 809, 809, 809, 809, 809, 809, 809, 1038 809, 799, 799, 799, 799, 799, 799, 799, 810, 810, 1039 810, 810, 810, 810, 810, 810, 810, 810, 810, 810, 1040 810, 810, 810, 810, 810, 810, 810, 810, 810, 810, 1041 1042 810, 810, 810, 810, 810, 799, 108, 108, 108, 844, 1043 840, 844, 108, 108, 851, 179, 108, 848, 842, 845, 1044 847, 108, 846, 108, 108, 108, 108, 992, 108, 108, 1045 108, 108, 849, 108, 852, 108, 108, 853, 108, 108, 1046 854, 108, 854, 108, 108, 108, 857, 108, 108, 1113, 1047 108, 108, 108, 108, 860, 108, 108, 108, 108, 856, 1048 108, 108, 108, 108, 108, 859, 858, 108, 108, 861, 1049 864, 108, 108, 197, 108, 108, 865, 108, 865, 108, 1050 108, 108, 773, 108, 775, 167, 108, 179, 108, 108, 1051 855, 874, 108, 775, 991, 774, 167, 108, 108, 867, 1052 1053 108, 168, 775, 108, 775, 167, 108, 876, 108, 876, 1054 244, 108, 865, 866, 865, 108, 888, 885, 883, 169, 1055 170, 875, 884, 171, 982, 108, 1084, 108, 108, 108, 1056 169, 170, 108, 108, 171, 108, 326, 173, 108, 169, 1057 170, 108, 108, 171, 894, 886, 108, 326, 173, 929, 1058 981, 1059, 889, 1059, 980, 108, 326, 173, 108, 108, 1059 878, 878, 197, 878, 878, 878, 878, 878, 878, 878, 1060 878, 878, 878, 878, 878, 878, 878, 880, 878, 881, 1061 881, 881, 881, 881, 881, 881, 881, 881, 878, 878, 1062 878, 878, 878, 878, 878, 882, 882, 882, 882, 882, 1063 1064 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 1065 882, 882, 882, 882, 882, 882, 882, 882, 882, 882, 1066 882, 882, 878, 197, 243, 243, 243, 243, 243, 243, 1067 243, 243, 243, 108, 108, 108, 108, 887, 108, 108, 1068 362, 362, 362, 362, 362, 362, 362, 362, 362, 893, 1069 108, 108, 108, 896, 108, 108, 906, 905, 108, 108, 1070 108, 909, 108, 108, 108, 907, 977, 911, 912, 975, 1071 972, 108, 108, 108, 910, 908, 108, 108, 915, 108, 1072 108, 108, 844, 913, 844, 916, 918, 108, 917, 108, 1073 108, 108, 845, 108, 108, 108, 108, 920, 854, 108, 1074 1075 854, 108, 108, 108, 108, 108, 919, 921, 108, 926, 1076 108, 108, 108, 108, 925, 108, 108, 108, 923, 108, 1077 108, 924, 108, 108, 108, 862, 930, 862, 193, 108, 1078 936, 197, 108, 108, 108, 863, 108, 931, 108, 940, 1079 108, 108, 108, 108, 957, 928, 108, 108, 922, 108, 1080 108, 937, 108, 108, 108, 108, 941, 108, 108, 942, 1081 108, 938, 948, 108, 939, 197, 108, 950, 193, 108, 1082 944, 108, 947, 943, 108, 108, 108, 108, 961, 956, 1083 108, 959, 362, 362, 362, 362, 362, 362, 362, 362, 1084 362, 108, 108, 108, 108, 108, 960, 108, 108, 958, 1085 1086 915, 108, 179, 108, 179, 1047, 108, 916, 108, 108, 1087 917, 108, 967, 962, 108, 108, 964, 963, 108, 968, 1088 108, 915, 969, 108, 108, 108, 108, 108, 916, 970, 1089 108, 917, 971, 108, 108, 108, 108, 197, 108, 976, 1090 973, 108, 108, 108, 108, 108, 108, 108, 108, 1065, 1091 108, 974, 108, 108, 978, 108, 108, 1094, 979, 989, 1092 108, 108, 108, 108, 108, 108, 985, 108, 990, 108, 1093 108, 994, 955, 108, 987, 108, 988, 108, 108, 1003, 1094 108, 108, 993, 108, 108, 108, 108, 108, 108, 1002, 1095 197, 108, 108, 1006, 967, 1004, 108, 108, 108, 197, 1096 1097 108, 968, 108, 954, 969, 108, 967, 1005, 108, 1008, 1098 967, 1008, 967, 968, 108, 108, 969, 916, 108, 968, 1099 917, 108, 969, 1010, 108, 108, 108, 108, 108, 1013, 1100 1014, 108, 1022, 108, 953, 108, 108, 1021, 108, 1019, 1101 1023, 108, 108, 108, 108, 108, 108, 108, 108, 108, 1102 108, 1033, 108, 108, 108, 1027, 179, 1026, 1035, 108, 1103 1034, 1032, 952, 108, 108, 108, 108, 108, 108, 108, 1104 951, 108, 1037, 915, 1037, 108, 108, 108, 108, 1039, 1105 916, 108, 1052, 917, 108, 108, 108, 1046, 108, 1043, 1106 108, 108, 108, 108, 108, 108, 193, 1057, 108, 1053, 1107 1108 108, 1058, 179, 108, 108, 108, 108, 108, 108, 1062, 1109 108, 1060, 915, 1060, 108, 193, 108, 108, 1075, 916, 1110 108, 108, 917, 108, 1072, 949, 1076, 1071, 1076, 1067, 1111 108, 108, 108, 108, 1077, 915, 1077, 108, 108, 193, 1112 1079, 108, 916, 179, 915, 917, 1087, 108, 108, 108, 1113 1081, 916, 1083, 179, 917, 108, 1089, 1089, 1092, 1089, 1114 179, 1097, 946, 1089, 1089, 108, 193, 1089, 179, 193, 1115 1089, 1089, 1089, 1089, 1089, 1089, 1089, 1089, 1090, 915, 1116 1090, 108, 193, 193, 179, 1101, 916, 1095, 193, 917, 1117 915, 1111, 193, 1103, 1098, 1098, 1107, 1099, 108, 1104, 1118 1119 917, 1098, 1098, 108, 108, 1098, 193, 193, 1098, 1098, 1120 1098, 1098, 1098, 1098, 1098, 1098, 915, 967, 193, 1109, 1121 108, 108, 1112, 916, 968, 1114, 917, 969, 193, 1108, 1122 384, 1110, 384, 386, 388, 386, 388, 1115, 403, 945, 1123 403, 1116, 405, 366, 405, 1119, 407, 560, 407, 560, 1124 197, 562, 1120, 562, 935, 179, 933, 1118, 932, 927, 1125 904, 903, 902, 901, 900, 899, 898, 897, 895, 890, 1126 82, 78, 366, 197, 197, 197, 873, 179, 179, 870, 1127 869, 1121, 62, 62, 62, 62, 62, 62, 62, 62, 1128 62, 62, 62, 62, 62, 62, 62, 62, 62, 63, 1129 1130 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 1131 63, 63, 63, 63, 63, 63, 74, 74, 868, 74, 1132 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 1133 74, 74, 74, 77, 77, 833, 77, 77, 77, 77, 1134 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 1135 81, 81, 81, 81, 81, 81, 81, 81, 81, 81, 1136 81, 81, 81, 81, 81, 81, 81, 85, 85, 85, 1137 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, 1138 85, 85, 85, 85, 104, 104, 832, 831, 830, 829, 1139 104, 108, 108, 108, 108, 108, 108, 108, 108, 108, 1140 1141 108, 178, 178, 178, 178, 178, 178, 178, 178, 178, 1142 178, 178, 178, 178, 178, 178, 178, 178, 184, 828, 1143 184, 827, 184, 184, 826, 824, 823, 818, 184, 192, 1144 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 1145 192, 192, 192, 192, 192, 192, 195, 195, 195, 195, 1146 195, 195, 195, 195, 195, 195, 82, 195, 195, 195, 1147 195, 82, 195, 218, 218, 218, 218, 218, 218, 218, 1148 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, 1149 94, 78, 803, 94, 94, 238, 238, 238, 238, 366, 1150 238, 238, 366, 238, 238, 197, 238, 238, 783, 179, 1151 1152 238, 238, 328, 328, 328, 328, 328, 328, 328, 328, 1153 328, 328, 328, 328, 328, 328, 328, 328, 328, 336, 1154 778, 336, 777, 765, 336, 341, 730, 341, 729, 341, 1155 341, 342, 342, 726, 342, 342, 342, 342, 342, 342, 1156 342, 342, 342, 342, 342, 342, 342, 342, 353, 353, 1157 353, 353, 353, 353, 353, 353, 353, 353, 353, 353, 1158 353, 353, 353, 353, 353, 358, 358, 358, 358, 358, 1159 358, 358, 358, 358, 358, 358, 358, 358, 358, 358, 1160 358, 358, 401, 725, 722, 401, 401, 262, 721, 262, 1161 713, 700, 82, 693, 262, 689, 686, 530, 663, 662, 1162 1163 530, 654, 262, 517, 653, 517, 652, 651, 517, 522, 1164 650, 522, 612, 522, 522, 656, 575, 656, 408, 558, 1165 656, 661, 557, 661, 556, 661, 661, 687, 687, 555, 1166 687, 687, 687, 687, 687, 687, 687, 687, 687, 687, 1167 687, 687, 687, 687, 690, 690, 554, 690, 690, 690, 1168 690, 690, 690, 690, 690, 690, 690, 690, 690, 690, 1169 690, 692, 692, 547, 692, 692, 692, 692, 692, 692, 1170 692, 692, 692, 692, 692, 692, 692, 692, 695, 695, 1171 695, 695, 695, 695, 695, 695, 695, 695, 695, 695, 1172 695, 695, 695, 695, 695, 697, 697, 697, 697, 697, 1173 1174 697, 697, 697, 697, 697, 697, 697, 697, 697, 697, 1175 697, 697, 782, 782, 782, 782, 782, 782, 782, 782, 1176 782, 782, 782, 782, 782, 782, 782, 782, 782, 104, 1177 546, 104, 544, 104, 104, 784, 784, 543, 784, 784, 1178 784, 784, 784, 784, 784, 784, 784, 784, 784, 784, 1179 784, 784, 791, 791, 791, 791, 791, 791, 791, 791, 1180 791, 791, 791, 791, 791, 791, 791, 791, 791, 793, 1181 793, 793, 793, 793, 793, 793, 793, 793, 793, 793, 1182 793, 793, 793, 793, 793, 793, 799, 799, 366, 799, 1183 799, 799, 799, 799, 799, 799, 799, 799, 799, 799, 1184 1185 799, 799, 799, 801, 801, 197, 801, 801, 801, 801, 1186 801, 801, 801, 801, 801, 801, 801, 801, 801, 801, 1187 802, 802, 197, 802, 802, 802, 802, 802, 802, 802, 1188 802, 802, 802, 802, 802, 802, 802, 804, 804, 804, 1189 804, 804, 804, 804, 804, 804, 804, 804, 804, 804, 1190 804, 804, 804, 804, 805, 805, 805, 805, 805, 805, 1191 805, 805, 805, 805, 805, 805, 805, 805, 805, 805, 1192 805, 872, 872, 872, 872, 872, 872, 872, 872, 872, 1193 872, 872, 872, 872, 872, 872, 872, 872, 878, 878, 1194 878, 878, 878, 878, 878, 878, 878, 878, 878, 878, 1195 1196 878, 878, 878, 878, 878, 914, 914, 914, 914, 914, 1197 914, 914, 914, 914, 914, 914, 914, 914, 914, 914, 1198 914, 914, 966, 966, 966, 966, 966, 966, 966, 966, 1199 966, 966, 966, 966, 966, 966, 966, 966, 966, 524, 1200 523, 515, 514, 513, 512, 511, 510, 179, 333, 429, 1201 410, 408, 400, 399, 398, 395, 394, 393, 392, 389, 1202 375, 374, 372, 371, 366, 197, 197, 193, 179, 334, 1203 332, 331, 179, 237, 236, 229, 228, 82, 82, 78, 1204 213, 212, 210, 209, 193, 188, 1123, 64, 13, 1123, 1205 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1206 1207 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1208 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1209 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1210 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1211 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1212 1123, 1123 1227 407, 407, 407, 407, 407, 407, 407, 407, 407, 409, 1228 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, 1229 409, 409, 409, 409, 409, 409, 409, 409, 409, 424, 1230 1231 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, 1232 424, 424, 424, 424, 424, 424, 424, 424, 424, 426, 1233 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, 1234 426, 426, 426, 426, 426, 426, 426, 426, 426, 428, 1235 428, 428, 428, 428, 428, 428, 428, 428, 428, 428, 1236 428, 428, 428, 428, 428, 428, 428, 428, 428, 588, 1237 211, 588, 1161, 1161, 589, 589, 589, 589, 589, 589, 1238 589, 589, 589, 589, 430, 430, 430, 430, 430, 430, 1239 430, 430, 430, 430, 1161, 115, 1161, 115, 1161, 590, 1240 115, 590, 115, 429, 591, 591, 591, 591, 591, 591, 1241 1242 591, 591, 591, 591, 115, 592, 115, 115, 115, 593, 1243 203, 1119, 115, 115, 115, 1161, 115, 1141, 188, 115, 1244 1161, 115, 429, 1161, 115, 1161, 115, 115, 594, 115, 1245 115, 1161, 115, 592, 115, 115, 115, 115, 593, 1119, 1246 1161, 115, 115, 115, 1161, 1141, 115, 203, 595, 115, 1247 1149, 115, 1161, 115, 115, 115, 1146, 594, 115, 115, 1248 1161, 1161, 596, 1161, 115, 115, 188, 115, 115, 115, 1249 1161, 115, 597, 115, 115, 115, 595, 115, 188, 1149, 1250 115, 115, 1161, 598, 1146, 115, 203, 115, 115, 115, 1251 115, 596, 1144, 115, 115, 188, 115, 115, 115, 203, 1252 1253 599, 597, 115, 115, 115, 115, 1161, 188, 115, 115, 1254 115, 598, 1161, 600, 115, 115, 115, 1130, 115, 115, 1255 1144, 115, 115, 115, 115, 601, 115, 115, 599, 1143, 1256 115, 1157, 115, 602, 115, 115, 115, 1148, 1161, 115, 1257 115, 115, 600, 603, 1145, 1130, 1124, 948, 1124, 115, 1258 115, 115, 115, 1161, 601, 115, 115, 1143, 1151, 115, 1259 1157, 602, 115, 1161, 115, 1148, 188, 115, 115, 115, 1260 115, 603, 1145, 605, 115, 115, 203, 115, 606, 115, 1261 1161, 115, 1161, 1161, 203, 608, 1151, 608, 1161, 115, 1262 1161, 115, 607, 115, 1161, 1161, 115, 1161, 1161, 115, 1263 1264 1161, 605, 1147, 115, 115, 1161, 1161, 606, 115, 115, 1265 115, 1153, 1154, 1153, 115, 115, 1161, 115, 115, 115, 1266 607, 115, 1161, 115, 1161, 1155, 609, 1161, 619, 115, 1267 620, 1147, 1161, 115, 1161, 1152, 1161, 115, 1161, 115, 1268 610, 115, 1161, 115, 115, 115, 621, 115, 115, 1161, 1269 115, 1161, 115, 1155, 203, 609, 619, 115, 620, 622, 1270 115, 115, 115, 1152, 115, 115, 1161, 115, 610, 455, 1271 115, 455, 1161, 1161, 115, 621, 1153, 1154, 1153, 115, 1272 1161, 629, 1161, 1161, 115, 1161, 1161, 622, 115, 115, 1273 1156, 115, 115, 1159, 1160, 1159, 115, 1159, 1160, 1159, 1274 1275 456, 623, 1161, 115, 1161, 611, 115, 612, 1161, 629, 1276 613, 115, 203, 115, 614, 1161, 1161, 615, 115, 1156, 1277 616, 617, 1161, 1161, 618, 115, 1161, 1161, 1161, 623, 1278 626, 115, 1161, 1161, 611, 115, 612, 1161, 115, 613, 1279 115, 1161, 614, 115, 1161, 615, 115, 1161, 616, 617, 1280 624, 115, 618, 115, 115, 115, 1161, 637, 626, 115, 1281 115, 627, 1161, 1158, 1161, 115, 625, 115, 1161, 1161, 1282 1161, 1161, 115, 115, 115, 115, 628, 1161, 1161, 624, 1283 115, 1161, 1161, 115, 115, 637, 1161, 1161, 115, 115, 1284 627, 1158, 1161, 115, 625, 1161, 1161, 1161, 1161, 1161, 1285 1286 1161, 115, 115, 1161, 628, 630, 630, 630, 630, 630, 1287 630, 630, 630, 630, 630, 630, 1161, 630, 630, 630, 1288 630, 630, 631, 630, 632, 632, 632, 632, 632, 632, 1289 632, 632, 632, 632, 630, 630, 630, 630, 630, 633, 1290 633, 633, 633, 633, 633, 633, 633, 633, 633, 633, 1291 633, 633, 633, 633, 633, 633, 633, 633, 633, 633, 1292 633, 633, 633, 633, 633, 630, 630, 633, 633, 633, 1293 633, 633, 633, 633, 633, 633, 633, 633, 633, 633, 1294 633, 633, 633, 633, 633, 633, 633, 633, 633, 633, 1295 633, 633, 633, 630, 115, 1161, 635, 638, 635, 115, 1296 1297 1161, 1161, 115, 115, 1000, 1001, 1000, 1161, 115, 1161, 1298 1161, 634, 1002, 115, 1161, 1003, 115, 1161, 1161, 1161, 1299 1161, 1161, 639, 115, 1161, 1161, 638, 636, 115, 115, 1300 115, 115, 115, 1161, 115, 115, 1161, 115, 115, 634, 1301 1161, 115, 1161, 115, 115, 1161, 641, 1161, 115, 115, 1302 639, 1161, 1161, 1161, 1161, 1161, 1161, 115, 115, 115, 1303 115, 1161, 1161, 115, 115, 115, 1161, 115, 115, 1161, 1304 1161, 1161, 115, 115, 1161, 641, 115, 115, 1161, 115, 1305 642, 1161, 1161, 1161, 1161, 115, 1161, 643, 1161, 115, 1306 115, 1161, 1161, 1161, 115, 115, 1161, 115, 644, 115, 1307 1308 1161, 1161, 115, 1161, 115, 645, 1161, 115, 642, 115, 1309 1161, 1161, 646, 1161, 1161, 643, 1161, 1161, 115, 115, 1310 1161, 1000, 1001, 1000, 115, 1161, 1161, 644, 115, 1002, 1311 115, 650, 1003, 115, 645, 115, 115, 115, 647, 115, 1312 646, 648, 115, 1161, 115, 1161, 115, 115, 1161, 115, 1313 115, 1161, 1161, 1161, 1161, 1161, 649, 1161, 115, 115, 1314 650, 115, 1161, 1161, 115, 115, 1161, 647, 115, 115, 1315 648, 115, 1161, 115, 115, 652, 115, 115, 115, 1161, 1316 115, 1161, 1161, 651, 649, 1161, 115, 1161, 115, 115, 1317 1161, 115, 1161, 1161, 115, 115, 115, 1161, 115, 1161, 1318 1319 115, 1161, 653, 115, 652, 1161, 654, 115, 1161, 115, 1320 115, 651, 115, 1161, 115, 1161, 115, 1161, 115, 1161, 1321 115, 1161, 115, 115, 115, 115, 115, 115, 1161, 115, 1322 653, 1161, 115, 1161, 654, 655, 115, 115, 115, 115, 1323 1161, 115, 115, 115, 115, 1161, 115, 115, 115, 1161, 1324 115, 1161, 115, 1161, 115, 115, 115, 1161, 115, 1161, 1325 1161, 115, 115, 1161, 655, 115, 115, 1161, 115, 659, 1326 115, 115, 115, 115, 115, 115, 1161, 115, 1161, 115, 1327 656, 1161, 657, 1161, 115, 115, 115, 115, 1161, 115, 1328 115, 658, 115, 115, 1161, 115, 661, 659, 115, 115, 1329 1330 115, 115, 1161, 1161, 115, 1161, 115, 1161, 656, 1161, 1331 657, 1161, 660, 115, 1161, 115, 115, 115, 115, 115, 1332 658, 115, 115, 115, 115, 661, 1161, 115, 1161, 664, 1333 115, 1071, 948, 1071, 115, 662, 1161, 115, 115, 949, 1334 660, 115, 950, 115, 1161, 1161, 115, 115, 115, 663, 1335 115, 1161, 115, 115, 1161, 115, 1161, 115, 1161, 1161, 1336 115, 1161, 115, 662, 1161, 115, 115, 1161, 1161, 115, 1337 115, 1161, 1161, 1161, 665, 115, 115, 1161, 663, 115, 1338 1161, 1161, 115, 1161, 115, 1161, 115, 115, 115, 115, 1339 115, 115, 1161, 666, 115, 115, 1161, 115, 1161, 1161, 1340 1341 1161, 115, 665, 668, 115, 1161, 667, 1161, 115, 115, 1342 1161, 115, 1161, 1161, 1161, 1161, 115, 1161, 115, 115, 1343 115, 666, 115, 115, 115, 115, 1161, 115, 115, 115, 1344 669, 668, 1161, 115, 667, 1161, 115, 115, 670, 115, 1345 1161, 115, 1161, 1161, 1161, 115, 1161, 115, 1161, 115, 1346 115, 115, 1161, 115, 115, 1161, 115, 115, 115, 669, 1347 1161, 115, 115, 1161, 115, 115, 115, 115, 1161, 115, 1348 115, 1161, 115, 1161, 115, 115, 1161, 1161, 1161, 115, 1349 115, 1161, 115, 1161, 115, 1161, 115, 115, 115, 1161, 1350 115, 115, 115, 115, 115, 115, 1161, 1161, 1161, 115, 1351 1352 115, 1161, 671, 1161, 1161, 115, 1161, 115, 115, 115, 1353 1161, 1161, 115, 672, 115, 115, 1161, 115, 115, 1161, 1354 115, 115, 115, 115, 1161, 1161, 115, 1161, 115, 1161, 1355 671, 1161, 1161, 115, 1161, 115, 1161, 115, 115, 1161, 1356 115, 115, 672, 115, 115, 673, 115, 115, 674, 115, 1357 115, 1161, 115, 1161, 1161, 115, 115, 1161, 1161, 1161, 1358 115, 698, 1161, 115, 1161, 115, 115, 1161, 115, 1161, 1359 115, 1161, 1161, 115, 673, 115, 1161, 674, 115, 677, 1360 115, 684, 1161, 1161, 1161, 1093, 948, 1093, 115, 1161, 1361 698, 115, 1161, 949, 1161, 115, 950, 685, 685, 685, 1362 1363 685, 685, 685, 685, 685, 685, 685, 686, 115, 1110, 1364 948, 1110, 1161, 176, 1161, 1161, 1161, 949, 1161, 1161, 1365 950, 1161, 1161, 685, 685, 685, 685, 685, 685, 685, 1366 685, 685, 685, 686, 693, 1161, 693, 1161, 1161, 176, 1367 1161, 1161, 1161, 1161, 694, 1161, 1161, 1161, 1161, 685, 1368 685, 685, 685, 685, 685, 685, 685, 685, 685, 686, 1369 697, 1161, 697, 1161, 1161, 176, 696, 115, 1161, 1161, 1370 695, 115, 115, 110, 600, 690, 690, 690, 690, 690, 1371 690, 690, 690, 690, 690, 115, 115, 1161, 1161, 1161, 1372 1161, 1161, 1161, 115, 1161, 696, 115, 1161, 115, 695, 1373 1374 115, 115, 115, 600, 1161, 115, 1161, 115, 645, 732, 1375 115, 1161, 115, 115, 115, 646, 1161, 1161, 700, 699, 1376 700, 115, 115, 1161, 115, 1161, 1161, 115, 701, 1161, 1377 1161, 115, 702, 1161, 115, 1161, 115, 645, 732, 115, 1378 115, 211, 1161, 646, 1161, 1161, 1161, 699, 1161, 115, 1379 1161, 115, 115, 709, 1161, 709, 115, 1161, 710, 710, 1380 710, 710, 710, 710, 710, 710, 710, 710, 1161, 211, 1381 115, 1126, 948, 1126, 1161, 1161, 1161, 1161, 1161, 949, 1382 115, 1161, 950, 1161, 1161, 115, 566, 566, 566, 566, 1383 566, 566, 566, 566, 566, 566, 211, 1161, 115, 1161, 1384 1385 1161, 947, 948, 947, 1161, 565, 1161, 1161, 711, 949, 1386 711, 1161, 950, 712, 712, 712, 712, 712, 712, 712, 1387 712, 712, 712, 589, 589, 589, 589, 589, 589, 589, 1388 589, 589, 589, 1161, 565, 589, 589, 589, 589, 589, 1389 589, 589, 589, 589, 589, 591, 591, 591, 591, 591, 1390 591, 591, 591, 591, 591, 591, 591, 591, 591, 591, 1391 591, 591, 591, 591, 591, 733, 1161, 1161, 115, 1161, 1392 115, 1161, 1161, 115, 947, 948, 947, 1161, 1000, 1001, 1393 1000, 1161, 949, 737, 115, 950, 1002, 115, 1161, 1003, 1394 1161, 1161, 1161, 1161, 733, 1161, 1161, 115, 1161, 115, 1395 1396 1161, 1161, 115, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1397 1161, 737, 115, 718, 718, 115, 718, 718, 718, 718, 1398 718, 718, 718, 718, 718, 718, 718, 718, 718, 718, 1399 734, 718, 735, 735, 735, 735, 735, 735, 735, 735, 1400 735, 735, 718, 718, 718, 718, 718, 736, 736, 736, 1401 736, 736, 736, 736, 736, 736, 736, 736, 736, 736, 1402 736, 736, 736, 736, 736, 736, 736, 736, 736, 736, 1403 736, 736, 736, 718, 718, 736, 736, 736, 736, 736, 1404 736, 736, 736, 736, 736, 736, 736, 736, 736, 736, 1405 736, 736, 736, 736, 736, 736, 736, 736, 736, 736, 1406 1407 736, 718, 115, 115, 738, 115, 115, 115, 115, 115, 1408 115, 115, 1161, 740, 115, 1161, 1161, 1161, 739, 741, 1409 1161, 115, 115, 1161, 115, 115, 1161, 1161, 115, 1161, 1410 1161, 115, 115, 738, 115, 115, 115, 115, 115, 115, 1411 115, 1161, 740, 115, 1161, 1161, 739, 741, 1161, 115, 1412 115, 1161, 115, 115, 115, 115, 115, 115, 1161, 115, 1413 115, 115, 115, 1161, 1161, 745, 115, 1161, 1161, 742, 1414 1161, 1161, 1161, 115, 115, 743, 115, 1161, 1161, 1161, 1415 115, 1161, 1161, 115, 115, 1161, 115, 115, 115, 115, 1416 115, 115, 115, 1161, 745, 115, 1161, 742, 746, 1161, 1417 1418 1161, 115, 115, 743, 115, 1161, 115, 1161, 115, 115, 1419 115, 1161, 1161, 115, 750, 115, 115, 747, 115, 1161, 1420 751, 115, 1161, 1161, 1161, 1161, 746, 1161, 115, 115, 1421 1161, 1161, 115, 1161, 115, 115, 115, 1161, 115, 115, 1422 115, 115, 115, 750, 115, 1161, 747, 115, 1161, 751, 1423 1161, 1161, 1161, 1161, 115, 115, 115, 115, 115, 1161, 1424 115, 1161, 1161, 115, 115, 115, 1161, 1161, 1161, 115, 1425 115, 761, 1161, 1161, 115, 115, 1161, 115, 762, 115, 1426 115, 1161, 115, 115, 1161, 1161, 1161, 115, 763, 1161, 1427 1161, 115, 115, 115, 115, 1161, 115, 1161, 1161, 761, 1428 1429 1161, 1161, 764, 115, 115, 115, 1161, 762, 115, 115, 1430 115, 1161, 115, 765, 115, 1161, 763, 115, 768, 115, 1431 115, 115, 115, 115, 1161, 115, 1161, 1161, 1161, 766, 1432 764, 115, 1161, 115, 1161, 115, 1161, 115, 115, 767, 1433 115, 115, 765, 115, 1161, 1161, 115, 768, 115, 1161, 1434 1161, 1161, 115, 769, 115, 769, 1161, 766, 1161, 115, 1435 1161, 115, 1161, 258, 115, 115, 1161, 1161, 767, 115, 1436 257, 257, 257, 257, 257, 257, 257, 257, 257, 257, 1437 115, 1161, 115, 115, 770, 115, 115, 115, 115, 115, 1438 1161, 115, 115, 1161, 115, 1161, 1161, 1161, 1161, 115, 1439 1440 771, 1161, 115, 1161, 1161, 115, 115, 1161, 115, 115, 1441 1161, 1161, 115, 1161, 115, 115, 115, 115, 115, 115, 1442 115, 115, 1161, 115, 115, 1161, 1161, 115, 771, 1161, 1443 115, 1161, 1161, 115, 115, 115, 115, 1161, 772, 115, 1444 115, 774, 115, 773, 115, 775, 115, 115, 115, 1161, 1445 1161, 115, 1161, 115, 115, 1161, 1161, 1161, 115, 1161, 1446 1161, 115, 115, 1161, 115, 115, 772, 115, 115, 115, 1447 774, 115, 773, 115, 775, 115, 115, 1161, 1161, 776, 1448 115, 115, 115, 115, 1161, 115, 115, 777, 115, 115, 1449 115, 115, 115, 115, 780, 1161, 115, 115, 1161, 115, 1450 1451 1161, 1161, 115, 1161, 778, 779, 1161, 776, 1161, 115, 1452 1161, 115, 115, 115, 115, 1161, 777, 115, 1161, 115, 1453 1161, 115, 1161, 780, 1161, 1161, 115, 1161, 115, 115, 1454 115, 781, 778, 779, 115, 115, 1161, 1161, 1161, 115, 1455 115, 115, 1161, 1161, 1161, 1161, 782, 1161, 115, 1161, 1456 1161, 1161, 1161, 1161, 115, 1161, 1161, 1161, 115, 1161, 1457 781, 115, 1161, 115, 115, 115, 115, 783, 1161, 115, 1458 115, 1161, 784, 115, 782, 1161, 115, 785, 115, 1161, 1459 115, 1161, 115, 1161, 115, 1161, 1161, 1161, 1161, 1161, 1460 115, 1161, 115, 1161, 115, 115, 783, 1161, 115, 115, 1461 1462 784, 1161, 115, 787, 1161, 115, 785, 115, 115, 115, 1463 115, 1161, 115, 786, 115, 1161, 1161, 115, 1161, 1161, 1464 115, 1161, 788, 1161, 115, 115, 1161, 115, 115, 789, 1465 115, 1161, 787, 1161, 115, 1161, 115, 1161, 115, 115, 1466 1161, 115, 786, 115, 115, 115, 1161, 1161, 115, 1161, 1467 788, 1161, 115, 115, 115, 115, 115, 115, 789, 115, 1468 1161, 790, 115, 1161, 1161, 115, 1161, 115, 115, 792, 1469 115, 1161, 115, 115, 115, 1161, 115, 115, 1161, 1161, 1470 1161, 1161, 115, 115, 1161, 1161, 115, 791, 115, 1161, 1471 790, 115, 1161, 1161, 115, 115, 793, 115, 792, 115, 1472 1473 115, 115, 115, 115, 115, 115, 115, 1161, 1161, 1161, 1474 1161, 1161, 1161, 115, 1161, 791, 115, 1161, 795, 115, 1475 796, 1161, 1161, 115, 1161, 793, 115, 1161, 115, 115, 1476 115, 115, 1161, 1161, 115, 115, 1161, 115, 1161, 797, 1477 798, 115, 115, 1161, 1161, 115, 795, 115, 796, 115, 1478 1161, 1161, 1161, 115, 115, 115, 115, 115, 115, 1161, 1479 115, 1161, 115, 1161, 1161, 1161, 115, 797, 799, 798, 1480 1161, 115, 801, 115, 115, 1161, 115, 800, 115, 115, 1481 115, 1161, 115, 115, 115, 115, 115, 115, 1161, 1161, 1482 1161, 115, 1161, 115, 1161, 1161, 799, 1161, 1161, 115, 1483 1484 801, 1161, 1161, 115, 115, 800, 1161, 1161, 115, 115, 1485 1161, 1161, 176, 1161, 115, 1161, 1161, 1161, 176, 115, 1486 1161, 115, 1161, 816, 115, 1161, 110, 115, 111, 111, 1487 111, 111, 111, 111, 111, 111, 111, 111, 115, 115, 1488 115, 115, 1161, 1161, 115, 115, 819, 817, 115, 1161, 1489 1161, 818, 816, 115, 1161, 1161, 1161, 1161, 115, 115, 1490 115, 1161, 1161, 1161, 1161, 1161, 115, 1161, 115, 115, 1491 115, 1161, 211, 115, 115, 819, 817, 1161, 1161, 818, 1492 1161, 1161, 211, 1161, 1161, 1161, 115, 115, 115, 710, 1493 710, 710, 710, 710, 710, 710, 710, 710, 710, 710, 1494 1495 710, 710, 710, 710, 710, 710, 710, 710, 710, 211, 1496 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 211, 1497 1161, 1161, 1161, 1161, 1161, 1161, 712, 712, 712, 712, 1498 712, 712, 712, 712, 712, 712, 712, 712, 712, 712, 1499 712, 712, 712, 712, 712, 712, 823, 823, 211, 823, 1500 823, 823, 823, 823, 823, 823, 823, 823, 823, 823, 1501 823, 823, 823, 828, 823, 829, 829, 829, 829, 829, 1502 829, 829, 829, 829, 829, 823, 823, 823, 823, 823, 1503 830, 830, 830, 830, 830, 830, 830, 830, 830, 830, 1504 830, 830, 830, 830, 830, 830, 830, 830, 830, 830, 1505 1506 830, 830, 830, 830, 830, 830, 823, 823, 830, 830, 1507 830, 830, 830, 830, 830, 830, 830, 830, 830, 830, 1508 830, 830, 830, 830, 830, 830, 830, 830, 830, 830, 1509 830, 830, 830, 830, 823, 832, 77, 832, 1161, 1161, 1510 833, 833, 1161, 833, 1161, 1161, 1161, 833, 833, 1161, 1511 1161, 833, 1161, 1161, 833, 833, 833, 833, 833, 833, 1512 833, 833, 833, 831, 831, 1161, 831, 831, 831, 831, 1513 831, 831, 831, 831, 831, 831, 831, 831, 831, 831, 1514 841, 831, 842, 842, 842, 842, 842, 842, 842, 842, 1515 842, 842, 831, 831, 831, 831, 831, 843, 843, 843, 1516 1517 843, 843, 843, 843, 843, 843, 843, 843, 843, 843, 1518 843, 843, 843, 843, 843, 843, 843, 843, 843, 843, 1519 843, 843, 843, 831, 831, 843, 843, 843, 843, 843, 1520 843, 843, 843, 843, 843, 843, 843, 843, 843, 843, 1521 843, 843, 843, 843, 843, 843, 843, 843, 843, 843, 1522 843, 831, 115, 1161, 1161, 258, 1161, 115, 257, 257, 1523 257, 257, 257, 257, 257, 257, 257, 257, 115, 845, 1524 1161, 844, 115, 115, 115, 115, 1161, 115, 1161, 1161, 1525 115, 115, 1161, 1161, 1161, 1161, 115, 115, 115, 1161, 1526 1161, 115, 1161, 1161, 846, 115, 1161, 115, 845, 844, 1527 1528 115, 115, 115, 115, 115, 1161, 115, 115, 1161, 115, 1529 1161, 1161, 115, 1161, 115, 115, 115, 1161, 115, 115, 1530 1161, 1161, 846, 115, 115, 1161, 115, 1161, 1161, 115, 1531 847, 1161, 1161, 1161, 1161, 1161, 115, 115, 848, 1161, 1532 1161, 115, 115, 115, 1161, 849, 1161, 115, 115, 1161, 1533 115, 115, 115, 1161, 115, 115, 115, 1161, 847, 850, 1534 1161, 852, 115, 852, 1161, 115, 848, 1161, 1161, 115, 1535 115, 1161, 115, 115, 849, 1161, 1161, 115, 115, 115, 1536 115, 1161, 115, 1161, 115, 115, 855, 115, 850, 1161, 1537 115, 1161, 115, 1161, 115, 1161, 853, 115, 115, 115, 1538 1539 1161, 115, 115, 1161, 1161, 1161, 1161, 115, 1161, 854, 1540 1161, 115, 1161, 115, 115, 855, 115, 1161, 858, 115, 1541 115, 1161, 1161, 115, 1161, 853, 115, 1161, 115, 115, 1542 1161, 115, 1161, 115, 115, 1161, 866, 854, 1161, 115, 1543 1161, 115, 1161, 115, 1161, 115, 867, 858, 115, 1161, 1544 1161, 115, 1161, 115, 1161, 115, 115, 868, 1161, 1161, 1545 115, 115, 1161, 115, 1161, 866, 1161, 1161, 115, 1161, 1546 115, 115, 115, 115, 867, 869, 115, 115, 115, 1161, 1547 115, 115, 871, 115, 1161, 115, 868, 1161, 1161, 870, 1548 115, 115, 1161, 1161, 874, 1161, 1161, 115, 115, 115, 1549 1550 115, 115, 1161, 115, 869, 115, 115, 115, 115, 1161, 1551 115, 871, 115, 115, 875, 115, 875, 870, 115, 115, 1552 872, 873, 115, 874, 876, 115, 115, 1161, 115, 115, 1553 1161, 115, 115, 1161, 1161, 1161, 1161, 115, 1161, 115, 1554 877, 115, 1161, 1161, 115, 115, 115, 115, 872, 873, 1555 115, 115, 115, 1161, 878, 115, 1161, 115, 115, 1161, 1556 115, 1161, 879, 115, 1161, 115, 115, 115, 877, 115, 1557 1161, 880, 115, 115, 115, 115, 115, 115, 1161, 1161, 1558 115, 115, 1161, 878, 1161, 1161, 115, 115, 115, 1161, 1559 115, 879, 115, 115, 115, 115, 115, 1161, 115, 115, 1560 1561 880, 115, 1161, 115, 115, 115, 1161, 881, 1161, 115, 1562 115, 1161, 1161, 1161, 115, 115, 115, 882, 115, 115, 1563 1161, 883, 115, 1161, 115, 1161, 1161, 115, 115, 115, 1564 1161, 115, 1161, 115, 1161, 881, 115, 115, 1161, 115, 1565 1161, 115, 115, 115, 115, 882, 115, 115, 115, 883, 1566 115, 115, 1161, 884, 1161, 884, 115, 115, 1161, 1161, 1567 115, 115, 115, 115, 1161, 115, 1161, 1161, 115, 115, 1568 1161, 115, 115, 1161, 115, 1161, 115, 115, 115, 115, 1569 1161, 886, 115, 888, 1161, 1161, 115, 1161, 115, 115, 1570 115, 115, 115, 115, 115, 1161, 1161, 115, 887, 115, 1571 1572 1161, 885, 115, 115, 1161, 115, 1161, 1161, 115, 886, 1573 115, 1161, 888, 889, 1161, 115, 1161, 115, 1161, 115, 1574 115, 115, 1161, 115, 115, 1161, 887, 115, 115, 885, 1575 115, 891, 115, 115, 1161, 1161, 890, 1161, 115, 115, 1576 1161, 889, 1161, 1161, 115, 1161, 115, 1161, 115, 1161, 1577 1161, 892, 1161, 115, 1161, 1161, 115, 1161, 115, 1161, 1578 891, 115, 115, 1161, 890, 1161, 115, 115, 115, 1161, 1579 115, 115, 1161, 115, 115, 115, 115, 1161, 895, 892, 1580 1161, 115, 115, 1161, 1161, 1161, 115, 115, 1161, 115, 1581 115, 115, 1161, 115, 1161, 896, 115, 896, 115, 115, 1582 1583 115, 115, 1161, 1161, 115, 115, 1161, 895, 1161, 115, 1584 1161, 115, 115, 1161, 1161, 1161, 115, 115, 115, 115, 1585 115, 1161, 115, 1161, 115, 115, 115, 115, 115, 115, 1586 897, 906, 1161, 115, 1161, 1161, 1161, 1161, 898, 115, 1587 115, 1161, 1161, 1161, 1161, 115, 1161, 115, 115, 115, 1588 1161, 115, 1161, 115, 115, 115, 115, 115, 1161, 897, 1589 906, 1161, 115, 1161, 907, 1161, 898, 115, 1161, 908, 1590 115, 908, 1161, 115, 258, 115, 802, 77, 804, 175, 1591 115, 1161, 1161, 1161, 1161, 115, 1161, 1161, 1161, 1161, 1592 909, 115, 907, 1161, 1161, 115, 115, 1161, 115, 1161, 1593 1594 1161, 1161, 115, 1161, 1161, 1161, 1161, 115, 1161, 115, 1595 115, 177, 178, 1161, 1161, 179, 1161, 180, 1161, 909, 1596 115, 115, 1161, 1161, 115, 115, 1161, 1161, 341, 182, 1597 1161, 115, 1161, 1161, 1161, 1161, 115, 115, 115, 1161, 1598 177, 178, 1161, 1161, 179, 1161, 180, 1161, 1161, 115, 1599 1161, 1161, 1161, 1161, 1161, 1161, 341, 182, 912, 912, 1600 211, 912, 912, 912, 912, 912, 912, 912, 912, 912, 1601 912, 912, 912, 912, 912, 914, 912, 915, 915, 915, 1602 915, 915, 915, 915, 915, 915, 915, 912, 912, 912, 1603 912, 912, 916, 916, 916, 916, 916, 916, 916, 916, 1604 1605 916, 916, 916, 916, 916, 916, 916, 916, 916, 916, 1606 916, 916, 916, 916, 916, 916, 916, 916, 912, 912, 1607 916, 916, 916, 916, 916, 916, 916, 916, 916, 916, 1608 916, 916, 916, 916, 916, 916, 916, 916, 916, 916, 1609 916, 916, 916, 916, 916, 916, 912, 211, 257, 257, 1610 257, 257, 257, 257, 257, 257, 257, 257, 1161, 1161, 1611 1161, 1161, 1161, 1161, 383, 383, 383, 383, 383, 383, 1612 383, 383, 383, 383, 374, 374, 211, 374, 374, 374, 1613 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 1614 374, 384, 374, 385, 385, 385, 385, 385, 385, 385, 1615 1616 385, 385, 385, 374, 374, 374, 374, 374, 386, 386, 1617 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 1618 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 1619 386, 386, 386, 386, 374, 374, 386, 386, 386, 386, 1620 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 1621 386, 386, 386, 386, 386, 386, 386, 386, 386, 386, 1622 386, 386, 374, 115, 1161, 917, 1161, 115, 115, 918, 1623 115, 115, 115, 919, 115, 1161, 115, 1161, 920, 115, 1624 1161, 1161, 115, 1161, 115, 1161, 115, 1161, 1161, 1161, 1625 115, 1161, 115, 115, 917, 1161, 115, 115, 918, 115, 1626 1627 115, 115, 919, 115, 922, 115, 1161, 920, 115, 115, 1628 115, 115, 115, 1161, 115, 921, 115, 1161, 115, 1161, 1629 115, 115, 1161, 115, 1161, 115, 1161, 115, 1161, 1161, 1630 115, 115, 115, 922, 923, 1161, 115, 1161, 115, 115, 1631 115, 927, 1161, 1161, 921, 115, 115, 1161, 928, 115, 1632 115, 115, 115, 1161, 115, 1161, 115, 115, 115, 1161, 1633 115, 115, 923, 115, 1161, 115, 1161, 115, 115, 927, 1634 1161, 115, 115, 1161, 115, 1161, 928, 115, 115, 1161, 1635 930, 115, 115, 115, 1161, 1161, 115, 1161, 115, 1161, 1636 1161, 938, 115, 1161, 939, 1161, 1161, 115, 1161, 115, 1637 1638 1161, 115, 115, 1161, 115, 1161, 115, 1161, 930, 115, 1639 115, 1161, 115, 115, 1161, 941, 1161, 115, 115, 938, 1640 1161, 940, 939, 115, 1161, 1161, 1161, 1161, 1161, 115, 1641 115, 1161, 115, 115, 115, 115, 1161, 1161, 115, 1161, 1642 115, 1161, 115, 942, 941, 1161, 1161, 115, 115, 940, 1643 1161, 115, 1161, 1161, 115, 1161, 1161, 1161, 115, 1161, 1644 115, 115, 1161, 115, 115, 943, 115, 1161, 115, 115, 1645 115, 942, 944, 115, 1161, 115, 115, 1161, 1161, 1161, 1646 115, 945, 115, 1161, 1161, 1161, 1161, 115, 1161, 115, 1647 115, 115, 1161, 115, 943, 115, 115, 115, 115, 115, 1648 1649 1161, 944, 115, 1161, 115, 1161, 951, 1161, 115, 945, 1650 952, 1161, 115, 115, 115, 115, 115, 115, 115, 115, 1651 115, 115, 115, 1161, 1161, 115, 1161, 115, 1161, 1161, 1652 1161, 1161, 115, 115, 951, 115, 115, 1161, 952, 1161, 1653 115, 115, 115, 115, 953, 115, 1161, 115, 115, 1161, 1654 115, 1161, 115, 115, 1161, 115, 1161, 115, 115, 115, 1655 115, 115, 1161, 115, 115, 115, 1161, 1161, 1161, 1161, 1656 115, 115, 956, 953, 1161, 1161, 955, 1161, 115, 115, 1657 1161, 115, 115, 115, 115, 1161, 115, 115, 115, 1161, 1658 115, 115, 1161, 115, 1161, 115, 115, 1161, 115, 115, 1659 1660 956, 957, 115, 1161, 955, 1161, 115, 115, 115, 115, 1661 115, 115, 1161, 115, 1161, 958, 115, 1161, 1161, 115, 1662 115, 115, 115, 962, 115, 115, 115, 115, 115, 957, 1663 115, 115, 1161, 1161, 115, 1161, 115, 115, 115, 115, 1664 115, 115, 115, 969, 958, 115, 1161, 1161, 115, 115, 1665 1161, 115, 962, 115, 1161, 960, 115, 115, 115, 115, 1666 1161, 1161, 115, 115, 115, 1161, 115, 963, 115, 115, 1667 115, 115, 969, 1161, 1161, 1161, 1161, 115, 115, 1161, 1668 1161, 115, 1161, 960, 970, 115, 1161, 1161, 115, 115, 1669 115, 971, 1161, 115, 115, 115, 963, 1161, 1161, 1161, 1670 1671 115, 1161, 1161, 1161, 1161, 1161, 115, 211, 115, 1161, 1672 1161, 1161, 970, 115, 1161, 1161, 115, 975, 115, 1161, 1673 971, 115, 1161, 115, 383, 383, 383, 383, 383, 383, 1674 383, 383, 383, 383, 1161, 115, 115, 115, 1161, 115, 1675 1161, 1161, 115, 976, 115, 115, 975, 1161, 115, 1161, 1676 115, 1161, 1161, 115, 1161, 1161, 115, 1161, 115, 1161, 1677 1161, 1161, 1161, 115, 1161, 977, 115, 115, 115, 115, 1678 115, 115, 976, 115, 115, 115, 1161, 115, 115, 1161, 1679 1161, 1161, 115, 115, 115, 1161, 115, 1161, 115, 978, 1680 1161, 979, 1161, 977, 1161, 115, 1161, 115, 115, 115, 1681 1682 1161, 115, 1161, 115, 115, 115, 115, 115, 1161, 983, 1683 115, 1161, 115, 982, 1161, 1161, 115, 978, 1161, 979, 1684 115, 115, 1161, 1161, 115, 115, 115, 115, 994, 992, 1685 115, 985, 115, 115, 115, 115, 1161, 1161, 983, 115, 1686 115, 982, 1161, 1161, 1161, 1161, 115, 115, 115, 1161, 1687 115, 1161, 115, 1161, 1161, 115, 115, 994, 992, 115, 1688 985, 115, 115, 993, 115, 115, 115, 1161, 115, 1161, 1689 115, 115, 1161, 1161, 115, 115, 1161, 1161, 115, 1161, 1690 1161, 1161, 115, 1161, 995, 115, 996, 115, 115, 1161, 1691 1161, 115, 993, 115, 115, 115, 115, 1161, 1161, 115, 1692 1693 115, 115, 115, 1161, 997, 1161, 115, 115, 1161, 1161, 1694 115, 115, 995, 115, 996, 1161, 115, 1161, 115, 1161, 1695 115, 115, 115, 115, 1161, 115, 1161, 115, 1161, 115, 1696 1161, 115, 997, 1161, 1161, 1161, 115, 115, 115, 115, 1697 1161, 115, 1161, 115, 115, 1004, 1161, 115, 115, 115, 1698 1161, 115, 115, 1006, 1161, 1161, 115, 1161, 115, 115, 1699 1161, 1161, 115, 1161, 115, 115, 115, 1161, 115, 115, 1700 115, 115, 115, 115, 1004, 115, 1161, 115, 115, 1161, 1701 1161, 1006, 1161, 1161, 1161, 115, 115, 1007, 115, 115, 1702 115, 1161, 115, 115, 1161, 115, 1009, 115, 1161, 115, 1703 1704 115, 1161, 1161, 115, 115, 1161, 115, 1161, 115, 115, 1705 1161, 115, 1161, 115, 115, 1007, 1012, 115, 1161, 1161, 1706 1161, 115, 115, 1161, 1161, 1009, 115, 1011, 115, 115, 1707 1161, 1161, 115, 1161, 115, 115, 1161, 115, 115, 115, 1708 115, 115, 1161, 115, 1012, 1020, 115, 1161, 115, 1019, 1709 115, 1161, 115, 1161, 115, 1011, 115, 115, 115, 1161, 1710 115, 115, 1161, 115, 115, 1161, 115, 1161, 115, 115, 1711 115, 115, 1025, 115, 1020, 115, 115, 1019, 1161, 1161, 1712 115, 115, 115, 1161, 115, 1161, 115, 115, 115, 115, 1713 115, 1161, 1161, 115, 1161, 115, 1161, 115, 115, 115, 1714 1715 1025, 115, 115, 115, 115, 1026, 115, 1161, 115, 115, 1716 1161, 1161, 115, 115, 1161, 115, 1161, 1161, 115, 1029, 1717 115, 1161, 115, 115, 115, 1161, 1030, 115, 1161, 115, 1718 115, 115, 1161, 115, 1026, 115, 1161, 1161, 115, 1161, 1719 115, 115, 1161, 115, 115, 115, 115, 1029, 115, 115, 1720 115, 115, 1161, 115, 1161, 1030, 1038, 1161, 115, 1037, 1721 115, 115, 1161, 115, 115, 1161, 115, 115, 1161, 1161, 1722 115, 115, 115, 115, 115, 115, 1161, 1161, 115, 115, 1723 115, 1161, 1161, 1161, 1038, 1161, 1039, 1037, 115, 1161, 1724 115, 115, 115, 115, 1161, 115, 115, 115, 115, 1040, 1725 1726 115, 115, 115, 1161, 115, 115, 1044, 1161, 115, 115, 1727 1161, 1161, 115, 1161, 1039, 1161, 115, 1161, 1161, 115, 1728 115, 1161, 115, 115, 1161, 115, 115, 115, 1040, 115, 1729 1161, 115, 1161, 115, 115, 1044, 1161, 115, 115, 115, 1730 115, 1047, 115, 1161, 115, 1161, 1161, 115, 1161, 115, 1731 1161, 115, 1161, 115, 115, 1161, 115, 1048, 115, 1161, 1732 115, 1161, 1161, 1161, 115, 115, 115, 115, 1161, 115, 1733 1047, 115, 115, 1161, 1161, 1054, 115, 1161, 1161, 115, 1734 1059, 115, 115, 115, 115, 115, 1048, 115, 1161, 115, 1735 115, 1161, 1161, 115, 115, 115, 1161, 115, 115, 1161, 1736 1737 115, 1161, 115, 1054, 115, 115, 1161, 115, 1062, 1059, 1738 115, 115, 1161, 1161, 115, 1161, 115, 1161, 1161, 115, 1739 115, 1161, 115, 115, 115, 115, 115, 115, 1063, 115, 1740 1161, 115, 115, 1161, 1161, 1067, 1062, 1161, 1161, 115, 1741 1161, 115, 1161, 115, 115, 1161, 1161, 115, 1161, 115, 1742 1161, 115, 115, 115, 115, 1068, 115, 1063, 115, 115, 1743 1161, 1161, 1161, 1067, 115, 1161, 115, 115, 115, 115, 1744 115, 115, 1069, 115, 1073, 115, 115, 1161, 115, 1161, 1745 1161, 115, 1161, 1161, 1068, 1161, 1161, 115, 115, 115, 1746 115, 115, 1161, 115, 115, 115, 115, 115, 1161, 115, 1747 1748 1161, 1069, 115, 1073, 115, 1161, 115, 115, 1161, 115, 1749 1080, 1161, 115, 1161, 1161, 115, 115, 115, 1161, 115, 1750 115, 115, 1161, 115, 115, 115, 115, 1087, 115, 1161, 1751 1161, 1161, 1161, 1161, 1088, 115, 115, 115, 1080, 115, 1752 1161, 115, 115, 1161, 115, 115, 115, 1161, 115, 1161, 1753 115, 115, 115, 115, 115, 1161, 1087, 115, 115, 1091, 1754 1161, 1161, 1088, 115, 1161, 115, 1161, 115, 115, 115, 1755 115, 115, 1095, 115, 115, 115, 115, 115, 1161, 1161, 1756 115, 1161, 115, 1161, 1161, 1161, 115, 1091, 115, 1161, 1757 115, 115, 1161, 115, 115, 115, 115, 1161, 115, 115, 1758 1759 115, 1095, 1106, 115, 1161, 115, 1161, 1161, 1161, 1161, 1760 115, 1161, 1161, 115, 1105, 1161, 115, 115, 115, 1161, 1761 115, 1108, 115, 115, 115, 115, 1161, 1161, 115, 115, 1762 1161, 1106, 1161, 1161, 1161, 1161, 115, 1161, 115, 1161, 1763 115, 115, 1105, 115, 1112, 115, 115, 115, 1161, 115, 1764 1108, 115, 115, 115, 115, 1161, 1161, 1161, 115, 115, 1765 1161, 1122, 1161, 1161, 115, 1161, 115, 1161, 115, 115, 1766 1161, 115, 1112, 1161, 115, 1161, 115, 1161, 115, 1161, 1767 1161, 115, 1161, 115, 1161, 1161, 1161, 115, 1161, 1122, 1768 1161, 1161, 1161, 1161, 115, 1161, 115, 1124, 948, 1124, 1769 1770 1161, 1161, 1125, 1125, 1161, 1125, 1161, 1161, 1161, 1125, 1771 1125, 1161, 1161, 1125, 1161, 1161, 1125, 1125, 1125, 1125, 1772 1125, 1125, 1125, 1125, 1125, 115, 115, 1161, 1161, 1161, 1773 115, 115, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1133, 1774 1161, 1161, 1128, 1161, 115, 115, 1161, 1161, 1161, 1161, 1775 1161, 1161, 1161, 1161, 115, 115, 1161, 1161, 1161, 115, 1776 115, 1161, 1161, 1161, 1161, 1161, 1161, 1133, 1161, 1161, 1777 1128, 1161, 115, 115, 947, 948, 947, 1161, 1161, 1134, 1778 1134, 1161, 1135, 1161, 115, 950, 1134, 1134, 1137, 115, 1779 1134, 1161, 1161, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1780 1781 1134, 1134, 1161, 115, 115, 115, 1161, 1161, 1161, 115, 1782 115, 1161, 1161, 115, 1161, 1161, 1161, 1137, 115, 1161, 1783 1161, 1161, 1161, 115, 115, 1161, 1161, 1161, 1161, 1161, 1784 1161, 115, 1161, 115, 115, 1161, 1161, 1161, 115, 115, 1785 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1786 1161, 115, 115, 64, 64, 64, 64, 64, 64, 64, 1787 64, 64, 64, 64, 64, 65, 65, 65, 65, 65, 1788 65, 65, 65, 65, 65, 65, 65, 81, 81, 1161, 1789 81, 81, 81, 81, 81, 81, 81, 81, 81, 84, 1790 84, 1161, 84, 84, 84, 84, 84, 84, 84, 84, 1791 1792 84, 88, 88, 88, 88, 88, 88, 88, 88, 88, 1793 88, 88, 88, 92, 92, 92, 92, 92, 92, 92, 1794 92, 92, 92, 92, 92, 111, 111, 115, 115, 115, 1795 115, 115, 115, 115, 115, 187, 187, 187, 187, 187, 1796 187, 187, 187, 187, 187, 187, 187, 202, 202, 202, 1797 202, 202, 202, 202, 202, 202, 202, 202, 202, 209, 1798 209, 209, 209, 209, 209, 1161, 209, 209, 209, 1161, 1799 209, 232, 232, 232, 232, 232, 232, 232, 232, 232, 1800 232, 232, 232, 101, 1161, 1161, 101, 252, 252, 252, 1801 1161, 1161, 252, 1161, 252, 252, 1161, 252, 252, 343, 1802 1803 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 1804 343, 358, 358, 1161, 358, 358, 358, 358, 358, 358, 1805 358, 358, 358, 371, 371, 371, 371, 371, 371, 1161, 1806 371, 371, 371, 1161, 371, 374, 374, 374, 374, 374, 1807 374, 374, 374, 374, 374, 374, 374, 379, 379, 379, 1808 379, 379, 379, 379, 379, 379, 379, 379, 379, 422, 1809 1161, 1161, 422, 276, 1161, 1161, 1161, 276, 1161, 1161, 1810 1161, 1161, 1161, 276, 558, 558, 558, 558, 558, 558, 1811 558, 558, 558, 558, 558, 558, 718, 718, 1161, 718, 1812 718, 718, 718, 718, 718, 718, 718, 718, 721, 721, 1813 1814 1161, 721, 721, 721, 721, 721, 721, 721, 721, 721, 1815 723, 723, 1161, 723, 723, 723, 723, 723, 723, 723, 1816 723, 723, 88, 88, 88, 88, 88, 88, 88, 88, 1817 88, 88, 88, 88, 726, 726, 726, 726, 726, 726, 1818 726, 726, 726, 726, 726, 726, 92, 92, 92, 92, 1819 92, 92, 92, 92, 92, 92, 92, 92, 728, 728, 1820 728, 728, 728, 728, 728, 728, 728, 728, 728, 728, 1821 812, 812, 812, 812, 812, 812, 812, 812, 812, 812, 1822 812, 812, 814, 814, 1161, 814, 814, 814, 814, 814, 1823 814, 814, 814, 814, 823, 823, 823, 823, 823, 823, 1824 1825 823, 823, 823, 823, 823, 823, 825, 825, 825, 825, 1826 825, 825, 825, 825, 825, 825, 825, 825, 831, 831, 1827 1161, 831, 831, 831, 831, 831, 831, 831, 831, 831, 1828 834, 834, 1161, 834, 834, 834, 834, 834, 834, 834, 1829 834, 834, 81, 81, 1161, 81, 81, 81, 81, 81, 1830 81, 81, 81, 81, 835, 835, 1161, 835, 835, 835, 1831 835, 835, 835, 835, 835, 835, 84, 84, 1161, 84, 1832 84, 84, 84, 84, 84, 84, 84, 84, 837, 837, 1833 837, 837, 837, 837, 837, 837, 837, 837, 837, 837, 1834 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 1835 1836 88, 88, 838, 838, 838, 838, 838, 838, 838, 838, 1837 838, 838, 838, 838, 92, 92, 92, 92, 92, 92, 1838 92, 92, 92, 92, 92, 92, 187, 187, 187, 187, 1839 187, 187, 187, 187, 187, 187, 187, 187, 904, 904, 1840 904, 904, 904, 904, 904, 904, 904, 904, 904, 904, 1841 358, 358, 1161, 358, 358, 358, 358, 358, 358, 358, 1842 358, 358, 814, 814, 1161, 814, 814, 814, 814, 814, 1843 814, 814, 814, 814, 202, 202, 202, 202, 202, 202, 1844 202, 202, 202, 202, 202, 202, 912, 912, 912, 912, 1845 912, 912, 912, 912, 912, 912, 912, 912, 374, 374, 1846 1847 374, 374, 374, 374, 374, 374, 374, 374, 374, 374, 1848 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, 1849 379, 379, 825, 825, 825, 825, 825, 825, 825, 825, 1850 825, 825, 825, 825, 946, 946, 946, 946, 946, 946, 1851 946, 946, 946, 946, 946, 946, 999, 999, 999, 999, 1852 999, 999, 999, 999, 999, 999, 999, 999, 13, 1161, 1853 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1854 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1855 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1856 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1857 1858 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1859 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1860 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1861 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1862 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161 1213 1863 } ; 1214 1864 1215 static yyconst short int yy_chk[4253] =1865 static yyconst flex_int16_t yy_chk[9249] = 1216 1866 { 0, 1217 1867 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, … … 1221 1871 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1222 1872 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1223 1, 1, 1, 2, 2, 2, 2, 8, 10, 8, 1224 15, 16, 15, 16, 22, 17, 14, 17, 18, 25, 1225 19, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1226 14, 20, 18, 10, 21, 23, 24, 26, 29, 28, 1227 1228 2, 2, 23, 23, 2, 20, 30, 25, 21, 31, 1229 15, 26, 33, 22, 986, 17, 19, 2, 2, 24, 1230 30, 25, 29, 31, 15, 172, 33, 22, 28, 17, 1231 19, 32, 172, 24, 23, 53, 29, 53, 80, 70, 1232 32, 70, 28, 40, 36, 36, 36, 40, 23, 27, 1233 40, 27, 79, 40, 32, 36, 57, 40, 84, 40, 1234 65, 986, 36, 36, 71, 65, 71, 27, 27, 27, 1235 27, 27, 27, 27, 27, 27, 72, 41, 72, 1121, 1236 73, 41, 73, 79, 27, 57, 80, 41, 27, 27, 1237 27, 41, 42, 42, 83, 27, 42, 27, 27, 57, 1238 1239 42, 42, 42, 27, 207, 118, 42, 27, 34, 84, 1240 34, 34, 34, 34, 34, 34, 34, 34, 34, 37, 1241 37, 37, 118, 94, 94, 43, 37, 180, 83, 43, 1242 37, 119, 34, 37, 85, 43, 94, 37, 37, 43, 1243 207, 85, 85, 37, 97, 119, 34, 35, 119, 35, 1244 35, 35, 35, 35, 35, 35, 35, 35, 98, 97, 1245 48, 180, 38, 38, 48, 38, 99, 35, 35, 38, 1246 48, 35, 38, 98, 48, 38, 99, 35, 117, 38, 1247 38, 39, 39, 1115, 35, 35, 44, 208, 205, 117, 1248 44, 39, 234, 39, 44, 117, 39, 39, 39, 39, 1249 1250 44, 45, 46, 39, 44, 45, 46, 205, 208, 45, 1251 61, 46, 46, 46, 61, 45, 46, 47, 46, 45, 1252 61, 47, 49, 55, 61, 47, 49, 234, 55, 181, 1253 49, 47, 50, 158, 47, 47, 49, 47, 49, 50, 1254 49, 49, 49, 50, 51, 194, 50, 158, 122, 50, 1255 59, 51, 169, 56, 59, 51, 50, 59, 51, 56, 1256 59, 51, 55, 181, 59, 122, 169, 56, 51, 52, 1257 1152, 52, 52, 60, 1152, 104, 55, 52, 87, 194, 1258 60, 66, 66, 66, 60, 87, 87, 60, 1100, 229, 1259 60, 56, 168, 66, 86, 86, 86, 60, 168, 104, 1260 1261 217, 129, 86, 86, 89, 56, 52, 52, 90, 52, 1262 52, 89, 89, 104, 126, 90, 90, 116, 129, 116, 1263 121, 66, 121, 52, 52, 54, 54, 54, 54, 229, 1264 177, 126, 126, 54, 116, 66, 177, 121, 89, 127, 1265 120, 540, 127, 54, 54, 54, 54, 54, 54, 54, 1266 54, 54, 120, 120, 217, 1096, 127, 120, 120, 90, 1267 133, 137, 54, 54, 540, 54, 54, 106, 106, 106, 1268 106, 106, 106, 106, 106, 106, 137, 133, 137, 54, 1269 54, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1270 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1271 1272 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1273 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1274 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1275 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1276 67, 67, 67, 67, 93, 182, 93, 108, 108, 107, 1277 109, 108, 214, 123, 109, 109, 377, 108, 109, 338, 1278 125, 108, 108, 378, 109, 123, 200, 1093, 109, 109, 1279 123, 125, 107, 107, 111, 111, 107, 125, 111, 93, 1280 128, 132, 107, 93, 111, 93, 107, 107, 111, 111, 1281 93, 377, 93, 93, 214, 132, 182, 128, 132, 338, 1282 1283 128, 134, 93, 103, 103, 103, 103, 103, 103, 103, 1284 103, 103, 110, 110, 134, 378, 110, 200, 134, 216, 1285 152, 152, 110, 103, 103, 110, 110, 110, 112, 112, 1286 113, 113, 112, 131, 113, 183, 103, 152, 112, 143, 1287 113, 183, 112, 112, 131, 114, 114, 113, 113, 114, 1288 131, 143, 135, 115, 135, 114, 143, 115, 115, 114, 1289 114, 115, 139, 184, 216, 520, 130, 115, 139, 184, 1290 115, 115, 115, 124, 130, 124, 368, 184, 206, 139, 1291 136, 130, 136, 130, 140, 130, 138, 135, 138, 124, 1292 136, 124, 124, 124, 124, 124, 124, 124, 124, 124, 1293 1294 138, 140, 138, 138, 135, 138, 135, 140, 141, 142, 1295 144, 206, 142, 368, 367, 136, 145, 520, 336, 157, 1296 146, 141, 148, 144, 336, 141, 142, 144, 124, 145, 1297 124, 146, 136, 145, 147, 149, 157, 146, 147, 148, 1298 150, 148, 151, 153, 367, 153, 154, 155, 150, 1091, 1299 151, 147, 149, 147, 263, 149, 151, 150, 155, 151, 1300 153, 153, 153, 154, 155, 153, 156, 154, 159, 159, 1301 161, 160, 156, 162, 161, 196, 196, 196, 163, 156, 1302 159, 162, 163, 156, 160, 159, 164, 161, 160, 165, 1303 162, 165, 165, 263, 164, 163, 166, 165, 166, 166, 1304 1305 189, 186, 352, 164, 166, 185, 188, 185, 174, 215, 1306 174, 174, 186, 211, 189, 211, 174, 189, 186, 186, 1307 548, 190, 199, 188, 191, 188, 165, 165, 191, 225, 1308 165, 225, 369, 166, 166, 187, 190, 166, 190, 340, 1309 185, 191, 352, 165, 165, 174, 174, 187, 187, 174, 1310 166, 166, 187, 187, 185, 548, 199, 201, 201, 201, 1311 215, 218, 174, 174, 176, 176, 176, 176, 218, 218, 1312 221, 369, 176, 224, 226, 357, 226, 221, 221, 1086, 1313 224, 224, 176, 176, 176, 176, 176, 176, 176, 176, 1314 176, 223, 201, 340, 1084, 219, 219, 219, 223, 223, 1315 1316 245, 176, 176, 219, 219, 176, 201, 220, 220, 220, 1317 227, 245, 227, 239, 239, 220, 220, 245, 176, 176, 1318 202, 240, 241, 240, 241, 337, 239, 224, 242, 357, 1319 242, 337, 343, 373, 343, 373, 223, 202, 202, 202, 1320 202, 202, 202, 202, 202, 202, 203, 203, 203, 203, 1321 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 1322 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 1323 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 1324 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 1325 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 1326 1327 203, 203, 203, 203, 203, 203, 203, 203, 203, 246, 1328 247, 249, 517, 248, 280, 370, 280, 252, 517, 250, 1329 251, 1080, 254, 255, 280, 249, 246, 252, 249, 246, 1330 248, 248, 250, 251, 252, 247, 250, 251, 253, 254, 1331 255, 255, 256, 257, 258, 370, 261, 259, 1078, 253, 1332 261, 258, 247, 266, 256, 253, 260, 256, 259, 256, 1333 257, 258, 257, 261, 259, 264, 264, 260, 265, 269, 1334 266, 272, 267, 260, 275, 265, 267, 269, 271, 270, 1335 541, 270, 264, 273, 1074, 265, 269, 273, 272, 267, 1336 268, 275, 268, 276, 274, 271, 271, 271, 274, 277, 1337 1338 273, 277, 278, 541, 278, 276, 282, 279, 1070, 270, 1339 276, 274, 297, 1069, 270, 283, 277, 282, 284, 285, 1340 268, 279, 339, 282, 279, 268, 283, 1066, 268, 297, 1341 268, 270, 283, 268, 361, 284, 285, 268, 284, 285, 1342 268, 286, 268, 268, 268, 286, 287, 268, 290, 288, 1343 289, 288, 289, 291, 287, 292, 278, 291, 286, 288, 1344 289, 298, 293, 287, 294, 290, 293, 339, 290, 295, 1345 291, 1063, 292, 299, 292, 296, 300, 316, 298, 293, 1346 361, 294, 295, 296, 288, 289, 295, 301, 294, 300, 1347 299, 299, 296, 300, 316, 288, 289, 302, 303, 305, 1348 1349 301, 288, 289, 302, 301, 288, 289, 304, 301, 303, 1350 304, 306, 307, 308, 302, 303, 305, 1061, 304, 305, 1351 311, 308, 309, 310, 304, 313, 309, 310, 306, 307, 1352 308, 306, 307, 311, 312, 314, 376, 311, 315, 309, 1353 310, 312, 313, 318, 313, 320, 317, 321, 317, 322, 1354 318, 312, 314, 315, 314, 315, 317, 319, 320, 321, 1355 318, 323, 320, 319, 321, 324, 322, 324, 324, 341, 1356 356, 347, 346, 324, 319, 341, 346, 351, 323, 348, 1357 323, 317, 1048, 341, 325, 376, 325, 325, 347, 346, 1358 347, 327, 325, 327, 327, 1056, 348, 360, 317, 327, 1359 1360 349, 349, 324, 324, 379, 519, 324, 350, 531, 414, 1361 351, 350, 354, 354, 354, 356, 408, 349, 408, 324, 1362 324, 325, 325, 380, 350, 325, 414, 351, 327, 327, 1363 380, 380, 327, 359, 359, 359, 1048, 360, 325, 325, 1364 411, 410, 379, 410, 381, 327, 327, 335, 335, 335, 1365 335, 381, 381, 382, 1055, 335, 519, 411, 411, 531, 1366 382, 382, 445, 1051, 445, 335, 335, 335, 335, 335, 1367 335, 335, 335, 335, 383, 383, 383, 383, 383, 383, 1368 383, 383, 383, 518, 335, 335, 401, 401, 335, 518, 1369 542, 382, 445, 545, 1050, 545, 381, 416, 415, 401, 1370 1371 415, 335, 335, 362, 384, 384, 384, 384, 384, 384, 1372 384, 384, 384, 542, 416, 415, 521, 652, 1049, 652, 1373 362, 362, 362, 362, 362, 362, 362, 362, 362, 385, 1374 385, 385, 385, 385, 385, 385, 385, 385, 417, 418, 1375 532, 362, 363, 386, 386, 386, 386, 386, 386, 386, 1376 386, 386, 656, 533, 521, 417, 418, 418, 656, 363, 1377 363, 363, 363, 363, 363, 363, 363, 363, 387, 387, 1378 387, 387, 387, 387, 387, 387, 387, 419, 420, 422, 1379 363, 366, 388, 388, 388, 388, 388, 388, 388, 388, 1380 388, 533, 532, 422, 419, 420, 422, 1044, 366, 366, 1381 1382 366, 366, 366, 366, 366, 366, 366, 402, 402, 402, 1383 402, 402, 402, 402, 402, 402, 403, 403, 403, 403, 1384 403, 403, 403, 403, 403, 404, 404, 404, 404, 404, 1385 404, 404, 404, 404, 405, 405, 405, 405, 405, 405, 1386 405, 405, 405, 406, 406, 406, 406, 406, 406, 406, 1387 406, 406, 407, 407, 407, 407, 407, 407, 407, 407, 1388 407, 412, 421, 423, 424, 412, 421, 425, 535, 426, 1389 428, 427, 424, 426, 423, 432, 1042, 436, 412, 421, 1390 423, 424, 427, 428, 425, 430, 426, 428, 427, 431, 1391 437, 436, 432, 432, 436, 1022, 430, 431, 433, 438, 1392 1393 433, 439, 430, 440, 438, 441, 431, 437, 539, 441, 1394 437, 442, 438, 444, 443, 439, 438, 535, 439, 447, 1395 440, 443, 441, 449, 450, 441, 450, 451, 442, 584, 1396 444, 443, 452, 433, 444, 442, 447, 584, 447, 780, 1397 449, 433, 1022, 453, 451, 539, 451, 455, 457, 452, 1398 433, 657, 458, 456, 450, 433, 434, 657, 434, 450, 1399 453, 456, 453, 587, 455, 457, 459, 460, 457, 458, 1400 456, 458, 1040, 460, 459, 462, 450, 462, 780, 587, 1401 460, 461, 1038, 459, 460, 463, 434, 463, 465, 461, 1402 466, 467, 462, 467, 434, 463, 434, 1031, 461, 434, 1403 1404 1029, 467, 465, 434, 553, 465, 434, 466, 470, 434, 1405 434, 553, 553, 434, 448, 448, 448, 448, 448, 448, 1406 448, 448, 448, 448, 448, 470, 448, 448, 448, 448, 1407 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 1408 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 1409 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 1410 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, 1411 448, 448, 448, 448, 448, 448, 448, 469, 471, 472, 1412 473, 474, 475, 476, 663, 1028, 663, 477, 1025, 471, 1413 472, 469, 480, 478, 469, 471, 472, 473, 474, 475, 1414 1415 476, 477, 479, 481, 477, 478, 479, 482, 483, 480, 1416 478, 480, 485, 484, 486, 487, 488, 489, 490, 479, 1417 481, 484, 481, 491, 482, 483, 492, 488, 492, 485, 1418 484, 490, 487, 488, 489, 490, 493, 486, 494, 495, 1419 491, 496, 497, 492, 501, 503, 498, 499, 502, 499, 1420 504, 534, 502, 493, 486, 494, 658, 499, 496, 497, 1421 498, 501, 503, 498, 495, 502, 505, 504, 506, 1024, 1422 505, 507, 506, 507, 507, 528, 522, 550, 1018, 507, 1423 563, 495, 522, 505, 563, 506, 508, 682, 508, 508, 1424 522, 1017, 528, 509, 508, 509, 509, 563, 658, 526, 1425 1426 565, 509, 534, 527, 525, 527, 525, 526, 507, 507, 1427 682, 668, 507, 668, 525, 550, 526, 565, 566, 568, 1428 567, 552, 567, 508, 508, 507, 507, 508, 552, 552, 1429 509, 509, 1015, 566, 509, 566, 568, 567, 527, 525, 1430 508, 508, 525, 1012, 529, 572, 529, 509, 509, 516, 1431 516, 516, 516, 1021, 529, 527, 525, 516, 529, 552, 1432 570, 789, 572, 569, 570, 571, 574, 516, 516, 516, 1433 516, 516, 516, 516, 516, 516, 569, 570, 571, 529, 1434 569, 573, 571, 574, 574, 576, 516, 516, 1021, 576, 1435 516, 607, 785, 607, 785, 573, 529, 1011, 573, 590, 1436 1437 789, 592, 576, 516, 516, 536, 559, 559, 559, 559, 1438 559, 559, 559, 559, 559, 1009, 590, 536, 592, 536, 1439 982, 607, 536, 536, 536, 536, 536, 536, 536, 536, 1440 536, 537, 560, 560, 560, 560, 560, 560, 560, 560, 1441 560, 1001, 659, 677, 677, 677, 999, 997, 537, 537, 1442 537, 537, 537, 537, 537, 537, 537, 561, 561, 561, 1443 561, 561, 561, 561, 561, 561, 593, 996, 982, 537, 1444 538, 562, 562, 562, 562, 562, 562, 562, 562, 562, 1445 659, 580, 538, 593, 538, 593, 580, 538, 538, 538, 1446 538, 538, 538, 538, 538, 538, 564, 564, 580, 564, 1447 1448 564, 564, 564, 564, 564, 564, 564, 564, 564, 564, 1449 564, 564, 564, 564, 564, 564, 564, 564, 564, 564, 1450 564, 564, 564, 564, 564, 564, 564, 564, 564, 564, 1451 564, 564, 564, 564, 564, 564, 564, 564, 564, 564, 1452 564, 564, 564, 564, 564, 564, 564, 564, 564, 564, 1453 564, 564, 564, 564, 564, 564, 564, 564, 564, 577, 1454 578, 579, 581, 579, 596, 591, 595, 578, 594, 581, 1455 577, 594, 597, 597, 600, 596, 577, 578, 591, 581, 1456 595, 596, 591, 595, 598, 594, 599, 992, 991, 597, 1457 599, 600, 601, 1153, 601, 604, 673, 1153, 605, 598, 1458 1459 609, 598, 610, 599, 579, 603, 603, 603, 603, 603, 1460 603, 603, 603, 603, 604, 605, 606, 609, 579, 610, 1461 611, 610, 601, 613, 615, 613, 616, 601, 611, 606, 1462 617, 604, 614, 606, 617, 614, 618, 611, 673, 620, 1463 613, 615, 621, 616, 601, 619, 622, 617, 622, 614, 1464 619, 676, 620, 618, 623, 618, 620, 625, 624, 621, 1465 624, 627, 619, 622, 628, 623, 626, 630, 625, 627, 1466 626, 623, 629, 632, 625, 624, 629, 628, 627, 633, 1467 634, 628, 631, 626, 630, 635, 631, 635, 637, 629, 1468 632, 638, 640, 676, 639, 640, 633, 634, 633, 631, 1469 1470 641, 643, 635, 644, 984, 637, 637, 639, 638, 640, 1471 638, 639, 645, 646, 650, 792, 650, 641, 643, 641, 1472 644, 643, 644, 647, 650, 647, 647, 661, 983, 645, 1473 646, 647, 648, 661, 648, 648, 664, 654, 664, 654, 1474 648, 661, 649, 674, 649, 649, 664, 654, 667, 666, 1475 649, 654, 650, 666, 792, 696, 667, 794, 794, 794, 1476 647, 647, 696, 696, 647, 667, 666, 704, 697, 648, 1477 648, 669, 703, 648, 664, 697, 697, 647, 647, 649, 1478 649, 674, 669, 649, 704, 938, 648, 648, 669, 980, 1479 672, 703, 672, 670, 977, 670, 649, 649, 655, 655, 1480 1481 655, 655, 698, 670, 672, 705, 655, 670, 703, 698, 1482 698, 702, 702, 702, 702, 702, 702, 702, 702, 702, 1483 706, 707, 705, 938, 705, 708, 709, 710, 711, 716, 1484 711, 719, 714, 712, 714, 655, 655, 706, 707, 655, 1485 707, 712, 708, 709, 710, 711, 716, 710, 719, 709, 1486 712, 715, 655, 655, 678, 715, 740, 975, 740, 819, 1487 870, 819, 870, 876, 736, 876, 720, 714, 715, 714, 1488 720, 678, 678, 678, 678, 678, 678, 678, 678, 678, 1489 679, 736, 714, 720, 714, 915, 740, 915, 972, 956, 1490 731, 732, 731, 733, 738, 732, 819, 679, 679, 679, 1491 1492 679, 679, 679, 679, 679, 679, 680, 731, 732, 819, 1493 733, 738, 871, 733, 955, 954, 734, 735, 742, 748, 1494 749, 735, 734, 680, 680, 680, 680, 680, 680, 680, 1495 680, 680, 681, 734, 735, 742, 748, 749, 765, 805, 1496 765, 935, 965, 935, 965, 871, 805, 805, 765, 681, 1497 681, 681, 681, 681, 681, 681, 681, 681, 684, 684, 1498 684, 684, 684, 684, 684, 684, 684, 684, 684, 684, 1499 684, 684, 684, 684, 684, 684, 684, 684, 684, 684, 1500 684, 684, 684, 684, 684, 684, 684, 684, 684, 684, 1501 684, 684, 684, 684, 684, 684, 684, 684, 684, 684, 1502 1503 684, 684, 684, 684, 684, 684, 684, 684, 684, 684, 1504 684, 684, 684, 684, 684, 684, 684, 684, 684, 684, 1505 684, 688, 688, 806, 688, 1007, 953, 1007, 688, 688, 1506 806, 806, 688, 952, 951, 688, 688, 688, 688, 688, 1507 688, 688, 688, 701, 701, 949, 701, 701, 701, 701, 1508 701, 701, 701, 701, 701, 701, 701, 701, 701, 701, 1509 701, 701, 701, 701, 701, 701, 701, 701, 701, 701, 1510 701, 701, 701, 701, 701, 701, 701, 701, 701, 701, 1511 701, 701, 701, 701, 701, 701, 701, 701, 701, 701, 1512 701, 701, 701, 701, 701, 701, 701, 701, 701, 701, 1513 1514 701, 701, 701, 701, 701, 701, 737, 739, 744, 743, 1515 737, 743, 745, 746, 750, 1111, 751, 746, 739, 743, 1516 745, 753, 744, 737, 739, 744, 752, 946, 747, 745, 1517 746, 750, 747, 751, 751, 754, 755, 752, 753, 756, 1518 757, 758, 757, 752, 743, 747, 759, 760, 761, 1111, 1519 762, 764, 754, 755, 762, 767, 756, 763, 758, 758, 1520 768, 743, 766, 759, 760, 761, 760, 762, 764, 763, 1521 766, 769, 767, 1068, 763, 757, 770, 768, 770, 766, 1522 771, 772, 773, 810, 773, 773, 786, 934, 769, 814, 1523 757, 786, 757, 774, 945, 774, 774, 771, 772, 771, 1524 1525 810, 774, 775, 786, 775, 775, 814, 788, 787, 788, 1526 809, 770, 865, 770, 865, 812, 816, 812, 811, 773, 1527 773, 787, 811, 773, 934, 787, 1068, 821, 770, 809, 1528 774, 774, 812, 816, 774, 811, 773, 773, 817, 775, 1529 775, 813, 788, 775, 821, 813, 809, 774, 774, 865, 1530 933, 1036, 817, 1036, 932, 817, 775, 775, 813, 788, 1531 795, 795, 795, 795, 795, 795, 795, 795, 795, 795, 1532 795, 795, 795, 795, 795, 795, 795, 795, 795, 795, 1533 795, 795, 795, 795, 795, 795, 795, 795, 795, 795, 1534 795, 795, 795, 795, 795, 795, 795, 795, 795, 795, 1535 1536 795, 795, 795, 795, 795, 795, 795, 795, 795, 795, 1537 795, 795, 795, 795, 795, 795, 795, 795, 795, 795, 1538 795, 795, 795, 796, 808, 808, 808, 808, 808, 808, 1539 808, 808, 808, 815, 822, 820, 825, 815, 834, 835, 1540 796, 796, 796, 796, 796, 796, 796, 796, 796, 820, 1541 815, 822, 820, 825, 836, 834, 835, 834, 837, 838, 1542 839, 838, 840, 841, 842, 836, 929, 841, 842, 927, 1543 922, 836, 843, 846, 839, 837, 838, 839, 845, 840, 1544 841, 842, 844, 843, 844, 845, 846, 847, 845, 843, 1545 846, 848, 844, 849, 850, 851, 853, 851, 854, 852, 1546 1547 854, 855, 856, 857, 847, 858, 847, 852, 848, 858, 1548 849, 850, 851, 853, 857, 859, 852, 860, 855, 856, 1549 857, 856, 858, 861, 864, 862, 866, 862, 877, 867, 1550 874, 879, 859, 875, 860, 862, 884, 867, 883, 883, 1551 861, 864, 886, 866, 904, 864, 867, 874, 854, 887, 1552 875, 875, 885, 884, 888, 883, 885, 889, 894, 886, 1553 893, 877, 894, 896, 879, 880, 887, 896, 1020, 885, 1554 889, 888, 893, 888, 889, 894, 906, 893, 908, 902, 1555 896, 906, 880, 880, 880, 880, 880, 880, 880, 880, 1556 880, 905, 907, 906, 909, 908, 907, 910, 911, 905, 1557 1558 914, 913, 1043, 912, 1081, 1020, 918, 914, 905, 907, 1559 914, 909, 916, 909, 910, 911, 912, 910, 913, 916, 1560 912, 917, 916, 918, 919, 920, 923, 924, 917, 920, 1561 921, 917, 921, 925, 926, 928, 930, 939, 937, 928, 1562 923, 919, 920, 923, 924, 931, 936, 921, 940, 1043, 1563 925, 926, 928, 930, 930, 937, 941, 1081, 931, 940, 1564 942, 944, 931, 936, 943, 940, 936, 947, 943, 948, 1565 950, 948, 901, 941, 939, 958, 939, 942, 944, 959, 1566 960, 943, 947, 961, 947, 962, 948, 950, 963, 958, 1567 988, 964, 958, 964, 966, 961, 959, 960, 970, 987, 1568 1569 961, 966, 962, 900, 966, 963, 968, 963, 964, 967, 1570 967, 967, 969, 968, 971, 970, 968, 967, 974, 969, 1571 967, 973, 969, 973, 976, 978, 979, 990, 985, 978, 1572 979, 971, 988, 1004, 899, 974, 989, 987, 973, 985, 1573 989, 976, 978, 979, 990, 985, 993, 994, 1002, 1003, 1574 1004, 1003, 1005, 989, 1006, 994, 1016, 993, 1006, 1013, 1575 1005, 1002, 898, 993, 994, 1002, 1003, 1014, 1019, 1005, 1576 897, 1006, 1008, 1008, 1008, 1010, 1013, 1023, 1026, 1010, 1577 1008, 1027, 1026, 1008, 1014, 1019, 1032, 1019, 1034, 1016, 1578 1035, 1046, 1010, 1033, 1023, 1026, 1047, 1033, 1027, 1027, 1579 1580 1057, 1034, 1065, 1032, 1052, 1034, 1039, 1035, 1046, 1039, 1581 1033, 1037, 1037, 1037, 1058, 1067, 1053, 1057, 1058, 1037, 1582 1062, 1052, 1037, 1039, 1053, 895, 1059, 1052, 1059, 1047, 1583 1071, 1058, 1072, 1053, 1060, 1060, 1060, 1062, 1075, 1083, 1584 1062, 1079, 1060, 1103, 1089, 1060, 1072, 1071, 1087, 1072, 1585 1065, 1089, 1067, 1109, 1089, 1075, 1076, 1076, 1079, 1076, 1586 1094, 1087, 892, 1076, 1076, 1087, 1095, 1076, 1107, 1110, 1587 1076, 1076, 1076, 1076, 1076, 1076, 1076, 1076, 1077, 1077, 1588 1077, 1092, 1104, 1108, 1113, 1092, 1077, 1083, 1114, 1077, 1589 1090, 1109, 1112, 1094, 1090, 1090, 1103, 1090, 1092, 1095, 1590 1591 1090, 1090, 1090, 1097, 1101, 1090, 1116, 1118, 1090, 1090, 1592 1090, 1090, 1090, 1090, 1090, 1090, 1098, 1099, 1119, 1107, 1593 1097, 1101, 1110, 1098, 1099, 1112, 1098, 1099, 1120, 1104, 1594 1145, 1108, 1145, 1146, 1147, 1146, 1147, 1113, 1149, 891, 1595 1149, 1114, 1150, 882, 1150, 1118, 1151, 1157, 1151, 1157, 1596 878, 1158, 1119, 1158, 873, 872, 869, 1116, 868, 863, 1597 833, 832, 831, 830, 829, 828, 827, 826, 824, 818, 1598 804, 802, 798, 793, 791, 790, 783, 782, 781, 778, 1599 777, 1120, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1600 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1125, 1601 1602 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1603 1125, 1125, 1125, 1125, 1125, 1125, 1126, 1126, 776, 1126, 1604 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1605 1126, 1126, 1126, 1127, 1127, 730, 1127, 1127, 1127, 1127, 1606 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1607 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1608 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1129, 1129, 1129, 1609 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1610 1129, 1129, 1129, 1129, 1130, 1130, 729, 728, 727, 726, 1611 1130, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1612 1613 1131, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1614 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1133, 725, 1615 1133, 724, 1133, 1133, 722, 718, 717, 713, 1133, 1134, 1616 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1617 1134, 1134, 1134, 1134, 1134, 1134, 1135, 1135, 1135, 1135, 1618 1135, 1135, 1135, 1135, 1135, 1135, 695, 1135, 1135, 1135, 1619 1135, 694, 1135, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1620 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1621 1137, 692, 691, 1137, 1137, 1138, 1138, 1138, 1138, 685, 1622 1138, 1138, 683, 1138, 1138, 675, 1138, 1138, 662, 660, 1623 1624 1138, 1138, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1625 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1140, 1626 653, 1140, 651, 636, 1140, 1141, 589, 1141, 588, 1141, 1627 1141, 1142, 1142, 586, 1142, 1142, 1142, 1142, 1142, 1142, 1628 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1143, 1143, 1629 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1630 1143, 1143, 1143, 1143, 1143, 1144, 1144, 1144, 1144, 1144, 1631 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1632 1144, 1144, 1148, 585, 583, 1148, 1148, 1154, 582, 1154, 1633 575, 556, 551, 549, 1154, 546, 543, 530, 524, 523, 1634 1635 515, 514, 1154, 1155, 513, 1155, 512, 511, 1155, 1156, 1636 510, 1156, 454, 1156, 1156, 1159, 429, 1159, 409, 400, 1637 1159, 1160, 398, 1160, 397, 1160, 1160, 1161, 1161, 391, 1873 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1874 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1875 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1876 2, 2, 2, 10, 8, 8, 8, 8, 15, 15, 1877 1878 15, 68, 1129, 14, 10, 1119, 68, 2, 2, 2, 1879 2, 2, 2, 2, 2, 2, 2, 14, 16, 16, 1880 16, 54, 54, 54, 2, 2, 18, 10, 2, 19, 1881 2, 8, 14, 17, 17, 17, 15, 20, 21, 1096, 1882 18, 2, 2, 176, 22, 14, 1084, 25, 26, 176, 1883 15, 20, 21, 2, 2, 18, 10, 2, 75, 2, 1884 8, 25, 42, 19, 69, 15, 20, 21, 18, 2, 1885 2, 17, 24, 27, 26, 23, 25, 19, 15, 20, 1886 21, 22, 23, 23, 29, 17, 75, 27, 26, 25, 1887 1045, 42, 19, 24, 959, 22, 30, 339, 74, 339, 1888 1889 17, 82, 27, 26, 340, 19, 340, 24, 83, 69, 1890 22, 29, 23, 17, 31, 27, 26, 32, 30, 34, 1891 41, 178, 24, 22, 916, 29, 23, 74, 31, 912, 1892 82, 32, 30, 34, 41, 24, 83, 69, 49, 685, 1893 29, 23, 49, 31, 905, 685, 32, 30, 34, 41, 1894 178, 207, 33, 29, 23, 28, 31, 28, 33, 32, 1895 30, 34, 41, 76, 76, 76, 242, 49, 67, 67, 1896 67, 49, 33, 28, 28, 28, 28, 28, 28, 28, 1897 28, 28, 28, 86, 43, 63, 207, 33, 28, 43, 1898 44, 350, 28, 28, 28, 242, 43, 43, 904, 28, 1899 1900 33, 28, 28, 63, 44, 67, 91, 28, 77, 77, 1901 77, 28, 86, 43, 63, 207, 837, 28, 43, 44, 1902 350, 28, 28, 28, 43, 43, 87, 28, 360, 28, 1903 28, 63, 44, 835, 67, 28, 78, 78, 78, 28, 1904 35, 86, 35, 35, 35, 35, 35, 35, 35, 35, 1905 35, 35, 38, 40, 830, 91, 38, 360, 35, 35, 1906 38, 40, 35, 903, 40, 102, 38, 40, 35, 103, 1907 38, 107, 87, 40, 90, 35, 35, 79, 79, 79, 1908 825, 38, 40, 91, 342, 38, 342, 35, 35, 38, 1909 40, 35, 40, 102, 38, 40, 35, 103, 38, 107, 1910 1911 87, 40, 108, 35, 35, 36, 90, 36, 36, 36, 1912 36, 36, 36, 36, 36, 36, 36, 179, 37, 359, 1913 39, 359, 36, 903, 823, 37, 45, 36, 822, 37, 1914 108, 39, 37, 39, 45, 90, 39, 39, 46, 205, 1915 45, 36, 37, 39, 812, 179, 46, 37, 393, 39, 1916 180, 36, 46, 182, 37, 45, 36, 37, 46, 39, 1917 37, 39, 48, 45, 39, 39, 51, 46, 45, 36, 1918 37, 39, 47, 51, 811, 46, 48, 393, 180, 48, 1919 46, 182, 48, 51, 205, 47, 46, 47, 104, 50, 1920 220, 48, 47, 50, 529, 51, 529, 50, 396, 52, 1921 1922 450, 47, 51, 104, 48, 50, 52, 48, 50, 50, 1923 48, 51, 205, 47, 532, 47, 52, 104, 50, 804, 1924 47, 220, 50, 80, 80, 80, 50, 396, 52, 450, 1925 530, 104, 530, 50, 92, 52, 50, 50, 55, 55, 1926 55, 92, 92, 532, 52, 53, 53, 53, 53, 220, 1927 56, 223, 531, 53, 531, 56, 55, 55, 55, 55, 1928 55, 55, 55, 55, 55, 55, 184, 184, 184, 94, 1929 70, 70, 70, 71, 71, 71, 94, 94, 60, 223, 1930 53, 53, 70, 53, 53, 71, 53, 56, 726, 60, 1931 106, 191, 60, 686, 93, 93, 93, 53, 53, 686, 1932 1933 106, 56, 93, 93, 181, 70, 725, 60, 71, 53, 1934 53, 181, 53, 53, 723, 53, 56, 60, 722, 106, 1935 60, 72, 72, 72, 910, 53, 53, 214, 106, 56, 1936 57, 58, 181, 72, 70, 96, 57, 71, 222, 181, 1937 191, 716, 96, 96, 57, 189, 57, 57, 57, 57, 1938 57, 57, 57, 57, 57, 57, 59, 222, 58, 72, 1939 59, 208, 208, 208, 59, 58, 57, 96, 191, 58, 1940 59, 190, 58, 72, 59, 714, 214, 189, 61, 206, 1941 57, 706, 58, 61, 910, 59, 222, 58, 72, 59, 1942 61, 61, 62, 59, 58, 57, 96, 58, 59, 62, 1943 1944 58, 72, 59, 190, 214, 224, 189, 61, 57, 62, 1945 58, 206, 61, 210, 210, 210, 62, 689, 61, 61, 1946 664, 62, 225, 225, 225, 585, 580, 232, 62, 578, 1947 558, 235, 190, 224, 232, 232, 554, 62, 235, 235, 1948 206, 372, 372, 372, 62, 73, 73, 73, 73, 73, 1949 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 1950 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 1951 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 1952 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 1953 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 1954 1955 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 1956 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 1957 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 1958 73, 73, 73, 73, 97, 101, 101, 105, 204, 204, 1959 204, 97, 97, 226, 538, 227, 213, 675, 101, 675, 1960 534, 111, 105, 111, 111, 111, 111, 111, 111, 111, 1961 111, 111, 111, 421, 101, 101, 105, 375, 375, 375, 1962 419, 226, 173, 227, 173, 204, 101, 114, 213, 534, 1963 105, 219, 412, 97, 113, 113, 113, 113, 113, 113, 1964 113, 113, 113, 113, 114, 228, 115, 118, 219, 114, 1965 1966 116, 115, 118, 125, 204, 116, 410, 213, 125, 231, 1967 173, 97, 100, 114, 100, 115, 118, 229, 116, 116, 1968 386, 221, 125, 114, 173, 115, 118, 219, 114, 116, 1969 115, 118, 125, 379, 116, 228, 249, 125, 230, 173, 1970 374, 114, 251, 115, 118, 100, 116, 116, 117, 100, 1971 125, 100, 173, 117, 243, 221, 100, 276, 100, 100, 1972 248, 231, 117, 228, 249, 401, 229, 117, 100, 294, 1973 251, 294, 401, 401, 100, 371, 343, 117, 100, 294, 1974 100, 230, 117, 221, 100, 276, 100, 100, 535, 231, 1975 117, 250, 243, 248, 229, 117, 100, 110, 110, 110, 1976 1977 110, 110, 110, 110, 110, 110, 110, 119, 121, 230, 1978 913, 247, 119, 121, 120, 110, 110, 535, 119, 120, 1979 243, 248, 120, 246, 400, 121, 119, 121, 110, 245, 1980 233, 233, 233, 120, 341, 277, 119, 121, 233, 233, 1981 344, 119, 121, 120, 110, 110, 119, 122, 120, 122, 1982 244, 120, 122, 121, 119, 121, 110, 177, 123, 218, 1983 400, 120, 341, 123, 212, 345, 122, 346, 344, 354, 1984 913, 177, 277, 347, 209, 123, 122, 123, 122, 124, 1985 202, 122, 348, 126, 124, 187, 177, 123, 126, 400, 1986 124, 349, 123, 345, 122, 346, 183, 126, 124, 177, 1987 1988 277, 347, 126, 123, 676, 123, 676, 354, 124, 127, 1989 348, 175, 126, 124, 127, 174, 237, 126, 124, 349, 1990 89, 127, 127, 237, 237, 126, 124, 127, 127, 128, 1991 126, 128, 129, 389, 128, 130, 354, 129, 127, 292, 1992 130, 292, 361, 127, 234, 234, 234, 130, 128, 127, 1993 127, 129, 234, 234, 130, 127, 127, 536, 128, 237, 1994 128, 129, 88, 128, 130, 388, 129, 84, 389, 130, 1995 361, 380, 380, 380, 356, 130, 128, 65, 13, 129, 1996 378, 238, 130, 131, 355, 131, 536, 237, 238, 238, 1997 369, 292, 1051, 388, 390, 133, 389, 392, 9, 131, 1998 1999 133, 131, 131, 131, 131, 131, 131, 131, 131, 131, 2000 131, 132, 1081, 133, 133, 134, 132, 7, 134, 292, 2001 134, 388, 132, 398, 133, 392, 356, 355, 369, 133, 2002 132, 390, 378, 238, 134, 677, 131, 677, 131, 1130, 2003 132, 133, 133, 381, 134, 132, 136, 134, 135, 134, 2004 132, 136, 1051, 135, 356, 355, 398, 369, 132, 390, 2005 378, 238, 134, 136, 131, 136, 131, 135, 135, 139, 2006 377, 137, 1081, 138, 139, 136, 137, 135, 138, 137, 2007 136, 381, 135, 139, 138, 398, 137, 395, 139, 0, 2008 137, 136, 138, 136, 418, 135, 135, 397, 139, 1130, 2009 2010 137, 382, 138, 139, 140, 137, 475, 138, 137, 140, 2011 381, 139, 138, 377, 137, 395, 139, 142, 137, 142, 2012 138, 140, 418, 140, 141, 399, 143, 144, 143, 141, 2013 1131, 537, 144, 140, 475, 0, 143, 141, 140, 391, 2014 533, 377, 144, 141, 397, 382, 144, 0, 543, 140, 2015 142, 140, 466, 141, 466, 142, 144, 146, 141, 143, 2016 537, 144, 146, 146, 143, 141, 0, 391, 533, 142, 2017 144, 141, 397, 382, 144, 399, 146, 0, 143, 142, 2018 145, 0, 145, 466, 142, 145, 146, 680, 143, 680, 2019 1131, 146, 146, 143, 145, 391, 145, 142, 543, 145, 2020 2021 147, 0, 148, 399, 146, 147, 143, 148, 557, 145, 2022 484, 145, 484, 546, 145, 148, 394, 394, 394, 147, 2023 484, 148, 145, 147, 145, 149, 543, 145, 149, 147, 2024 149, 148, 572, 150, 147, 1148, 148, 151, 150, 0, 2025 0, 546, 151, 148, 149, 150, 547, 147, 0, 148, 2026 151, 147, 150, 557, 149, 0, 151, 149, 0, 149, 2027 544, 572, 150, 152, 153, 0, 151, 150, 152, 153, 2028 0, 151, 149, 150, 547, 153, 152, 488, 151, 488, 2029 150, 557, 152, 153, 151, 0, 155, 488, 0, 154, 2030 155, 155, 152, 153, 154, 1148, 544, 152, 153, 521, 2031 2032 154, 521, 0, 153, 152, 155, 611, 0, 154, 521, 2033 152, 153, 156, 253, 253, 155, 158, 156, 154, 155, 2034 155, 158, 402, 154, 158, 544, 253, 0, 154, 402, 2035 402, 156, 157, 155, 611, 158, 154, 157, 559, 559, 2036 559, 156, 253, 253, 0, 158, 156, 612, 0, 157, 2037 158, 157, 157, 158, 253, 160, 160, 159, 0, 156, 2038 160, 157, 159, 158, 614, 159, 157, 370, 370, 370, 2039 615, 159, 402, 561, 160, 612, 159, 157, 0, 157, 2040 157, 194, 162, 194, 160, 160, 159, 162, 161, 160, 2041 161, 159, 614, 161, 159, 556, 556, 556, 615, 159, 2042 2043 402, 162, 160, 162, 159, 0, 161, 161, 370, 542, 2044 161, 162, 575, 163, 194, 564, 162, 161, 163, 161, 2045 164, 555, 161, 561, 163, 164, 164, 563, 194, 162, 2046 0, 162, 163, 164, 161, 161, 556, 370, 161, 164, 2047 165, 575, 163, 194, 568, 165, 692, 163, 692, 164, 2048 617, 561, 163, 562, 164, 164, 194, 165, 542, 165, 2049 163, 164, 564, 166, 403, 556, 682, 164, 166, 165, 2050 555, 403, 403, 577, 165, 569, 563, 166, 617, 568, 2051 166, 0, 166, 167, 167, 165, 542, 165, 167, 562, 2052 564, 697, 166, 697, 682, 167, 569, 166, 555, 744, 2053 2054 403, 0, 167, 570, 563, 166, 577, 568, 166, 168, 2055 166, 579, 167, 167, 168, 169, 0, 167, 562, 169, 2056 169, 0, 168, 167, 570, 569, 168, 744, 168, 403, 2057 167, 571, 170, 0, 169, 577, 753, 170, 168, 0, 2058 170, 171, 0, 168, 169, 171, 171, 579, 169, 169, 2059 168, 170, 571, 570, 168, 0, 168, 574, 574, 574, 2060 171, 170, 169, 172, 753, 581, 170, 604, 172, 170, 2061 171, 172, 581, 581, 171, 171, 579, 582, 613, 170, 2062 618, 571, 172, 687, 582, 582, 0, 0, 171, 678, 2063 0, 678, 172, 185, 185, 185, 604, 172, 756, 678, 2064 2065 172, 581, 679, 635, 815, 635, 815, 613, 757, 618, 2066 172, 185, 185, 185, 185, 185, 185, 185, 185, 185, 2067 185, 186, 681, 687, 0, 678, 756, 186, 713, 0, 2068 581, 679, 691, 608, 635, 608, 757, 186, 186, 186, 2069 186, 186, 186, 186, 186, 186, 186, 192, 683, 713, 2070 683, 681, 687, 192, 678, 684, 684, 684, 683, 0, 2071 703, 691, 683, 192, 192, 192, 192, 192, 192, 192, 2072 192, 192, 192, 193, 608, 215, 215, 215, 713, 193, 2073 708, 708, 708, 748, 826, 826, 826, 193, 608, 193, 2074 193, 193, 193, 193, 193, 193, 193, 193, 193, 195, 2075 2076 703, 196, 197, 608, 195, 749, 196, 197, 215, 0, 2077 195, 616, 748, 196, 196, 688, 608, 195, 195, 196, 2078 196, 197, 215, 832, 832, 832, 704, 616, 195, 703, 2079 196, 197, 707, 195, 749, 196, 197, 215, 195, 198, 2080 616, 196, 196, 0, 198, 195, 195, 196, 196, 197, 2081 215, 688, 702, 198, 702, 616, 200, 0, 198, 201, 2082 199, 200, 199, 201, 201, 199, 702, 755, 198, 758, 2083 0, 200, 707, 198, 199, 200, 199, 704, 201, 199, 2084 688, 198, 759, 807, 0, 200, 198, 0, 201, 199, 2085 200, 199, 201, 201, 199, 216, 755, 0, 758, 200, 2086 2087 0, 707, 199, 200, 199, 704, 201, 199, 0, 0, 2088 759, 807, 216, 216, 216, 216, 216, 216, 216, 216, 2089 216, 216, 217, 217, 217, 217, 217, 217, 217, 217, 2090 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 2091 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 2092 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 2093 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 2094 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 2095 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 2096 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 2097 2098 217, 217, 217, 217, 217, 217, 217, 217, 217, 217, 2099 217, 239, 0, 239, 860, 760, 239, 239, 239, 239, 2100 239, 239, 239, 239, 239, 239, 240, 0, 240, 863, 2101 805, 240, 240, 240, 240, 240, 240, 240, 240, 240, 2102 240, 241, 860, 241, 760, 806, 241, 241, 241, 241, 2103 241, 241, 241, 241, 241, 241, 254, 863, 254, 805, 2104 0, 254, 254, 254, 254, 254, 254, 254, 254, 254, 2105 254, 255, 0, 255, 806, 0, 255, 255, 255, 255, 2106 255, 255, 255, 255, 255, 255, 256, 808, 256, 259, 2107 865, 256, 256, 256, 256, 256, 256, 256, 256, 256, 2108 2109 256, 257, 257, 257, 257, 257, 257, 257, 257, 257, 2110 257, 0, 259, 769, 260, 769, 808, 259, 865, 260, 2111 257, 258, 258, 258, 258, 258, 258, 258, 258, 258, 2112 258, 259, 260, 260, 261, 813, 901, 262, 901, 261, 2113 258, 259, 262, 260, 769, 261, 259, 727, 260, 257, 2114 908, 262, 908, 261, 727, 727, 262, 263, 705, 259, 2115 260, 260, 263, 261, 813, 693, 262, 693, 261, 258, 2116 263, 262, 0, 261, 0, 693, 263, 264, 266, 262, 2117 265, 261, 264, 266, 262, 265, 263, 803, 266, 803, 2118 264, 263, 0, 0, 705, 803, 264, 266, 263, 265, 2119 2120 265, 693, 851, 268, 263, 810, 264, 266, 268, 265, 2121 267, 264, 266, 0, 265, 267, 266, 0, 264, 0, 2122 268, 267, 268, 705, 264, 266, 0, 265, 265, 267, 2123 693, 851, 268, 269, 0, 271, 821, 268, 269, 267, 2124 271, 270, 810, 0, 267, 700, 270, 700, 268, 267, 2125 268, 269, 269, 270, 271, 700, 270, 267, 272, 700, 2126 270, 0, 269, 272, 271, 272, 728, 269, 0, 271, 2127 270, 810, 821, 728, 728, 270, 0, 272, 273, 269, 2128 269, 270, 271, 273, 270, 274, 0, 272, 270, 273, 2129 274, 729, 272, 794, 272, 794, 274, 273, 729, 729, 2130 2131 0, 821, 0, 794, 274, 272, 0, 273, 278, 278, 2132 857, 275, 273, 278, 274, 275, 275, 273, 900, 274, 2133 859, 809, 809, 809, 274, 273, 820, 278, 279, 809, 2134 275, 280, 274, 279, 824, 279, 280, 278, 278, 857, 2135 275, 284, 278, 284, 275, 275, 900, 279, 281, 859, 2136 280, 861, 281, 281, 0, 278, 862, 279, 275, 864, 2137 280, 925, 279, 820, 279, 280, 0, 281, 283, 0, 2138 0, 824, 284, 283, 284, 279, 283, 281, 280, 284, 2139 861, 281, 281, 838, 875, 862, 875, 283, 864, 925, 2140 838, 838, 820, 284, 875, 281, 282, 283, 282, 285, 2141 2142 824, 894, 283, 284, 285, 283, 286, 899, 284, 422, 2143 422, 286, 839, 902, 893, 283, 893, 285, 285, 839, 2144 839, 284, 422, 0, 893, 286, 0, 282, 285, 282, 2145 894, 911, 282, 285, 282, 286, 899, 282, 422, 422, 2146 286, 282, 902, 0, 282, 285, 285, 282, 282, 289, 2147 422, 282, 287, 286, 289, 288, 287, 287, 282, 288, 2148 288, 282, 934, 282, 937, 884, 282, 884, 289, 282, 2149 0, 287, 282, 0, 288, 282, 282, 926, 289, 282, 2150 911, 287, 290, 289, 288, 287, 287, 290, 288, 288, 2151 291, 934, 291, 937, 290, 291, 289, 929, 293, 287, 2152 2153 931, 290, 288, 293, 896, 926, 896, 932, 911, 291, 2154 0, 290, 293, 884, 0, 296, 290, 293, 933, 291, 2155 296, 291, 290, 935, 291, 929, 296, 293, 931, 290, 2156 961, 297, 293, 0, 296, 932, 297, 291, 298, 896, 2157 293, 884, 297, 298, 296, 293, 933, 0, 954, 296, 2158 297, 935, 0, 964, 296, 0, 0, 298, 298, 961, 2159 297, 299, 296, 0, 0, 297, 299, 298, 896, 965, 2160 297, 980, 298, 948, 948, 948, 954, 966, 297, 972, 2161 299, 299, 964, 300, 301, 298, 298, 300, 300, 301, 2162 299, 302, 301, 302, 303, 299, 303, 965, 967, 980, 2163 2164 300, 302, 300, 301, 303, 968, 966, 968, 299, 299, 2165 0, 0, 300, 301, 989, 972, 300, 300, 301, 990, 2166 304, 301, 973, 981, 302, 304, 984, 303, 300, 302, 2167 300, 301, 303, 967, 968, 302, 968, 0, 303, 304, 2168 304, 986, 989, 302, 972, 302, 303, 990, 303, 304, 2169 1005, 0, 981, 302, 304, 984, 303, 0, 302, 973, 2170 305, 303, 967, 302, 305, 305, 303, 304, 304, 987, 2171 986, 302, 306, 302, 303, 988, 303, 306, 1005, 305, 2172 307, 308, 1008, 1016, 307, 307, 308, 0, 973, 305, 2173 1010, 306, 308, 305, 305, 0, 0, 309, 987, 307, 2174 2175 308, 306, 309, 1015, 988, 0, 306, 305, 0, 307, 2176 308, 1008, 1013, 307, 307, 308, 309, 310, 1010, 306, 2177 308, 309, 310, 998, 998, 998, 309, 307, 308, 1016, 2178 310, 309, 1015, 311, 312, 0, 310, 313, 311, 312, 2179 1013, 311, 313, 852, 309, 852, 310, 1017, 0, 309, 2180 0, 310, 311, 312, 314, 0, 313, 1016, 310, 314, 2181 1018, 0, 311, 312, 310, 1028, 313, 311, 312, 1027, 2182 311, 313, 314, 314, 315, 0, 1017, 316, 852, 315, 2183 311, 312, 316, 314, 313, 1022, 1032, 315, 314, 1018, 2184 316, 852, 1034, 315, 1028, 0, 316, 1027, 316, 1036, 2185 2186 314, 314, 1021, 315, 317, 1023, 316, 852, 315, 317, 2187 317, 316, 0, 0, 1032, 315, 1043, 1022, 316, 852, 2188 1034, 315, 1049, 317, 316, 318, 316, 1036, 0, 319, 2189 318, 0, 319, 317, 319, 0, 318, 320, 317, 317, 2190 319, 1023, 320, 0, 318, 1043, 1022, 1021, 319, 1046, 2191 1049, 317, 0, 1024, 318, 1053, 320, 320, 319, 318, 2192 321, 319, 322, 319, 318, 321, 320, 322, 319, 323, 2193 1023, 320, 318, 1052, 323, 1021, 319, 323, 1046, 321, 2194 321, 322, 322, 1053, 320, 320, 0, 0, 323, 321, 2195 0, 322, 326, 1024, 321, 324, 322, 326, 323, 324, 2196 2197 324, 0, 1052, 323, 1060, 326, 323, 321, 321, 322, 2198 322, 326, 328, 0, 324, 325, 323, 328, 327, 325, 2199 325, 326, 1024, 327, 324, 327, 326, 1061, 324, 324, 2200 1058, 328, 1060, 326, 325, 0, 1055, 327, 329, 326, 2201 0, 328, 324, 329, 325, 330, 328, 327, 325, 325, 2202 330, 1057, 327, 332, 327, 332, 1061, 329, 0, 328, 2203 330, 331, 325, 332, 330, 327, 331, 329, 1041, 1041, 2204 1041, 1055, 329, 0, 330, 1058, 1064, 0, 331, 330, 2205 331, 1066, 333, 1056, 1057, 329, 332, 333, 330, 333, 2206 331, 332, 330, 334, 1072, 331, 0, 1074, 334, 334, 2207 2208 1055, 333, 336, 1058, 1064, 332, 331, 336, 331, 1076, 2209 1066, 333, 334, 1057, 336, 332, 333, 1056, 333, 335, 2210 332, 336, 334, 1072, 335, 1074, 1078, 334, 334, 333, 2211 0, 336, 335, 332, 0, 0, 336, 1076, 335, 337, 2212 334, 1085, 336, 0, 337, 338, 1056, 1094, 335, 336, 2213 338, 0, 974, 335, 1078, 1086, 337, 1090, 337, 1083, 2214 335, 876, 876, 876, 338, 0, 335, 0, 337, 876, 2215 1085, 1082, 876, 337, 338, 351, 1094, 351, 0, 338, 2216 946, 946, 946, 1086, 337, 1090, 337, 974, 946, 974, 2217 0, 946, 338, 351, 351, 351, 351, 351, 351, 351, 2218 2219 351, 351, 351, 352, 947, 947, 947, 1082, 0, 352, 2220 0, 1083, 947, 0, 1077, 947, 974, 0, 974, 352, 2221 352, 352, 352, 352, 352, 352, 352, 352, 352, 353, 2222 949, 949, 949, 0, 0, 353, 1082, 1098, 949, 1083, 2223 0, 949, 1070, 1070, 1070, 353, 353, 353, 353, 353, 2224 353, 353, 353, 353, 353, 357, 1092, 1092, 1092, 1077, 2225 1099, 357, 362, 363, 0, 364, 362, 362, 363, 357, 2226 364, 357, 357, 357, 357, 357, 357, 357, 357, 357, 2227 357, 362, 363, 1098, 364, 365, 365, 1077, 1099, 1103, 2228 365, 362, 363, 368, 364, 362, 362, 363, 1104, 364, 2229 2230 0, 366, 0, 0, 365, 366, 366, 0, 0, 362, 2231 363, 1098, 364, 1111, 365, 365, 1107, 1103, 366, 365, 2232 366, 367, 0, 433, 368, 367, 367, 1104, 433, 368, 2233 366, 1100, 365, 0, 366, 366, 950, 950, 950, 1113, 2234 367, 1111, 433, 368, 950, 1107, 366, 950, 366, 0, 2235 367, 1116, 433, 368, 367, 367, 383, 433, 368, 0, 2236 0, 999, 999, 999, 0, 0, 1100, 1113, 367, 999, 2237 433, 368, 999, 383, 383, 383, 383, 383, 383, 383, 2238 383, 383, 383, 384, 0, 1000, 1000, 1000, 1101, 1101, 2239 1101, 0, 383, 1000, 1121, 1100, 1000, 1116, 1127, 0, 2240 2241 384, 384, 384, 384, 384, 384, 384, 384, 384, 384, 2242 387, 0, 1001, 1001, 1001, 1117, 1117, 1117, 1136, 384, 2243 1001, 383, 1121, 1001, 0, 1116, 1127, 387, 387, 387, 2244 387, 387, 387, 387, 387, 387, 387, 404, 404, 404, 2245 404, 404, 404, 404, 404, 404, 404, 1136, 384, 405, 2246 405, 405, 405, 405, 405, 405, 405, 405, 405, 406, 2247 406, 406, 406, 406, 406, 406, 406, 406, 406, 407, 2248 407, 407, 407, 407, 407, 407, 407, 407, 407, 408, 2249 408, 408, 408, 408, 408, 408, 408, 408, 408, 409, 2250 409, 409, 409, 409, 409, 409, 409, 409, 409, 423, 2251 2252 423, 423, 423, 423, 423, 423, 423, 423, 423, 424, 2253 424, 424, 424, 424, 424, 424, 424, 424, 424, 425, 2254 425, 425, 425, 425, 425, 425, 425, 425, 425, 426, 2255 426, 426, 426, 426, 426, 426, 426, 426, 426, 427, 2256 427, 427, 427, 427, 427, 427, 427, 427, 427, 428, 2257 428, 428, 428, 428, 428, 428, 428, 428, 428, 429, 2258 1102, 429, 0, 0, 429, 429, 429, 429, 429, 429, 2259 429, 429, 429, 429, 430, 430, 430, 430, 430, 430, 2260 430, 430, 430, 430, 0, 436, 0, 434, 0, 431, 2261 436, 431, 434, 430, 431, 431, 431, 431, 431, 431, 2262 2263 431, 431, 431, 431, 436, 434, 434, 435, 437, 435, 2264 1144, 1102, 435, 437, 436, 0, 434, 1132, 1147, 436, 2265 0, 434, 430, 0, 438, 0, 435, 437, 438, 438, 2266 439, 0, 436, 434, 434, 439, 435, 437, 435, 1102, 2267 0, 435, 437, 438, 0, 1132, 440, 1140, 439, 439, 2268 1147, 440, 0, 438, 435, 437, 1144, 438, 438, 439, 2269 0, 0, 441, 0, 439, 440, 1114, 441, 442, 443, 2270 0, 438, 442, 442, 443, 440, 439, 439, 1139, 1147, 2271 440, 441, 0, 443, 1144, 446, 1146, 442, 443, 444, 2272 446, 441, 1140, 440, 444, 1143, 441, 442, 443, 1156, 2273 2274 444, 442, 442, 443, 446, 445, 0, 1149, 444, 441, 2275 445, 443, 0, 445, 446, 442, 443, 1114, 444, 446, 2276 1140, 447, 448, 444, 445, 447, 447, 448, 444, 1139, 2277 449, 1156, 446, 448, 445, 449, 444, 1146, 0, 445, 2278 447, 448, 445, 449, 1143, 1114, 1124, 1124, 1124, 449, 2279 447, 448, 445, 0, 447, 447, 448, 1139, 1149, 449, 2280 1156, 448, 451, 0, 449, 1146, 1145, 451, 447, 448, 2281 452, 449, 1143, 451, 453, 452, 1152, 449, 452, 453, 2282 0, 451, 0, 0, 1150, 454, 1149, 454, 0, 452, 2283 0, 451, 453, 453, 0, 0, 451, 0, 0, 452, 2284 2285 0, 451, 1145, 453, 452, 0, 0, 452, 453, 451, 2286 458, 1151, 1151, 1151, 457, 458, 0, 452, 454, 457, 2287 453, 453, 0, 454, 0, 1152, 454, 0, 457, 458, 2288 458, 1145, 0, 457, 0, 1150, 0, 454, 0, 458, 2289 454, 459, 0, 457, 458, 460, 459, 454, 457, 0, 2290 460, 0, 454, 1152, 1155, 454, 457, 458, 458, 460, 2291 459, 457, 468, 1150, 460, 454, 0, 468, 454, 455, 2292 459, 455, 0, 0, 460, 459, 1153, 1153, 1153, 460, 2293 0, 468, 0, 0, 461, 0, 0, 460, 459, 461, 2294 1155, 468, 460, 1158, 1158, 1158, 468, 1159, 1159, 1159, 2295 2296 455, 461, 0, 461, 0, 455, 463, 455, 0, 468, 2297 455, 463, 1157, 461, 455, 0, 0, 455, 461, 1155, 2298 455, 455, 0, 0, 455, 463, 0, 0, 0, 461, 2299 463, 461, 0, 0, 455, 463, 455, 0, 472, 455, 2300 463, 0, 455, 472, 0, 455, 462, 0, 455, 455, 2301 462, 462, 455, 463, 464, 465, 0, 472, 463, 464, 2302 465, 464, 0, 1157, 0, 462, 462, 472, 0, 0, 2303 0, 0, 472, 464, 465, 462, 465, 0, 0, 462, 2304 462, 0, 0, 464, 465, 472, 0, 0, 464, 465, 2305 464, 1157, 0, 462, 462, 0, 0, 0, 0, 0, 2306 2307 0, 464, 465, 0, 465, 469, 469, 469, 469, 469, 2308 469, 469, 469, 469, 469, 469, 0, 469, 469, 469, 2309 469, 469, 469, 469, 469, 469, 469, 469, 469, 469, 2310 469, 469, 469, 469, 469, 469, 469, 469, 469, 469, 2311 469, 469, 469, 469, 469, 469, 469, 469, 469, 469, 2312 469, 469, 469, 469, 469, 469, 469, 469, 469, 469, 2313 469, 469, 469, 469, 469, 469, 469, 469, 469, 469, 2314 469, 469, 469, 469, 469, 469, 469, 469, 469, 469, 2315 469, 469, 469, 469, 469, 469, 469, 469, 469, 469, 2316 469, 469, 469, 469, 470, 0, 471, 473, 471, 470, 2317 2318 0, 0, 473, 474, 1002, 1002, 1002, 0, 474, 0, 2319 0, 470, 1002, 470, 0, 1002, 473, 0, 0, 0, 2320 0, 0, 474, 470, 0, 0, 473, 471, 470, 471, 2321 476, 473, 474, 0, 471, 476, 0, 474, 477, 470, 2322 0, 470, 0, 477, 473, 0, 477, 0, 471, 476, 2323 474, 0, 0, 0, 0, 0, 0, 477, 471, 476, 2324 478, 0, 0, 471, 476, 478, 0, 477, 479, 0, 2325 0, 0, 477, 479, 0, 477, 471, 476, 0, 478, 2326 478, 0, 0, 0, 0, 477, 0, 479, 0, 478, 2327 480, 0, 0, 0, 478, 480, 0, 479, 480, 481, 2328 2329 0, 0, 479, 0, 481, 481, 0, 478, 478, 480, 2330 0, 0, 481, 0, 0, 479, 0, 0, 481, 480, 2331 0, 1003, 1003, 1003, 480, 0, 0, 480, 481, 1003, 2332 482, 487, 1003, 481, 481, 482, 487, 480, 482, 483, 2333 481, 483, 486, 0, 483, 0, 481, 486, 0, 482, 2334 487, 0, 0, 0, 0, 0, 486, 0, 483, 482, 2335 487, 486, 0, 0, 482, 487, 0, 482, 483, 490, 2336 483, 486, 0, 483, 490, 491, 486, 482, 487, 0, 2337 491, 0, 0, 490, 486, 0, 483, 0, 490, 486, 2338 0, 492, 0, 0, 491, 493, 492, 0, 490, 0, 2339 2340 493, 0, 492, 490, 491, 0, 493, 494, 0, 491, 2341 492, 490, 494, 0, 493, 0, 490, 0, 495, 0, 2342 492, 0, 491, 495, 493, 492, 494, 496, 0, 493, 2343 492, 0, 496, 0, 493, 496, 494, 495, 492, 497, 2344 0, 494, 493, 498, 497, 0, 496, 495, 498, 0, 2345 502, 0, 495, 0, 494, 502, 496, 0, 497, 0, 2346 0, 496, 498, 0, 496, 495, 499, 0, 497, 502, 2347 500, 499, 498, 497, 496, 500, 0, 498, 0, 502, 2348 499, 0, 500, 0, 502, 499, 497, 501, 0, 500, 2349 498, 501, 501, 503, 0, 499, 504, 502, 503, 500, 2350 2351 499, 504, 0, 0, 500, 0, 501, 0, 499, 0, 2352 500, 0, 503, 499, 0, 504, 501, 500, 505, 507, 2353 501, 501, 503, 505, 507, 504, 0, 503, 0, 508, 2354 504, 1042, 1042, 1042, 501, 505, 0, 505, 507, 1042, 2355 503, 506, 1042, 504, 0, 0, 506, 505, 507, 506, 2356 508, 0, 505, 507, 0, 508, 0, 509, 0, 0, 2357 506, 0, 509, 505, 0, 505, 507, 0, 0, 508, 2358 506, 0, 0, 0, 509, 506, 509, 0, 506, 508, 2359 0, 0, 510, 0, 508, 0, 509, 510, 506, 511, 2360 512, 509, 0, 510, 511, 512, 0, 508, 0, 0, 2361 2362 0, 510, 509, 512, 509, 0, 511, 0, 511, 512, 2363 0, 510, 0, 0, 0, 0, 510, 0, 511, 512, 2364 513, 510, 515, 511, 512, 513, 0, 515, 514, 510, 2365 514, 512, 0, 514, 511, 0, 511, 512, 517, 513, 2366 0, 515, 0, 0, 0, 516, 0, 514, 0, 513, 2367 516, 515, 0, 518, 513, 0, 515, 514, 518, 514, 2368 0, 517, 514, 0, 516, 519, 517, 513, 0, 515, 2369 519, 0, 518, 0, 516, 514, 0, 0, 0, 516, 2370 517, 0, 518, 0, 519, 0, 523, 518, 520, 0, 2371 517, 523, 516, 520, 519, 517, 0, 0, 0, 519, 2372 2373 518, 0, 520, 0, 0, 523, 0, 520, 517, 524, 2374 0, 0, 519, 524, 524, 523, 0, 520, 525, 0, 2375 523, 526, 520, 525, 0, 0, 526, 0, 524, 0, 2376 520, 0, 0, 523, 0, 520, 0, 525, 524, 0, 2377 526, 527, 524, 524, 528, 527, 527, 525, 528, 528, 2378 526, 0, 525, 0, 0, 526, 524, 0, 0, 0, 2379 527, 551, 0, 528, 0, 525, 551, 0, 526, 0, 2380 527, 0, 0, 528, 527, 527, 0, 528, 528, 539, 2381 551, 539, 0, 0, 0, 1071, 1071, 1071, 527, 0, 2382 551, 528, 0, 1071, 0, 551, 1071, 539, 539, 539, 2383 2384 539, 539, 539, 539, 539, 539, 539, 540, 551, 1093, 2385 1093, 1093, 0, 540, 0, 0, 0, 1093, 0, 0, 2386 1093, 0, 0, 540, 540, 540, 540, 540, 540, 540, 2387 540, 540, 540, 541, 548, 0, 548, 0, 0, 541, 2388 0, 0, 0, 0, 548, 0, 0, 0, 0, 541, 2389 541, 541, 541, 541, 541, 541, 541, 541, 541, 545, 2390 550, 0, 550, 0, 0, 545, 549, 548, 0, 0, 2391 548, 549, 548, 545, 549, 545, 545, 545, 545, 545, 2392 545, 545, 545, 545, 545, 549, 548, 0, 0, 0, 2393 0, 0, 0, 550, 0, 549, 548, 0, 550, 548, 2394 2395 549, 548, 552, 549, 0, 592, 0, 552, 552, 592, 2396 592, 0, 550, 549, 548, 552, 0, 0, 553, 552, 2397 553, 552, 550, 0, 592, 0, 0, 550, 553, 0, 2398 0, 552, 553, 0, 592, 0, 552, 552, 592, 592, 2399 550, 565, 0, 552, 0, 0, 0, 552, 0, 552, 2400 0, 553, 592, 565, 0, 565, 553, 0, 565, 565, 2401 565, 565, 565, 565, 565, 565, 565, 565, 0, 566, 2402 553, 1110, 1110, 1110, 0, 0, 0, 0, 0, 1110, 2403 553, 0, 1110, 0, 0, 553, 566, 566, 566, 566, 2404 566, 566, 566, 566, 566, 566, 567, 0, 553, 0, 2405 2406 0, 1125, 1125, 1125, 0, 566, 0, 0, 567, 1125, 2407 567, 0, 1125, 567, 567, 567, 567, 567, 567, 567, 2408 567, 567, 567, 588, 588, 588, 588, 588, 588, 588, 2409 588, 588, 588, 0, 566, 589, 589, 589, 589, 589, 2410 589, 589, 589, 589, 589, 590, 590, 590, 590, 590, 2411 590, 590, 590, 590, 590, 591, 591, 591, 591, 591, 2412 591, 591, 591, 591, 591, 593, 0, 0, 595, 0, 2413 593, 0, 0, 595, 1134, 1134, 1134, 0, 1135, 1135, 2414 1135, 0, 1134, 595, 593, 1134, 1135, 595, 0, 1135, 2415 0, 0, 0, 0, 593, 0, 0, 595, 0, 593, 2416 2417 0, 0, 595, 0, 0, 0, 0, 0, 0, 0, 2418 0, 595, 593, 594, 594, 595, 594, 594, 594, 594, 2419 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 2420 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 2421 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 2422 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 2423 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 2424 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 2425 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 2426 594, 594, 594, 594, 594, 594, 594, 594, 594, 594, 2427 2428 594, 594, 596, 597, 596, 598, 600, 596, 597, 599, 2429 598, 600, 0, 599, 599, 0, 0, 0, 598, 600, 2430 0, 596, 597, 0, 598, 600, 0, 0, 599, 0, 2431 0, 596, 597, 596, 598, 600, 596, 597, 599, 598, 2432 600, 0, 599, 599, 0, 0, 598, 600, 0, 596, 2433 597, 0, 598, 600, 601, 602, 599, 603, 0, 601, 2434 602, 605, 603, 0, 0, 605, 605, 0, 0, 602, 2435 0, 0, 0, 601, 602, 603, 603, 0, 0, 0, 2436 605, 0, 0, 601, 602, 0, 603, 606, 601, 602, 2437 605, 603, 606, 0, 605, 605, 0, 602, 606, 0, 2438 2439 0, 601, 602, 603, 603, 0, 606, 0, 605, 609, 2440 607, 0, 0, 610, 609, 607, 606, 607, 610, 0, 2441 610, 606, 0, 0, 0, 0, 606, 0, 609, 607, 2442 0, 0, 610, 0, 606, 619, 621, 0, 609, 607, 2443 619, 621, 610, 609, 607, 0, 607, 610, 0, 610, 2444 0, 0, 0, 0, 619, 621, 609, 607, 620, 0, 2445 610, 0, 0, 620, 619, 621, 0, 0, 0, 619, 2446 621, 620, 0, 0, 623, 622, 0, 620, 622, 623, 2447 622, 0, 619, 621, 0, 0, 0, 620, 623, 0, 2448 0, 624, 620, 623, 622, 0, 624, 0, 0, 620, 2449 2450 0, 0, 624, 623, 622, 620, 0, 622, 623, 622, 2451 624, 0, 625, 625, 626, 0, 623, 625, 628, 626, 2452 624, 623, 622, 628, 0, 624, 0, 0, 0, 626, 2453 624, 625, 0, 626, 0, 627, 0, 628, 624, 627, 2454 627, 625, 625, 626, 0, 0, 625, 628, 626, 0, 2455 0, 0, 628, 629, 627, 629, 0, 626, 0, 625, 2456 0, 626, 0, 632, 627, 628, 0, 0, 627, 627, 2457 631, 631, 631, 631, 631, 631, 631, 631, 631, 631, 2458 632, 0, 627, 633, 629, 632, 629, 634, 633, 637, 2459 0, 629, 634, 0, 637, 0, 0, 0, 0, 632, 2460 2461 634, 0, 633, 0, 0, 629, 634, 0, 637, 632, 2462 0, 0, 633, 0, 632, 629, 634, 633, 637, 638, 2463 629, 634, 0, 637, 638, 0, 0, 632, 634, 0, 2464 633, 0, 0, 629, 634, 639, 637, 0, 638, 641, 2465 639, 641, 642, 639, 641, 642, 643, 642, 638, 0, 2466 0, 643, 0, 638, 639, 0, 0, 0, 641, 0, 2467 0, 642, 644, 0, 639, 643, 638, 644, 641, 639, 2468 641, 642, 639, 641, 642, 643, 642, 0, 0, 644, 2469 643, 644, 639, 645, 0, 646, 641, 645, 645, 642, 2470 646, 644, 647, 643, 648, 0, 644, 647, 0, 648, 2471 2472 0, 0, 645, 0, 646, 647, 0, 644, 0, 644, 2473 0, 647, 645, 648, 646, 0, 645, 645, 0, 646, 2474 0, 647, 0, 648, 0, 0, 647, 0, 648, 649, 2475 645, 649, 646, 647, 649, 650, 0, 0, 0, 647, 2476 650, 648, 0, 0, 0, 0, 650, 0, 649, 0, 2477 0, 0, 0, 0, 650, 0, 0, 0, 649, 0, 2478 649, 652, 0, 649, 650, 651, 652, 651, 0, 650, 2479 651, 0, 652, 653, 650, 0, 649, 653, 653, 0, 2480 652, 0, 650, 0, 651, 0, 0, 0, 0, 0, 2481 652, 0, 653, 0, 651, 652, 651, 0, 655, 651, 2482 2483 652, 0, 653, 655, 0, 654, 653, 653, 652, 656, 2484 654, 0, 651, 654, 656, 0, 0, 655, 0, 0, 2485 653, 0, 656, 0, 654, 657, 0, 655, 656, 657, 2486 657, 0, 655, 0, 654, 0, 658, 0, 656, 654, 2487 0, 658, 654, 656, 657, 655, 0, 0, 660, 0, 2488 656, 0, 654, 660, 657, 658, 656, 659, 657, 657, 2489 0, 659, 659, 0, 0, 658, 0, 660, 661, 662, 2490 658, 0, 657, 661, 662, 0, 659, 660, 0, 0, 2491 0, 0, 660, 658, 0, 0, 659, 661, 662, 0, 2492 659, 659, 0, 0, 663, 660, 663, 661, 662, 663, 2493 2494 665, 666, 661, 662, 659, 665, 666, 0, 0, 0, 2495 0, 0, 0, 663, 0, 661, 662, 0, 665, 665, 2496 666, 0, 0, 663, 0, 663, 667, 0, 663, 665, 2497 666, 667, 0, 0, 665, 666, 0, 668, 0, 667, 2498 668, 663, 668, 0, 0, 667, 665, 665, 666, 669, 2499 0, 0, 0, 672, 669, 667, 668, 671, 672, 0, 2500 667, 0, 671, 0, 0, 0, 668, 667, 669, 668, 2501 0, 668, 672, 667, 673, 0, 671, 671, 669, 673, 2502 674, 0, 672, 669, 668, 674, 671, 672, 0, 0, 2503 0, 671, 0, 673, 0, 0, 669, 0, 0, 674, 2504 2505 672, 0, 0, 673, 671, 671, 0, 0, 673, 674, 2506 0, 0, 690, 0, 674, 0, 0, 0, 690, 695, 2507 0, 673, 0, 695, 695, 0, 690, 674, 690, 690, 2508 690, 690, 690, 690, 690, 690, 690, 690, 695, 696, 2509 698, 699, 0, 0, 696, 698, 699, 696, 695, 0, 2510 0, 698, 695, 695, 0, 0, 0, 0, 696, 698, 2511 699, 0, 0, 0, 0, 0, 695, 0, 696, 698, 2512 699, 0, 709, 696, 698, 699, 696, 0, 0, 698, 2513 0, 0, 710, 0, 0, 0, 696, 698, 699, 709, 2514 709, 709, 709, 709, 709, 709, 709, 709, 709, 710, 2515 2516 710, 710, 710, 710, 710, 710, 710, 710, 710, 711, 2517 0, 0, 0, 0, 0, 0, 0, 0, 0, 712, 2518 0, 0, 0, 0, 0, 0, 711, 711, 711, 711, 2519 711, 711, 711, 711, 711, 711, 712, 712, 712, 712, 2520 712, 712, 712, 712, 712, 712, 715, 715, 715, 715, 2521 715, 715, 715, 715, 715, 715, 715, 715, 715, 715, 2522 715, 715, 715, 715, 715, 715, 715, 715, 715, 715, 2523 715, 715, 715, 715, 715, 715, 715, 715, 715, 715, 2524 715, 715, 715, 715, 715, 715, 715, 715, 715, 715, 2525 715, 715, 715, 715, 715, 715, 715, 715, 715, 715, 2526 2527 715, 715, 715, 715, 715, 715, 715, 715, 715, 715, 2528 715, 715, 715, 715, 715, 715, 715, 715, 715, 715, 2529 715, 715, 715, 715, 715, 715, 715, 715, 715, 715, 2530 715, 715, 715, 715, 715, 719, 719, 719, 0, 0, 2531 719, 719, 0, 719, 0, 0, 0, 719, 719, 0, 2532 0, 719, 0, 0, 719, 719, 719, 719, 719, 719, 2533 719, 719, 719, 732, 732, 0, 732, 732, 732, 732, 2534 732, 732, 732, 732, 732, 732, 732, 732, 732, 732, 2535 732, 732, 732, 732, 732, 732, 732, 732, 732, 732, 2536 732, 732, 732, 732, 732, 732, 732, 732, 732, 732, 2537 2538 732, 732, 732, 732, 732, 732, 732, 732, 732, 732, 2539 732, 732, 732, 732, 732, 732, 732, 732, 732, 732, 2540 732, 732, 732, 732, 732, 732, 732, 732, 732, 732, 2541 732, 732, 732, 732, 732, 732, 732, 732, 732, 732, 2542 732, 732, 732, 732, 732, 732, 732, 732, 732, 732, 2543 732, 732, 733, 0, 0, 735, 0, 733, 734, 734, 2544 734, 734, 734, 734, 734, 734, 734, 734, 736, 737, 2545 0, 733, 735, 736, 737, 738, 0, 735, 0, 0, 2546 738, 733, 0, 0, 0, 0, 733, 736, 737, 0, 2547 0, 735, 0, 0, 738, 739, 0, 736, 737, 733, 2548 2549 739, 735, 736, 737, 738, 0, 735, 740, 0, 738, 2550 0, 0, 740, 0, 739, 736, 737, 0, 741, 735, 2551 0, 0, 738, 741, 739, 0, 740, 0, 0, 739, 2552 740, 0, 0, 0, 0, 0, 740, 741, 741, 0, 2553 0, 740, 739, 742, 0, 742, 0, 741, 742, 0, 2554 747, 743, 741, 0, 740, 747, 743, 0, 740, 743, 2555 0, 745, 742, 745, 0, 741, 741, 0, 0, 747, 2556 743, 0, 742, 750, 742, 0, 0, 742, 750, 747, 2557 743, 0, 746, 0, 747, 743, 746, 746, 743, 0, 2558 742, 0, 750, 0, 745, 0, 745, 747, 743, 745, 2559 2560 0, 746, 750, 0, 0, 0, 0, 750, 0, 745, 2561 0, 746, 0, 745, 751, 746, 746, 0, 751, 751, 2562 750, 0, 0, 745, 0, 745, 762, 0, 745, 746, 2563 0, 762, 0, 751, 761, 0, 761, 745, 0, 761, 2564 0, 745, 0, 751, 0, 762, 762, 751, 751, 0, 2565 0, 763, 0, 761, 0, 762, 763, 763, 0, 0, 2566 762, 751, 0, 761, 0, 761, 0, 0, 761, 0, 2567 763, 764, 765, 762, 762, 764, 764, 765, 766, 0, 2568 763, 761, 766, 766, 0, 763, 763, 0, 0, 765, 2569 764, 765, 0, 0, 771, 0, 0, 766, 763, 771, 2570 2571 764, 765, 0, 767, 764, 764, 765, 766, 767, 0, 2572 768, 766, 766, 771, 772, 768, 772, 765, 764, 765, 2573 767, 768, 767, 771, 772, 766, 773, 0, 771, 768, 2574 0, 773, 767, 0, 0, 0, 0, 767, 0, 768, 2575 773, 771, 0, 0, 768, 773, 774, 772, 767, 768, 2576 767, 774, 772, 0, 774, 773, 0, 768, 775, 0, 2577 773, 0, 775, 775, 0, 774, 772, 776, 773, 778, 2578 0, 776, 776, 773, 778, 774, 772, 775, 0, 0, 2579 774, 772, 0, 774, 0, 0, 776, 775, 778, 0, 2580 777, 775, 775, 774, 772, 777, 776, 0, 778, 779, 2581 2582 776, 776, 0, 778, 779, 775, 0, 777, 0, 777, 2583 780, 0, 0, 0, 776, 780, 778, 779, 779, 777, 2584 0, 780, 781, 0, 777, 0, 0, 781, 779, 780, 2585 0, 782, 0, 779, 0, 777, 782, 777, 0, 780, 2586 0, 781, 783, 784, 780, 779, 779, 783, 784, 780, 2587 782, 781, 0, 785, 0, 785, 781, 780, 0, 0, 2588 782, 783, 784, 786, 0, 782, 0, 0, 786, 781, 2589 0, 783, 784, 0, 787, 0, 783, 784, 782, 787, 2590 0, 786, 786, 788, 0, 0, 785, 0, 788, 783, 2591 784, 785, 786, 787, 789, 0, 0, 786, 787, 789, 2592 2593 0, 785, 788, 787, 0, 785, 0, 0, 787, 786, 2594 786, 0, 788, 789, 0, 785, 0, 788, 0, 790, 2595 785, 787, 0, 789, 790, 0, 787, 791, 789, 785, 2596 788, 791, 791, 785, 0, 0, 790, 0, 790, 792, 2597 0, 789, 0, 0, 792, 0, 791, 0, 790, 0, 2598 0, 792, 0, 790, 0, 0, 791, 0, 792, 0, 2599 791, 791, 793, 0, 790, 0, 790, 793, 792, 0, 2600 795, 796, 0, 792, 791, 795, 796, 0, 795, 792, 2601 0, 793, 797, 0, 0, 0, 792, 797, 0, 795, 2602 796, 793, 0, 798, 0, 799, 793, 799, 798, 795, 2603 2604 796, 797, 0, 0, 795, 796, 0, 795, 0, 793, 2605 0, 797, 798, 0, 0, 0, 797, 795, 796, 800, 2606 801, 0, 798, 0, 800, 801, 816, 798, 799, 797, 2607 799, 816, 0, 799, 0, 0, 0, 0, 800, 801, 2608 798, 0, 0, 0, 0, 816, 0, 799, 800, 801, 2609 0, 817, 0, 800, 801, 816, 817, 799, 0, 799, 2610 816, 0, 799, 0, 817, 0, 800, 801, 0, 818, 2611 817, 818, 0, 816, 842, 799, 802, 802, 802, 802, 2612 817, 0, 0, 0, 0, 817, 0, 0, 0, 0, 2613 819, 842, 817, 0, 0, 819, 842, 0, 817, 0, 2614 2615 0, 0, 818, 0, 0, 0, 0, 818, 0, 819, 2616 842, 802, 802, 0, 0, 802, 0, 802, 0, 819, 2617 842, 818, 0, 0, 819, 842, 0, 0, 802, 802, 2618 0, 818, 0, 0, 0, 0, 818, 819, 842, 0, 2619 802, 802, 0, 0, 802, 0, 802, 0, 0, 818, 2620 0, 0, 0, 0, 0, 0, 802, 802, 827, 827, 2621 827, 827, 827, 827, 827, 827, 827, 827, 827, 827, 2622 827, 827, 827, 827, 827, 827, 827, 827, 827, 827, 2623 827, 827, 827, 827, 827, 827, 827, 827, 827, 827, 2624 827, 827, 827, 827, 827, 827, 827, 827, 827, 827, 2625 2626 827, 827, 827, 827, 827, 827, 827, 827, 827, 827, 2627 827, 827, 827, 827, 827, 827, 827, 827, 827, 827, 2628 827, 827, 827, 827, 827, 827, 827, 827, 827, 827, 2629 827, 827, 827, 827, 827, 827, 827, 827, 827, 827, 2630 827, 827, 827, 827, 827, 827, 827, 828, 841, 841, 2631 841, 841, 841, 841, 841, 841, 841, 841, 0, 0, 2632 0, 0, 0, 0, 828, 828, 828, 828, 828, 828, 2633 828, 828, 828, 828, 829, 829, 829, 829, 829, 829, 2634 829, 829, 829, 829, 829, 829, 829, 829, 829, 829, 2635 829, 829, 829, 829, 829, 829, 829, 829, 829, 829, 2636 2637 829, 829, 829, 829, 829, 829, 829, 829, 829, 829, 2638 829, 829, 829, 829, 829, 829, 829, 829, 829, 829, 2639 829, 829, 829, 829, 829, 829, 829, 829, 829, 829, 2640 829, 829, 829, 829, 829, 829, 829, 829, 829, 829, 2641 829, 829, 829, 829, 829, 829, 829, 829, 829, 829, 2642 829, 829, 829, 829, 829, 829, 829, 829, 829, 829, 2643 829, 829, 829, 843, 0, 844, 0, 847, 843, 844, 2644 844, 845, 847, 845, 846, 0, 845, 0, 846, 846, 2645 0, 0, 843, 0, 844, 0, 847, 0, 0, 0, 2646 845, 0, 843, 846, 844, 0, 847, 843, 844, 844, 2647 2648 845, 847, 845, 846, 849, 845, 0, 846, 846, 849, 2649 843, 848, 844, 0, 847, 848, 848, 0, 845, 0, 2650 850, 846, 0, 849, 0, 850, 0, 853, 0, 0, 2651 848, 854, 853, 849, 850, 0, 854, 0, 849, 850, 2652 848, 853, 0, 0, 848, 848, 853, 0, 854, 850, 2653 854, 849, 855, 0, 850, 0, 853, 855, 848, 0, 2654 854, 853, 850, 858, 0, 854, 0, 850, 858, 853, 2655 0, 855, 866, 0, 853, 0, 854, 866, 854, 0, 2656 858, 855, 858, 867, 0, 0, 855, 0, 867, 0, 2657 0, 866, 858, 0, 867, 0, 0, 858, 0, 855, 2658 2659 0, 866, 867, 0, 868, 0, 866, 0, 858, 868, 2660 858, 0, 867, 869, 0, 869, 0, 867, 869, 866, 2661 0, 868, 867, 868, 0, 0, 0, 0, 0, 870, 2662 867, 0, 869, 868, 870, 871, 0, 0, 868, 0, 2663 871, 0, 869, 870, 869, 0, 0, 869, 870, 868, 2664 0, 868, 0, 0, 871, 0, 0, 0, 870, 0, 2665 869, 872, 0, 870, 871, 872, 872, 0, 873, 871, 2666 874, 870, 873, 873, 0, 874, 870, 0, 0, 0, 2667 872, 874, 871, 0, 0, 0, 0, 873, 0, 874, 2668 872, 878, 0, 877, 872, 872, 878, 873, 877, 874, 2669 2670 0, 873, 873, 0, 874, 0, 877, 0, 872, 874, 2671 878, 0, 877, 879, 880, 873, 881, 874, 879, 880, 2672 878, 881, 877, 0, 0, 878, 0, 877, 0, 0, 2673 0, 0, 879, 880, 877, 881, 882, 0, 878, 0, 2674 877, 882, 879, 880, 882, 881, 0, 879, 880, 0, 2675 881, 0, 883, 886, 0, 882, 0, 883, 886, 885, 2676 879, 880, 0, 881, 885, 882, 0, 0, 0, 0, 2677 882, 883, 886, 882, 0, 0, 885, 0, 885, 887, 2678 0, 883, 886, 882, 887, 0, 883, 886, 885, 0, 2679 888, 890, 0, 885, 0, 888, 890, 0, 887, 883, 2680 2681 886, 888, 891, 0, 885, 0, 885, 891, 887, 888, 2682 890, 889, 0, 887, 0, 889, 889, 0, 0, 888, 2683 890, 891, 892, 897, 888, 890, 887, 892, 897, 888, 2684 889, 891, 0, 0, 895, 0, 891, 888, 890, 895, 2685 889, 892, 897, 906, 889, 889, 0, 0, 906, 891, 2686 0, 892, 897, 895, 0, 895, 892, 897, 889, 898, 2687 0, 0, 906, 895, 898, 0, 907, 898, 895, 892, 2688 897, 907, 906, 0, 0, 0, 0, 906, 898, 0, 2689 0, 895, 0, 895, 907, 907, 0, 0, 898, 909, 2690 906, 909, 0, 898, 909, 907, 898, 0, 0, 0, 2691 2692 907, 0, 0, 0, 0, 0, 898, 914, 909, 0, 2693 0, 0, 907, 907, 0, 0, 917, 917, 909, 0, 2694 909, 917, 0, 909, 914, 914, 914, 914, 914, 914, 2695 914, 914, 914, 914, 0, 917, 909, 918, 0, 919, 2696 0, 0, 918, 919, 919, 917, 917, 0, 920, 0, 2697 917, 0, 0, 920, 0, 0, 918, 0, 919, 0, 2698 0, 0, 0, 917, 0, 920, 918, 920, 919, 921, 2699 922, 918, 919, 919, 921, 922, 0, 920, 923, 0, 2700 0, 0, 920, 923, 918, 0, 919, 0, 921, 922, 2701 0, 923, 0, 920, 0, 920, 0, 923, 921, 922, 2702 2703 0, 927, 0, 921, 922, 928, 927, 923, 0, 928, 2704 928, 0, 923, 927, 0, 0, 921, 922, 0, 923, 2705 927, 938, 0, 0, 928, 923, 938, 930, 940, 938, 2706 927, 930, 930, 940, 928, 927, 0, 0, 928, 928, 2707 938, 927, 0, 0, 0, 0, 930, 940, 927, 0, 2708 938, 0, 928, 0, 0, 938, 930, 940, 938, 939, 2709 930, 930, 940, 939, 939, 941, 942, 0, 938, 0, 2710 941, 942, 0, 0, 930, 940, 0, 0, 939, 0, 2711 0, 0, 943, 0, 941, 942, 942, 943, 939, 0, 2712 0, 944, 939, 939, 941, 942, 944, 0, 0, 941, 2713 2714 942, 943, 945, 0, 944, 0, 939, 945, 0, 0, 2715 944, 943, 941, 942, 942, 0, 943, 0, 951, 0, 2716 944, 945, 952, 951, 0, 944, 0, 952, 0, 943, 2717 0, 945, 944, 0, 0, 0, 945, 951, 944, 955, 2718 0, 952, 0, 953, 955, 953, 0, 951, 953, 945, 2719 0, 952, 951, 955, 0, 0, 952, 0, 955, 956, 2720 0, 0, 953, 0, 956, 951, 957, 0, 955, 952, 2721 958, 957, 953, 955, 953, 958, 0, 953, 956, 0, 2722 0, 955, 0, 0, 0, 957, 955, 958, 956, 958, 2723 953, 0, 960, 956, 0, 957, 960, 960, 0, 958, 2724 2725 957, 0, 0, 963, 958, 0, 956, 0, 963, 962, 2726 0, 960, 0, 957, 962, 958, 963, 958, 0, 0, 2727 0, 960, 963, 0, 0, 960, 960, 962, 962, 969, 2728 0, 0, 963, 0, 969, 970, 0, 963, 962, 960, 2729 970, 971, 0, 962, 963, 971, 971, 0, 969, 969, 2730 963, 0, 976, 0, 970, 962, 962, 976, 969, 0, 2731 971, 975, 0, 969, 970, 0, 975, 0, 977, 970, 2732 971, 976, 975, 977, 971, 971, 969, 969, 0, 0, 2733 975, 976, 970, 0, 979, 0, 976, 977, 971, 979, 2734 975, 0, 0, 985, 0, 975, 0, 977, 985, 976, 2735 2736 975, 978, 977, 979, 982, 978, 978, 0, 975, 982, 2737 0, 0, 985, 979, 0, 977, 0, 0, 979, 982, 2738 978, 0, 985, 982, 983, 0, 983, 985, 0, 983, 2739 978, 979, 0, 982, 978, 978, 0, 0, 982, 0, 2740 985, 993, 0, 983, 994, 992, 993, 982, 978, 994, 2741 992, 982, 0, 983, 0, 983, 994, 0, 983, 992, 2742 993, 995, 0, 994, 992, 0, 995, 996, 0, 0, 2743 993, 983, 996, 994, 992, 993, 0, 0, 994, 992, 2744 995, 0, 0, 0, 994, 0, 996, 992, 993, 0, 2745 995, 994, 992, 1004, 0, 995, 996, 997, 1004, 997, 2746 2747 1007, 996, 997, 0, 1006, 1007, 1006, 0, 995, 1006, 2748 0, 0, 1004, 0, 996, 0, 997, 0, 0, 1007, 2749 1009, 0, 1004, 1006, 0, 1009, 997, 1004, 997, 1007, 2750 0, 997, 0, 1006, 1007, 1006, 0, 1011, 1006, 1009, 2751 1004, 1011, 1011, 0, 997, 0, 0, 1007, 0, 1009, 2752 0, 1006, 0, 1012, 1009, 0, 1011, 1012, 1012, 0, 2753 1020, 0, 0, 0, 1019, 1020, 1011, 1009, 0, 1019, 2754 1011, 1011, 1012, 0, 0, 1019, 1025, 0, 0, 1020, 2755 1025, 1025, 1012, 1019, 1011, 1026, 1012, 1012, 0, 1020, 2756 1026, 0, 0, 1019, 1020, 1025, 0, 1029, 1019, 0, 2757 2758 1012, 0, 1029, 1019, 1026, 1025, 0, 1020, 1029, 1025, 2759 1025, 1019, 0, 0, 1026, 0, 1029, 0, 0, 1026, 2760 1030, 0, 1037, 1025, 1038, 1030, 1029, 1037, 1030, 1038, 2761 0, 1029, 1026, 0, 0, 1037, 1029, 0, 0, 1030, 2762 0, 1037, 0, 1038, 1029, 0, 0, 1039, 0, 1030, 2763 0, 1037, 1039, 1038, 1030, 1039, 1037, 1030, 1038, 1047, 2764 0, 0, 0, 1037, 1047, 0, 1039, 1030, 1040, 1037, 2765 1044, 1038, 1040, 1040, 1044, 1044, 1039, 0, 1047, 0, 2766 0, 1039, 0, 0, 1039, 0, 0, 1040, 1047, 1044, 2767 1048, 1054, 0, 1047, 1039, 1048, 1054, 1040, 0, 1044, 2768 2769 0, 1040, 1040, 1044, 1044, 0, 1047, 1059, 0, 1048, 2770 1054, 0, 1059, 0, 0, 1040, 1063, 1044, 0, 1048, 2771 1054, 1063, 0, 1062, 1048, 1054, 1059, 1062, 1062, 0, 2772 0, 0, 0, 0, 1063, 1063, 1059, 1048, 1054, 1067, 2773 0, 1059, 1062, 0, 1067, 1063, 1068, 0, 1069, 0, 2774 1063, 1068, 1062, 1069, 1059, 0, 1062, 1062, 1067, 1068, 2775 0, 0, 1063, 1063, 0, 1068, 0, 1069, 1067, 1073, 2776 1062, 1080, 1073, 1067, 1073, 1068, 1080, 1069, 0, 0, 2777 1068, 0, 1069, 0, 0, 0, 1067, 1068, 1073, 0, 2778 1080, 1087, 0, 1068, 1088, 1069, 1087, 0, 1073, 1088, 2779 2780 1080, 1073, 1088, 1073, 0, 1080, 0, 0, 0, 0, 2781 1087, 0, 0, 1088, 1087, 0, 1073, 1091, 1080, 0, 2782 1087, 1091, 1091, 1088, 1095, 1087, 0, 0, 1088, 1095, 2783 0, 1088, 0, 0, 0, 0, 1091, 0, 1087, 0, 2784 1105, 1088, 1087, 1095, 1095, 1105, 1091, 1106, 0, 1108, 2785 1091, 1091, 1106, 1095, 1108, 0, 0, 0, 1095, 1105, 2786 0, 1106, 0, 0, 1091, 0, 1106, 0, 1108, 1105, 2787 0, 1095, 1095, 0, 1105, 0, 1106, 0, 1108, 0, 2788 0, 1106, 0, 1108, 0, 0, 0, 1105, 0, 1106, 2789 0, 0, 0, 0, 1106, 0, 1108, 1109, 1109, 1109, 2790 2791 0, 0, 1109, 1109, 0, 1109, 0, 0, 0, 1109, 2792 1109, 0, 0, 1109, 0, 0, 1109, 1109, 1109, 1109, 2793 1109, 1109, 1109, 1109, 1109, 1112, 1122, 0, 0, 0, 2794 1112, 1122, 0, 0, 0, 0, 0, 0, 0, 1122, 2795 0, 0, 1112, 0, 1112, 1122, 0, 0, 0, 0, 2796 0, 0, 0, 0, 1112, 1122, 0, 0, 0, 1112, 2797 1122, 0, 0, 0, 0, 0, 0, 1122, 0, 0, 2798 1112, 0, 1112, 1122, 1126, 1126, 1126, 0, 0, 1126, 2799 1126, 0, 1126, 0, 1128, 1126, 1126, 1126, 1128, 1128, 2800 1126, 0, 0, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 2801 2802 1126, 1126, 0, 1128, 1133, 1137, 0, 0, 0, 1133, 2803 1137, 0, 0, 1128, 0, 0, 0, 1128, 1128, 0, 2804 0, 0, 0, 1133, 1137, 0, 0, 0, 0, 0, 2805 0, 1128, 0, 1133, 1137, 0, 0, 0, 1133, 1137, 2806 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2807 0, 1133, 1137, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 2808 1162, 1162, 1162, 1162, 1162, 1163, 1163, 1163, 1163, 1163, 2809 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1164, 1164, 0, 2810 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1165, 2811 1165, 0, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 2812 2813 1165, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 2814 1166, 1166, 1166, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 2815 1167, 1167, 1167, 1167, 1167, 1168, 1168, 1169, 1169, 1169, 2816 1169, 1169, 1169, 1169, 1169, 1170, 1170, 1170, 1170, 1170, 2817 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1171, 1171, 1171, 2818 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1172, 2819 1172, 1172, 1172, 1172, 1172, 0, 1172, 1172, 1172, 0, 2820 1172, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 2821 1173, 1173, 1173, 1174, 0, 0, 1174, 1175, 1175, 1175, 2822 0, 0, 1175, 0, 1175, 1175, 0, 1175, 1175, 1176, 2823 2824 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 2825 1176, 1177, 1177, 0, 1177, 1177, 1177, 1177, 1177, 1177, 2826 1177, 1177, 1177, 1178, 1178, 1178, 1178, 1178, 1178, 0, 2827 1178, 1178, 1178, 0, 1178, 1179, 1179, 1179, 1179, 1179, 2828 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1180, 1180, 1180, 2829 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1181, 2830 0, 0, 1181, 1182, 0, 0, 0, 1182, 0, 0, 2831 0, 0, 0, 1182, 1183, 1183, 1183, 1183, 1183, 1183, 2832 1183, 1183, 1183, 1183, 1183, 1183, 1184, 1184, 0, 1184, 2833 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1184, 1185, 1185, 2834 2835 0, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 2836 1186, 1186, 0, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 2837 1186, 1186, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 2838 1187, 1187, 1187, 1187, 1188, 1188, 1188, 1188, 1188, 1188, 2839 1188, 1188, 1188, 1188, 1188, 1188, 1189, 1189, 1189, 1189, 2840 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1189, 1190, 1190, 2841 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 2842 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 2843 1191, 1191, 1192, 1192, 0, 1192, 1192, 1192, 1192, 1192, 2844 1192, 1192, 1192, 1192, 1193, 1193, 1193, 1193, 1193, 1193, 2845 2846 1193, 1193, 1193, 1193, 1193, 1193, 1194, 1194, 1194, 1194, 2847 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1195, 1195, 2848 0, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 2849 1196, 1196, 0, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 2850 1196, 1196, 1197, 1197, 0, 1197, 1197, 1197, 1197, 1197, 2851 1197, 1197, 1197, 1197, 1198, 1198, 0, 1198, 1198, 1198, 2852 1198, 1198, 1198, 1198, 1198, 1198, 1199, 1199, 0, 1199, 2853 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1200, 1200, 2854 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 2855 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 1201, 2856 2857 1201, 1201, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 1202, 2858 1202, 1202, 1202, 1202, 1203, 1203, 1203, 1203, 1203, 1203, 2859 1203, 1203, 1203, 1203, 1203, 1203, 1204, 1204, 1204, 1204, 2860 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1205, 1205, 2861 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 2862 1206, 1206, 0, 1206, 1206, 1206, 1206, 1206, 1206, 1206, 2863 1206, 1206, 1207, 1207, 0, 1207, 1207, 1207, 1207, 1207, 2864 1207, 1207, 1207, 1207, 1208, 1208, 1208, 1208, 1208, 1208, 2865 1208, 1208, 1208, 1208, 1208, 1208, 1209, 1209, 1209, 1209, 2866 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1210, 1210, 2867 2868 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 2869 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 2870 1211, 1211, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 2871 1212, 1212, 1212, 1212, 1213, 1213, 1213, 1213, 1213, 1213, 2872 1213, 1213, 1213, 1213, 1213, 1213, 1214, 1214, 1214, 1214, 2873 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1214, 1161, 1161, 1638 2874 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1639 1161, 1161, 1161, 1161, 1162, 1162, 389, 1162, 1162, 1162, 1640 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1641 1162, 1163, 1163, 375, 1163, 1163, 1163, 1163, 1163, 1163, 1642 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1164, 1164, 1643 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1644 1164, 1164, 1164, 1164, 1164, 1165, 1165, 1165, 1165, 1165, 1645 1646 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1647 1165, 1165, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1648 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1167, 1649 374, 1167, 372, 1167, 1167, 1168, 1168, 371, 1168, 1168, 1650 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1651 1168, 1168, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1652 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1170, 1653 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1654 1170, 1170, 1170, 1170, 1170, 1170, 1171, 1171, 365, 1171, 1655 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1656 1657 1171, 1171, 1171, 1172, 1172, 358, 1172, 1172, 1172, 1172, 1658 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1659 1173, 1173, 353, 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1660 1173, 1173, 1173, 1173, 1173, 1173, 1173, 1174, 1174, 1174, 1661 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1662 1174, 1174, 1174, 1174, 1175, 1175, 1175, 1175, 1175, 1175, 1663 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1664 1175, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1665 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1177, 1177, 1666 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1667 1668 1177, 1177, 1177, 1177, 1177, 1178, 1178, 1178, 1178, 1178, 1669 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1670 1178, 1178, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1671 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 345, 1672 344, 334, 333, 332, 331, 330, 329, 328, 326, 262, 1673 244, 243, 237, 236, 235, 233, 232, 231, 230, 228, 1674 213, 212, 210, 209, 204, 198, 195, 192, 178, 173, 1675 171, 170, 167, 101, 100, 96, 95, 82, 81, 77, 1676 76, 75, 69, 68, 63, 58, 13, 7, 1123, 1123, 1677 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1678 1679 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1680 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1681 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1682 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1683 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1684 1123, 1123 2875 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 2876 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 2877 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 2878 2879 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 2880 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 2881 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 2882 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 2883 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161 1685 2884 } ; 1686 2885 1687 2886 static yy_state_type yy_last_accepting_state; 1688 2887 static char *yy_last_accepting_cpos; 2888 2889 extern int fortran_flex_debug; 2890 int fortran_flex_debug = 0; 1689 2891 1690 2892 /* The intent behind this definition is that it'll catch … … 1695 2897 #define YY_MORE_ADJ 0 1696 2898 #define YY_RESTORE_YY_MORE_OFFSET 1697 char * yytext;2899 char *fortrantext; 1698 2900 #line 1 "fortran.lex" 1699 #define INITIAL 01700 2901 /******************************************************************************/ 1701 2902 /* */ … … 1732 2933 /* version 1.7 */ 1733 2934 /******************************************************************************/ 1734 #define parameter 1 1735 1736 #define character 2 1737 1738 #define donottreat 3 1739 1740 #define fortran77style 4 1741 1742 #define fortran90style 5 2935 2936 2937 2938 1743 2939 1744 2940 #line 41 "fortran.lex" … … 1746 2942 #include <stdlib.h> 1747 2943 #include <string.h> 1748 extern FILE * yyin;2944 extern FILE * fortranin; 1749 2945 #define MAX_INCLUDE_DEPTH 30 1750 2946 #define tabsize 6 … … 1768 2964 if (firstpass == 0) \ 1769 2965 {\ 1770 strcat(curbuf, yytext); \2966 strcat(curbuf,fortrantext); \ 1771 2967 Save_Length(curbuf,38); \ 1772 strcpy(motparse, yytext);\2968 strcpy(motparse,fortrantext);\ 1773 2969 Save_Length(motparse,32); \ 1774 2970 colnum = colnum + strlen(motparse);\ 1775 2971 ECHO; \ 1776 2972 }\ 1777 strcpy(motparse1, yytext);\1778 /*printf("yytext = %s\n",yytext);*/\2973 strcpy(motparse1,fortrantext);\ 2974 /* printf("fortrantext = %s\n",fortrantext);*/\ 1779 2975 /*if ( firstpass == 1 ) 1780 printf(" yytext = %s %d\n",yytext,strlen(yytext));*/\2976 printf("fortrantext = %s %d\n",fortrantext,strlen(fortrantext));*/\ 1781 2977 } 1782 #line 1783 "fortran.yy.c" 2978 #line 2979 "fortran.yy.c" 2979 2980 #define INITIAL 0 2981 #define parameter 1 2982 #define character 2 2983 #define donottreat 3 2984 #define fortran77style 4 2985 #define fortran90style 5 2986 2987 #ifndef YY_NO_UNISTD_H 2988 /* Special case for "unistd.h", since it is non-ANSI. We include it way 2989 * down here because we want the user's section 1 to have been scanned first. 2990 * The user has a chance to override it with an option. 2991 */ 2992 #include <unistd.h> 2993 #endif 2994 2995 #ifndef YY_EXTRA_TYPE 2996 #define YY_EXTRA_TYPE void * 2997 #endif 2998 2999 static int yy_init_globals (void ); 3000 3001 /* Accessor methods to globals. 3002 These are made visible to non-reentrant scanners for convenience. */ 3003 3004 int fortranlex_destroy (void ); 3005 3006 int fortranget_debug (void ); 3007 3008 void fortranset_debug (int debug_flag ); 3009 3010 YY_EXTRA_TYPE fortranget_extra (void ); 3011 3012 void fortranset_extra (YY_EXTRA_TYPE user_defined ); 3013 3014 FILE *fortranget_in (void ); 3015 3016 void fortranset_in (FILE * in_str ); 3017 3018 FILE *fortranget_out (void ); 3019 3020 void fortranset_out (FILE * out_str ); 3021 3022 yy_size_t fortranget_leng (void ); 3023 3024 char *fortranget_text (void ); 3025 3026 int fortranget_lineno (void ); 3027 3028 void fortranset_lineno (int line_number ); 1783 3029 1784 3030 /* Macros after this point can all be overridden by user definitions in … … 1788 3034 #ifndef YY_SKIP_YYWRAP 1789 3035 #ifdef __cplusplus 1790 extern "C" int yywrap YY_PROTO(( void ));3036 extern "C" int fortranwrap (void ); 1791 3037 #else 1792 extern int yywrap YY_PROTO(( void ));3038 extern int fortranwrap (void ); 1793 3039 #endif 1794 3040 #endif 1795 3041 1796 #ifndef YY_NO_UNPUT 1797 static void yyunput YY_PROTO(( int c, char *buf_ptr )); 3042 static void yyunput (int c,char *buf_ptr ); 3043 3044 #ifndef yytext_ptr 3045 static void yy_flex_strncpy (char *,yyconst char *,int ); 1798 3046 #endif 1799 3047 1800 #if ndef yytext_ptr1801 static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));3048 #ifdef YY_NEED_STRLEN 3049 static int yy_flex_strlen (yyconst char * ); 1802 3050 #endif 1803 3051 1804 #ifdef YY_NEED_STRLEN 1805 static int yy_flex_strlen YY_PROTO(( yyconst char * )); 3052 #ifndef YY_NO_INPUT 3053 3054 #ifdef __cplusplus 3055 static int yyinput (void ); 3056 #else 3057 static int input (void ); 1806 3058 #endif 1807 3059 1808 #ifndef YY_NO_INPUT1809 #ifdef __cplusplus1810 static int yyinput YY_PROTO(( void ));1811 #else1812 static int input YY_PROTO(( void ));1813 #endif1814 #endif1815 1816 #if YY_STACK_USED1817 static int yy_start_stack_ptr = 0;1818 static int yy_start_stack_depth = 0;1819 static int *yy_start_stack = 0;1820 #ifndef YY_NO_PUSH_STATE1821 static void yy_push_state YY_PROTO(( int new_state ));1822 #endif1823 #ifndef YY_NO_POP_STATE1824 static void yy_pop_state YY_PROTO(( void ));1825 #endif1826 #ifndef YY_NO_TOP_STATE1827 static int yy_top_state YY_PROTO(( void ));1828 #endif1829 1830 #else1831 #define YY_NO_PUSH_STATE 11832 #define YY_NO_POP_STATE 11833 #define YY_NO_TOP_STATE 11834 #endif1835 1836 #ifdef YY_MALLOC_DECL1837 YY_MALLOC_DECL1838 #else1839 #if __STDC__1840 #ifndef __cplusplus1841 #include <stdlib.h>1842 #endif1843 #else1844 /* Just try to get by without declaring the routines. This will fail1845 * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int)1846 * or sizeof(void*) != sizeof(int).1847 */1848 #endif1849 3060 #endif 1850 3061 … … 1855 3066 1856 3067 /* Copy whatever the last rule matched to the standard output. */ 1857 1858 3068 #ifndef ECHO 1859 3069 /* This used to be an fputs(), but since the string might contain NUL's, 1860 3070 * we now use fwrite(). 1861 3071 */ 1862 #define ECHO (void) fwrite( yytext, yyleng, 1, yyout )3072 #define ECHO fwrite( fortrantext, fortranleng, 1, fortranout ) 1863 3073 #endif 1864 3074 … … 1868 3078 #ifndef YY_INPUT 1869 3079 #define YY_INPUT(buf,result,max_size) \ 1870 if ( yy_current_buffer->yy_is_interactive ) \3080 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ 1871 3081 { \ 1872 int c = '*', n; \ 3082 int c = '*'; \ 3083 yy_size_t n; \ 1873 3084 for ( n = 0; n < max_size && \ 1874 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \3085 (c = getc( fortranin )) != EOF && c != '\n'; ++n ) \ 1875 3086 buf[n] = (char) c; \ 1876 3087 if ( c == '\n' ) \ 1877 3088 buf[n++] = (char) c; \ 1878 if ( c == EOF && ferror( yyin ) ) \3089 if ( c == EOF && ferror( fortranin ) ) \ 1879 3090 YY_FATAL_ERROR( "input in flex scanner failed" ); \ 1880 3091 result = n; \ 1881 3092 } \ 1882 else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \ 1883 && ferror( yyin ) ) \ 1884 YY_FATAL_ERROR( "input in flex scanner failed" ); 3093 else \ 3094 { \ 3095 errno=0; \ 3096 while ( (result = fread(buf, 1, max_size, fortranin))==0 && ferror(fortranin)) \ 3097 { \ 3098 if( errno != EINTR) \ 3099 { \ 3100 YY_FATAL_ERROR( "input in flex scanner failed" ); \ 3101 break; \ 3102 } \ 3103 errno=0; \ 3104 clearerr(fortranin); \ 3105 } \ 3106 }\ 3107 \ 3108 1885 3109 #endif 1886 3110 … … 1903 3127 #endif 1904 3128 3129 /* end tables serialization structures and prototypes */ 3130 1905 3131 /* Default declaration of generated scanner - a define so the user can 1906 3132 * easily add parameters. 1907 3133 */ 1908 3134 #ifndef YY_DECL 1909 #define YY_DECL int yylex YY_PROTO(( void )) 1910 #endif 1911 1912 /* Code executed at the beginning of each rule, after yytext and yyleng 3135 #define YY_DECL_IS_OURS 1 3136 3137 extern int fortranlex (void); 3138 3139 #define YY_DECL int fortranlex (void) 3140 #endif /* !YY_DECL */ 3141 3142 /* Code executed at the beginning of each rule, after fortrantext and fortranleng 1913 3143 * have been set up. 1914 3144 */ … … 1923 3153 1924 3154 #define YY_RULE_SETUP \ 1925 if ( yyleng > 0 ) \1926 yy_current_buffer->yy_at_bol = \1927 ( yytext[yyleng - 1] == '\n'); \3155 if ( fortranleng > 0 ) \ 3156 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \ 3157 (fortrantext[fortranleng - 1] == '\n'); \ 1928 3158 YY_USER_ACTION 1929 3159 3160 /** The main scanner function which does all the work. 3161 */ 1930 3162 YY_DECL 1931 3163 { 1932 3164 register yy_state_type yy_current_state; 1933 3165 register char *yy_cp, *yy_bp; 1934 3166 register int yy_act; 1935 1936 #line 10 6"fortran.lex"3167 3168 #line 107 "fortran.lex" 1937 3169 1938 3170 if (infixed) BEGIN(fortran77style) ; 1939 3171 if (infree) BEGIN(fortran90style) ; 1940 3172 1941 #line 1942"fortran.yy.c"1942 1943 if ( yy_init)3173 #line 3174 "fortran.yy.c" 3174 3175 if ( !(yy_init) ) 1944 3176 { 1945 yy_init = 0;3177 (yy_init) = 1; 1946 3178 1947 3179 #ifdef YY_USER_INIT … … 1949 3181 #endif 1950 3182 1951 if ( ! yy_start ) 1952 yy_start = 1; /* first start state */ 1953 1954 if ( ! yyin ) 1955 yyin = stdin; 1956 1957 if ( ! yyout ) 1958 yyout = stdout; 1959 1960 if ( ! yy_current_buffer ) 1961 yy_current_buffer = 1962 yy_create_buffer( yyin, YY_BUF_SIZE ); 1963 1964 yy_load_buffer_state(); 3183 if ( ! (yy_start) ) 3184 (yy_start) = 1; /* first start state */ 3185 3186 if ( ! fortranin ) 3187 fortranin = stdin; 3188 3189 if ( ! fortranout ) 3190 fortranout = stdout; 3191 3192 if ( ! YY_CURRENT_BUFFER ) { 3193 fortranensure_buffer_stack (); 3194 YY_CURRENT_BUFFER_LVALUE = 3195 fortran_create_buffer(fortranin,YY_BUF_SIZE ); 3196 } 3197 3198 fortran_load_buffer_state( ); 1965 3199 } 1966 3200 1967 3201 while ( 1 ) /* loops until end-of-file is reached */ 1968 3202 { 1969 yy_cp = yy_c_buf_p;1970 1971 /* Support of yytext. */1972 *yy_cp = yy_hold_char;3203 yy_cp = (yy_c_buf_p); 3204 3205 /* Support of fortrantext. */ 3206 *yy_cp = (yy_hold_char); 1973 3207 1974 3208 /* yy_bp points to the position in yy_ch_buf of the start of … … 1977 3211 yy_bp = yy_cp; 1978 3212 1979 yy_current_state = yy_start;3213 yy_current_state = (yy_start); 1980 3214 yy_current_state += YY_AT_BOL(); 1981 3215 yy_match: … … 1985 3219 if ( yy_accept[yy_current_state] ) 1986 3220 { 1987 yy_last_accepting_state= yy_current_state;1988 yy_last_accepting_cpos= yy_cp;3221 (yy_last_accepting_state) = yy_current_state; 3222 (yy_last_accepting_cpos) = yy_cp; 1989 3223 } 1990 3224 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 1991 3225 { 1992 3226 yy_current_state = (int) yy_def[yy_current_state]; 1993 if ( yy_current_state >= 11 24)3227 if ( yy_current_state >= 1162 ) 1994 3228 yy_c = yy_meta[(unsigned int) yy_c]; 1995 3229 } … … 1997 3231 ++yy_cp; 1998 3232 } 1999 while ( yy_base[yy_current_state] != 4189 );3233 while ( yy_base[yy_current_state] != 9159 ); 2000 3234 2001 3235 yy_find_action: … … 2003 3237 if ( yy_act == 0 ) 2004 3238 { /* have to back up */ 2005 yy_cp = yy_last_accepting_cpos;2006 yy_current_state = yy_last_accepting_state;3239 yy_cp = (yy_last_accepting_cpos); 3240 yy_current_state = (yy_last_accepting_state); 2007 3241 yy_act = yy_accept[yy_current_state]; 2008 3242 } … … 2010 3244 YY_DO_BEFORE_ACTION; 2011 3245 2012 2013 3246 do_action: /* This label is used only to access EOF actions. */ 2014 2015 3247 2016 3248 switch ( yy_act ) … … 2018 3250 case 0: /* must back up */ 2019 3251 /* undo the effects of YY_DO_BEFORE_ACTION */ 2020 *yy_cp = yy_hold_char;2021 yy_cp = yy_last_accepting_cpos;2022 yy_current_state = yy_last_accepting_state;3252 *yy_cp = (yy_hold_char); 3253 yy_cp = (yy_last_accepting_cpos); 3254 yy_current_state = (yy_last_accepting_state); 2023 3255 goto yy_find_action; 2024 3256 2025 3257 case 1: 2026 3258 YY_RULE_SETUP 2027 #line 11 0"fortran.lex"3259 #line 111 "fortran.lex" 2028 3260 return TOK_DEBUT; 2029 3261 YY_BREAK 2030 3262 case 2: 2031 3263 YY_RULE_SETUP 2032 #line 11 1"fortran.lex"3264 #line 112 "fortran.lex" 2033 3265 return TOK_FIN; 2034 3266 YY_BREAK 2035 3267 case 3: 2036 3268 YY_RULE_SETUP 2037 #line 11 2"fortran.lex"3269 #line 113 "fortran.lex" 2038 3270 return TOK_OMP; 2039 3271 YY_BREAK 2040 3272 case 4: 2041 3273 YY_RULE_SETUP 2042 #line 11 3"fortran.lex"3274 #line 114 "fortran.lex" 2043 3275 return TOK_DOLLAR; 2044 3276 YY_BREAK 2045 3277 case 5: 2046 3278 YY_RULE_SETUP 2047 #line 11 5"fortran.lex"3279 #line 116 "fortran.lex" 2048 3280 {return TOK_REAL8;} 2049 3281 YY_BREAK 2050 3282 case 6: 2051 3283 YY_RULE_SETUP 2052 #line 11 6"fortran.lex"3284 #line 117 "fortran.lex" 2053 3285 {return TOK_SUBROUTINE;} 2054 3286 YY_BREAK 2055 3287 case 7: 2056 3288 YY_RULE_SETUP 2057 #line 11 7"fortran.lex"3289 #line 118 "fortran.lex" 2058 3290 {return TOK_PROGRAM;} 2059 3291 YY_BREAK 2060 3292 case 8: 2061 3293 YY_RULE_SETUP 2062 #line 11 8"fortran.lex"3294 #line 119 "fortran.lex" 2063 3295 {inallocate = 1; return TOK_ALLOCATE;} 2064 3296 YY_BREAK 2065 3297 case 9: 2066 3298 YY_RULE_SETUP 2067 #line 119 "fortran.lex" 3299 #line 120 "fortran.lex" 3300 {return TOK_NULLIFY;} 3301 YY_BREAK 3302 case 10: 3303 YY_RULE_SETUP 3304 #line 121 "fortran.lex" 2068 3305 {inallocate = 1; return TOK_DEALLOCATE;} 2069 3306 YY_BREAK 2070 case 1 0:2071 YY_RULE_SETUP 2072 #line 12 0"fortran.lex"3307 case 11: 3308 YY_RULE_SETUP 3309 #line 122 "fortran.lex" 2073 3310 {return TOK_RESULT;} 2074 3311 YY_BREAK 2075 case 1 1:2076 YY_RULE_SETUP 2077 #line 12 1"fortran.lex"3312 case 12: 3313 YY_RULE_SETUP 3314 #line 123 "fortran.lex" 2078 3315 {return TOK_FUNCTION;} 2079 3316 YY_BREAK 2080 case 12:2081 YY_RULE_SETUP2082 #line 122 "fortran.lex"2083 {strcpy(yylval.na,yytext);return TOK_ENDSUBROUTINE;}2084 YY_BREAK2085 3317 case 13: 2086 3318 YY_RULE_SETUP 2087 #line 12 3"fortran.lex"2088 {strcpy(yylval.na, yytext);return TOK_ENDPROGRAM;}3319 #line 124 "fortran.lex" 3320 {strcpy(yylval.na,fortrantext);return TOK_ENDSUBROUTINE;} 2089 3321 YY_BREAK 2090 3322 case 14: 2091 3323 YY_RULE_SETUP 2092 #line 12 4"fortran.lex"2093 {strcpy(yylval.na, yytext);return TOK_ENDFUNCTION;}3324 #line 125 "fortran.lex" 3325 {strcpy(yylval.na,fortrantext);return TOK_ENDPROGRAM;} 2094 3326 YY_BREAK 2095 3327 case 15: 2096 3328 YY_RULE_SETUP 2097 #line 12 5"fortran.lex"2098 {strcpy(yylval.na, yytext);return TOK_ENDUNIT;}3329 #line 126 "fortran.lex" 3330 {strcpy(yylval.na,fortrantext);return TOK_ENDFUNCTION;} 2099 3331 YY_BREAK 2100 3332 case 16: 2101 3333 YY_RULE_SETUP 2102 #line 126 "fortran.lex" 3334 #line 127 "fortran.lex" 3335 {strcpy(yylval.na,fortrantext);return TOK_ENDUNIT;} 3336 YY_BREAK 3337 case 17: 3338 YY_RULE_SETUP 3339 #line 128 "fortran.lex" 2103 3340 return TOK_INCLUDE; 2104 3341 YY_BREAK 2105 case 1 7:2106 YY_RULE_SETUP 2107 #line 12 7"fortran.lex"3342 case 18: 3343 YY_RULE_SETUP 3344 #line 129 "fortran.lex" 2108 3345 { 2109 strcpy(yylval.na, yytext);3346 strcpy(yylval.na,fortrantext); 2110 3347 tmpc = input(); 2111 3348 unput(tmpc); … … 2124 3361 } 2125 3362 YY_BREAK 2126 case 1 8:2127 YY_RULE_SETUP 2128 #line 14 4"fortran.lex"3363 case 19: 3364 YY_RULE_SETUP 3365 #line 146 "fortran.lex" 2129 3366 {return TOK_REWIND;} 2130 3367 YY_BREAK 2131 case 19:2132 YY_RULE_SETUP 2133 #line 14 5"fortran.lex"3368 case 20: 3369 YY_RULE_SETUP 3370 #line 147 "fortran.lex" 2134 3371 return TOK_IMPLICIT; 2135 3372 YY_BREAK 2136 case 2 0:2137 YY_RULE_SETUP 2138 #line 14 6"fortran.lex"3373 case 21: 3374 YY_RULE_SETUP 3375 #line 148 "fortran.lex" 2139 3376 return TOK_NONE; 2140 3377 YY_BREAK 2141 case 2 1:2142 YY_RULE_SETUP 2143 #line 14 7"fortran.lex"3378 case 22: 3379 YY_RULE_SETUP 3380 #line 149 "fortran.lex" 2144 3381 return TOK_CALL; 2145 3382 YY_BREAK 2146 case 2 2:2147 YY_RULE_SETUP 2148 #line 1 48"fortran.lex"3383 case 23: 3384 YY_RULE_SETUP 3385 #line 150 "fortran.lex" 2149 3386 return TOK_TRUE; 2150 3387 YY_BREAK 2151 case 2 3:2152 YY_RULE_SETUP 2153 #line 1 49"fortran.lex"3388 case 24: 3389 YY_RULE_SETUP 3390 #line 151 "fortran.lex" 2154 3391 return TOK_FALSE; 2155 3392 YY_BREAK 2156 case 2 4:2157 YY_RULE_SETUP 2158 #line 15 0"fortran.lex"3393 case 25: 3394 YY_RULE_SETUP 3395 #line 152 "fortran.lex" 2159 3396 {return TOK_POINT_TO;} 2160 3397 YY_BREAK 2161 case 25:2162 YY_RULE_SETUP2163 #line 151 "fortran.lex"2164 {strcpy(yylval.na,yytext);return TOK_DASTER;}2165 YY_BREAK2166 3398 case 26: 2167 3399 YY_RULE_SETUP 2168 #line 15 2"fortran.lex"2169 {strcpy(yylval.na, yytext);return TOK_EQV;}3400 #line 153 "fortran.lex" 3401 {strcpy(yylval.na,fortrantext);return TOK_DASTER;} 2170 3402 YY_BREAK 2171 3403 case 27: 2172 3404 YY_RULE_SETUP 2173 #line 15 3"fortran.lex"2174 {strcpy(yylval.na, yytext);return TOK_EQ;}3405 #line 154 "fortran.lex" 3406 {strcpy(yylval.na,fortrantext);return TOK_EQV;} 2175 3407 YY_BREAK 2176 3408 case 28: 2177 3409 YY_RULE_SETUP 2178 #line 15 4"fortran.lex"2179 {strcpy(yylval.na, yytext);return TOK_GT;}3410 #line 155 "fortran.lex" 3411 {strcpy(yylval.na,fortrantext);return TOK_EQ;} 2180 3412 YY_BREAK 2181 3413 case 29: 2182 3414 YY_RULE_SETUP 2183 #line 15 5"fortran.lex"2184 {strcpy(yylval.na, yytext);return TOK_GE;}3415 #line 156 "fortran.lex" 3416 {strcpy(yylval.na,fortrantext);return TOK_GT;} 2185 3417 YY_BREAK 2186 3418 case 30: 2187 3419 YY_RULE_SETUP 2188 #line 15 6"fortran.lex"2189 {strcpy(yylval.na, yytext);return TOK_LT;}3420 #line 157 "fortran.lex" 3421 {strcpy(yylval.na,fortrantext);return TOK_GE;} 2190 3422 YY_BREAK 2191 3423 case 31: 2192 3424 YY_RULE_SETUP 2193 #line 15 7"fortran.lex"2194 {strcpy(yylval.na, yytext);return TOK_LE;}3425 #line 158 "fortran.lex" 3426 {strcpy(yylval.na,fortrantext);return TOK_LT;} 2195 3427 YY_BREAK 2196 3428 case 32: 2197 3429 YY_RULE_SETUP 2198 #line 15 8"fortran.lex"2199 {strcpy(yylval.na, yytext);return TOK_NEQV;}3430 #line 159 "fortran.lex" 3431 {strcpy(yylval.na,fortrantext);return TOK_LE;} 2200 3432 YY_BREAK 2201 3433 case 33: 2202 3434 YY_RULE_SETUP 2203 #line 1 59"fortran.lex"2204 {strcpy(yylval.na, yytext);return TOK_NE;}3435 #line 160 "fortran.lex" 3436 {strcpy(yylval.na,fortrantext);return TOK_NEQV;} 2205 3437 YY_BREAK 2206 3438 case 34: 2207 3439 YY_RULE_SETUP 2208 #line 16 0"fortran.lex"2209 {strcpy(yylval.na, yytext);return TOK_NOT;}3440 #line 161 "fortran.lex" 3441 {strcpy(yylval.na,fortrantext);return TOK_NE;} 2210 3442 YY_BREAK 2211 3443 case 35: 2212 3444 YY_RULE_SETUP 2213 #line 16 1"fortran.lex"2214 {strcpy(yylval.na, yytext);return TOK_OR;}3445 #line 162 "fortran.lex" 3446 {strcpy(yylval.na,fortrantext);return TOK_NOT;} 2215 3447 YY_BREAK 2216 3448 case 36: 2217 3449 YY_RULE_SETUP 2218 #line 16 2"fortran.lex"2219 {strcpy(yylval.na, yytext);return TOK_XOR;}3450 #line 163 "fortran.lex" 3451 {strcpy(yylval.na,fortrantext);return TOK_OR;} 2220 3452 YY_BREAK 2221 3453 case 37: 2222 3454 YY_RULE_SETUP 2223 #line 16 3"fortran.lex"2224 {strcpy(yylval.na, yytext);return TOK_AND;}3455 #line 164 "fortran.lex" 3456 {strcpy(yylval.na,fortrantext);return TOK_XOR;} 2225 3457 YY_BREAK 2226 3458 case 38: 2227 3459 YY_RULE_SETUP 2228 #line 164 "fortran.lex" 3460 #line 165 "fortran.lex" 3461 {strcpy(yylval.na,fortrantext);return TOK_AND;} 3462 YY_BREAK 3463 case 39: 3464 YY_RULE_SETUP 3465 #line 166 "fortran.lex" 2229 3466 {return TOK_MODULE;} 2230 3467 YY_BREAK 2231 case 39:2232 YY_RULE_SETUP 2233 #line 16 5"fortran.lex"3468 case 40: 3469 YY_RULE_SETUP 3470 #line 167 "fortran.lex" 2234 3471 {return TOK_DOWHILE;} 2235 3472 YY_BREAK 2236 case 4 0:2237 YY_RULE_SETUP 2238 #line 16 6"fortran.lex"3473 case 41: 3474 YY_RULE_SETUP 3475 #line 168 "fortran.lex" 2239 3476 return TOK_ENDMODULE; 2240 3477 YY_BREAK 2241 case 4 1:2242 YY_RULE_SETUP 2243 #line 16 7"fortran.lex"3478 case 42: 3479 YY_RULE_SETUP 3480 #line 169 "fortran.lex" 2244 3481 return TOK_ENDDO; 2245 3482 YY_BREAK 2246 case 4 2:2247 YY_RULE_SETUP 2248 #line 1 68"fortran.lex"3483 case 43: 3484 YY_RULE_SETUP 3485 #line 170 "fortran.lex" 2249 3486 {return TOK_PLAINDO;} 2250 3487 YY_BREAK 2251 case 43:2252 YY_RULE_SETUP2253 #line 169 "fortran.lex"2254 {strcpy(yylval.na,yytext);return TOK_REAL;}2255 YY_BREAK2256 3488 case 44: 2257 3489 YY_RULE_SETUP 2258 #line 17 0"fortran.lex"2259 {strcpy(yylval.na, yytext);return TOK_INTEGER;}3490 #line 171 "fortran.lex" 3491 {strcpy(yylval.na,fortrantext);return TOK_REAL;} 2260 3492 YY_BREAK 2261 3493 case 45: 2262 3494 YY_RULE_SETUP 2263 #line 17 1"fortran.lex"2264 {strcpy(yylval.na, yytext);return TOK_LOGICAL;}3495 #line 172 "fortran.lex" 3496 {strcpy(yylval.na,fortrantext);return TOK_INTEGER;} 2265 3497 YY_BREAK 2266 3498 case 46: 2267 3499 YY_RULE_SETUP 2268 #line 17 2"fortran.lex"2269 {strcpy(yylval.na, yytext);return TOK_CHARACTER;}3500 #line 173 "fortran.lex" 3501 {strcpy(yylval.na,fortrantext);return TOK_LOGICAL;} 2270 3502 YY_BREAK 2271 3503 case 47: 2272 3504 YY_RULE_SETUP 2273 #line 173 "fortran.lex" 3505 #line 174 "fortran.lex" 3506 {strcpy(yylval.na,fortrantext);return TOK_CHARACTER;} 3507 YY_BREAK 3508 case 48: 3509 YY_RULE_SETUP 3510 #line 175 "fortran.lex" 2274 3511 {return TOK_ALLOCATABLE;} 2275 3512 YY_BREAK 2276 case 4 8:2277 YY_RULE_SETUP 2278 #line 17 4"fortran.lex"3513 case 49: 3514 YY_RULE_SETUP 3515 #line 176 "fortran.lex" 2279 3516 return TOK_CLOSE; 2280 3517 YY_BREAK 2281 case 49:2282 YY_RULE_SETUP 2283 #line 17 5"fortran.lex"3518 case 50: 3519 YY_RULE_SETUP 3520 #line 177 "fortran.lex" 2284 3521 return TOK_INQUIRE; 2285 3522 YY_BREAK 2286 case 5 0:2287 YY_RULE_SETUP 2288 #line 17 6"fortran.lex"3523 case 51: 3524 YY_RULE_SETUP 3525 #line 178 "fortran.lex" 2289 3526 {return TOK_DIMENSION;} 2290 3527 YY_BREAK 2291 case 5 1:2292 YY_RULE_SETUP 2293 #line 17 7"fortran.lex"3528 case 52: 3529 YY_RULE_SETUP 3530 #line 179 "fortran.lex" 2294 3531 return TOK_PAUSE; 2295 3532 YY_BREAK 2296 case 5 2:2297 YY_RULE_SETUP 2298 #line 1 78"fortran.lex"3533 case 53: 3534 YY_RULE_SETUP 3535 #line 180 "fortran.lex" 2299 3536 return TOK_EQUIVALENCE; 2300 3537 YY_BREAK 2301 case 5 3:2302 YY_RULE_SETUP 2303 #line 1 79"fortran.lex"3538 case 54: 3539 YY_RULE_SETUP 3540 #line 181 "fortran.lex" 2304 3541 return TOK_STOP; 2305 3542 YY_BREAK 2306 case 5 4:2307 YY_RULE_SETUP 2308 #line 18 0"fortran.lex"3543 case 55: 3544 YY_RULE_SETUP 3545 #line 182 "fortran.lex" 2309 3546 return TOK_WHERE; 2310 3547 YY_BREAK 2311 case 5 5:2312 YY_RULE_SETUP 2313 #line 18 1"fortran.lex"3548 case 56: 3549 YY_RULE_SETUP 3550 #line 183 "fortran.lex" 2314 3551 return TOK_ENDWHERE; 2315 3552 YY_BREAK 2316 case 5 6:2317 YY_RULE_SETUP 2318 #line 18 2"fortran.lex"3553 case 57: 3554 YY_RULE_SETUP 3555 #line 184 "fortran.lex" 2319 3556 return TOK_ELSEWHERE; 2320 3557 YY_BREAK 2321 case 5 7:2322 YY_RULE_SETUP 2323 #line 18 3"fortran.lex"3558 case 58: 3559 YY_RULE_SETUP 3560 #line 185 "fortran.lex" 2324 3561 {return TOK_COMPLEX;} 2325 3562 YY_BREAK 2326 case 5 8:2327 YY_RULE_SETUP 2328 #line 18 4"fortran.lex"3563 case 59: 3564 YY_RULE_SETUP 3565 #line 186 "fortran.lex" 2329 3566 {return TOK_CONTAINS;} 2330 3567 YY_BREAK 2331 case 59:2332 YY_RULE_SETUP 2333 #line 18 5"fortran.lex"3568 case 60: 3569 YY_RULE_SETUP 3570 #line 187 "fortran.lex" 2334 3571 {return TOK_ONLY;} 2335 3572 YY_BREAK 2336 case 6 0:2337 YY_RULE_SETUP 2338 #line 18 6"fortran.lex"3573 case 61: 3574 YY_RULE_SETUP 3575 #line 188 "fortran.lex" 2339 3576 {return TOK_PARAMETER;} 2340 3577 YY_BREAK 2341 case 6 1:2342 YY_RULE_SETUP 2343 #line 18 7"fortran.lex"3578 case 62: 3579 YY_RULE_SETUP 3580 #line 189 "fortran.lex" 2344 3581 {return TOK_RECURSIVE;} 2345 3582 YY_BREAK 2346 case 6 2:2347 YY_RULE_SETUP 2348 #line 1 88"fortran.lex"3583 case 63: 3584 YY_RULE_SETUP 3585 #line 190 "fortran.lex" 2349 3586 {return TOK_COMMON;} 2350 3587 YY_BREAK 2351 case 6 3:2352 YY_RULE_SETUP 2353 #line 1 89"fortran.lex"3588 case 64: 3589 YY_RULE_SETUP 3590 #line 191 "fortran.lex" 2354 3591 {return TOK_GLOBAL;} 2355 3592 YY_BREAK 2356 case 6 4:2357 YY_RULE_SETUP 2358 #line 19 0"fortran.lex"3593 case 65: 3594 YY_RULE_SETUP 3595 #line 192 "fortran.lex" 2359 3596 {return TOK_EXTERNAL;} 2360 3597 YY_BREAK 2361 case 6 5:2362 YY_RULE_SETUP 2363 #line 19 1"fortran.lex"3598 case 66: 3599 YY_RULE_SETUP 3600 #line 193 "fortran.lex" 2364 3601 {return TOK_INTENT;} 2365 3602 YY_BREAK 2366 case 6 6:2367 YY_RULE_SETUP 2368 #line 19 2"fortran.lex"3603 case 67: 3604 YY_RULE_SETUP 3605 #line 194 "fortran.lex" 2369 3606 {return TOK_POINTER;} 2370 3607 YY_BREAK 2371 case 6 7:2372 YY_RULE_SETUP 2373 #line 19 3"fortran.lex"3608 case 68: 3609 YY_RULE_SETUP 3610 #line 195 "fortran.lex" 2374 3611 {return TOK_OPTIONAL;} 2375 3612 YY_BREAK 2376 case 6 8:2377 YY_RULE_SETUP 2378 #line 19 4"fortran.lex"3613 case 69: 3614 YY_RULE_SETUP 3615 #line 196 "fortran.lex" 2379 3616 {return TOK_SAVE;} 2380 3617 YY_BREAK 2381 case 69:2382 YY_RULE_SETUP 2383 #line 19 5"fortran.lex"3618 case 70: 3619 YY_RULE_SETUP 3620 #line 197 "fortran.lex" 2384 3621 {return TOK_TYPE;} 2385 3622 YY_BREAK 2386 case 7 0:2387 YY_RULE_SETUP 2388 #line 19 6"fortran.lex"3623 case 71: 3624 YY_RULE_SETUP 3625 #line 198 "fortran.lex" 2389 3626 {return TOK_TYPEPAR;} 2390 3627 YY_BREAK 2391 case 71:2392 YY_RULE_SETUP2393 #line 197 "fortran.lex"2394 {if (inallocate == 1) return TOK_STAT; else {strcpy(yylval.na,yytext);return TOK_NAME;}}2395 YY_BREAK2396 3628 case 72: 2397 3629 YY_RULE_SETUP 2398 #line 198 "fortran.lex" 3630 #line 199 "fortran.lex" 3631 {if (inallocate == 1) return TOK_STAT; else {strcpy(yylval.na,fortrantext);return TOK_NAME;}} 3632 YY_BREAK 3633 case 73: 3634 YY_RULE_SETUP 3635 #line 200 "fortran.lex" 2399 3636 {return TOK_ENDTYPE;} 2400 3637 YY_BREAK 2401 case 7 3:2402 YY_RULE_SETUP 2403 #line 199"fortran.lex"3638 case 74: 3639 YY_RULE_SETUP 3640 #line 201 "fortran.lex" 2404 3641 return TOK_OPEN; 2405 3642 YY_BREAK 2406 case 7 4:2407 YY_RULE_SETUP 2408 #line 20 0"fortran.lex"3643 case 75: 3644 YY_RULE_SETUP 3645 #line 202 "fortran.lex" 2409 3646 return TOK_RETURN; 2410 3647 YY_BREAK 2411 case 75: 2412 YY_RULE_SETUP 2413 #line 201 "fortran.lex" 3648 case 76: 3649 /* rule 76 can match eol */ 3650 YY_RULE_SETUP 3651 #line 203 "fortran.lex" 2414 3652 return TOK_EXIT; 2415 3653 YY_BREAK 2416 case 7 6:2417 YY_RULE_SETUP 2418 #line 20 2"fortran.lex"3654 case 77: 3655 YY_RULE_SETUP 3656 #line 204 "fortran.lex" 2419 3657 return TOK_PRINT; 2420 3658 YY_BREAK 2421 case 7 7:2422 YY_RULE_SETUP 2423 #line 20 3"fortran.lex"3659 case 78: 3660 YY_RULE_SETUP 3661 #line 205 "fortran.lex" 2424 3662 {return TOK_PROCEDURE;} 2425 3663 YY_BREAK 2426 case 7 8:2427 YY_RULE_SETUP 2428 #line 20 4"fortran.lex"3664 case 79: 3665 YY_RULE_SETUP 3666 #line 206 "fortran.lex" 2429 3667 {return TOK_READ;} 2430 3668 YY_BREAK 2431 case 79:2432 YY_RULE_SETUP 2433 #line 20 5"fortran.lex"3669 case 80: 3670 YY_RULE_SETUP 3671 #line 207 "fortran.lex" 2434 3672 {return TOK_NAMELIST;} 2435 3673 YY_BREAK 2436 case 8 0:2437 YY_RULE_SETUP 2438 #line 20 6"fortran.lex"3674 case 81: 3675 YY_RULE_SETUP 3676 #line 208 "fortran.lex" 2439 3677 {return TOK_WRITE;} 2440 3678 YY_BREAK 2441 case 8 1:2442 YY_RULE_SETUP 2443 #line 20 7"fortran.lex"3679 case 82: 3680 YY_RULE_SETUP 3681 #line 209 "fortran.lex" 2444 3682 {return TOK_TARGET;} 2445 3683 YY_BREAK 2446 case 8 2:2447 YY_RULE_SETUP 2448 #line 2 08"fortran.lex"3684 case 83: 3685 YY_RULE_SETUP 3686 #line 210 "fortran.lex" 2449 3687 {return TOK_PUBLIC;} 2450 3688 YY_BREAK 2451 case 8 3:2452 YY_RULE_SETUP 2453 #line 2 09"fortran.lex"3689 case 84: 3690 YY_RULE_SETUP 3691 #line 211 "fortran.lex" 2454 3692 {return TOK_PRIVATE;} 2455 3693 YY_BREAK 2456 case 84:2457 YY_RULE_SETUP2458 #line 210 "fortran.lex"2459 {strcpy(yylval.nac,yytext);return TOK_IN;}2460 YY_BREAK2461 3694 case 85: 2462 3695 YY_RULE_SETUP 2463 #line 21 1"fortran.lex"2464 {strcpy(yylval.na ,yytext);return TOK_DATA;}3696 #line 212 "fortran.lex" 3697 {strcpy(yylval.nac,fortrantext);return TOK_IN;} 2465 3698 YY_BREAK 2466 3699 case 86: 2467 3700 YY_RULE_SETUP 2468 #line 212 "fortran.lex" 3701 #line 213 "fortran.lex" 3702 {strcpy(yylval.na,fortrantext);return TOK_DATA;} 3703 YY_BREAK 3704 case 87: 3705 YY_RULE_SETUP 3706 #line 214 "fortran.lex" 2469 3707 return TOK_CONTINUE; 2470 3708 YY_BREAK 2471 case 8 7:2472 YY_RULE_SETUP 2473 #line 21 3"fortran.lex"3709 case 88: 3710 YY_RULE_SETUP 3711 #line 215 "fortran.lex" 2474 3712 {return TOK_PLAINGOTO;} 2475 3713 YY_BREAK 2476 case 88:2477 YY_RULE_SETUP2478 #line 214 "fortran.lex"2479 {strcpy(yylval.nac,yytext);return TOK_OUT;}2480 YY_BREAK2481 3714 case 89: 2482 3715 YY_RULE_SETUP 2483 #line 21 5"fortran.lex"2484 {strcpy(yylval.nac, yytext);return TOK_INOUT;}3716 #line 216 "fortran.lex" 3717 {strcpy(yylval.nac,fortrantext);return TOK_OUT;} 2485 3718 YY_BREAK 2486 3719 case 90: 2487 3720 YY_RULE_SETUP 2488 #line 216 "fortran.lex" 3721 #line 217 "fortran.lex" 3722 {strcpy(yylval.nac,fortrantext);return TOK_INOUT;} 3723 YY_BREAK 3724 case 91: 3725 YY_RULE_SETUP 3726 #line 218 "fortran.lex" 2489 3727 {return TOK_INTRINSIC;} 2490 3728 YY_BREAK 2491 case 9 1:2492 YY_RULE_SETUP 2493 #line 21 7"fortran.lex"3729 case 92: 3730 YY_RULE_SETUP 3731 #line 219 "fortran.lex" 2494 3732 {return TOK_THEN;} 2495 3733 YY_BREAK 2496 case 9 2:2497 YY_RULE_SETUP 2498 #line 2 18"fortran.lex"3734 case 93: 3735 YY_RULE_SETUP 3736 #line 220 "fortran.lex" 2499 3737 {return TOK_ELSEIF;} 2500 3738 YY_BREAK 2501 case 9 3:2502 YY_RULE_SETUP 2503 #line 2 19"fortran.lex"3739 case 94: 3740 YY_RULE_SETUP 3741 #line 221 "fortran.lex" 2504 3742 {return TOK_ELSE;} 2505 3743 YY_BREAK 2506 case 9 4:2507 YY_RULE_SETUP 2508 #line 22 0"fortran.lex"3744 case 95: 3745 YY_RULE_SETUP 3746 #line 222 "fortran.lex" 2509 3747 {return TOK_ENDIF;} 2510 3748 YY_BREAK 2511 case 9 5:2512 YY_RULE_SETUP 2513 #line 22 1"fortran.lex"3749 case 96: 3750 YY_RULE_SETUP 3751 #line 223 "fortran.lex" 2514 3752 {return TOK_LOGICALIF;} 2515 3753 YY_BREAK 2516 case 9 6:2517 YY_RULE_SETUP 2518 #line 22 2"fortran.lex"3754 case 97: 3755 YY_RULE_SETUP 3756 #line 224 "fortran.lex" 2519 3757 {return TOK_SUM;} 2520 3758 YY_BREAK 2521 case 9 7:2522 YY_RULE_SETUP 2523 #line 22 3"fortran.lex"3759 case 98: 3760 YY_RULE_SETUP 3761 #line 225 "fortran.lex" 2524 3762 {return TOK_MAX;} 2525 3763 YY_BREAK 2526 case 9 8:2527 YY_RULE_SETUP 2528 #line 22 4"fortran.lex"3764 case 99: 3765 YY_RULE_SETUP 3766 #line 226 "fortran.lex" 2529 3767 {return TOK_TANH;} 2530 3768 YY_BREAK 2531 case 99:2532 YY_RULE_SETUP 2533 #line 22 5"fortran.lex"3769 case 100: 3770 YY_RULE_SETUP 3771 #line 227 "fortran.lex" 2534 3772 {return TOK_MAXVAL;} 2535 3773 YY_BREAK 2536 case 10 0:2537 YY_RULE_SETUP 2538 #line 22 6"fortran.lex"3774 case 101: 3775 YY_RULE_SETUP 3776 #line 228 "fortran.lex" 2539 3777 {return TOK_TRIM;} 2540 3778 YY_BREAK 2541 case 10 1:2542 YY_RULE_SETUP 2543 #line 22 7"fortran.lex"3779 case 102: 3780 YY_RULE_SETUP 3781 #line 229 "fortran.lex" 2544 3782 {return TOK_SQRT;} 2545 3783 YY_BREAK 2546 case 10 2:2547 YY_RULE_SETUP 2548 #line 2 28"fortran.lex"3784 case 103: 3785 YY_RULE_SETUP 3786 #line 230 "fortran.lex" 2549 3787 {return TOK_SELECTCASE;} 2550 3788 YY_BREAK 2551 case 10 3:2552 YY_RULE_SETUP 2553 #line 2 29"fortran.lex"3789 case 104: 3790 YY_RULE_SETUP 3791 #line 231 "fortran.lex" 2554 3792 {return TOK_CASE;} 2555 3793 YY_BREAK 2556 case 10 4:2557 YY_RULE_SETUP 2558 #line 23 0"fortran.lex"3794 case 105: 3795 YY_RULE_SETUP 3796 #line 232 "fortran.lex" 2559 3797 {return TOK_CASEDEFAULT;} 2560 3798 YY_BREAK 2561 case 10 5:2562 YY_RULE_SETUP 2563 #line 23 1"fortran.lex"3799 case 106: 3800 YY_RULE_SETUP 3801 #line 233 "fortran.lex" 2564 3802 {return TOK_ENDSELECT;} 2565 3803 YY_BREAK 2566 case 10 6:2567 YY_RULE_SETUP 2568 #line 23 2"fortran.lex"3804 case 107: 3805 YY_RULE_SETUP 3806 #line 234 "fortran.lex" 2569 3807 {return TOK_FILE;} 2570 3808 YY_BREAK 2571 case 10 7:2572 YY_RULE_SETUP 2573 #line 23 3"fortran.lex"3809 case 108: 3810 YY_RULE_SETUP 3811 #line 235 "fortran.lex" 2574 3812 {return TOK_END;} 2575 3813 YY_BREAK 2576 case 10 8:2577 YY_RULE_SETUP 2578 #line 23 4"fortran.lex"3814 case 109: 3815 YY_RULE_SETUP 3816 #line 236 "fortran.lex" 2579 3817 {return TOK_ERR;} 2580 3818 YY_BREAK 2581 case 1 09:2582 YY_RULE_SETUP 2583 #line 23 5"fortran.lex"3819 case 110: 3820 YY_RULE_SETUP 3821 #line 237 "fortran.lex" 2584 3822 {return TOK_EXIST;} 2585 3823 YY_BREAK 2586 case 11 0:2587 YY_RULE_SETUP 2588 #line 23 6"fortran.lex"3824 case 111: 3825 YY_RULE_SETUP 3826 #line 238 "fortran.lex" 2589 3827 {return TOK_MIN;} 2590 3828 YY_BREAK 2591 case 11 1:2592 YY_RULE_SETUP 2593 #line 23 7"fortran.lex"3829 case 112: 3830 YY_RULE_SETUP 3831 #line 239 "fortran.lex" 2594 3832 {return TOK_NINT;} 2595 3833 YY_BREAK 2596 case 11 2:2597 YY_RULE_SETUP 2598 #line 2 38"fortran.lex"3834 case 113: 3835 YY_RULE_SETUP 3836 #line 240 "fortran.lex" 2599 3837 {return TOK_FLOAT;} 2600 3838 YY_BREAK 2601 case 11 3:2602 YY_RULE_SETUP 2603 #line 2 39"fortran.lex"3839 case 114: 3840 YY_RULE_SETUP 3841 #line 241 "fortran.lex" 2604 3842 {return TOK_EXP;} 2605 3843 YY_BREAK 2606 case 11 4:2607 YY_RULE_SETUP 2608 #line 24 0"fortran.lex"3844 case 115: 3845 YY_RULE_SETUP 3846 #line 242 "fortran.lex" 2609 3847 {return TOK_COS;} 2610 3848 YY_BREAK 2611 case 11 5:2612 YY_RULE_SETUP 2613 #line 24 1"fortran.lex"3849 case 116: 3850 YY_RULE_SETUP 3851 #line 243 "fortran.lex" 2614 3852 {return TOK_COSH;} 2615 3853 YY_BREAK 2616 case 11 6:2617 YY_RULE_SETUP 2618 #line 24 2"fortran.lex"3854 case 117: 3855 YY_RULE_SETUP 3856 #line 244 "fortran.lex" 2619 3857 {return TOK_ACOS;} 2620 3858 YY_BREAK 2621 case 11 7:2622 YY_RULE_SETUP 2623 #line 24 3"fortran.lex"3859 case 118: 3860 YY_RULE_SETUP 3861 #line 245 "fortran.lex" 2624 3862 {return TOK_SIN;} 2625 3863 YY_BREAK 2626 case 11 8:2627 YY_RULE_SETUP 2628 #line 24 4"fortran.lex"3864 case 119: 3865 YY_RULE_SETUP 3866 #line 246 "fortran.lex" 2629 3867 {return TOK_SINH;} 2630 3868 YY_BREAK 2631 case 1 19:2632 YY_RULE_SETUP 2633 #line 24 5"fortran.lex"3869 case 120: 3870 YY_RULE_SETUP 3871 #line 247 "fortran.lex" 2634 3872 {return TOK_ASIN;} 2635 3873 YY_BREAK 2636 case 12 0:2637 YY_RULE_SETUP 2638 #line 24 6"fortran.lex"3874 case 121: 3875 YY_RULE_SETUP 3876 #line 248 "fortran.lex" 2639 3877 {return TOK_LOG;} 2640 3878 YY_BREAK 2641 case 12 1:2642 YY_RULE_SETUP 2643 #line 24 7"fortran.lex"3879 case 122: 3880 YY_RULE_SETUP 3881 #line 249 "fortran.lex" 2644 3882 {return TOK_TAN;} 2645 3883 YY_BREAK 2646 case 12 2:2647 YY_RULE_SETUP 2648 #line 2 48"fortran.lex"3884 case 123: 3885 YY_RULE_SETUP 3886 #line 250 "fortran.lex" 2649 3887 {return TOK_ATAN;} 2650 3888 YY_BREAK 2651 case 12 3:2652 YY_RULE_SETUP 2653 #line 2 49"fortran.lex"3889 case 124: 3890 YY_RULE_SETUP 3891 #line 251 "fortran.lex" 2654 3892 {return TOK_CYCLE;} 2655 3893 YY_BREAK 2656 case 12 4:2657 YY_RULE_SETUP 2658 #line 25 0"fortran.lex"3894 case 125: 3895 YY_RULE_SETUP 3896 #line 252 "fortran.lex" 2659 3897 {return TOK_ABS;} 2660 3898 YY_BREAK 2661 case 12 5:2662 YY_RULE_SETUP 2663 #line 25 1"fortran.lex"3899 case 126: 3900 YY_RULE_SETUP 3901 #line 253 "fortran.lex" 2664 3902 {return TOK_MOD;} 2665 3903 YY_BREAK 2666 case 12 6:2667 YY_RULE_SETUP 2668 #line 25 2"fortran.lex"3904 case 127: 3905 YY_RULE_SETUP 3906 #line 254 "fortran.lex" 2669 3907 {return TOK_SIGN;} 2670 3908 YY_BREAK 2671 case 12 7:2672 YY_RULE_SETUP 2673 #line 25 3"fortran.lex"3909 case 128: 3910 YY_RULE_SETUP 3911 #line 255 "fortran.lex" 2674 3912 {return TOK_MINLOC;} 2675 3913 YY_BREAK 2676 case 12 8:2677 YY_RULE_SETUP 2678 #line 25 4"fortran.lex"3914 case 129: 3915 YY_RULE_SETUP 3916 #line 256 "fortran.lex" 2679 3917 {return TOK_MAXLOC;} 2680 3918 YY_BREAK 2681 case 1 29:2682 YY_RULE_SETUP 2683 #line 25 5"fortran.lex"3919 case 130: 3920 YY_RULE_SETUP 3921 #line 257 "fortran.lex" 2684 3922 {return TOK_MINVAL;} 2685 3923 YY_BREAK 2686 case 130:2687 YY_RULE_SETUP2688 #line 256 "fortran.lex"2689 {return TOK_INTERFACE;}2690 YY_BREAK2691 3924 case 131: 2692 3925 YY_RULE_SETUP 2693 #line 25 7"fortran.lex"3926 #line 258 "fortran.lex" 2694 3927 {return TOK_BACKSPACE;} 2695 3928 YY_BREAK 2696 3929 case 132: 2697 YY_RULE_SETUP2698 #line 258 "fortran.lex"2699 {return TOK_ENDINTERFACE;}2700 YY_BREAK2701 case 133:2702 3930 YY_RULE_SETUP 2703 3931 #line 259 "fortran.lex" 2704 3932 {return TOK_LEFTAB;} 2705 3933 YY_BREAK 2706 case 13 4:3934 case 133: 2707 3935 YY_RULE_SETUP 2708 3936 #line 260 "fortran.lex" 2709 3937 {return TOK_RIGHTAB;} 2710 3938 YY_BREAK 2711 case 135: 3939 case 134: 3940 /* rule 134 can match eol */ 2712 3941 YY_RULE_SETUP 2713 3942 #line 261 "fortran.lex" 2714 3943 {return TOK_FORMAT;} 2715 3944 YY_BREAK 3945 case 135: 3946 YY_RULE_SETUP 3947 #line 262 "fortran.lex" 3948 {strcpy(yylval.na,fortrantext);return TOK_DOUBLEPRECISION;} 3949 YY_BREAK 2716 3950 case 136: 2717 3951 YY_RULE_SETUP 2718 #line 26 2"fortran.lex"2719 {strcpy(yylval.na, yytext);return TOK_DOUBLEPRECISION;}3952 #line 263 "fortran.lex" 3953 {strcpy(yylval.na,fortrantext);return TOK_DOUBLECOMPLEX;} 2720 3954 YY_BREAK 2721 3955 case 137: 2722 3956 YY_RULE_SETUP 2723 #line 26 3"fortran.lex"2724 {strcpy(yylval.na, yytext);return TOK_DOUBLECOMPLEX;}3957 #line 264 "fortran.lex" 3958 {strcpy(yylval.na,fortrantext);return TOK_SLASH;} 2725 3959 YY_BREAK 2726 3960 case 138: 2727 3961 YY_RULE_SETUP 2728 #line 26 4"fortran.lex"2729 {strcpy(yylval.na, yytext);return TOK_SLASH;}3962 #line 265 "fortran.lex" 3963 {strcpy(yylval.na,fortrantext);return TOK_DSLASH;} 2730 3964 YY_BREAK 2731 3965 case 139: 2732 YY_RULE_SETUP 2733 #line 265 "fortran.lex" 2734 {strcpy(yylval.na,yytext);return TOK_DSLASH;} 3966 /* rule 139 can match eol */ 3967 YY_RULE_SETUP 3968 #line 266 "fortran.lex" 3969 {strcpy(yylval.na,fortrantext);return TOK_CHAR_CUT;} 2735 3970 YY_BREAK 2736 3971 case 140: 2737 3972 YY_RULE_SETUP 2738 #line 26 6"fortran.lex"2739 {strcpy(yylval.na, yytext);return TOK_CHAR_CUT;}3973 #line 267 "fortran.lex" 3974 {strcpy(yylval.na,fortrantext);return TOK_CHAR_CONSTANT;} 2740 3975 YY_BREAK 2741 3976 case 141: 2742 3977 YY_RULE_SETUP 2743 #line 26 7"fortran.lex"2744 {strcpy(yylval.na, yytext);return TOK_CHAR_CONSTANT;}3978 #line 268 "fortran.lex" 3979 {strcpy(yylval.na,fortrantext);return TOK_CHAR_MESSAGE;} 2745 3980 YY_BREAK 2746 3981 case 142: 2747 3982 YY_RULE_SETUP 2748 #line 26 8"fortran.lex"2749 {strcpy(yylval.na, yytext);return TOK_CHAR_MESSAGE;}3983 #line 269 "fortran.lex" 3984 {strcpy(yylval.na,fortrantext);return TOK_CHAR_INT;} 2750 3985 YY_BREAK 2751 3986 case 143: 2752 3987 YY_RULE_SETUP 2753 #line 2 69"fortran.lex"2754 { strcpy(yylval.na,yytext);return TOK_CHAR_INT;}3988 #line 270 "fortran.lex" 3989 {printf("debug interfacer\n");BEGIN(donottreat);} 2755 3990 YY_BREAK 2756 3991 case 144: 2757 YY_RULE_SETUP 2758 #line 270 "fortran.lex" 2759 {strcpy(yylval.na,yytext);return TOK_NAME;} 3992 /* rule 144 can match eol */ 3993 YY_RULE_SETUP 3994 #line 271 "fortran.lex" 3995 { 3996 BEGIN(INITIAL); 3997 if (infixed) BEGIN(fortran77style) ; 3998 if (infree) BEGIN(fortran90style) ; 3999 line_num_fortran++;line_num_fortran_common++; 4000 return '\n'; 4001 } 2760 4002 YY_BREAK 2761 4003 case 145: 2762 4004 YY_RULE_SETUP 2763 #line 27 1"fortran.lex"2764 {strcpy(yylval.na, yytext);return TOK_CSTREAL;}4005 #line 278 "fortran.lex" 4006 {strcpy(yylval.na,fortrantext);return TOK_NAME;} 2765 4007 YY_BREAK 2766 4008 case 146: 2767 4009 YY_RULE_SETUP 2768 #line 27 2"fortran.lex"2769 {strcpy(yylval.na, yytext);return TOK_CSTREALDP;}4010 #line 279 "fortran.lex" 4011 {strcpy(yylval.na,fortrantext);return TOK_CSTREAL;} 2770 4012 YY_BREAK 2771 4013 case 147: 2772 4014 YY_RULE_SETUP 2773 #line 2 73"fortran.lex"2774 {strcpy(yylval.na, yytext);return TOK_CSTREALQP;}4015 #line 280 "fortran.lex" 4016 {strcpy(yylval.na,fortrantext);return TOK_CSTREALDP;} 2775 4017 YY_BREAK 2776 4018 case 148: 2777 *yy_cp = yy_hold_char; /* undo effects of setting up yytext */ 2778 yy_c_buf_p = yy_cp -= 1; 2779 YY_DO_BEFORE_ACTION; /* set up yytext again */ 2780 YY_RULE_SETUP 2781 #line 274 "fortran.lex" 2782 {strcpy(yylval.na,yytext);return TOK_CSTREAL;} 4019 YY_RULE_SETUP 4020 #line 281 "fortran.lex" 4021 {strcpy(yylval.na,fortrantext);return TOK_CSTREALQP;} 2783 4022 YY_BREAK 2784 4023 case 149: 2785 YY_RULE_SETUP 2786 #line 275 "fortran.lex" 2787 {strcpy(yylval.na,yytext);return TOK_CSTINT;} 4024 /* rule 149 can match eol */ 4025 *yy_cp = (yy_hold_char); /* undo effects of setting up fortrantext */ 4026 (yy_c_buf_p) = yy_cp -= 1; 4027 YY_DO_BEFORE_ACTION; /* set up fortrantext again */ 4028 YY_RULE_SETUP 4029 #line 282 "fortran.lex" 4030 {strcpy(yylval.na,fortrantext);return TOK_CSTREAL;} 2788 4031 YY_BREAK 2789 4032 case 150: 2790 4033 YY_RULE_SETUP 2791 #line 276 "fortran.lex" 4034 #line 283 "fortran.lex" 4035 {strcpy(yylval.na,fortrantext);return TOK_CSTINT;} 4036 YY_BREAK 4037 case 151: 4038 YY_RULE_SETUP 4039 #line 284 "fortran.lex" 2792 4040 {} 2793 4041 YY_BREAK 2794 case 15 1:2795 YY_RULE_SETUP 2796 #line 2 77"fortran.lex"4042 case 152: 4043 YY_RULE_SETUP 4044 #line 285 "fortran.lex" 2797 4045 {return TOK_QUOTE;} 2798 4046 YY_BREAK 2799 case 15 2:2800 YY_RULE_SETUP 2801 #line 2 78"fortran.lex"4047 case 153: 4048 YY_RULE_SETUP 4049 #line 286 "fortran.lex" 2802 4050 {} 2803 4051 YY_BREAK 2804 case 153:2805 YY_RULE_SETUP2806 #line 279 "fortran.lex"2807 {strcpy(yylval.na,yytext);return (int) *yytext;}2808 YY_BREAK2809 4052 case 154: 2810 4053 YY_RULE_SETUP 2811 #line 280 "fortran.lex" 4054 #line 287 "fortran.lex" 4055 {strcpy(yylval.na,fortrantext);return (int) *fortrantext;} 4056 YY_BREAK 4057 case 155: 4058 YY_RULE_SETUP 4059 #line 288 "fortran.lex" 4060 {afterpercent = 1; strcpy(yylval.na,fortrantext);return (int) *fortrantext;} 4061 YY_BREAK 4062 case 156: 4063 YY_RULE_SETUP 4064 #line 289 "fortran.lex" 2812 4065 {return TOK_SEMICOLON;} 2813 4066 YY_BREAK 2814 case 155:2815 YY_RULE_SETUP2816 #line 281 "fortran.lex"2817 {return (int) *yytext;}2818 YY_BREAK2819 case 156:2820 YY_RULE_SETUP2821 #line 282 "fortran.lex"2822 {return (int) *yytext;}2823 YY_BREAK2824 4067 case 157: 2825 4068 YY_RULE_SETUP 2826 #line 2 83"fortran.lex"2827 {return (int) * yytext;}4069 #line 290 "fortran.lex" 4070 {return (int) *fortrantext;} 2828 4071 YY_BREAK 2829 4072 case 158: 2830 4073 YY_RULE_SETUP 2831 #line 2 84"fortran.lex"2832 {return (int) * yytext;}4074 #line 291 "fortran.lex" 4075 {return (int) *fortrantext;} 2833 4076 YY_BREAK 2834 4077 case 159: 2835 4078 YY_RULE_SETUP 2836 #line 2 85"fortran.lex"2837 { colnum=0;line_num_fortran++;line_num_fortran_common++; return (int) *yytext;}4079 #line 292 "fortran.lex" 4080 {return (int) *fortrantext;} 2838 4081 YY_BREAK 2839 4082 case 160: 2840 *yy_cp = yy_hold_char; /* undo effects of setting up yytext */ 2841 yy_c_buf_p = yy_cp -= 1; 2842 YY_DO_BEFORE_ACTION; /* set up yytext again */ 2843 YY_RULE_SETUP 2844 #line 286 "fortran.lex" 2845 4083 YY_RULE_SETUP 4084 #line 293 "fortran.lex" 4085 {return (int) *fortrantext;} 2846 4086 YY_BREAK 2847 4087 case 161: 2848 YY_RULE_SETUP 2849 #line 287 "fortran.lex" 4088 /* rule 161 can match eol */ 4089 YY_RULE_SETUP 4090 #line 294 "fortran.lex" 4091 {colnum=0;line_num_fortran++;line_num_fortran_common++; return (int) *fortrantext;} 4092 YY_BREAK 4093 case 162: 4094 *yy_cp = (yy_hold_char); /* undo effects of setting up fortrantext */ 4095 (yy_c_buf_p) = yy_cp -= 1; 4096 YY_DO_BEFORE_ACTION; /* set up fortrantext again */ 4097 YY_RULE_SETUP 4098 #line 295 "fortran.lex" 4099 4100 YY_BREAK 4101 case 163: 4102 YY_RULE_SETUP 4103 #line 296 "fortran.lex" 2850 4104 {if (newlinef90 == 0) return TOK_LABEL; else newlinef90 = 0;} 2851 4105 YY_BREAK 2852 case 16 2:2853 YY_RULE_SETUP 2854 #line 2 88"fortran.lex"2855 2856 YY_BREAK 2857 case 16 3:2858 YY_RULE_SETUP 2859 #line 2 89"fortran.lex"4106 case 164: 4107 YY_RULE_SETUP 4108 #line 297 "fortran.lex" 4109 4110 YY_BREAK 4111 case 165: 4112 YY_RULE_SETUP 4113 #line 298 "fortran.lex" 2860 4114 {colnum=colnum-1+tabsize;} 2861 4115 YY_BREAK 2862 case 16 4:2863 YY_RULE_SETUP 2864 #line 29 0"fortran.lex"4116 case 166: 4117 YY_RULE_SETUP 4118 #line 299 "fortran.lex" 2865 4119 ; 2866 4120 YY_BREAK 2867 case 165: 2868 YY_RULE_SETUP 2869 #line 291 "fortran.lex" 4121 case 167: 4122 /* rule 167 can match eol */ 4123 YY_RULE_SETUP 4124 #line 300 "fortran.lex" 2870 4125 {line_num_fortran++;line_num_fortran_common++;newlinef90=1;colnum=0;} 2871 4126 YY_BREAK 2872 case 166: 2873 YY_RULE_SETUP 2874 #line 292 "fortran.lex" 4127 case 168: 4128 /* rule 168 can match eol */ 4129 YY_RULE_SETUP 4130 #line 301 "fortran.lex" 2875 4131 {line_num_fortran++;line_num_fortran_common++;colnum=0;} 2876 4132 YY_BREAK 2877 case 167: 2878 YY_RULE_SETUP 2879 #line 293 "fortran.lex" 4133 case 169: 4134 /* rule 169 can match eol */ 4135 YY_RULE_SETUP 4136 #line 302 "fortran.lex" 2880 4137 { 2881 4138 convert2lower(motparse1); … … 2886 4143 else 2887 4144 { 2888 colnum=0;line_num_fortran++;line_num_fortran_common++; 2889 if ( !strcasecmp(motparse1,"C$AGRIF_DO_NOT_TREAT\n")) return TOK_DONOTTREAT; 4145 /* colnum=0;line_num_fortran++;line_num_fortran_common++;*/ 4146 if ( !strcasecmp(motparse1,"C$AGRIF_DO_NOT_TREAT\n")) 4147 return TOK_DONOTTREAT; 2890 4148 if ( !strcasecmp(motparse1,"C$AGRIF_END_DO_NOT_TREAT\n")) return TOK_ENDDONOTTREAT; 4149 unput('\n'); 2891 4150 } 2892 4151 } 2893 4152 YY_BREAK 2894 case 168:2895 YY_RULE_SETUP2896 #line 306 "fortran.lex"2897 BEGIN(donottreat);2898 YY_BREAK2899 case 169:2900 YY_RULE_SETUP2901 #line 307 "fortran.lex"2902 BEGIN(INITIAL);2903 YY_BREAK2904 4153 case 170: 2905 YY_RULE_SETUP 2906 #line 308 "fortran.lex" 2907 4154 /* rule 170 can match eol */ 4155 YY_RULE_SETUP 4156 #line 317 "fortran.lex" 4157 { 4158 convert2lower(&motparse1[1]); 4159 if ( strncasecmp(&motparse1[1],"contains",8) == 0 ) 4160 { 4161 return TOK_CONTAINS; 4162 } 4163 else 4164 { 4165 /* colnum=0;line_num_fortran++;line_num_fortran_common++;*/ 4166 if ( !strcasecmp(&motparse1[1],"C$AGRIF_DO_NOT_TREAT\n")) 4167 return TOK_DONOTTREAT; 4168 if ( !strcasecmp(&motparse1[1],"C$AGRIF_END_DO_NOT_TREAT\n")) return TOK_ENDDONOTTREAT; 4169 unput('\n'); 4170 } 4171 } 2908 4172 YY_BREAK 2909 4173 case 171: 2910 YY_RULE_SETUP 2911 #line 309 "fortran.lex" 4174 /* rule 171 can match eol */ 4175 YY_RULE_SETUP 4176 #line 332 "fortran.lex" 4177 { 4178 BEGIN(donottreat); 4179 } 4180 YY_BREAK 4181 case 172: 4182 /* rule 172 can match eol */ 4183 YY_RULE_SETUP 4184 #line 335 "fortran.lex" 4185 { 4186 BEGIN(INITIAL); 4187 if (infixed) BEGIN(fortran77style) ; 4188 if (infree) BEGIN(fortran90style) ; 4189 line_num_fortran++;line_num_fortran_common++; 4190 return '\n'; 4191 } 4192 YY_BREAK 4193 case 173: 4194 /* rule 173 can match eol */ 4195 YY_RULE_SETUP 4196 #line 342 "fortran.lex" 4197 {line_num_fortran++;line_num_fortran_common++;} 4198 YY_BREAK 4199 case 174: 4200 /* rule 174 can match eol */ 4201 YY_RULE_SETUP 4202 #line 343 "fortran.lex" 2912 4203 { 2913 4204 colnum = 0; … … 2916 4207 } 2917 4208 YY_BREAK 2918 case 17 2:2919 YY_RULE_SETUP 2920 #line 3 14"fortran.lex"4209 case 175: 4210 YY_RULE_SETUP 4211 #line 348 "fortran.lex" 2921 4212 { 2922 4213 colnum = 0; … … 2925 4216 } 2926 4217 YY_BREAK 2927 case 17 3:2928 YY_RULE_SETUP 2929 #line 3 19"fortran.lex"4218 case 176: 4219 YY_RULE_SETUP 4220 #line 353 "fortran.lex" 2930 4221 ECHO; 2931 4222 YY_BREAK 2932 #line 2933"fortran.yy.c"4223 #line 4224 "fortran.yy.c" 2933 4224 case YY_STATE_EOF(INITIAL): 2934 4225 case YY_STATE_EOF(parameter): … … 2942 4233 { 2943 4234 /* Amount of text matched not including the EOB char. */ 2944 int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;4235 int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; 2945 4236 2946 4237 /* Undo the effects of YY_DO_BEFORE_ACTION. */ 2947 *yy_cp = yy_hold_char;4238 *yy_cp = (yy_hold_char); 2948 4239 YY_RESTORE_YY_MORE_OFFSET 2949 4240 2950 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )4241 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) 2951 4242 { 2952 4243 /* We're scanning a new file or input source. It's 2953 4244 * possible that this happened because the user 2954 * just pointed yyin at a new source and called2955 * yylex(). If so, then we have to assure2956 * consistency between yy_current_bufferand our4245 * just pointed fortranin at a new source and called 4246 * fortranlex(). If so, then we have to assure 4247 * consistency between YY_CURRENT_BUFFER and our 2957 4248 * globals. Here is the right place to do so, because 2958 4249 * this is the first action (other than possibly a 2959 4250 * back-up) that will match for the new input source. 2960 4251 */ 2961 yy_n_chars = yy_current_buffer->yy_n_chars;2962 yy_current_buffer->yy_input_file = yyin;2963 yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;4252 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; 4253 YY_CURRENT_BUFFER_LVALUE->yy_input_file = fortranin; 4254 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; 2964 4255 } 2965 4256 … … 2971 4262 * in input(). 2972 4263 */ 2973 if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )4264 if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) 2974 4265 { /* This was really a NUL. */ 2975 4266 yy_state_type yy_next_state; 2976 4267 2977 yy_c_buf_p = yytext_ptr+ yy_amount_of_matched_text;2978 2979 yy_current_state = yy_get_previous_state( );4268 (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; 4269 4270 yy_current_state = yy_get_previous_state( ); 2980 4271 2981 4272 /* Okay, we're now positioned to make the NUL … … 2990 4281 yy_next_state = yy_try_NUL_trans( yy_current_state ); 2991 4282 2992 yy_bp = yytext_ptr+ YY_MORE_ADJ;4283 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 2993 4284 2994 4285 if ( yy_next_state ) 2995 4286 { 2996 4287 /* Consume the NUL. */ 2997 yy_cp = ++ yy_c_buf_p;4288 yy_cp = ++(yy_c_buf_p); 2998 4289 yy_current_state = yy_next_state; 2999 4290 goto yy_match; … … 3002 4293 else 3003 4294 { 3004 yy_cp = yy_c_buf_p;4295 yy_cp = (yy_c_buf_p); 3005 4296 goto yy_find_action; 3006 4297 } 3007 4298 } 3008 4299 3009 else switch ( yy_get_next_buffer( ) )4300 else switch ( yy_get_next_buffer( ) ) 3010 4301 { 3011 4302 case EOB_ACT_END_OF_FILE: 3012 4303 { 3013 yy_did_buffer_switch_on_eof= 0;3014 3015 if ( yywrap() )4304 (yy_did_buffer_switch_on_eof) = 0; 4305 4306 if ( fortranwrap( ) ) 3016 4307 { 3017 4308 /* Note: because we've taken care in 3018 4309 * yy_get_next_buffer() to have set up 3019 * yytext, we can now set up4310 * fortrantext, we can now set up 3020 4311 * yy_c_buf_p so that if some total 3021 4312 * hoser (like flex itself) wants to … … 3024 4315 * YY_NULL will get returned. 3025 4316 */ 3026 yy_c_buf_p = yytext_ptr+ YY_MORE_ADJ;4317 (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; 3027 4318 3028 4319 yy_act = YY_STATE_EOF(YY_START); … … 3032 4323 else 3033 4324 { 3034 if ( ! yy_did_buffer_switch_on_eof)4325 if ( ! (yy_did_buffer_switch_on_eof) ) 3035 4326 YY_NEW_FILE; 3036 4327 } … … 3039 4330 3040 4331 case EOB_ACT_CONTINUE_SCAN: 3041 yy_c_buf_p=3042 yytext_ptr+ yy_amount_of_matched_text;3043 3044 yy_current_state = yy_get_previous_state( );3045 3046 yy_cp = yy_c_buf_p;3047 yy_bp = yytext_ptr+ YY_MORE_ADJ;4332 (yy_c_buf_p) = 4333 (yytext_ptr) + yy_amount_of_matched_text; 4334 4335 yy_current_state = yy_get_previous_state( ); 4336 4337 yy_cp = (yy_c_buf_p); 4338 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 3048 4339 goto yy_match; 3049 4340 3050 4341 case EOB_ACT_LAST_MATCH: 3051 yy_c_buf_p=3052 & yy_current_buffer->yy_ch_buf[yy_n_chars];3053 3054 yy_current_state = yy_get_previous_state( );3055 3056 yy_cp = yy_c_buf_p;3057 yy_bp = yytext_ptr+ YY_MORE_ADJ;4342 (yy_c_buf_p) = 4343 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; 4344 4345 yy_current_state = yy_get_previous_state( ); 4346 4347 yy_cp = (yy_c_buf_p); 4348 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 3058 4349 goto yy_find_action; 3059 4350 } … … 3066 4357 } /* end of action switch */ 3067 4358 } /* end of scanning one token */ 3068 } /* end of yylex */ 3069 4359 } /* end of fortranlex */ 3070 4360 3071 4361 /* yy_get_next_buffer - try to read in a new buffer … … 3076 4366 * EOB_ACT_END_OF_FILE - end of file 3077 4367 */ 3078 3079 static int yy_get_next_buffer() 3080 { 3081 register char *dest = yy_current_buffer->yy_ch_buf; 3082 register char *source = yytext_ptr; 4368 static int yy_get_next_buffer (void) 4369 { 4370 register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; 4371 register char *source = (yytext_ptr); 3083 4372 register int number_to_move, i; 3084 4373 int ret_val; 3085 4374 3086 if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars+ 1] )4375 if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) 3087 4376 YY_FATAL_ERROR( 3088 4377 "fatal flex scanner internal error--end of buffer missed" ); 3089 4378 3090 if ( yy_current_buffer->yy_fill_buffer == 0 )4379 if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) 3091 4380 { /* Don't try to fill the buffer, so this is an EOF. */ 3092 if ( yy_c_buf_p - yytext_ptr- YY_MORE_ADJ == 1 )4381 if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) 3093 4382 { 3094 4383 /* We matched a single character, the EOB, so … … 3110 4399 3111 4400 /* First move last chars to start of buffer. */ 3112 number_to_move = (int) ( yy_c_buf_p - yytext_ptr) - 1;4401 number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1; 3113 4402 3114 4403 for ( i = 0; i < number_to_move; ++i ) 3115 4404 *(dest++) = *(source++); 3116 4405 3117 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING )4406 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) 3118 4407 /* don't do the read, it's not guaranteed to return an EOF, 3119 4408 * just force an EOF 3120 4409 */ 3121 yy_current_buffer->yy_n_chars = yy_n_chars= 0;4410 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; 3122 4411 3123 4412 else 3124 4413 { 3125 int num_to_read =3126 yy_current_buffer->yy_buf_size - number_to_move - 1;4414 yy_size_t num_to_read = 4415 YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; 3127 4416 3128 4417 while ( num_to_read <= 0 ) 3129 4418 { /* Not enough room in the buffer - grow it. */ 3130 #ifdef YY_USES_REJECT3131 YY_FATAL_ERROR(3132 "input buffer overflow, can't enlarge buffer because scanner uses REJECT" );3133 #else3134 4419 3135 4420 /* just a shorter name for the current buffer */ 3136 YY_BUFFER_STATE b = yy_current_buffer;4421 YY_BUFFER_STATE b = YY_CURRENT_BUFFER; 3137 4422 3138 4423 int yy_c_buf_p_offset = 3139 (int) ( yy_c_buf_p- b->yy_ch_buf);4424 (int) ((yy_c_buf_p) - b->yy_ch_buf); 3140 4425 3141 4426 if ( b->yy_is_our_buffer ) 3142 4427 { 3143 int new_size = b->yy_buf_size * 2;4428 yy_size_t new_size = b->yy_buf_size * 2; 3144 4429 3145 4430 if ( new_size <= 0 ) … … 3150 4435 b->yy_ch_buf = (char *) 3151 4436 /* Include room in for 2 EOB chars. */ 3152 yy_flex_realloc( (void *) b->yy_ch_buf, 3153 b->yy_buf_size + 2 ); 4437 fortranrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 ); 3154 4438 } 3155 4439 else … … 3161 4445 "fatal error - scanner input buffer overflow" ); 3162 4446 3163 yy_c_buf_p= &b->yy_ch_buf[yy_c_buf_p_offset];3164 3165 num_to_read = yy_current_buffer->yy_buf_size -4447 (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset]; 4448 4449 num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - 3166 4450 number_to_move - 1; 3167 #endif 4451 3168 4452 } 3169 4453 … … 3172 4456 3173 4457 /* Read in more data. */ 3174 YY_INPUT( (& yy_current_buffer->yy_ch_buf[number_to_move]),3175 yy_n_chars, num_to_read );3176 3177 yy_current_buffer->yy_n_chars = yy_n_chars;4458 YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), 4459 (yy_n_chars), num_to_read ); 4460 4461 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 3178 4462 } 3179 4463 3180 if ( yy_n_chars== 0 )4464 if ( (yy_n_chars) == 0 ) 3181 4465 { 3182 4466 if ( number_to_move == YY_MORE_ADJ ) 3183 4467 { 3184 4468 ret_val = EOB_ACT_END_OF_FILE; 3185 yyrestart( yyin);4469 fortranrestart(fortranin ); 3186 4470 } 3187 4471 … … 3189 4473 { 3190 4474 ret_val = EOB_ACT_LAST_MATCH; 3191 yy_current_buffer->yy_buffer_status =4475 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = 3192 4476 YY_BUFFER_EOF_PENDING; 3193 4477 } … … 3197 4481 ret_val = EOB_ACT_CONTINUE_SCAN; 3198 4482 3199 yy_n_chars += number_to_move; 3200 yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR; 3201 yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR; 3202 3203 yytext_ptr = &yy_current_buffer->yy_ch_buf[0]; 4483 if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { 4484 /* Extend the array by 50%, plus the number we really need. */ 4485 yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); 4486 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) fortranrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ); 4487 if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) 4488 YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); 4489 } 4490 4491 (yy_n_chars) += number_to_move; 4492 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; 4493 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; 4494 4495 (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; 3204 4496 3205 4497 return ret_val; 3206 } 3207 4498 } 3208 4499 3209 4500 /* yy_get_previous_state - get the state just before the EOB char was reached */ 3210 4501 3211 static yy_state_type yy_get_previous_state()3212 4502 static yy_state_type yy_get_previous_state (void) 4503 { 3213 4504 register yy_state_type yy_current_state; 3214 4505 register char *yy_cp; 3215 3216 yy_current_state = yy_start;4506 4507 yy_current_state = (yy_start); 3217 4508 yy_current_state += YY_AT_BOL(); 3218 4509 3219 for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )4510 for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) 3220 4511 { 3221 4512 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); 3222 4513 if ( yy_accept[yy_current_state] ) 3223 4514 { 3224 yy_last_accepting_state= yy_current_state;3225 yy_last_accepting_cpos= yy_cp;4515 (yy_last_accepting_state) = yy_current_state; 4516 (yy_last_accepting_cpos) = yy_cp; 3226 4517 } 3227 4518 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 3228 4519 { 3229 4520 yy_current_state = (int) yy_def[yy_current_state]; 3230 if ( yy_current_state >= 11 24)4521 if ( yy_current_state >= 1162 ) 3231 4522 yy_c = yy_meta[(unsigned int) yy_c]; 3232 4523 } … … 3235 4526 3236 4527 return yy_current_state; 3237 } 3238 4528 } 3239 4529 3240 4530 /* yy_try_NUL_trans - try to make a transition on the NUL character … … 3243 4533 * next_state = yy_try_NUL_trans( current_state ); 3244 4534 */ 3245 3246 #ifdef YY_USE_PROTOS 3247 static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state ) 3248 #else 3249 static yy_state_type yy_try_NUL_trans( yy_current_state ) 3250 yy_state_type yy_current_state; 3251 #endif 3252 { 4535 static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state ) 4536 { 3253 4537 register int yy_is_jam; 3254 register char *yy_cp = yy_c_buf_p;4538 register char *yy_cp = (yy_c_buf_p); 3255 4539 3256 4540 register YY_CHAR yy_c = 1; 3257 4541 if ( yy_accept[yy_current_state] ) 3258 4542 { 3259 yy_last_accepting_state= yy_current_state;3260 yy_last_accepting_cpos= yy_cp;4543 (yy_last_accepting_state) = yy_current_state; 4544 (yy_last_accepting_cpos) = yy_cp; 3261 4545 } 3262 4546 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) 3263 4547 { 3264 4548 yy_current_state = (int) yy_def[yy_current_state]; 3265 if ( yy_current_state >= 11 24)4549 if ( yy_current_state >= 1162 ) 3266 4550 yy_c = yy_meta[(unsigned int) yy_c]; 3267 4551 } 3268 4552 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; 3269 yy_is_jam = (yy_current_state == 11 23);4553 yy_is_jam = (yy_current_state == 1161); 3270 4554 3271 4555 return yy_is_jam ? 0 : yy_current_state; 3272 } 3273 3274 3275 #ifndef YY_NO_UNPUT 3276 #ifdef YY_USE_PROTOS 3277 static void yyunput( int c, register char *yy_bp ) 3278 #else 3279 static void yyunput( c, yy_bp ) 3280 int c; 3281 register char *yy_bp; 3282 #endif 3283 { 3284 register char *yy_cp = yy_c_buf_p; 3285 3286 /* undo effects of setting up yytext */ 3287 *yy_cp = yy_hold_char; 3288 3289 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 ) 4556 } 4557 4558 static void yyunput (int c, register char * yy_bp ) 4559 { 4560 register char *yy_cp; 4561 4562 yy_cp = (yy_c_buf_p); 4563 4564 /* undo effects of setting up fortrantext */ 4565 *yy_cp = (yy_hold_char); 4566 4567 if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) 3290 4568 { /* need to shift things up to make room */ 3291 4569 /* +2 for EOB chars. */ 3292 register int number_to_move = yy_n_chars+ 2;3293 register char *dest = & yy_current_buffer->yy_ch_buf[3294 yy_current_buffer->yy_buf_size + 2];4570 register yy_size_t number_to_move = (yy_n_chars) + 2; 4571 register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ 4572 YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; 3295 4573 register char *source = 3296 & yy_current_buffer->yy_ch_buf[number_to_move];3297 3298 while ( source > yy_current_buffer->yy_ch_buf )4574 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]; 4575 4576 while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) 3299 4577 *--dest = *--source; 3300 4578 3301 4579 yy_cp += (int) (dest - source); 3302 4580 yy_bp += (int) (dest - source); 3303 yy_current_buffer->yy_n_chars =3304 yy_n_chars = yy_current_buffer->yy_buf_size;3305 3306 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )4581 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = 4582 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size; 4583 4584 if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) 3307 4585 YY_FATAL_ERROR( "flex scanner push-back overflow" ); 3308 4586 } … … 3310 4588 *--yy_cp = (char) c; 3311 4589 3312 3313 yytext_ptr = yy_bp; 3314 yy_hold_char = *yy_cp; 3315 yy_c_buf_p = yy_cp; 3316 } 3317 #endif /* ifndef YY_NO_UNPUT */ 3318 3319 4590 (yytext_ptr) = yy_bp; 4591 (yy_hold_char) = *yy_cp; 4592 (yy_c_buf_p) = yy_cp; 4593 } 4594 4595 #ifndef YY_NO_INPUT 3320 4596 #ifdef __cplusplus 3321 static int yyinput()4597 static int yyinput (void) 3322 4598 #else 3323 static int input()4599 static int input (void) 3324 4600 #endif 3325 { 4601 4602 { 3326 4603 int c; 3327 3328 * yy_c_buf_p = yy_hold_char;3329 3330 if ( * yy_c_buf_p== YY_END_OF_BUFFER_CHAR )4604 4605 *(yy_c_buf_p) = (yy_hold_char); 4606 4607 if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) 3331 4608 { 3332 4609 /* yy_c_buf_p now points to the character we want to return. … … 3334 4611 * valid NUL; if not, then we've hit the end of the buffer. 3335 4612 */ 3336 if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )4613 if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) 3337 4614 /* This was really a NUL. */ 3338 * yy_c_buf_p= '\0';4615 *(yy_c_buf_p) = '\0'; 3339 4616 3340 4617 else 3341 4618 { /* need more input */ 3342 int offset = yy_c_buf_p - yytext_ptr;3343 ++ yy_c_buf_p;3344 3345 switch ( yy_get_next_buffer( ) )4619 yy_size_t offset = (yy_c_buf_p) - (yytext_ptr); 4620 ++(yy_c_buf_p); 4621 4622 switch ( yy_get_next_buffer( ) ) 3346 4623 { 3347 4624 case EOB_ACT_LAST_MATCH: … … 3357 4634 3358 4635 /* Reset buffer status. */ 3359 yyrestart( yyin );3360 3361 /* fall through*/4636 fortranrestart(fortranin ); 4637 4638 /*FALLTHROUGH*/ 3362 4639 3363 4640 case EOB_ACT_END_OF_FILE: 3364 4641 { 3365 if ( yywrap() )3366 return EOF;3367 3368 if ( ! yy_did_buffer_switch_on_eof)4642 if ( fortranwrap( ) ) 4643 return 0; 4644 4645 if ( ! (yy_did_buffer_switch_on_eof) ) 3369 4646 YY_NEW_FILE; 3370 4647 #ifdef __cplusplus … … 3376 4653 3377 4654 case EOB_ACT_CONTINUE_SCAN: 3378 yy_c_buf_p = yytext_ptr+ offset;4655 (yy_c_buf_p) = (yytext_ptr) + offset; 3379 4656 break; 3380 4657 } … … 3382 4659 } 3383 4660 3384 c = *(unsigned char *) yy_c_buf_p; /* cast for 8-bit char's */3385 * yy_c_buf_p = '\0'; /* preserve yytext */3386 yy_hold_char = *++yy_c_buf_p;3387 3388 yy_current_buffer->yy_at_bol = (c == '\n');4661 c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */ 4662 *(yy_c_buf_p) = '\0'; /* preserve fortrantext */ 4663 (yy_hold_char) = *++(yy_c_buf_p); 4664 4665 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = (c == '\n'); 3389 4666 3390 4667 return c; 4668 } 4669 #endif /* ifndef YY_NO_INPUT */ 4670 4671 /** Immediately switch to a different input stream. 4672 * @param input_file A readable stream. 4673 * 4674 * @note This function does not reset the start condition to @c INITIAL . 4675 */ 4676 void fortranrestart (FILE * input_file ) 4677 { 4678 4679 if ( ! YY_CURRENT_BUFFER ){ 4680 fortranensure_buffer_stack (); 4681 YY_CURRENT_BUFFER_LVALUE = 4682 fortran_create_buffer(fortranin,YY_BUF_SIZE ); 3391 4683 } 3392 4684 3393 3394 #ifdef YY_USE_PROTOS 3395 void yyrestart( FILE *input_file ) 3396 #else 3397 void yyrestart( input_file ) 3398 FILE *input_file; 3399 #endif 3400 { 3401 if ( ! yy_current_buffer ) 3402 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); 3403 3404 yy_init_buffer( yy_current_buffer, input_file ); 3405 yy_load_buffer_state(); 3406 } 3407 3408 3409 #ifdef YY_USE_PROTOS 3410 void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer ) 3411 #else 3412 void yy_switch_to_buffer( new_buffer ) 3413 YY_BUFFER_STATE new_buffer; 3414 #endif 3415 { 3416 if ( yy_current_buffer == new_buffer ) 4685 fortran_init_buffer(YY_CURRENT_BUFFER,input_file ); 4686 fortran_load_buffer_state( ); 4687 } 4688 4689 /** Switch to a different input buffer. 4690 * @param new_buffer The new input buffer. 4691 * 4692 */ 4693 void fortran_switch_to_buffer (YY_BUFFER_STATE new_buffer ) 4694 { 4695 4696 /* TODO. We should be able to replace this entire function body 4697 * with 4698 * fortranpop_buffer_state(); 4699 * fortranpush_buffer_state(new_buffer); 4700 */ 4701 fortranensure_buffer_stack (); 4702 if ( YY_CURRENT_BUFFER == new_buffer ) 3417 4703 return; 3418 4704 3419 if ( yy_current_buffer)4705 if ( YY_CURRENT_BUFFER ) 3420 4706 { 3421 4707 /* Flush out information for old buffer. */ 3422 * yy_c_buf_p = yy_hold_char;3423 yy_current_buffer->yy_buf_pos = yy_c_buf_p;3424 yy_current_buffer->yy_n_chars = yy_n_chars;4708 *(yy_c_buf_p) = (yy_hold_char); 4709 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); 4710 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 3425 4711 } 3426 4712 3427 yy_current_buffer= new_buffer;3428 yy_load_buffer_state();4713 YY_CURRENT_BUFFER_LVALUE = new_buffer; 4714 fortran_load_buffer_state( ); 3429 4715 3430 4716 /* We don't actually know whether we did this switch during 3431 * EOF ( yywrap()) processing, but the only time this flag3432 * is looked at is after yywrap() is called, so it's safe4717 * EOF (fortranwrap()) processing, but the only time this flag 4718 * is looked at is after fortranwrap() is called, so it's safe 3433 4719 * to go ahead and always set it. 3434 4720 */ 3435 yy_did_buffer_switch_on_eof = 1; 3436 } 3437 3438 3439 #ifdef YY_USE_PROTOS 3440 void yy_load_buffer_state( void ) 3441 #else 3442 void yy_load_buffer_state() 3443 #endif 3444 { 3445 yy_n_chars = yy_current_buffer->yy_n_chars; 3446 yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos; 3447 yyin = yy_current_buffer->yy_input_file; 3448 yy_hold_char = *yy_c_buf_p; 3449 } 3450 3451 3452 #ifdef YY_USE_PROTOS 3453 YY_BUFFER_STATE yy_create_buffer( FILE *file, int size ) 3454 #else 3455 YY_BUFFER_STATE yy_create_buffer( file, size ) 3456 FILE *file; 3457 int size; 3458 #endif 3459 { 4721 (yy_did_buffer_switch_on_eof) = 1; 4722 } 4723 4724 static void fortran_load_buffer_state (void) 4725 { 4726 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; 4727 (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; 4728 fortranin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; 4729 (yy_hold_char) = *(yy_c_buf_p); 4730 } 4731 4732 /** Allocate and initialize an input buffer state. 4733 * @param file A readable stream. 4734 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE. 4735 * 4736 * @return the allocated buffer state. 4737 */ 4738 YY_BUFFER_STATE fortran_create_buffer (FILE * file, int size ) 4739 { 3460 4740 YY_BUFFER_STATE b; 3461 3462 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ));4741 4742 b = (YY_BUFFER_STATE) fortranalloc(sizeof( struct yy_buffer_state ) ); 3463 4743 if ( ! b ) 3464 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );4744 YY_FATAL_ERROR( "out of dynamic memory in fortran_create_buffer()" ); 3465 4745 3466 4746 b->yy_buf_size = size; … … 3469 4749 * we need to put in 2 end-of-buffer characters. 3470 4750 */ 3471 b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2);4751 b->yy_ch_buf = (char *) fortranalloc(b->yy_buf_size + 2 ); 3472 4752 if ( ! b->yy_ch_buf ) 3473 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );4753 YY_FATAL_ERROR( "out of dynamic memory in fortran_create_buffer()" ); 3474 4754 3475 4755 b->yy_is_our_buffer = 1; 3476 4756 3477 yy_init_buffer( b,file );4757 fortran_init_buffer(b,file ); 3478 4758 3479 4759 return b; 3480 } 3481 3482 3483 #ifdef YY_USE_PROTOS 3484 void yy_delete_buffer( YY_BUFFER_STATE b ) 3485 #else 3486 void yy_delete_buffer( b ) 3487 YY_BUFFER_STATE b; 3488 #endif 3489 { 4760 } 4761 4762 /** Destroy the buffer. 4763 * @param b a buffer created with fortran_create_buffer() 4764 * 4765 */ 4766 void fortran_delete_buffer (YY_BUFFER_STATE b ) 4767 { 4768 3490 4769 if ( ! b ) 3491 4770 return; 3492 4771 3493 if ( b == yy_current_buffer )3494 yy_current_buffer= (YY_BUFFER_STATE) 0;4772 if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ 4773 YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; 3495 4774 3496 4775 if ( b->yy_is_our_buffer ) 3497 yy_flex_free( (void *) b->yy_ch_buf ); 3498 3499 yy_flex_free( (void *) b ); 3500 } 3501 3502 3503 #ifndef YY_ALWAYS_INTERACTIVE 3504 #ifndef YY_NEVER_INTERACTIVE 3505 extern int isatty YY_PROTO(( int )); 3506 #endif 3507 #endif 3508 3509 #ifdef YY_USE_PROTOS 3510 void yy_init_buffer( YY_BUFFER_STATE b, FILE *file ) 3511 #else 3512 void yy_init_buffer( b, file ) 3513 YY_BUFFER_STATE b; 3514 FILE *file; 3515 #endif 3516 3517 3518 { 3519 yy_flush_buffer( b ); 4776 fortranfree((void *) b->yy_ch_buf ); 4777 4778 fortranfree((void *) b ); 4779 } 4780 4781 #ifndef __cplusplus 4782 extern int isatty (int ); 4783 #endif /* __cplusplus */ 4784 4785 /* Initializes or reinitializes a buffer. 4786 * This function is sometimes called more than once on the same buffer, 4787 * such as during a fortranrestart() or at EOF. 4788 */ 4789 static void fortran_init_buffer (YY_BUFFER_STATE b, FILE * file ) 4790 4791 { 4792 int oerrno = errno; 4793 4794 fortran_flush_buffer(b ); 3520 4795 3521 4796 b->yy_input_file = file; 3522 4797 b->yy_fill_buffer = 1; 3523 4798 3524 #if YY_ALWAYS_INTERACTIVE 3525 b->yy_is_interactive = 1; 3526 #else 3527 #if YY_NEVER_INTERACTIVE 3528 b->yy_is_interactive = 0; 3529 #else 3530 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0; 3531 #endif 3532 #endif 4799 /* If b is the current buffer, then fortran_init_buffer was _probably_ 4800 * called from fortranrestart() or through yy_get_next_buffer. 4801 * In that case, we don't want to reset the lineno or column. 4802 */ 4803 if (b != YY_CURRENT_BUFFER){ 4804 b->yy_bs_lineno = 1; 4805 b->yy_bs_column = 0; 3533 4806 } 3534 4807 3535 3536 #ifdef YY_USE_PROTOS 3537 void yy_flush_buffer( YY_BUFFER_STATE b ) 3538 #else 3539 void yy_flush_buffer( b ) 3540 YY_BUFFER_STATE b; 3541 #endif 3542 3543 { 4808 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0; 4809 4810 errno = oerrno; 4811 } 4812 4813 /** Discard all buffered characters. On the next scan, YY_INPUT will be called. 4814 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER. 4815 * 4816 */ 4817 void fortran_flush_buffer (YY_BUFFER_STATE b ) 4818 { 3544 4819 if ( ! b ) 3545 4820 return; … … 3559 4834 b->yy_buffer_status = YY_BUFFER_NEW; 3560 4835 3561 if ( b == yy_current_buffer ) 3562 yy_load_buffer_state(); 4836 if ( b == YY_CURRENT_BUFFER ) 4837 fortran_load_buffer_state( ); 4838 } 4839 4840 /** Pushes the new state onto the stack. The new state becomes 4841 * the current state. This function will allocate the stack 4842 * if necessary. 4843 * @param new_buffer The new state. 4844 * 4845 */ 4846 void fortranpush_buffer_state (YY_BUFFER_STATE new_buffer ) 4847 { 4848 if (new_buffer == NULL) 4849 return; 4850 4851 fortranensure_buffer_stack(); 4852 4853 /* This block is copied from fortran_switch_to_buffer. */ 4854 if ( YY_CURRENT_BUFFER ) 4855 { 4856 /* Flush out information for old buffer. */ 4857 *(yy_c_buf_p) = (yy_hold_char); 4858 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); 4859 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 3563 4860 } 3564 4861 3565 3566 #ifndef YY_NO_SCAN_BUFFER 3567 #ifdef YY_USE_PROTOS 3568 YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size ) 3569 #else 3570 YY_BUFFER_STATE yy_scan_buffer( base, size ) 3571 char *base; 3572 yy_size_t size; 3573 #endif 3574 { 4862 /* Only push if top exists. Otherwise, replace top. */ 4863 if (YY_CURRENT_BUFFER) 4864 (yy_buffer_stack_top)++; 4865 YY_CURRENT_BUFFER_LVALUE = new_buffer; 4866 4867 /* copied from fortran_switch_to_buffer. */ 4868 fortran_load_buffer_state( ); 4869 (yy_did_buffer_switch_on_eof) = 1; 4870 } 4871 4872 /** Removes and deletes the top of the stack, if present. 4873 * The next element becomes the new top. 4874 * 4875 */ 4876 void fortranpop_buffer_state (void) 4877 { 4878 if (!YY_CURRENT_BUFFER) 4879 return; 4880 4881 fortran_delete_buffer(YY_CURRENT_BUFFER ); 4882 YY_CURRENT_BUFFER_LVALUE = NULL; 4883 if ((yy_buffer_stack_top) > 0) 4884 --(yy_buffer_stack_top); 4885 4886 if (YY_CURRENT_BUFFER) { 4887 fortran_load_buffer_state( ); 4888 (yy_did_buffer_switch_on_eof) = 1; 4889 } 4890 } 4891 4892 /* Allocates the stack if it does not exist. 4893 * Guarantees space for at least one push. 4894 */ 4895 static void fortranensure_buffer_stack (void) 4896 { 4897 yy_size_t num_to_alloc; 4898 4899 if (!(yy_buffer_stack)) { 4900 4901 /* First allocation is just for 2 elements, since we don't know if this 4902 * scanner will even need a stack. We use 2 instead of 1 to avoid an 4903 * immediate realloc on the next call. 4904 */ 4905 num_to_alloc = 1; 4906 (yy_buffer_stack) = (struct yy_buffer_state**)fortranalloc 4907 (num_to_alloc * sizeof(struct yy_buffer_state*) 4908 ); 4909 if ( ! (yy_buffer_stack) ) 4910 YY_FATAL_ERROR( "out of dynamic memory in fortranensure_buffer_stack()" ); 4911 4912 memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); 4913 4914 (yy_buffer_stack_max) = num_to_alloc; 4915 (yy_buffer_stack_top) = 0; 4916 return; 4917 } 4918 4919 if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ 4920 4921 /* Increase the buffer to prepare for a possible push. */ 4922 int grow_size = 8 /* arbitrary grow size */; 4923 4924 num_to_alloc = (yy_buffer_stack_max) + grow_size; 4925 (yy_buffer_stack) = (struct yy_buffer_state**)fortranrealloc 4926 ((yy_buffer_stack), 4927 num_to_alloc * sizeof(struct yy_buffer_state*) 4928 ); 4929 if ( ! (yy_buffer_stack) ) 4930 YY_FATAL_ERROR( "out of dynamic memory in fortranensure_buffer_stack()" ); 4931 4932 /* zero only the new slots.*/ 4933 memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); 4934 (yy_buffer_stack_max) = num_to_alloc; 4935 } 4936 } 4937 4938 /** Setup the input buffer state to scan directly from a user-specified character buffer. 4939 * @param base the character buffer 4940 * @param size the size in bytes of the character buffer 4941 * 4942 * @return the newly allocated buffer state object. 4943 */ 4944 YY_BUFFER_STATE fortran_scan_buffer (char * base, yy_size_t size ) 4945 { 3575 4946 YY_BUFFER_STATE b; 3576 4947 3577 4948 if ( size < 2 || 3578 4949 base[size-2] != YY_END_OF_BUFFER_CHAR || … … 3581 4952 return 0; 3582 4953 3583 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ));4954 b = (YY_BUFFER_STATE) fortranalloc(sizeof( struct yy_buffer_state ) ); 3584 4955 if ( ! b ) 3585 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );4956 YY_FATAL_ERROR( "out of dynamic memory in fortran_scan_buffer()" ); 3586 4957 3587 4958 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */ … … 3595 4966 b->yy_buffer_status = YY_BUFFER_NEW; 3596 4967 3597 yy_switch_to_buffer( b);4968 fortran_switch_to_buffer(b ); 3598 4969 3599 4970 return b; 3600 } 3601 #endif 3602 3603 3604 #ifndef YY_NO_SCAN_STRING 3605 #ifdef YY_USE_PROTOS 3606 YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str ) 3607 #else 3608 YY_BUFFER_STATE yy_scan_string( yy_str ) 3609 yyconst char *yy_str; 3610 #endif 3611 { 3612 int len; 3613 for ( len = 0; yy_str[len]; ++len ) 3614 ; 3615 3616 return yy_scan_bytes( yy_str, len ); 3617 } 3618 #endif 3619 3620 3621 #ifndef YY_NO_SCAN_BYTES 3622 #ifdef YY_USE_PROTOS 3623 YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len ) 3624 #else 3625 YY_BUFFER_STATE yy_scan_bytes( bytes, len ) 3626 yyconst char *bytes; 3627 int len; 3628 #endif 3629 { 4971 } 4972 4973 /** Setup the input buffer state to scan a string. The next call to fortranlex() will 4974 * scan from a @e copy of @a str. 4975 * @param yystr a NUL-terminated string to scan 4976 * 4977 * @return the newly allocated buffer state object. 4978 * @note If you want to scan bytes that may contain NUL values, then use 4979 * fortran_scan_bytes() instead. 4980 */ 4981 YY_BUFFER_STATE fortran_scan_string (yyconst char * yystr ) 4982 { 4983 4984 return fortran_scan_bytes(yystr,strlen(yystr) ); 4985 } 4986 4987 /** Setup the input buffer state to scan the given bytes. The next call to fortranlex() will 4988 * scan from a @e copy of @a bytes. 4989 * @param bytes the byte buffer to scan 4990 * @param len the number of bytes in the buffer pointed to by @a bytes. 4991 * 4992 * @return the newly allocated buffer state object. 4993 */ 4994 YY_BUFFER_STATE fortran_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len ) 4995 { 3630 4996 YY_BUFFER_STATE b; 3631 4997 char *buf; 3632 yy_size_t n; 3633 int i; 3634 4998 yy_size_t n, i; 4999 3635 5000 /* Get memory for full buffer, including space for trailing EOB's. */ 3636 n = len + 2;3637 buf = (char *) yy_flex_alloc( n);5001 n = _yybytes_len + 2; 5002 buf = (char *) fortranalloc(n ); 3638 5003 if ( ! buf ) 3639 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );3640 3641 for ( i = 0; i < len; ++i )3642 buf[i] = bytes[i];3643 3644 buf[ len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;3645 3646 b = yy_scan_buffer( buf,n );5004 YY_FATAL_ERROR( "out of dynamic memory in fortran_scan_bytes()" ); 5005 5006 for ( i = 0; i < _yybytes_len; ++i ) 5007 buf[i] = yybytes[i]; 5008 5009 buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; 5010 5011 b = fortran_scan_buffer(buf,n ); 3647 5012 if ( ! b ) 3648 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );5013 YY_FATAL_ERROR( "bad buffer in fortran_scan_bytes()" ); 3649 5014 3650 5015 /* It's okay to grow etc. this buffer, and we should throw it … … 3654 5019 3655 5020 return b; 3656 } 3657 #endif 3658 3659 3660 #ifndef YY_NO_PUSH_STATE 3661 #ifdef YY_USE_PROTOS 3662 static void yy_push_state( int new_state ) 3663 #else 3664 static void yy_push_state( new_state ) 3665 int new_state; 3666 #endif 3667 { 3668 if ( yy_start_stack_ptr >= yy_start_stack_depth ) 3669 { 3670 yy_size_t new_size; 3671 3672 yy_start_stack_depth += YY_START_STACK_INCR; 3673 new_size = yy_start_stack_depth * sizeof( int ); 3674 3675 if ( ! yy_start_stack ) 3676 yy_start_stack = (int *) yy_flex_alloc( new_size ); 3677 3678 else 3679 yy_start_stack = (int *) yy_flex_realloc( 3680 (void *) yy_start_stack, new_size ); 3681 3682 if ( ! yy_start_stack ) 3683 YY_FATAL_ERROR( 3684 "out of memory expanding start-condition stack" ); 3685 } 3686 3687 yy_start_stack[yy_start_stack_ptr++] = YY_START; 3688 3689 BEGIN(new_state); 3690 } 3691 #endif 3692 3693 3694 #ifndef YY_NO_POP_STATE 3695 static void yy_pop_state() 3696 { 3697 if ( --yy_start_stack_ptr < 0 ) 3698 YY_FATAL_ERROR( "start-condition stack underflow" ); 3699 3700 BEGIN(yy_start_stack[yy_start_stack_ptr]); 3701 } 3702 #endif 3703 3704 3705 #ifndef YY_NO_TOP_STATE 3706 static int yy_top_state() 3707 { 3708 return yy_start_stack[yy_start_stack_ptr - 1]; 3709 } 3710 #endif 5021 } 3711 5022 3712 5023 #ifndef YY_EXIT_FAILURE … … 3714 5025 #endif 3715 5026 3716 #ifdef YY_USE_PROTOS 3717 static void yy_fatal_error( yyconst char msg[] ) 3718 #else 3719 static void yy_fatal_error( msg ) 3720 char msg[]; 3721 #endif 3722 { 3723 (void) fprintf( stderr, "%s\n", msg ); 5027 static void yy_fatal_error (yyconst char* msg ) 5028 { 5029 (void) fprintf( stderr, "%s\n", msg ); 3724 5030 exit( YY_EXIT_FAILURE ); 3725 } 3726 3727 5031 } 3728 5032 3729 5033 /* Redefine yyless() so it works in section 3 code. */ … … 3733 5037 do \ 3734 5038 { \ 3735 /* Undo effects of setting up yytext. */ \ 3736 yytext[yyleng] = yy_hold_char; \ 3737 yy_c_buf_p = yytext + n; \ 3738 yy_hold_char = *yy_c_buf_p; \ 3739 *yy_c_buf_p = '\0'; \ 3740 yyleng = n; \ 5039 /* Undo effects of setting up fortrantext. */ \ 5040 int yyless_macro_arg = (n); \ 5041 YY_LESS_LINENO(yyless_macro_arg);\ 5042 fortrantext[fortranleng] = (yy_hold_char); \ 5043 (yy_c_buf_p) = fortrantext + yyless_macro_arg; \ 5044 (yy_hold_char) = *(yy_c_buf_p); \ 5045 *(yy_c_buf_p) = '\0'; \ 5046 fortranleng = yyless_macro_arg; \ 3741 5047 } \ 3742 5048 while ( 0 ) 3743 5049 3744 3745 /* Internal utility routines. */ 5050 /* Accessor methods (get/set functions) to struct members. */ 5051 5052 /** Get the current line number. 5053 * 5054 */ 5055 int fortranget_lineno (void) 5056 { 5057 5058 return fortranlineno; 5059 } 5060 5061 /** Get the input stream. 5062 * 5063 */ 5064 FILE *fortranget_in (void) 5065 { 5066 return fortranin; 5067 } 5068 5069 /** Get the output stream. 5070 * 5071 */ 5072 FILE *fortranget_out (void) 5073 { 5074 return fortranout; 5075 } 5076 5077 /** Get the length of the current token. 5078 * 5079 */ 5080 yy_size_t fortranget_leng (void) 5081 { 5082 return fortranleng; 5083 } 5084 5085 /** Get the current token. 5086 * 5087 */ 5088 5089 char *fortranget_text (void) 5090 { 5091 return fortrantext; 5092 } 5093 5094 /** Set the current line number. 5095 * @param line_number 5096 * 5097 */ 5098 void fortranset_lineno (int line_number ) 5099 { 5100 5101 fortranlineno = line_number; 5102 } 5103 5104 /** Set the input stream. This does not discard the current 5105 * input buffer. 5106 * @param in_str A readable stream. 5107 * 5108 * @see fortran_switch_to_buffer 5109 */ 5110 void fortranset_in (FILE * in_str ) 5111 { 5112 fortranin = in_str ; 5113 } 5114 5115 void fortranset_out (FILE * out_str ) 5116 { 5117 fortranout = out_str ; 5118 } 5119 5120 int fortranget_debug (void) 5121 { 5122 return fortran_flex_debug; 5123 } 5124 5125 void fortranset_debug (int bdebug ) 5126 { 5127 fortran_flex_debug = bdebug ; 5128 } 5129 5130 static int yy_init_globals (void) 5131 { 5132 /* Initialization is the same as for the non-reentrant scanner. 5133 * This function is called from fortranlex_destroy(), so don't allocate here. 5134 */ 5135 5136 (yy_buffer_stack) = 0; 5137 (yy_buffer_stack_top) = 0; 5138 (yy_buffer_stack_max) = 0; 5139 (yy_c_buf_p) = (char *) 0; 5140 (yy_init) = 0; 5141 (yy_start) = 0; 5142 5143 /* Defined in main.c */ 5144 #ifdef YY_STDINIT 5145 fortranin = stdin; 5146 fortranout = stdout; 5147 #else 5148 fortranin = (FILE *) 0; 5149 fortranout = (FILE *) 0; 5150 #endif 5151 5152 /* For future reference: Set errno on error, since we are called by 5153 * fortranlex_init() 5154 */ 5155 return 0; 5156 } 5157 5158 /* fortranlex_destroy is for both reentrant and non-reentrant scanners. */ 5159 int fortranlex_destroy (void) 5160 { 5161 5162 /* Pop the buffer stack, destroying each element. */ 5163 while(YY_CURRENT_BUFFER){ 5164 fortran_delete_buffer(YY_CURRENT_BUFFER ); 5165 YY_CURRENT_BUFFER_LVALUE = NULL; 5166 fortranpop_buffer_state(); 5167 } 5168 5169 /* Destroy the stack itself. */ 5170 fortranfree((yy_buffer_stack) ); 5171 (yy_buffer_stack) = NULL; 5172 5173 /* Reset the globals. This is important in a non-reentrant scanner so the next time 5174 * fortranlex() is called, initialization will occur. */ 5175 yy_init_globals( ); 5176 5177 return 0; 5178 } 5179 5180 /* 5181 * Internal utility routines. 5182 */ 3746 5183 3747 5184 #ifndef yytext_ptr 3748 #ifdef YY_USE_PROTOS 3749 static void yy_flex_strncpy( char *s1, yyconst char *s2, int n ) 3750 #else 3751 static void yy_flex_strncpy( s1, s2, n ) 3752 char *s1; 3753 yyconst char *s2; 3754 int n; 3755 #endif 3756 { 5185 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) 5186 { 3757 5187 register int i; 3758 5188 for ( i = 0; i < n; ++i ) 3759 5189 s1[i] = s2[i]; 3760 5190 } 3761 5191 #endif 3762 5192 3763 5193 #ifdef YY_NEED_STRLEN 3764 #ifdef YY_USE_PROTOS 3765 static int yy_flex_strlen( yyconst char *s ) 3766 #else 3767 static int yy_flex_strlen( s ) 3768 yyconst char *s; 3769 #endif 3770 { 5194 static int yy_flex_strlen (yyconst char * s ) 5195 { 3771 5196 register int n; 3772 5197 for ( n = 0; s[n]; ++n ) … … 3774 5199 3775 5200 return n; 3776 5201 } 3777 5202 #endif 3778 5203 3779 3780 #ifdef YY_USE_PROTOS 3781 static void *yy_flex_alloc( yy_size_t size ) 3782 #else 3783 static void *yy_flex_alloc( size ) 3784 yy_size_t size; 3785 #endif 3786 { 5204 void *fortranalloc (yy_size_t size ) 5205 { 3787 5206 return (void *) malloc( size ); 3788 } 3789 3790 #ifdef YY_USE_PROTOS 3791 static void *yy_flex_realloc( void *ptr, yy_size_t size ) 3792 #else 3793 static void *yy_flex_realloc( ptr, size ) 3794 void *ptr; 3795 yy_size_t size; 3796 #endif 3797 { 5207 } 5208 5209 void *fortranrealloc (void * ptr, yy_size_t size ) 5210 { 3798 5211 /* The cast to (char *) in the following accommodates both 3799 5212 * implementations that use char* generic pointers, and those … … 3804 5217 */ 3805 5218 return (void *) realloc( (char *) ptr, size ); 3806 } 3807 3808 #ifdef YY_USE_PROTOS 3809 static void yy_flex_free( void *ptr ) 3810 #else 3811 static void yy_flex_free( ptr ) 3812 void *ptr; 3813 #endif 3814 { 3815 free( ptr ); 3816 } 3817 3818 #if YY_MAIN 3819 int main() 3820 { 3821 yylex(); 3822 return 0; 3823 } 3824 #endif 3825 #line 319 "fortran.lex" 5219 } 5220 5221 void fortranfree (void * ptr ) 5222 { 5223 free( (char *) ptr ); /* see fortranrealloc() for (char *) cast */ 5224 } 5225 5226 #define YYTABLES_NAME "yytables" 5227 5228 #line 353 "fortran.lex" 5229 3826 5230 3827 5231 … … 3830 5234 if (!strcasecmp(curfile,mainfile)) 3831 5235 { 3832 printf("%s line %d, file %s \n",s,line_num_fortran,curfile);5236 printf("%s line %d, file %s motclef = %s\n",s,line_num_fortran,curfile,fortrantext); 3833 5237 } 3834 5238 else 3835 5239 { 3836 printf("%s line %d, file %s \n",s,line_num_fortran_common,curfile);5240 printf("%s line %d, file %s motclef = %s curbuf = %s\n",s,line_num_fortran_common,curfile,fortrantext,curbuf); 3837 5241 } 3838 /*exit(0);*/5242 /* exit(0);*/ 3839 5243 } 3840 5244 … … 3842 5246 { 3843 5247 } 5248
Note: See TracChangeset
for help on using the changeset viewer.