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