00001 #line 2 "json_scanner.cc" 00002 00003 #line 4 "json_scanner.cc" 00004 00005 #define YY_INT_ALIGNED short int 00006 00007 /* A lexical scanner generated by flex */ 00008 00009 #define FLEX_SCANNER 00010 #define YY_FLEX_MAJOR_VERSION 2 00011 #define YY_FLEX_MINOR_VERSION 5 00012 #define YY_FLEX_SUBMINOR_VERSION 37 00013 #if YY_FLEX_SUBMINOR_VERSION > 0 00014 #define FLEX_BETA 00015 #endif 00016 00017 /* The c++ scanner is a mess. The FlexLexer.h header file relies on the 00018 * following macro. This is required in order to pass the c++-multiple-scanners 00019 * test in the regression suite. We get reports that it breaks inheritance. 00020 * We will address this in a future release of flex, or omit the C++ scanner 00021 * altogether. 00022 */ 00023 #define yyFlexLexer yyFlexLexer 00024 00025 /* First, we deal with platform-specific or compiler-specific issues. */ 00026 00027 /* begin standard C headers. */ 00028 00029 /* end standard C headers. */ 00030 00031 /* flex integer type definitions */ 00032 00033 #ifndef FLEXINT_H 00034 #define FLEXINT_H 00035 00036 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */ 00037 00038 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L 00039 00040 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, 00041 * if you want the limit (max/min) macros for int types. 00042 */ 00043 #ifndef __STDC_LIMIT_MACROS 00044 #define __STDC_LIMIT_MACROS 1 00045 #endif 00046 00047 #include <inttypes.h> 00048 typedef int8_t flex_int8_t; 00049 typedef uint8_t flex_uint8_t; 00050 typedef int16_t flex_int16_t; 00051 typedef uint16_t flex_uint16_t; 00052 typedef int32_t flex_int32_t; 00053 typedef uint32_t flex_uint32_t; 00054 #else 00055 typedef signed char flex_int8_t; 00056 typedef short int flex_int16_t; 00057 typedef int flex_int32_t; 00058 typedef unsigned char flex_uint8_t; 00059 typedef unsigned short int flex_uint16_t; 00060 typedef unsigned int flex_uint32_t; 00061 00062 /* Limits of integral types. */ 00063 #ifndef INT8_MIN 00064 #define INT8_MIN (-128) 00065 #endif 00066 #ifndef INT16_MIN 00067 #define INT16_MIN (-32767-1) 00068 #endif 00069 #ifndef INT32_MIN 00070 #define INT32_MIN (-2147483647-1) 00071 #endif 00072 #ifndef INT8_MAX 00073 #define INT8_MAX (127) 00074 #endif 00075 #ifndef INT16_MAX 00076 #define INT16_MAX (32767) 00077 #endif 00078 #ifndef INT32_MAX 00079 #define INT32_MAX (2147483647) 00080 #endif 00081 #ifndef UINT8_MAX 00082 #define UINT8_MAX (255U) 00083 #endif 00084 #ifndef UINT16_MAX 00085 #define UINT16_MAX (65535U) 00086 #endif 00087 #ifndef UINT32_MAX 00088 #define UINT32_MAX (4294967295U) 00089 #endif 00090 00091 #endif /* ! C99 */ 00092 00093 #endif /* ! FLEXINT_H */ 00094 00095 /* begin standard C++ headers. */ 00096 #include <iostream> 00097 #include <errno.h> 00098 #include <cstdlib> 00099 #include <cstdio> 00100 #include <cstring> 00101 /* end standard C++ headers. */ 00102 00103 #ifdef __cplusplus 00104 00105 /* The "const" storage-class-modifier is valid. */ 00106 #define YY_USE_CONST 00107 00108 #else /* ! __cplusplus */ 00109 00110 /* C99 requires __STDC__ to be defined as 1. */ 00111 #if defined (__STDC__) 00112 00113 #define YY_USE_CONST 00114 00115 #endif /* defined (__STDC__) */ 00116 #endif /* ! __cplusplus */ 00117 00118 #ifdef YY_USE_CONST 00119 #define yyconst const 00120 #else 00121 #define yyconst 00122 #endif 00123 00124 /* Returned upon end-of-file. */ 00125 #define YY_NULL 0 00126 00127 /* Promotes a possibly negative, possibly signed char to an unsigned 00128 * integer for use as an array index. If the signed char is negative, 00129 * we want to instead treat it as an 8-bit unsigned char, hence the 00130 * double cast. 00131 */ 00132 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c) 00133 00134 /* Enter a start condition. This macro really ought to take a parameter, 00135 * but we do it the disgusting crufty way forced on us by the ()-less 00136 * definition of BEGIN. 00137 */ 00138 #define BEGIN (yy_start) = 1 + 2 * 00139 00140 /* Translate the current start state into a value that can be later handed 00141 * to BEGIN to return to the state. The YYSTATE alias is for lex 00142 * compatibility. 00143 */ 00144 #define YY_START (((yy_start) - 1) / 2) 00145 #define YYSTATE YY_START 00146 00147 /* Action number for EOF rule of a given start state. */ 00148 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) 00149 00150 /* Special action meaning "start processing a new file". */ 00151 #define YY_NEW_FILE yyrestart( yyin ) 00152 00153 #define YY_END_OF_BUFFER_CHAR 0 00154 00155 /* Size of default input buffer. */ 00156 #ifndef YY_BUF_SIZE 00157 #define YY_BUF_SIZE 16384 00158 #endif 00159 00160 /* The state buf must be large enough to hold one state per character in the main buffer. 00161 */ 00162 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) 00163 00164 #ifndef YY_TYPEDEF_YY_BUFFER_STATE 00165 #define YY_TYPEDEF_YY_BUFFER_STATE 00166 typedef struct yy_buffer_state *YY_BUFFER_STATE; 00167 #endif 00168 00169 #ifndef YY_TYPEDEF_YY_SIZE_T 00170 #define YY_TYPEDEF_YY_SIZE_T 00171 typedef size_t yy_size_t; 00172 #endif 00173 00174 extern yy_size_t yyleng; 00175 00176 #define EOB_ACT_CONTINUE_SCAN 0 00177 #define EOB_ACT_END_OF_FILE 1 00178 #define EOB_ACT_LAST_MATCH 2 00179 00180 #define YY_LESS_LINENO(n) 00181 00182 /* Return all but the first "n" matched characters back to the input stream. */ 00183 #define yyless(n) \ 00184 do \ 00185 { \ 00186 /* Undo effects of setting up yytext. */ \ 00187 int yyless_macro_arg = (n); \ 00188 YY_LESS_LINENO(yyless_macro_arg);\ 00189 *yy_cp = (yy_hold_char); \ 00190 YY_RESTORE_YY_MORE_OFFSET \ 00191 (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ 00192 YY_DO_BEFORE_ACTION; /* set up yytext again */ \ 00193 } \ 00194 while ( 0 ) 00195 00196 #define unput(c) yyunput( c, (yytext_ptr) ) 00197 00198 #ifndef YY_STRUCT_YY_BUFFER_STATE 00199 #define YY_STRUCT_YY_BUFFER_STATE 00200 struct yy_buffer_state 00201 { 00202 00203 std::istream* yy_input_file; 00204 00205 char *yy_ch_buf; /* input buffer */ 00206 char *yy_buf_pos; /* current position in input buffer */ 00207 00208 /* Size of input buffer in bytes, not including room for EOB 00209 * characters. 00210 */ 00211 yy_size_t yy_buf_size; 00212 00213 /* Number of characters read into yy_ch_buf, not including EOB 00214 * characters. 00215 */ 00216 yy_size_t yy_n_chars; 00217 00218 /* Whether we "own" the buffer - i.e., we know we created it, 00219 * and can realloc() it to grow it, and should free() it to 00220 * delete it. 00221 */ 00222 int yy_is_our_buffer; 00223 00224 /* Whether this is an "interactive" input source; if so, and 00225 * if we're using stdio for input, then we want to use getc() 00226 * instead of fread(), to make sure we stop fetching input after 00227 * each newline. 00228 */ 00229 int yy_is_interactive; 00230 00231 /* Whether we're considered to be at the beginning of a line. 00232 * If so, '^' rules will be active on the next match, otherwise 00233 * not. 00234 */ 00235 int yy_at_bol; 00236 00237 int yy_bs_lineno; 00238 int yy_bs_column; 00240 /* Whether to try to fill the input buffer when we reach the 00241 * end of it. 00242 */ 00243 int yy_fill_buffer; 00244 00245 int yy_buffer_status; 00246 00247 #define YY_BUFFER_NEW 0 00248 #define YY_BUFFER_NORMAL 1 00249 /* When an EOF's been seen but there's still some text to process 00250 * then we mark the buffer as YY_EOF_PENDING, to indicate that we 00251 * shouldn't try reading from the input source any more. We might 00252 * still have a bunch of tokens to match, though, because of 00253 * possible backing-up. 00254 * 00255 * When we actually see the EOF, we change the status to "new" 00256 * (via yyrestart()), so that the user can continue scanning by 00257 * just pointing yyin at a new input file. 00258 */ 00259 #define YY_BUFFER_EOF_PENDING 2 00260 00261 }; 00262 #endif /* !YY_STRUCT_YY_BUFFER_STATE */ 00263 00264 /* We provide macros for accessing buffer states in case in the 00265 * future we want to put the buffer states in a more general 00266 * "scanner state". 00267 * 00268 * Returns the top of the stack, or NULL. 00269 */ 00270 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ 00271 ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ 00272 : NULL) 00273 00274 /* Same as previous macro, but useful when we know that the buffer stack is not 00275 * NULL or when we need an lvalue. For internal use only. 00276 */ 00277 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] 00278 00279 void *yyalloc (yy_size_t ); 00280 void *yyrealloc (void *,yy_size_t ); 00281 void yyfree (void * ); 00282 00283 #define yy_new_buffer yy_create_buffer 00284 00285 #define yy_set_interactive(is_interactive) \ 00286 { \ 00287 if ( ! YY_CURRENT_BUFFER ){ \ 00288 yyensure_buffer_stack (); \ 00289 YY_CURRENT_BUFFER_LVALUE = \ 00290 yy_create_buffer( yyin, YY_BUF_SIZE ); \ 00291 } \ 00292 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ 00293 } 00294 00295 #define yy_set_bol(at_bol) \ 00296 { \ 00297 if ( ! YY_CURRENT_BUFFER ){\ 00298 yyensure_buffer_stack (); \ 00299 YY_CURRENT_BUFFER_LVALUE = \ 00300 yy_create_buffer( yyin, YY_BUF_SIZE ); \ 00301 } \ 00302 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ 00303 } 00304 00305 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) 00306 00307 #define YY_SKIP_YYWRAP 00308 00309 typedef unsigned char YY_CHAR; 00310 00311 #define yytext_ptr yytext 00312 00313 #include <FlexLexer.h> 00314 00315 int yyFlexLexer::yywrap() { return 1; } 00316 int yyFlexLexer::yylex() 00317 { 00318 LexerError( "yyFlexLexer::yylex invoked but %option yyclass used" ); 00319 return 0; 00320 } 00321 00322 #define YY_DECL int JSonScanner::yylex() 00323 static yyconst flex_int16_t yy_nxt[][256] = 00324 { 00325 { 00326 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00327 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00328 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00329 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00330 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00331 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00332 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00333 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00334 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00335 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00336 00337 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00338 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00339 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00340 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00341 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00342 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00343 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00344 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00345 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00346 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00347 00348 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00349 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00350 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00351 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00352 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 00353 0, 0, 0, 0, 0, 0 00354 }, 00355 00356 { 00357 9, 10, 10, 10, 10, 10, 10, 10, 10, 11, 00358 12, 11, 11, 13, 10, 10, 10, 10, 10, 10, 00359 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00360 10, 10, 11, 10, 14, 10, 10, 10, 10, 10, 00361 00362 10, 10, 10, 10, 15, 16, 10, 10, 17, 18, 00363 18, 18, 18, 18, 18, 18, 18, 18, 19, 10, 00364 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00365 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00366 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00367 10, 20, 10, 21, 10, 10, 10, 10, 10, 10, 00368 10, 10, 22, 10, 10, 10, 10, 10, 10, 10, 00369 23, 10, 10, 10, 10, 10, 24, 10, 10, 10, 00370 10, 10, 10, 25, 10, 26, 10, 10, 10, 10, 00371 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00372 00373 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00374 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00375 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00376 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00377 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00378 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00379 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00380 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00381 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00382 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00383 00384 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00385 10, 10, 10, 10, 10, 10 00386 }, 00387 00388 { 00389 9, 10, 10, 10, 10, 10, 10, 10, 10, 11, 00390 12, 11, 11, 13, 10, 10, 10, 10, 10, 10, 00391 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00392 10, 10, 11, 10, 14, 10, 10, 10, 10, 10, 00393 10, 10, 10, 10, 15, 16, 10, 10, 17, 18, 00394 18, 18, 18, 18, 18, 18, 18, 18, 19, 10, 00395 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00396 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00397 00398 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00399 10, 20, 10, 21, 10, 10, 10, 10, 10, 10, 00400 10, 10, 22, 10, 10, 10, 10, 10, 10, 10, 00401 23, 10, 10, 10, 10, 10, 24, 10, 10, 10, 00402 10, 10, 10, 25, 10, 26, 10, 10, 10, 10, 00403 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00404 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00405 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00406 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00407 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00408 00409 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00410 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00411 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00412 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00413 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00414 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00415 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00416 10, 10, 10, 10, 10, 10 00417 }, 00418 00419 { 00420 9, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00421 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00422 00423 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00424 27, 27, 27, 27, 28, 27, 27, 27, 27, 27, 00425 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00426 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00427 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00428 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00429 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00430 27, 27, 29, 27, 27, 27, 27, 27, 27, 27, 00431 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00432 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00433 00434 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00435 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00436 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00437 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00438 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00439 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00440 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00441 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00442 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00443 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00444 00445 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00446 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00447 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00448 27, 27, 27, 27, 27, 27 00449 }, 00450 00451 { 00452 9, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00453 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00454 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00455 27, 27, 27, 27, 28, 27, 27, 27, 27, 27, 00456 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00457 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00458 00459 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00460 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00461 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00462 27, 27, 29, 27, 27, 27, 27, 27, 27, 27, 00463 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00464 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00465 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00466 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00467 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00468 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00469 00470 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00471 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00472 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00473 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00474 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00475 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00476 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00477 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00478 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 00479 27, 27, 27, 27, 27, 27 00480 00481 }, 00482 00483 { 00484 9, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00485 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00486 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00487 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00488 30, 30, 30, 30, 30, 30, 30, 30, 31, 31, 00489 31, 31, 31, 31, 31, 31, 31, 31, 30, 30, 00490 30, 30, 30, 30, 30, 31, 31, 31, 31, 31, 00491 31, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00492 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00493 30, 30, 30, 30, 30, 30, 30, 31, 31, 31, 00494 00495 31, 31, 31, 30, 30, 30, 30, 30, 30, 30, 00496 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00497 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00498 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00499 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00500 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00501 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00502 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00503 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00504 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00505 00506 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00507 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00508 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00509 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00510 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00511 30, 30, 30, 30, 30, 30 00512 }, 00513 00514 { 00515 9, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00516 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00517 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00518 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00519 00520 30, 30, 30, 30, 30, 30, 30, 30, 31, 31, 00521 31, 31, 31, 31, 31, 31, 31, 31, 30, 30, 00522 30, 30, 30, 30, 30, 31, 31, 31, 31, 31, 00523 31, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00524 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00525 30, 30, 30, 30, 30, 30, 30, 31, 31, 31, 00526 31, 31, 31, 30, 30, 30, 30, 30, 30, 30, 00527 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00528 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00529 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00530 00531 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00532 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00533 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00534 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00535 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00536 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00537 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00538 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00539 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00540 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00541 00542 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 00543 30, 30, 30, 30, 30, 30 00544 }, 00545 00546 { 00547 9, 10, 10, 10, 10, 10, 10, 10, 10, 11, 00548 12, 11, 11, 13, 10, 10, 10, 10, 10, 10, 00549 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00550 10, 10, 11, 10, 14, 10, 10, 10, 10, 10, 00551 10, 10, 10, 10, 15, 32, 10, 10, 17, 18, 00552 18, 18, 18, 18, 18, 18, 18, 18, 19, 10, 00553 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00554 10, 10, 10, 33, 10, 10, 10, 10, 34, 10, 00555 00556 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00557 10, 20, 10, 21, 10, 10, 10, 10, 10, 10, 00558 10, 10, 22, 10, 10, 33, 10, 10, 10, 10, 00559 35, 10, 10, 10, 10, 10, 24, 10, 10, 10, 00560 10, 10, 10, 25, 10, 26, 10, 10, 10, 10, 00561 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00562 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00563 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00564 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00565 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00566 00567 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00568 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00569 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00570 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00571 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00572 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00573 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00574 10, 10, 10, 10, 10, 10 00575 }, 00576 00577 { 00578 9, 10, 10, 10, 10, 10, 10, 10, 10, 11, 00579 12, 11, 11, 13, 10, 10, 10, 10, 10, 10, 00580 00581 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00582 10, 10, 11, 10, 14, 10, 10, 10, 10, 10, 00583 10, 10, 10, 10, 15, 32, 10, 10, 17, 18, 00584 18, 18, 18, 18, 18, 18, 18, 18, 19, 10, 00585 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00586 10, 10, 10, 33, 10, 10, 10, 10, 34, 10, 00587 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00588 10, 20, 10, 21, 10, 10, 10, 10, 10, 10, 00589 10, 10, 22, 10, 10, 33, 10, 10, 10, 10, 00590 35, 10, 10, 10, 10, 10, 24, 10, 10, 10, 00591 00592 10, 10, 10, 25, 10, 26, 10, 10, 10, 10, 00593 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00594 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00595 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00596 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00597 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00598 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00599 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00600 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00601 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00602 00603 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00604 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00605 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 00606 10, 10, 10, 10, 10, 10 00607 }, 00608 00609 { 00610 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00611 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00612 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00613 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00614 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00615 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00616 00617 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00618 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00619 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00620 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00621 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00622 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00623 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00624 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00625 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00626 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00627 00628 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00629 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00630 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00631 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00632 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00633 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00634 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00635 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00636 -9, -9, -9, -9, -9, -9, -9, -9, -9, -9, 00637 -9, -9, -9, -9, -9, -9 00638 00639 }, 00640 00641 { 00642 9, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00643 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00644 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00645 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00646 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00647 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00648 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00649 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00650 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00651 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00652 00653 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00654 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00655 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00656 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00657 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00658 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00659 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00660 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00661 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00662 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00663 00664 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00665 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00666 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00667 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00668 -10, -10, -10, -10, -10, -10, -10, -10, -10, -10, 00669 -10, -10, -10, -10, -10, -10 00670 }, 00671 00672 { 00673 9, -11, -11, -11, -11, -11, -11, -11, -11, 36, 00674 -11, 36, 36, -11, -11, -11, -11, -11, -11, -11, 00675 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00676 -11, -11, 36, -11, -11, -11, -11, -11, -11, -11, 00677 00678 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00679 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00680 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00681 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00682 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00683 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00684 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00685 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00686 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00687 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00688 00689 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00690 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00691 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00692 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00693 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00694 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00695 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00696 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00697 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00698 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00699 00700 -11, -11, -11, -11, -11, -11, -11, -11, -11, -11, 00701 -11, -11, -11, -11, -11, -11 00702 }, 00703 00704 { 00705 9, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00706 37, -12, -12, 37, -12, -12, -12, -12, -12, -12, 00707 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00708 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00709 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00710 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00711 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00712 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00713 00714 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00715 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00716 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00717 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00718 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00719 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00720 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00721 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00722 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00723 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00724 00725 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00726 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00727 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00728 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00729 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00730 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00731 -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 00732 -12, -12, -12, -12, -12, -12 00733 }, 00734 00735 { 00736 9, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00737 37, -13, -13, 37, -13, -13, -13, -13, -13, -13, 00738 00739 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00740 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00741 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00742 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00743 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00744 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00745 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00746 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00747 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00748 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00749 00750 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00751 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00752 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00753 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00754 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00755 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00756 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00757 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00758 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00759 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00760 00761 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00762 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00763 -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 00764 -13, -13, -13, -13, -13, -13 00765 }, 00766 00767 { 00768 9, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00769 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00770 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00771 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00772 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00773 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00774 00775 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00776 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00777 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00778 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00779 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00780 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00781 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00782 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00783 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00784 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00785 00786 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00787 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00788 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00789 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00790 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00791 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00792 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00793 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00794 -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 00795 -14, -14, -14, -14, -14, -14 00796 00797 }, 00798 00799 { 00800 9, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00801 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00802 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00803 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00804 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00805 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00806 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00807 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00808 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00809 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00810 00811 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00812 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00813 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00814 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00815 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00816 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00817 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00818 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00819 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00820 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00821 00822 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00823 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00824 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00825 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00826 -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 00827 -15, -15, -15, -15, -15, -15 00828 }, 00829 00830 { 00831 9, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00832 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00833 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00834 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00835 00836 -16, -16, -16, -16, -16, -16, -16, -16, 38, 39, 00837 39, 39, 39, 39, 39, 39, 39, 39, -16, -16, 00838 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00839 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00840 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00841 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00842 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00843 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00844 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00845 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00846 00847 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00848 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00849 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00850 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00851 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00852 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00853 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00854 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00855 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00856 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00857 00858 -16, -16, -16, -16, -16, -16, -16, -16, -16, -16, 00859 -16, -16, -16, -16, -16, -16 00860 }, 00861 00862 { 00863 9, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00864 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00865 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00866 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00867 -17, -17, -17, -17, -17, -17, 40, -17, -17, -17, 00868 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00869 -17, -17, -17, -17, -17, -17, -17, -17, -17, 41, 00870 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00871 00872 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00873 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00874 -17, 41, -17, -17, -17, -17, -17, -17, -17, -17, 00875 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00876 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00877 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00878 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00879 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00880 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00881 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00882 00883 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00884 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00885 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00886 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00887 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00888 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00889 -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 00890 -17, -17, -17, -17, -17, -17 00891 }, 00892 00893 { 00894 9, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00895 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00896 00897 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00898 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00899 -18, -18, -18, -18, -18, -18, 40, -18, 42, 42, 00900 42, 42, 42, 42, 42, 42, 42, 42, -18, -18, 00901 -18, -18, -18, -18, -18, -18, -18, -18, -18, 41, 00902 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00903 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00904 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00905 -18, 41, -18, -18, -18, -18, -18, -18, -18, -18, 00906 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00907 00908 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00909 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00910 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00911 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00912 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00913 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00914 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00915 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00916 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00917 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00918 00919 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00920 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00921 -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 00922 -18, -18, -18, -18, -18, -18 00923 }, 00924 00925 { 00926 9, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00927 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00928 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00929 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00930 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00931 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00932 00933 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00934 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00935 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00936 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00937 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00938 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00939 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00940 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00941 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00942 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00943 00944 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00945 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00946 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00947 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00948 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00949 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00950 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00951 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00952 -19, -19, -19, -19, -19, -19, -19, -19, -19, -19, 00953 -19, -19, -19, -19, -19, -19 00954 00955 }, 00956 00957 { 00958 9, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00959 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00960 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00961 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00962 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00963 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00964 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00965 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00966 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00967 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00968 00969 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00970 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00971 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00972 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00973 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00974 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00975 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00976 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00977 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00978 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00979 00980 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00981 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00982 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00983 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00984 -20, -20, -20, -20, -20, -20, -20, -20, -20, -20, 00985 -20, -20, -20, -20, -20, -20 00986 }, 00987 00988 { 00989 9, -21, -21, -21, -21, -21, -21, -21, -21, -21, 00990 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 00991 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 00992 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 00993 00994 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 00995 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 00996 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 00997 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 00998 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 00999 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 01000 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 01001 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 01002 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 01003 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 01004 01005 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 01006 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 01007 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 01008 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 01009 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 01010 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 01011 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 01012 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 01013 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 01014 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 01015 01016 -21, -21, -21, -21, -21, -21, -21, -21, -21, -21, 01017 -21, -21, -21, -21, -21, -21 01018 }, 01019 01020 { 01021 9, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01022 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01023 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01024 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01025 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01026 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01027 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01028 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01029 01030 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01031 -22, -22, -22, -22, -22, -22, -22, 43, -22, -22, 01032 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01033 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01034 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01035 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01036 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01037 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01038 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01039 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01040 01041 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01042 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01043 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01044 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01045 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01046 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01047 -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 01048 -22, -22, -22, -22, -22, -22 01049 }, 01050 01051 { 01052 9, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01053 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01054 01055 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01056 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01057 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01058 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01059 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01060 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01061 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01062 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01063 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01064 -23, -23, -23, -23, -23, -23, -23, 44, -23, -23, 01065 01066 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01067 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01068 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01069 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01070 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01071 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01072 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01073 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01074 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01075 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01076 01077 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01078 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01079 -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 01080 -23, -23, -23, -23, -23, -23 01081 }, 01082 01083 { 01084 9, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01085 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01086 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01087 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01088 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01089 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01090 01091 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01092 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01093 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01094 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01095 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01096 -24, -24, -24, -24, 45, -24, -24, -24, -24, -24, 01097 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01098 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01099 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01100 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01101 01102 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01103 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01104 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01105 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01106 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01107 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01108 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01109 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01110 -24, -24, -24, -24, -24, -24, -24, -24, -24, -24, 01111 -24, -24, -24, -24, -24, -24 01112 01113 }, 01114 01115 { 01116 9, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01117 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01118 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01119 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01120 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01121 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01122 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01123 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01124 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01125 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01126 01127 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01128 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01129 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01130 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01131 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01132 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01133 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01134 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01135 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01136 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01137 01138 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01139 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01140 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01141 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01142 -25, -25, -25, -25, -25, -25, -25, -25, -25, -25, 01143 -25, -25, -25, -25, -25, -25 01144 }, 01145 01146 { 01147 9, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01148 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01149 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01150 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01151 01152 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01153 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01154 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01155 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01156 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01157 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01158 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01159 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01160 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01161 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01162 01163 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01164 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01165 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01166 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01167 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01168 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01169 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01170 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01171 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01172 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01173 01174 -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 01175 -26, -26, -26, -26, -26, -26 01176 }, 01177 01178 { 01179 9, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01180 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01181 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01182 46, 46, 46, 46, -27, 46, 46, 46, 46, 46, 01183 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01184 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01185 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01186 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01187 01188 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01189 46, 46, -27, 46, 46, 46, 46, 46, 46, 46, 01190 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01191 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01192 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01193 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01194 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01195 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01196 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01197 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01198 01199 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01200 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01201 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01202 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01203 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01204 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01205 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01206 46, 46, 46, 46, 46, 46 01207 }, 01208 01209 { 01210 9, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01211 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01212 01213 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01214 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01215 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01216 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01217 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01218 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01219 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01220 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01221 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01222 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01223 01224 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01225 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01226 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01227 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01228 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01229 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01230 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01231 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01232 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01233 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01234 01235 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01236 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01237 -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 01238 -28, -28, -28, -28, -28, -28 01239 }, 01240 01241 { 01242 9, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01243 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01244 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01245 -29, -29, -29, -29, 47, -29, -29, -29, -29, -29, 01246 -29, -29, -29, -29, -29, -29, -29, 48, -29, -29, 01247 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01248 01249 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01250 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01251 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01252 -29, -29, 49, -29, -29, -29, -29, -29, 50, -29, 01253 -29, -29, 51, -29, -29, -29, -29, -29, -29, -29, 01254 52, -29, -29, -29, 53, -29, 54, 55, -29, -29, 01255 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01256 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01257 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01258 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01259 01260 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01261 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01262 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01263 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01264 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01265 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01266 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01267 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01268 -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 01269 -29, -29, -29, -29, -29, -29 01270 01271 }, 01272 01273 { 01274 9, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01275 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01276 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01277 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01278 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01279 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01280 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01281 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01282 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01283 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01284 01285 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01286 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01287 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01288 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01289 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01290 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01291 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01292 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01293 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01294 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01295 01296 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01297 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01298 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01299 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01300 -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 01301 -30, -30, -30, -30, -30, -30 01302 }, 01303 01304 { 01305 9, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01306 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01307 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01308 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01309 01310 -31, -31, -31, -31, -31, -31, -31, -31, 56, 56, 01311 56, 56, 56, 56, 56, 56, 56, 56, -31, -31, 01312 -31, -31, -31, -31, -31, 56, 56, 56, 56, 56, 01313 56, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01314 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01315 -31, -31, -31, -31, -31, -31, -31, 56, 56, 56, 01316 56, 56, 56, -31, -31, -31, -31, -31, -31, -31, 01317 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01318 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01319 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01320 01321 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01322 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01323 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01324 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01325 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01326 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01327 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01328 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01329 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01330 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01331 01332 -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 01333 -31, -31, -31, -31, -31, -31 01334 }, 01335 01336 { 01337 9, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01338 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01339 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01340 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01341 -32, -32, -32, -32, -32, -32, -32, -32, 38, 39, 01342 39, 39, 39, 39, 39, 39, 39, 39, -32, -32, 01343 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01344 -32, -32, -32, 57, -32, -32, -32, -32, -32, -32, 01345 01346 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01347 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01348 -32, -32, -32, -32, -32, 57, -32, -32, -32, -32, 01349 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01350 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01351 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01352 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01353 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01354 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01355 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01356 01357 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01358 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01359 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01360 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01361 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01362 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01363 -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 01364 -32, -32, -32, -32, -32, -32 01365 }, 01366 01367 { 01368 9, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01369 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01370 01371 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01372 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01373 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01374 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01375 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01376 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01377 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01378 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01379 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01380 58, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01381 01382 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01383 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01384 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01385 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01386 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01387 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01388 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01389 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01390 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01391 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01392 01393 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01394 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01395 -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 01396 -33, -33, -33, -33, -33, -33 01397 }, 01398 01399 { 01400 9, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01401 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01402 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01403 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01404 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01405 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01406 01407 -34, -34, -34, -34, -34, 59, -34, -34, -34, -34, 01408 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01409 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01410 -34, -34, -34, -34, -34, -34, -34, 59, -34, -34, 01411 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01412 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01413 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01414 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01415 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01416 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01417 01418 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01419 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01420 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01421 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01422 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01423 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01424 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01425 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01426 -34, -34, -34, -34, -34, -34, -34, -34, -34, -34, 01427 -34, -34, -34, -34, -34, -34 01428 01429 }, 01430 01431 { 01432 9, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01433 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01434 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01435 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01436 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01437 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01438 -35, -35, -35, -35, -35, 59, -35, -35, -35, -35, 01439 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01440 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01441 -35, -35, -35, -35, -35, -35, -35, 59, -35, -35, 01442 01443 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01444 -35, -35, -35, -35, -35, -35, -35, 44, -35, -35, 01445 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01446 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01447 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01448 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01449 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01450 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01451 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01452 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01453 01454 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01455 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01456 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01457 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01458 -35, -35, -35, -35, -35, -35, -35, -35, -35, -35, 01459 -35, -35, -35, -35, -35, -35 01460 }, 01461 01462 { 01463 9, -36, -36, -36, -36, -36, -36, -36, -36, 36, 01464 -36, 36, 36, -36, -36, -36, -36, -36, -36, -36, 01465 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01466 -36, -36, 36, -36, -36, -36, -36, -36, -36, -36, 01467 01468 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01469 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01470 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01471 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01472 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01473 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01474 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01475 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01476 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01477 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01478 01479 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01480 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01481 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01482 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01483 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01484 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01485 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01486 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01487 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01488 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01489 01490 -36, -36, -36, -36, -36, -36, -36, -36, -36, -36, 01491 -36, -36, -36, -36, -36, -36 01492 }, 01493 01494 { 01495 9, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01496 37, -37, -37, 37, -37, -37, -37, -37, -37, -37, 01497 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01498 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01499 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01500 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01501 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01502 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01503 01504 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01505 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01506 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01507 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01508 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01509 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01510 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01511 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01512 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01513 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01514 01515 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01516 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01517 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01518 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01519 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01520 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01521 -37, -37, -37, -37, -37, -37, -37, -37, -37, -37, 01522 -37, -37, -37, -37, -37, -37 01523 }, 01524 01525 { 01526 9, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01527 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01528 01529 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01530 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01531 -38, -38, -38, -38, -38, -38, 40, -38, -38, -38, 01532 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01533 -38, -38, -38, -38, -38, -38, -38, -38, -38, 41, 01534 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01535 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01536 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01537 -38, 41, -38, -38, -38, -38, -38, -38, -38, -38, 01538 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01539 01540 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01541 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01542 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01543 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01544 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01545 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01546 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01547 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01548 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01549 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01550 01551 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01552 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01553 -38, -38, -38, -38, -38, -38, -38, -38, -38, -38, 01554 -38, -38, -38, -38, -38, -38 01555 }, 01556 01557 { 01558 9, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01559 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01560 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01561 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01562 -39, -39, -39, -39, -39, -39, 40, -39, 60, 60, 01563 60, 60, 60, 60, 60, 60, 60, 60, -39, -39, 01564 01565 -39, -39, -39, -39, -39, -39, -39, -39, -39, 41, 01566 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01567 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01568 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01569 -39, 41, -39, -39, -39, -39, -39, -39, -39, -39, 01570 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01571 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01572 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01573 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01574 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01575 01576 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01577 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01578 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01579 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01580 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01581 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01582 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01583 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01584 -39, -39, -39, -39, -39, -39, -39, -39, -39, -39, 01585 -39, -39, -39, -39, -39, -39 01586 01587 }, 01588 01589 { 01590 9, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01591 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01592 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01593 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01594 -40, -40, -40, -40, -40, -40, -40, -40, 61, 61, 01595 61, 61, 61, 61, 61, 61, 61, 61, -40, -40, 01596 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01597 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01598 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01599 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01600 01601 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01602 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01603 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01604 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01605 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01606 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01607 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01608 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01609 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01610 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01611 01612 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01613 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01614 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01615 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01616 -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 01617 -40, -40, -40, -40, -40, -40 01618 }, 01619 01620 { 01621 9, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01622 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01623 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01624 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01625 01626 -41, -41, -41, 62, -41, 62, -41, -41, 63, 63, 01627 63, 63, 63, 63, 63, 63, 63, 63, -41, -41, 01628 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01629 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01630 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01631 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01632 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01633 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01634 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01635 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01636 01637 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01638 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01639 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01640 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01641 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01642 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01643 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01644 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01645 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01646 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01647 01648 -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 01649 -41, -41, -41, -41, -41, -41 01650 }, 01651 01652 { 01653 9, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01654 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01655 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01656 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01657 -42, -42, -42, -42, -42, -42, 40, -42, 42, 42, 01658 42, 42, 42, 42, 42, 42, 42, 42, -42, -42, 01659 -42, -42, -42, -42, -42, -42, -42, -42, -42, 41, 01660 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01661 01662 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01663 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01664 -42, 41, -42, -42, -42, -42, -42, -42, -42, -42, 01665 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01666 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01667 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01668 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01669 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01670 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01671 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01672 01673 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01674 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01675 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01676 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01677 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01678 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01679 -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 01680 -42, -42, -42, -42, -42, -42 01681 }, 01682 01683 { 01684 9, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01685 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01686 01687 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01688 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01689 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01690 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01691 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01692 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01693 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01694 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01695 -43, -43, -43, -43, -43, -43, -43, -43, 64, -43, 01696 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01697 01698 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01699 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01700 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01701 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01702 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01703 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01704 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01705 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01706 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01707 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01708 01709 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01710 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01711 -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 01712 -43, -43, -43, -43, -43, -43 01713 }, 01714 01715 { 01716 9, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01717 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01718 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01719 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01720 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01721 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01722 01723 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01724 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01725 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01726 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01727 -44, -44, -44, -44, -44, -44, -44, -44, 65, -44, 01728 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01729 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01730 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01731 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01732 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01733 01734 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01735 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01736 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01737 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01738 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01739 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01740 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01741 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01742 -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 01743 -44, -44, -44, -44, -44, -44 01744 01745 }, 01746 01747 { 01748 9, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01749 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01750 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01751 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01752 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01753 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01754 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01755 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01756 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01757 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01758 01759 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01760 -45, -45, -45, -45, -45, -45, -45, 66, -45, -45, 01761 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01762 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01763 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01764 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01765 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01766 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01767 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01768 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01769 01770 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01771 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01772 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01773 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01774 -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 01775 -45, -45, -45, -45, -45, -45 01776 }, 01777 01778 { 01779 9, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01780 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01781 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01782 46, 46, 46, 46, -46, 46, 46, 46, 46, 46, 01783 01784 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01785 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01786 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01787 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01788 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01789 46, 46, -46, 46, 46, 46, 46, 46, 46, 46, 01790 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01791 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01792 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01793 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01794 01795 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01796 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01797 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01798 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01799 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01800 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01801 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01802 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01803 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01804 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01805 01806 46, 46, 46, 46, 46, 46, 46, 46, 46, 46, 01807 46, 46, 46, 46, 46, 46 01808 }, 01809 01810 { 01811 9, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01812 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01813 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01814 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01815 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01816 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01817 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01818 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01819 01820 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01821 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01822 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01823 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01824 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01825 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01826 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01827 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01828 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01829 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01830 01831 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01832 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01833 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01834 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01835 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01836 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01837 -47, -47, -47, -47, -47, -47, -47, -47, -47, -47, 01838 -47, -47, -47, -47, -47, -47 01839 }, 01840 01841 { 01842 9, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01843 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01844 01845 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01846 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01847 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01848 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01849 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01850 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01851 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01852 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01853 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01854 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01855 01856 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01857 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01858 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01859 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01860 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01861 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01862 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01863 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01864 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01865 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01866 01867 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01868 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01869 -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 01870 -48, -48, -48, -48, -48, -48 01871 }, 01872 01873 { 01874 9, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01875 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01876 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01877 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01878 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01879 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01880 01881 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01882 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01883 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01884 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01885 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01886 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01887 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01888 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01889 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01890 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01891 01892 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01893 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01894 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01895 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01896 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01897 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01898 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01899 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01900 -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 01901 -49, -49, -49, -49, -49, -49 01902 01903 }, 01904 01905 { 01906 9, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01907 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01908 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01909 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01910 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01911 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01912 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01913 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01914 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01915 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01916 01917 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01918 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01919 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01920 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01921 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01922 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01923 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01924 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01925 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01926 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01927 01928 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01929 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01930 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01931 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01932 -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 01933 -50, -50, -50, -50, -50, -50 01934 }, 01935 01936 { 01937 9, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01938 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01939 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01940 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01941 01942 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01943 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01944 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01945 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01946 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01947 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01948 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01949 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01950 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01951 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01952 01953 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01954 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01955 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01956 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01957 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01958 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01959 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01960 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01961 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01962 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01963 01964 -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 01965 -51, -51, -51, -51, -51, -51 01966 }, 01967 01968 { 01969 9, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01970 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01971 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01972 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01973 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01974 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01975 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01976 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01977 01978 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01979 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01980 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01981 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01982 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01983 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01984 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01985 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01986 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01987 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01988 01989 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01990 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01991 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01992 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01993 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01994 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01995 -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 01996 -52, -52, -52, -52, -52, -52 01997 }, 01998 01999 { 02000 9, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02001 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02002 02003 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02004 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02005 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02006 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02007 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02008 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02009 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02010 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02011 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02012 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02013 02014 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02015 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02016 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02017 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02018 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02019 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02020 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02021 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02022 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02023 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02024 02025 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02026 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02027 -53, -53, -53, -53, -53, -53, -53, -53, -53, -53, 02028 -53, -53, -53, -53, -53, -53 02029 }, 02030 02031 { 02032 9, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02033 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02034 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02035 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02036 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02037 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02038 02039 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02040 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02041 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02042 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02043 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02044 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02045 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02046 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02047 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02048 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02049 02050 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02051 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02052 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02053 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02054 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02055 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02056 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02057 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02058 -54, -54, -54, -54, -54, -54, -54, -54, -54, -54, 02059 -54, -54, -54, -54, -54, -54 02060 02061 }, 02062 02063 { 02064 9, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02065 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02066 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02067 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02068 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02069 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02070 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02071 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02072 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02073 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02074 02075 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02076 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02077 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02078 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02079 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02080 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02081 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02082 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02083 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02084 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02085 02086 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02087 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02088 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02089 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02090 -55, -55, -55, -55, -55, -55, -55, -55, -55, -55, 02091 -55, -55, -55, -55, -55, -55 02092 }, 02093 02094 { 02095 9, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02096 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02097 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02098 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02099 02100 -56, -56, -56, -56, -56, -56, -56, -56, 67, 67, 02101 67, 67, 67, 67, 67, 67, 67, 67, -56, -56, 02102 -56, -56, -56, -56, -56, 67, 67, 67, 67, 67, 02103 67, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02104 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02105 -56, -56, -56, -56, -56, -56, -56, 67, 67, 67, 02106 67, 67, 67, -56, -56, -56, -56, -56, -56, -56, 02107 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02108 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02109 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02110 02111 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02112 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02113 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02114 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02115 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02116 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02117 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02118 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02119 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02120 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02121 02122 -56, -56, -56, -56, -56, -56, -56, -56, -56, -56, 02123 -56, -56, -56, -56, -56, -56 02124 }, 02125 02126 { 02127 9, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02128 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02129 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02130 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02131 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02132 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02133 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02134 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02135 02136 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02137 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02138 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02139 68, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02140 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02141 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02142 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02143 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02144 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02145 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02146 02147 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02148 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02149 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02150 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02151 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02152 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02153 -57, -57, -57, -57, -57, -57, -57, -57, -57, -57, 02154 -57, -57, -57, -57, -57, -57 02155 }, 02156 02157 { 02158 9, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02159 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02160 02161 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02162 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02163 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02164 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02165 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02166 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02167 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02168 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02169 -58, -58, 69, -58, -58, -58, -58, -58, -58, -58, 02170 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02171 02172 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02173 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02174 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02175 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02176 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02177 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02178 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02179 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02180 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02181 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02182 02183 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02184 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02185 -58, -58, -58, -58, -58, -58, -58, -58, -58, -58, 02186 -58, -58, -58, -58, -58, -58 02187 }, 02188 02189 { 02190 9, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02191 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02192 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02193 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02194 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02195 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02196 02197 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02198 -59, -59, -59, -59, -59, -59, -59, -59, 70, -59, 02199 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02200 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02201 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02202 70, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02203 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02204 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02205 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02206 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02207 02208 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02209 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02210 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02211 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02212 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02213 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02214 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02215 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02216 -59, -59, -59, -59, -59, -59, -59, -59, -59, -59, 02217 -59, -59, -59, -59, -59, -59 02218 02219 }, 02220 02221 { 02222 9, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02223 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02224 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02225 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02226 -60, -60, -60, -60, -60, -60, 40, -60, 60, 60, 02227 60, 60, 60, 60, 60, 60, 60, 60, -60, -60, 02228 -60, -60, -60, -60, -60, -60, -60, -60, -60, 41, 02229 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02230 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02231 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02232 02233 -60, 41, -60, -60, -60, -60, -60, -60, -60, -60, 02234 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02235 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02236 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02237 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02238 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02239 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02240 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02241 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02242 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02243 02244 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02245 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02246 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02247 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02248 -60, -60, -60, -60, -60, -60, -60, -60, -60, -60, 02249 -60, -60, -60, -60, -60, -60 02250 }, 02251 02252 { 02253 9, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02254 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02255 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02256 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02257 02258 -61, -61, -61, -61, -61, -61, -61, -61, 61, 61, 02259 61, 61, 61, 61, 61, 61, 61, 61, -61, -61, 02260 -61, -61, -61, -61, -61, -61, -61, -61, -61, 41, 02261 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02262 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02263 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02264 -61, 41, -61, -61, -61, -61, -61, -61, -61, -61, 02265 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02266 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02267 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02268 02269 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02270 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02271 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02272 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02273 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02274 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02275 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02276 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02277 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02278 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02279 02280 -61, -61, -61, -61, -61, -61, -61, -61, -61, -61, 02281 -61, -61, -61, -61, -61, -61 02282 }, 02283 02284 { 02285 9, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02286 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02287 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02288 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02289 -62, -62, -62, -62, -62, -62, -62, -62, 63, 63, 02290 63, 63, 63, 63, 63, 63, 63, 63, -62, -62, 02291 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02292 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02293 02294 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02295 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02296 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02297 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02298 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02299 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02300 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02301 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02302 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02303 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02304 02305 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02306 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02307 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02308 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02309 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02310 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02311 -62, -62, -62, -62, -62, -62, -62, -62, -62, -62, 02312 -62, -62, -62, -62, -62, -62 02313 }, 02314 02315 { 02316 9, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02317 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02318 02319 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02320 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02321 -63, -63, -63, -63, -63, -63, -63, -63, 63, 63, 02322 63, 63, 63, 63, 63, 63, 63, 63, -63, -63, 02323 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02324 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02325 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02326 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02327 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02328 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02329 02330 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02331 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02332 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02333 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02334 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02335 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02336 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02337 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02338 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02339 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02340 02341 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02342 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02343 -63, -63, -63, -63, -63, -63, -63, -63, -63, -63, 02344 -63, -63, -63, -63, -63, -63 02345 }, 02346 02347 { 02348 9, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02349 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02350 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02351 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02352 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02353 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02354 02355 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02356 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02357 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02358 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02359 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02360 -64, -64, -64, -64, -64, 71, -64, -64, -64, -64, 02361 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02362 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02363 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02364 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02365 02366 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02367 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02368 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02369 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02370 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02371 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02372 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02373 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02374 -64, -64, -64, -64, -64, -64, -64, -64, -64, -64, 02375 -64, -64, -64, -64, -64, -64 02376 02377 }, 02378 02379 { 02380 9, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02381 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02382 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02383 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02384 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02385 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02386 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02387 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02388 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02389 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02390 02391 -65, -65, -65, -65, -65, -65, -65, -65, 72, -65, 02392 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02393 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02394 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02395 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02396 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02397 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02398 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02399 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02400 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02401 02402 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02403 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02404 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02405 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02406 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65, 02407 -65, -65, -65, -65, -65, -65 02408 }, 02409 02410 { 02411 9, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02412 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02413 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02414 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02415 02416 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02417 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02418 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02419 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02420 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02421 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02422 -66, 73, -66, -66, -66, -66, -66, -66, -66, -66, 02423 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02424 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02425 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02426 02427 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02428 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02429 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02430 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02431 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02432 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02433 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02434 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02435 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02436 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02437 02438 -66, -66, -66, -66, -66, -66, -66, -66, -66, -66, 02439 -66, -66, -66, -66, -66, -66 02440 }, 02441 02442 { 02443 9, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02444 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02445 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02446 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02447 -67, -67, -67, -67, -67, -67, -67, -67, 74, 74, 02448 74, 74, 74, 74, 74, 74, 74, 74, -67, -67, 02449 -67, -67, -67, -67, -67, 74, 74, 74, 74, 74, 02450 74, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02451 02452 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02453 -67, -67, -67, -67, -67, -67, -67, 74, 74, 74, 02454 74, 74, 74, -67, -67, -67, -67, -67, -67, -67, 02455 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02456 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02457 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02458 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02459 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02460 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02461 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02462 02463 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02464 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02465 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02466 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02467 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02468 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02469 -67, -67, -67, -67, -67, -67, -67, -67, -67, -67, 02470 -67, -67, -67, -67, -67, -67 02471 }, 02472 02473 { 02474 9, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02475 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02476 02477 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02478 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02479 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02480 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02481 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02482 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02483 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02484 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02485 -68, -68, 75, -68, -68, -68, -68, -68, -68, -68, 02486 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02487 02488 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02489 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02490 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02491 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02492 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02493 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02494 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02495 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02496 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02497 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02498 02499 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02500 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02501 -68, -68, -68, -68, -68, -68, -68, -68, -68, -68, 02502 -68, -68, -68, -68, -68, -68 02503 }, 02504 02505 { 02506 9, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02507 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02508 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02509 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02510 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02511 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02512 02513 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02514 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02515 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02516 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02517 -69, -69, -69, -69, -69, 76, -69, -69, -69, -69, 02518 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02519 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02520 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02521 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02522 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02523 02524 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02525 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02526 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02527 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02528 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02529 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02530 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02531 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02532 -69, -69, -69, -69, -69, -69, -69, -69, -69, -69, 02533 -69, -69, -69, -69, -69, -69 02534 02535 }, 02536 02537 { 02538 9, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02539 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02540 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02541 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02542 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02543 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02544 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02545 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02546 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02547 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02548 02549 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02550 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02551 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02552 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02553 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02554 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02555 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02556 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02557 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02558 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02559 02560 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02561 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02562 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02563 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02564 -70, -70, -70, -70, -70, -70, -70, -70, -70, -70, 02565 -70, -70, -70, -70, -70, -70 02566 }, 02567 02568 { 02569 9, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02570 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02571 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02572 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02573 02574 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02575 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02576 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02577 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02578 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02579 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02580 -71, 77, -71, -71, -71, -71, -71, -71, -71, -71, 02581 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02582 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02583 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02584 02585 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02586 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02587 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02588 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02589 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02590 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02591 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02592 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02593 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02594 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02595 02596 -71, -71, -71, -71, -71, -71, -71, -71, -71, -71, 02597 -71, -71, -71, -71, -71, -71 02598 }, 02599 02600 { 02601 9, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02602 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02603 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02604 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02605 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02606 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02607 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02608 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02609 02610 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02611 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02612 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02613 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02614 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02615 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02616 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02617 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02618 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02619 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02620 02621 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02622 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02623 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02624 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02625 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02626 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02627 -72, -72, -72, -72, -72, -72, -72, -72, -72, -72, 02628 -72, -72, -72, -72, -72, -72 02629 }, 02630 02631 { 02632 9, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02633 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02634 02635 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02636 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02637 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02638 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02639 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02640 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02641 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02642 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02643 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02644 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02645 02646 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02647 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02648 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02649 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02650 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02651 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02652 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02653 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02654 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02655 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02656 02657 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02658 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02659 -73, -73, -73, -73, -73, -73, -73, -73, -73, -73, 02660 -73, -73, -73, -73, -73, -73 02661 }, 02662 02663 { 02664 9, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02665 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02666 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02667 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02668 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02669 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02670 02671 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02672 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02673 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02674 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02675 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02676 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02677 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02678 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02679 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02680 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02681 02682 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02683 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02684 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02685 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02686 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02687 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02688 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02689 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02690 -74, -74, -74, -74, -74, -74, -74, -74, -74, -74, 02691 -74, -74, -74, -74, -74, -74 02692 02693 }, 02694 02695 { 02696 9, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02697 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02698 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02699 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02700 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02701 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02702 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02703 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02704 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02705 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02706 02707 -75, -75, -75, -75, -75, 78, -75, -75, -75, -75, 02708 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02709 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02710 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02711 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02712 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02713 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02714 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02715 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02716 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02717 02718 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02719 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02720 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02721 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02722 -75, -75, -75, -75, -75, -75, -75, -75, -75, -75, 02723 -75, -75, -75, -75, -75, -75 02724 }, 02725 02726 { 02727 9, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02728 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02729 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02730 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02731 02732 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02733 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02734 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02735 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02736 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02737 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02738 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02739 79, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02740 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02741 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02742 02743 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02744 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02745 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02746 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02747 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02748 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02749 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02750 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02751 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02752 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02753 02754 -76, -76, -76, -76, -76, -76, -76, -76, -76, -76, 02755 -76, -76, -76, -76, -76, -76 02756 }, 02757 02758 { 02759 9, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02760 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02761 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02762 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02763 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02764 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02765 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02766 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02767 02768 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02769 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02770 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02771 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02772 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02773 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02774 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02775 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02776 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02777 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02778 02779 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02780 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02781 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02782 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02783 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02784 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02785 -77, -77, -77, -77, -77, -77, -77, -77, -77, -77, 02786 -77, -77, -77, -77, -77, -77 02787 }, 02788 02789 { 02790 9, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02791 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02792 02793 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02794 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02795 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02796 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02797 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02798 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02799 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02800 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02801 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02802 80, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02803 02804 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02805 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02806 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02807 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02808 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02809 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02810 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02811 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02812 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02813 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02814 02815 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02816 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02817 -78, -78, -78, -78, -78, -78, -78, -78, -78, -78, 02818 -78, -78, -78, -78, -78, -78 02819 }, 02820 02821 { 02822 9, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02823 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02824 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02825 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02826 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02827 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02828 02829 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02830 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02831 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02832 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02833 -79, -79, -79, -79, -79, 81, -79, -79, -79, -79, 02834 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02835 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02836 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02837 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02838 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02839 02840 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02841 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02842 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02843 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02844 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02845 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02846 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02847 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02848 -79, -79, -79, -79, -79, -79, -79, -79, -79, -79, 02849 -79, -79, -79, -79, -79, -79 02850 02851 }, 02852 02853 { 02854 9, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02855 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02856 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02857 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02858 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02859 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02860 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02861 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02862 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02863 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02864 02865 -80, -80, -80, -80, -80, 82, -80, -80, -80, -80, 02866 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02867 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02868 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02869 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02870 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02871 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02872 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02873 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02874 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02875 02876 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02877 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02878 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02879 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02880 -80, -80, -80, -80, -80, -80, -80, -80, -80, -80, 02881 -80, -80, -80, -80, -80, -80 02882 }, 02883 02884 { 02885 9, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02886 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02887 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02888 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02889 02890 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02891 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02892 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02893 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02894 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02895 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02896 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02897 -81, -81, -81, -81, -81, -81, 83, -81, -81, -81, 02898 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02899 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02900 02901 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02902 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02903 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02904 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02905 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02906 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02907 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02908 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02909 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02910 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02911 02912 -81, -81, -81, -81, -81, -81, -81, -81, -81, -81, 02913 -81, -81, -81, -81, -81, -81 02914 }, 02915 02916 { 02917 9, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02918 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02919 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02920 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02921 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02922 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02923 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02924 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02925 02926 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02927 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02928 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02929 -82, -82, -82, -82, -82, -82, 84, -82, -82, -82, 02930 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02931 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02932 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02933 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02934 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02935 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02936 02937 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02938 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02939 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02940 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02941 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02942 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02943 -82, -82, -82, -82, -82, -82, -82, -82, -82, -82, 02944 -82, -82, -82, -82, -82, -82 02945 }, 02946 02947 { 02948 9, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02949 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02950 02951 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02952 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02953 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02954 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02955 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02956 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02957 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02958 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02959 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02960 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02961 02962 -83, 85, -83, -83, -83, -83, -83, -83, -83, -83, 02963 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02964 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02965 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02966 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02967 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02968 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02969 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02970 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02971 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02972 02973 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02974 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02975 -83, -83, -83, -83, -83, -83, -83, -83, -83, -83, 02976 -83, -83, -83, -83, -83, -83 02977 }, 02978 02979 { 02980 9, -84, -84, -84, -84, -84, -84, -84, -84, -84, 02981 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 02982 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 02983 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 02984 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 02985 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 02986 02987 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 02988 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 02989 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 02990 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 02991 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 02992 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 02993 -84, 86, -84, -84, -84, -84, -84, -84, -84, -84, 02994 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 02995 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 02996 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 02997 02998 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 02999 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 03000 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 03001 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 03002 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 03003 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 03004 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 03005 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 03006 -84, -84, -84, -84, -84, -84, -84, -84, -84, -84, 03007 -84, -84, -84, -84, -84, -84 03008 03009 }, 03010 03011 { 03012 9, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03013 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03014 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03015 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03016 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03017 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03018 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03019 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03020 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03021 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03022 03023 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03024 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03025 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03026 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03027 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03028 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03029 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03030 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03031 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03032 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03033 03034 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03035 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03036 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03037 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03038 -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, 03039 -85, -85, -85, -85, -85, -85 03040 }, 03041 03042 { 03043 9, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03044 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03045 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03046 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03047 03048 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03049 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03050 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03051 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03052 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03053 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03054 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03055 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03056 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03057 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03058 03059 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03060 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03061 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03062 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03063 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03064 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03065 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03066 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03067 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03068 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03069 03070 -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, 03071 -86, -86, -86, -86, -86, -86 03072 }, 03073 03074 } ; 03075 03076 /* Done after the current pattern has been matched and before the 03077 * corresponding action - sets up yytext. 03078 */ 03079 #define YY_DO_BEFORE_ACTION \ 03080 (yytext_ptr) = yy_bp; \ 03081 yyleng = (size_t) (yy_cp - yy_bp); \ 03082 (yy_hold_char) = *yy_cp; \ 03083 *yy_cp = '\0'; \ 03084 (yy_c_buf_p) = yy_cp; 03085 03086 #define YY_NUM_RULES 36 03087 #define YY_END_OF_BUFFER 37 03088 /* This struct is not used in this scanner, 03089 but its presence is necessary. */ 03090 struct yy_trans_info 03091 { 03092 flex_int32_t yy_verify; 03093 flex_int32_t yy_nxt; 03094 }; 03095 static yyconst flex_int16_t yy_accept[87] = 03096 { 0, 03097 0, 0, 0, 0, 0, 0, 0, 0, 37, 35, 03098 1, 2, 2, 11, 27, 35, 6, 6, 26, 28, 03099 29, 35, 35, 35, 30, 31, 21, 23, 22, 25, 03100 25, 35, 35, 35, 35, 1, 2, 8, 8, 0, 03101 0, 7, 0, 0, 0, 21, 12, 14, 13, 15, 03102 16, 17, 18, 19, 20, 0, 0, 0, 0, 9, 03103 10, 0, 10, 0, 0, 0, 0, 0, 0, 32, 03104 0, 5, 3, 24, 0, 0, 4, 0, 0, 0, 03105 0, 0, 0, 0, 33, 34 03106 } ; 03107 03108 static yyconst yy_state_type yy_NUL_trans[87] = 03109 { 0, 03110 10, 10, 27, 27, 30, 30, 10, 10, 0, 0, 03111 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 03112 0, 0, 0, 0, 0, 0, 46, 0, 0, 0, 03113 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 03114 0, 0, 0, 0, 0, 46, 0, 0, 0, 0, 03115 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 03116 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 03117 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 03118 0, 0, 0, 0, 0, 0 03119 } ; 03120 03121 /* The intent behind this definition is that it'll catch 03122 * any uses of REJECT which flex missed. 03123 */ 03124 #define REJECT reject_used_but_not_detected 03125 #define yymore() yymore_used_but_not_detected 03126 #define YY_MORE_ADJ 0 03127 #define YY_RESTORE_YY_MORE_OFFSET 03128 #line 1 "json_scanner.yy" 03129 /* This file is part of QJson 03130 * 03131 * Copyright (C) 2013 Silvio Moioli <silvio@moioli.net> 03132 * 03133 * This library is free software; you can redistribute it and/or 03134 * modify it under the terms of the GNU Lesser General Public 03135 * License version 2.1, as published by the Free Software Foundation. 03136 * 03137 * 03138 * This library is distributed in the hope that it will be useful, 03139 * but WITHOUT ANY WARRANTY; without even the implied warranty of 03140 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 03141 * Lesser General Public License for more details. 03142 * 03143 * You should have received a copy of the GNU Lesser General Public License 03144 * along with this library; see the file COPYING.LIB. If not, write to 03145 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 03146 * Boston, MA 02110yy::json_parser::token::INVALID301, USA. 03147 */ 03148 /* Flex output settings */ 03149 #define YY_NO_UNISTD_H 1 03150 #define YY_NO_INPUT 1 03151 #line 29 "json_scanner.yy" 03152 #include "json_scanner.h" 03153 #include "json_parser.hh" 03154 03155 #if defined(_WIN32) && !defined(__MINGW32__) 03156 #define strtoll _strtoi64 03157 #define strtoull _strtoui64 03158 #endif 03159 03160 #define YY_USER_INIT if(m_allowSpecialNumbers) { \ 03161 BEGIN(ALLOW_SPECIAL_NUMBERS); \ 03162 } 03163 /* Exclusive subscanners for strings and escaped hex sequences */ 03164 03165 /* Extra-JSON rules active iff m_allowSpecialNumbers is true */ 03166 03167 #line 3168 "json_scanner.cc" 03168 03169 #define INITIAL 0 03170 #define QUOTMARK_OPEN 1 03171 #define HEX_OPEN 2 03172 #define ALLOW_SPECIAL_NUMBERS 3 03173 03174 #ifndef YY_NO_UNISTD_H 03175 /* Special case for "unistd.h", since it is non-ANSI. We include it way 03176 * down here because we want the user's section 1 to have been scanned first. 03177 * The user has a chance to override it with an option. 03178 */ 03179 #include <unistd.h> 03180 #endif 03181 03182 #ifndef YY_EXTRA_TYPE 03183 #define YY_EXTRA_TYPE void * 03184 #endif 03185 03186 #ifndef yytext_ptr 03187 static void yy_flex_strncpy (char *,yyconst char *,int ); 03188 #endif 03189 03190 #ifdef YY_NEED_STRLEN 03191 static int yy_flex_strlen (yyconst char * ); 03192 #endif 03193 03194 #ifndef YY_NO_INPUT 03195 03196 #endif 03197 03198 /* Amount of stuff to slurp up with each read. */ 03199 #ifndef YY_READ_BUF_SIZE 03200 #define YY_READ_BUF_SIZE 8192 03201 #endif 03202 03203 /* Copy whatever the last rule matched to the standard output. */ 03204 #ifndef ECHO 03205 #define ECHO LexerOutput( yytext, yyleng ) 03206 #endif 03207 03208 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, 03209 * is returned in "result". 03210 */ 03211 #ifndef YY_INPUT 03212 #define YY_INPUT(buf,result,max_size) \ 03213 \ 03214 if ( (result = LexerInput( (char *) buf, max_size )) < 0 ) \ 03215 YY_FATAL_ERROR( "input in flex scanner failed" ); 03216 03217 #endif 03218 03219 /* No semi-colon after return; correct usage is to write "yyterminate();" - 03220 * we don't want an extra ';' after the "return" because that will cause 03221 * some compilers to complain about unreachable statements. 03222 */ 03223 #ifndef yyterminate 03224 #define yyterminate() return YY_NULL 03225 #endif 03226 03227 /* Number of entries by which start-condition stack grows. */ 03228 #ifndef YY_START_STACK_INCR 03229 #define YY_START_STACK_INCR 25 03230 #endif 03231 03232 /* Report a fatal error. */ 03233 #ifndef YY_FATAL_ERROR 03234 #define YY_FATAL_ERROR(msg) LexerError( msg ) 03235 #endif 03236 03237 /* end tables serialization structures and prototypes */ 03238 03239 /* Default declaration of generated scanner - a define so the user can 03240 * easily add parameters. 03241 */ 03242 #ifndef YY_DECL 03243 #define YY_DECL_IS_OURS 1 03244 #define YY_DECL int yyFlexLexer::yylex() 03245 #endif /* !YY_DECL */ 03246 03247 /* Code executed at the beginning of each rule, after yytext and yyleng 03248 * have been set up. 03249 */ 03250 #ifndef YY_USER_ACTION 03251 #define YY_USER_ACTION 03252 #endif 03253 03254 /* Code executed at the end of each rule. */ 03255 #ifndef YY_BREAK 03256 #define YY_BREAK break; 03257 #endif 03258 03259 #define YY_RULE_SETUP \ 03260 YY_USER_ACTION 03261 03264 YY_DECL 03265 { 03266 register yy_state_type yy_current_state; 03267 register char *yy_cp, *yy_bp; 03268 register int yy_act; 03269 03270 #line 48 "json_scanner.yy" 03271 03272 03273 /* Whitespace */ 03274 #line 3275 "json_scanner.cc" 03275 03276 if ( !(yy_init) ) 03277 { 03278 (yy_init) = 1; 03279 03280 #ifdef YY_USER_INIT 03281 YY_USER_INIT; 03282 #endif 03283 03284 if ( ! (yy_start) ) 03285 (yy_start) = 1; /* first start state */ 03286 03287 if ( ! yyin ) 03288 yyin = & std::cin; 03289 03290 if ( ! yyout ) 03291 yyout = & std::cout; 03292 03293 if ( ! YY_CURRENT_BUFFER ) { 03294 yyensure_buffer_stack (); 03295 YY_CURRENT_BUFFER_LVALUE = 03296 yy_create_buffer( yyin, YY_BUF_SIZE ); 03297 } 03298 03299 yy_load_buffer_state( ); 03300 } 03301 03302 while ( 1 ) /* loops until end-of-file is reached */ 03303 { 03304 yy_cp = (yy_c_buf_p); 03305 03306 /* Support of yytext. */ 03307 *yy_cp = (yy_hold_char); 03308 03309 /* yy_bp points to the position in yy_ch_buf of the start of 03310 * the current run. 03311 */ 03312 yy_bp = yy_cp; 03313 03314 yy_current_state = (yy_start); 03315 yy_match: 03316 while ( (yy_current_state = yy_nxt[yy_current_state][ YY_SC_TO_UI(*yy_cp) ]) > 0 ) 03317 { 03318 if ( yy_accept[yy_current_state] ) 03319 { 03320 (yy_last_accepting_state) = yy_current_state; 03321 (yy_last_accepting_cpos) = yy_cp; 03322 } 03323 03324 ++yy_cp; 03325 } 03326 03327 yy_current_state = -yy_current_state; 03328 03329 yy_find_action: 03330 yy_act = yy_accept[yy_current_state]; 03331 03332 YY_DO_BEFORE_ACTION; 03333 03334 do_action: /* This label is used only to access EOF actions. */ 03335 03336 switch ( yy_act ) 03337 { /* beginning of action switch */ 03338 case 0: /* must back up */ 03339 /* undo the effects of YY_DO_BEFORE_ACTION */ 03340 *yy_cp = (yy_hold_char); 03341 yy_cp = (yy_last_accepting_cpos) + 1; 03342 yy_current_state = (yy_last_accepting_state); 03343 goto yy_find_action; 03344 03345 case 1: 03346 YY_RULE_SETUP 03347 #line 51 "json_scanner.yy" 03348 { 03349 m_yylloc->columns(yyleng); 03350 } 03351 YY_BREAK 03352 case 2: 03353 /* rule 2 can match eol */ 03354 YY_RULE_SETUP 03355 #line 55 "json_scanner.yy" 03356 { 03357 m_yylloc->lines(yyleng); 03358 } 03359 YY_BREAK 03360 /* Special values */ 03361 case 3: 03362 YY_RULE_SETUP 03363 #line 61 "json_scanner.yy" 03364 { 03365 m_yylloc->columns(yyleng); 03366 *m_yylval = QVariant(true); 03367 return yy::json_parser::token::TRUE_VAL; 03368 } 03369 YY_BREAK 03370 case 4: 03371 YY_RULE_SETUP 03372 #line 67 "json_scanner.yy" 03373 { 03374 m_yylloc->columns(yyleng); 03375 *m_yylval = QVariant(false); 03376 return yy::json_parser::token::FALSE_VAL; 03377 } 03378 YY_BREAK 03379 case 5: 03380 YY_RULE_SETUP 03381 #line 73 "json_scanner.yy" 03382 { 03383 m_yylloc->columns(yyleng); 03384 *m_yylval = QVariant(); 03385 return yy::json_parser::token::NULL_VAL; 03386 } 03387 YY_BREAK 03388 /* Numbers */ 03389 case 6: 03390 #line 82 "json_scanner.yy" 03391 case 7: 03392 YY_RULE_SETUP 03393 #line 82 "json_scanner.yy" 03394 { 03395 m_yylloc->columns(yyleng); 03396 *m_yylval = QVariant(strtoull(yytext, NULL, 10)); 03397 if (errno == ERANGE) { 03398 qCritical() << "Number is out of range: " << yytext; 03399 return yy::json_parser::token::INVALID; 03400 } 03401 return yy::json_parser::token::NUMBER; 03402 } 03403 YY_BREAK 03404 case 8: 03405 #line 93 "json_scanner.yy" 03406 case 9: 03407 YY_RULE_SETUP 03408 #line 93 "json_scanner.yy" 03409 { 03410 m_yylloc->columns(yyleng); 03411 *m_yylval = QVariant(strtoll(yytext, NULL, 10)); 03412 if (errno == ERANGE) { 03413 qCritical() << "Number is out of range: " << yytext; 03414 return yy::json_parser::token::INVALID; 03415 } 03416 return yy::json_parser::token::NUMBER; 03417 } 03418 YY_BREAK 03419 case 10: 03420 YY_RULE_SETUP 03421 #line 103 "json_scanner.yy" 03422 { 03423 m_yylloc->columns(yyleng); 03424 bool ok; 03425 *m_yylval = QVariant(m_C_locale.toDouble(QLatin1String(yytext),&ok)); 03426 if (!ok) { 03427 qCritical() << "Number is out of range: " << yytext; 03428 return yy::json_parser::token::INVALID; 03429 } 03430 return yy::json_parser::token::NUMBER; 03431 } 03432 YY_BREAK 03433 /* Strings */ 03434 case 11: 03435 YY_RULE_SETUP 03436 #line 115 "json_scanner.yy" 03437 { 03438 m_yylloc->columns(yyleng); 03439 BEGIN(QUOTMARK_OPEN); 03440 } 03441 YY_BREAK 03442 03443 case 12: 03444 YY_RULE_SETUP 03445 #line 121 "json_scanner.yy" 03446 { 03447 m_currentString.append(QLatin1String("\"")); 03448 } 03449 YY_BREAK 03450 case 13: 03451 YY_RULE_SETUP 03452 #line 125 "json_scanner.yy" 03453 { 03454 m_currentString.append(QLatin1String("\\")); 03455 } 03456 YY_BREAK 03457 case 14: 03458 YY_RULE_SETUP 03459 #line 129 "json_scanner.yy" 03460 { 03461 m_currentString.append(QLatin1String("/")); 03462 } 03463 YY_BREAK 03464 case 15: 03465 YY_RULE_SETUP 03466 #line 133 "json_scanner.yy" 03467 { 03468 m_currentString.append(QLatin1String("\b")); 03469 } 03470 YY_BREAK 03471 case 16: 03472 YY_RULE_SETUP 03473 #line 137 "json_scanner.yy" 03474 { 03475 m_currentString.append(QLatin1String("\f")); 03476 } 03477 YY_BREAK 03478 case 17: 03479 YY_RULE_SETUP 03480 #line 141 "json_scanner.yy" 03481 { 03482 m_currentString.append(QLatin1String("\n")); 03483 } 03484 YY_BREAK 03485 case 18: 03486 YY_RULE_SETUP 03487 #line 145 "json_scanner.yy" 03488 { 03489 m_currentString.append(QLatin1String("\r")); 03490 } 03491 YY_BREAK 03492 case 19: 03493 YY_RULE_SETUP 03494 #line 149 "json_scanner.yy" 03495 { 03496 m_currentString.append(QLatin1String("\t")); 03497 } 03498 YY_BREAK 03499 case 20: 03500 YY_RULE_SETUP 03501 #line 153 "json_scanner.yy" 03502 { 03503 BEGIN(HEX_OPEN); 03504 } 03505 YY_BREAK 03506 case 21: 03507 /* rule 21 can match eol */ 03508 YY_RULE_SETUP 03509 #line 157 "json_scanner.yy" 03510 { 03511 m_currentString.append(QString::fromUtf8(yytext)); 03512 } 03513 YY_BREAK 03514 case 22: 03515 YY_RULE_SETUP 03516 #line 161 "json_scanner.yy" 03517 { 03518 // ignore 03519 } 03520 YY_BREAK 03521 case 23: 03522 YY_RULE_SETUP 03523 #line 165 "json_scanner.yy" 03524 { 03525 m_yylloc->columns(yyleng); 03526 *m_yylval = QVariant(m_currentString); 03527 m_currentString.clear(); 03528 BEGIN(INITIAL); 03529 return yy::json_parser::token::STRING; 03530 } 03531 YY_BREAK 03532 case YY_STATE_EOF(QUOTMARK_OPEN): 03533 #line 173 "json_scanner.yy" 03534 { 03535 qCritical() << "Unterminated string"; 03536 m_yylloc->columns(yyleng); 03537 return yy::json_parser::token::INVALID; 03538 } 03539 YY_BREAK 03540 03541 03542 case 24: 03543 YY_RULE_SETUP 03544 #line 182 "json_scanner.yy" 03545 { 03546 QString hexDigits = QString::fromUtf8(yytext, yyleng); 03547 bool ok; 03548 ushort hexDigit1 = hexDigits.left(2).toShort(&ok, 16); 03549 ushort hexDigit2 = hexDigits.right(2).toShort(&ok, 16); 03550 m_currentString.append(QChar(hexDigit2, hexDigit1)); 03551 BEGIN(QUOTMARK_OPEN); 03552 } 03553 YY_BREAK 03554 case 25: 03555 /* rule 25 can match eol */ 03556 YY_RULE_SETUP 03557 #line 191 "json_scanner.yy" 03558 { 03559 qCritical() << "Invalid hex string"; 03560 m_yylloc->columns(yyleng); 03561 *m_yylval = QVariant(QLatin1String("")); 03562 BEGIN(QUOTMARK_OPEN); 03563 return yy::json_parser::token::INVALID; 03564 } 03565 YY_BREAK 03566 03567 /* "Compound type" related tokens */ 03568 case 26: 03569 YY_RULE_SETUP 03570 #line 203 "json_scanner.yy" 03571 { 03572 m_yylloc->columns(yyleng); 03573 return yy::json_parser::token::COLON; 03574 } 03575 YY_BREAK 03576 case 27: 03577 YY_RULE_SETUP 03578 #line 208 "json_scanner.yy" 03579 { 03580 m_yylloc->columns(yyleng); 03581 return yy::json_parser::token::COMMA; 03582 } 03583 YY_BREAK 03584 case 28: 03585 YY_RULE_SETUP 03586 #line 213 "json_scanner.yy" 03587 { 03588 m_yylloc->columns(yyleng); 03589 return yy::json_parser::token::SQUARE_BRACKET_OPEN; 03590 } 03591 YY_BREAK 03592 case 29: 03593 YY_RULE_SETUP 03594 #line 218 "json_scanner.yy" 03595 { 03596 m_yylloc->columns(yyleng); 03597 return yy::json_parser::token::SQUARE_BRACKET_CLOSE; 03598 } 03599 YY_BREAK 03600 case 30: 03601 YY_RULE_SETUP 03602 #line 223 "json_scanner.yy" 03603 { 03604 m_yylloc->columns(yyleng); 03605 return yy::json_parser::token::CURLY_BRACKET_OPEN; 03606 } 03607 YY_BREAK 03608 case 31: 03609 YY_RULE_SETUP 03610 #line 228 "json_scanner.yy" 03611 { 03612 m_yylloc->columns(yyleng); 03613 return yy::json_parser::token::CURLY_BRACKET_CLOSE; 03614 } 03615 YY_BREAK 03616 /* Extra-JSON numbers */ 03617 03618 case 32: 03619 YY_RULE_SETUP 03620 #line 236 "json_scanner.yy" 03621 { 03622 m_yylloc->columns(yyleng); 03623 *m_yylval = QVariant(std::numeric_limits<double>::quiet_NaN()); 03624 return yy::json_parser::token::NUMBER; 03625 } 03626 YY_BREAK 03627 case 33: 03628 YY_RULE_SETUP 03629 #line 242 "json_scanner.yy" 03630 { 03631 m_yylloc->columns(yyleng); 03632 *m_yylval = QVariant(std::numeric_limits<double>::infinity()); 03633 return yy::json_parser::token::NUMBER; 03634 } 03635 YY_BREAK 03636 case 34: 03637 YY_RULE_SETUP 03638 #line 248 "json_scanner.yy" 03639 { 03640 m_yylloc->columns(yyleng); 03641 *m_yylval = QVariant(-std::numeric_limits<double>::infinity()); 03642 return yy::json_parser::token::NUMBER; 03643 } 03644 YY_BREAK 03645 03646 /* If all else fails */ 03647 case 35: 03648 YY_RULE_SETUP 03649 #line 256 "json_scanner.yy" 03650 { 03651 m_yylloc->columns(yyleng); 03652 return yy::json_parser::token::INVALID; 03653 } 03654 YY_BREAK 03655 case YY_STATE_EOF(INITIAL): 03656 case YY_STATE_EOF(HEX_OPEN): 03657 case YY_STATE_EOF(ALLOW_SPECIAL_NUMBERS): 03658 #line 261 "json_scanner.yy" 03659 return yy::json_parser::token::END; 03660 YY_BREAK 03661 case 36: 03662 YY_RULE_SETUP 03663 #line 262 "json_scanner.yy" 03664 ECHO; 03665 YY_BREAK 03666 #line 3667 "json_scanner.cc" 03667 03668 case YY_END_OF_BUFFER: 03669 { 03670 /* Amount of text matched not including the EOB char. */ 03671 int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; 03672 03673 /* Undo the effects of YY_DO_BEFORE_ACTION. */ 03674 *yy_cp = (yy_hold_char); 03675 YY_RESTORE_YY_MORE_OFFSET 03676 03677 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) 03678 { 03679 /* We're scanning a new file or input source. It's 03680 * possible that this happened because the user 03681 * just pointed yyin at a new source and called 03682 * yylex(). If so, then we have to assure 03683 * consistency between YY_CURRENT_BUFFER and our 03684 * globals. Here is the right place to do so, because 03685 * this is the first action (other than possibly a 03686 * back-up) that will match for the new input source. 03687 */ 03688 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; 03689 YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin; 03690 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; 03691 } 03692 03693 /* Note that here we test for yy_c_buf_p "<=" to the position 03694 * of the first EOB in the buffer, since yy_c_buf_p will 03695 * already have been incremented past the NUL character 03696 * (since all states make transitions on EOB to the 03697 * end-of-buffer state). Contrast this with the test 03698 * in input(). 03699 */ 03700 if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) 03701 { /* This was really a NUL. */ 03702 yy_state_type yy_next_state; 03703 03704 (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; 03705 03706 yy_current_state = yy_get_previous_state( ); 03707 03708 /* Okay, we're now positioned to make the NUL 03709 * transition. We couldn't have 03710 * yy_get_previous_state() go ahead and do it 03711 * for us because it doesn't know how to deal 03712 * with the possibility of jamming (and we don't 03713 * want to build jamming into it because then it 03714 * will run more slowly). 03715 */ 03716 03717 yy_next_state = yy_try_NUL_trans( yy_current_state ); 03718 03719 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 03720 03721 if ( yy_next_state ) 03722 { 03723 /* Consume the NUL. */ 03724 yy_cp = ++(yy_c_buf_p); 03725 yy_current_state = yy_next_state; 03726 goto yy_match; 03727 } 03728 03729 else 03730 { 03731 yy_cp = (yy_c_buf_p); 03732 goto yy_find_action; 03733 } 03734 } 03735 03736 else switch ( yy_get_next_buffer( ) ) 03737 { 03738 case EOB_ACT_END_OF_FILE: 03739 { 03740 (yy_did_buffer_switch_on_eof) = 0; 03741 03742 if ( yywrap( ) ) 03743 { 03744 /* Note: because we've taken care in 03745 * yy_get_next_buffer() to have set up 03746 * yytext, we can now set up 03747 * yy_c_buf_p so that if some total 03748 * hoser (like flex itself) wants to 03749 * call the scanner after we return the 03750 * YY_NULL, it'll still work - another 03751 * YY_NULL will get returned. 03752 */ 03753 (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; 03754 03755 yy_act = YY_STATE_EOF(YY_START); 03756 goto do_action; 03757 } 03758 03759 else 03760 { 03761 if ( ! (yy_did_buffer_switch_on_eof) ) 03762 YY_NEW_FILE; 03763 } 03764 break; 03765 } 03766 03767 case EOB_ACT_CONTINUE_SCAN: 03768 (yy_c_buf_p) = 03769 (yytext_ptr) + yy_amount_of_matched_text; 03770 03771 yy_current_state = yy_get_previous_state( ); 03772 03773 yy_cp = (yy_c_buf_p); 03774 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 03775 goto yy_match; 03776 03777 case EOB_ACT_LAST_MATCH: 03778 (yy_c_buf_p) = 03779 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; 03780 03781 yy_current_state = yy_get_previous_state( ); 03782 03783 yy_cp = (yy_c_buf_p); 03784 yy_bp = (yytext_ptr) + YY_MORE_ADJ; 03785 goto yy_find_action; 03786 } 03787 break; 03788 } 03789 03790 default: 03791 YY_FATAL_ERROR( 03792 "fatal flex scanner internal error--no action found" ); 03793 } /* end of action switch */ 03794 } /* end of scanning one token */ 03795 } /* end of yylex */ 03796 03797 /* The contents of this function are C++ specific, so the () macro is not used. 03798 */ 03799 yyFlexLexer::yyFlexLexer( std::istream* arg_yyin, std::ostream* arg_yyout ) 03800 { 03801 yyin = arg_yyin; 03802 yyout = arg_yyout; 03803 yy_c_buf_p = 0; 03804 yy_init = 0; 03805 yy_start = 0; 03806 yy_flex_debug = 0; 03807 yylineno = 1; // this will only get updated if %option yylineno 03808 03809 yy_did_buffer_switch_on_eof = 0; 03810 03811 yy_looking_for_trail_begin = 0; 03812 yy_more_flag = 0; 03813 yy_more_len = 0; 03814 yy_more_offset = yy_prev_more_offset = 0; 03815 03816 yy_start_stack_ptr = yy_start_stack_depth = 0; 03817 yy_start_stack = NULL; 03818 03819 yy_buffer_stack = 0; 03820 yy_buffer_stack_top = 0; 03821 yy_buffer_stack_max = 0; 03822 03823 yy_state_buf = 0; 03824 03825 } 03826 03827 /* The contents of this function are C++ specific, so the () macro is not used. 03828 */ 03829 yyFlexLexer::~yyFlexLexer() 03830 { 03831 delete [] yy_state_buf; 03832 yyfree(yy_start_stack ); 03833 yy_delete_buffer( YY_CURRENT_BUFFER ); 03834 yyfree(yy_buffer_stack ); 03835 } 03836 03837 /* The contents of this function are C++ specific, so the () macro is not used. 03838 */ 03839 void yyFlexLexer::switch_streams( std::istream* new_in, std::ostream* new_out ) 03840 { 03841 if ( new_in ) 03842 { 03843 yy_delete_buffer( YY_CURRENT_BUFFER ); 03844 yy_switch_to_buffer( yy_create_buffer( new_in, YY_BUF_SIZE ) ); 03845 } 03846 03847 if ( new_out ) 03848 yyout = new_out; 03849 } 03850 03851 #ifdef YY_INTERACTIVE 03852 int yyFlexLexer::LexerInput( char* buf, int /* max_size */ ) 03853 #else 03854 int yyFlexLexer::LexerInput( char* buf, int max_size ) 03855 #endif 03856 { 03857 if ( yyin->eof() || yyin->fail() ) 03858 return 0; 03859 03860 #ifdef YY_INTERACTIVE 03861 yyin->get( buf[0] ); 03862 03863 if ( yyin->eof() ) 03864 return 0; 03865 03866 if ( yyin->bad() ) 03867 return -1; 03868 03869 return 1; 03870 03871 #else 03872 (void) yyin->read( buf, max_size ); 03873 03874 if ( yyin->bad() ) 03875 return -1; 03876 else 03877 return yyin->gcount(); 03878 #endif 03879 } 03880 03881 void yyFlexLexer::LexerOutput( const char* buf, int size ) 03882 { 03883 (void) yyout->write( buf, size ); 03884 } 03885 03886 /* yy_get_next_buffer - try to read in a new buffer 03887 * 03888 * Returns a code representing an action: 03889 * EOB_ACT_LAST_MATCH - 03890 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position 03891 * EOB_ACT_END_OF_FILE - end of file 03892 */ 03893 int yyFlexLexer::yy_get_next_buffer() 03894 { 03895 register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; 03896 register char *source = (yytext_ptr); 03897 register int number_to_move, i; 03898 int ret_val; 03899 03900 if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) 03901 YY_FATAL_ERROR( 03902 "fatal flex scanner internal error--end of buffer missed" ); 03903 03904 if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) 03905 { /* Don't try to fill the buffer, so this is an EOF. */ 03906 if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) 03907 { 03908 /* We matched a single character, the EOB, so 03909 * treat this as a final EOF. 03910 */ 03911 return EOB_ACT_END_OF_FILE; 03912 } 03913 03914 else 03915 { 03916 /* We matched some text prior to the EOB, first 03917 * process it. 03918 */ 03919 return EOB_ACT_LAST_MATCH; 03920 } 03921 } 03922 03923 /* Try to read more data. */ 03924 03925 /* First move last chars to start of buffer. */ 03926 number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1; 03927 03928 for ( i = 0; i < number_to_move; ++i ) 03929 *(dest++) = *(source++); 03930 03931 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) 03932 /* don't do the read, it's not guaranteed to return an EOF, 03933 * just force an EOF 03934 */ 03935 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; 03936 03937 else 03938 { 03939 yy_size_t num_to_read = 03940 YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; 03941 03942 while ( num_to_read <= 0 ) 03943 { /* Not enough room in the buffer - grow it. */ 03944 03945 /* just a shorter name for the current buffer */ 03946 YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE; 03947 03948 int yy_c_buf_p_offset = 03949 (int) ((yy_c_buf_p) - b->yy_ch_buf); 03950 03951 if ( b->yy_is_our_buffer ) 03952 { 03953 yy_size_t new_size = b->yy_buf_size * 2; 03954 03955 if ( new_size <= 0 ) 03956 b->yy_buf_size += b->yy_buf_size / 8; 03957 else 03958 b->yy_buf_size *= 2; 03959 03960 b->yy_ch_buf = (char *) 03961 /* Include room in for 2 EOB chars. */ 03962 yyrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 ); 03963 } 03964 else 03965 /* Can't grow it, we don't own it. */ 03966 b->yy_ch_buf = 0; 03967 03968 if ( ! b->yy_ch_buf ) 03969 YY_FATAL_ERROR( 03970 "fatal error - scanner input buffer overflow" ); 03971 03972 (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset]; 03973 03974 num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - 03975 number_to_move - 1; 03976 03977 } 03978 03979 if ( num_to_read > YY_READ_BUF_SIZE ) 03980 num_to_read = YY_READ_BUF_SIZE; 03981 03982 /* Read in more data. */ 03983 YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), 03984 (yy_n_chars), num_to_read ); 03985 03986 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 03987 } 03988 03989 if ( (yy_n_chars) == 0 ) 03990 { 03991 if ( number_to_move == YY_MORE_ADJ ) 03992 { 03993 ret_val = EOB_ACT_END_OF_FILE; 03994 yyrestart( yyin ); 03995 } 03996 03997 else 03998 { 03999 ret_val = EOB_ACT_LAST_MATCH; 04000 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = 04001 YY_BUFFER_EOF_PENDING; 04002 } 04003 } 04004 04005 else 04006 ret_val = EOB_ACT_CONTINUE_SCAN; 04007 04008 if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { 04009 /* Extend the array by 50%, plus the number we really need. */ 04010 yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); 04011 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ); 04012 if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) 04013 YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); 04014 } 04015 04016 (yy_n_chars) += number_to_move; 04017 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; 04018 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; 04019 04020 (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; 04021 04022 return ret_val; 04023 } 04024 04025 /* yy_get_previous_state - get the state just before the EOB char was reached */ 04026 04027 yy_state_type yyFlexLexer::yy_get_previous_state() 04028 { 04029 register yy_state_type yy_current_state; 04030 register char *yy_cp; 04031 04032 yy_current_state = (yy_start); 04033 04034 for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) 04035 { 04036 if ( *yy_cp ) 04037 { 04038 yy_current_state = yy_nxt[yy_current_state][YY_SC_TO_UI(*yy_cp)]; 04039 } 04040 else 04041 yy_current_state = yy_NUL_trans[yy_current_state]; 04042 if ( yy_accept[yy_current_state] ) 04043 { 04044 (yy_last_accepting_state) = yy_current_state; 04045 (yy_last_accepting_cpos) = yy_cp; 04046 } 04047 } 04048 04049 return yy_current_state; 04050 } 04051 04052 /* yy_try_NUL_trans - try to make a transition on the NUL character 04053 * 04054 * synopsis 04055 * next_state = yy_try_NUL_trans( current_state ); 04056 */ 04057 yy_state_type yyFlexLexer::yy_try_NUL_trans( yy_state_type yy_current_state ) 04058 { 04059 register int yy_is_jam; 04060 register char *yy_cp = (yy_c_buf_p); 04061 04062 yy_current_state = yy_NUL_trans[yy_current_state]; 04063 yy_is_jam = (yy_current_state == 0); 04064 04065 if ( ! yy_is_jam ) 04066 { 04067 if ( yy_accept[yy_current_state] ) 04068 { 04069 (yy_last_accepting_state) = yy_current_state; 04070 (yy_last_accepting_cpos) = yy_cp; 04071 } 04072 } 04073 04074 return yy_is_jam ? 0 : yy_current_state; 04075 } 04076 04077 void yyFlexLexer::yyunput( int c, register char* yy_bp) 04078 { 04079 register char *yy_cp; 04080 04081 yy_cp = (yy_c_buf_p); 04082 04083 /* undo effects of setting up yytext */ 04084 *yy_cp = (yy_hold_char); 04085 04086 if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) 04087 { /* need to shift things up to make room */ 04088 /* +2 for EOB chars. */ 04089 register yy_size_t number_to_move = (yy_n_chars) + 2; 04090 register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ 04091 YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; 04092 register char *source = 04093 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]; 04094 04095 while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) 04096 *--dest = *--source; 04097 04098 yy_cp += (int) (dest - source); 04099 yy_bp += (int) (dest - source); 04100 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = 04101 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size; 04102 04103 if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) 04104 YY_FATAL_ERROR( "flex scanner push-back overflow" ); 04105 } 04106 04107 *--yy_cp = (char) c; 04108 04109 (yytext_ptr) = yy_bp; 04110 (yy_hold_char) = *yy_cp; 04111 (yy_c_buf_p) = yy_cp; 04112 } 04113 04114 int yyFlexLexer::yyinput() 04115 { 04116 int c; 04117 04118 *(yy_c_buf_p) = (yy_hold_char); 04119 04120 if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) 04121 { 04122 /* yy_c_buf_p now points to the character we want to return. 04123 * If this occurs *before* the EOB characters, then it's a 04124 * valid NUL; if not, then we've hit the end of the buffer. 04125 */ 04126 if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) 04127 /* This was really a NUL. */ 04128 *(yy_c_buf_p) = '\0'; 04129 04130 else 04131 { /* need more input */ 04132 yy_size_t offset = (yy_c_buf_p) - (yytext_ptr); 04133 ++(yy_c_buf_p); 04134 04135 switch ( yy_get_next_buffer( ) ) 04136 { 04137 case EOB_ACT_LAST_MATCH: 04138 /* This happens because yy_g_n_b() 04139 * sees that we've accumulated a 04140 * token and flags that we need to 04141 * try matching the token before 04142 * proceeding. But for input(), 04143 * there's no matching to consider. 04144 * So convert the EOB_ACT_LAST_MATCH 04145 * to EOB_ACT_END_OF_FILE. 04146 */ 04147 04148 /* Reset buffer status. */ 04149 yyrestart( yyin ); 04150 04151 /*FALLTHROUGH*/ 04152 04153 case EOB_ACT_END_OF_FILE: 04154 { 04155 if ( yywrap( ) ) 04156 return EOF; 04157 04158 if ( ! (yy_did_buffer_switch_on_eof) ) 04159 YY_NEW_FILE; 04160 #ifdef __cplusplus 04161 return yyinput(); 04162 #else 04163 return input(); 04164 #endif 04165 } 04166 04167 case EOB_ACT_CONTINUE_SCAN: 04168 (yy_c_buf_p) = (yytext_ptr) + offset; 04169 break; 04170 } 04171 } 04172 } 04173 04174 c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */ 04175 *(yy_c_buf_p) = '\0'; /* preserve yytext */ 04176 (yy_hold_char) = *++(yy_c_buf_p); 04177 04178 return c; 04179 } 04180 04186 void yyFlexLexer::yyrestart( std::istream* input_file ) 04187 { 04188 04189 if ( ! YY_CURRENT_BUFFER ){ 04190 yyensure_buffer_stack (); 04191 YY_CURRENT_BUFFER_LVALUE = 04192 yy_create_buffer( yyin, YY_BUF_SIZE ); 04193 } 04194 04195 yy_init_buffer( YY_CURRENT_BUFFER, input_file ); 04196 yy_load_buffer_state( ); 04197 } 04198 04203 void yyFlexLexer::yy_switch_to_buffer( YY_BUFFER_STATE new_buffer ) 04204 { 04205 04206 /* TODO. We should be able to replace this entire function body 04207 * with 04208 * yypop_buffer_state(); 04209 * yypush_buffer_state(new_buffer); 04210 */ 04211 yyensure_buffer_stack (); 04212 if ( YY_CURRENT_BUFFER == new_buffer ) 04213 return; 04214 04215 if ( YY_CURRENT_BUFFER ) 04216 { 04217 /* Flush out information for old buffer. */ 04218 *(yy_c_buf_p) = (yy_hold_char); 04219 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); 04220 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 04221 } 04222 04223 YY_CURRENT_BUFFER_LVALUE = new_buffer; 04224 yy_load_buffer_state( ); 04225 04226 /* We don't actually know whether we did this switch during 04227 * EOF (yywrap()) processing, but the only time this flag 04228 * is looked at is after yywrap() is called, so it's safe 04229 * to go ahead and always set it. 04230 */ 04231 (yy_did_buffer_switch_on_eof) = 1; 04232 } 04233 04234 void yyFlexLexer::yy_load_buffer_state() 04235 { 04236 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; 04237 (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; 04238 yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; 04239 (yy_hold_char) = *(yy_c_buf_p); 04240 } 04241 04248 YY_BUFFER_STATE yyFlexLexer::yy_create_buffer( std::istream* file, int size ) 04249 { 04250 YY_BUFFER_STATE b; 04251 04252 b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); 04253 if ( ! b ) 04254 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); 04255 04256 b->yy_buf_size = size; 04257 04258 /* yy_ch_buf has to be 2 characters longer than the size given because 04259 * we need to put in 2 end-of-buffer characters. 04260 */ 04261 b->yy_ch_buf = (char *) yyalloc(b->yy_buf_size + 2 ); 04262 if ( ! b->yy_ch_buf ) 04263 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); 04264 04265 b->yy_is_our_buffer = 1; 04266 04267 yy_init_buffer( b, file ); 04268 04269 return b; 04270 } 04271 04276 void yyFlexLexer::yy_delete_buffer( YY_BUFFER_STATE b ) 04277 { 04278 04279 if ( ! b ) 04280 return; 04281 04282 if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ 04283 YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; 04284 04285 if ( b->yy_is_our_buffer ) 04286 yyfree((void *) b->yy_ch_buf ); 04287 04288 yyfree((void *) b ); 04289 } 04290 04291 /* Initializes or reinitializes a buffer. 04292 * This function is sometimes called more than once on the same buffer, 04293 * such as during a yyrestart() or at EOF. 04294 */ 04295 void yyFlexLexer::yy_init_buffer( YY_BUFFER_STATE b, std::istream* file ) 04296 04297 { 04298 int oerrno = errno; 04299 04300 yy_flush_buffer( b ); 04301 04302 b->yy_input_file = file; 04303 b->yy_fill_buffer = 1; 04304 04305 /* If b is the current buffer, then yy_init_buffer was _probably_ 04306 * called from yyrestart() or through yy_get_next_buffer. 04307 * In that case, we don't want to reset the lineno or column. 04308 */ 04309 if (b != YY_CURRENT_BUFFER){ 04310 b->yy_bs_lineno = 1; 04311 b->yy_bs_column = 0; 04312 } 04313 04314 b->yy_is_interactive = 0; 04315 errno = oerrno; 04316 } 04317 04322 void yyFlexLexer::yy_flush_buffer( YY_BUFFER_STATE b ) 04323 { 04324 if ( ! b ) 04325 return; 04326 04327 b->yy_n_chars = 0; 04328 04329 /* We always need two end-of-buffer characters. The first causes 04330 * a transition to the end-of-buffer state. The second causes 04331 * a jam in that state. 04332 */ 04333 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR; 04334 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR; 04335 04336 b->yy_buf_pos = &b->yy_ch_buf[0]; 04337 04338 b->yy_at_bol = 1; 04339 b->yy_buffer_status = YY_BUFFER_NEW; 04340 04341 if ( b == YY_CURRENT_BUFFER ) 04342 yy_load_buffer_state( ); 04343 } 04344 04351 void yyFlexLexer::yypush_buffer_state (YY_BUFFER_STATE new_buffer) 04352 { 04353 if (new_buffer == NULL) 04354 return; 04355 04356 yyensure_buffer_stack(); 04357 04358 /* This block is copied from yy_switch_to_buffer. */ 04359 if ( YY_CURRENT_BUFFER ) 04360 { 04361 /* Flush out information for old buffer. */ 04362 *(yy_c_buf_p) = (yy_hold_char); 04363 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); 04364 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 04365 } 04366 04367 /* Only push if top exists. Otherwise, replace top. */ 04368 if (YY_CURRENT_BUFFER) 04369 (yy_buffer_stack_top)++; 04370 YY_CURRENT_BUFFER_LVALUE = new_buffer; 04371 04372 /* copied from yy_switch_to_buffer. */ 04373 yy_load_buffer_state( ); 04374 (yy_did_buffer_switch_on_eof) = 1; 04375 } 04376 04381 void yyFlexLexer::yypop_buffer_state (void) 04382 { 04383 if (!YY_CURRENT_BUFFER) 04384 return; 04385 04386 yy_delete_buffer(YY_CURRENT_BUFFER ); 04387 YY_CURRENT_BUFFER_LVALUE = NULL; 04388 if ((yy_buffer_stack_top) > 0) 04389 --(yy_buffer_stack_top); 04390 04391 if (YY_CURRENT_BUFFER) { 04392 yy_load_buffer_state( ); 04393 (yy_did_buffer_switch_on_eof) = 1; 04394 } 04395 } 04396 04397 /* Allocates the stack if it does not exist. 04398 * Guarantees space for at least one push. 04399 */ 04400 void yyFlexLexer::yyensure_buffer_stack(void) 04401 { 04402 yy_size_t num_to_alloc; 04403 04404 if (!(yy_buffer_stack)) { 04405 04406 /* First allocation is just for 2 elements, since we don't know if this 04407 * scanner will even need a stack. We use 2 instead of 1 to avoid an 04408 * immediate realloc on the next call. 04409 */ 04410 num_to_alloc = 1; 04411 (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc 04412 (num_to_alloc * sizeof(struct yy_buffer_state*) 04413 ); 04414 if ( ! (yy_buffer_stack) ) 04415 YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); 04416 04417 memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); 04418 04419 (yy_buffer_stack_max) = num_to_alloc; 04420 (yy_buffer_stack_top) = 0; 04421 return; 04422 } 04423 04424 if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ 04425 04426 /* Increase the buffer to prepare for a possible push. */ 04427 int grow_size = 8 /* arbitrary grow size */; 04428 04429 num_to_alloc = (yy_buffer_stack_max) + grow_size; 04430 (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc 04431 ((yy_buffer_stack), 04432 num_to_alloc * sizeof(struct yy_buffer_state*) 04433 ); 04434 if ( ! (yy_buffer_stack) ) 04435 YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); 04436 04437 /* zero only the new slots.*/ 04438 memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); 04439 (yy_buffer_stack_max) = num_to_alloc; 04440 } 04441 } 04442 04443 #ifndef YY_EXIT_FAILURE 04444 #define YY_EXIT_FAILURE 2 04445 #endif 04446 04447 void yyFlexLexer::LexerError( yyconst char msg[] ) 04448 { 04449 std::cerr << msg << std::endl; 04450 exit( YY_EXIT_FAILURE ); 04451 } 04452 04453 /* Redefine yyless() so it works in section 3 code. */ 04454 04455 #undef yyless 04456 #define yyless(n) \ 04457 do \ 04458 { \ 04459 /* Undo effects of setting up yytext. */ \ 04460 int yyless_macro_arg = (n); \ 04461 YY_LESS_LINENO(yyless_macro_arg);\ 04462 yytext[yyleng] = (yy_hold_char); \ 04463 (yy_c_buf_p) = yytext + yyless_macro_arg; \ 04464 (yy_hold_char) = *(yy_c_buf_p); \ 04465 *(yy_c_buf_p) = '\0'; \ 04466 yyleng = yyless_macro_arg; \ 04467 } \ 04468 while ( 0 ) 04469 04470 /* Accessor methods (get/set functions) to struct members. */ 04471 04472 /* 04473 * Internal utility routines. 04474 */ 04475 04476 #ifndef yytext_ptr 04477 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) 04478 { 04479 register int i; 04480 for ( i = 0; i < n; ++i ) 04481 s1[i] = s2[i]; 04482 } 04483 #endif 04484 04485 #ifdef YY_NEED_STRLEN 04486 static int yy_flex_strlen (yyconst char * s ) 04487 { 04488 register int n; 04489 for ( n = 0; s[n]; ++n ) 04490 ; 04491 04492 return n; 04493 } 04494 #endif 04495 04496 void *yyalloc (yy_size_t size ) 04497 { 04498 return (void *) malloc( size ); 04499 } 04500 04501 void *yyrealloc (void * ptr, yy_size_t size ) 04502 { 04503 /* The cast to (char *) in the following accommodates both 04504 * implementations that use char* generic pointers, and those 04505 * that use void* generic pointers. It works with the latter 04506 * because both ANSI C and C++ allow castless assignment from 04507 * any pointer type to void*, and deal with argument conversions 04508 * as though doing an assignment. 04509 */ 04510 return (void *) realloc( (char *) ptr, size ); 04511 } 04512 04513 void yyfree (void * ptr ) 04514 { 04515 free( (char *) ptr ); /* see yyrealloc() for (char *) cast */ 04516 } 04517 04518 #define YYTABLES_NAME "yytables" 04519 04520 #line 262 "json_scanner.yy"
|
hosts this site. |
Send comments to: QJson Developers |