1 #line 2 "wcsutrn.c"
2 
3 #line 4 "wcsutrn.c"
4 
5 #define _POSIX_C_SOURCE 1
6 #define  YY_INT_ALIGNED short int
7 
8 /* A lexical scanner generated by flex */
9 
10 #define FLEX_SCANNER
11 #define YY_FLEX_MAJOR_VERSION 2
12 #define YY_FLEX_MINOR_VERSION 6
13 #define YY_FLEX_SUBMINOR_VERSION 4
14 #if YY_FLEX_SUBMINOR_VERSION > 0
15 #define FLEX_BETA
16 #endif
17 
18 #ifdef yy_create_buffer
19 #define wcsutrn_create_buffer_ALREADY_DEFINED
20 #else
21 #define yy_create_buffer wcsutrn_create_buffer
22 #endif
23 
24 #ifdef yy_delete_buffer
25 #define wcsutrn_delete_buffer_ALREADY_DEFINED
26 #else
27 #define yy_delete_buffer wcsutrn_delete_buffer
28 #endif
29 
30 #ifdef yy_scan_buffer
31 #define wcsutrn_scan_buffer_ALREADY_DEFINED
32 #else
33 #define yy_scan_buffer wcsutrn_scan_buffer
34 #endif
35 
36 #ifdef yy_scan_string
37 #define wcsutrn_scan_string_ALREADY_DEFINED
38 #else
39 #define yy_scan_string wcsutrn_scan_string
40 #endif
41 
42 #ifdef yy_scan_bytes
43 #define wcsutrn_scan_bytes_ALREADY_DEFINED
44 #else
45 #define yy_scan_bytes wcsutrn_scan_bytes
46 #endif
47 
48 #ifdef yy_init_buffer
49 #define wcsutrn_init_buffer_ALREADY_DEFINED
50 #else
51 #define yy_init_buffer wcsutrn_init_buffer
52 #endif
53 
54 #ifdef yy_flush_buffer
55 #define wcsutrn_flush_buffer_ALREADY_DEFINED
56 #else
57 #define yy_flush_buffer wcsutrn_flush_buffer
58 #endif
59 
60 #ifdef yy_load_buffer_state
61 #define wcsutrn_load_buffer_state_ALREADY_DEFINED
62 #else
63 #define yy_load_buffer_state wcsutrn_load_buffer_state
64 #endif
65 
66 #ifdef yy_switch_to_buffer
67 #define wcsutrn_switch_to_buffer_ALREADY_DEFINED
68 #else
69 #define yy_switch_to_buffer wcsutrn_switch_to_buffer
70 #endif
71 
72 #ifdef yypush_buffer_state
73 #define wcsutrnpush_buffer_state_ALREADY_DEFINED
74 #else
75 #define yypush_buffer_state wcsutrnpush_buffer_state
76 #endif
77 
78 #ifdef yypop_buffer_state
79 #define wcsutrnpop_buffer_state_ALREADY_DEFINED
80 #else
81 #define yypop_buffer_state wcsutrnpop_buffer_state
82 #endif
83 
84 #ifdef yyensure_buffer_stack
85 #define wcsutrnensure_buffer_stack_ALREADY_DEFINED
86 #else
87 #define yyensure_buffer_stack wcsutrnensure_buffer_stack
88 #endif
89 
90 #ifdef yylex
91 #define wcsutrnlex_ALREADY_DEFINED
92 #else
93 #define yylex wcsutrnlex
94 #endif
95 
96 #ifdef yyrestart
97 #define wcsutrnrestart_ALREADY_DEFINED
98 #else
99 #define yyrestart wcsutrnrestart
100 #endif
101 
102 #ifdef yylex_init
103 #define wcsutrnlex_init_ALREADY_DEFINED
104 #else
105 #define yylex_init wcsutrnlex_init
106 #endif
107 
108 #ifdef yylex_init_extra
109 #define wcsutrnlex_init_extra_ALREADY_DEFINED
110 #else
111 #define yylex_init_extra wcsutrnlex_init_extra
112 #endif
113 
114 #ifdef yylex_destroy
115 #define wcsutrnlex_destroy_ALREADY_DEFINED
116 #else
117 #define yylex_destroy wcsutrnlex_destroy
118 #endif
119 
120 #ifdef yyget_debug
121 #define wcsutrnget_debug_ALREADY_DEFINED
122 #else
123 #define yyget_debug wcsutrnget_debug
124 #endif
125 
126 #ifdef yyset_debug
127 #define wcsutrnset_debug_ALREADY_DEFINED
128 #else
129 #define yyset_debug wcsutrnset_debug
130 #endif
131 
132 #ifdef yyget_extra
133 #define wcsutrnget_extra_ALREADY_DEFINED
134 #else
135 #define yyget_extra wcsutrnget_extra
136 #endif
137 
138 #ifdef yyset_extra
139 #define wcsutrnset_extra_ALREADY_DEFINED
140 #else
141 #define yyset_extra wcsutrnset_extra
142 #endif
143 
144 #ifdef yyget_in
145 #define wcsutrnget_in_ALREADY_DEFINED
146 #else
147 #define yyget_in wcsutrnget_in
148 #endif
149 
150 #ifdef yyset_in
151 #define wcsutrnset_in_ALREADY_DEFINED
152 #else
153 #define yyset_in wcsutrnset_in
154 #endif
155 
156 #ifdef yyget_out
157 #define wcsutrnget_out_ALREADY_DEFINED
158 #else
159 #define yyget_out wcsutrnget_out
160 #endif
161 
162 #ifdef yyset_out
163 #define wcsutrnset_out_ALREADY_DEFINED
164 #else
165 #define yyset_out wcsutrnset_out
166 #endif
167 
168 #ifdef yyget_leng
169 #define wcsutrnget_leng_ALREADY_DEFINED
170 #else
171 #define yyget_leng wcsutrnget_leng
172 #endif
173 
174 #ifdef yyget_text
175 #define wcsutrnget_text_ALREADY_DEFINED
176 #else
177 #define yyget_text wcsutrnget_text
178 #endif
179 
180 #ifdef yyget_lineno
181 #define wcsutrnget_lineno_ALREADY_DEFINED
182 #else
183 #define yyget_lineno wcsutrnget_lineno
184 #endif
185 
186 #ifdef yyset_lineno
187 #define wcsutrnset_lineno_ALREADY_DEFINED
188 #else
189 #define yyset_lineno wcsutrnset_lineno
190 #endif
191 
192 #ifdef yyget_column
193 #define wcsutrnget_column_ALREADY_DEFINED
194 #else
195 #define yyget_column wcsutrnget_column
196 #endif
197 
198 #ifdef yyset_column
199 #define wcsutrnset_column_ALREADY_DEFINED
200 #else
201 #define yyset_column wcsutrnset_column
202 #endif
203 
204 #ifdef yywrap
205 #define wcsutrnwrap_ALREADY_DEFINED
206 #else
207 #define yywrap wcsutrnwrap
208 #endif
209 
210 #ifdef yyalloc
211 #define wcsutrnalloc_ALREADY_DEFINED
212 #else
213 #define yyalloc wcsutrnalloc
214 #endif
215 
216 #ifdef yyrealloc
217 #define wcsutrnrealloc_ALREADY_DEFINED
218 #else
219 #define yyrealloc wcsutrnrealloc
220 #endif
221 
222 #ifdef yyfree
223 #define wcsutrnfree_ALREADY_DEFINED
224 #else
225 #define yyfree wcsutrnfree
226 #endif
227 
228 /* First, we deal with  platform-specific or compiler-specific issues. */
229 
230 /* begin standard C headers. */
231 #include <stdio.h>
232 #include <string.h>
233 #include <errno.h>
234 #include <stdlib.h>
235 
236 /* end standard C headers. */
237 
238 /* flex integer type definitions */
239 
240 #ifndef FLEXINT_H
241 #define FLEXINT_H
242 
243 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
244 
245 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
246 
247 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
248  * if you want the limit (max/min) macros for int types.
249  */
250 #ifndef __STDC_LIMIT_MACROS
251 #define __STDC_LIMIT_MACROS 1
252 #endif
253 
254 #include <inttypes.h>
255 typedef int8_t flex_int8_t;
256 typedef uint8_t flex_uint8_t;
257 typedef int16_t flex_int16_t;
258 typedef uint16_t flex_uint16_t;
259 typedef int32_t flex_int32_t;
260 typedef uint32_t flex_uint32_t;
261 #else
262 typedef signed char flex_int8_t;
263 typedef short int flex_int16_t;
264 typedef int flex_int32_t;
265 typedef unsigned char flex_uint8_t;
266 typedef unsigned short int flex_uint16_t;
267 typedef unsigned int flex_uint32_t;
268 
269 /* Limits of integral types. */
270 #ifndef INT8_MIN
271 #define INT8_MIN               (-128)
272 #endif
273 #ifndef INT16_MIN
274 #define INT16_MIN              (-32767-1)
275 #endif
276 #ifndef INT32_MIN
277 #define INT32_MIN              (-2147483647-1)
278 #endif
279 #ifndef INT8_MAX
280 #define INT8_MAX               (127)
281 #endif
282 #ifndef INT16_MAX
283 #define INT16_MAX              (32767)
284 #endif
285 #ifndef INT32_MAX
286 #define INT32_MAX              (2147483647)
287 #endif
288 #ifndef UINT8_MAX
289 #define UINT8_MAX              (255U)
290 #endif
291 #ifndef UINT16_MAX
292 #define UINT16_MAX             (65535U)
293 #endif
294 #ifndef UINT32_MAX
295 #define UINT32_MAX             (4294967295U)
296 #endif
297 
298 #ifndef SIZE_MAX
299 #define SIZE_MAX               (~(size_t)0)
300 #endif
301 
302 #endif /* ! C99 */
303 
304 #endif /* ! FLEXINT_H */
305 
306 /* begin standard C++ headers. */
307 
308 /* TODO: this is always defined, so inline it */
309 #define yyconst const
310 
311 #if defined(__GNUC__) && __GNUC__ >= 3
312 #define yynoreturn __attribute__((__noreturn__))
313 #else
314 #define yynoreturn
315 #endif
316 
317 /* Returned upon end-of-file. */
318 #define YY_NULL 0
319 
320 /* Promotes a possibly negative, possibly signed char to an
321  *   integer in range [0..255] for use as an array index.
322  */
323 #define YY_SC_TO_UI(c) ((YY_CHAR) (c))
324 
325 /* An opaque pointer. */
326 #ifndef YY_TYPEDEF_YY_SCANNER_T
327 #define YY_TYPEDEF_YY_SCANNER_T
328 typedef void* yyscan_t;
329 #endif
330 
331 /* For convenience, these vars (plus the bison vars far below)
332    are macros in the reentrant scanner. */
333 #define yyin yyg->yyin_r
334 #define yyout yyg->yyout_r
335 #define yyextra yyg->yyextra_r
336 #define yyleng yyg->yyleng_r
337 #define yytext yyg->yytext_r
338 #define yylineno (YY_CURRENT_BUFFER_LVALUE->yy_bs_lineno)
339 #define yycolumn (YY_CURRENT_BUFFER_LVALUE->yy_bs_column)
340 #define yy_flex_debug yyg->yy_flex_debug_r
341 
342 /* Enter a start condition.  This macro really ought to take a parameter,
343  * but we do it the disgusting crufty way forced on us by the ()-less
344  * definition of BEGIN.
345  */
346 #define BEGIN yyg->yy_start = 1 + 2 *
347 /* Translate the current start state into a value that can be later handed
348  * to BEGIN to return to the state.  The YYSTATE alias is for lex
349  * compatibility.
350  */
351 #define YY_START ((yyg->yy_start - 1) / 2)
352 #define YYSTATE YY_START
353 /* Action number for EOF rule of a given start state. */
354 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
355 /* Special action meaning "start processing a new file". */
356 #define YY_NEW_FILE yyrestart( yyin , yyscanner )
357 #define YY_END_OF_BUFFER_CHAR 0
358 
359 /* Size of default input buffer. */
360 #ifndef YY_BUF_SIZE
361 #ifdef __ia64__
362 /* On IA-64, the buffer size is 16k, not 8k.
363  * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
364  * Ditto for the __ia64__ case accordingly.
365  */
366 #define YY_BUF_SIZE 32768
367 #else
368 #define YY_BUF_SIZE 16384
369 #endif /* __ia64__ */
370 #endif
371 
372 /* The state buf must be large enough to hold one state per character in the main buffer.
373  */
374 #define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
375 
376 #ifndef YY_TYPEDEF_YY_BUFFER_STATE
377 #define YY_TYPEDEF_YY_BUFFER_STATE
378 typedef struct yy_buffer_state *YY_BUFFER_STATE;
379 #endif
380 
381 #ifndef YY_TYPEDEF_YY_SIZE_T
382 #define YY_TYPEDEF_YY_SIZE_T
383 typedef size_t yy_size_t;
384 #endif
385 
386 #define EOB_ACT_CONTINUE_SCAN 0
387 #define EOB_ACT_END_OF_FILE 1
388 #define EOB_ACT_LAST_MATCH 2
389 
390 #define YY_LESS_LINENO(n)
391 #define YY_LINENO_REWIND_TO(ptr)
392 
393 /* Return all but the first "n" matched characters back to the input stream. */
394 #define yyless(n) \
395 	do \
396 		{ \
397 		/* Undo effects of setting up yytext. */ \
398         int yyless_macro_arg = (n); \
399         YY_LESS_LINENO(yyless_macro_arg);\
400 		*yy_cp = yyg->yy_hold_char; \
401 		YY_RESTORE_YY_MORE_OFFSET \
402 		yyg->yy_c_buf_p = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
403 		YY_DO_BEFORE_ACTION; /* set up yytext again */ \
404 		} \
405 	while ( 0 )
406 #define unput(c) yyunput( c, yyg->yytext_ptr , yyscanner )
407 
408 #ifndef YY_STRUCT_YY_BUFFER_STATE
409 #define YY_STRUCT_YY_BUFFER_STATE
410 struct yy_buffer_state
411 	{
412 	FILE *yy_input_file;
413 
414 	char *yy_ch_buf;		/* input buffer */
415 	char *yy_buf_pos;		/* current position in input buffer */
416 
417 	/* Size of input buffer in bytes, not including room for EOB
418 	 * characters.
419 	 */
420 	int yy_buf_size;
421 
422 	/* Number of characters read into yy_ch_buf, not including EOB
423 	 * characters.
424 	 */
425 	int yy_n_chars;
426 
427 	/* Whether we "own" the buffer - i.e., we know we created it,
428 	 * and can realloc() it to grow it, and should free() it to
429 	 * delete it.
430 	 */
431 	int yy_is_our_buffer;
432 
433 	/* Whether this is an "interactive" input source; if so, and
434 	 * if we're using stdio for input, then we want to use getc()
435 	 * instead of fread(), to make sure we stop fetching input after
436 	 * each newline.
437 	 */
438 	int yy_is_interactive;
439 
440 	/* Whether we're considered to be at the beginning of a line.
441 	 * If so, '^' rules will be active on the next match, otherwise
442 	 * not.
443 	 */
444 	int yy_at_bol;
445 
446     int yy_bs_lineno; /**< The line count. */
447     int yy_bs_column; /**< The column count. */
448 
449 	/* Whether to try to fill the input buffer when we reach the
450 	 * end of it.
451 	 */
452 	int yy_fill_buffer;
453 
454 	int yy_buffer_status;
455 
456 #define YY_BUFFER_NEW 0
457 #define YY_BUFFER_NORMAL 1
458 	/* When an EOF's been seen but there's still some text to process
459 	 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
460 	 * shouldn't try reading from the input source any more.  We might
461 	 * still have a bunch of tokens to match, though, because of
462 	 * possible backing-up.
463 	 *
464 	 * When we actually see the EOF, we change the status to "new"
465 	 * (via yyrestart()), so that the user can continue scanning by
466 	 * just pointing yyin at a new input file.
467 	 */
468 #define YY_BUFFER_EOF_PENDING 2
469 
470 	};
471 #endif /* !YY_STRUCT_YY_BUFFER_STATE */
472 
473 /* We provide macros for accessing buffer states in case in the
474  * future we want to put the buffer states in a more general
475  * "scanner state".
476  *
477  * Returns the top of the stack, or NULL.
478  */
479 #define YY_CURRENT_BUFFER ( yyg->yy_buffer_stack \
480                           ? yyg->yy_buffer_stack[yyg->yy_buffer_stack_top] \
481                           : NULL)
482 /* Same as previous macro, but useful when we know that the buffer stack is not
483  * NULL or when we need an lvalue. For internal use only.
484  */
485 #define YY_CURRENT_BUFFER_LVALUE yyg->yy_buffer_stack[yyg->yy_buffer_stack_top]
486 
487 void yyrestart ( FILE *input_file , yyscan_t yyscanner );
488 void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer , yyscan_t yyscanner );
489 YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size , yyscan_t yyscanner );
490 void yy_delete_buffer ( YY_BUFFER_STATE b , yyscan_t yyscanner );
491 void yy_flush_buffer ( YY_BUFFER_STATE b , yyscan_t yyscanner );
492 void yypush_buffer_state ( YY_BUFFER_STATE new_buffer , yyscan_t yyscanner );
493 void yypop_buffer_state ( yyscan_t yyscanner );
494 
495 static void yyensure_buffer_stack ( yyscan_t yyscanner );
496 static void yy_load_buffer_state ( yyscan_t yyscanner );
497 static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file , yyscan_t yyscanner );
498 #define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER , yyscanner)
499 
500 YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size , yyscan_t yyscanner );
501 YY_BUFFER_STATE yy_scan_string ( const char *yy_str , yyscan_t yyscanner );
502 YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len , yyscan_t yyscanner );
503 
504 void *yyalloc ( yy_size_t , yyscan_t yyscanner );
505 void *yyrealloc ( void *, yy_size_t , yyscan_t yyscanner );
506 void yyfree ( void * , yyscan_t yyscanner );
507 
508 #define yy_new_buffer yy_create_buffer
509 #define yy_set_interactive(is_interactive) \
510 	{ \
511 	if ( ! YY_CURRENT_BUFFER ){ \
512         yyensure_buffer_stack (yyscanner); \
513 		YY_CURRENT_BUFFER_LVALUE =    \
514             yy_create_buffer( yyin, YY_BUF_SIZE , yyscanner); \
515 	} \
516 	YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
517 	}
518 #define yy_set_bol(at_bol) \
519 	{ \
520 	if ( ! YY_CURRENT_BUFFER ){\
521         yyensure_buffer_stack (yyscanner); \
522 		YY_CURRENT_BUFFER_LVALUE =    \
523             yy_create_buffer( yyin, YY_BUF_SIZE , yyscanner); \
524 	} \
525 	YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
526 	}
527 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
528 
529 /* Begin user sect3 */
530 
531 #define wcsutrnwrap(yyscanner) (/*CONSTCOND*/1)
532 #define YY_SKIP_YYWRAP
533 typedef flex_uint8_t YY_CHAR;
534 
535 typedef int yy_state_type;
536 
537 #define yytext_ptr yytext_r
538 
539 static const flex_int16_t yy_nxt[][128] =
540     {
541     {
542         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
543         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
544         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
545         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
546         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
547         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
548         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
549         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
550         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
551         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
552 
553         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
554         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
555         0,    0,    0,    0,    0,    0,    0,    0
556     },
557 
558     {
559         7,    8,    8,    8,    8,    8,    8,    8,    8,    8,
560         8,    8,    8,    8,    8,    8,    8,    8,    8,    8,
561         8,    8,    8,    8,    8,    8,    8,    8,    8,    8,
562         8,    8,    9,    8,    8,    8,    8,    8,    8,    8,
563         8,    8,    8,    8,    8,    8,    8,    8,    8,    8,
564         8,    8,    8,    8,    8,    8,    8,    8,    8,    8,
565         8,    8,    8,    8,    8,   10,   11,   12,   13,   12,
566 
567        12,   14,   15,   12,   16,   17,   12,   18,   12,   19,
568        20,   12,   21,   22,   12,   12,   23,   12,   12,   24,
569        12,    8,    8,    8,    8,    8,    8,   25,   12,   12,
570        26,   12,   12,   12,   27,   12,   12,   28,   12,   29,
571        12,   12,   30,   12,   31,   32,   12,   12,   33,   12,
572        12,   34,   12,    8,    8,    8,    8,    8
573     },
574 
575     {
576         7,    8,    8,    8,    8,    8,    8,    8,    8,    8,
577         8,    8,    8,    8,    8,    8,    8,    8,    8,    8,
578         8,    8,    8,    8,    8,    8,    8,    8,    8,    8,
579         8,    8,   35,    8,    8,    8,    8,    8,    8,    8,
580 
581         8,    8,    8,    8,    8,    8,    8,    8,    8,    8,
582         8,    8,    8,    8,    8,    8,    8,    8,    8,    8,
583         8,    8,    8,    8,    8,   10,   11,   12,   13,   12,
584        12,   14,   15,   12,   16,   17,   12,   18,   12,   19,
585        20,   12,   21,   22,   12,   12,   23,   12,   12,   24,
586        12,   36,    8,    8,    8,    8,    8,   25,   12,   12,
587        26,   12,   12,   12,   27,   12,   12,   28,   12,   29,
588        12,   12,   30,   12,   31,   32,   12,   12,   33,   12,
589        12,   34,   12,    8,    8,    8,    8,    8
590     },
591 
592     {
593         7,   37,   37,   37,   37,   37,   37,   37,   37,   37,
594 
595        38,   37,   37,   37,   37,   37,   37,   37,   37,   37,
596        37,   37,   37,   37,   37,   37,   37,   37,   37,   37,
597        37,   37,   39,   37,   37,   37,   37,   37,   37,   37,
598        37,   37,   37,   37,   37,   37,   37,   37,   37,   37,
599        37,   37,   37,   37,   37,   37,   37,   37,   37,   37,
600        37,   37,   37,   37,   37,   40,   40,   40,   40,   40,
601        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
602        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
603        40,   37,   37,   37,   37,   37,   37,   40,   40,   40,
604        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
605 
606        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
607        40,   40,   40,   37,   37,   37,   37,   37
608     },
609 
610     {
611         7,   37,   37,   37,   37,   37,   37,   37,   37,   37,
612        38,   37,   37,   37,   37,   37,   37,   37,   37,   37,
613        37,   37,   37,   37,   37,   37,   37,   37,   37,   37,
614        37,   37,   39,   37,   37,   37,   37,   37,   37,   37,
615        37,   37,   37,   37,   37,   37,   37,   37,   37,   37,
616        37,   37,   37,   37,   37,   37,   37,   37,   37,   37,
617        37,   37,   37,   37,   37,   40,   40,   40,   40,   40,
618        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
619 
620        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
621        40,   37,   37,   37,   37,   37,   37,   40,   40,   40,
622        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
623        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
624        40,   40,   40,   37,   37,   37,   37,   37
625     },
626 
627     {
628         7,   41,   41,   41,   41,   41,   41,   41,   41,   41,
629        38,   41,   41,   41,   41,   41,   41,   41,   41,   41,
630        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
631        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
632        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
633 
634        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
635        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
636        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
637        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
638        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
639        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
640        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
641        41,   41,   41,   41,   41,   41,   41,   41
642     },
643 
644     {
645         7,   41,   41,   41,   41,   41,   41,   41,   41,   41,
646        38,   41,   41,   41,   41,   41,   41,   41,   41,   41,
647 
648        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
649        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
650        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
651        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
652        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
653        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
654        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
655        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
656        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
657        41,   41,   41,   41,   41,   41,   41,   41,   41,   41,
658 
659        41,   41,   41,   41,   41,   41,   41,   41
660     },
661 
662     {
663        -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,
664        -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,
665        -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,
666        -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,
667        -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,
668        -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,
669        -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,
670        -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,
671        -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,
672 
673        -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,
674        -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,
675        -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7,
676        -7,   -7,   -7,   -7,   -7,   -7,   -7,   -7
677     },
678 
679     {
680         7,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,
681        -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,
682        -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,
683        -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,
684        -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,
685        -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,
686 
687        -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,
688        -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,
689        -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,
690        -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,
691        -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,
692        -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8,
693        -8,   -8,   -8,   -8,   -8,   -8,   -8,   -8
694     },
695 
696     {
697         7,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,
698        -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,
699        -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,
700 
701        -9,   -9,   42,   -9,   -9,   -9,   -9,   -9,   -9,   -9,
702        -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,
703        -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,
704        -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,
705        -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,
706        -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,
707        -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,
708        -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,
709        -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9,
710        -9,   -9,   -9,   -9,   -9,   -9,   -9,   -9
711 
712     },
713 
714     {
715         7,  -10,  -10,  -10,  -10,  -10,  -10,  -10,  -10,  -10,
716       -10,  -10,  -10,  -10,  -10,  -10,  -10,  -10,  -10,  -10,
717       -10,  -10,  -10,  -10,  -10,  -10,  -10,  -10,  -10,  -10,
718       -10,  -10,  -10,  -10,  -10,  -10,  -10,  -10,  -10,  -10,
719       -10,  -10,  -10,  -10,  -10,  -10,  -10,  -10,  -10,  -10,
720       -10,  -10,  -10,  -10,  -10,  -10,  -10,  -10,  -10,  -10,
721       -10,  -10,  -10,  -10,  -10,   43,   43,   43,   43,   43,
722        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
723        43,   43,   44,   43,   43,   43,   43,   43,   43,   43,
724        43,  -10,  -10,  -10,  -10,  -10,  -10,   43,   43,   43,
725 
726        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
727        45,   43,   43,   43,   43,   43,   43,   43,   43,   43,
728        43,   43,   43,  -10,  -10,  -10,  -10,  -10
729     },
730 
731     {
732         7,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,
733       -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,
734       -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,
735       -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,
736       -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,
737       -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,
738       -11,  -11,  -11,  -11,  -11,   43,   43,   43,   43,   46,
739 
740        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
741        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
742        43,  -11,  -11,  -11,  -11,  -11,  -11,   43,   43,   43,
743        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
744        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
745        43,   47,   43,  -11,  -11,  -11,  -11,  -11
746     },
747 
748     {
749         7,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,
750       -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,
751       -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,
752       -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,
753 
754       -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,
755       -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,
756       -12,  -12,  -12,  -12,  -12,   43,   43,   43,   43,   43,
757        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
758        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
759        43,  -12,  -12,  -12,  -12,  -12,  -12,   43,   43,   43,
760        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
761        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
762        43,   43,   43,  -12,  -12,  -12,  -12,  -12
763     },
764 
765     {
766         7,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,
767 
768       -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,
769       -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,
770       -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,
771       -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,
772       -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,
773       -13,  -13,  -13,  -13,  -13,   48,   43,   43,   43,   49,
774        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
775        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
776        43,  -13,  -13,  -13,  -13,  -13,  -13,   43,   43,   43,
777        43,   50,   43,   43,   43,   43,   43,   43,   43,   43,
778 
779        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
780        43,   43,   43,  -13,  -13,  -13,  -13,  -13
781     },
782 
783     {
784         7,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,
785       -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,
786       -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,
787       -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,
788       -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,
789       -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,
790       -14,  -14,  -14,  -14,  -14,   43,   43,   43,   43,   43,
791        43,   43,   51,   43,   43,   43,   43,   43,   43,   43,
792 
793        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
794        43,  -14,  -14,  -14,  -14,  -14,  -14,   43,   43,   43,
795        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
796        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
797        43,   43,   43,  -14,  -14,  -14,  -14,  -14
798     },
799 
800     {
801         7,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,
802       -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,
803       -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,
804       -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,
805       -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,
806 
807       -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,  -15,
808       -15,  -15,  -15,  -15,  -15,   43,   43,   43,   43,   43,
809        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
810        43,   43,   52,   43,   43,   43,   43,   43,   43,   43,
811        53,  -15,  -15,  -15,  -15,  -15,  -15,   43,   43,   43,
812        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
813        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
814        43,   43,   43,  -15,  -15,  -15,  -15,  -15
815     },
816 
817     {
818         7,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,
819       -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,
820 
821       -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,
822       -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,
823       -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,
824       -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,
825       -16,  -16,  -16,  -16,  -16,   43,   43,   43,   43,   43,
826        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
827        43,   43,   43,   43,   43,   43,   43,   43,   43,   54,
828        43,  -16,  -16,  -16,  -16,  -16,  -16,   43,   43,   43,
829        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
830        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
831 
832        43,   43,   43,  -16,  -16,  -16,  -16,  -16
833     },
834 
835     {
836         7,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,
837       -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,
838       -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,
839       -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,
840       -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,
841       -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,
842       -17,  -17,  -17,  -17,  -17,   43,   43,   43,   43,   55,
843        43,   43,   56,   43,   43,   43,   43,   57,   43,   43,
844        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
845 
846        43,  -17,  -17,  -17,  -17,  -17,  -17,   43,   43,   43,
847        43,   58,   43,   43,   43,   43,   43,   43,   43,   43,
848        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
849        43,   43,   43,  -17,  -17,  -17,  -17,  -17
850     },
851 
852     {
853         7,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,
854       -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,
855       -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,
856       -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,
857       -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,
858       -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,
859 
860       -18,  -18,  -18,  -18,  -18,   43,   43,   43,   43,   59,
861        43,   43,   60,   61,   43,   43,   43,   43,   43,   43,
862        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
863        43,  -18,  -18,  -18,  -18,  -18,  -18,   43,   43,   43,
864        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
865        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
866        43,   43,   43,  -18,  -18,  -18,  -18,  -18
867     },
868 
869     {
870         7,  -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,
871       -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,
872       -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,
873 
874       -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,
875       -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,
876       -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,
877       -19,  -19,  -19,  -19,  -19,   43,   43,   43,   43,   43,
878        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
879        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
880        43,  -19,  -19,  -19,  -19,  -19,  -19,   43,   43,   43,
881        43,   43,   43,   43,   62,   43,   43,   43,   43,   43,
882        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
883        43,   43,   43,  -19,  -19,  -19,  -19,  -19
884 
885     },
886 
887     {
888         7,  -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,
889       -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,
890       -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,
891       -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,
892       -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,
893       -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,
894       -20,  -20,  -20,  -20,  -20,   63,   43,   43,   43,   43,
895        43,   43,   43,   64,   43,   43,   43,   43,   43,   43,
896        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
897        43,  -20,  -20,  -20,  -20,  -20,  -20,   65,   43,   43,
898 
899        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
900        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
901        43,   43,   43,  -20,  -20,  -20,  -20,  -20
902     },
903 
904     {
905         7,  -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,
906       -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,
907       -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,
908       -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,
909       -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,
910       -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,
911       -21,  -21,  -21,  -21,  -21,   66,   43,   43,   43,   43,
912 
913        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
914        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
915        43,  -21,  -21,  -21,  -21,  -21,  -21,   43,   43,   43,
916        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
917        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
918        43,   43,   43,  -21,  -21,  -21,  -21,  -21
919     },
920 
921     {
922         7,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,
923       -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,
924       -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,
925       -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,
926 
927       -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,
928       -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,
929       -22,  -22,  -22,  -22,  -22,   43,   43,   43,   43,   67,
930        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
931        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
932        43,  -22,  -22,  -22,  -22,  -22,  -22,   43,   43,   43,
933        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
934        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
935        43,   43,   43,  -22,  -22,  -22,  -22,  -22
936     },
937 
938     {
939         7,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
940 
941       -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
942       -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
943       -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
944       -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
945       -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
946       -23,  -23,  -23,  -23,  -23,   43,   43,   43,   43,   43,
947        43,   43,   43,   43,   43,   43,   43,   43,   43,   68,
948        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
949        43,  -23,  -23,  -23,  -23,  -23,  -23,   43,   43,   43,
950        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
951 
952        43,   69,   43,   43,   43,   43,   43,   43,   43,   43,
953        43,   43,   43,  -23,  -23,  -23,  -23,  -23
954     },
955 
956     {
957         7,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,
958       -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,
959       -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,
960       -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,
961       -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,
962       -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,
963       -24,  -24,  -24,  -24,  -24,   43,   43,   43,   43,   70,
964        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
965 
966        43,   43,   71,   43,   43,   43,   43,   43,   43,   43,
967        43,  -24,  -24,  -24,  -24,  -24,  -24,   43,   43,   43,
968        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
969        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
970        43,   43,   43,  -24,  -24,  -24,  -24,  -24
971     },
972 
973     {
974         7,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,
975       -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,
976       -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,
977       -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,
978       -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,
979 
980       -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,
981       -25,  -25,  -25,  -25,  -25,   43,   43,   43,   43,   43,
982        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
983        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
984        43,  -25,  -25,  -25,  -25,  -25,  -25,   43,   43,   43,
985        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
986        72,   43,   43,   43,   73,   43,   43,   43,   43,   43,
987        43,   43,   43,  -25,  -25,  -25,  -25,  -25
988     },
989 
990     {
991         7,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,
992       -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,
993 
994       -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,
995       -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,
996       -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,
997       -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,
998       -26,  -26,  -26,  -26,  -26,   43,   43,   43,   43,   43,
999        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1000        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1001        43,  -26,  -26,  -26,  -26,  -26,  -26,   74,   43,   43,
1002        43,   75,   43,   43,   43,   43,   43,   43,   43,   43,
1003        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1004 
1005        43,   43,   43,  -26,  -26,  -26,  -26,  -26
1006     },
1007 
1008     {
1009         7,  -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,
1010       -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,
1011       -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,
1012       -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,
1013       -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,
1014       -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,
1015       -27,  -27,  -27,  -27,  -27,   43,   43,   43,   43,   43,
1016        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1017        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1018 
1019        43,  -27,  -27,  -27,  -27,  -27,  -27,   43,   43,   43,
1020        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1021        43,   43,   43,   43,   52,   43,   43,   43,   43,   43,
1022        43,   43,   53,  -27,  -27,  -27,  -27,  -27
1023     },
1024 
1025     {
1026         7,  -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,
1027       -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,
1028       -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,
1029       -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,
1030       -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,
1031       -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,
1032 
1033       -28,  -28,  -28,  -28,  -28,   43,   43,   43,   43,   43,
1034        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1035        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1036        43,  -28,  -28,  -28,  -28,  -28,  -28,   43,   43,   43,
1037        43,   58,   43,   43,   43,   43,   43,   43,   43,   43,
1038        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1039        43,   43,   43,  -28,  -28,  -28,  -28,  -28
1040     },
1041 
1042     {
1043         7,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,
1044       -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,
1045       -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,
1046 
1047       -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,
1048       -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,
1049       -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,
1050       -29,  -29,  -29,  -29,  -29,   43,   43,   43,   43,   43,
1051        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1052        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1053        43,  -29,  -29,  -29,  -29,  -29,  -29,   43,   43,   43,
1054        43,   76,   43,   43,   43,   43,   43,   43,   43,   43,
1055        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1056        43,   43,   43,  -29,  -29,  -29,  -29,  -29
1057 
1058     },
1059 
1060     {
1061         7,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,
1062       -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,
1063       -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,
1064       -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,
1065       -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,
1066       -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,
1067       -30,  -30,  -30,  -30,  -30,   43,   43,   43,   43,   43,
1068        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1069        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1070        43,  -30,  -30,  -30,  -30,  -30,  -30,   65,   43,   43,
1071 
1072        43,   43,   43,   43,   43,   77,   43,   43,   43,   43,
1073        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1074        43,   43,   43,  -30,  -30,  -30,  -30,  -30
1075     },
1076 
1077     {
1078         7,  -31,  -31,  -31,  -31,  -31,  -31,  -31,  -31,  -31,
1079       -31,  -31,  -31,  -31,  -31,  -31,  -31,  -31,  -31,  -31,
1080       -31,  -31,  -31,  -31,  -31,  -31,  -31,  -31,  -31,  -31,
1081       -31,  -31,  -31,  -31,  -31,  -31,  -31,  -31,  -31,  -31,
1082       -31,  -31,  -31,  -31,  -31,  -31,  -31,  -31,  -31,  -31,
1083       -31,  -31,  -31,  -31,  -31,  -31,  -31,  -31,  -31,  -31,
1084       -31,  -31,  -31,  -31,  -31,   43,   43,   43,   43,   43,
1085 
1086        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1087        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1088        43,  -31,  -31,  -31,  -31,  -31,  -31,   78,   43,   43,
1089        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1090        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1091        43,   43,   43,  -31,  -31,  -31,  -31,  -31
1092     },
1093 
1094     {
1095         7,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,
1096       -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,
1097       -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,
1098       -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,
1099 
1100       -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,
1101       -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,
1102       -32,  -32,  -32,  -32,  -32,   43,   43,   43,   43,   43,
1103        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1104        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1105        43,  -32,  -32,  -32,  -32,  -32,  -32,   43,   43,   43,
1106        43,   79,   43,   43,   43,   43,   43,   43,   43,   43,
1107        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1108        43,   43,   43,  -32,  -32,  -32,  -32,  -32
1109     },
1110 
1111     {
1112         7,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,
1113 
1114       -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,
1115       -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,
1116       -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,
1117       -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,
1118       -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,  -33,
1119       -33,  -33,  -33,  -33,  -33,   43,   43,   43,   43,   43,
1120        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1121        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1122        43,  -33,  -33,  -33,  -33,  -33,  -33,   43,   43,   43,
1123        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1124 
1125        43,   69,   43,   43,   43,   43,   43,   43,   43,   43,
1126        43,   43,   43,  -33,  -33,  -33,  -33,  -33
1127     },
1128 
1129     {
1130         7,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,
1131       -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,
1132       -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,
1133       -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,
1134       -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,
1135       -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,  -34,
1136       -34,  -34,  -34,  -34,  -34,   43,   43,   43,   43,   43,
1137        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1138 
1139        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1140        43,  -34,  -34,  -34,  -34,  -34,  -34,   43,   43,   43,
1141        43,   80,   43,   43,   43,   43,   43,   43,   43,   43,
1142        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1143        43,   43,   43,  -34,  -34,  -34,  -34,  -34
1144     },
1145 
1146     {
1147         7,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
1148       -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
1149       -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
1150       -35,  -35,   81,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
1151       -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
1152 
1153       -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
1154       -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
1155       -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
1156       -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
1157       -35,   82,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
1158       -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
1159       -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
1160       -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35
1161     },
1162 
1163     {
1164         7,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
1165       -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
1166 
1167       -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
1168       -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
1169       -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
1170       -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
1171       -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
1172       -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
1173       -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
1174       -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
1175       -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
1176       -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
1177 
1178       -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36
1179     },
1180 
1181     {
1182         7,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,
1183       -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,
1184       -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,
1185       -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,
1186       -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,
1187       -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,
1188       -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,
1189       -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,
1190       -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,
1191 
1192       -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,
1193       -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,
1194       -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37,
1195       -37,  -37,  -37,  -37,  -37,  -37,  -37,  -37
1196     },
1197 
1198     {
1199         7,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,
1200       -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,
1201       -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,
1202       -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,
1203       -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,
1204       -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,
1205 
1206       -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,
1207       -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,
1208       -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,
1209       -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,
1210       -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,
1211       -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,
1212       -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38
1213     },
1214 
1215     {
1216         7,   83,   83,   83,   83,   83,   83,   83,   83,   83,
1217        83,   83,   83,   83,   83,   83,   83,   83,   83,   83,
1218        83,   83,   83,   83,   83,   83,   83,   83,   83,   83,
1219 
1220        83,   83,   84,   83,   83,   83,   83,   83,   83,   83,
1221        83,   83,   83,   83,   83,   83,   83,   83,   83,   83,
1222        83,   83,   83,   83,   83,   83,   83,   83,   83,   83,
1223        83,   83,   83,   83,   83,   85,   85,   85,   85,   85,
1224        85,   85,   85,   85,   85,   85,   85,   85,   85,   85,
1225        85,   85,   85,   85,   85,   85,   85,   85,   85,   85,
1226        85,   83,   83,   83,   83,   83,   83,   85,   85,   85,
1227        85,   85,   85,   85,   85,   85,   85,   85,   85,   85,
1228        85,   85,   85,   85,   85,   85,   85,   85,   85,   85,
1229        85,   85,   85,   83,   83,   83,   83,   83
1230 
1231     },
1232 
1233     {
1234         7,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,
1235       -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,
1236       -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,
1237       -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,
1238       -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,
1239       -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,
1240       -40,  -40,  -40,  -40,  -40,   86,   86,   86,   86,   86,
1241        86,   86,   86,   86,   86,   86,   86,   86,   86,   86,
1242        86,   86,   86,   86,   86,   86,   86,   86,   86,   86,
1243        86,  -40,  -40,  -40,  -40,  -40,  -40,   86,   86,   86,
1244 
1245        86,   86,   86,   86,   86,   86,   86,   86,   86,   86,
1246        86,   86,   86,   86,   86,   86,   86,   86,   86,   86,
1247        86,   86,   86,  -40,  -40,  -40,  -40,  -40
1248     },
1249 
1250     {
1251         7,   87,   87,   87,   87,   87,   87,   87,   87,   87,
1252       -41,   87,   87,   87,   87,   87,   87,   87,   87,   87,
1253        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
1254        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
1255        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
1256        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
1257        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
1258 
1259        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
1260        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
1261        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
1262        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
1263        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
1264        87,   87,   87,   87,   87,   87,   87,   87
1265     },
1266 
1267     {
1268         7,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,
1269       -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,
1270       -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,
1271       -42,  -42,   42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,
1272 
1273       -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,
1274       -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,
1275       -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,
1276       -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,
1277       -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,
1278       -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,
1279       -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,
1280       -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42,
1281       -42,  -42,  -42,  -42,  -42,  -42,  -42,  -42
1282     },
1283 
1284     {
1285         7,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,
1286 
1287       -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,
1288       -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,
1289       -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,
1290       -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,
1291       -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,
1292       -43,  -43,  -43,  -43,  -43,   43,   43,   43,   43,   43,
1293        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1294        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1295        43,  -43,  -43,  -43,  -43,  -43,  -43,   43,   43,   43,
1296        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1297 
1298        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1299        43,   43,   43,  -43,  -43,  -43,  -43,  -43
1300     },
1301 
1302     {
1303         7,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,
1304       -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,
1305       -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,
1306       -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,
1307       -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,
1308       -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,
1309       -44,  -44,  -44,  -44,  -44,   43,   43,   88,   43,   43,
1310        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1311 
1312        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1313        43,  -44,  -44,  -44,  -44,  -44,  -44,   43,   43,   43,
1314        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1315        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1316        43,   43,   43,  -44,  -44,  -44,  -44,  -44
1317     },
1318 
1319     {
1320         7,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,
1321       -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,
1322       -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,
1323       -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,
1324       -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,
1325 
1326       -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,
1327       -45,  -45,  -45,  -45,  -45,   43,   43,   43,   43,   43,
1328        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1329        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1330        43,  -45,  -45,  -45,  -45,  -45,  -45,   43,   43,   43,
1331        43,   43,   43,   89,   43,   43,   43,   43,   43,   43,
1332        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1333        43,   43,   43,  -45,  -45,  -45,  -45,  -45
1334     },
1335 
1336     {
1337         7,  -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,
1338       -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,
1339 
1340       -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,
1341       -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,
1342       -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,
1343       -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,
1344       -46,  -46,  -46,  -46,  -46,   90,   43,   43,   43,   43,
1345        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1346        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1347        43,  -46,  -46,  -46,  -46,  -46,  -46,   43,   43,   43,
1348        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1349        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1350 
1351        43,   43,   43,  -46,  -46,  -46,  -46,  -46
1352     },
1353 
1354     {
1355         7,  -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,
1356       -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,
1357       -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,
1358       -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,
1359       -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,
1360       -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,
1361       -47,  -47,  -47,  -47,  -47,   43,   43,   43,   43,   43,
1362        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1363        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1364 
1365        43,  -47,  -47,  -47,  -47,  -47,  -47,   43,   43,   43,
1366        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1367        43,   43,   43,   43,   43,   43,   91,   43,   43,   43,
1368        43,   43,   43,  -47,  -47,  -47,  -47,  -47
1369     },
1370 
1371     {
1372         7,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,
1373       -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,
1374       -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,
1375       -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,
1376       -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,
1377       -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,
1378 
1379       -48,  -48,  -48,  -48,  -48,   43,   43,   43,   43,   43,
1380        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1381        43,   43,   43,   43,   43,   43,   43,   43,   43,   92,
1382        43,  -48,  -48,  -48,  -48,  -48,  -48,   43,   43,   43,
1383        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1384        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1385        43,   43,   43,  -48,  -48,  -48,  -48,  -48
1386     },
1387 
1388     {
1389         7,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,
1390       -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,
1391       -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,
1392 
1393       -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,
1394       -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,
1395       -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,
1396       -49,  -49,  -49,  -49,  -49,   43,   43,   43,   43,   43,
1397        43,   93,   43,   43,   43,   43,   43,   43,   43,   43,
1398        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1399        43,  -49,  -49,  -49,  -49,  -49,  -49,   43,   43,   43,
1400        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1401        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1402        43,   43,   43,  -49,  -49,  -49,  -49,  -49
1403 
1404     },
1405 
1406     {
1407         7,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,
1408       -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,
1409       -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,
1410       -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,
1411       -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,
1412       -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,
1413       -50,  -50,  -50,  -50,  -50,   43,   43,   43,   43,   43,
1414        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1415        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1416        43,  -50,  -50,  -50,  -50,  -50,  -50,   43,   43,   43,
1417 
1418        43,   43,   43,   94,   43,   43,   43,   43,   43,   43,
1419        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1420        43,   43,   43,  -50,  -50,  -50,  -50,  -50
1421     },
1422 
1423     {
1424         7,  -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,
1425       -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,
1426       -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,
1427       -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,
1428       -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,
1429       -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,
1430       -51,  -51,  -51,  -51,  -51,   43,   43,   43,   43,   43,
1431 
1432        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1433        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1434        95,  -51,  -51,  -51,  -51,  -51,  -51,   43,   43,   43,
1435        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1436        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1437        43,   43,   43,  -51,  -51,  -51,  -51,  -51
1438     },
1439 
1440     {
1441         7,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,
1442       -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,
1443       -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,
1444       -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,
1445 
1446       -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,
1447       -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,
1448       -52,  -52,  -52,  -52,  -52,   43,   43,   43,   43,   43,
1449        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1450        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1451        43,  -52,  -52,  -52,  -52,  -52,  -52,   43,   43,   43,
1452        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1453        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1454        43,   43,   43,  -52,  -52,  -52,  -52,  -52
1455     },
1456 
1457     {
1458         7,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,
1459 
1460       -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,
1461       -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,
1462       -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,
1463       -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,
1464       -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,
1465       -53,  -53,  -53,  -53,  -53,   43,   43,   43,   43,   43,
1466        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1467        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1468        43,  -53,  -53,  -53,  -53,  -53,  -53,   43,   43,   43,
1469        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1470 
1471        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1472        43,   43,   43,  -53,  -53,  -53,  -53,  -53
1473     },
1474 
1475     {
1476         7,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,
1477       -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,
1478       -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,
1479       -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,
1480       -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,
1481       -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,
1482       -54,  -54,  -54,  -54,  -54,   43,   43,   43,   43,   43,
1483        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1484 
1485        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1486        43,  -54,  -54,  -54,  -54,  -54,  -54,   43,   43,   43,
1487        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1488        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1489        43,   43,   43,  -54,  -54,  -54,  -54,  -54
1490     },
1491 
1492     {
1493         7,  -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,
1494       -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,
1495       -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,
1496       -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,
1497       -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,
1498 
1499       -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,  -55,
1500       -55,  -55,  -55,  -55,  -55,   43,   43,   43,   43,   43,
1501        43,   43,   43,   43,   43,   43,   96,   43,   43,   43,
1502        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1503        43,  -55,  -55,  -55,  -55,  -55,  -55,   43,   43,   43,
1504        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1505        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1506        43,   43,   43,  -55,  -55,  -55,  -55,  -55
1507     },
1508 
1509     {
1510         7,  -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,
1511       -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,
1512 
1513       -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,
1514       -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,
1515       -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,
1516       -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,  -56,
1517       -56,  -56,  -56,  -56,  -56,   43,   43,   43,   43,   43,
1518        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1519        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1520        97,  -56,  -56,  -56,  -56,  -56,  -56,   43,   43,   43,
1521        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1522        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1523 
1524        43,   43,   43,  -56,  -56,  -56,  -56,  -56
1525     },
1526 
1527     {
1528         7,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,
1529       -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,
1530       -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,
1531       -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,
1532       -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,
1533       -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,
1534       -57,  -57,  -57,  -57,  -57,   43,   43,   43,   43,   43,
1535        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1536        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1537 
1538        43,  -57,  -57,  -57,  -57,  -57,  -57,   43,   43,   43,
1539        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1540        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1541        43,   43,   43,  -57,  -57,  -57,  -57,  -57
1542     },
1543 
1544     {
1545         7,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,
1546       -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,
1547       -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,
1548       -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,
1549       -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,
1550       -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,
1551 
1552       -58,  -58,  -58,  -58,  -58,   43,   43,   43,   43,   43,
1553        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1554        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1555        43,  -58,  -58,  -58,  -58,  -58,  -58,   43,   43,   43,
1556        43,   43,   43,   43,   43,   43,   43,   43,   98,   43,
1557        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1558        43,   43,   43,  -58,  -58,  -58,  -58,  -58
1559     },
1560 
1561     {
1562         7,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,
1563       -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,
1564       -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,
1565 
1566       -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,
1567       -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,
1568       -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,
1569       -59,  -59,  -59,  -59,  -59,   43,   43,   43,   43,   43,
1570        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1571        43,   43,   43,   43,   99,   43,   43,   43,   43,   43,
1572        43,  -59,  -59,  -59,  -59,  -59,  -59,   43,   43,   43,
1573        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1574        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1575        43,   43,   43,  -59,  -59,  -59,  -59,  -59
1576 
1577     },
1578 
1579     {
1580         7,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,
1581       -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,
1582       -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,
1583       -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,
1584       -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,
1585       -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,
1586       -60,  -60,  -60,  -60,  -60,   43,   43,   43,   43,   43,
1587        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1588        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1589       100,  -60,  -60,  -60,  -60,  -60,  -60,   43,   43,   43,
1590 
1591        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1592        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1593        43,   43,   43,  -60,  -60,  -60,  -60,  -60
1594     },
1595 
1596     {
1597         7,  -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,
1598       -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,
1599       -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,
1600       -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,
1601       -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,
1602       -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,
1603       -61,  -61,  -61,  -61,  -61,   43,   43,   43,   43,   43,
1604 
1605        43,   43,   43,   43,   43,   43,   43,   43,  101,   43,
1606        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1607        43,  -61,  -61,  -61,  -61,  -61,  -61,   43,   43,   43,
1608        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1609        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1610        43,   43,   43,  -61,  -61,  -61,  -61,  -61
1611     },
1612 
1613     {
1614         7,  -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,
1615       -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,
1616       -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,
1617       -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,
1618 
1619       -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,
1620       -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,
1621       -62,  -62,  -62,  -62,  -62,   43,   43,   43,   43,   43,
1622        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1623        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1624        43,  -62,  -62,  -62,  -62,  -62,  -62,   43,   43,   43,
1625        43,   43,   43,   43,   43,   43,   43,   43,   43,  102,
1626        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1627        43,   43,   43,  -62,  -62,  -62,  -62,  -62
1628     },
1629 
1630     {
1631         7,  -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,
1632 
1633       -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,
1634       -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,
1635       -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,
1636       -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,
1637       -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,
1638       -63,  -63,  -63,  -63,  -63,   43,   43,   43,   43,   43,
1639        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1640        43,   43,   43,  103,   43,   43,   43,   43,   43,   43,
1641        43,  -63,  -63,  -63,  -63,  -63,  -63,   43,   43,   43,
1642        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1643 
1644        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1645        43,   43,   43,  -63,  -63,  -63,  -63,  -63
1646     },
1647 
1648     {
1649         7,  -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,
1650       -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,
1651       -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,
1652       -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,
1653       -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,
1654       -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,
1655       -64,  -64,  -64,  -64,  -64,   43,   43,   43,   43,   43,
1656        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1657 
1658        43,   43,   43,   43,   43,   43,   43,   43,  104,   43,
1659        43,  -64,  -64,  -64,  -64,  -64,  -64,   43,   43,   43,
1660        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1661        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1662        43,   43,   43,  -64,  -64,  -64,  -64,  -64
1663     },
1664 
1665     {
1666         7,  -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,
1667       -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,
1668       -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,
1669       -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,
1670       -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,
1671 
1672       -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,
1673       -65,  -65,  -65,  -65,  -65,   43,   43,   43,   43,   43,
1674        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1675        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1676        43,  -65,  -65,  -65,  -65,  -65,  -65,   43,   43,   43,
1677        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1678        43,   43,   43,   43,   43,  105,   43,   43,   43,   43,
1679        43,   43,   43,  -65,  -65,  -65,  -65,  -65
1680     },
1681 
1682     {
1683         7,  -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,
1684       -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,
1685 
1686       -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,
1687       -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,
1688       -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,
1689       -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,
1690       -66,  -66,  -66,  -66,  -66,   43,   43,   43,  106,   43,
1691        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1692        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1693        43,  -66,  -66,  -66,  -66,  -66,  -66,   43,   43,   43,
1694        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1695        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1696 
1697        43,   43,   43,  -66,  -66,  -66,  -66,  -66
1698     },
1699 
1700     {
1701         7,  -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,
1702       -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,
1703       -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,
1704       -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,
1705       -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,
1706       -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,
1707       -67,  -67,  -67,  -67,  -67,   43,   43,  107,   43,   43,
1708        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1709        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1710 
1711        43,  -67,  -67,  -67,  -67,  -67,  -67,   43,   43,   43,
1712        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1713        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1714        43,   43,   43,  -67,  -67,  -67,  -67,  -67
1715     },
1716 
1717     {
1718         7,  -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,
1719       -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,
1720       -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,
1721       -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,
1722       -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,
1723       -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,
1724 
1725       -68,  -68,  -68,  -68,  -68,   43,   43,   43,   43,   43,
1726        43,   43,   43,   43,   43,   43,  108,   43,   43,   43,
1727        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1728        43,  -68,  -68,  -68,  -68,  -68,  -68,   43,   43,   43,
1729        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1730        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1731        43,   43,   43,  -68,  -68,  -68,  -68,  -68
1732     },
1733 
1734     {
1735         7,  -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,
1736       -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,
1737       -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,
1738 
1739       -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,
1740       -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,
1741       -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,
1742       -69,  -69,  -69,  -69,  -69,   43,   43,   43,   43,   43,
1743        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1744        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1745        43,  -69,  -69,  -69,  -69,  -69,  -69,   43,   43,   43,
1746        43,   43,   43,   43,   43,   43,   43,   43,  109,   43,
1747        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1748        43,   43,   43,  -69,  -69,  -69,  -69,  -69
1749 
1750     },
1751 
1752     {
1753         7,  -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,
1754       -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,
1755       -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,
1756       -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,
1757       -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,
1758       -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,
1759       -70,  -70,  -70,  -70,  -70,  110,   43,   43,   43,   43,
1760        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1761        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1762        43,  -70,  -70,  -70,  -70,  -70,  -70,   43,   43,   43,
1763 
1764        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1765        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1766        43,   43,   43,  -70,  -70,  -70,  -70,  -70
1767     },
1768 
1769     {
1770         7,  -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,
1771       -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,
1772       -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,
1773       -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,
1774       -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,
1775       -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,
1776       -71,  -71,  -71,  -71,  -71,   43,   43,   43,   43,   43,
1777 
1778        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1779        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1780        43,  -71,  -71,  -71,  -71,  -71,  -71,   43,   43,   43,
1781        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1782        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1783        43,   43,   43,  -71,  -71,  -71,  -71,  -71
1784     },
1785 
1786     {
1787         7,  -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,
1788       -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,
1789       -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,
1790       -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,
1791 
1792       -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,
1793       -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,
1794       -72,  -72,  -72,  -72,  -72,   43,   43,   43,   43,   43,
1795        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1796        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1797        43,  -72,  -72,  -72,  -72,  -72,  -72,   43,   43,   43,
1798        43,   43,   43,  111,   43,   43,   43,   43,   43,   43,
1799        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1800        43,   43,   43,  -72,  -72,  -72,  -72,  -72
1801     },
1802 
1803     {
1804         7,  -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,
1805 
1806       -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,
1807       -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,
1808       -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,
1809       -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,
1810       -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,
1811       -73,  -73,  -73,  -73,  -73,   43,   43,   43,   43,   43,
1812        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1813        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1814        43,  -73,  -73,  -73,  -73,  -73,  -73,   43,   43,  112,
1815        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1816 
1817        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1818        43,   43,   43,  -73,  -73,  -73,  -73,  -73
1819     },
1820 
1821     {
1822         7,  -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,
1823       -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,
1824       -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,
1825       -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,
1826       -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,
1827       -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,
1828       -74,  -74,  -74,  -74,  -74,   43,   43,   43,   43,   43,
1829        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1830 
1831        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1832        43,  -74,  -74,  -74,  -74,  -74,  -74,   43,   43,   43,
1833        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1834        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1835        43,  113,   43,  -74,  -74,  -74,  -74,  -74
1836     },
1837 
1838     {
1839         7,  -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,
1840       -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,
1841       -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,
1842       -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,
1843       -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,
1844 
1845       -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,
1846       -75,  -75,  -75,  -75,  -75,   43,   43,   43,   43,   43,
1847        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1848        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1849        43,  -75,  -75,  -75,  -75,  -75,  -75,   43,   43,   43,
1850        43,   43,   43,  114,   43,   43,   43,   43,   43,   43,
1851        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1852        43,   43,   43,  -75,  -75,  -75,  -75,  -75
1853     },
1854 
1855     {
1856         7,  -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,
1857       -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,
1858 
1859       -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,
1860       -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,
1861       -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,
1862       -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,
1863       -76,  -76,  -76,  -76,  -76,   43,   43,   43,   43,   43,
1864        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1865        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1866        43,  -76,  -76,  -76,  -76,  -76,  -76,   43,   43,   43,
1867        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1868        43,   43,   43,   43,   43,   43,  115,   43,   43,   43,
1869 
1870        43,   43,   43,  -76,  -76,  -76,  -76,  -76
1871     },
1872 
1873     {
1874         7,  -77,  -77,  -77,  -77,  -77,  -77,  -77,  -77,  -77,
1875       -77,  -77,  -77,  -77,  -77,  -77,  -77,  -77,  -77,  -77,
1876       -77,  -77,  -77,  -77,  -77,  -77,  -77,  -77,  -77,  -77,
1877       -77,  -77,  -77,  -77,  -77,  -77,  -77,  -77,  -77,  -77,
1878       -77,  -77,  -77,  -77,  -77,  -77,  -77,  -77,  -77,  -77,
1879       -77,  -77,  -77,  -77,  -77,  -77,  -77,  -77,  -77,  -77,
1880       -77,  -77,  -77,  -77,  -77,   43,   43,   43,   43,   43,
1881        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1882        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1883 
1884        43,  -77,  -77,  -77,  -77,  -77,  -77,   43,   43,   43,
1885        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1886        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1887       116,   43,   43,  -77,  -77,  -77,  -77,  -77
1888     },
1889 
1890     {
1891         7,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,
1892       -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,
1893       -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,
1894       -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,
1895       -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,
1896       -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,
1897 
1898       -78,  -78,  -78,  -78,  -78,   43,   43,   43,   43,   43,
1899        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1900        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1901        43,  -78,  -78,  -78,  -78,  -78,  -78,   43,   43,   43,
1902       117,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1903        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1904        43,   43,   43,  -78,  -78,  -78,  -78,  -78
1905     },
1906 
1907     {
1908         7,  -79,  -79,  -79,  -79,  -79,  -79,  -79,  -79,  -79,
1909       -79,  -79,  -79,  -79,  -79,  -79,  -79,  -79,  -79,  -79,
1910       -79,  -79,  -79,  -79,  -79,  -79,  -79,  -79,  -79,  -79,
1911 
1912       -79,  -79,  -79,  -79,  -79,  -79,  -79,  -79,  -79,  -79,
1913       -79,  -79,  -79,  -79,  -79,  -79,  -79,  -79,  -79,  -79,
1914       -79,  -79,  -79,  -79,  -79,  -79,  -79,  -79,  -79,  -79,
1915       -79,  -79,  -79,  -79,  -79,   43,   43,   43,   43,   43,
1916        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1917        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1918        43,  -79,  -79,  -79,  -79,  -79,  -79,   43,   43,  118,
1919        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1920        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1921        43,   43,   43,  -79,  -79,  -79,  -79,  -79
1922 
1923     },
1924 
1925     {
1926         7,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,
1927       -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,
1928       -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,
1929       -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,
1930       -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,
1931       -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,
1932       -80,  -80,  -80,  -80,  -80,   43,   43,   43,   43,   43,
1933        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1934        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1935        43,  -80,  -80,  -80,  -80,  -80,  -80,  119,   43,   43,
1936 
1937        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1938        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
1939        43,   43,   43,  -80,  -80,  -80,  -80,  -80
1940     },
1941 
1942     {
1943         7,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,
1944       -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,
1945       -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,
1946       -81,  -81,   81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,
1947       -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,
1948       -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,
1949       -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,
1950 
1951       -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,
1952       -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,
1953       -81,   82,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,
1954       -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,
1955       -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81,
1956       -81,  -81,  -81,  -81,  -81,  -81,  -81,  -81
1957     },
1958 
1959     {
1960         7,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,
1961       -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,
1962       -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,
1963       -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,
1964 
1965       -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,
1966       -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,
1967       -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,
1968       -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,
1969       -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,
1970       -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,
1971       -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,
1972       -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,
1973       -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82
1974     },
1975 
1976     {
1977         7,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,
1978 
1979       -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,
1980       -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,
1981       -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,
1982       -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,
1983       -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,
1984       -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,
1985       -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,
1986       -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,
1987       -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,
1988       -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,
1989 
1990       -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,
1991       -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83
1992     },
1993 
1994     {
1995         7,   83,   83,   83,   83,   83,   83,   83,   83,   83,
1996        83,   83,   83,   83,   83,   83,   83,   83,   83,   83,
1997        83,   83,   83,   83,   83,   83,   83,   83,   83,   83,
1998        83,   83,   84,   83,   83,   83,   83,   83,   83,   83,
1999        83,   83,   83,   83,   83,   83,   83,   83,   83,   83,
2000        83,   83,   83,   83,   83,   83,   83,   83,   83,   83,
2001        83,   83,   83,   83,   83,   85,   85,   85,   85,   85,
2002        85,   85,   85,   85,   85,   85,   85,   85,   85,   85,
2003 
2004        85,   85,   85,   85,   85,   85,   85,   85,   85,   85,
2005        85,   83,   83,   83,   83,   83,   83,   85,   85,   85,
2006        85,   85,   85,   85,   85,   85,   85,   85,   85,   85,
2007        85,   85,   85,   85,   85,   85,   85,   85,   85,   85,
2008        85,   85,   85,   83,   83,   83,   83,   83
2009     },
2010 
2011     {
2012         7,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,
2013       -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,
2014       -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,
2015       -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,
2016       -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,
2017 
2018       -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,
2019       -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,
2020       -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,
2021       -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,
2022       -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,
2023       -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,
2024       -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,
2025       -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85
2026     },
2027 
2028     {
2029         7,  -86,  -86,  -86,  -86,  -86,  -86,  -86,  -86,  -86,
2030       -86,  -86,  -86,  -86,  -86,  -86,  -86,  -86,  -86,  -86,
2031 
2032       -86,  -86,  -86,  -86,  -86,  -86,  -86,  -86,  -86,  -86,
2033       -86,  -86,  -86,  -86,  -86,  -86,  -86,  -86,  -86,  -86,
2034       -86,  -86,  -86,  -86,  -86,  -86,  -86,  -86,  -86,  -86,
2035       -86,  -86,  -86,  -86,  -86,  -86,  -86,  -86,  -86,  -86,
2036       -86,  -86,  -86,  -86,  -86,   86,   86,   86,   86,   86,
2037        86,   86,   86,   86,   86,   86,   86,   86,   86,   86,
2038        86,   86,   86,   86,   86,   86,   86,   86,   86,   86,
2039        86,  -86,  -86,  -86,  -86,  -86,  -86,   86,   86,   86,
2040        86,   86,   86,   86,   86,   86,   86,   86,   86,   86,
2041        86,   86,   86,   86,   86,   86,   86,   86,   86,   86,
2042 
2043        86,   86,   86,  -86,  -86,  -86,  -86,  -86
2044     },
2045 
2046     {
2047         7,   87,   87,   87,   87,   87,   87,   87,   87,   87,
2048       -87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
2049        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
2050        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
2051        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
2052        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
2053        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
2054        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
2055        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
2056 
2057        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
2058        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
2059        87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
2060        87,   87,   87,   87,   87,   87,   87,   87
2061     },
2062 
2063     {
2064         7,  -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,
2065       -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,
2066       -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,
2067       -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,
2068       -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,
2069       -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,
2070 
2071       -88,  -88,  -88,  -88,  -88,   43,   43,   43,   43,   43,
2072        43,   43,   43,   43,   43,   43,   43,  120,   43,   43,
2073        43,   43,   43,  121,   43,   43,   43,   43,   43,   43,
2074        43,  -88,  -88,  -88,  -88,  -88,  -88,   43,   43,   43,
2075        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2076        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2077        43,   43,   43,  -88,  -88,  -88,  -88,  -88
2078     },
2079 
2080     {
2081         7,  -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,
2082       -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,
2083       -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,
2084 
2085       -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,
2086       -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,
2087       -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,
2088       -89,  -89,  -89,  -89,  -89,   43,   43,   43,   43,   43,
2089        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2090        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2091        43,  -89,  -89,  -89,  -89,  -89,  -89,   43,   43,   43,
2092        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2093        43,   43,   43,   43,   43,  122,   43,   43,   43,   43,
2094        43,   43,   43,  -89,  -89,  -89,  -89,  -89
2095 
2096     },
2097 
2098     {
2099         7,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,
2100       -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,
2101       -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,
2102       -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,
2103       -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,
2104       -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,
2105       -90,  -90,  -90,  -90,  -90,   43,   43,   43,   43,   43,
2106        43,   43,   43,   43,   43,   43,   43,  123,   43,   43,
2107        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2108        43,  -90,  -90,  -90,  -90,  -90,  -90,   43,   43,   43,
2109 
2110        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2111        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2112        43,   43,   43,  -90,  -90,  -90,  -90,  -90
2113     },
2114 
2115     {
2116         7,  -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,
2117       -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,
2118       -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,
2119       -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,
2120       -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,
2121       -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,
2122       -91,  -91,  -91,  -91,  -91,   43,   43,   43,   43,   43,
2123 
2124        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2125        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2126        43,  -91,  -91,  -91,  -91,  -91,  -91,   43,   43,   43,
2127        43,  124,   43,   43,   43,   43,   43,   43,   43,   43,
2128        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2129        43,   43,   43,  -91,  -91,  -91,  -91,  -91
2130     },
2131 
2132     {
2133         7,  -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,
2134       -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,
2135       -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,
2136       -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,
2137 
2138       -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,
2139       -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,
2140       -92,  -92,  -92,  -92,  -92,   43,   43,   43,   43,   43,
2141        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2142        43,   43,   43,  125,   43,   43,   43,   43,   43,   43,
2143        43,  -92,  -92,  -92,  -92,  -92,  -92,   43,   43,   43,
2144        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2145        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2146        43,   43,   43,  -92,  -92,  -92,  -92,  -92
2147     },
2148 
2149     {
2150         7,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,
2151 
2152       -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,
2153       -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,
2154       -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,
2155       -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,
2156       -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,
2157       -93,  -93,  -93,  -93,  -93,   43,   43,   43,   43,   43,
2158        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2159        43,   43,  126,   43,   43,   43,   43,   43,   43,   43,
2160        43,  -93,  -93,  -93,  -93,  -93,  -93,   43,   43,   43,
2161        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2162 
2163        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2164        43,   43,   43,  -93,  -93,  -93,  -93,  -93
2165     },
2166 
2167     {
2168         7,  -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,
2169       -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,
2170       -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,
2171       -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,
2172       -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,
2173       -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,
2174       -94,  -94,  -94,  -94,  -94,   43,   43,   43,   43,   43,
2175        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2176 
2177        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2178        43,  -94,  -94,  -94,  -94,  -94,  -94,   43,   43,   43,
2179        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2180        43,   43,   43,   43,  127,   43,   43,   43,   43,   43,
2181        43,   43,   43,  -94,  -94,  -94,  -94,  -94
2182     },
2183 
2184     {
2185         7,  -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,
2186       -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,
2187       -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,
2188       -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,
2189       -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,
2190 
2191       -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,
2192       -95,  -95,  -95,  -95,  -95,   43,   43,   43,   43,   43,
2193        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2194        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2195        43,  -95,  -95,  -95,  -95,  -95,  -95,   43,   43,   43,
2196        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2197        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2198        43,   43,   43,  -95,  -95,  -95,  -95,  -95
2199     },
2200 
2201     {
2202         7,  -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,
2203       -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,
2204 
2205       -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,
2206       -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,
2207       -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,
2208       -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,
2209       -96,  -96,  -96,  -96,  -96,   43,   43,   43,   43,   43,
2210        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2211        43,   43,   43,   43,   43,   43,  128,   43,   43,   43,
2212        43,  -96,  -96,  -96,  -96,  -96,  -96,   43,   43,   43,
2213        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2214        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2215 
2216        43,   43,   43,  -96,  -96,  -96,  -96,  -96
2217     },
2218 
2219     {
2220         7,  -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,
2221       -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,
2222       -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,
2223       -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,
2224       -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,
2225       -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,
2226       -97,  -97,  -97,  -97,  -97,   43,   43,   43,   43,   43,
2227        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2228        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2229 
2230        43,  -97,  -97,  -97,  -97,  -97,  -97,   43,   43,   43,
2231        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2232        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2233        43,   43,   43,  -97,  -97,  -97,  -97,  -97
2234     },
2235 
2236     {
2237         7,  -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,
2238       -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,
2239       -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,
2240       -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,
2241       -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,
2242       -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,
2243 
2244       -98,  -98,  -98,  -98,  -98,   43,   43,   43,   43,   43,
2245        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2246        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2247        43,  -98,  -98,  -98,  -98,  -98,  -98,   43,   43,   43,
2248        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2249        43,   43,   43,   43,   43,   43,   43,   43,  129,   43,
2250        43,   43,   43,  -98,  -98,  -98,  -98,  -98
2251     },
2252 
2253     {
2254         7,  -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,
2255       -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,
2256       -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,
2257 
2258       -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,
2259       -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,
2260       -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,
2261       -99,  -99,  -99,  -99,  -99,   43,   43,   43,   43,  130,
2262        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2263        43,   43,  131,   43,   43,   43,   43,   43,   43,   43,
2264        43,  -99,  -99,  -99,  -99,  -99,  -99,   43,   43,   43,
2265        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2266        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2267        43,   43,   43,  -99,  -99,  -99,  -99,  -99
2268 
2269     },
2270 
2271     {
2272         7, -100, -100, -100, -100, -100, -100, -100, -100, -100,
2273      -100, -100, -100, -100, -100, -100, -100, -100, -100, -100,
2274      -100, -100, -100, -100, -100, -100, -100, -100, -100, -100,
2275      -100, -100, -100, -100, -100, -100, -100, -100, -100, -100,
2276      -100, -100, -100, -100, -100, -100, -100, -100, -100, -100,
2277      -100, -100, -100, -100, -100, -100, -100, -100, -100, -100,
2278      -100, -100, -100, -100, -100,   43,   43,   43,   43,   43,
2279        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2280        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2281        43, -100, -100, -100, -100, -100, -100,   43,   43,   43,
2282 
2283        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2284        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2285        43,   43,   43, -100, -100, -100, -100, -100
2286     },
2287 
2288     {
2289         7, -101, -101, -101, -101, -101, -101, -101, -101, -101,
2290      -101, -101, -101, -101, -101, -101, -101, -101, -101, -101,
2291      -101, -101, -101, -101, -101, -101, -101, -101, -101, -101,
2292      -101, -101, -101, -101, -101, -101, -101, -101, -101, -101,
2293      -101, -101, -101, -101, -101, -101, -101, -101, -101, -101,
2294      -101, -101, -101, -101, -101, -101, -101, -101, -101, -101,
2295      -101, -101, -101, -101, -101,   43,   43,   43,   43,   43,
2296 
2297        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2298        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2299        43, -101, -101, -101, -101, -101, -101,   43,   43,   43,
2300        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2301        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2302        43,   43,   43, -101, -101, -101, -101, -101
2303     },
2304 
2305     {
2306         7, -102, -102, -102, -102, -102, -102, -102, -102, -102,
2307      -102, -102, -102, -102, -102, -102, -102, -102, -102, -102,
2308      -102, -102, -102, -102, -102, -102, -102, -102, -102, -102,
2309      -102, -102, -102, -102, -102, -102, -102, -102, -102, -102,
2310 
2311      -102, -102, -102, -102, -102, -102, -102, -102, -102, -102,
2312      -102, -102, -102, -102, -102, -102, -102, -102, -102, -102,
2313      -102, -102, -102, -102, -102,   43,   43,   43,   43,   43,
2314        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2315        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2316        43, -102, -102, -102, -102, -102, -102,   43,   43,   43,
2317        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2318        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2319        43,   43,   43, -102, -102, -102, -102, -102
2320     },
2321 
2322     {
2323         7, -103, -103, -103, -103, -103, -103, -103, -103, -103,
2324 
2325      -103, -103, -103, -103, -103, -103, -103, -103, -103, -103,
2326      -103, -103, -103, -103, -103, -103, -103, -103, -103, -103,
2327      -103, -103, -103, -103, -103, -103, -103, -103, -103, -103,
2328      -103, -103, -103, -103, -103, -103, -103, -103, -103, -103,
2329      -103, -103, -103, -103, -103, -103, -103, -103, -103, -103,
2330      -103, -103, -103, -103, -103,   43,   43,  132,   43,   43,
2331        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2332        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2333        43, -103, -103, -103, -103, -103, -103,   43,   43,   43,
2334        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2335 
2336        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2337        43,   43,   43, -103, -103, -103, -103, -103
2338     },
2339 
2340     {
2341         7, -104, -104, -104, -104, -104, -104, -104, -104, -104,
2342      -104, -104, -104, -104, -104, -104, -104, -104, -104, -104,
2343      -104, -104, -104, -104, -104, -104, -104, -104, -104, -104,
2344      -104, -104, -104, -104, -104, -104, -104, -104, -104, -104,
2345      -104, -104, -104, -104, -104, -104, -104, -104, -104, -104,
2346      -104, -104, -104, -104, -104, -104, -104, -104, -104, -104,
2347      -104, -104, -104, -104, -104,   43,   43,   43,   43,  133,
2348        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2349 
2350        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2351        43, -104, -104, -104, -104, -104, -104,   43,   43,   43,
2352        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2353        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2354        43,   43,   43, -104, -104, -104, -104, -104
2355     },
2356 
2357     {
2358         7, -105, -105, -105, -105, -105, -105, -105, -105, -105,
2359      -105, -105, -105, -105, -105, -105, -105, -105, -105, -105,
2360      -105, -105, -105, -105, -105, -105, -105, -105, -105, -105,
2361      -105, -105, -105, -105, -105, -105, -105, -105, -105, -105,
2362      -105, -105, -105, -105, -105, -105, -105, -105, -105, -105,
2363 
2364      -105, -105, -105, -105, -105, -105, -105, -105, -105, -105,
2365      -105, -105, -105, -105, -105,   43,   43,   43,   43,   43,
2366        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2367        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2368        43, -105, -105, -105, -105, -105, -105,   43,   43,  134,
2369        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2370        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2371        43,   43,   43, -105, -105, -105, -105, -105
2372     },
2373 
2374     {
2375         7, -106, -106, -106, -106, -106, -106, -106, -106, -106,
2376      -106, -106, -106, -106, -106, -106, -106, -106, -106, -106,
2377 
2378      -106, -106, -106, -106, -106, -106, -106, -106, -106, -106,
2379      -106, -106, -106, -106, -106, -106, -106, -106, -106, -106,
2380      -106, -106, -106, -106, -106, -106, -106, -106, -106, -106,
2381      -106, -106, -106, -106, -106, -106, -106, -106, -106, -106,
2382      -106, -106, -106, -106, -106,   43,   43,   43,   43,   43,
2383        43,   43,   43,  135,   43,   43,   43,   43,   43,   43,
2384        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2385        43, -106, -106, -106, -106, -106, -106,   43,   43,   43,
2386        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2387        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2388 
2389        43,   43,   43, -106, -106, -106, -106, -106
2390     },
2391 
2392     {
2393         7, -107, -107, -107, -107, -107, -107, -107, -107, -107,
2394      -107, -107, -107, -107, -107, -107, -107, -107, -107, -107,
2395      -107, -107, -107, -107, -107, -107, -107, -107, -107, -107,
2396      -107, -107, -107, -107, -107, -107, -107, -107, -107, -107,
2397      -107, -107, -107, -107, -107, -107, -107, -107, -107, -107,
2398      -107, -107, -107, -107, -107, -107, -107, -107, -107, -107,
2399      -107, -107, -107, -107, -107,   43,   43,   43,   43,   43,
2400        43,   43,   43,   43,   43,   43,   43,   43,   43,  136,
2401        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2402 
2403        43, -107, -107, -107, -107, -107, -107,   43,   43,   43,
2404        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2405        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2406        43,   43,   43, -107, -107, -107, -107, -107
2407     },
2408 
2409     {
2410         7, -108, -108, -108, -108, -108, -108, -108, -108, -108,
2411      -108, -108, -108, -108, -108, -108, -108, -108, -108, -108,
2412      -108, -108, -108, -108, -108, -108, -108, -108, -108, -108,
2413      -108, -108, -108, -108, -108, -108, -108, -108, -108, -108,
2414      -108, -108, -108, -108, -108, -108, -108, -108, -108, -108,
2415      -108, -108, -108, -108, -108, -108, -108, -108, -108, -108,
2416 
2417      -108, -108, -108, -108, -108,   43,   43,   43,   43,   43,
2418        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2419        43,   43,   43,   43,  137,   43,   43,   43,   43,   43,
2420        43, -108, -108, -108, -108, -108, -108,   43,   43,   43,
2421        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2422        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2423        43,   43,   43, -108, -108, -108, -108, -108
2424     },
2425 
2426     {
2427         7, -109, -109, -109, -109, -109, -109, -109, -109, -109,
2428      -109, -109, -109, -109, -109, -109, -109, -109, -109, -109,
2429      -109, -109, -109, -109, -109, -109, -109, -109, -109, -109,
2430 
2431      -109, -109, -109, -109, -109, -109, -109, -109, -109, -109,
2432      -109, -109, -109, -109, -109, -109, -109, -109, -109, -109,
2433      -109, -109, -109, -109, -109, -109, -109, -109, -109, -109,
2434      -109, -109, -109, -109, -109,   43,   43,   43,   43,   43,
2435        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2436        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2437        43, -109, -109, -109, -109, -109, -109,   43,   43,   43,
2438        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2439        43,   43,   43,   43,   43,   43,  138,   43,   43,   43,
2440        43,   43,   43, -109, -109, -109, -109, -109
2441 
2442     },
2443 
2444     {
2445         7, -110, -110, -110, -110, -110, -110, -110, -110, -110,
2446      -110, -110, -110, -110, -110, -110, -110, -110, -110, -110,
2447      -110, -110, -110, -110, -110, -110, -110, -110, -110, -110,
2448      -110, -110, -110, -110, -110, -110, -110, -110, -110, -110,
2449      -110, -110, -110, -110, -110, -110, -110, -110, -110, -110,
2450      -110, -110, -110, -110, -110, -110, -110, -110, -110, -110,
2451      -110, -110, -110, -110, -110,   43,   43,   43,   43,   43,
2452        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2453        43,   43,  139,   43,   43,   43,   43,   43,   43,   43,
2454        43, -110, -110, -110, -110, -110, -110,   43,   43,   43,
2455 
2456        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2457        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2458        43,   43,   43, -110, -110, -110, -110, -110
2459     },
2460 
2461     {
2462         7, -111, -111, -111, -111, -111, -111, -111, -111, -111,
2463      -111, -111, -111, -111, -111, -111, -111, -111, -111, -111,
2464      -111, -111, -111, -111, -111, -111, -111, -111, -111, -111,
2465      -111, -111, -111, -111, -111, -111, -111, -111, -111, -111,
2466      -111, -111, -111, -111, -111, -111, -111, -111, -111, -111,
2467      -111, -111, -111, -111, -111, -111, -111, -111, -111, -111,
2468      -111, -111, -111, -111, -111,   43,   43,   43,   43,   43,
2469 
2470        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2471        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2472        43, -111, -111, -111, -111, -111, -111,   43,   43,   43,
2473        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2474        43,   43,   43,   43,   43,  140,   43,   43,   43,   43,
2475        43,   43,   43, -111, -111, -111, -111, -111
2476     },
2477 
2478     {
2479         7, -112, -112, -112, -112, -112, -112, -112, -112, -112,
2480      -112, -112, -112, -112, -112, -112, -112, -112, -112, -112,
2481      -112, -112, -112, -112, -112, -112, -112, -112, -112, -112,
2482      -112, -112, -112, -112, -112, -112, -112, -112, -112, -112,
2483 
2484      -112, -112, -112, -112, -112, -112, -112, -112, -112, -112,
2485      -112, -112, -112, -112, -112, -112, -112, -112, -112, -112,
2486      -112, -112, -112, -112, -112,   43,   43,   43,   43,   43,
2487        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2488        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2489        43, -112, -112, -112, -112, -112, -112,   43,   43,   43,
2490        43,   43,   43,   43,   43,   43,   43,   43,   43,  141,
2491        43,   43,   43,   43,   43,  142,   43,   43,   43,   43,
2492        43,   43,   43, -112, -112, -112, -112, -112
2493     },
2494 
2495     {
2496         7, -113, -113, -113, -113, -113, -113, -113, -113, -113,
2497 
2498      -113, -113, -113, -113, -113, -113, -113, -113, -113, -113,
2499      -113, -113, -113, -113, -113, -113, -113, -113, -113, -113,
2500      -113, -113, -113, -113, -113, -113, -113, -113, -113, -113,
2501      -113, -113, -113, -113, -113, -113, -113, -113, -113, -113,
2502      -113, -113, -113, -113, -113, -113, -113, -113, -113, -113,
2503      -113, -113, -113, -113, -113,   43,   43,   43,   43,   43,
2504        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2505        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2506        43, -113, -113, -113, -113, -113, -113,   43,   43,   43,
2507        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2508 
2509        43,   43,   43,   43,   43,  143,   43,   43,   43,   43,
2510        43,   43,   43, -113, -113, -113, -113, -113
2511     },
2512 
2513     {
2514         7, -114, -114, -114, -114, -114, -114, -114, -114, -114,
2515      -114, -114, -114, -114, -114, -114, -114, -114, -114, -114,
2516      -114, -114, -114, -114, -114, -114, -114, -114, -114, -114,
2517      -114, -114, -114, -114, -114, -114, -114, -114, -114, -114,
2518      -114, -114, -114, -114, -114, -114, -114, -114, -114, -114,
2519      -114, -114, -114, -114, -114, -114, -114, -114, -114, -114,
2520      -114, -114, -114, -114, -114,   43,   43,   43,   43,   43,
2521        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2522 
2523        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2524        43, -114, -114, -114, -114, -114, -114,   43,   43,   43,
2525        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2526        43,   43,   43,   43,  144,   43,   43,   43,   43,   43,
2527        43,   43,   43, -114, -114, -114, -114, -114
2528     },
2529 
2530     {
2531         7, -115, -115, -115, -115, -115, -115, -115, -115, -115,
2532      -115, -115, -115, -115, -115, -115, -115, -115, -115, -115,
2533      -115, -115, -115, -115, -115, -115, -115, -115, -115, -115,
2534      -115, -115, -115, -115, -115, -115, -115, -115, -115, -115,
2535      -115, -115, -115, -115, -115, -115, -115, -115, -115, -115,
2536 
2537      -115, -115, -115, -115, -115, -115, -115, -115, -115, -115,
2538      -115, -115, -115, -115, -115,   43,   43,   43,   43,   43,
2539        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2540        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2541        43, -115, -115, -115, -115, -115, -115,   43,   43,   43,
2542        43,  145,   43,   43,   43,   43,   43,   43,   43,   43,
2543        43,   43,   43,   43,  146,   43,   43,   43,   43,   43,
2544        43,   43,   43, -115, -115, -115, -115, -115
2545     },
2546 
2547     {
2548         7, -116, -116, -116, -116, -116, -116, -116, -116, -116,
2549      -116, -116, -116, -116, -116, -116, -116, -116, -116, -116,
2550 
2551      -116, -116, -116, -116, -116, -116, -116, -116, -116, -116,
2552      -116, -116, -116, -116, -116, -116, -116, -116, -116, -116,
2553      -116, -116, -116, -116, -116, -116, -116, -116, -116, -116,
2554      -116, -116, -116, -116, -116, -116, -116, -116, -116, -116,
2555      -116, -116, -116, -116, -116,   43,   43,   43,   43,   43,
2556        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2557        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2558        43, -116, -116, -116, -116, -116, -116,   43,   43,   43,
2559        43,  147,   43,   43,   43,   43,   43,   43,   43,   43,
2560        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2561 
2562        43,   43,   43, -116, -116, -116, -116, -116
2563     },
2564 
2565     {
2566         7, -117, -117, -117, -117, -117, -117, -117, -117, -117,
2567      -117, -117, -117, -117, -117, -117, -117, -117, -117, -117,
2568      -117, -117, -117, -117, -117, -117, -117, -117, -117, -117,
2569      -117, -117, -117, -117, -117, -117, -117, -117, -117, -117,
2570      -117, -117, -117, -117, -117, -117, -117, -117, -117, -117,
2571      -117, -117, -117, -117, -117, -117, -117, -117, -117, -117,
2572      -117, -117, -117, -117, -117,   43,   43,   43,   43,   43,
2573        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2574        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2575 
2576        43, -117, -117, -117, -117, -117, -117,   43,   43,   43,
2577        43,   43,   43,   43,   43,  148,   43,   43,   43,   43,
2578        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2579        43,   43,   43, -117, -117, -117, -117, -117
2580     },
2581 
2582     {
2583         7, -118, -118, -118, -118, -118, -118, -118, -118, -118,
2584      -118, -118, -118, -118, -118, -118, -118, -118, -118, -118,
2585      -118, -118, -118, -118, -118, -118, -118, -118, -118, -118,
2586      -118, -118, -118, -118, -118, -118, -118, -118, -118, -118,
2587      -118, -118, -118, -118, -118, -118, -118, -118, -118, -118,
2588      -118, -118, -118, -118, -118, -118, -118, -118, -118, -118,
2589 
2590      -118, -118, -118, -118, -118,   43,   43,   43,   43,   43,
2591        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2592        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2593        43, -118, -118, -118, -118, -118, -118,   43,   43,   43,
2594        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2595        43,  149,   43,   43,   43,   43,   43,   43,   43,   43,
2596        43,   43,   43, -118, -118, -118, -118, -118
2597     },
2598 
2599     {
2600         7, -119, -119, -119, -119, -119, -119, -119, -119, -119,
2601      -119, -119, -119, -119, -119, -119, -119, -119, -119, -119,
2602      -119, -119, -119, -119, -119, -119, -119, -119, -119, -119,
2603 
2604      -119, -119, -119, -119, -119, -119, -119, -119, -119, -119,
2605      -119, -119, -119, -119, -119, -119, -119, -119, -119, -119,
2606      -119, -119, -119, -119, -119, -119, -119, -119, -119, -119,
2607      -119, -119, -119, -119, -119,   43,   43,   43,   43,   43,
2608        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2609        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2610        43, -119, -119, -119, -119, -119, -119,   43,   43,   43,
2611        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2612        43,   43,   43,   43,  150,   43,   43,   43,   43,   43,
2613        43,   43,   43, -119, -119, -119, -119, -119
2614 
2615     },
2616 
2617     {
2618         7, -120, -120, -120, -120, -120, -120, -120, -120, -120,
2619      -120, -120, -120, -120, -120, -120, -120, -120, -120, -120,
2620      -120, -120, -120, -120, -120, -120, -120, -120, -120, -120,
2621      -120, -120, -120, -120, -120, -120, -120, -120, -120, -120,
2622      -120, -120, -120, -120, -120, -120, -120, -120, -120, -120,
2623      -120, -120, -120, -120, -120, -120, -120, -120, -120, -120,
2624      -120, -120, -120, -120, -120,   43,   43,   43,   43,   43,
2625        43,   43,   43,  151,   43,   43,   43,   43,   43,   43,
2626        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2627        43, -120, -120, -120, -120, -120, -120,   43,   43,   43,
2628 
2629        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2630        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2631        43,   43,   43, -120, -120, -120, -120, -120
2632     },
2633 
2634     {
2635         7, -121, -121, -121, -121, -121, -121, -121, -121, -121,
2636      -121, -121, -121, -121, -121, -121, -121, -121, -121, -121,
2637      -121, -121, -121, -121, -121, -121, -121, -121, -121, -121,
2638      -121, -121, -121, -121, -121, -121, -121, -121, -121, -121,
2639      -121, -121, -121, -121, -121, -121, -121, -121, -121, -121,
2640      -121, -121, -121, -121, -121, -121, -121, -121, -121, -121,
2641      -121, -121, -121, -121, -121,   43,   43,   43,   43,  152,
2642 
2643        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2644        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2645        43, -121, -121, -121, -121, -121, -121,   43,   43,   43,
2646        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2647        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2648        43,   43,   43, -121, -121, -121, -121, -121
2649     },
2650 
2651     {
2652         7, -122, -122, -122, -122, -122, -122, -122, -122, -122,
2653      -122, -122, -122, -122, -122, -122, -122, -122, -122, -122,
2654      -122, -122, -122, -122, -122, -122, -122, -122, -122, -122,
2655      -122, -122, -122, -122, -122, -122, -122, -122, -122, -122,
2656 
2657      -122, -122, -122, -122, -122, -122, -122, -122, -122, -122,
2658      -122, -122, -122, -122, -122, -122, -122, -122, -122, -122,
2659      -122, -122, -122, -122, -122,   43,   43,   43,   43,   43,
2660        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2661        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2662        43, -122, -122, -122, -122, -122, -122,   43,   43,   43,
2663        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2664        43,   43,   43,   43,   43,   43,  153,   43,   43,   43,
2665        43,   43,   43, -122, -122, -122, -122, -122
2666     },
2667 
2668     {
2669         7, -123, -123, -123, -123, -123, -123, -123, -123, -123,
2670 
2671      -123, -123, -123, -123, -123, -123, -123, -123, -123, -123,
2672      -123, -123, -123, -123, -123, -123, -123, -123, -123, -123,
2673      -123, -123, -123, -123, -123, -123, -123, -123, -123, -123,
2674      -123, -123, -123, -123, -123, -123, -123, -123, -123, -123,
2675      -123, -123, -123, -123, -123, -123, -123, -123, -123, -123,
2676      -123, -123, -123, -123, -123,   43,   43,   43,   43,   43,
2677        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2678        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2679        43, -123, -123, -123, -123, -123, -123,   43,   43,   43,
2680        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2681 
2682        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2683        43,   43,   43, -123, -123, -123, -123, -123
2684     },
2685 
2686     {
2687         7, -124, -124, -124, -124, -124, -124, -124, -124, -124,
2688      -124, -124, -124, -124, -124, -124, -124, -124, -124, -124,
2689      -124, -124, -124, -124, -124, -124, -124, -124, -124, -124,
2690      -124, -124, -124, -124, -124, -124, -124, -124, -124, -124,
2691      -124, -124, -124, -124, -124, -124, -124, -124, -124, -124,
2692      -124, -124, -124, -124, -124, -124, -124, -124, -124, -124,
2693      -124, -124, -124, -124, -124,   43,   43,   43,   43,   43,
2694        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2695 
2696        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2697        43, -124, -124, -124, -124, -124, -124,   43,   43,   43,
2698        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2699        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2700        43,   43,   43, -124, -124, -124, -124, -124
2701     },
2702 
2703     {
2704         7, -125, -125, -125, -125, -125, -125, -125, -125, -125,
2705      -125, -125, -125, -125, -125, -125, -125, -125, -125, -125,
2706      -125, -125, -125, -125, -125, -125, -125, -125, -125, -125,
2707      -125, -125, -125, -125, -125, -125, -125, -125, -125, -125,
2708      -125, -125, -125, -125, -125, -125, -125, -125, -125, -125,
2709 
2710      -125, -125, -125, -125, -125, -125, -125, -125, -125, -125,
2711      -125, -125, -125, -125, -125,   43,   43,   43,   43,   43,
2712        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2713        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2714        43, -125, -125, -125, -125, -125, -125,   43,   43,   43,
2715        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2716        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2717        43,   43,   43, -125, -125, -125, -125, -125
2718     },
2719 
2720     {
2721         7, -126, -126, -126, -126, -126, -126, -126, -126, -126,
2722      -126, -126, -126, -126, -126, -126, -126, -126, -126, -126,
2723 
2724      -126, -126, -126, -126, -126, -126, -126, -126, -126, -126,
2725      -126, -126, -126, -126, -126, -126, -126, -126, -126, -126,
2726      -126, -126, -126, -126, -126, -126, -126, -126, -126, -126,
2727      -126, -126, -126, -126, -126, -126, -126, -126, -126, -126,
2728      -126, -126, -126, -126, -126,   43,   43,   43,   43,  154,
2729        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2730        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2731        43, -126, -126, -126, -126, -126, -126,   43,   43,   43,
2732        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2733        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2734 
2735        43,   43,   43, -126, -126, -126, -126, -126
2736     },
2737 
2738     {
2739         7, -127, -127, -127, -127, -127, -127, -127, -127, -127,
2740      -127, -127, -127, -127, -127, -127, -127, -127, -127, -127,
2741      -127, -127, -127, -127, -127, -127, -127, -127, -127, -127,
2742      -127, -127, -127, -127, -127, -127, -127, -127, -127, -127,
2743      -127, -127, -127, -127, -127, -127, -127, -127, -127, -127,
2744      -127, -127, -127, -127, -127, -127, -127, -127, -127, -127,
2745      -127, -127, -127, -127, -127,   43,   43,   43,   43,   43,
2746        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2747        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2748 
2749        43, -127, -127, -127, -127, -127, -127,   43,   43,   43,
2750        43,  155,   43,   43,   43,   43,   43,   43,   43,   43,
2751        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2752        43,   43,   43, -127, -127, -127, -127, -127
2753     },
2754 
2755     {
2756         7, -128, -128, -128, -128, -128, -128, -128, -128, -128,
2757      -128, -128, -128, -128, -128, -128, -128, -128, -128, -128,
2758      -128, -128, -128, -128, -128, -128, -128, -128, -128, -128,
2759      -128, -128, -128, -128, -128, -128, -128, -128, -128, -128,
2760      -128, -128, -128, -128, -128, -128, -128, -128, -128, -128,
2761      -128, -128, -128, -128, -128, -128, -128, -128, -128, -128,
2762 
2763      -128, -128, -128, -128, -128,   43,   43,   43,   43,   43,
2764        43,   43,   43,  156,   43,   43,   43,   43,   43,   43,
2765        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2766        43, -128, -128, -128, -128, -128, -128,   43,   43,   43,
2767        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2768        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2769        43,   43,   43, -128, -128, -128, -128, -128
2770     },
2771 
2772     {
2773         7, -129, -129, -129, -129, -129, -129, -129, -129, -129,
2774      -129, -129, -129, -129, -129, -129, -129, -129, -129, -129,
2775      -129, -129, -129, -129, -129, -129, -129, -129, -129, -129,
2776 
2777      -129, -129, -129, -129, -129, -129, -129, -129, -129, -129,
2778      -129, -129, -129, -129, -129, -129, -129, -129, -129, -129,
2779      -129, -129, -129, -129, -129, -129, -129, -129, -129, -129,
2780      -129, -129, -129, -129, -129,   43,   43,   43,   43,   43,
2781        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2782        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2783        43, -129, -129, -129, -129, -129, -129,   43,   43,   43,
2784        43,   43,   43,   43,   43,  157,   43,   43,   43,   43,
2785        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2786        43,   43,   43, -129, -129, -129, -129, -129
2787 
2788     },
2789 
2790     {
2791         7, -130, -130, -130, -130, -130, -130, -130, -130, -130,
2792      -130, -130, -130, -130, -130, -130, -130, -130, -130, -130,
2793      -130, -130, -130, -130, -130, -130, -130, -130, -130, -130,
2794      -130, -130, -130, -130, -130, -130, -130, -130, -130, -130,
2795      -130, -130, -130, -130, -130, -130, -130, -130, -130, -130,
2796      -130, -130, -130, -130, -130, -130, -130, -130, -130, -130,
2797      -130, -130, -130, -130, -130,   43,   43,   43,   43,   43,
2798        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2799        43,   43,  158,   43,   43,   43,   43,   43,   43,   43,
2800        43, -130, -130, -130, -130, -130, -130,   43,   43,   43,
2801 
2802        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2803        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2804        43,   43,   43, -130, -130, -130, -130, -130
2805     },
2806 
2807     {
2808         7, -131, -131, -131, -131, -131, -131, -131, -131, -131,
2809      -131, -131, -131, -131, -131, -131, -131, -131, -131, -131,
2810      -131, -131, -131, -131, -131, -131, -131, -131, -131, -131,
2811      -131, -131, -131, -131, -131, -131, -131, -131, -131, -131,
2812      -131, -131, -131, -131, -131, -131, -131, -131, -131, -131,
2813      -131, -131, -131, -131, -131, -131, -131, -131, -131, -131,
2814      -131, -131, -131, -131, -131,   43,   43,   43,   43,  159,
2815 
2816        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2817        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2818        43, -131, -131, -131, -131, -131, -131,   43,   43,   43,
2819        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2820        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2821        43,   43,   43, -131, -131, -131, -131, -131
2822     },
2823 
2824     {
2825         7, -132, -132, -132, -132, -132, -132, -132, -132, -132,
2826      -132, -132, -132, -132, -132, -132, -132, -132, -132, -132,
2827      -132, -132, -132, -132, -132, -132, -132, -132, -132, -132,
2828      -132, -132, -132, -132, -132, -132, -132, -132, -132, -132,
2829 
2830      -132, -132, -132, -132, -132, -132, -132, -132, -132, -132,
2831      -132, -132, -132, -132, -132, -132, -132, -132, -132, -132,
2832      -132, -132, -132, -132, -132,  160,   43,   43,   43,   43,
2833        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2834        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2835        43, -132, -132, -132, -132, -132, -132,   43,   43,   43,
2836        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2837        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2838        43,   43,   43, -132, -132, -132, -132, -132
2839     },
2840 
2841     {
2842         7, -133, -133, -133, -133, -133, -133, -133, -133, -133,
2843 
2844      -133, -133, -133, -133, -133, -133, -133, -133, -133, -133,
2845      -133, -133, -133, -133, -133, -133, -133, -133, -133, -133,
2846      -133, -133, -133, -133, -133, -133, -133, -133, -133, -133,
2847      -133, -133, -133, -133, -133, -133, -133, -133, -133, -133,
2848      -133, -133, -133, -133, -133, -133, -133, -133, -133, -133,
2849      -133, -133, -133, -133, -133,   43,   43,   43,   43,   43,
2850        43,   43,   43,   43,   43,   43,  161,   43,   43,   43,
2851        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2852        43, -133, -133, -133, -133, -133, -133,   43,   43,   43,
2853        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2854 
2855        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2856        43,   43,   43, -133, -133, -133, -133, -133
2857     },
2858 
2859     {
2860         7, -134, -134, -134, -134, -134, -134, -134, -134, -134,
2861      -134, -134, -134, -134, -134, -134, -134, -134, -134, -134,
2862      -134, -134, -134, -134, -134, -134, -134, -134, -134, -134,
2863      -134, -134, -134, -134, -134, -134, -134, -134, -134, -134,
2864      -134, -134, -134, -134, -134, -134, -134, -134, -134, -134,
2865      -134, -134, -134, -134, -134, -134, -134, -134, -134, -134,
2866      -134, -134, -134, -134, -134,   43,   43,   43,   43,   43,
2867        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2868 
2869        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2870        43, -134, -134, -134, -134, -134, -134,  162,   43,   43,
2871        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2872        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2873        43,   43,   43, -134, -134, -134, -134, -134
2874     },
2875 
2876     {
2877         7, -135, -135, -135, -135, -135, -135, -135, -135, -135,
2878      -135, -135, -135, -135, -135, -135, -135, -135, -135, -135,
2879      -135, -135, -135, -135, -135, -135, -135, -135, -135, -135,
2880      -135, -135, -135, -135, -135, -135, -135, -135, -135, -135,
2881      -135, -135, -135, -135, -135, -135, -135, -135, -135, -135,
2882 
2883      -135, -135, -135, -135, -135, -135, -135, -135, -135, -135,
2884      -135, -135, -135, -135, -135,  163,   43,   43,   43,   43,
2885        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2886        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2887        43, -135, -135, -135, -135, -135, -135,   43,   43,   43,
2888        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2889        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2890        43,   43,   43, -135, -135, -135, -135, -135
2891     },
2892 
2893     {
2894         7, -136, -136, -136, -136, -136, -136, -136, -136, -136,
2895      -136, -136, -136, -136, -136, -136, -136, -136, -136, -136,
2896 
2897      -136, -136, -136, -136, -136, -136, -136, -136, -136, -136,
2898      -136, -136, -136, -136, -136, -136, -136, -136, -136, -136,
2899      -136, -136, -136, -136, -136, -136, -136, -136, -136, -136,
2900      -136, -136, -136, -136, -136, -136, -136, -136, -136, -136,
2901      -136, -136, -136, -136, -136,   43,   43,   43,   43,   43,
2902        43,   43,   43,   43,   43,   43,   43,   43,  164,   43,
2903        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2904        43, -136, -136, -136, -136, -136, -136,   43,   43,   43,
2905        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2906        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2907 
2908        43,   43,   43, -136, -136, -136, -136, -136
2909     },
2910 
2911     {
2912         7, -137, -137, -137, -137, -137, -137, -137, -137, -137,
2913      -137, -137, -137, -137, -137, -137, -137, -137, -137, -137,
2914      -137, -137, -137, -137, -137, -137, -137, -137, -137, -137,
2915      -137, -137, -137, -137, -137, -137, -137, -137, -137, -137,
2916      -137, -137, -137, -137, -137, -137, -137, -137, -137, -137,
2917      -137, -137, -137, -137, -137, -137, -137, -137, -137, -137,
2918      -137, -137, -137, -137, -137,   43,   43,   43,   43,   43,
2919        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2920        43,   43,   43,  165,   43,   43,   43,   43,   43,   43,
2921 
2922        43, -137, -137, -137, -137, -137, -137,   43,   43,   43,
2923        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2924        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2925        43,   43,   43, -137, -137, -137, -137, -137
2926     },
2927 
2928     {
2929         7, -138, -138, -138, -138, -138, -138, -138, -138, -138,
2930      -138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
2931      -138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
2932      -138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
2933      -138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
2934      -138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
2935 
2936      -138, -138, -138, -138, -138,   43,   43,   43,   43,   43,
2937        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2938        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2939        43, -138, -138, -138, -138, -138, -138,   43,   43,   43,
2940        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2941        43,   43,   43,   43,   43,  166,   43,   43,   43,   43,
2942        43,   43,   43, -138, -138, -138, -138, -138
2943     },
2944 
2945     {
2946         7, -139, -139, -139, -139, -139, -139, -139, -139, -139,
2947      -139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
2948      -139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
2949 
2950      -139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
2951      -139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
2952      -139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
2953      -139, -139, -139, -139, -139,   43,   43,   43,   43,   43,
2954        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2955        43,   43,   43,  167,   43,   43,   43,   43,   43,   43,
2956        43, -139, -139, -139, -139, -139, -139,   43,   43,   43,
2957        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2958        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2959        43,   43,   43, -139, -139, -139, -139, -139
2960 
2961     },
2962 
2963     {
2964         7, -140, -140, -140, -140, -140, -140, -140, -140, -140,
2965      -140, -140, -140, -140, -140, -140, -140, -140, -140, -140,
2966      -140, -140, -140, -140, -140, -140, -140, -140, -140, -140,
2967      -140, -140, -140, -140, -140, -140, -140, -140, -140, -140,
2968      -140, -140, -140, -140, -140, -140, -140, -140, -140, -140,
2969      -140, -140, -140, -140, -140, -140, -140, -140, -140, -140,
2970      -140, -140, -140, -140, -140,   43,   43,   43,   43,   43,
2971        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2972        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2973        43, -140, -140, -140, -140, -140, -140,   43,   43,   43,
2974 
2975        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2976        43,   43,   43,   43,   43,   43,  168,   43,   43,   43,
2977        43,   43,   43, -140, -140, -140, -140, -140
2978     },
2979 
2980     {
2981         7, -141, -141, -141, -141, -141, -141, -141, -141, -141,
2982      -141, -141, -141, -141, -141, -141, -141, -141, -141, -141,
2983      -141, -141, -141, -141, -141, -141, -141, -141, -141, -141,
2984      -141, -141, -141, -141, -141, -141, -141, -141, -141, -141,
2985      -141, -141, -141, -141, -141, -141, -141, -141, -141, -141,
2986      -141, -141, -141, -141, -141, -141, -141, -141, -141, -141,
2987      -141, -141, -141, -141, -141,   43,   43,   43,   43,   43,
2988 
2989        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2990        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2991        43, -141, -141, -141, -141, -141, -141,   43,   43,   43,
2992        43,   43,   43,   43,   43,  169,   43,   43,   43,   43,
2993        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
2994        43,   43,   43, -141, -141, -141, -141, -141
2995     },
2996 
2997     {
2998         7, -142, -142, -142, -142, -142, -142, -142, -142, -142,
2999      -142, -142, -142, -142, -142, -142, -142, -142, -142, -142,
3000      -142, -142, -142, -142, -142, -142, -142, -142, -142, -142,
3001      -142, -142, -142, -142, -142, -142, -142, -142, -142, -142,
3002 
3003      -142, -142, -142, -142, -142, -142, -142, -142, -142, -142,
3004      -142, -142, -142, -142, -142, -142, -142, -142, -142, -142,
3005      -142, -142, -142, -142, -142,   43,   43,   43,   43,   43,
3006        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3007        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3008        43, -142, -142, -142, -142, -142, -142,   43,   43,   43,
3009        43,  170,   43,   43,   43,   43,   43,   43,   43,   43,
3010        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3011        43,   43,   43, -142, -142, -142, -142, -142
3012     },
3013 
3014     {
3015         7, -143, -143, -143, -143, -143, -143, -143, -143, -143,
3016 
3017      -143, -143, -143, -143, -143, -143, -143, -143, -143, -143,
3018      -143, -143, -143, -143, -143, -143, -143, -143, -143, -143,
3019      -143, -143, -143, -143, -143, -143, -143, -143, -143, -143,
3020      -143, -143, -143, -143, -143, -143, -143, -143, -143, -143,
3021      -143, -143, -143, -143, -143, -143, -143, -143, -143, -143,
3022      -143, -143, -143, -143, -143,   43,   43,   43,   43,   43,
3023        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3024        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3025        43, -143, -143, -143, -143, -143, -143,   43,   43,   43,
3026        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3027 
3028        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3029        43,   43,   43, -143, -143, -143, -143, -143
3030     },
3031 
3032     {
3033         7, -144, -144, -144, -144, -144, -144, -144, -144, -144,
3034      -144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
3035      -144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
3036      -144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
3037      -144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
3038      -144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
3039      -144, -144, -144, -144, -144,   43,   43,   43,   43,   43,
3040        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3041 
3042        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3043        43, -144, -144, -144, -144, -144, -144,   43,   43,   43,
3044        43,  171,   43,   43,   43,   43,   43,   43,   43,   43,
3045        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3046        43,   43,   43, -144, -144, -144, -144, -144
3047     },
3048 
3049     {
3050         7, -145, -145, -145, -145, -145, -145, -145, -145, -145,
3051      -145, -145, -145, -145, -145, -145, -145, -145, -145, -145,
3052      -145, -145, -145, -145, -145, -145, -145, -145, -145, -145,
3053      -145, -145, -145, -145, -145, -145, -145, -145, -145, -145,
3054      -145, -145, -145, -145, -145, -145, -145, -145, -145, -145,
3055 
3056      -145, -145, -145, -145, -145, -145, -145, -145, -145, -145,
3057      -145, -145, -145, -145, -145,   43,   43,   43,   43,   43,
3058        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3059        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3060        43, -145, -145, -145, -145, -145, -145,   43,   43,   43,
3061        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3062        43,   43,   43,   43,  172,   43,   43,   43,   43,   43,
3063        43,   43,   43, -145, -145, -145, -145, -145
3064     },
3065 
3066     {
3067         7, -146, -146, -146, -146, -146, -146, -146, -146, -146,
3068      -146, -146, -146, -146, -146, -146, -146, -146, -146, -146,
3069 
3070      -146, -146, -146, -146, -146, -146, -146, -146, -146, -146,
3071      -146, -146, -146, -146, -146, -146, -146, -146, -146, -146,
3072      -146, -146, -146, -146, -146, -146, -146, -146, -146, -146,
3073      -146, -146, -146, -146, -146, -146, -146, -146, -146, -146,
3074      -146, -146, -146, -146, -146,   43,   43,   43,   43,   43,
3075        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3076        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3077        43, -146, -146, -146, -146, -146, -146,   43,   43,   43,
3078        43,  173,   43,   43,   43,   43,   43,   43,   43,   43,
3079        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3080 
3081        43,   43,   43, -146, -146, -146, -146, -146
3082     },
3083 
3084     {
3085         7, -147, -147, -147, -147, -147, -147, -147, -147, -147,
3086      -147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
3087      -147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
3088      -147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
3089      -147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
3090      -147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
3091      -147, -147, -147, -147, -147,   43,   43,   43,   43,   43,
3092        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3093        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3094 
3095        43, -147, -147, -147, -147, -147, -147,   43,   43,   43,
3096        43,   43,   43,   43,   43,   43,   43,   43,  174,   43,
3097        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3098        43,   43,   43, -147, -147, -147, -147, -147
3099     },
3100 
3101     {
3102         7, -148, -148, -148, -148, -148, -148, -148, -148, -148,
3103      -148, -148, -148, -148, -148, -148, -148, -148, -148, -148,
3104      -148, -148, -148, -148, -148, -148, -148, -148, -148, -148,
3105      -148, -148, -148, -148, -148, -148, -148, -148, -148, -148,
3106      -148, -148, -148, -148, -148, -148, -148, -148, -148, -148,
3107      -148, -148, -148, -148, -148, -148, -148, -148, -148, -148,
3108 
3109      -148, -148, -148, -148, -148,   43,   43,   43,   43,   43,
3110        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3111        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3112        43, -148, -148, -148, -148, -148, -148,  175,   43,   43,
3113        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3114        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3115        43,   43,   43, -148, -148, -148, -148, -148
3116     },
3117 
3118     {
3119         7, -149, -149, -149, -149, -149, -149, -149, -149, -149,
3120      -149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
3121      -149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
3122 
3123      -149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
3124      -149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
3125      -149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
3126      -149, -149, -149, -149, -149,   43,   43,   43,   43,   43,
3127        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3128        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3129        43, -149, -149, -149, -149, -149, -149,   43,   43,   43,
3130        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3131       176,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3132        43,   43,   43, -149, -149, -149, -149, -149
3133 
3134     },
3135 
3136     {
3137         7, -150, -150, -150, -150, -150, -150, -150, -150, -150,
3138      -150, -150, -150, -150, -150, -150, -150, -150, -150, -150,
3139      -150, -150, -150, -150, -150, -150, -150, -150, -150, -150,
3140      -150, -150, -150, -150, -150, -150, -150, -150, -150, -150,
3141      -150, -150, -150, -150, -150, -150, -150, -150, -150, -150,
3142      -150, -150, -150, -150, -150, -150, -150, -150, -150, -150,
3143      -150, -150, -150, -150, -150,   43,   43,   43,   43,   43,
3144        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3145        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3146        43, -150, -150, -150, -150, -150, -150,   43,   43,   43,
3147 
3148        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3149        43,   43,   43,   43,   43,   71,   43,   43,   43,   43,
3150        43,   43,   43, -150, -150, -150, -150, -150
3151     },
3152 
3153     {
3154         7, -151, -151, -151, -151, -151, -151, -151, -151, -151,
3155      -151, -151, -151, -151, -151, -151, -151, -151, -151, -151,
3156      -151, -151, -151, -151, -151, -151, -151, -151, -151, -151,
3157      -151, -151, -151, -151, -151, -151, -151, -151, -151, -151,
3158      -151, -151, -151, -151, -151, -151, -151, -151, -151, -151,
3159      -151, -151, -151, -151, -151, -151, -151, -151, -151, -151,
3160      -151, -151, -151, -151, -151,   43,   43,   43,   43,   43,
3161 
3162        43,   43,   43,   43,   43,   43,   43,   43,  177,   43,
3163        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3164        43, -151, -151, -151, -151, -151, -151,   43,   43,   43,
3165        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3166        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3167        43,   43,   43, -151, -151, -151, -151, -151
3168     },
3169 
3170     {
3171         7, -152, -152, -152, -152, -152, -152, -152, -152, -152,
3172      -152, -152, -152, -152, -152, -152, -152, -152, -152, -152,
3173      -152, -152, -152, -152, -152, -152, -152, -152, -152, -152,
3174      -152, -152, -152, -152, -152, -152, -152, -152, -152, -152,
3175 
3176      -152, -152, -152, -152, -152, -152, -152, -152, -152, -152,
3177      -152, -152, -152, -152, -152, -152, -152, -152, -152, -152,
3178      -152, -152, -152, -152, -152,   43,   43,  178,   43,   43,
3179        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3180        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3181        43, -152, -152, -152, -152, -152, -152,   43,   43,   43,
3182        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3183        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3184        43,   43,   43, -152, -152, -152, -152, -152
3185     },
3186 
3187     {
3188         7, -153, -153, -153, -153, -153, -153, -153, -153, -153,
3189 
3190      -153, -153, -153, -153, -153, -153, -153, -153, -153, -153,
3191      -153, -153, -153, -153, -153, -153, -153, -153, -153, -153,
3192      -153, -153, -153, -153, -153, -153, -153, -153, -153, -153,
3193      -153, -153, -153, -153, -153, -153, -153, -153, -153, -153,
3194      -153, -153, -153, -153, -153, -153, -153, -153, -153, -153,
3195      -153, -153, -153, -153, -153,   43,   43,   43,   43,   43,
3196        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3197        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3198        43, -153, -153, -153, -153, -153, -153,   43,   43,   43,
3199        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3200 
3201        43,   43,   43,   43,  179,   43,   43,   43,   43,   43,
3202        43,   43,   43, -153, -153, -153, -153, -153
3203     },
3204 
3205     {
3206         7, -154, -154, -154, -154, -154, -154, -154, -154, -154,
3207      -154, -154, -154, -154, -154, -154, -154, -154, -154, -154,
3208      -154, -154, -154, -154, -154, -154, -154, -154, -154, -154,
3209      -154, -154, -154, -154, -154, -154, -154, -154, -154, -154,
3210      -154, -154, -154, -154, -154, -154, -154, -154, -154, -154,
3211      -154, -154, -154, -154, -154, -154, -154, -154, -154, -154,
3212      -154, -154, -154, -154, -154,   43,   43,   43,   43,  180,
3213        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3214 
3215        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3216        43, -154, -154, -154, -154, -154, -154,   43,   43,   43,
3217        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3218        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3219        43,   43,   43, -154, -154, -154, -154, -154
3220     },
3221 
3222     {
3223         7, -155, -155, -155, -155, -155, -155, -155, -155, -155,
3224      -155, -155, -155, -155, -155, -155, -155, -155, -155, -155,
3225      -155, -155, -155, -155, -155, -155, -155, -155, -155, -155,
3226      -155, -155, -155, -155, -155, -155, -155, -155, -155, -155,
3227      -155, -155, -155, -155, -155, -155, -155, -155, -155, -155,
3228 
3229      -155, -155, -155, -155, -155, -155, -155, -155, -155, -155,
3230      -155, -155, -155, -155, -155,   43,   43,   43,   43,   43,
3231        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3232        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3233        43, -155, -155, -155, -155, -155, -155,   43,   43,   43,
3234        43,  181,   43,   43,   43,   43,   43,   43,   43,   43,
3235        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3236        43,   43,   43, -155, -155, -155, -155, -155
3237     },
3238 
3239     {
3240         7, -156, -156, -156, -156, -156, -156, -156, -156, -156,
3241      -156, -156, -156, -156, -156, -156, -156, -156, -156, -156,
3242 
3243      -156, -156, -156, -156, -156, -156, -156, -156, -156, -156,
3244      -156, -156, -156, -156, -156, -156, -156, -156, -156, -156,
3245      -156, -156, -156, -156, -156, -156, -156, -156, -156, -156,
3246      -156, -156, -156, -156, -156, -156, -156, -156, -156, -156,
3247      -156, -156, -156, -156, -156,   43,   43,   43,   43,   43,
3248        43,   43,   43,   43,   43,   43,   43,   43,  182,   43,
3249        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3250        43, -156, -156, -156, -156, -156, -156,   43,   43,   43,
3251        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3252        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3253 
3254        43,   43,   43, -156, -156, -156, -156, -156
3255     },
3256 
3257     {
3258         7, -157, -157, -157, -157, -157, -157, -157, -157, -157,
3259      -157, -157, -157, -157, -157, -157, -157, -157, -157, -157,
3260      -157, -157, -157, -157, -157, -157, -157, -157, -157, -157,
3261      -157, -157, -157, -157, -157, -157, -157, -157, -157, -157,
3262      -157, -157, -157, -157, -157, -157, -157, -157, -157, -157,
3263      -157, -157, -157, -157, -157, -157, -157, -157, -157, -157,
3264      -157, -157, -157, -157, -157,   43,   43,   43,   43,   43,
3265        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3266        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3267 
3268        43, -157, -157, -157, -157, -157, -157,   43,   43,   43,
3269        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3270       183,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3271        43,   43,   43, -157, -157, -157, -157, -157
3272     },
3273 
3274     {
3275         7, -158, -158, -158, -158, -158, -158, -158, -158, -158,
3276      -158, -158, -158, -158, -158, -158, -158, -158, -158, -158,
3277      -158, -158, -158, -158, -158, -158, -158, -158, -158, -158,
3278      -158, -158, -158, -158, -158, -158, -158, -158, -158, -158,
3279      -158, -158, -158, -158, -158, -158, -158, -158, -158, -158,
3280      -158, -158, -158, -158, -158, -158, -158, -158, -158, -158,
3281 
3282      -158, -158, -158, -158, -158,   43,   43,   43,   43,   43,
3283        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3284        43,   43,   43,  184,   43,   43,   43,   43,   43,   43,
3285        43, -158, -158, -158, -158, -158, -158,   43,   43,   43,
3286        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3287        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3288        43,   43,   43, -158, -158, -158, -158, -158
3289     },
3290 
3291     {
3292         7, -159, -159, -159, -159, -159, -159, -159, -159, -159,
3293      -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
3294      -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
3295 
3296      -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
3297      -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
3298      -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
3299      -159, -159, -159, -159, -159,   43,   43,   43,   43,   43,
3300        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3301        43,   43,   43,  185,   43,   43,   43,   43,   43,   43,
3302        43, -159, -159, -159, -159, -159, -159,   43,   43,   43,
3303        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3304        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3305        43,   43,   43, -159, -159, -159, -159, -159
3306 
3307     },
3308 
3309     {
3310         7, -160, -160, -160, -160, -160, -160, -160, -160, -160,
3311      -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
3312      -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
3313      -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
3314      -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
3315      -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
3316      -160, -160, -160, -160, -160,   43,   43,   43,   43,   43,
3317        43,   43,   43,   43,   43,   43,  186,   43,   43,   43,
3318        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3319        43, -160, -160, -160, -160, -160, -160,   43,   43,   43,
3320 
3321        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3322        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3323        43,   43,   43, -160, -160, -160, -160, -160
3324     },
3325 
3326     {
3327         7, -161, -161, -161, -161, -161, -161, -161, -161, -161,
3328      -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
3329      -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
3330      -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
3331      -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
3332      -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
3333      -161, -161, -161, -161, -161,   43,   43,   43,   43,   43,
3334 
3335        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3336        43,   43,   43,  187,   43,   43,   43,   43,   43,   43,
3337        43, -161, -161, -161, -161, -161, -161,   43,   43,   43,
3338        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3339        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3340        43,   43,   43, -161, -161, -161, -161, -161
3341     },
3342 
3343     {
3344         7, -162, -162, -162, -162, -162, -162, -162, -162, -162,
3345      -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
3346      -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
3347      -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
3348 
3349      -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
3350      -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
3351      -162, -162, -162, -162, -162,   43,   43,   43,   43,   43,
3352        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3353        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3354        43, -162, -162, -162, -162, -162, -162,   43,   43,   43,
3355        43,   43,   43,   43,   43,   43,   43,   43,  188,   43,
3356        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3357        43,   43,   43, -162, -162, -162, -162, -162
3358     },
3359 
3360     {
3361         7, -163, -163, -163, -163, -163, -163, -163, -163, -163,
3362 
3363      -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
3364      -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
3365      -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
3366      -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
3367      -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
3368      -163, -163, -163, -163, -163,   43,   43,   43,   43,   43,
3369        43,   43,   43,   43,   43,   43,   43,   43,  189,   43,
3370        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3371        43, -163, -163, -163, -163, -163, -163,   43,   43,   43,
3372        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3373 
3374        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3375        43,   43,   43, -163, -163, -163, -163, -163
3376     },
3377 
3378     {
3379         7, -164, -164, -164, -164, -164, -164, -164, -164, -164,
3380      -164, -164, -164, -164, -164, -164, -164, -164, -164, -164,
3381      -164, -164, -164, -164, -164, -164, -164, -164, -164, -164,
3382      -164, -164, -164, -164, -164, -164, -164, -164, -164, -164,
3383      -164, -164, -164, -164, -164, -164, -164, -164, -164, -164,
3384      -164, -164, -164, -164, -164, -164, -164, -164, -164, -164,
3385      -164, -164, -164, -164, -164,   43,   43,   43,  190,   43,
3386        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3387 
3388        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3389        43, -164, -164, -164, -164, -164, -164,   43,   43,   43,
3390        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3391        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3392        43,   43,   43, -164, -164, -164, -164, -164
3393     },
3394 
3395     {
3396         7, -165, -165, -165, -165, -165, -165, -165, -165, -165,
3397      -165, -165, -165, -165, -165, -165, -165, -165, -165, -165,
3398      -165, -165, -165, -165, -165, -165, -165, -165, -165, -165,
3399      -165, -165, -165, -165, -165, -165, -165, -165, -165, -165,
3400      -165, -165, -165, -165, -165, -165, -165, -165, -165, -165,
3401 
3402      -165, -165, -165, -165, -165, -165, -165, -165, -165, -165,
3403      -165, -165, -165, -165, -165,   43,   43,   43,   43,   43,
3404        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3405        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3406        43, -165, -165, -165, -165, -165, -165,   43,   43,   43,
3407        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3408        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3409        43,   43,   43, -165, -165, -165, -165, -165
3410     },
3411 
3412     {
3413         7, -166, -166, -166, -166, -166, -166, -166, -166, -166,
3414      -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
3415 
3416      -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
3417      -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
3418      -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
3419      -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
3420      -166, -166, -166, -166, -166,   43,   43,   43,   43,   43,
3421        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3422        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3423        43, -166, -166, -166, -166, -166, -166,   43,   43,   43,
3424        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3425        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3426 
3427        43,   43,   43, -166, -166, -166, -166, -166
3428     },
3429 
3430     {
3431         7, -167, -167, -167, -167, -167, -167, -167, -167, -167,
3432      -167, -167, -167, -167, -167, -167, -167, -167, -167, -167,
3433      -167, -167, -167, -167, -167, -167, -167, -167, -167, -167,
3434      -167, -167, -167, -167, -167, -167, -167, -167, -167, -167,
3435      -167, -167, -167, -167, -167, -167, -167, -167, -167, -167,
3436      -167, -167, -167, -167, -167, -167, -167, -167, -167, -167,
3437      -167, -167, -167, -167, -167,   43,   43,   43,   43,   43,
3438        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3439        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3440 
3441        43, -167, -167, -167, -167, -167, -167,   43,   43,   43,
3442        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3443        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3444        43,   43,   43, -167, -167, -167, -167, -167
3445     },
3446 
3447     {
3448         7, -168, -168, -168, -168, -168, -168, -168, -168, -168,
3449      -168, -168, -168, -168, -168, -168, -168, -168, -168, -168,
3450      -168, -168, -168, -168, -168, -168, -168, -168, -168, -168,
3451      -168, -168, -168, -168, -168, -168, -168, -168, -168, -168,
3452      -168, -168, -168, -168, -168, -168, -168, -168, -168, -168,
3453      -168, -168, -168, -168, -168, -168, -168, -168, -168, -168,
3454 
3455      -168, -168, -168, -168, -168,   43,   43,   43,   43,   43,
3456        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3457        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3458        43, -168, -168, -168, -168, -168, -168,   43,   43,   43,
3459        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3460        43,   43,   43,   43,  191,   43,   43,   43,   43,   43,
3461        43,   43,   43, -168, -168, -168, -168, -168
3462     },
3463 
3464     {
3465         7, -169, -169, -169, -169, -169, -169, -169, -169, -169,
3466      -169, -169, -169, -169, -169, -169, -169, -169, -169, -169,
3467      -169, -169, -169, -169, -169, -169, -169, -169, -169, -169,
3468 
3469      -169, -169, -169, -169, -169, -169, -169, -169, -169, -169,
3470      -169, -169, -169, -169, -169, -169, -169, -169, -169, -169,
3471      -169, -169, -169, -169, -169, -169, -169, -169, -169, -169,
3472      -169, -169, -169, -169, -169,   43,   43,   43,   43,   43,
3473        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3474        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3475        43, -169, -169, -169, -169, -169, -169,   43,   43,   43,
3476        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3477       192,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3478        43,   43,   43, -169, -169, -169, -169, -169
3479 
3480     },
3481 
3482     {
3483         7, -170, -170, -170, -170, -170, -170, -170, -170, -170,
3484      -170, -170, -170, -170, -170, -170, -170, -170, -170, -170,
3485      -170, -170, -170, -170, -170, -170, -170, -170, -170, -170,
3486      -170, -170, -170, -170, -170, -170, -170, -170, -170, -170,
3487      -170, -170, -170, -170, -170, -170, -170, -170, -170, -170,
3488      -170, -170, -170, -170, -170, -170, -170, -170, -170, -170,
3489      -170, -170, -170, -170, -170,   43,   43,   43,   43,   43,
3490        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3491        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3492        43, -170, -170, -170, -170, -170, -170,   43,   43,  193,
3493 
3494        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3495        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3496        43,   43,   43, -170, -170, -170, -170, -170
3497     },
3498 
3499     {
3500         7, -171, -171, -171, -171, -171, -171, -171, -171, -171,
3501      -171, -171, -171, -171, -171, -171, -171, -171, -171, -171,
3502      -171, -171, -171, -171, -171, -171, -171, -171, -171, -171,
3503      -171, -171, -171, -171, -171, -171, -171, -171, -171, -171,
3504      -171, -171, -171, -171, -171, -171, -171, -171, -171, -171,
3505      -171, -171, -171, -171, -171, -171, -171, -171, -171, -171,
3506      -171, -171, -171, -171, -171,   43,   43,   43,   43,   43,
3507 
3508        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3509        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3510        43, -171, -171, -171, -171, -171, -171,   43,   43,   43,
3511        43,  194,   43,   43,   43,   43,   43,   43,   43,   43,
3512        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3513        43,   43,   43, -171, -171, -171, -171, -171
3514     },
3515 
3516     {
3517         7, -172, -172, -172, -172, -172, -172, -172, -172, -172,
3518      -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
3519      -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
3520      -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
3521 
3522      -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
3523      -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
3524      -172, -172, -172, -172, -172,   43,   43,   43,   43,   43,
3525        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3526        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3527        43, -172, -172, -172, -172, -172, -172,   43,   43,   43,
3528        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3529        43,   43,   43,   43,   43,  195,   43,   43,   43,   43,
3530        43,   43,   43, -172, -172, -172, -172, -172
3531     },
3532 
3533     {
3534         7, -173, -173, -173, -173, -173, -173, -173, -173, -173,
3535 
3536      -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
3537      -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
3538      -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
3539      -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
3540      -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
3541      -173, -173, -173, -173, -173,   43,   43,   43,   43,   43,
3542        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3543        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3544        43, -173, -173, -173, -173, -173, -173,   43,   43,   43,
3545        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3546 
3547        43,   43,   43,   43,   43,  196,   43,   43,   43,   43,
3548        43,   43,   43, -173, -173, -173, -173, -173
3549     },
3550 
3551     {
3552         7, -174, -174, -174, -174, -174, -174, -174, -174, -174,
3553      -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
3554      -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
3555      -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
3556      -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
3557      -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
3558      -174, -174, -174, -174, -174,   43,   43,   43,   43,   43,
3559        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3560 
3561        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3562        43, -174, -174, -174, -174, -174, -174,   43,   43,   43,
3563        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3564        43,   43,   43,   43,   43,  187,   43,   43,   43,   43,
3565        43,   43,   43, -174, -174, -174, -174, -174
3566     },
3567 
3568     {
3569         7, -175, -175, -175, -175, -175, -175, -175, -175, -175,
3570      -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
3571      -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
3572      -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
3573      -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
3574 
3575      -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
3576      -175, -175, -175, -175, -175,   43,   43,   43,   43,   43,
3577        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3578        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3579        43, -175, -175, -175, -175, -175, -175,   43,   43,   43,
3580        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3581       197,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3582        43,   43,   43, -175, -175, -175, -175, -175
3583     },
3584 
3585     {
3586         7, -176, -176, -176, -176, -176, -176, -176, -176, -176,
3587      -176, -176, -176, -176, -176, -176, -176, -176, -176, -176,
3588 
3589      -176, -176, -176, -176, -176, -176, -176, -176, -176, -176,
3590      -176, -176, -176, -176, -176, -176, -176, -176, -176, -176,
3591      -176, -176, -176, -176, -176, -176, -176, -176, -176, -176,
3592      -176, -176, -176, -176, -176, -176, -176, -176, -176, -176,
3593      -176, -176, -176, -176, -176,   43,   43,   43,   43,   43,
3594        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3595        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3596        43, -176, -176, -176, -176, -176, -176,   43,   43,   43,
3597       198,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3598        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3599 
3600        43,   43,   43, -176, -176, -176, -176, -176
3601     },
3602 
3603     {
3604         7, -177, -177, -177, -177, -177, -177, -177, -177, -177,
3605      -177, -177, -177, -177, -177, -177, -177, -177, -177, -177,
3606      -177, -177, -177, -177, -177, -177, -177, -177, -177, -177,
3607      -177, -177, -177, -177, -177, -177, -177, -177, -177, -177,
3608      -177, -177, -177, -177, -177, -177, -177, -177, -177, -177,
3609      -177, -177, -177, -177, -177, -177, -177, -177, -177, -177,
3610      -177, -177, -177, -177, -177,   43,   43,   43,   43,   43,
3611        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3612        43,   43,   43,  199,   43,   43,   43,   43,   43,   43,
3613 
3614        43, -177, -177, -177, -177, -177, -177,   43,   43,   43,
3615        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3616        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3617        43,   43,   43, -177, -177, -177, -177, -177
3618     },
3619 
3620     {
3621         7, -178, -178, -178, -178, -178, -178, -178, -178, -178,
3622      -178, -178, -178, -178, -178, -178, -178, -178, -178, -178,
3623      -178, -178, -178, -178, -178, -178, -178, -178, -178, -178,
3624      -178, -178, -178, -178, -178, -178, -178, -178, -178, -178,
3625      -178, -178, -178, -178, -178, -178, -178, -178, -178, -178,
3626      -178, -178, -178, -178, -178, -178, -178, -178, -178, -178,
3627 
3628      -178, -178, -178, -178, -178,   43,   43,   43,   43,   43,
3629        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3630        43,   43,   43,  200,   43,   43,   43,   43,   43,   43,
3631        43, -178, -178, -178, -178, -178, -178,   43,   43,   43,
3632        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3633        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3634        43,   43,   43, -178, -178, -178, -178, -178
3635     },
3636 
3637     {
3638         7, -179, -179, -179, -179, -179, -179, -179, -179, -179,
3639      -179, -179, -179, -179, -179, -179, -179, -179, -179, -179,
3640      -179, -179, -179, -179, -179, -179, -179, -179, -179, -179,
3641 
3642      -179, -179, -179, -179, -179, -179, -179, -179, -179, -179,
3643      -179, -179, -179, -179, -179, -179, -179, -179, -179, -179,
3644      -179, -179, -179, -179, -179, -179, -179, -179, -179, -179,
3645      -179, -179, -179, -179, -179,   43,   43,   43,   43,   43,
3646        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3647        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3648        43, -179, -179, -179, -179, -179, -179,   43,   43,   43,
3649        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3650        43,  201,   43,   43,   43,   43,   43,   43,   43,   43,
3651        43,   43,   43, -179, -179, -179, -179, -179
3652 
3653     },
3654 
3655     {
3656         7, -180, -180, -180, -180, -180, -180, -180, -180, -180,
3657      -180, -180, -180, -180, -180, -180, -180, -180, -180, -180,
3658      -180, -180, -180, -180, -180, -180, -180, -180, -180, -180,
3659      -180, -180, -180, -180, -180, -180, -180, -180, -180, -180,
3660      -180, -180, -180, -180, -180, -180, -180, -180, -180, -180,
3661      -180, -180, -180, -180, -180, -180, -180, -180, -180, -180,
3662      -180, -180, -180, -180, -180,   43,   43,   43,   43,   43,
3663        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3664        43,   43,   43,  202,   43,   43,   43,   43,   43,   43,
3665        43, -180, -180, -180, -180, -180, -180,   43,   43,   43,
3666 
3667        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3668        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3669        43,   43,   43, -180, -180, -180, -180, -180
3670     },
3671 
3672     {
3673         7, -181, -181, -181, -181, -181, -181, -181, -181, -181,
3674      -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
3675      -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
3676      -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
3677      -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
3678      -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
3679      -181, -181, -181, -181, -181,   43,   43,   43,   43,   43,
3680 
3681        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3682        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3683        43, -181, -181, -181, -181, -181, -181,   43,   43,   43,
3684        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3685        43,   43,   43,   43,   43,  203,   43,   43,   43,   43,
3686        43,   43,   43, -181, -181, -181, -181, -181
3687     },
3688 
3689     {
3690         7, -182, -182, -182, -182, -182, -182, -182, -182, -182,
3691      -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
3692      -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
3693      -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
3694 
3695      -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
3696      -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
3697      -182, -182, -182, -182, -182,   43,   43,   43,   43,   43,
3698        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3699        43,   43,   43,  204,   43,   43,   43,   43,   43,   43,
3700        43, -182, -182, -182, -182, -182, -182,   43,   43,   43,
3701        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3702        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3703        43,   43,   43, -182, -182, -182, -182, -182
3704     },
3705 
3706     {
3707         7, -183, -183, -183, -183, -183, -183, -183, -183, -183,
3708 
3709      -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
3710      -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
3711      -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
3712      -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
3713      -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
3714      -183, -183, -183, -183, -183,   43,   43,   43,   43,   43,
3715        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3716        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3717        43, -183, -183, -183, -183, -183, -183,   43,   43,   43,
3718        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3719 
3720        43,   43,   43,   43,   43,  205,   43,   43,   43,   43,
3721        43,   43,   43, -183, -183, -183, -183, -183
3722     },
3723 
3724     {
3725         7, -184, -184, -184, -184, -184, -184, -184, -184, -184,
3726      -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
3727      -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
3728      -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
3729      -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
3730      -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
3731      -184, -184, -184, -184, -184,   43,   43,   43,   43,   43,
3732        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3733 
3734        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3735        43, -184, -184, -184, -184, -184, -184,   43,   43,   43,
3736        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3737        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3738        43,   43,   43, -184, -184, -184, -184, -184
3739     },
3740 
3741     {
3742         7, -185, -185, -185, -185, -185, -185, -185, -185, -185,
3743      -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
3744      -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
3745      -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
3746      -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
3747 
3748      -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
3749      -185, -185, -185, -185, -185,   43,   43,   43,   43,   43,
3750        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3751        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3752        43, -185, -185, -185, -185, -185, -185,   43,   43,   43,
3753        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3754        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3755        43,   43,   43, -185, -185, -185, -185, -185
3756     },
3757 
3758     {
3759         7, -186, -186, -186, -186, -186, -186, -186, -186, -186,
3760      -186, -186, -186, -186, -186, -186, -186, -186, -186, -186,
3761 
3762      -186, -186, -186, -186, -186, -186, -186, -186, -186, -186,
3763      -186, -186, -186, -186, -186, -186, -186, -186, -186, -186,
3764      -186, -186, -186, -186, -186, -186, -186, -186, -186, -186,
3765      -186, -186, -186, -186, -186, -186, -186, -186, -186, -186,
3766      -186, -186, -186, -186, -186,   43,   43,   43,   43,   43,
3767        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3768        43,   43,   43,  206,   43,   43,   43,   43,   43,   43,
3769        43, -186, -186, -186, -186, -186, -186,   43,   43,   43,
3770        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3771        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3772 
3773        43,   43,   43, -186, -186, -186, -186, -186
3774     },
3775 
3776     {
3777         7, -187, -187, -187, -187, -187, -187, -187, -187, -187,
3778      -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
3779      -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
3780      -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
3781      -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
3782      -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
3783      -187, -187, -187, -187, -187,   43,   43,   43,   43,   43,
3784        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3785        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3786 
3787        43, -187, -187, -187, -187, -187, -187,   43,   43,   43,
3788        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3789        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3790        43,   43,   43, -187, -187, -187, -187, -187
3791     },
3792 
3793     {
3794         7, -188, -188, -188, -188, -188, -188, -188, -188, -188,
3795      -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
3796      -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
3797      -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
3798      -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
3799      -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
3800 
3801      -188, -188, -188, -188, -188,   43,   43,   43,   43,   43,
3802        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3803        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3804        43, -188, -188, -188, -188, -188, -188,   43,   43,   43,
3805        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3806        43,   43,   43,   43,   43,  207,   43,   43,   43,   43,
3807        43,   43,   43, -188, -188, -188, -188, -188
3808     },
3809 
3810     {
3811         7, -189, -189, -189, -189, -189, -189, -189, -189, -189,
3812      -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
3813      -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
3814 
3815      -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
3816      -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
3817      -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
3818      -189, -189, -189, -189, -189,   43,   43,   43,   43,   43,
3819        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3820        43,   43,   43,  208,   43,   43,   43,   43,   43,   43,
3821        43, -189, -189, -189, -189, -189, -189,   43,   43,   43,
3822        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3823        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3824        43,   43,   43, -189, -189, -189, -189, -189
3825 
3826     },
3827 
3828     {
3829         7, -190, -190, -190, -190, -190, -190, -190, -190, -190,
3830      -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
3831      -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
3832      -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
3833      -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
3834      -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
3835      -190, -190, -190, -190, -190,   43,   43,   43,   43,   43,
3836        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3837        43,   43,   43,  209,   43,   43,   43,   43,   43,   43,
3838        43, -190, -190, -190, -190, -190, -190,   43,   43,   43,
3839 
3840        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3841        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3842        43,   43,   43, -190, -190, -190, -190, -190
3843     },
3844 
3845     {
3846         7, -191, -191, -191, -191, -191, -191, -191, -191, -191,
3847      -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
3848      -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
3849      -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
3850      -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
3851      -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
3852      -191, -191, -191, -191, -191,   43,   43,   43,   43,   43,
3853 
3854        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3855        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3856        43, -191, -191, -191, -191, -191, -191,   43,   43,   43,
3857        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3858        43,  210,   43,   43,   43,   43,   43,   43,   43,   43,
3859        43,   43,   43, -191, -191, -191, -191, -191
3860     },
3861 
3862     {
3863         7, -192, -192, -192, -192, -192, -192, -192, -192, -192,
3864      -192, -192, -192, -192, -192, -192, -192, -192, -192, -192,
3865      -192, -192, -192, -192, -192, -192, -192, -192, -192, -192,
3866      -192, -192, -192, -192, -192, -192, -192, -192, -192, -192,
3867 
3868      -192, -192, -192, -192, -192, -192, -192, -192, -192, -192,
3869      -192, -192, -192, -192, -192, -192, -192, -192, -192, -192,
3870      -192, -192, -192, -192, -192,   43,   43,   43,   43,   43,
3871        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3872        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3873        43, -192, -192, -192, -192, -192, -192,   43,   43,   43,
3874        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3875        43,   43,   43,   43,   43,  199,   43,   43,   43,   43,
3876        43,   43,   43, -192, -192, -192, -192, -192
3877     },
3878 
3879     {
3880         7, -193, -193, -193, -193, -193, -193, -193, -193, -193,
3881 
3882      -193, -193, -193, -193, -193, -193, -193, -193, -193, -193,
3883      -193, -193, -193, -193, -193, -193, -193, -193, -193, -193,
3884      -193, -193, -193, -193, -193, -193, -193, -193, -193, -193,
3885      -193, -193, -193, -193, -193, -193, -193, -193, -193, -193,
3886      -193, -193, -193, -193, -193, -193, -193, -193, -193, -193,
3887      -193, -193, -193, -193, -193,   43,   43,   43,   43,   43,
3888        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3889        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3890        43, -193, -193, -193, -193, -193, -193,   43,   43,   43,
3891        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3892 
3893        43,   43,   43,   43,   43,  200,   43,   43,   43,   43,
3894        43,   43,   43, -193, -193, -193, -193, -193
3895     },
3896 
3897     {
3898         7, -194, -194, -194, -194, -194, -194, -194, -194, -194,
3899      -194, -194, -194, -194, -194, -194, -194, -194, -194, -194,
3900      -194, -194, -194, -194, -194, -194, -194, -194, -194, -194,
3901      -194, -194, -194, -194, -194, -194, -194, -194, -194, -194,
3902      -194, -194, -194, -194, -194, -194, -194, -194, -194, -194,
3903      -194, -194, -194, -194, -194, -194, -194, -194, -194, -194,
3904      -194, -194, -194, -194, -194,   43,   43,   43,   43,   43,
3905        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3906 
3907        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3908        43, -194, -194, -194, -194, -194, -194,   43,   43,   43,
3909        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3910        43,   43,   43,   43,   43,  211,   43,   43,   43,   43,
3911        43,   43,   43, -194, -194, -194, -194, -194
3912     },
3913 
3914     {
3915         7, -195, -195, -195, -195, -195, -195, -195, -195, -195,
3916      -195, -195, -195, -195, -195, -195, -195, -195, -195, -195,
3917      -195, -195, -195, -195, -195, -195, -195, -195, -195, -195,
3918      -195, -195, -195, -195, -195, -195, -195, -195, -195, -195,
3919      -195, -195, -195, -195, -195, -195, -195, -195, -195, -195,
3920 
3921      -195, -195, -195, -195, -195, -195, -195, -195, -195, -195,
3922      -195, -195, -195, -195, -195,   43,   43,   43,   43,   43,
3923        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3924        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3925        43, -195, -195, -195, -195, -195, -195,   43,   43,   43,
3926        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3927        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3928        43,   43,   43, -195, -195, -195, -195, -195
3929     },
3930 
3931     {
3932         7, -196, -196, -196, -196, -196, -196, -196, -196, -196,
3933      -196, -196, -196, -196, -196, -196, -196, -196, -196, -196,
3934 
3935      -196, -196, -196, -196, -196, -196, -196, -196, -196, -196,
3936      -196, -196, -196, -196, -196, -196, -196, -196, -196, -196,
3937      -196, -196, -196, -196, -196, -196, -196, -196, -196, -196,
3938      -196, -196, -196, -196, -196, -196, -196, -196, -196, -196,
3939      -196, -196, -196, -196, -196,   43,   43,   43,   43,   43,
3940        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3941        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3942        43, -196, -196, -196, -196, -196, -196,   43,   43,   43,
3943        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3944        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3945 
3946        43,   43,   43, -196, -196, -196, -196, -196
3947     },
3948 
3949     {
3950         7, -197, -197, -197, -197, -197, -197, -197, -197, -197,
3951      -197, -197, -197, -197, -197, -197, -197, -197, -197, -197,
3952      -197, -197, -197, -197, -197, -197, -197, -197, -197, -197,
3953      -197, -197, -197, -197, -197, -197, -197, -197, -197, -197,
3954      -197, -197, -197, -197, -197, -197, -197, -197, -197, -197,
3955      -197, -197, -197, -197, -197, -197, -197, -197, -197, -197,
3956      -197, -197, -197, -197, -197,   43,   43,   43,   43,   43,
3957        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3958        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3959 
3960        43, -197, -197, -197, -197, -197, -197,   43,   43,   43,
3961        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3962        43,   43,   43,   43,   43,  212,   43,   43,   43,   43,
3963        43,   43,   43, -197, -197, -197, -197, -197
3964     },
3965 
3966     {
3967         7, -198, -198, -198, -198, -198, -198, -198, -198, -198,
3968      -198, -198, -198, -198, -198, -198, -198, -198, -198, -198,
3969      -198, -198, -198, -198, -198, -198, -198, -198, -198, -198,
3970      -198, -198, -198, -198, -198, -198, -198, -198, -198, -198,
3971      -198, -198, -198, -198, -198, -198, -198, -198, -198, -198,
3972      -198, -198, -198, -198, -198, -198, -198, -198, -198, -198,
3973 
3974      -198, -198, -198, -198, -198,   43,   43,   43,   43,   43,
3975        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3976        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3977        43, -198, -198, -198, -198, -198, -198,   43,   43,   43,
3978        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3979        43,   43,   43,   43,   43,  213,   43,   43,   43,   43,
3980        43,   43,   43, -198, -198, -198, -198, -198
3981     },
3982 
3983     {
3984         7, -199, -199, -199, -199, -199, -199, -199, -199, -199,
3985      -199, -199, -199, -199, -199, -199, -199, -199, -199, -199,
3986      -199, -199, -199, -199, -199, -199, -199, -199, -199, -199,
3987 
3988      -199, -199, -199, -199, -199, -199, -199, -199, -199, -199,
3989      -199, -199, -199, -199, -199, -199, -199, -199, -199, -199,
3990      -199, -199, -199, -199, -199, -199, -199, -199, -199, -199,
3991      -199, -199, -199, -199, -199,   43,   43,   43,   43,   43,
3992        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3993        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3994        43, -199, -199, -199, -199, -199, -199,   43,   43,   43,
3995        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3996        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
3997        43,   43,   43, -199, -199, -199, -199, -199
3998 
3999     },
4000 
4001     {
4002         7, -200, -200, -200, -200, -200, -200, -200, -200, -200,
4003      -200, -200, -200, -200, -200, -200, -200, -200, -200, -200,
4004      -200, -200, -200, -200, -200, -200, -200, -200, -200, -200,
4005      -200, -200, -200, -200, -200, -200, -200, -200, -200, -200,
4006      -200, -200, -200, -200, -200, -200, -200, -200, -200, -200,
4007      -200, -200, -200, -200, -200, -200, -200, -200, -200, -200,
4008      -200, -200, -200, -200, -200,   43,   43,   43,   43,   43,
4009        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4010        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4011        43, -200, -200, -200, -200, -200, -200,   43,   43,   43,
4012 
4013        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4014        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4015        43,   43,   43, -200, -200, -200, -200, -200
4016     },
4017 
4018     {
4019         7, -201, -201, -201, -201, -201, -201, -201, -201, -201,
4020      -201, -201, -201, -201, -201, -201, -201, -201, -201, -201,
4021      -201, -201, -201, -201, -201, -201, -201, -201, -201, -201,
4022      -201, -201, -201, -201, -201, -201, -201, -201, -201, -201,
4023      -201, -201, -201, -201, -201, -201, -201, -201, -201, -201,
4024      -201, -201, -201, -201, -201, -201, -201, -201, -201, -201,
4025      -201, -201, -201, -201, -201,   43,   43,   43,   43,   43,
4026 
4027        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4028        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4029        43, -201, -201, -201, -201, -201, -201,   43,   43,   43,
4030        43,   43,   43,   43,   43,   43,   43,   43,   43,  214,
4031        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4032        43,   43,   43, -201, -201, -201, -201, -201
4033     },
4034 
4035     {
4036         7, -202, -202, -202, -202, -202, -202, -202, -202, -202,
4037      -202, -202, -202, -202, -202, -202, -202, -202, -202, -202,
4038      -202, -202, -202, -202, -202, -202, -202, -202, -202, -202,
4039      -202, -202, -202, -202, -202, -202, -202, -202, -202, -202,
4040 
4041      -202, -202, -202, -202, -202, -202, -202, -202, -202, -202,
4042      -202, -202, -202, -202, -202, -202, -202, -202, -202, -202,
4043      -202, -202, -202, -202, -202,   43,   43,   43,   43,   43,
4044        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4045        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4046        43, -202, -202, -202, -202, -202, -202,   43,   43,   43,
4047        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4048        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4049        43,   43,   43, -202, -202, -202, -202, -202
4050     },
4051 
4052     {
4053         7, -203, -203, -203, -203, -203, -203, -203, -203, -203,
4054 
4055      -203, -203, -203, -203, -203, -203, -203, -203, -203, -203,
4056      -203, -203, -203, -203, -203, -203, -203, -203, -203, -203,
4057      -203, -203, -203, -203, -203, -203, -203, -203, -203, -203,
4058      -203, -203, -203, -203, -203, -203, -203, -203, -203, -203,
4059      -203, -203, -203, -203, -203, -203, -203, -203, -203, -203,
4060      -203, -203, -203, -203, -203,   43,   43,   43,   43,   43,
4061        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4062        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4063        43, -203, -203, -203, -203, -203, -203,   43,   43,   43,
4064        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4065 
4066        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4067        43,   43,   43, -203, -203, -203, -203, -203
4068     },
4069 
4070     {
4071         7, -204, -204, -204, -204, -204, -204, -204, -204, -204,
4072      -204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
4073      -204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
4074      -204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
4075      -204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
4076      -204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
4077      -204, -204, -204, -204, -204,   43,   43,   43,   43,   43,
4078        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4079 
4080        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4081        43, -204, -204, -204, -204, -204, -204,   43,   43,   43,
4082        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4083        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4084        43,   43,   43, -204, -204, -204, -204, -204
4085     },
4086 
4087     {
4088         7, -205, -205, -205, -205, -205, -205, -205, -205, -205,
4089      -205, -205, -205, -205, -205, -205, -205, -205, -205, -205,
4090      -205, -205, -205, -205, -205, -205, -205, -205, -205, -205,
4091      -205, -205, -205, -205, -205, -205, -205, -205, -205, -205,
4092      -205, -205, -205, -205, -205, -205, -205, -205, -205, -205,
4093 
4094      -205, -205, -205, -205, -205, -205, -205, -205, -205, -205,
4095      -205, -205, -205, -205, -205,   43,   43,   43,   43,   43,
4096        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4097        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4098        43, -205, -205, -205, -205, -205, -205,   43,   43,   43,
4099        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4100        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4101        43,   43,   43, -205, -205, -205, -205, -205
4102     },
4103 
4104     {
4105         7, -206, -206, -206, -206, -206, -206, -206, -206, -206,
4106      -206, -206, -206, -206, -206, -206, -206, -206, -206, -206,
4107 
4108      -206, -206, -206, -206, -206, -206, -206, -206, -206, -206,
4109      -206, -206, -206, -206, -206, -206, -206, -206, -206, -206,
4110      -206, -206, -206, -206, -206, -206, -206, -206, -206, -206,
4111      -206, -206, -206, -206, -206, -206, -206, -206, -206, -206,
4112      -206, -206, -206, -206, -206,   43,   43,   43,   43,   43,
4113        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4114        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4115        43, -206, -206, -206, -206, -206, -206,   43,   43,   43,
4116        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4117        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4118 
4119        43,   43,   43, -206, -206, -206, -206, -206
4120     },
4121 
4122     {
4123         7, -207, -207, -207, -207, -207, -207, -207, -207, -207,
4124      -207, -207, -207, -207, -207, -207, -207, -207, -207, -207,
4125      -207, -207, -207, -207, -207, -207, -207, -207, -207, -207,
4126      -207, -207, -207, -207, -207, -207, -207, -207, -207, -207,
4127      -207, -207, -207, -207, -207, -207, -207, -207, -207, -207,
4128      -207, -207, -207, -207, -207, -207, -207, -207, -207, -207,
4129      -207, -207, -207, -207, -207,   43,   43,   43,   43,   43,
4130        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4131        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4132 
4133        43, -207, -207, -207, -207, -207, -207,   43,   43,   43,
4134        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4135        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4136        43,   43,   43, -207, -207, -207, -207, -207
4137     },
4138 
4139     {
4140         7, -208, -208, -208, -208, -208, -208, -208, -208, -208,
4141      -208, -208, -208, -208, -208, -208, -208, -208, -208, -208,
4142      -208, -208, -208, -208, -208, -208, -208, -208, -208, -208,
4143      -208, -208, -208, -208, -208, -208, -208, -208, -208, -208,
4144      -208, -208, -208, -208, -208, -208, -208, -208, -208, -208,
4145      -208, -208, -208, -208, -208, -208, -208, -208, -208, -208,
4146 
4147      -208, -208, -208, -208, -208,   43,   43,   43,   43,   43,
4148        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4149        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4150        43, -208, -208, -208, -208, -208, -208,   43,   43,   43,
4151        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4152        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4153        43,   43,   43, -208, -208, -208, -208, -208
4154     },
4155 
4156     {
4157         7, -209, -209, -209, -209, -209, -209, -209, -209, -209,
4158      -209, -209, -209, -209, -209, -209, -209, -209, -209, -209,
4159      -209, -209, -209, -209, -209, -209, -209, -209, -209, -209,
4160 
4161      -209, -209, -209, -209, -209, -209, -209, -209, -209, -209,
4162      -209, -209, -209, -209, -209, -209, -209, -209, -209, -209,
4163      -209, -209, -209, -209, -209, -209, -209, -209, -209, -209,
4164      -209, -209, -209, -209, -209,   43,   43,   43,   43,   43,
4165        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4166        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4167        43, -209, -209, -209, -209, -209, -209,   43,   43,   43,
4168        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4169        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4170        43,   43,   43, -209, -209, -209, -209, -209
4171 
4172     },
4173 
4174     {
4175         7, -210, -210, -210, -210, -210, -210, -210, -210, -210,
4176      -210, -210, -210, -210, -210, -210, -210, -210, -210, -210,
4177      -210, -210, -210, -210, -210, -210, -210, -210, -210, -210,
4178      -210, -210, -210, -210, -210, -210, -210, -210, -210, -210,
4179      -210, -210, -210, -210, -210, -210, -210, -210, -210, -210,
4180      -210, -210, -210, -210, -210, -210, -210, -210, -210, -210,
4181      -210, -210, -210, -210, -210,   43,   43,   43,   43,   43,
4182        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4183        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4184        43, -210, -210, -210, -210, -210, -210,   43,   43,   43,
4185 
4186        43,   43,   43,   43,   43,   43,   43,   43,   43,  215,
4187        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4188        43,   43,   43, -210, -210, -210, -210, -210
4189     },
4190 
4191     {
4192         7, -211, -211, -211, -211, -211, -211, -211, -211, -211,
4193      -211, -211, -211, -211, -211, -211, -211, -211, -211, -211,
4194      -211, -211, -211, -211, -211, -211, -211, -211, -211, -211,
4195      -211, -211, -211, -211, -211, -211, -211, -211, -211, -211,
4196      -211, -211, -211, -211, -211, -211, -211, -211, -211, -211,
4197      -211, -211, -211, -211, -211, -211, -211, -211, -211, -211,
4198      -211, -211, -211, -211, -211,   43,   43,   43,   43,   43,
4199 
4200        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4201        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4202        43, -211, -211, -211, -211, -211, -211,   43,   43,   43,
4203        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4204        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4205        43,   43,   43, -211, -211, -211, -211, -211
4206     },
4207 
4208     {
4209         7, -212, -212, -212, -212, -212, -212, -212, -212, -212,
4210      -212, -212, -212, -212, -212, -212, -212, -212, -212, -212,
4211      -212, -212, -212, -212, -212, -212, -212, -212, -212, -212,
4212      -212, -212, -212, -212, -212, -212, -212, -212, -212, -212,
4213 
4214      -212, -212, -212, -212, -212, -212, -212, -212, -212, -212,
4215      -212, -212, -212, -212, -212, -212, -212, -212, -212, -212,
4216      -212, -212, -212, -212, -212,   43,   43,   43,   43,   43,
4217        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4218        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4219        43, -212, -212, -212, -212, -212, -212,   43,   43,   43,
4220        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4221        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4222        43,   43,   43, -212, -212, -212, -212, -212
4223     },
4224 
4225     {
4226         7, -213, -213, -213, -213, -213, -213, -213, -213, -213,
4227 
4228      -213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
4229      -213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
4230      -213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
4231      -213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
4232      -213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
4233      -213, -213, -213, -213, -213,   43,   43,   43,   43,   43,
4234        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4235        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4236        43, -213, -213, -213, -213, -213, -213,   43,   43,   43,
4237        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4238 
4239        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4240        43,   43,   43, -213, -213, -213, -213, -213
4241     },
4242 
4243     {
4244         7, -214, -214, -214, -214, -214, -214, -214, -214, -214,
4245      -214, -214, -214, -214, -214, -214, -214, -214, -214, -214,
4246      -214, -214, -214, -214, -214, -214, -214, -214, -214, -214,
4247      -214, -214, -214, -214, -214, -214, -214, -214, -214, -214,
4248      -214, -214, -214, -214, -214, -214, -214, -214, -214, -214,
4249      -214, -214, -214, -214, -214, -214, -214, -214, -214, -214,
4250      -214, -214, -214, -214, -214,   43,   43,   43,   43,   43,
4251        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4252 
4253        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4254        43, -214, -214, -214, -214, -214, -214,   43,   43,   43,
4255        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4256        43,   43,   43,   43,   43,  216,   43,   43,   43,   43,
4257        43,   43,   43, -214, -214, -214, -214, -214
4258     },
4259 
4260     {
4261         7, -215, -215, -215, -215, -215, -215, -215, -215, -215,
4262      -215, -215, -215, -215, -215, -215, -215, -215, -215, -215,
4263      -215, -215, -215, -215, -215, -215, -215, -215, -215, -215,
4264      -215, -215, -215, -215, -215, -215, -215, -215, -215, -215,
4265      -215, -215, -215, -215, -215, -215, -215, -215, -215, -215,
4266 
4267      -215, -215, -215, -215, -215, -215, -215, -215, -215, -215,
4268      -215, -215, -215, -215, -215,   43,   43,   43,   43,   43,
4269        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4270        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4271        43, -215, -215, -215, -215, -215, -215,   43,   43,   43,
4272        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4273        43,   43,   43,   43,   43,  216,   43,   43,   43,   43,
4274        43,   43,   43, -215, -215, -215, -215, -215
4275     },
4276 
4277     {
4278         7, -216, -216, -216, -216, -216, -216, -216, -216, -216,
4279      -216, -216, -216, -216, -216, -216, -216, -216, -216, -216,
4280 
4281      -216, -216, -216, -216, -216, -216, -216, -216, -216, -216,
4282      -216, -216, -216, -216, -216, -216, -216, -216, -216, -216,
4283      -216, -216, -216, -216, -216, -216, -216, -216, -216, -216,
4284      -216, -216, -216, -216, -216, -216, -216, -216, -216, -216,
4285      -216, -216, -216, -216, -216,   43,   43,   43,   43,   43,
4286        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4287        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4288        43, -216, -216, -216, -216, -216, -216,   43,   43,   43,
4289        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4290        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
4291 
4292        43,   43,   43, -216, -216, -216, -216, -216
4293     },
4294 
4295     } ;
4296 
4297 static yy_state_type yy_get_previous_state ( yyscan_t yyscanner );
4298 static yy_state_type yy_try_NUL_trans ( yy_state_type current_state  , yyscan_t yyscanner);
4299 static int yy_get_next_buffer ( yyscan_t yyscanner );
4300 static void yynoreturn yy_fatal_error ( const char* msg , yyscan_t yyscanner );
4301 
4302 /* Done after the current pattern has been matched and before the
4303  * corresponding action - sets up yytext.
4304  */
4305 #define YY_DO_BEFORE_ACTION \
4306 	yyg->yytext_ptr = yy_bp; \
4307 	yyleng = (int) (yy_cp - yy_bp); \
4308 	yyg->yy_hold_char = *yy_cp; \
4309 	*yy_cp = '\0'; \
4310 	yyg->yy_c_buf_p = yy_cp;
4311 #define YY_NUM_RULES 37
4312 #define YY_END_OF_BUFFER 38
4313 /* This struct is not used in this scanner,
4314    but its presence is necessary. */
4315 struct yy_trans_info
4316 	{
4317 	flex_int32_t yy_verify;
4318 	flex_int32_t yy_nxt;
4319 	};
4320 static const flex_int16_t yy_accept[217] =
4321     {   0,
4322         0,    0,    0,    0,   36,   36,   38,    3,    2,   31,
4323        31,   31,   10,   31,   14,   31,   31,   20,   31,   31,
4324        31,   28,   31,   31,   31,   31,   31,   31,   31,   31,
4325        31,   31,   31,   31,    2,    1,   35,   37,   35,   32,
4326        36,    2,   31,   31,   31,   31,   31,   31,   31,   31,
4327        31,   13,   15,   17,   31,   31,   19,   31,   31,   31,
4328        31,   31,   31,   31,   31,   31,   31,   31,   31,   31,
4329        30,   31,   31,   31,   31,   31,   31,   31,   31,   31,
4330         2,    1,   33,   33,   34,   32,   36,   31,   31,   31,
4331        31,    9,   11,   11,   12,   31,   16,   31,   31,   22,
4332 
4333        21,   23,   31,   31,   31,   26,   27,   31,   31,   31,
4334        31,   31,    9,   31,   31,   31,   31,   27,   31,   31,
4335        31,   31,    7,    8,    9,   31,   31,   31,   31,   31,
4336        31,   31,   31,   31,   31,   31,   29,   29,   30,   31,
4337        31,   31,    9,   31,   31,   31,   31,   31,   31,   30,
4338        31,   31,   31,   31,   31,   31,   31,   20,   20,   31,
4339        25,   31,   31,   31,   29,   29,   30,   31,   31,   31,
4340        31,   20,   20,   31,   31,   31,    5,    6,   31,   11,
4341        11,   18,   18,   20,   20,   24,   25,   24,   26,   27,
4342        31,   31,   31,   11,   20,   20,   26,   27,    5,    6,
4343 
4344        31,   11,   11,   18,   18,   24,   24,   26,   27,   31,
4345        11,   26,   27,   31,    4,    4
4346     } ;
4347 
4348 static const yy_state_type yy_NUL_trans[217] =
4349     {   0,
4350         8,    8,   37,   37,   41,   41,    0,    0,    0,    0,
4351         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4352         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4353         0,    0,    0,    0,    0,    0,    0,    0,   83,    0,
4354        87,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4355         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4356         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4357         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4358         0,    0,    0,   83,    0,    0,   87,    0,    0,    0,
4359         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4360 
4361         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4362         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4363         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4364         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4365         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4366         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4367         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4368         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4369         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4370         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4371 
4372         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
4373         0,    0,    0,    0,    0,    0
4374     } ;
4375 
4376 /* The intent behind this definition is that it'll catch
4377  * any uses of REJECT which flex missed.
4378  */
4379 #define REJECT reject_used_but_not_detected
4380 #define yymore() yymore_used_but_not_detected
4381 #define YY_MORE_ADJ 0
4382 #define YY_RESTORE_YY_MORE_OFFSET
4383 #line 1 "wcsutrn.l"
4384 /*============================================================================
4385   WCSLIB 7.7 - an implementation of the FITS WCS standard.
4386   Copyright (C) 1995-2021, Mark Calabretta
4387 
4388   This file is part of WCSLIB.
4389 
4390   WCSLIB is free software: you can redistribute it and/or modify it under the
4391   terms of the GNU Lesser General Public License as published by the Free
4392   Software Foundation, either version 3 of the License, or (at your option)
4393   any later version.
4394 
4395   WCSLIB is distributed in the hope that it will be useful, but WITHOUT ANY
4396   WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
4397   FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for
4398   more details.
4399 
4400   You should have received a copy of the GNU Lesser General Public License
4401   along with WCSLIB.  If not, see http://www.gnu.org/licenses.
4402 
4403   Author: Mark Calabretta, Australia Telescope National Facility, CSIRO.
4404   http://www.atnf.csiro.au/people/Mark.Calabretta
4405   $Id: wcsutrn.c,v 7.7 2021/07/12 06:36:49 mcalabre Exp $
4406 *=============================================================================
4407 *
4408 * wcsutrn.l is a Flex description file containing the definition of a lexical
4409 * scanner that translates non-standard FITS units specifications.
4410 *
4411 * It requires Flex v2.5.4 or later.
4412 *
4413 * Refer to wcsunits.h for a description of the user interface and operating
4414 * notes.
4415 *
4416 *===========================================================================*/
4417 /* Options. */
4418 #define YY_NO_INPUT 1
4419 /* Exclusive start states. */
4420 
4421 #line 49 "wcsutrn.l"
4422 #include <setjmp.h>
4423 #include <stdio.h>
4424 #include <stdlib.h>
4425 #include <string.h>
4426 
4427 #include "wcserr.h"
4428 #include "wcsunits.h"
4429 
4430 // User data associated with yyscanner.
4431 struct wcsutrn_extra {
4432   // Used in preempting the call to exit() by yy_fatal_error().
4433   jmp_buf abort_jmp_env;
4434 };
4435 
4436 #define YY_DECL int wcsutrne_scanner(int ctrl, char unitstr[], \
4437  struct wcserr **err, yyscan_t yyscanner)
4438 
4439 // Dummy definition to circumvent compiler warnings.
4440 #define YY_INPUT(inbuff, count, bufsize) { count = YY_NULL; }
4441 
4442 // Preempt the call to exit() by yy_fatal_error().
4443 #define exit(status) longjmp(yyextra->abort_jmp_env, status);
4444 
4445 // Internal helper functions.
4446 static YY_DECL;
4447 
4448 #line 4449 "wcsutrn.c"
4449 #line 4450 "wcsutrn.c"
4450 
4451 #define INITIAL 0
4452 #define NEXT 1
4453 #define FLUSH 2
4454 
4455 #ifndef YY_NO_UNISTD_H
4456 /* Special case for "unistd.h", since it is non-ANSI. We include it way
4457  * down here because we want the user's section 1 to have been scanned first.
4458  * The user has a chance to override it with an option.
4459  */
4460 #include <unistd.h>
4461 #endif
4462 
4463 #define YY_EXTRA_TYPE struct wcsutrn_extra *
4464 
4465 /* Holds the entire state of the reentrant scanner. */
4466 struct yyguts_t
4467     {
4468 
4469     /* User-defined. Not touched by flex. */
4470     YY_EXTRA_TYPE yyextra_r;
4471 
4472     /* The rest are the same as the globals declared in the non-reentrant scanner. */
4473     FILE *yyin_r, *yyout_r;
4474     size_t yy_buffer_stack_top; /**< index of top of stack. */
4475     size_t yy_buffer_stack_max; /**< capacity of stack. */
4476     YY_BUFFER_STATE * yy_buffer_stack; /**< Stack as an array. */
4477     char yy_hold_char;
4478     int yy_n_chars;
4479     int yyleng_r;
4480     char *yy_c_buf_p;
4481     int yy_init;
4482     int yy_start;
4483     int yy_did_buffer_switch_on_eof;
4484     int yy_start_stack_ptr;
4485     int yy_start_stack_depth;
4486     int *yy_start_stack;
4487     yy_state_type yy_last_accepting_state;
4488     char* yy_last_accepting_cpos;
4489 
4490     int yylineno_r;
4491     int yy_flex_debug_r;
4492 
4493     char *yytext_r;
4494     int yy_more_flag;
4495     int yy_more_len;
4496 
4497     }; /* end struct yyguts_t */
4498 
4499 static int yy_init_globals ( yyscan_t yyscanner );
4500 
4501 int yylex_init (yyscan_t* scanner);
4502 
4503 int yylex_init_extra ( YY_EXTRA_TYPE user_defined, yyscan_t* scanner);
4504 
4505 /* Accessor methods to globals.
4506    These are made visible to non-reentrant scanners for convenience. */
4507 
4508 int yylex_destroy ( yyscan_t yyscanner );
4509 
4510 int yyget_debug ( yyscan_t yyscanner );
4511 
4512 void yyset_debug ( int debug_flag , yyscan_t yyscanner );
4513 
4514 YY_EXTRA_TYPE yyget_extra ( yyscan_t yyscanner );
4515 
4516 void yyset_extra ( YY_EXTRA_TYPE user_defined , yyscan_t yyscanner );
4517 
4518 FILE *yyget_in ( yyscan_t yyscanner );
4519 
4520 void yyset_in  ( FILE * _in_str , yyscan_t yyscanner );
4521 
4522 FILE *yyget_out ( yyscan_t yyscanner );
4523 
4524 void yyset_out  ( FILE * _out_str , yyscan_t yyscanner );
4525 
4526 			int yyget_leng ( yyscan_t yyscanner );
4527 
4528 char *yyget_text ( yyscan_t yyscanner );
4529 
4530 int yyget_lineno ( yyscan_t yyscanner );
4531 
4532 void yyset_lineno ( int _line_number , yyscan_t yyscanner );
4533 
4534 int yyget_column  ( yyscan_t yyscanner );
4535 
4536 void yyset_column ( int _column_no , yyscan_t yyscanner );
4537 
4538 /* Macros after this point can all be overridden by user definitions in
4539  * section 1.
4540  */
4541 
4542 #ifndef YY_SKIP_YYWRAP
4543 #ifdef __cplusplus
4544 extern "C" int yywrap ( yyscan_t yyscanner );
4545 #else
4546 extern int yywrap ( yyscan_t yyscanner );
4547 #endif
4548 #endif
4549 
4550 #ifndef YY_NO_UNPUT
4551 
4552     static void yyunput ( int c, char *buf_ptr  , yyscan_t yyscanner);
4553 
4554 #endif
4555 
4556 #ifndef yytext_ptr
4557 static void yy_flex_strncpy ( char *, const char *, int , yyscan_t yyscanner);
4558 #endif
4559 
4560 #ifdef YY_NEED_STRLEN
4561 static int yy_flex_strlen ( const char * , yyscan_t yyscanner);
4562 #endif
4563 
4564 #ifndef YY_NO_INPUT
4565 #ifdef __cplusplus
4566 static int yyinput ( yyscan_t yyscanner );
4567 #else
4568 static int input ( yyscan_t yyscanner );
4569 #endif
4570 
4571 #endif
4572 
4573 /* Amount of stuff to slurp up with each read. */
4574 #ifndef YY_READ_BUF_SIZE
4575 #ifdef __ia64__
4576 /* On IA-64, the buffer size is 16k, not 8k */
4577 #define YY_READ_BUF_SIZE 16384
4578 #else
4579 #define YY_READ_BUF_SIZE 8192
4580 #endif /* __ia64__ */
4581 #endif
4582 
4583 /* Copy whatever the last rule matched to the standard output. */
4584 #ifndef ECHO
4585 /* This used to be an fputs(), but since the string might contain NUL's,
4586  * we now use fwrite().
4587  */
4588 #define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)
4589 #endif
4590 
4591 /* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
4592  * is returned in "result".
4593  */
4594 #ifndef YY_INPUT
4595 #define YY_INPUT(buf,result,max_size) \
4596 	errno=0; \
4597 	while ( (result = (int) read( fileno(yyin), buf, (yy_size_t) max_size )) < 0 ) \
4598 	{ \
4599 		if( errno != EINTR) \
4600 		{ \
4601 			YY_FATAL_ERROR( "input in flex scanner failed" ); \
4602 			break; \
4603 		} \
4604 		errno=0; \
4605 		clearerr(yyin); \
4606 	}\
4607 \
4608 
4609 #endif
4610 
4611 /* No semi-colon after return; correct usage is to write "yyterminate();" -
4612  * we don't want an extra ';' after the "return" because that will cause
4613  * some compilers to complain about unreachable statements.
4614  */
4615 #ifndef yyterminate
4616 #define yyterminate() return YY_NULL
4617 #endif
4618 
4619 /* Number of entries by which start-condition stack grows. */
4620 #ifndef YY_START_STACK_INCR
4621 #define YY_START_STACK_INCR 25
4622 #endif
4623 
4624 /* Report a fatal error. */
4625 #ifndef YY_FATAL_ERROR
4626 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg , yyscanner)
4627 #endif
4628 
4629 /* end tables serialization structures and prototypes */
4630 
4631 /* Default declaration of generated scanner - a define so the user can
4632  * easily add parameters.
4633  */
4634 #ifndef YY_DECL
4635 #define YY_DECL_IS_OURS 1
4636 
4637 extern int yylex (yyscan_t yyscanner);
4638 
4639 #define YY_DECL int yylex (yyscan_t yyscanner)
4640 #endif /* !YY_DECL */
4641 
4642 /* Code executed at the beginning of each rule, after yytext and yyleng
4643  * have been set up.
4644  */
4645 #ifndef YY_USER_ACTION
4646 #define YY_USER_ACTION
4647 #endif
4648 
4649 /* Code executed at the end of each rule. */
4650 #ifndef YY_BREAK
4651 #define YY_BREAK /*LINTED*/break;
4652 #endif
4653 
4654 #define YY_RULE_SETUP \
4655 	if ( yyleng > 0 ) \
4656 		YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \
4657 				(yytext[yyleng - 1] == '\n'); \
4658 	YY_USER_ACTION
4659 
4660 /** The main scanner function which does all the work.
4661  */
4662 YY_DECL
4663 {
4664 	yy_state_type yy_current_state;
4665 	char *yy_cp, *yy_bp;
4666 	int yy_act;
4667     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
4668 
4669 	if ( !yyg->yy_init )
4670 		{
4671 		yyg->yy_init = 1;
4672 
4673 #ifdef YY_USER_INIT
4674 		YY_USER_INIT;
4675 #endif
4676 
4677 		if ( ! yyg->yy_start )
4678 			yyg->yy_start = 1;	/* first start state */
4679 
4680 		if ( ! yyin )
4681 			yyin = stdin;
4682 
4683 		if ( ! yyout )
4684 			yyout = stdout;
4685 
4686 		if ( ! YY_CURRENT_BUFFER ) {
4687 			yyensure_buffer_stack (yyscanner);
4688 			YY_CURRENT_BUFFER_LVALUE =
4689 				yy_create_buffer( yyin, YY_BUF_SIZE , yyscanner);
4690 		}
4691 
4692 		yy_load_buffer_state( yyscanner );
4693 		}
4694 
4695 	{
4696 #line 77 "wcsutrn.l"
4697 
4698 #line 79 "wcsutrn.l"
4699 	static const char *function = "wcsutrne_scanner";
4700 
4701 	if (err) *err = 0x0;
4702 
4703 	char orig[80], subs[80];
4704 	*orig = '\0';
4705 	*subs = '\0';
4706 
4707 	int bracket = 0;
4708 	int unsafe  = 0;
4709 	int status  = -1;
4710 
4711 	yy_delete_buffer(YY_CURRENT_BUFFER, yyscanner);
4712 	yy_scan_string(unitstr, yyscanner);
4713 	*unitstr = '\0';
4714 
4715 	// Return here via longjmp() invoked by yy_fatal_error().
4716 	if (setjmp(yyextra->abort_jmp_env)) {
4717 	  return wcserr_set(WCSERR_SET(UNITSERR_PARSER_ERROR),
4718 	    "Internal units translator error");
4719 	}
4720 
4721 	BEGIN(INITIAL);
4722 
4723 #ifdef DEBUG
4724 	fprintf(stderr, "\n%s ->\n", unitstr);
4725 #endif
4726 
4727 #line 4728 "wcsutrn.c"
4728 
4729 	while ( /*CONSTCOND*/1 )		/* loops until end-of-file is reached */
4730 		{
4731 		yy_cp = yyg->yy_c_buf_p;
4732 
4733 		/* Support of yytext. */
4734 		*yy_cp = yyg->yy_hold_char;
4735 
4736 		/* yy_bp points to the position in yy_ch_buf of the start of
4737 		 * the current run.
4738 		 */
4739 		yy_bp = yy_cp;
4740 
4741 		yy_current_state = yyg->yy_start;
4742 		yy_current_state += YY_AT_BOL();
4743 yy_match:
4744 		while ( (yy_current_state = yy_nxt[yy_current_state][ YY_SC_TO_UI(*yy_cp) ]) > 0 )
4745 			++yy_cp;
4746 
4747 		yy_current_state = -yy_current_state;
4748 
4749 yy_find_action:
4750 		yy_act = yy_accept[yy_current_state];
4751 
4752 		YY_DO_BEFORE_ACTION;
4753 
4754 do_action:	/* This label is used only to access EOF actions. */
4755 
4756 		switch ( yy_act )
4757 	{ /* beginning of action switch */
4758 case 1:
4759 YY_RULE_SETUP
4760 #line 107 "wcsutrn.l"
4761 {
4762 	  // Looks like a keycomment.
4763 	  strcat(unitstr, "[");
4764 	  bracket = 1;
4765 	}
4766 	YY_BREAK
4767 case 2:
4768 YY_RULE_SETUP
4769 #line 113 "wcsutrn.l"
4770 // Discard leading whitespace.
4771 	YY_BREAK
4772 case 3:
4773 /* rule 3 can match eol */
4774 YY_RULE_SETUP
4775 #line 115 "wcsutrn.l"
4776 {
4777 	  // Non-alphabetic character.
4778 	  strcat(unitstr, yytext);
4779 	  if (bracket && *yytext == ']') {
4780 	    BEGIN(FLUSH);
4781 	  }
4782 	}
4783 	YY_BREAK
4784 case 4:
4785 YY_RULE_SETUP
4786 #line 123 "wcsutrn.l"
4787 {
4788 	  strcpy(orig, yytext);
4789 	  strcpy(subs, "Angstrom");
4790 	  BEGIN(NEXT);
4791 	}
4792 	YY_BREAK
4793 case 5:
4794 YY_RULE_SETUP
4795 #line 129 "wcsutrn.l"
4796 {
4797 	  strcpy(orig, yytext);
4798 	  strcpy(subs, "arcmin");
4799 	  BEGIN(NEXT);
4800 	}
4801 	YY_BREAK
4802 case 6:
4803 YY_RULE_SETUP
4804 #line 135 "wcsutrn.l"
4805 {
4806 	  strcpy(orig, yytext);
4807 	  strcpy(subs, "arcsec");
4808 	  BEGIN(NEXT);
4809 	}
4810 	YY_BREAK
4811 case 7:
4812 YY_RULE_SETUP
4813 #line 141 "wcsutrn.l"
4814 {
4815 	  strcpy(orig, yytext);
4816 	  strcpy(subs, "beam");
4817 	  BEGIN(NEXT);
4818 	}
4819 	YY_BREAK
4820 case 8:
4821 YY_RULE_SETUP
4822 #line 147 "wcsutrn.l"
4823 {
4824 	  strcpy(orig, yytext);
4825 	  strcpy(subs, "byte");
4826 	  BEGIN(NEXT);
4827 	}
4828 	YY_BREAK
4829 case 9:
4830 YY_RULE_SETUP
4831 #line 153 "wcsutrn.l"
4832 {
4833 	  strcpy(orig, yytext);
4834 	  strcpy(subs, "d");
4835 	  BEGIN(NEXT);
4836 	}
4837 	YY_BREAK
4838 case 10:
4839 YY_RULE_SETUP
4840 #line 159 "wcsutrn.l"
4841 {
4842 	  unsafe = 1;
4843 	  strcpy(orig, yytext);
4844 	  strcpy(subs, (ctrl & 4) ? "d" : "D");
4845 	  BEGIN(NEXT);
4846 	}
4847 	YY_BREAK
4848 case 11:
4849 YY_RULE_SETUP
4850 #line 166 "wcsutrn.l"
4851 {
4852 	  strcpy(orig, yytext);
4853 	  strcpy(subs, "deg");
4854 	  BEGIN(NEXT);
4855 	}
4856 	YY_BREAK
4857 case 12:
4858 YY_RULE_SETUP
4859 #line 172 "wcsutrn.l"
4860 {
4861 	  strcpy(orig, yytext);
4862 	  strcpy(subs, "GHz");
4863 	  BEGIN(NEXT);
4864 	}
4865 	YY_BREAK
4866 case 13:
4867 YY_RULE_SETUP
4868 #line 178 "wcsutrn.l"
4869 {
4870 	  strcpy(orig, yytext);
4871 	  strcpy(subs, "h");
4872 	  BEGIN(NEXT);
4873 	}
4874 	YY_BREAK
4875 case 14:
4876 YY_RULE_SETUP
4877 #line 184 "wcsutrn.l"
4878 {
4879 	  unsafe = 1;
4880 	  strcpy(orig, yytext);
4881 	  strcpy(subs, (ctrl & 2) ? "h" : "H");
4882 	  BEGIN(NEXT);
4883 	}
4884 	YY_BREAK
4885 case 15:
4886 YY_RULE_SETUP
4887 #line 191 "wcsutrn.l"
4888 {
4889 	  strcpy(orig, yytext);
4890 	  strcpy(subs, "Hz");
4891 	  BEGIN(NEXT);
4892 	}
4893 	YY_BREAK
4894 case 16:
4895 YY_RULE_SETUP
4896 #line 197 "wcsutrn.l"
4897 {
4898 	  strcpy(orig, yytext);
4899 	  strcpy(subs, "kHz");
4900 	  BEGIN(NEXT);
4901 	}
4902 	YY_BREAK
4903 case 17:
4904 YY_RULE_SETUP
4905 #line 203 "wcsutrn.l"
4906 {
4907 	  strcpy(orig, yytext);
4908 	  strcpy(subs, "Jy");
4909 	  BEGIN(NEXT);
4910 	}
4911 	YY_BREAK
4912 case 18:
4913 YY_RULE_SETUP
4914 #line 209 "wcsutrn.l"
4915 {
4916 	  strcpy(orig, yytext);
4917 	  strcpy(subs, "K");
4918 	  BEGIN(NEXT);
4919 	}
4920 	YY_BREAK
4921 case 19:
4922 YY_RULE_SETUP
4923 #line 215 "wcsutrn.l"
4924 {
4925 	  strcpy(orig, yytext);
4926 	  strcpy(subs, "km");
4927 	  BEGIN(NEXT);
4928 	}
4929 	YY_BREAK
4930 case 20:
4931 YY_RULE_SETUP
4932 #line 221 "wcsutrn.l"
4933 {
4934 	  strcpy(orig, yytext);
4935 	  strcpy(subs, "m");
4936 	  BEGIN(NEXT);
4937 	}
4938 	YY_BREAK
4939 case 21:
4940 YY_RULE_SETUP
4941 #line 227 "wcsutrn.l"
4942 {
4943 	  strcpy(orig, yytext);
4944 	  strcpy(subs, "min");
4945 	  BEGIN(NEXT);
4946 	}
4947 	YY_BREAK
4948 case 22:
4949 YY_RULE_SETUP
4950 #line 233 "wcsutrn.l"
4951 {
4952 	  strcpy(orig, yytext);
4953 	  strcpy(subs, "MHz");
4954 	  BEGIN(NEXT);
4955 	}
4956 	YY_BREAK
4957 case 23:
4958 YY_RULE_SETUP
4959 #line 239 "wcsutrn.l"
4960 {
4961 	  strcpy(orig, yytext);
4962 	  strcpy(subs, "ohm");
4963 	  BEGIN(NEXT);
4964 	}
4965 	YY_BREAK
4966 case 24:
4967 YY_RULE_SETUP
4968 #line 245 "wcsutrn.l"
4969 {
4970 	  strcpy(orig, yytext);
4971 	  strcpy(subs, "Pa");
4972 	  BEGIN(NEXT);
4973 	}
4974 	YY_BREAK
4975 case 25:
4976 YY_RULE_SETUP
4977 #line 251 "wcsutrn.l"
4978 {
4979 	  strcpy(orig, yytext);
4980 	  strcpy(subs, "pixel");
4981 	  BEGIN(NEXT);
4982 	}
4983 	YY_BREAK
4984 case 26:
4985 YY_RULE_SETUP
4986 #line 257 "wcsutrn.l"
4987 {
4988 	  strcpy(orig, yytext);
4989 	  strcpy(subs, "rad");
4990 	  BEGIN(NEXT);
4991 	}
4992 	YY_BREAK
4993 case 27:
4994 YY_RULE_SETUP
4995 #line 263 "wcsutrn.l"
4996 {
4997 	  strcpy(orig, yytext);
4998 	  strcpy(subs, "s");
4999 	  BEGIN(NEXT);
5000 	}
5001 	YY_BREAK
5002 case 28:
5003 YY_RULE_SETUP
5004 #line 269 "wcsutrn.l"
5005 {
5006 	  unsafe = 1;
5007 	  strcpy(orig, yytext);
5008 	  strcpy(subs, (ctrl & 1) ? "s" : "S");
5009 	  BEGIN(NEXT);
5010 	}
5011 	YY_BREAK
5012 case 29:
5013 YY_RULE_SETUP
5014 #line 276 "wcsutrn.l"
5015 {
5016 	  strcpy(orig, yytext);
5017 	  strcpy(subs, "V");
5018 	  BEGIN(NEXT);
5019 	}
5020 	YY_BREAK
5021 case 30:
5022 YY_RULE_SETUP
5023 #line 282 "wcsutrn.l"
5024 {
5025 	  strcpy(orig, yytext);
5026 	  strcpy(subs, "yr");
5027 	  BEGIN(NEXT);
5028 	}
5029 	YY_BREAK
5030 case 31:
5031 YY_RULE_SETUP
5032 #line 288 "wcsutrn.l"
5033 {
5034 	  // Not a recognized alias.
5035 	  strcpy(orig, yytext);
5036 	  strcpy(subs, orig);
5037 	  BEGIN(NEXT);
5038 	}
5039 	YY_BREAK
5040 case 32:
5041 YY_RULE_SETUP
5042 #line 295 "wcsutrn.l"
5043 {
5044 	  // Reject the alias match.
5045 	  strcat(orig, yytext);
5046 	  strcpy(subs, orig);
5047 	}
5048 	YY_BREAK
5049 case 33:
5050 /* rule 33 can match eol */
5051 YY_RULE_SETUP
5052 #line 301 "wcsutrn.l"
5053 {
5054 	  // Discard separating whitespace.
5055 	  unput(yytext[yyleng-1]);
5056 	}
5057 	YY_BREAK
5058 case 34:
5059 YY_RULE_SETUP
5060 #line 306 "wcsutrn.l"
5061 {
5062 	  // Compress separating whitespace.
5063 	  strcat(unitstr, subs);
5064 	  strcat(unitstr, " ");
5065 	  if (strcmp(orig, subs)) status = 0;
5066 	  unput(yytext[yyleng-1]);
5067 	  *subs = '\0';
5068 	  BEGIN(INITIAL);
5069 	}
5070 	YY_BREAK
5071 case 35:
5072 YY_RULE_SETUP
5073 #line 316 "wcsutrn.l"
5074 {
5075 	  // Copy anything else unchanged.
5076 	  strcat(unitstr, subs);
5077 	  if (strcmp(orig, subs)) status = 0;
5078 	  unput(*yytext);
5079 	  *subs = '\0';
5080 	  BEGIN(INITIAL);
5081 	}
5082 	YY_BREAK
5083 case 36:
5084 YY_RULE_SETUP
5085 #line 325 "wcsutrn.l"
5086 {
5087 	  // Copy out remaining input.
5088 	  strcat(unitstr, yytext);
5089 	}
5090 	YY_BREAK
5091 case YY_STATE_EOF(INITIAL):
5092 case YY_STATE_EOF(NEXT):
5093 case YY_STATE_EOF(FLUSH):
5094 #line 330 "wcsutrn.l"
5095 {
5096 	  // End-of-string.
5097 	  if (*subs) {
5098 	    strcat(unitstr, subs);
5099 	    if (strcmp(orig, subs)) status = 0;
5100 	  }
5101 
5102 	  if (unsafe) {
5103 	    return wcserr_set(WCSERR_SET(UNITSERR_UNSAFE_TRANS),
5104 	      "Unsafe unit translation in '%s'", unitstr);
5105 	  }
5106 	  return status;
5107 	}
5108 	YY_BREAK
5109 case 37:
5110 YY_RULE_SETUP
5111 #line 344 "wcsutrn.l"
5112 ECHO;
5113 	YY_BREAK
5114 #line 5115 "wcsutrn.c"
5115 
5116 	case YY_END_OF_BUFFER:
5117 		{
5118 		/* Amount of text matched not including the EOB char. */
5119 		int yy_amount_of_matched_text = (int) (yy_cp - yyg->yytext_ptr) - 1;
5120 
5121 		/* Undo the effects of YY_DO_BEFORE_ACTION. */
5122 		*yy_cp = yyg->yy_hold_char;
5123 		YY_RESTORE_YY_MORE_OFFSET
5124 
5125 		if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
5126 			{
5127 			/* We're scanning a new file or input source.  It's
5128 			 * possible that this happened because the user
5129 			 * just pointed yyin at a new source and called
5130 			 * yylex().  If so, then we have to assure
5131 			 * consistency between YY_CURRENT_BUFFER and our
5132 			 * globals.  Here is the right place to do so, because
5133 			 * this is the first action (other than possibly a
5134 			 * back-up) that will match for the new input source.
5135 			 */
5136 			yyg->yy_n_chars = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
5137 			YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
5138 			YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
5139 			}
5140 
5141 		/* Note that here we test for yy_c_buf_p "<=" to the position
5142 		 * of the first EOB in the buffer, since yy_c_buf_p will
5143 		 * already have been incremented past the NUL character
5144 		 * (since all states make transitions on EOB to the
5145 		 * end-of-buffer state).  Contrast this with the test
5146 		 * in input().
5147 		 */
5148 		if ( yyg->yy_c_buf_p <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars] )
5149 			{ /* This was really a NUL. */
5150 			yy_state_type yy_next_state;
5151 
5152 			yyg->yy_c_buf_p = yyg->yytext_ptr + yy_amount_of_matched_text;
5153 
5154 			yy_current_state = yy_get_previous_state( yyscanner );
5155 
5156 			/* Okay, we're now positioned to make the NUL
5157 			 * transition.  We couldn't have
5158 			 * yy_get_previous_state() go ahead and do it
5159 			 * for us because it doesn't know how to deal
5160 			 * with the possibility of jamming (and we don't
5161 			 * want to build jamming into it because then it
5162 			 * will run more slowly).
5163 			 */
5164 
5165 			yy_next_state = yy_try_NUL_trans( yy_current_state , yyscanner);
5166 
5167 			yy_bp = yyg->yytext_ptr + YY_MORE_ADJ;
5168 
5169 			if ( yy_next_state )
5170 				{
5171 				/* Consume the NUL. */
5172 				yy_cp = ++yyg->yy_c_buf_p;
5173 				yy_current_state = yy_next_state;
5174 				goto yy_match;
5175 				}
5176 
5177 			else
5178 				{
5179 				yy_cp = yyg->yy_c_buf_p;
5180 				goto yy_find_action;
5181 				}
5182 			}
5183 
5184 		else switch ( yy_get_next_buffer( yyscanner ) )
5185 			{
5186 			case EOB_ACT_END_OF_FILE:
5187 				{
5188 				yyg->yy_did_buffer_switch_on_eof = 0;
5189 
5190 				if ( yywrap( yyscanner ) )
5191 					{
5192 					/* Note: because we've taken care in
5193 					 * yy_get_next_buffer() to have set up
5194 					 * yytext, we can now set up
5195 					 * yy_c_buf_p so that if some total
5196 					 * hoser (like flex itself) wants to
5197 					 * call the scanner after we return the
5198 					 * YY_NULL, it'll still work - another
5199 					 * YY_NULL will get returned.
5200 					 */
5201 					yyg->yy_c_buf_p = yyg->yytext_ptr + YY_MORE_ADJ;
5202 
5203 					yy_act = YY_STATE_EOF(YY_START);
5204 					goto do_action;
5205 					}
5206 
5207 				else
5208 					{
5209 					if ( ! yyg->yy_did_buffer_switch_on_eof )
5210 						YY_NEW_FILE;
5211 					}
5212 				break;
5213 				}
5214 
5215 			case EOB_ACT_CONTINUE_SCAN:
5216 				yyg->yy_c_buf_p =
5217 					yyg->yytext_ptr + yy_amount_of_matched_text;
5218 
5219 				yy_current_state = yy_get_previous_state( yyscanner );
5220 
5221 				yy_cp = yyg->yy_c_buf_p;
5222 				yy_bp = yyg->yytext_ptr + YY_MORE_ADJ;
5223 				goto yy_match;
5224 
5225 			case EOB_ACT_LAST_MATCH:
5226 				yyg->yy_c_buf_p =
5227 				&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars];
5228 
5229 				yy_current_state = yy_get_previous_state( yyscanner );
5230 
5231 				yy_cp = yyg->yy_c_buf_p;
5232 				yy_bp = yyg->yytext_ptr + YY_MORE_ADJ;
5233 				goto yy_find_action;
5234 			}
5235 		break;
5236 		}
5237 
5238 	default:
5239 		YY_FATAL_ERROR(
5240 			"fatal flex scanner internal error--no action found" );
5241 	} /* end of action switch */
5242 		} /* end of scanning one token */
5243 	} /* end of user's declarations */
5244 } /* end of yylex */
5245 
5246 /* yy_get_next_buffer - try to read in a new buffer
5247  *
5248  * Returns a code representing an action:
5249  *	EOB_ACT_LAST_MATCH -
5250  *	EOB_ACT_CONTINUE_SCAN - continue scanning from current position
5251  *	EOB_ACT_END_OF_FILE - end of file
5252  */
yy_get_next_buffer(yyscan_t yyscanner)5253 static int yy_get_next_buffer (yyscan_t yyscanner)
5254 {
5255     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5256 	char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
5257 	char *source = yyg->yytext_ptr;
5258 	int number_to_move, i;
5259 	int ret_val;
5260 
5261 	if ( yyg->yy_c_buf_p > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars + 1] )
5262 		YY_FATAL_ERROR(
5263 		"fatal flex scanner internal error--end of buffer missed" );
5264 
5265 	if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
5266 		{ /* Don't try to fill the buffer, so this is an EOF. */
5267 		if ( yyg->yy_c_buf_p - yyg->yytext_ptr - YY_MORE_ADJ == 1 )
5268 			{
5269 			/* We matched a single character, the EOB, so
5270 			 * treat this as a final EOF.
5271 			 */
5272 			return EOB_ACT_END_OF_FILE;
5273 			}
5274 
5275 		else
5276 			{
5277 			/* We matched some text prior to the EOB, first
5278 			 * process it.
5279 			 */
5280 			return EOB_ACT_LAST_MATCH;
5281 			}
5282 		}
5283 
5284 	/* Try to read more data. */
5285 
5286 	/* First move last chars to start of buffer. */
5287 	number_to_move = (int) (yyg->yy_c_buf_p - yyg->yytext_ptr - 1);
5288 
5289 	for ( i = 0; i < number_to_move; ++i )
5290 		*(dest++) = *(source++);
5291 
5292 	if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
5293 		/* don't do the read, it's not guaranteed to return an EOF,
5294 		 * just force an EOF
5295 		 */
5296 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars = 0;
5297 
5298 	else
5299 		{
5300 			int num_to_read =
5301 			YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
5302 
5303 		while ( num_to_read <= 0 )
5304 			{ /* Not enough room in the buffer - grow it. */
5305 
5306 			/* just a shorter name for the current buffer */
5307 			YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE;
5308 
5309 			int yy_c_buf_p_offset =
5310 				(int) (yyg->yy_c_buf_p - b->yy_ch_buf);
5311 
5312 			if ( b->yy_is_our_buffer )
5313 				{
5314 				int new_size = b->yy_buf_size * 2;
5315 
5316 				if ( new_size <= 0 )
5317 					b->yy_buf_size += b->yy_buf_size / 8;
5318 				else
5319 					b->yy_buf_size *= 2;
5320 
5321 				b->yy_ch_buf = (char *)
5322 					/* Include room in for 2 EOB chars. */
5323 					yyrealloc( (void *) b->yy_ch_buf,
5324 							 (yy_size_t) (b->yy_buf_size + 2) , yyscanner );
5325 				}
5326 			else
5327 				/* Can't grow it, we don't own it. */
5328 				b->yy_ch_buf = NULL;
5329 
5330 			if ( ! b->yy_ch_buf )
5331 				YY_FATAL_ERROR(
5332 				"fatal error - scanner input buffer overflow" );
5333 
5334 			yyg->yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
5335 
5336 			num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
5337 						number_to_move - 1;
5338 
5339 			}
5340 
5341 		if ( num_to_read > YY_READ_BUF_SIZE )
5342 			num_to_read = YY_READ_BUF_SIZE;
5343 
5344 		/* Read in more data. */
5345 		YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
5346 			yyg->yy_n_chars, num_to_read );
5347 
5348 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars;
5349 		}
5350 
5351 	if ( yyg->yy_n_chars == 0 )
5352 		{
5353 		if ( number_to_move == YY_MORE_ADJ )
5354 			{
5355 			ret_val = EOB_ACT_END_OF_FILE;
5356 			yyrestart( yyin  , yyscanner);
5357 			}
5358 
5359 		else
5360 			{
5361 			ret_val = EOB_ACT_LAST_MATCH;
5362 			YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
5363 				YY_BUFFER_EOF_PENDING;
5364 			}
5365 		}
5366 
5367 	else
5368 		ret_val = EOB_ACT_CONTINUE_SCAN;
5369 
5370 	if ((yyg->yy_n_chars + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
5371 		/* Extend the array by 50%, plus the number we really need. */
5372 		int new_size = yyg->yy_n_chars + number_to_move + (yyg->yy_n_chars >> 1);
5373 		YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc(
5374 			(void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size , yyscanner );
5375 		if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
5376 			YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
5377 		/* "- 2" to take care of EOB's */
5378 		YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2);
5379 	}
5380 
5381 	yyg->yy_n_chars += number_to_move;
5382 	YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars] = YY_END_OF_BUFFER_CHAR;
5383 	YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
5384 
5385 	yyg->yytext_ptr = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
5386 
5387 	return ret_val;
5388 }
5389 
5390 /* yy_get_previous_state - get the state just before the EOB char was reached */
5391 
yy_get_previous_state(yyscan_t yyscanner)5392     static yy_state_type yy_get_previous_state (yyscan_t yyscanner)
5393 {
5394 	yy_state_type yy_current_state;
5395 	char *yy_cp;
5396     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5397 
5398 	yy_current_state = yyg->yy_start;
5399 	yy_current_state += YY_AT_BOL();
5400 
5401 	for ( yy_cp = yyg->yytext_ptr + YY_MORE_ADJ; yy_cp < yyg->yy_c_buf_p; ++yy_cp )
5402 		{
5403 		if ( *yy_cp )
5404 			{
5405 			yy_current_state = yy_nxt[yy_current_state][YY_SC_TO_UI(*yy_cp)];
5406 			}
5407 		else
5408 			yy_current_state = yy_NUL_trans[yy_current_state];
5409 		}
5410 
5411 	return yy_current_state;
5412 }
5413 
5414 /* yy_try_NUL_trans - try to make a transition on the NUL character
5415  *
5416  * synopsis
5417  *	next_state = yy_try_NUL_trans( current_state );
5418  */
yy_try_NUL_trans(yy_state_type yy_current_state,yyscan_t yyscanner)5419     static yy_state_type yy_try_NUL_trans  (yy_state_type yy_current_state , yyscan_t yyscanner)
5420 {
5421 	int yy_is_jam;
5422     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; /* This var may be unused depending upon options. */
5423 
5424 	yy_current_state = yy_NUL_trans[yy_current_state];
5425 	yy_is_jam = (yy_current_state == 0);
5426 
5427 	(void)yyg;
5428 	return yy_is_jam ? 0 : yy_current_state;
5429 }
5430 
5431 #ifndef YY_NO_UNPUT
5432 
yyunput(int c,char * yy_bp,yyscan_t yyscanner)5433     static void yyunput (int c, char * yy_bp , yyscan_t yyscanner)
5434 {
5435 	char *yy_cp;
5436     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5437 
5438     yy_cp = yyg->yy_c_buf_p;
5439 
5440 	/* undo effects of setting up yytext */
5441 	*yy_cp = yyg->yy_hold_char;
5442 
5443 	if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
5444 		{ /* need to shift things up to make room */
5445 		/* +2 for EOB chars. */
5446 		int number_to_move = yyg->yy_n_chars + 2;
5447 		char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
5448 					YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];
5449 		char *source =
5450 				&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move];
5451 
5452 		while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
5453 			*--dest = *--source;
5454 
5455 		yy_cp += (int) (dest - source);
5456 		yy_bp += (int) (dest - source);
5457 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars =
5458 			yyg->yy_n_chars = (int) YY_CURRENT_BUFFER_LVALUE->yy_buf_size;
5459 
5460 		if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
5461 			YY_FATAL_ERROR( "flex scanner push-back overflow" );
5462 		}
5463 
5464 	*--yy_cp = (char) c;
5465 
5466 	yyg->yytext_ptr = yy_bp;
5467 	yyg->yy_hold_char = *yy_cp;
5468 	yyg->yy_c_buf_p = yy_cp;
5469 }
5470 
5471 #endif
5472 
5473 #ifndef YY_NO_INPUT
5474 #ifdef __cplusplus
yyinput(yyscan_t yyscanner)5475     static int yyinput (yyscan_t yyscanner)
5476 #else
5477     static int input  (yyscan_t yyscanner)
5478 #endif
5479 
5480 {
5481 	int c;
5482     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5483 
5484 	*yyg->yy_c_buf_p = yyg->yy_hold_char;
5485 
5486 	if ( *yyg->yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
5487 		{
5488 		/* yy_c_buf_p now points to the character we want to return.
5489 		 * If this occurs *before* the EOB characters, then it's a
5490 		 * valid NUL; if not, then we've hit the end of the buffer.
5491 		 */
5492 		if ( yyg->yy_c_buf_p < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars] )
5493 			/* This was really a NUL. */
5494 			*yyg->yy_c_buf_p = '\0';
5495 
5496 		else
5497 			{ /* need more input */
5498 			int offset = (int) (yyg->yy_c_buf_p - yyg->yytext_ptr);
5499 			++yyg->yy_c_buf_p;
5500 
5501 			switch ( yy_get_next_buffer( yyscanner ) )
5502 				{
5503 				case EOB_ACT_LAST_MATCH:
5504 					/* This happens because yy_g_n_b()
5505 					 * sees that we've accumulated a
5506 					 * token and flags that we need to
5507 					 * try matching the token before
5508 					 * proceeding.  But for input(),
5509 					 * there's no matching to consider.
5510 					 * So convert the EOB_ACT_LAST_MATCH
5511 					 * to EOB_ACT_END_OF_FILE.
5512 					 */
5513 
5514 					/* Reset buffer status. */
5515 					yyrestart( yyin , yyscanner);
5516 
5517 					/*FALLTHROUGH*/
5518 
5519 				case EOB_ACT_END_OF_FILE:
5520 					{
5521 					if ( yywrap( yyscanner ) )
5522 						return 0;
5523 
5524 					if ( ! yyg->yy_did_buffer_switch_on_eof )
5525 						YY_NEW_FILE;
5526 #ifdef __cplusplus
5527 					return yyinput(yyscanner);
5528 #else
5529 					return input(yyscanner);
5530 #endif
5531 					}
5532 
5533 				case EOB_ACT_CONTINUE_SCAN:
5534 					yyg->yy_c_buf_p = yyg->yytext_ptr + offset;
5535 					break;
5536 				}
5537 			}
5538 		}
5539 
5540 	c = *(unsigned char *) yyg->yy_c_buf_p;	/* cast for 8-bit char's */
5541 	*yyg->yy_c_buf_p = '\0';	/* preserve yytext */
5542 	yyg->yy_hold_char = *++yyg->yy_c_buf_p;
5543 
5544 	YY_CURRENT_BUFFER_LVALUE->yy_at_bol = (c == '\n');
5545 
5546 	return c;
5547 }
5548 #endif	/* ifndef YY_NO_INPUT */
5549 
5550 /** Immediately switch to a different input stream.
5551  * @param input_file A readable stream.
5552  * @param yyscanner The scanner object.
5553  * @note This function does not reset the start condition to @c INITIAL .
5554  */
yyrestart(FILE * input_file,yyscan_t yyscanner)5555     void yyrestart  (FILE * input_file , yyscan_t yyscanner)
5556 {
5557     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5558 
5559 	if ( ! YY_CURRENT_BUFFER ){
5560         yyensure_buffer_stack (yyscanner);
5561 		YY_CURRENT_BUFFER_LVALUE =
5562             yy_create_buffer( yyin, YY_BUF_SIZE , yyscanner);
5563 	}
5564 
5565 	yy_init_buffer( YY_CURRENT_BUFFER, input_file , yyscanner);
5566 	yy_load_buffer_state( yyscanner );
5567 }
5568 
5569 /** Switch to a different input buffer.
5570  * @param new_buffer The new input buffer.
5571  * @param yyscanner The scanner object.
5572  */
yy_switch_to_buffer(YY_BUFFER_STATE new_buffer,yyscan_t yyscanner)5573     void yy_switch_to_buffer  (YY_BUFFER_STATE  new_buffer , yyscan_t yyscanner)
5574 {
5575     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5576 
5577 	/* TODO. We should be able to replace this entire function body
5578 	 * with
5579 	 *		yypop_buffer_state();
5580 	 *		yypush_buffer_state(new_buffer);
5581      */
5582 	yyensure_buffer_stack (yyscanner);
5583 	if ( YY_CURRENT_BUFFER == new_buffer )
5584 		return;
5585 
5586 	if ( YY_CURRENT_BUFFER )
5587 		{
5588 		/* Flush out information for old buffer. */
5589 		*yyg->yy_c_buf_p = yyg->yy_hold_char;
5590 		YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = yyg->yy_c_buf_p;
5591 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars;
5592 		}
5593 
5594 	YY_CURRENT_BUFFER_LVALUE = new_buffer;
5595 	yy_load_buffer_state( yyscanner );
5596 
5597 	/* We don't actually know whether we did this switch during
5598 	 * EOF (yywrap()) processing, but the only time this flag
5599 	 * is looked at is after yywrap() is called, so it's safe
5600 	 * to go ahead and always set it.
5601 	 */
5602 	yyg->yy_did_buffer_switch_on_eof = 1;
5603 }
5604 
yy_load_buffer_state(yyscan_t yyscanner)5605 static void yy_load_buffer_state  (yyscan_t yyscanner)
5606 {
5607     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5608 	yyg->yy_n_chars = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
5609 	yyg->yytext_ptr = yyg->yy_c_buf_p = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
5610 	yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
5611 	yyg->yy_hold_char = *yyg->yy_c_buf_p;
5612 }
5613 
5614 /** Allocate and initialize an input buffer state.
5615  * @param file A readable stream.
5616  * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
5617  * @param yyscanner The scanner object.
5618  * @return the allocated buffer state.
5619  */
yy_create_buffer(FILE * file,int size,yyscan_t yyscanner)5620     YY_BUFFER_STATE yy_create_buffer  (FILE * file, int  size , yyscan_t yyscanner)
5621 {
5622 	YY_BUFFER_STATE b;
5623 
5624 	b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) , yyscanner );
5625 	if ( ! b )
5626 		YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
5627 
5628 	b->yy_buf_size = size;
5629 
5630 	/* yy_ch_buf has to be 2 characters longer than the size given because
5631 	 * we need to put in 2 end-of-buffer characters.
5632 	 */
5633 	b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2) , yyscanner );
5634 	if ( ! b->yy_ch_buf )
5635 		YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
5636 
5637 	b->yy_is_our_buffer = 1;
5638 
5639 	yy_init_buffer( b, file , yyscanner);
5640 
5641 	return b;
5642 }
5643 
5644 /** Destroy the buffer.
5645  * @param b a buffer created with yy_create_buffer()
5646  * @param yyscanner The scanner object.
5647  */
yy_delete_buffer(YY_BUFFER_STATE b,yyscan_t yyscanner)5648     void yy_delete_buffer (YY_BUFFER_STATE  b , yyscan_t yyscanner)
5649 {
5650     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5651 
5652 	if ( ! b )
5653 		return;
5654 
5655 	if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
5656 		YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
5657 
5658 	if ( b->yy_is_our_buffer )
5659 		yyfree( (void *) b->yy_ch_buf , yyscanner );
5660 
5661 	yyfree( (void *) b , yyscanner );
5662 }
5663 
5664 /* Initializes or reinitializes a buffer.
5665  * This function is sometimes called more than once on the same buffer,
5666  * such as during a yyrestart() or at EOF.
5667  */
yy_init_buffer(YY_BUFFER_STATE b,FILE * file,yyscan_t yyscanner)5668     static void yy_init_buffer  (YY_BUFFER_STATE  b, FILE * file , yyscan_t yyscanner)
5669 
5670 {
5671 	int oerrno = errno;
5672     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5673 
5674 	yy_flush_buffer( b , yyscanner);
5675 
5676 	b->yy_input_file = file;
5677 	b->yy_fill_buffer = 1;
5678 
5679     /* If b is the current buffer, then yy_init_buffer was _probably_
5680      * called from yyrestart() or through yy_get_next_buffer.
5681      * In that case, we don't want to reset the lineno or column.
5682      */
5683     if (b != YY_CURRENT_BUFFER){
5684         b->yy_bs_lineno = 1;
5685         b->yy_bs_column = 0;
5686     }
5687 
5688         b->yy_is_interactive = 0;
5689 
5690 	errno = oerrno;
5691 }
5692 
5693 /** Discard all buffered characters. On the next scan, YY_INPUT will be called.
5694  * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
5695  * @param yyscanner The scanner object.
5696  */
yy_flush_buffer(YY_BUFFER_STATE b,yyscan_t yyscanner)5697     void yy_flush_buffer (YY_BUFFER_STATE  b , yyscan_t yyscanner)
5698 {
5699     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5700 	if ( ! b )
5701 		return;
5702 
5703 	b->yy_n_chars = 0;
5704 
5705 	/* We always need two end-of-buffer characters.  The first causes
5706 	 * a transition to the end-of-buffer state.  The second causes
5707 	 * a jam in that state.
5708 	 */
5709 	b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
5710 	b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
5711 
5712 	b->yy_buf_pos = &b->yy_ch_buf[0];
5713 
5714 	b->yy_at_bol = 1;
5715 	b->yy_buffer_status = YY_BUFFER_NEW;
5716 
5717 	if ( b == YY_CURRENT_BUFFER )
5718 		yy_load_buffer_state( yyscanner );
5719 }
5720 
5721 /** Pushes the new state onto the stack. The new state becomes
5722  *  the current state. This function will allocate the stack
5723  *  if necessary.
5724  *  @param new_buffer The new state.
5725  *  @param yyscanner The scanner object.
5726  */
yypush_buffer_state(YY_BUFFER_STATE new_buffer,yyscan_t yyscanner)5727 void yypush_buffer_state (YY_BUFFER_STATE new_buffer , yyscan_t yyscanner)
5728 {
5729     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5730 	if (new_buffer == NULL)
5731 		return;
5732 
5733 	yyensure_buffer_stack(yyscanner);
5734 
5735 	/* This block is copied from yy_switch_to_buffer. */
5736 	if ( YY_CURRENT_BUFFER )
5737 		{
5738 		/* Flush out information for old buffer. */
5739 		*yyg->yy_c_buf_p = yyg->yy_hold_char;
5740 		YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = yyg->yy_c_buf_p;
5741 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars;
5742 		}
5743 
5744 	/* Only push if top exists. Otherwise, replace top. */
5745 	if (YY_CURRENT_BUFFER)
5746 		yyg->yy_buffer_stack_top++;
5747 	YY_CURRENT_BUFFER_LVALUE = new_buffer;
5748 
5749 	/* copied from yy_switch_to_buffer. */
5750 	yy_load_buffer_state( yyscanner );
5751 	yyg->yy_did_buffer_switch_on_eof = 1;
5752 }
5753 
5754 /** Removes and deletes the top of the stack, if present.
5755  *  The next element becomes the new top.
5756  *  @param yyscanner The scanner object.
5757  */
yypop_buffer_state(yyscan_t yyscanner)5758 void yypop_buffer_state (yyscan_t yyscanner)
5759 {
5760     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5761 	if (!YY_CURRENT_BUFFER)
5762 		return;
5763 
5764 	yy_delete_buffer(YY_CURRENT_BUFFER , yyscanner);
5765 	YY_CURRENT_BUFFER_LVALUE = NULL;
5766 	if (yyg->yy_buffer_stack_top > 0)
5767 		--yyg->yy_buffer_stack_top;
5768 
5769 	if (YY_CURRENT_BUFFER) {
5770 		yy_load_buffer_state( yyscanner );
5771 		yyg->yy_did_buffer_switch_on_eof = 1;
5772 	}
5773 }
5774 
5775 /* Allocates the stack if it does not exist.
5776  *  Guarantees space for at least one push.
5777  */
yyensure_buffer_stack(yyscan_t yyscanner)5778 static void yyensure_buffer_stack (yyscan_t yyscanner)
5779 {
5780 	yy_size_t num_to_alloc;
5781     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5782 
5783 	if (!yyg->yy_buffer_stack) {
5784 
5785 		/* First allocation is just for 2 elements, since we don't know if this
5786 		 * scanner will even need a stack. We use 2 instead of 1 to avoid an
5787 		 * immediate realloc on the next call.
5788          */
5789       num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */
5790 		yyg->yy_buffer_stack = (struct yy_buffer_state**)yyalloc
5791 								(num_to_alloc * sizeof(struct yy_buffer_state*)
5792 								, yyscanner);
5793 		if ( ! yyg->yy_buffer_stack )
5794 			YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
5795 
5796 		memset(yyg->yy_buffer_stack, 0, num_to_alloc * sizeof(struct yy_buffer_state*));
5797 
5798 		yyg->yy_buffer_stack_max = num_to_alloc;
5799 		yyg->yy_buffer_stack_top = 0;
5800 		return;
5801 	}
5802 
5803 	if (yyg->yy_buffer_stack_top >= (yyg->yy_buffer_stack_max) - 1){
5804 
5805 		/* Increase the buffer to prepare for a possible push. */
5806 		yy_size_t grow_size = 8 /* arbitrary grow size */;
5807 
5808 		num_to_alloc = yyg->yy_buffer_stack_max + grow_size;
5809 		yyg->yy_buffer_stack = (struct yy_buffer_state**)yyrealloc
5810 								(yyg->yy_buffer_stack,
5811 								num_to_alloc * sizeof(struct yy_buffer_state*)
5812 								, yyscanner);
5813 		if ( ! yyg->yy_buffer_stack )
5814 			YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
5815 
5816 		/* zero only the new slots.*/
5817 		memset(yyg->yy_buffer_stack + yyg->yy_buffer_stack_max, 0, grow_size * sizeof(struct yy_buffer_state*));
5818 		yyg->yy_buffer_stack_max = num_to_alloc;
5819 	}
5820 }
5821 
5822 /** Setup the input buffer state to scan directly from a user-specified character buffer.
5823  * @param base the character buffer
5824  * @param size the size in bytes of the character buffer
5825  * @param yyscanner The scanner object.
5826  * @return the newly allocated buffer state object.
5827  */
yy_scan_buffer(char * base,yy_size_t size,yyscan_t yyscanner)5828 YY_BUFFER_STATE yy_scan_buffer  (char * base, yy_size_t  size , yyscan_t yyscanner)
5829 {
5830 	YY_BUFFER_STATE b;
5831 
5832 	if ( size < 2 ||
5833 	     base[size-2] != YY_END_OF_BUFFER_CHAR ||
5834 	     base[size-1] != YY_END_OF_BUFFER_CHAR )
5835 		/* They forgot to leave room for the EOB's. */
5836 		return NULL;
5837 
5838 	b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) , yyscanner );
5839 	if ( ! b )
5840 		YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
5841 
5842 	b->yy_buf_size = (int) (size - 2);	/* "- 2" to take care of EOB's */
5843 	b->yy_buf_pos = b->yy_ch_buf = base;
5844 	b->yy_is_our_buffer = 0;
5845 	b->yy_input_file = NULL;
5846 	b->yy_n_chars = b->yy_buf_size;
5847 	b->yy_is_interactive = 0;
5848 	b->yy_at_bol = 1;
5849 	b->yy_fill_buffer = 0;
5850 	b->yy_buffer_status = YY_BUFFER_NEW;
5851 
5852 	yy_switch_to_buffer( b , yyscanner );
5853 
5854 	return b;
5855 }
5856 
5857 /** Setup the input buffer state to scan a string. The next call to yylex() will
5858  * scan from a @e copy of @a str.
5859  * @param yystr a NUL-terminated string to scan
5860  * @param yyscanner The scanner object.
5861  * @return the newly allocated buffer state object.
5862  * @note If you want to scan bytes that may contain NUL values, then use
5863  *       yy_scan_bytes() instead.
5864  */
yy_scan_string(const char * yystr,yyscan_t yyscanner)5865 YY_BUFFER_STATE yy_scan_string (const char * yystr , yyscan_t yyscanner)
5866 {
5867 
5868 	return yy_scan_bytes( yystr, (int) strlen(yystr) , yyscanner);
5869 }
5870 
5871 /** Setup the input buffer state to scan the given bytes. The next call to yylex() will
5872  * scan from a @e copy of @a bytes.
5873  * @param yybytes the byte buffer to scan
5874  * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
5875  * @param yyscanner The scanner object.
5876  * @return the newly allocated buffer state object.
5877  */
yy_scan_bytes(const char * yybytes,int _yybytes_len,yyscan_t yyscanner)5878 YY_BUFFER_STATE yy_scan_bytes  (const char * yybytes, int  _yybytes_len , yyscan_t yyscanner)
5879 {
5880 	YY_BUFFER_STATE b;
5881 	char *buf;
5882 	yy_size_t n;
5883 	int i;
5884 
5885 	/* Get memory for full buffer, including space for trailing EOB's. */
5886 	n = (yy_size_t) (_yybytes_len + 2);
5887 	buf = (char *) yyalloc( n , yyscanner );
5888 	if ( ! buf )
5889 		YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
5890 
5891 	for ( i = 0; i < _yybytes_len; ++i )
5892 		buf[i] = yybytes[i];
5893 
5894 	buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
5895 
5896 	b = yy_scan_buffer( buf, n , yyscanner);
5897 	if ( ! b )
5898 		YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
5899 
5900 	/* It's okay to grow etc. this buffer, and we should throw it
5901 	 * away when we're done.
5902 	 */
5903 	b->yy_is_our_buffer = 1;
5904 
5905 	return b;
5906 }
5907 
5908 #ifndef YY_EXIT_FAILURE
5909 #define YY_EXIT_FAILURE 2
5910 #endif
5911 
yy_fatal_error(const char * msg,yyscan_t yyscanner)5912 static void yynoreturn yy_fatal_error (const char* msg , yyscan_t yyscanner)
5913 {
5914 	struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5915 	(void)yyg;
5916 	fprintf( stderr, "%s\n", msg );
5917 	exit( YY_EXIT_FAILURE );
5918 }
5919 
5920 /* Redefine yyless() so it works in section 3 code. */
5921 
5922 #undef yyless
5923 #define yyless(n) \
5924 	do \
5925 		{ \
5926 		/* Undo effects of setting up yytext. */ \
5927         int yyless_macro_arg = (n); \
5928         YY_LESS_LINENO(yyless_macro_arg);\
5929 		yytext[yyleng] = yyg->yy_hold_char; \
5930 		yyg->yy_c_buf_p = yytext + yyless_macro_arg; \
5931 		yyg->yy_hold_char = *yyg->yy_c_buf_p; \
5932 		*yyg->yy_c_buf_p = '\0'; \
5933 		yyleng = yyless_macro_arg; \
5934 		} \
5935 	while ( 0 )
5936 
5937 /* Accessor  methods (get/set functions) to struct members. */
5938 
5939 /** Get the user-defined data for this scanner.
5940  * @param yyscanner The scanner object.
5941  */
yyget_extra(yyscan_t yyscanner)5942 YY_EXTRA_TYPE yyget_extra  (yyscan_t yyscanner)
5943 {
5944     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5945     return yyextra;
5946 }
5947 
5948 /** Get the current line number.
5949  * @param yyscanner The scanner object.
5950  */
yyget_lineno(yyscan_t yyscanner)5951 int yyget_lineno  (yyscan_t yyscanner)
5952 {
5953     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5954 
5955         if (! YY_CURRENT_BUFFER)
5956             return 0;
5957 
5958     return yylineno;
5959 }
5960 
5961 /** Get the current column number.
5962  * @param yyscanner The scanner object.
5963  */
yyget_column(yyscan_t yyscanner)5964 int yyget_column  (yyscan_t yyscanner)
5965 {
5966     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5967 
5968         if (! YY_CURRENT_BUFFER)
5969             return 0;
5970 
5971     return yycolumn;
5972 }
5973 
5974 /** Get the input stream.
5975  * @param yyscanner The scanner object.
5976  */
yyget_in(yyscan_t yyscanner)5977 FILE *yyget_in  (yyscan_t yyscanner)
5978 {
5979     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5980     return yyin;
5981 }
5982 
5983 /** Get the output stream.
5984  * @param yyscanner The scanner object.
5985  */
yyget_out(yyscan_t yyscanner)5986 FILE *yyget_out  (yyscan_t yyscanner)
5987 {
5988     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5989     return yyout;
5990 }
5991 
5992 /** Get the length of the current token.
5993  * @param yyscanner The scanner object.
5994  */
yyget_leng(yyscan_t yyscanner)5995 int yyget_leng  (yyscan_t yyscanner)
5996 {
5997     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
5998     return yyleng;
5999 }
6000 
6001 /** Get the current token.
6002  * @param yyscanner The scanner object.
6003  */
6004 
yyget_text(yyscan_t yyscanner)6005 char *yyget_text  (yyscan_t yyscanner)
6006 {
6007     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
6008     return yytext;
6009 }
6010 
6011 /** Set the user-defined data. This data is never touched by the scanner.
6012  * @param user_defined The data to be associated with this scanner.
6013  * @param yyscanner The scanner object.
6014  */
yyset_extra(YY_EXTRA_TYPE user_defined,yyscan_t yyscanner)6015 void yyset_extra (YY_EXTRA_TYPE  user_defined , yyscan_t yyscanner)
6016 {
6017     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
6018     yyextra = user_defined ;
6019 }
6020 
6021 /** Set the current line number.
6022  * @param _line_number line number
6023  * @param yyscanner The scanner object.
6024  */
yyset_lineno(int _line_number,yyscan_t yyscanner)6025 void yyset_lineno (int  _line_number , yyscan_t yyscanner)
6026 {
6027     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
6028 
6029         /* lineno is only valid if an input buffer exists. */
6030         if (! YY_CURRENT_BUFFER )
6031            YY_FATAL_ERROR( "yyset_lineno called with no buffer" );
6032 
6033     yylineno = _line_number;
6034 }
6035 
6036 /** Set the current column.
6037  * @param _column_no column number
6038  * @param yyscanner The scanner object.
6039  */
yyset_column(int _column_no,yyscan_t yyscanner)6040 void yyset_column (int  _column_no , yyscan_t yyscanner)
6041 {
6042     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
6043 
6044         /* column is only valid if an input buffer exists. */
6045         if (! YY_CURRENT_BUFFER )
6046            YY_FATAL_ERROR( "yyset_column called with no buffer" );
6047 
6048     yycolumn = _column_no;
6049 }
6050 
6051 /** Set the input stream. This does not discard the current
6052  * input buffer.
6053  * @param _in_str A readable stream.
6054  * @param yyscanner The scanner object.
6055  * @see yy_switch_to_buffer
6056  */
yyset_in(FILE * _in_str,yyscan_t yyscanner)6057 void yyset_in (FILE *  _in_str , yyscan_t yyscanner)
6058 {
6059     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
6060     yyin = _in_str ;
6061 }
6062 
yyset_out(FILE * _out_str,yyscan_t yyscanner)6063 void yyset_out (FILE *  _out_str , yyscan_t yyscanner)
6064 {
6065     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
6066     yyout = _out_str ;
6067 }
6068 
yyget_debug(yyscan_t yyscanner)6069 int yyget_debug  (yyscan_t yyscanner)
6070 {
6071     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
6072     return yy_flex_debug;
6073 }
6074 
yyset_debug(int _bdebug,yyscan_t yyscanner)6075 void yyset_debug (int  _bdebug , yyscan_t yyscanner)
6076 {
6077     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
6078     yy_flex_debug = _bdebug ;
6079 }
6080 
6081 /* Accessor methods for yylval and yylloc */
6082 
6083 /* User-visible API */
6084 
6085 /* yylex_init is special because it creates the scanner itself, so it is
6086  * the ONLY reentrant function that doesn't take the scanner as the last argument.
6087  * That's why we explicitly handle the declaration, instead of using our macros.
6088  */
yylex_init(yyscan_t * ptr_yy_globals)6089 int yylex_init(yyscan_t* ptr_yy_globals)
6090 {
6091     if (ptr_yy_globals == NULL){
6092         errno = EINVAL;
6093         return 1;
6094     }
6095 
6096     *ptr_yy_globals = (yyscan_t) yyalloc ( sizeof( struct yyguts_t ), NULL );
6097 
6098     if (*ptr_yy_globals == NULL){
6099         errno = ENOMEM;
6100         return 1;
6101     }
6102 
6103     /* By setting to 0xAA, we expose bugs in yy_init_globals. Leave at 0x00 for releases. */
6104     memset(*ptr_yy_globals,0x00,sizeof(struct yyguts_t));
6105 
6106     return yy_init_globals ( *ptr_yy_globals );
6107 }
6108 
6109 /* yylex_init_extra has the same functionality as yylex_init, but follows the
6110  * convention of taking the scanner as the last argument. Note however, that
6111  * this is a *pointer* to a scanner, as it will be allocated by this call (and
6112  * is the reason, too, why this function also must handle its own declaration).
6113  * The user defined value in the first argument will be available to yyalloc in
6114  * the yyextra field.
6115  */
yylex_init_extra(YY_EXTRA_TYPE yy_user_defined,yyscan_t * ptr_yy_globals)6116 int yylex_init_extra( YY_EXTRA_TYPE yy_user_defined, yyscan_t* ptr_yy_globals )
6117 {
6118     struct yyguts_t dummy_yyguts;
6119 
6120     yyset_extra (yy_user_defined, &dummy_yyguts);
6121 
6122     if (ptr_yy_globals == NULL){
6123         errno = EINVAL;
6124         return 1;
6125     }
6126 
6127     *ptr_yy_globals = (yyscan_t) yyalloc ( sizeof( struct yyguts_t ), &dummy_yyguts );
6128 
6129     if (*ptr_yy_globals == NULL){
6130         errno = ENOMEM;
6131         return 1;
6132     }
6133 
6134     /* By setting to 0xAA, we expose bugs in
6135     yy_init_globals. Leave at 0x00 for releases. */
6136     memset(*ptr_yy_globals,0x00,sizeof(struct yyguts_t));
6137 
6138     yyset_extra (yy_user_defined, *ptr_yy_globals);
6139 
6140     return yy_init_globals ( *ptr_yy_globals );
6141 }
6142 
yy_init_globals(yyscan_t yyscanner)6143 static int yy_init_globals (yyscan_t yyscanner)
6144 {
6145     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
6146     /* Initialization is the same as for the non-reentrant scanner.
6147      * This function is called from yylex_destroy(), so don't allocate here.
6148      */
6149 
6150     yyg->yy_buffer_stack = NULL;
6151     yyg->yy_buffer_stack_top = 0;
6152     yyg->yy_buffer_stack_max = 0;
6153     yyg->yy_c_buf_p = NULL;
6154     yyg->yy_init = 0;
6155     yyg->yy_start = 0;
6156 
6157     yyg->yy_start_stack_ptr = 0;
6158     yyg->yy_start_stack_depth = 0;
6159     yyg->yy_start_stack =  NULL;
6160 
6161 /* Defined in main.c */
6162 #ifdef YY_STDINIT
6163     yyin = stdin;
6164     yyout = stdout;
6165 #else
6166     yyin = NULL;
6167     yyout = NULL;
6168 #endif
6169 
6170     /* For future reference: Set errno on error, since we are called by
6171      * yylex_init()
6172      */
6173     return 0;
6174 }
6175 
6176 /* yylex_destroy is for both reentrant and non-reentrant scanners. */
yylex_destroy(yyscan_t yyscanner)6177 int yylex_destroy  (yyscan_t yyscanner)
6178 {
6179     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
6180 
6181     /* Pop the buffer stack, destroying each element. */
6182 	while(YY_CURRENT_BUFFER){
6183 		yy_delete_buffer( YY_CURRENT_BUFFER , yyscanner );
6184 		YY_CURRENT_BUFFER_LVALUE = NULL;
6185 		yypop_buffer_state(yyscanner);
6186 	}
6187 
6188 	/* Destroy the stack itself. */
6189 	yyfree(yyg->yy_buffer_stack , yyscanner);
6190 	yyg->yy_buffer_stack = NULL;
6191 
6192     /* Destroy the start condition stack. */
6193         yyfree( yyg->yy_start_stack , yyscanner );
6194         yyg->yy_start_stack = NULL;
6195 
6196     /* Reset the globals. This is important in a non-reentrant scanner so the next time
6197      * yylex() is called, initialization will occur. */
6198     yy_init_globals( yyscanner);
6199 
6200     /* Destroy the main struct (reentrant only). */
6201     yyfree ( yyscanner , yyscanner );
6202     yyscanner = NULL;
6203     return 0;
6204 }
6205 
6206 /*
6207  * Internal utility routines.
6208  */
6209 
6210 #ifndef yytext_ptr
yy_flex_strncpy(char * s1,const char * s2,int n,yyscan_t yyscanner)6211 static void yy_flex_strncpy (char* s1, const char * s2, int n , yyscan_t yyscanner)
6212 {
6213 	struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
6214 	(void)yyg;
6215 
6216 	int i;
6217 	for ( i = 0; i < n; ++i )
6218 		s1[i] = s2[i];
6219 }
6220 #endif
6221 
6222 #ifdef YY_NEED_STRLEN
yy_flex_strlen(const char * s,yyscan_t yyscanner)6223 static int yy_flex_strlen (const char * s , yyscan_t yyscanner)
6224 {
6225 	int n;
6226 	for ( n = 0; s[n]; ++n )
6227 		;
6228 
6229 	return n;
6230 }
6231 #endif
6232 
yyalloc(yy_size_t size,yyscan_t yyscanner)6233 void *yyalloc (yy_size_t  size , yyscan_t yyscanner)
6234 {
6235 	struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
6236 	(void)yyg;
6237 	return malloc(size);
6238 }
6239 
yyrealloc(void * ptr,yy_size_t size,yyscan_t yyscanner)6240 void *yyrealloc  (void * ptr, yy_size_t  size , yyscan_t yyscanner)
6241 {
6242 	struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
6243 	(void)yyg;
6244 
6245 	/* The cast to (char *) in the following accommodates both
6246 	 * implementations that use char* generic pointers, and those
6247 	 * that use void* generic pointers.  It works with the latter
6248 	 * because both ANSI C and C++ allow castless assignment from
6249 	 * any pointer type to void*, and deal with argument conversions
6250 	 * as though doing an assignment.
6251 	 */
6252 	return realloc(ptr, size);
6253 }
6254 
yyfree(void * ptr,yyscan_t yyscanner)6255 void yyfree (void * ptr , yyscan_t yyscanner)
6256 {
6257 	struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
6258 	(void)yyg;
6259 	free( (char *) ptr );	/* see yyrealloc() for (char *) cast */
6260 }
6261 
6262 #define YYTABLES_NAME "yytables"
6263 
6264 #line 344 "wcsutrn.l"
6265 
6266 
6267 /*----------------------------------------------------------------------------
6268 * External interface to the scanner.
6269 *---------------------------------------------------------------------------*/
6270 
wcsutrne(int ctrl,char unitstr[],struct wcserr ** err)6271 int wcsutrne(
6272   int ctrl,
6273   char unitstr[],
6274   struct wcserr **err)
6275 
6276 {
6277   // Function prototypes.
6278   int yylex_init_extra(YY_EXTRA_TYPE extra, yyscan_t *yyscanner);
6279   int yylex_destroy(yyscan_t yyscanner);
6280 
6281   struct wcsutrn_extra extra;
6282   yyscan_t yyscanner;
6283   yylex_init_extra(&extra, &yyscanner);
6284   int status = wcsutrne_scanner(ctrl, unitstr, err, yyscanner);
6285   yylex_destroy(yyscanner);
6286 
6287   return status;
6288 }
6289 
6290