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